Class 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 Detail

      • syncStorage

        public final Map<TablesKey,​org.opendaylight.protocol.bgp.rib.impl.BGPSynchronization.SyncVariables> syncStorage
    • 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.
        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.