BGP LU - BGP Labeled Unicast was defined in RFC 3107. BGP LU is used so commonly in many different network architectures and frameworks. In this post, BGP LU is explained with its use cases.
BGP LU - Labeled Unicast allows BGP to advertise an MPLS Label for the IPv4 and IPv6 Unicast prefixes.
Those who know MPLS may know but let me remind you if an IP prefix is learned via IGP routing protocols such as OSPF and IS-IS, then LDP, RSVP, and Segment Routing can assign an MPLS Label. But if the prefix is learned via BGP, only BGP can assign an MPLS Label. Assigning a label by BGP for the IPv4 or IPv6 Unicast prefix is known as BGP Labeled Unicast.
It is quite easy to understand what is BGP LU but at the beginning of the post, as I said, let's have a look at its use cases.
I strongly recommend checking the BGP Course for those who want to learn more about this topic.
BGP LU - RFC 3107 in Inter-AS MPLS VPN
It is used in Inter-AS MPLS VPN Option C, between the ASBRs (Autonomous System Boundary Routers).
In Inter-AS Option C, infrastructure prefixes of ASes are exchanged and for those prefixes, MPLS Label is assigned by BGP. Inter-AS MPLS VPN Option C is used when scalability is required, thus in general it is used when the scalability is the functional network design requirement (Must have requirement).
BGP LU in Seamless MPLS
Another scalability requirement isSeamless MPLS. The idea with the Seamless MPLS is to extend the MPLS control and data plane towards the Access domain, not just the Core or Aggregation parts of the network.
With Seamless MPLS, in order to achieve this, loopback prefixes of the network nodes are carried in BGP.
Because prefixes are carried in BGP, and MPLS is enabled even at the Access nodes, BGP has to assign an MPLS Label, that's why. we have it in Seamless MPLS as well.
Figure - Seamless MPLS Control Plane - Source: juniper.net
BGP LU in Carrier Supporting Carrier (CSC) Architecture
Figure - Carrier Supporting Carrier - CSC Architecture
Another architecture is Carrier Supporting Carrier. The idea with CSC, there is a Customer Carrier and Backbone Carrier.
Customer Carrier advertises its own infrastructure prefixes to the backbone carrier and doesn't advertise its customer prefixes.
So, customer prefixes of Customer carrier can be hidden and not advertised to the backbone carrier. Between Customer Carrier and Backbone Carrier, MPLS is enabled and as a routing protocol, BGP is used mainly.
When BGP is used and MPLS enabled, yet again BGP LU comes into play!.
So, whenever there is a scalability need, MPLS is used, and BGP is used for IP prefix exchange, you will encounter BGP LU - Labeled Unicast. Cisco, Juniper, Nokia, Huawei, and many other big vendors support BGP LU as it is standard and RFC 8277 obsoleted RFC 3107 a couple of years ago.