Uploaded image for project: 'bgpcep'
  1. bgpcep
  2. BGPCEP-346

Routes not withdrawn when eBGP peers are disconnected (the same prefixes annonced)

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Done
    • Bugzilla Migration
    • Bugzilla Migration
    • BGP
    • None
    • Operating System: All
      Platform: All

    • 4835

    Description

      Routes not withdrawn when both eBGP peers (they previously announced these routes) are disconnected

      https://tools.ietf.org/html/rfc4271#section-3.1

      3.1. Routes: Advertisement and Storage

      ...

      BGP provides mechanisms by which a BGP speaker can inform its peers
      that a previously advertised route is no longer available for use.
      There are three methods by which a given BGP speaker can indicate
      that a route has been withdrawn from service:

      ...

      c) the BGP speaker connection can be closed, which implicitly
      removes all routes the pair of speakers had advertised to each
      other from service.

      example-ipv4-topology
      =====================

      eBGP-1 connected
      ----------------

      {"topology":[{"topology-id":"example-ipv4-topology","topology-types":{},"node":[{"node-id":"1.1.1.1","l3-unicast-igp-topology:igp-node-attributes":{"prefix":[

      {"prefix":"8.0.0.0/28"}

      ,

      {"prefix":"8.0.0.16/28"}

      ]}}],"server-provided":true}]}

      both eBGPs connected
      --------------------

      {"topology":[{"topology-id":"example-ipv4-topology","topology-types":{},"node":[{"node-id":"1.1.1.1","l3-unicast-igp-topology:igp-node-attributes":{"prefix":[

      {"prefix":"8.0.0.0/28"}

      ,

      {"prefix":"8.0.0.16/28"}

      ]}}],"server-provided":true}]}

      eBGP-1 disconnected
      -------------------

      {"topology":[{"topology-id":"example-ipv4-topology","topology-types":{},"node":[{"node-id":"2.2.2.2","l3-unicast-igp-topology:igp-node-attributes":{"prefix":[

      {"prefix":"8.0.0.0/28"}

      ,

      {"prefix":"8.0.0.16/28"}

      ]}}],"server-provided":true}]}

      example-ipv4-topology stil contains routes after both eBGP peers disconnection ...
      ----------------------------------------------------------------------------------

      20151223 11:06:42.317 / 20151223 11:06:42.318 / 00:00:00.001
      11:06:42.318 FAIL '{"topology":[{"topology-id":"example-ipv4-topology","topology-types":{},"node":[{"node-id":"2.2.2.2","l3-unicast-igp-topology:igp-node-attributes":{"prefix":

      [

      {"prefix":"8.0.0.0/28"}

      ,

      {"prefix":"8.0.0.16/28"}

      ]}}],"server-provided":true}]}' does not contain '{"topology":[{"topology-id":"example-ipv4-topology","server-provided":true,"topology-types":{}}]}'

      ==========================================================

      the BGP peer log does not contain any prefix withdrawals:

      ...

      2015-12-23 12:20:38,223 DEBUG: UPDATE message received: 0xffffffffffffffffffffffffffffffff0035020000001e40010100400206020100008000800e0e0001010402020202001c08000000
      2015-12-23 12:20:38,223 DEBUG: Decoding update message:
      2015-12-23 12:20:38,223 DEBUG: Message header marker: 0xffffffffffffffffffffffffffffffff
      2015-12-23 12:20:38,223 DEBUG: Message lenght: 0x0035 (53)
      2015-12-23 12:20:38,224 DEBUG: Message type: 0x02 (update)
      2015-12-23 12:20:38,224 DEBUG: Withdrawn routes lenght: 0x0000 (0)
      2015-12-23 12:20:38,224 DEBUG: Withdrawn routes: 0x
      2015-12-23 12:20:38,224 DEBUG: Withdrawn routes prefix list: []
      2015-12-23 12:20:38,224 DEBUG: Total path attribute lenght: 0x001e (30)
      2015-12-23 12:20:38,224 DEBUG: Path attributes: 0x40010100400206020100008000800e0e0001010402020202001c08000000
      2015-12-23 12:20:38,224 DEBUG: Attribute type=1 (ORIGIN, flags:0x40)
      2015-12-23 12:20:38,224 DEBUG: Attribute value=0x00
      2015-12-23 12:20:38,224 DEBUG: Attribute type=2 (AS_PATH, flags:0x40)
      2015-12-23 12:20:38,225 DEBUG: Attribute value=0x020100008000
      2015-12-23 12:20:38,225 DEBUG: Attribute type=14 (MP_REACH_NLRI, flags:0x80)
      2015-12-23 12:20:38,225 DEBUG: Attribute value=0x0001010402020202001c08000000
      2015-12-23 12:20:38,225 DE Address Family Identifier=0x0001
      2015-12-23 12:20:38,225 DE Subsequent Address Family Identifier=0x01
      2015-12-23 12:20:38,225 DE Length of Next Hop Network Address=4 (0x04)
      2015-12-23 12:20:38,225 DE Network Address of Next Hop=2.2.2.2 (0x02020202)
      2015-12-23 12:20:38,225 DE Reserved=0x00
      2015-12-23 12:20:38,225 DE Network Layer Reachability Information=0x1c08000000
      2015-12-23 12:20:38,226 DE NLRI prefix list: ['8.0.0.0/28']
      2015-12-23 12:20:38,226 DE nlri_prefix_received: 8.0.0.0/28
      2015-12-23 12:20:38,226 DEBUG: Calculated NLRI length: 0
      2015-12-23 12:20:38,226 DEBUG: NLRI: 0x
      2015-12-23 12:20:38,226 DEBUG: NLRI prefix list: []
      2015-12-23 12:20:38,226 INFO: total_received_update_message_counter: 6
      2015-12-23 12:20:38,226 INFO: total_received_nlri_prefix_counter: 6
      2015-12-23 12:20:38,226 INFO: total_received_withdrawn_prefix_counter: 0
      2015-12-23 12:20:48,237 INFO: ... idle for 10.010s
      2015-12-23 12:20:48,237 INFO: total_rx_idle_time_counter: 19.797s
      2015-12-23 12:20:48,237 INFO: total_received_update_message_counter: 6
      2015-12-23 12:20:48,237 INFO: total_received_nlri_prefix_counter: 6
      2015-12-23 12:20:48,237 INFO: total_received_withdrawn_prefix_counter: 0
      Traceback (most recent call last):
      File "play.py", line 1632, in <module>
      state.perform_one_loop_iteration()
      File "play.py", line 1574, in perform_one_loop_iteration
      self.reader.wait_for_read()
      File "play.py", line 1406, in wait_for_read
      select.select([self.socket], [], [self.socket], wait_timedelta)

      ==========================================================

      see the attached karaf.log as well - from the ROBOT MESSAGE: Starting test Disconnect_eBGP_Peer2

      Attachments

        1. karaf.log.txt
          471 kB
          Radovan Sajben
        2. 08.2.1_karaf.log
          507 kB
          Iveta Halanova
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            cdgasparini Claudio David Gasparini
            rsajben@cisco.com Radovan Sajben
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: