Class BGPSynchronization
- java.lang.Object
-
- org.opendaylight.protocol.bgp.rib.impl.BGPSynchronization
-
public class BGPSynchronization extends Object
BGP speaker (without Graceful restart capability) sends KeepAlive message after sending all initial Update messages with certain AFI/SAFI. For each AFI/SAFI, it sends one KA message. As it is undetermined which KA message belongs to which AFI/SAFI, an algorithm needed to be implemented.
-
-
Field Summary
Fields Modifier and Type Field Description Map<TablesKey,org.opendaylight.protocol.bgp.rib.impl.BGPSynchronization.SyncVariables>
syncStorage
-
Constructor Summary
Constructors Constructor Description BGPSynchronization(BGPSessionListener listener, Set<TablesKey> types)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
kaReceived()
This method is called, when the second KA message is received.void
updReceived(Update msg)
For each received Update message, the upd sync variable needs to be updated to true, for particular AFI/SAFI combination.
-
-
-
Constructor Detail
-
BGPSynchronization
public BGPSynchronization(BGPSessionListener listener, Set<TablesKey> types)
-
-
Method Detail
-
updReceived
public void updReceived(Update msg)
For each received Update message, the upd sync variable needs to be updated to true, for particular AFI/SAFI combination. Currently we only assume Unicast SAFI. From the Update message we have to extract the AFI. Each Update message can contain BGP Object with one type of AFI. If the object is BGP Link, BGP Node or a BGPPrefix the AFI is Linkstate. In case of BGPRoute, the AFI depends on the IP Address of the prefix.- Parameters:
msg
- received Update message
-
kaReceived
public void kaReceived()
This method is called, when the second KA message is received. It checks each AFI/SAFI sync variables. If they are all false, which means, that there was at least one update message followed by one KA, the EOR is sent to session.
-
-