cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
5006
Views
14
Helpful
3
Replies

MPLS LDP bindings

pgyogeshkumar
Level 1
Level 1

In MPLS network for a destination why do we have local and remote bindings ? whats the use of it ?

 
    3 Replies 3

    Peter Paluch
    Cisco Employee
    Cisco Employee

    Hi,

    You have posted the same question here:

    https://supportforums.cisco.com/discussion/12554116/mpls-ldp-bindings

    Please delete it first so that the answers don't get spread over two threads.

    MPLS network for a destination why do we have local and remote bindings ? whats the use of it ?

    In MPLS, every packet gets a label and is then forwarded based on the value of this label. At each hop, the value of the label is examined, the label is swapped and the packet is sent further. This label swap information is constructed based on local and remote bindings.

    Each Cisco router assigns a unique label to each IGP-learned route in its routing table - essentially, it enumerates these routing table entries and assigns each entry a label. This is called the local binding.

    Then, each router uses LDP to advertise these local bindings to each of its LDP neighbors. To these neighbors, the received LDP bindings are remote bindings. By doing this, the router tells its neighbors: "Guys, if you want to forward packets to this particular network through me, label them using this label value!" Of course, this router will receive similar bindings from its own downstream neighbors and treat them as remote bindings. As a result, each router knows how it enumerated its known networks thanks to its own local bindings so when other routers send labeled packets through it, it knows what the label refers to, and subsequently, it knows how to swap the label for each known network based on received remote bindings from its own next hops towards the destination networks.

    So in essence:

    • Local binding: How I want the packets for a particular network to be labeled if they are to flow through me
    • Remote binding: How my next hop wants the packets for a particular network to be labeled if they are to flow through him

    Best regards,
    Peter

    IGP learned routes must be basically the routes/paths between P routers and the PE routers connected to it. Labels are assigned to them which is clear.

    Suppose three P routers are there (fully meshed) and 4th P router is connected just to P2 and P3, not to P1.

     

    Now P1 will send its local binding information to P2 and P3 so that P2 and P3 knows how to reach P1.

     

    P2 and P3 will inturn have local binding as its newly learned route and advertise this to P4

     

    Queries as below :

     

    1. Will P2 advertise the new local binding of P1 to P3 as well ? in that case is it not looping ?

     

    2. P4 will receive the label bindings from both P2 and P3 .. so which path it will choose while forwarding packets ?

    Hi Yogesh,

     

    1. Will P2 advertise the new local binding of P1 to P3 as well ? in that case is it not looping ?

    A forwarding decision will not be made based on label binding table. A forwarding decision will be made only by IGP. Consider P2 in your topology,

     

    P4-------P2------P1

    |        |       |

    +---------P3------+

    Assume 10.1.x.x is the loopback for Px. 

    Each node will assign a local label for any prefixes in its routing table. So P2 will receive label advertisement for 4 prefixes {10.1.1.1, 10.1.2.2, 10.1.3.3, 10.1.4.4} from each neighbor P1, P3 and P4.

     

    Now P2's IGP will choose the best path (and so the next-hop) and populate the routing table.

    10.1.1.1 will have P1 as next-hop.

    10.1.2.2 is directly connected

    10.1.3.3 will have P3 as next-hop

    10.1.4.4 will have P4 as nexthop

     

    P2 will choose label advertised by P1 for 10.1.1.1, label advertised by P3 for 10.1.3.3 and label advertised by P4 for 10.1.4.4 (In your example, it all will be imp-null).

     

    So the simple concept is:

    Each node assign and advertise label for all prefixes in routing table.

    Each node will populate a local label table (known as LIB) with all label information received from neighbors.

    For each prefix in local routing table, choose the next-hop, go to LIB and get the label advertised by the next-hop

    Populate the prefix to label information in LFIB.

     

    2. P4 will receive the label bindings from both P2 and P3 .. so which path it will choose while forwarding packets ?

    It depends on IGP. Depending on IGP metric, P4 will choose P2 or P3 to reach P1. Incase of equal cost, it load balance. Once it chooses the next-hop, it uses the machinery mentioned above to get the label and populate the label forwarding table.

     

    HTH,

    Nagendra