MPLS BGP update Packet

Here is a closer look at the MPLS BGP update packet which carries VPN label, RD and extended communities like BGP cost, RT and Site of Origin attribute (SoO)

when MPLS iBGP neighbor is formed, Labelled VPN capability is negotiated in addition to Route Refresh and IPv4 unicast.

Note; the value of afi/safi = 1/128 which implies VPN label capability.
Assume R2 sends an iBGP Update to R5 and R5 learnt a VRFv4 prefix as below;
R5#show ip bgp vpnv4 all
BGP routing table entry for 1:1:, version 11
Paths: (1 available, best #1, table one)
Flag: 0x820
Not advertised to any peer
Local (metric 3) from (
Origin incomplete, metric 2, localpref 100, valid, internal, best
Extended Community: RT:11:11 OSPF DOMAIN ID:0x0005:0x000000020200
mpls labels in/out nolabel/23
Below is the corresponding BGP update packet for the above prefix.
In the Update packet -> Path Attribute
  • Origin:  Well Know, transitive
    • is “incomplete” as the prefix is redistributed from PE-CE protocol-OSPF
  • AS_Path: Well Know, transitive
    • is “empty” as PE-CE protocol is OSPF not eBGP. NO AS_path to append
  • MED: Optional Non-transitive
    • OSPF metric-2 is copied to MED when redistributed at PE.
  • Local Preference: Well-known, transitive
    • Default value “100”
  • Extended Communities – Optional Transitive
    • RT : 11:11
    • OSPF Domain ID:
      • By default,  Same as OSPF process ID configured under VRF facing CE. If it is same when redistributing BGP to OSFP process ID(on another site), routes are distributed as Type-3. Else, Type-5 (AS external)
    • OSPF Route Type(RT)
      • Route Type is encoded as area:route-type:option. Here,
        • area: area ID of the prefix – (area 0)
        • Route-type: 2 (Type-2 LSA)
        • Option: zero. Valid only for external route. If set, then it indicates external metric type-2
    • OSPF Router ID:
      • Router ID of the OSPF process.
  • MP_REACH_NLRI- Optional Non-transitive
    • Has information about  afi/safi and NLRI
    • NLRI has;
      • Label Stack: 23. It is the local binding of R2 (Remote binding of R5 for prefix So, when R5 needs to send packet to R2, it has to use label:23 as the bottom label (VPN Label)
      • RD : Route Distinguisher . Here 1:1
      • Prefix: Here
      • Above two forms the VPNv4 prefix = 1:1:



    This entry was posted in mpls and tagged , , . Bookmark the permalink.

    Leave a Reply

    Fill in your details below or click an icon to log in: Logo

    You are commenting using your account. Log Out /  Change )

    Google photo

    You are commenting using your Google account. Log Out /  Change )

    Twitter picture

    You are commenting using your Twitter account. Log Out /  Change )

    Facebook photo

    You are commenting using your Facebook account. Log Out /  Change )

    Connecting to %s