p00555-3-1 packets and circuits: chris cooper feb 2005 mpls topics: introduction to mpls tutorial...
TRANSCRIPT
P00555-3-1Packets and Circuits: Chris Cooper Feb 2005
MPLSMPLS
Topics:
Introduction to MPLS
Tutorial Questions and Recommended Reading
P00555-3-2Packets and Circuits: Chris Cooper Feb 2005
Routing Without MPLSRouting Without MPLS Large organizational networks are heavily subnetted for
structuring purposes◦ Packets crossing such a network could transit many
routers Connectionless nature of IP poses two challenges
◦ Per-packet processing◦ Distributed routing (Per hop behaviour PHB)
Core routers needs to forward tens of millions of packets per second◦ Must process each packet in a few nanoseconds
Potential for congestion in router forwarder (packet switch) Packets follow the best path according to the routing
table in each router◦ No opportunity for setting end-to-end path◦ Could override with static routes
But this approach doesn’t scale
P00555-3-3Packets and Circuits: Chris Cooper Feb 2005
Normal IP Transit NetworkNormal IP Transit Network
Connecting widely separated parts of an enterprise network◦ ‘Enterprise’: a large (national, international) company,
organization◦ a number of sites (campuses, branches, offices)
Enterprise Network
Enterprise Network
Service Provider’sTransit Network
BGP Routersto Service Provider
Normal Subnet Routers
P00555-3-4Packets and Circuits: Chris Cooper Feb 2005
IP vs. MPLS Transit NetworksIP vs. MPLS Transit Networks
Enterprise network(routed normally)
Enterprise network(routed normally)
MPLS transit network
Enterprise Network
Enterprise Network
Service Provider’sTransit Network
Routed Path
Label Switched Path
MPLS-enabledrouters
NormalIP routers
IP
MPLS
P00555-3-5Packets and Circuits: Chris Cooper Feb 2005
Benefits of MPLSBenefits of MPLSLower transit delay
◦ Core routers switch not routeTraffic engineering
◦ Packets can take non-standard path(OSPF path)
Scalability◦ Labels can be nested
to facilitate networkhierarchy
Flexibility◦ Can be used over
LANs PPP tunnels [ATM & Frame Relay backbones]
P00555-3-6Packets and Circuits: Chris Cooper Feb 2005
MPLS Goal: Dynamic Switched MPLS Goal: Dynamic Switched FlowsFlows
Original goal: bypass routing table lookup for as many packets as possible◦ Dynamically detect packet flows
Identified by unique pairs of IP addresses and port numbers◦ Switch, rather than route, packets on known flows
Cisco called this “route once, switch many” Original approach based on two TCP-related
assumptions◦ Majority of IP packets belong to TCP sessions
Rather than UDP datagram streams◦ TCP sessions have (relatively) long duration
File transfers, conferencing Increasing popularity of Web browsing undermined this
goal◦ Uses short-duration sessions
Per-flow path setup doesn’t scale
P00555-3-7Packets and Circuits: Chris Cooper Feb 2005
MPLS Goal: Dynamic Switched MPLS Goal: Dynamic Switched FlowsFlows(continued)(continued)
Enterprise network(routed normally)
Enterprise network(routed normally)
MPLS transit network
Packet flowfollowing switched path
MPLS-enabledrouters
Flow-detecting MPLS routers
P00555-3-8Packets and Circuits: Chris Cooper Feb 2005
MPLS Goal: Traffic MPLS Goal: Traffic EngineeringEngineering Determine end-to-end path for given packet flows
◦ Override routing protocol decision where administratively appropriate
Allows routing policy to be set◦ Reflect service offerings
Low-delay path for voice traffic More secure path for certain customers
Now seen as most important reason for using MPLSMPLS transit network
MPLS routers
Predetermined path
P00555-3-9Packets and Circuits: Chris Cooper Feb 2005
Multiprotocol Label Multiprotocol Label SwitchingSwitching
Overview
Label Switching
Operation
P00555-3-10Packets and Circuits: Chris Cooper Feb 2005
Label SwitchingLabel Switching Labels packets for faster switching through network
◦ Connection-oriented protocols use virtual circuit ID Frame relay DLCI ATM VPI/VCI
◦ Connectionless protocols need to add label VLAN identifier (802.1Q trunking) MPLS label (added to Ethernet and PPP)
Switches set up paths as required◦ Associate labels with paths◦ Use label as route-table lookup
Labels often have only link-by-link significance◦ Allows switch to differentiate incoming flows◦ Each switch maps label values predictably for outgoing
flows
DLCI = data-link connection identifierVCI = virtual channel identifierVPI = virtual path identifier
P00555-3-11Packets and Circuits: Chris Cooper Feb 2005
Label Switching RoutersLabel Switching Routers MPLS-enabled devices are called Label Switching
Routers (LSRs)◦ Multilayer switches enhanced with MPLS protocols
MPLS identifies two roles for LSRs◦ Edge LSRs and Core LSRs
Edge LSRs often calledLabel Edge Routers (LERs)
Edge LSRs◦ Determine packet path and perform flow classification◦ Assign unique labels to each flow
Core LSRs◦ Use label values to switch packets over cut-through
paths◦ Layer 2 forwarding bypasses normal routing function
Edge LSR
Edge LSR
Core LSRs
P00555-3-12Packets and Circuits: Chris Cooper Feb 2005
Multiprotocol Label Multiprotocol Label SwitchingSwitching
Overview
Label Switching
Operation
P00555-3-13Packets and Circuits: Chris Cooper Feb 2005
Operational Overview IOperational Overview IIdentify groups of packets of packets
travelling over a common path◦For example, towards the same destination
network or host◦Called a forwarding equivalence class
Assume they have common forwarding requirements and assign a label to each group◦Encapsulate with label header carrying same label
value◦Communicate label settings to downstream router◦Downstream router assigns label to outgoing FEC
and communicates downstream And so on
P00555-3-14Packets and Circuits: Chris Cooper Feb 2005
Operational Overview IIOperational Overview IIOnce LSP has been set up routers process FEC
accordingly
Ingress LSR (ingress LER) adds label to packet
Core LSRs match incoming labels to route table, which gives output port◦ Outgoing label map applies downstream label value
As previously communicated to downstream router◦ Bypassing conventional packet-by-packet, hop-by-hop L3
processing
Egress LSR (egress LER) removes it
Set of label mappings for a group constitutes the label switched path (LSP) for that FEC
P00555-3-15Packets and Circuits: Chris Cooper Feb 2005
Label SwitchingLabel Switching
Port 5label map
Incoming label
Outgoing port
a 8
b 5
c 5
d 7
Incoming port
Incoming label
Outgoing label
4 a p
1 b q
1 c r
3 z s
Port 1route table
Port 5label map
1
2
3
4
5
6
7
8
c
x
y z
a
bb c
x
y z
a
rqsp
mm
ss
bb
P00555-3-16Packets and Circuits: Chris Cooper Feb 2005
Label Switched Path (LSP)Label Switched Path (LSP) MPLS identifies two types of label switched path
◦ Destination- based(follow the OSPF path)◦ Explicitly routed( follow the way u determined)
(Cisco terminology; descriptive)
Destination-based LSP follows conventional forwarding path◦ As determined by IP routing table◦ Originally set up from destination LER source LER
(Why is that?)
Explicitly routed LSP use source-specified path (source routing)◦ Path set up from source LER destination LER◦ Useful for overriding normal route selection based on least
cost path E.g. for enforcing route selection (‘routing policy’)
P00555-3-17Packets and Circuits: Chris Cooper Feb 2005
LSP Set-UpLSP Set-Up LSR is essentially an MPLS-enabled multi-layer switch
Routing database constructed in normal way◦ Using, for example, OSPF◦ Then made available to MPLS switching engine
Switching engine assigns labels to forwarding paths◦ Sends route/label mappings to next-hop neighbour using
a/the Label Distribution Protocol (LDP)( the path are renewed periodically)
Once LSP set up, packets are label-switched(packets can flow)
Conventional, in most cases, for router prior to egress LSR to remove label◦ Avoids processing load on LSR◦ Called penultimate hop-popping
P00555-3-18Packets and Circuits: Chris Cooper Feb 2005
How MPLS WorksHow MPLS Works(continued)(continued)
NormalIP packet
NormalIP packet
Labelled packet
Edge LSR
Edge LSR
Label Switching Path (LSP)Core LSRs
May pop label
P00555-3-19Packets and Circuits: Chris Cooper Feb 2005
MPLS HeaderMPLS HeaderHeader is 32 bits (4 octets)
◦ Label field is 20 bits◦ Three-bit EXPerimental field can be used to carry
(some) DiffServ markings through MPLS network◦ S = 1 indicates bottom of stack◦ Time To Live (TTL) is decremented by LSRs to
maintain usual packet hop count
Number of bits 20 3 1 8
Label EXP S TTL
P00555-3-20Packets and Circuits: Chris Cooper Feb 2005
Label Encapsulation Label Encapsulation SchemesSchemes
Format: 32 bits added to beginning of packet (prepended)◦ 20-bit label◦ Remaining bits used for
variety of purposes Two ways of inserting label
◦ Add as protocol shim to existing header PPP and switched LANs usual method
◦ Map onto existing virtual circuit identifier ATM or Frame Relay rare: included for completeness
Once the label is in place, established schemes can be used◦ E.g. label multiplexing and
switching
Label inserted as additional header
IP payloadCRC
LAN/PPPheader
Label in FR DLCI field
IP payloadCRC
Label in ATM VPI/VCI fields
IP part-payload
P00555-3-21Packets and Circuits: Chris Cooper Feb 2005
Label Stacking ILabel Stacking I Can add further label in front of (‘on top of’) the existing
one(s)◦ Nested labels treated as stack
Hence use of term ‘pop’◦ Network switches on top-most label
Allows several LSPs to be grouped for forwarding purposes◦ Provided they can be treated as a single FEC
E.g. all heading to same edge-point
Can continue the process, grouping groups together into a further group, with a new label
Each LSP marked by pair of label edge routers and a label in the stack◦ Ingress LER pushes new label onto stack◦ Egress LER pops label off the stack
P00555-3-22Packets and Circuits: Chris Cooper Feb 2005
Label Stacking IILabel Stacking II
LERs
LERs
LSP
LSP
P00555-3-23Packets and Circuits: Chris Cooper Feb 2005
MPLS Summary IMPLS Summary I Multiprotocol Label Switching (MPLS)
◦ Applies label switching to IP networks◦ Facilitates
Unequal cost load balancing Setting routing policies (traffic engineering) Virtual Private Networks (VPNs)
◦ Bypasses potential bottlenecks causes by large route table look-ups
◦ Allows provider network nesting though label stacking Allows label mapping to be communicated in variety of ways How do u communicate label route information across the
network◦ LDP(label distribution protocol)◦ OSPF and BGP enhancements◦ RSVP
Details of how to recover from link failure still being finalized Generalised MPLS: paths over SONET/SDH & wavelengths
(‘s’) in WDM networks
P00555-3-24Packets and Circuits: Chris Cooper Feb 2005
Tutorial topics: MPLSTutorial topics: MPLS1. What are the similarities between MPLS
label switching and FR/ATM switching?
2. What (if any) are the differences?
3. Look up “penultimate hop popping”. What is it and what does it achieve?
4. Why is a ‘destination-based’ MPLS path set up from destination LSR back towards source LSR?
1. Hint Remember path is unidirectional: think about label mapping
P00555-3-25Packets and Circuits: Chris Cooper Feb 2005
STUDY QUESTIONSTUDY QUESTIONQ1(i) What does the term label switching
mean? Explain, using appropriate diagrams, how MPLS applies this principle to IP packets and the main advantages it gives. [5]
(ii) Figure 1 shows part of an OSPF network. The network administrator notices that traffic from the remote site LANs frequently congests the route to Head Office. Explain why this is, and describe, with examples, how MPLS could be used to overcome this problem. [5]
P00555-3-26Packets and Circuits: Chris Cooper Feb 2005
FIGURE 1FIGURE 1
P00555-3-27Packets and Circuits: Chris Cooper Feb 2005
Q 2. Explain what is meant by a Forwarding Equivalence Class and a Label Switched Path in MPLS. What is meant by 'DiffServ-enabled MPLS'? Explain briefly what MPLS labelling arrangements you would expect to see for a set of enterprise VPNs, where each VPN supports its own two DiffServ per-hop behaviours (PHBs). Would this change, and if so, how, if within each VPN, an enterprise also used MPLS to traffic engineer the routing of traffic with a different per-hop behaviour? Explain your answer. [6]