summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2015-06-25docs: add mrt documentISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-25gomrt: split parsing and sending into different goroutinesISHIDA Wataru
another performance improvement. [before] $ time gomrt -i rib.20150617.2000 gomrt -i /vagrant/rib.20150617.2000 48.98s user 149.40s system 97% cpu 3:24.30 total [after] $ time gomrt -i rib.20150617.2000 gomrt -i /vagrant/rib.20150617.2000 30.57s user 99.59s system 96% cpu 2:15.27 total Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-25mrt: bug fix of decoding BGP4MPHeaderISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-23cli: update to auto-complete the element each policy subcommandNaoto Hanaue
2015-06-23cli: update to auto-complete the IP address of the neighborNaoto Hanaue
2015-06-23cli: update to the bash completion that was automatically generated using ↵Naoto Hanaue
the cobra library
2015-06-23server: fix bug of not sending paths added/deleted through grpcISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-23table: use isLocal() to check if path is locally generatedISHIDA Wataru
original code assumes locally generated path's source is nil, which is not true. use isLocal() instead. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-23table: add Equal() method to compare PeerInfoISHIDA Wataru
this patch fixes the wrong behavior shown below $ gobgp global rib add 10.0.0.0/24 $ gobgp global rib del 10.0.0.0/24 $ gobgp global rib Network Next Hop AS_PATH Age Attrs *> 10.0.0.0/24 0.0.0.0 65000 00:05:48 [{Origin: IGP}] since we used to compare path's source by PeerInfo's pointer, locally originated routes is considered as a different route even if they have same prefix. this patch introduce Equal() method to compare PeerInfo's content and fix this wrong behavior. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-21api: change ModPath() return value to Error from stream ErrorISHIDA Wataru
cut useless grpc communication and improve performance simple performance test result. rib.20150617.2000 is taken from http://archive.routeviews.org/ [before] $ time gomrt -i rib.20150617.2000 gomrt -i /vagrant/rib.20150617.2000 45.96s user 171.73s system 86% cpu 4:11.87 total [after] $ time gomrt -i rib.20150617.2000 gomrt -i /vagrant/rib.20150617.2000 11.95s user 76.17s system 74% cpu 1:58.38 total Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-21gomrt: add mrt route injectorISHIDA Wataru
$ gomrt -i <mrt rib file> -c <number of routes to inject> Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-21gomrt: add mrt packet libraryISHIDA Wataru
currently TABLE_DUMPV2 and BGP4MP message is supported Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: make routeFamilyPrefix public and give a better nameISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: make getPathAttribute publicISHIDA Wataru
we use this function later in mrt code Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: flag down BGP_ATTR_FLAG_PARTIAL when validating flagsISHIDA Wataru
BGP_ATTR_FLAG_PARTIAL flag can be set even for the valid path attributes. Nessesary validation related to BGP_ATTR_FLAG_PARTIAL is all done before here. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: handle RF_IPV4_MC, RF_IPV6_MC cases in routeFamilyPrefix()ISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: make debug message more helpfulISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: store path attr flag as type BGPAttrFlagISHIDA Wataru
also add more meaningful debug message to ValidateFlags() Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-20packet: gofmtISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-18scenario_test: check gobgp container before remove in its preparationHiroshi Yokoi
2015-06-17docs: update cli-command-syntax.mdNaoto Hanaue
2015-06-17cli: add community subcommand to policy conditions and actionsNaoto Hanaue
2015-06-16cli: add aspath subcommand to policy conditionsNaoto Hanaue
2015-06-16cli: fix cli of policyNaoto Hanaue
- fix bug that del all command can not be used - fix bug that can enter the option of conditions other than add subcommand - fix bug that can not enter the option of actions in the routepolicy (add) subcommand - chenge syntax of routepolicy (add) subcommand aggregate the option flags of conditions and actions + before % gobgp routepolicy add <policy> <statement name> conditions [<option flags of conditions> ...] % gobgp routepolicy add <policy> <statement name> actions [<option flags of actions> ...] + after % gobgp routepolicy add <policy> <statement name> [<option flags of conditions and actions>...]
2015-06-16cli: aggregate grpc communication interface associated with the policy to ↵Naoto Hanaue
api.policyDefinition
2015-06-16cli: add a flag to generate bash completion fileISHIDA Wataru
generate bash completion file by $ gobgp -c We have to work more to generate more useful completion file automatically. Currently generated completion file can't complement dynamic commands e.g. gobgp neighbor <peer ip addr> local -a ipv6 <peer ip addr> is a dynamic command. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-16cli: use github.com/spf13/cobra instead of github.com/jessevdk/go-flagsISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-16server: check if local table exists for a neighborISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-16server: add error handling for grpcISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-06-12scenario_test: fix doesn't execute 'go build' and 'go get' if you don't ↵Naoto Hanaue
specify the use-local option
2015-06-10scenario_test: execute the cli command using the docker exec in testNaoto Hanaue
2015-06-10doc: fix indentationHiroshi Yokoi
2015-06-10doc: revise chart structureNaoto Hanaue
2015-06-10doc: add document for BgpConditions and BgpActionsHiroshi Yokoi
2015-06-10scenario_test: use docker stopHiroshi Yokoi
2015-06-10scenario_test: fix malformed testNaoto Hanaue
2015-06-10server: avoid to be blocked due to accepted conn passingFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-10server: use write deadlineFUJITA Tomonori
Seems that write() is blocked forever when a connection is not cleanly closed. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-10server: clean up sendMessageloopFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-10server: server goroutin can't access to outstanding directlyFUJITA Tomonori
This could lead to a deadlock. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-09server: kill peerMsgFUJITA Tomonori
Peers send and receive messages via channels, which could lead to a deadlock. With this patch, multiple goroutines are used for network I/Os per peer but one goroutine handle all ribs (including the global rib). So there is no messages via channels between peers. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-06-09scenario_test: build gobgp only at the beginning of the policy scenario testHiroshi Yokoi
2015-06-09packet: fix labelDecodeSoramichi Akiyama
2015-06-09packet: fix PathAttributeAs4Aggregator serializationSoramichi Akiyama
2015-06-09scenario_test: remove code to get the latest exabgpHiroshi Yokoi
2015-06-04packet: fix IPAddressAS RD serializationSoramichi Akiyama
2015-06-02path: stop checking AS length in the AS4_PATH attributeHiroshi Yokoi
2015-06-02packet: return aspath length based on the segment type.Hiroshi Yokoi
2015-06-01cli: fix AS_PATH string formatHiroshi Yokoi
2015-05-28cli: change structure of the source fileNaoto Hanaue
split gobgp/main.go to main.go,global.go,neighbor.go,policy.go and common.go.