BUG-2383: rework RIB inbound 80/15780/22
authorRobert Varga <rovarga@cisco.com>
Thu, 26 Feb 2015 14:18:39 +0000 (15:18 +0100)
committerDana Kutenicsova <dkutenic@cisco.com>
Thu, 5 Mar 2015 10:38:54 +0000 (10:38 +0000)
commit4d39eaeebf532a6ab59d29fcdcc089520f0a81a9
tree2ee31475ed3606ba3fae1b814c069e86f8c86c7c
parent59d2ec1e0c3694e4427f372673878e7e3f94ee4e
BUG-2383: rework RIB inbound

Each Peer (like BGPPeer) performs updates the adj-rib-in via a dedicated
AdjRibInWriter instance. That class, along with RIBSupport and TableContext,
is responsible for translating the Binding-Aware messages coming from
the message parser into Binding-Independent form within the datastore.

Changes are then propagated via DataChangeNotifications into
InboundPolicyEnforcer, which performs any munging of attributes required
and checks if the route is eligible for inclusion in the local RIB. If
it is, the route is output into the effective-rib-in hosted in the
datastore.

From there it is picked up by BestPathSelection, which compares the
effective routes from multiple peers and installs the best one into the
local RIB.

Change-Id: Ie23746b2fc44499f42d346595562b498c19fd112
Signed-off-by: Robert Varga <rovarga@cisco.com>
16 files changed:
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractExportPolicy.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractIPRIBSupport.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AbstractImportPolicy.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/AdjRibInWriter.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/EffectiveRibInWriter.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/IPv4RIBSupport.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/IPv6RIBSupport.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/LocRibWriter.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RIBSupportRegistry.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteEntry.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/RouteUpdateKey.java [new file with mode: 0644]
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/TableContext.java [new file with mode: 0644]
bgp/rib-spi/pom.xml
bgp/rib-spi/src/main/java/org/opendaylight/controller/config/yang/bgp/rib/spi/AbstractRIBSupport.java [new file with mode: 0644]
bgp/rib-spi/src/main/java/org/opendaylight/protocol/bgp/rib/spi/RIBSupport.java [new file with mode: 0644]
features/bgp/src/main/features/features.xml