MPLS examples and applications
Transcription
MPLS examples and applications
MPLS examples and applications David Larrabeiti Piotr Pacyna Dpto. de Ingeniería Telemática Universidad Carlos III de Madrid Programme authors and contributors Lecturers (Spanish course): David Larrabeiti López José Félix Kukielka Supporting lecturers (English course): Jorg Diederich Huw Oliver Piotr Pacyna Departamento de Ingeniería Telemática MPLS 1 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out - I/F in Label in - - - Dest. I/F out Label out 10.1.1.3 - I/F in Label in - - - Dest. I/F out 10.1.1.3 - 12.0.0.1 Request: 10.1.1.3 10.1.1.1 a b Request: 10.1.1.3 d 10.1.1.3 10.1.1.2 c e 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 2 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out - I/F in Label in - - - Dest. I/F out Label out 10.1.1.3 - I/F in Label in - d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 Request: 10.1.1.3 10.1.1.1 a b Request: 10.1.1.3 d 10.1.1.3 10.1.1.2 c e Mapping: 50 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 3 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out - I/F in Label in - - - Dest. I/F out Label out 10.1.1.3 c I/F in Label in 50 d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 Request: 10.1.1.3 10.1.1.1 a b Request: 10.1.1.3 d 10.1.1.3 10.1.1.2 c e Mapping: 50 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 4 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out - I/F in Label in - b 40 Dest. I/F out Label out 10.1.1.3 c I/F in Label in 50 d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 Request: 10.1.1.3 10.1.1.1 a b Mapping: 40 Request: 10.1.1.3 d 10.1.1.3 10.1.1.2 c e Mapping: 50 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 5 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a I/F in Label in 40 b 40 Dest. I/F out Label out 10.1.1.3 c I/F in Label in 50 d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 Request: 10.1.1.3 10.1.1.1 a b Mapping: 40 Request: 10.1.1.3 d 10.1.1.3 10.1.1.2 c e Mapping: 50 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 6 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 Dest. I/F out Label out 10.1.1.3 c 50 I/F in Label in d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c e 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 7 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 Dest. I/F out Label out 10.1.1.3 c 50 I/F in Label in d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c e Request: 10.1.1.3 10.1.1.5 10.1.1.6 Request: 10.1.1.3 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.7 MPLS 8 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b e 40 30 10.1.1.1 a Dest. I/F out Label out 10.1.1.3 c 50 I/F in Label in d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 b d 10.1.1.3 10.1.1.2 c e Mapping: 30 Request: 10.1.1.3 10.1.1.5 10.1.1.6 Request: 10.1.1.3 10.1.1.4 Mapping: 20 Departamento de Ingeniería POP Telemática 10.1.1.7 MPLS 9 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b e 40 30 Dest. I/F out Label out 10.1.1.3 c 50 I/F in Label in d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 47.1.1.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c e 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 10 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 e 30 Dest. I/F out Label out 10.1.1.3 c 50 I/F in Label in d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 47.1.1.1 47.1.1.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c 47.1.1.1 iBGP routing table e Prefix Next Hop 47/8 10.1.1.3 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 11 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 Dest. I/F out Label out 10.1.1.3 c I/F in Label in 50 d 50 Dest. I/F out 10.1.1.3 - 12.0.0.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c e Request: Release: 10.1.1.3 Request: 10.1.1.3 10.1.1.3 Request: 10.1.1.3 10.1.1.5 Mapping: 100 10.1.1.6 Mapping: 110 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.7 MPLS 12 RFC 3031 MPLS Architecture 5.1.6. Downstream LSR: Withdraw Procedure In this case, there is only a single procedure. When LSR Rd decides to break the binding between label L and address prefix X, then this unbinding must be distributed to all LSRs to which the binding was distributed. It is required that the unbinding of L from X be distributed by Rd to a LSR Ru before Rd distributes to Ru any new binding of L to any other address prefix Y, where X != Y. If Ru were to learn of the new binding of L to Y before it learned of the unbinding of L from X, and if packets matching both X and Y were forwarded by Ru to Rd, then for a period of time, Ru would label both packets matching X and packets matching Y with label L. …. if label distribution adjacency is brought down by either peer (whether as a result of failure or as a matter of normal operation), all bindings received over that adjacency must be considered to have been withdrawn. As long as the relevant label distribution adjacency remains in place, label bindings that are withdrawn must always be withdrawn explicitly. If a second label is bound to an address prefix, the result is not to implicitly withdraw the first label, but to bind both labels; this is needed to support multi-path routing. If a second address prefix is bound to a label, the result is not to implicitly withdraw the binding of that label to the first address prefix, but to use that label for both address prefixes. Departamento de Ingeniería Telemática MPLS 13 RFC 3036 - LDP Specification 3.5.10. Label Withdraw Message An LSR sends a Label Withdraw Message to an LDP peer to signal the peer that the peer may not continue to use specific FEC-label mappings the LSR had previously advertised. This breaks the mapping between the FECs and the labels. 3.5.10.1. Label Withdraw Message Procedures An LSR transmits a Label Withdraw message under the following conditions: z z 1. The LSR no longer recognizes a previously known FEC for which it has advertised a label 2. The LSR has decided unilaterally (e.g., via configuration) to no longer label switch a FEC (or FECs) with the label mapping being withdrawn. An LSR that receives a Label Withdraw message must respond with a Label Release message. 3.5.11.1. Label Release Message Procedures An LSR transmits a Label Release message to a peer when it is no longer needs a label previously received from or requested of that peer. An LSR must transmit a Label Release message under any of the following conditions: z z z 1. The LSR which sent the label mapping is no longer the next hop for the mapped FEC, and the LSR is configured for conservative operation. 2. The LSR receives a label mapping from an LSR which is not the next hop for the FEC, and the LSR is configured for conservative operation. 3. The LSR receives a Label Withdraw message. Departamento de Ingeniería Telemática MPLS 14 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 Dest. I/F out Label out 10.1.1.3 e I/F in Label in 120 f 100 Dest. I/F out 10.1.1.3 - 12.0.0.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c Mapping: 120 e Request: f Request: 10.1.1.3 10.1.1.3 Request: 10.1.1.3 10.1.1.5 Mapping: 100 10.1.1.6 Mapping: 110 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.7 MPLS 15 Downstream-on-demand, conservative, ordered I/F in Dest. - 10.1.1.3 I/F out Label out a 40 I/F in Label in b 40 Dest. I/F out Label out 10.1.1.3 e 120 I/F in Label in f 100 Dest. I/F out 10.1.1.3 - 12.0.0.1 10.1.1.1 a b d 10.1.1.3 10.1.1.2 c e 10.1.1.5 10.1.1.4 Departamento de Ingeniería POP Telemática 10.1.1.6 10.1.1.7 MPLS 16 MPLS: Summary Backbone network technology LSRs participate in the routing protocol as any other “ordinary” IP router Creates a mesh of LSPs from the layer 3 forwarding tables Distributes the corresponding bindings using either an available routing protocol or a special-purpose protocol z LDP: Label Distribution Protocol Packets forwarded by label switching usually follow the same path as packets forwarded by traditional IP forwarding z But: it is possible to establish other paths (traffic engineering) Departamento de Ingeniería Telemática MPLS 17 Applications MPLS Applications Optimize packet forwarding in the routers z Initial objective of label switching techniques z Unified IP over ATM solution Mechanisms for controlling the packet forwarding z More efficient tunnels z z Virtual private networks using MPLS and BGP Traffic engineering in the Internet z Reroute traffic on non-shortest-path routes over less congested links Quality of Service z With MPLS: adding 4 byte header, with IPIP tunneling adding 20 bytes) Type DiffServ or mapping to ATM VCs / Frame Relay Optical switching: Using MPLS signaling instead of manual configuration Departamento de Ingeniería Telemática MPLS 19 MPLS Applications (2) A unified IP/ATM solution Multiservice network Automatically Switched Optical Networks (ASON) Substitution of iBGP in the core routers Departamento de Ingeniería Telemática MPLS 20 Penultimate Hop Popping Small inefficiency: Egress LER receives a packet with a label and could in principle do forwarding based on label switching instead of IP forwarding z Solution: Define a proxy egress LER z z z But cannot do label swapping since the next hop is not label-switching capable Using the last but one (penultimate) LSR in the LSP After having performed the label switching decision, it removes the label completely The last router in an LSP can therefore be non-MPLS capable Deployment issue: z z If a domain is fully MPLS-enabled: Use the label-switching capabilities until the end of the domain and define the first router outside the MPLS domain to be the (non MPLS-enabled) egress router... Drawback: No possibility for IP-based processing on the egress (e.g., traffic shaping) Departamento de Ingeniería Telemática MPLS 21 Example: Penultimate Hop Popping (1) Egress LER Plain IP forwarding IP Ingress LER adds label to packet Proxy Egress LSR: Packet forwarded based on label Removes label IP Domain Unlabeled Packet arrives IP IP 1 0 IP IP Domain MPLS Domain Source: Nortel Networks Departamento de Ingeniería Telemática MPLS 22 Example: Penultimate Hop Popping (2) Proxy Egress LER: Packet forwarded Based on label; removes label Egress LER IP Ingress LER adds label to packet LSR: Packet forwarded based on label IP Domain Unlabeled Packet arrives IP 20 IP 1 0 IP IP Domain MPLS Domain Source: Nortel Networks Departamento de Ingeniería Telemática MPLS 23 Exam June 2003 (1) MPLS backbone network (over ATM) of provider A R_C LSR_D LSR_C C ATM public network R_A LSR_AC A R_B z B All links based on ATM R_[ABCD]: IP routers using CLIP technology Scenario a): MPLS z z LSR_B General Scenario: z D LSR_BD LSR_A R_D LSR_[ABCD]: Label Edge Routers of MPLS network LSR_AC, LSR_BD: Interior MPLS network backbone switches Scenario b): CLIP z LSR_*: Operating as normal IP routers using CLIP technology Departamento de Ingeniería Telemática MPLS 24 Exam June 2003 (2) Question a) z Calculate the packet forwarding delay between A and B for both scenarios. The delay for forwarding a packet using IP shall be 10 µs, for forwarding a packet using label switching shall be 2 µs, the delay for segmenting / reassembling an AAL5 frame shall be 1 us. You can assume that all other delays are zero (e.g., propagation delay, delay within the public ATM network, ATM cell processing delay) since the delays are the same for both scenarios. What is the forwarding delay in case LSR_B acts as a proxy egress and R_B is the egress of the LSP between LSR_A and LSR_B? Solution: Scenario a) Delay = 64 µs Scenario b) Delay = 84 µs Î Difference of 20 µs. With proxy egress: scenario a) = 56 µs. Departamento de Ingeniería Telemática MPLS 25 Examen Junio 2003 (3) b) Make a similar comparison between MPLS and NHRP, assuming that the LSRs are substituted for ATM switches in the NHRP scenario b.1) NHRP used end to end b.2) NHRP only in the core network Solution: b.1) NHRP end to end: Delay = 24 µs (40 les than with MPLS) b.2) NHRP only in the core network: Delay = 64 µs (the same as with MPLS) Departamento de Ingeniería Telemática MPLS 26