[BGPCEP-877] bgpcep send to peer update message with non-transitive PMSI tunnel attribute. Created: 19/Aug/19  Updated: 05/Sep/19  Resolved: 05/Sep/19

Status: Resolved
Project: bgpcep
Component/s: BGP
Affects Version/s: Neon SR1, Fluorine SR3
Fix Version/s: Sodium, Neon SR3, Magnesium

Type: Bug Priority: Medium
Reporter: Peter Suna Assignee: Tibor Král
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I have topology with two Arista switches (ceos1, ceos2) and between them is bgpcep as a BGP EVPN RR. When I create VxLAN at ceos1 device, than this information is sent to bgppcep: from Arista:

// Update message sent from ceos1 to bgpcep.
Frame 33: 148 bytes on wire (1184 bits), 148 bytes captured (1184 bits) on interface 0
Linux cooked capture
Internet Protocol Version 4, Src: 172.30.0.2, Dst: 172.30.0.4
Transmission Control Protocol, Src Port: 179, Dst Port: 41880, Seq: 1, Ack: 1, Len: 80
Border Gateway Protocol - UPDATE Message
    Marker: ffffffffffffffffffffffffffffffff
    Length: 80
    Type: UPDATE Message (2)
    Withdrawn Routes Length: 0
    Total Path Attribute Length: 57
    Path attributes
        Path Attribute - ORIGIN: IGP
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: ORIGIN (1)
            Length: 1
            Origin: IGP (0)
        Path Attribute - AS_PATH: empty
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: AS_PATH (2)
            Length: 0
        Path Attribute - LOCAL_PREF: 100
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: LOCAL_PREF (5)
            Length: 4
            Local preference: 100
        Path Attribute - MP_REACH_NLRI
            Flags: 0x80, Optional, Non-transitive, Complete
            Type Code: MP_REACH_NLRI (14)
            Length: 28
            Address family identifier (AFI): Layer-2 VPN (25)
            Subsequent address family identifier (SAFI): EVPN (70)
            Next hop network address (4 bytes)
            Number of Subnetwork points of attachment (SNPA): 0
            Network layer reachability information (19 bytes)
        Path Attribute - PMSI_TUNNEL_ATTRIBUTE
            Flags: 0xc0, Optional, Transitive, Complete
            Type Code: PMSI_TUNNEL_ATTRIBUTE (22)
            Length: 9
            Flags: 0
            Tunnel Type: Ingress Replication (6)
            0000 0000 0000 1100 1111 .... = MPLS Label: 207
            Tunnel ID: tunnel end point -> 10.10.10.1

Problem is when this message is resend from bgpcep to Arista device ceos2. Bgpcep change PMSI_TUNNEL_ATTRIBUTE Flags to "0x80, Optional, Non-transitive, Complete".

// Update message sent from bgpcep to ceos2.
Frame 37: 148 bytes on wire (1184 bits), 148 bytes captured (1184 bits) on interface 0
Linux cooked capture
Internet Protocol Version 4, Src: 172.30.0.4, Dst: 172.30.0.3
Transmission Control Protocol, Src Port: 46842, Dst Port: 179, Seq: 1, Ack: 1, Len: 80
Border Gateway Protocol - UPDATE Message
    Marker: ffffffffffffffffffffffffffffffff
    Length: 80
    Type: UPDATE Message (2)
    Withdrawn Routes Length: 0
    Total Path Attribute Length: 57
    Path attributes
        Path Attribute - ORIGIN: IGP
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: ORIGIN (1)
            Length: 1
            Origin: IGP (0)
        Path Attribute - AS_PATH: empty
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: AS_PATH (2)
            Length: 0
        Path Attribute - LOCAL_PREF: 100
            Flags: 0x40, Transitive, Well-known, Complete
            Type Code: LOCAL_PREF (5)
            Length: 4
            Local preference: 100
        Path Attribute - MP_REACH_NLRI
            Flags: 0x80, Optional, Non-transitive, Complete
            Type Code: MP_REACH_NLRI (14)
            Length: 28
            Address family identifier (AFI): Layer-2 VPN (25)
            Subsequent address family identifier (SAFI): EVPN (70)
            Next hop network address (4 bytes)
            Number of Subnetwork points of attachment (SNPA): 0
            Network layer reachability information (19 bytes)
        Path Attribute - PMSI_TUNNEL_ATTRIBUTE
            Flags: 0x80, Optional, Non-transitive, Complete
            Type Code: PMSI_TUNNEL_ATTRIBUTE (22)
            Length: 9
            Flags: 0
            Tunnel Type: Ingress Replication (6)
            0000 0000 0000 1100 1111 .... = MPLS Label: 207
            Tunnel ID: tunnel end point -> 10.10.10.1

After this update message, Arista send back Notification message and break BGP peering with bgpcep. In notification message is data pointing at the PMSI_TUNNEL_ATTRIBUTE.

// Notification message sent from ceos2 to bgpcep.
Frame 42565: 101 bytes on wire (808 bits), 101 bytes captured (808 bits) on interface 0
Linux cooked capture
Internet Protocol Version 4, Src: 172.30.0.3, Dst: 172.30.0.4
Transmission Control Protocol, Src Port: 179, Dst Port: 59166, Seq: 155, Ack: 316, Len: 33
Border Gateway Protocol - NOTIFICATION Message
    Marker: ffffffffffffffffffffffffffffffff
    Length: 33
    Type: NOTIFICATION Message (3)
    Major error Code: UPDATE Message Error (3)
    Minor error Code (Update Message): Attribute Flags Error (4)
    Data: 8016090006000cf00a0a0a01

 


Generated at Wed Feb 07 19:14:22 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.