summaryrefslogtreecommitdiffhomepage
path: root/table/destination_test.go
AgeCommit message (Collapse)Author
2018-05-07preparation for shrinking Destination structureFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-05-07use sorted single master table for route server setupFUJITA Tomonori
https://github.com/osrg/gobgp/issues/1249 The IN policy was removed. The modification by the IMPORT policy are visible to all route server peers. This saves some dozens bytes memory per a path. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-08-02table: allocate bitmap for path id dynamicallyFUJITA Tomonori
allocating 256 bytes per prefix isn't a good idea. Let's allocate 8 bytes by default and expand dynamically if necessary. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-07-04use Destination instead of Path for path selection APIFUJITA Tomonori
With Destination struct, multiple Paths can be moved from the table package to the server package in a cleaner way; for features such as add-path. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2017-05-31table: reduce allocs in NewDestinationChris Stockton
In NewDestination we add additional path to AddrToRadixkey to check the concrete type of nlri.
2017-04-27table: avoid cloning path for withdrawFUJITA Tomonori
when a peer having lots of routes goes down, the cloning paths consume too much memory. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-11-12table: use old best path instead of withdrawn pathsFUJITA Tomonori
Preparation for removing in-memory adj-out. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-10-04packet/bgp: fix handling of IPv4 mapped IPv6 prefixesWataru Ishida
closes #1117 Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
2016-07-31gobgp: support mrt injecting only best pathsFUJITA Tomonori
$ gobgp mrt inject global --only-best your-mrt-dump-file Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-06-06server/table: support bgp multipathISHIDA Wataru
This patch adds multiPathList field to watcherEventBestPathMsg and fills it when global.use-multiple-paths.config.enable = true Following patches add support injecting multipath to zebra and monitoring it via gRPC Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-06-03table: fix leftmostAS() in compareByMEDFUJITA Tomonori
Needs the first AS in the AS_SEQUENCE is the same for multiple paths. Any preceding AS_CONFED_SEQUENCE is ignored. Also rename the function name to 'firstAS'. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-05-26policy: add support setting self ip address as next-hopISHIDA Wataru
from configuration file [policy-definitions.statements.actions.bgp-actions] set-next-hop = "self" from cli $ gobgp policy statement stmt1 add action next-hop self Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-05-12table: fix Med comparison in best path selectionFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-04-21table: use received time as tie-breakerISHIDA Wataru
older path get preference can be disabled by `global.route-selection-options.external-compare-router-id = true` close #806 Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-04-19table: add a test to check implicit withdrawal behavior with mod actionISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-04-19table: fix bug of holding flawed withdrawals in Destination structISHIDA Wataru
When received withdrawals don't match with existing knownPathList, we must ignore them. This commit fixes not to store un-matched withdrawals in `dest.withdrawList` to avoid unintentional withdrawal. see test case for detail Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-04-19table: fix bug of incomplete withdrawal handlingISHIDA Wataru
When mod action is used in route server configuration, `Destination.knownPathList` holds multiple modified paths whose original path is same. In that case, when the original path is withdrawn, we must remove all modified paths. There was a wrong `break` in `Destination.explicitWithdraw()` which avoids this. test is also added to check the behavior. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-03-31move packet/*.go to packet/bgp/*.go for Go's conventionFUJITA Tomonori
Later, we move non-bgp protocol stuff like mrt under their own direcotries. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2016-02-27ops: fix and integration the attribute name that indicates the route ↵Naoto Hanaue
received from an external resource
2016-02-19ops: maintenance of two-way route exchangeNaoto Hanaue
2016-02-10table: expose (*Destination).getRouteFamily()ISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2016-01-16table: kill unused field medSetByTargetNeighborISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-12-08server/table: use only one rib for multiple route server clientsISHIDA Wataru
speed up and reduce memory footprint Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-12-02table: sort all known paths instead of just selecting bestISHIDA Wataru
this is a preparation for add-path recv/send feature Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-11-18rpki: fix IPv4-mapped addresss handlingFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-10-27server: fix radix key bug in rpki testFUJITA Tomonori
also clean up functions to create a radix key. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-09-08*: kill bgp.NLRInfo and bgp.WithdrawnRouteISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-08-19table: fix best path selection which considers local asnISHIDA Wataru
TableManager.localAsn wasn't used. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-08-03mrt: merge gomrt to gobgp cli commandISHIDA Wataru
Usage $ gobgp mrt inject global <filename> [<count>] Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-07-22mrt: support mrt dumpISHIDA Wataru
$ gobgp mrt dump 10 -o ./dump Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-07-01table: refactor Path/Destination/Table structISHIDA Wataru
Path/Destination/Table was defined as interface. Simplify by making them normal struct. Signed-off-by: ISHIDA Wataru <ishida.wataru@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-02packet: return aspath length based on the segment type.Hiroshi Yokoi
2015-04-27table: make table.ProcessMessage a functionISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-04-25table: add support for encapsulation nlriISHIDA Wataru
add encap end point route(10.0.0.1) with vni 20 $ gobgp global rib add 10.0.0.1 20 -a encap check it $ gobgp global rib -a encap Please specify one command of: add or del Network Next Hop AS_PATH Age Attrs *> 10.0.0.1 0.0.0.0 [64512] 00:00:01 [{Origin: IGP} {Encap: < VXLAN | color: 20 >}] Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
2015-03-24policy: add prefix filterNaoto Hanaue
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-01-22table: add timestamp to PathFUJITA Tomonori
Set timestamp at Path when update message for the path arrived. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-01-04table: remove Path's source versionFUJITA Tomonori
Even if a connection with peer is down and up, table code gets BGPmessages belonging the first connection before the event of the peer down in order. So we don't need source version stuff inherent from Ryu BGP code. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-12-30table: Path's getnlri, getpathattrs, getpathattr privateFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-12-27RouteFamily cleanupFUJITA Tomonori
RouteFamily is defined in two files. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-12-20table: export getNlri method in PathFUJITA Tomonori
peer codes need it. Also remove putNlri() because NLRI is unlikely changed after path creation because NLRI is used as sorta key value for path.
2014-12-16table: remove temporary structuresFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-12-16table: remove sentroute stuffFUJITA Tomonori
It's not necessary for our first target (multi RIB route server). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-12-05[bestpath_selection] fix build errorHiroshi Yokoi
2014-12-05table: add initial codeHiroshi Yokoi
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>