Introduction to MPLS and Traffic Engineering
Post on 06-Feb-2016
67 Views
Preview:
DESCRIPTION
Transcript
Introduction to MPLS and Traffic
Engineering
Zartash Afzal Uzmi
Feb 14, 2008 CS 573: Network Protocols and Standards 2
Outline Traditional IP Routing
Forwarding and routing Problems with IP routing Motivations behind MPLS
MPLS Terminology and Operation MPLS Label, LSR and LSP, LFIB Vs FIB Transport of an IP packet over MPLS More MPLS terminology
Traffic Engineering [with MPLS] Nomenclature Requirements Examples
Feb 14, 2008 CS 573: Network Protocols and Standards 3
Outline Traditional IP Routing
Forwarding and routing Problems with IP routing Motivations behind MPLS
MPLS Terminology and Operation MPLS Label, LSR and LSP, LFIB Vs FIB Transport of an IP packet over MPLS More MPLS terminology
Traffic Engineering [with MPLS] Nomenclature Requirements Examples
Feb 14, 2008 CS 573: Network Protocols and Standards 4
Forwarding and routing
Forwarding: Passing a packet to the next hop router
Routing: Computing the “best” path to the destination
IP routing – includes routing and forwarding Each router makes the forwarding decision Each router makes the routing decision
MPLS routing Only one router (source) makes the routing decision Intermediate routers make the forwarding decision
Feb 14, 2008 CS 573: Network Protocols and Standards 5
IP versus MPLS routing
IP routing Each IP datagram is routed independently Routing and forwarding is destination-based
Routers look at the destination addresses May lead to congestion in parts of the network
MPLS routing A path is computed “in advance” and a
“virtual circuit” is established from ingress to egress
An MPLS path from ingress to egress node is called a label switched path (LSP)
Feb 14, 2008 CS 573: Network Protocols and Standards 6
How IP routing works
Searching Longest Prefix Match in FIB (Too Slow)
Feb 14, 2008 CS 573: Network Protocols and Standards 7
Problems with IP routing
Too slow IP lookup (longest prefix matching) “was” a
major bottleneck in high performance routers This was made worse by the fact that IP
forwarding requires complex lookup operation at every hop along the path
Too rigid – no flexibility Routing decisions are destination-based
Not scalable in some desirable applications When mapping IP traffic onto ATM
Feb 14, 2008 CS 573: Network Protocols and Standards 8
IP routing rigidity example
Packet 1: Destination A Packet 2: Destination B S computes shortest paths to A and B; finds D as next hop Both packets will follow the same path
Leads to IP hotspots! Solution?
Try to divert the traffic onto alternate paths
1 1
1 2
A B
C
A
B
S
D
Feb 14, 2008 CS 573: Network Protocols and Standards 9
IP routing rigidity example
Increase the cost of link DA from 1 to 4 Traffic is diverted away from node D A new IP hotspot is created! Solution(?): Network Engineering
Put more bandwidth where the traffic is! Leads to underutilized links; not suitable for large
networks
1 4
1 2
A B
C
SA
B
D
Feb 14, 2008 CS 573: Network Protocols and Standards 10
Motivations behind MPLS
Avoid [slow] IP lookup Led to the development of IP switching in 1996
Provide some scalability for IP over ATM Evolve routing functionality
Control was too closely tied to forwarding
Evolution of routing functionality led to some other benefits Explicit path routing Provision of service differentiation (QoS)
Feb 14, 2008 CS 573: Network Protocols and Standards 11
IP routing versus MPLS routing
Traditional IP RoutingMultiprotocol Label Switching (MPLS)
S D
543
21
MPLS allows overriding shortest paths!
Feb 14, 2008 CS 573: Network Protocols and Standards 12
Outline Traditional IP Routing
Forwarding and routing Problems with IP routing Motivations behind MPLS
MPLS Terminology and Operation MPLS Label, LSR and LSP, LFIB Vs FIB Transport of an IP packet over MPLS More MPLS terminology
Traffic Engineering [with MPLS] Nomenclature Requirements Examples
Feb 14, 2008 CS 573: Network Protocols and Standards 13
MPLS label
To avoid IP lookup MPLS packets carry extra information called “Label”
Packet forwarding decision is made using label-based lookups
Labels have local significance only! How routing along explicit path works?
IP DatagramLabel
Feb 14, 2008 CS 573: Network Protocols and Standards 14
Routing along explicit paths
Idea: Let the source make the complete routing decision
How is this accomplished? Let the ingress attach a label to the IP packet and let
intermediate routers make forwarding decisions only On what basis should you choose different
paths for different flows? Define some constraints and hope that the constraints
will take “some” traffic away from the hotspot! Use CSPF instead of SPF (shortest path first)
Feb 14, 2008 CS 573: Network Protocols and Standards 15
Label, LSP and LSR Label
Router that supports MPLS is known as label switching router (LSR)
An “Edge” LSR is also known as LER (edge router)
Path which is followed using labels is called LSP
Label = 20 bits Exp = Experimental, 3 bits S = Bottom of stack, 1bitTTL = Time to live, 8 bits
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Label | Exp|S| TTL
Feb 14, 2008 CS 573: Network Protocols and Standards 16
LFIB versus FIB
Labels are searched in LFIB whereas normal IP Routing uses FIB to search longest prefix match for a destination IP address
Why switching based on labels is faster? LFIB has fewer entries Routing table FIB has larger number of entries???
In LFIB, label is an exact match In FIB, IP is longest prefix match
Feb 14, 2008 CS 573: Network Protocols and Standards 17
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4D
1 - R1 receives a packet for destination D connected to R2
R1 and R2 areregular routers
D
destination
Feb 14, 2008 CS 573: Network Protocols and Standards 18
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4D
2 - R1 determines the next hop as LSR1 and forwards the packet(Makes a routing as well as a forwarding decision)
D
destination
Feb 14, 2008 CS 573: Network Protocols and Standards 19
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
3 – LSR1 establishes a path to LSR6 and “PUSHES” a label(Makes a routing as well as a forwarding decision)
D
destination
31
Feb 14, 2008 CS 573: Network Protocols and Standards 20
Mpls Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
4 – LSR3 just looks at the incoming labelLSR3 “SWAPS” with another label before forwarding
D
destination
17
Labels have localsignifacance!
Feb 14, 2008 CS 573: Network Protocols and Standards 21
MPLS Flow Progress
LSR1
LSR2
LSR3
LSR5
LSR6
R1 R2LSR4
D
5 – LSR6 looks at the incoming labelLSR6 “POPS” the label before forwarding to R2
D
destination
17
Path within MPLS cloudis pre-established:LSP (label-switched path)
Feb 14, 2008 CS 573: Network Protocols and Standards 22
MPLS and explicit routing recap
Who establishes the LSPs in advance? Ingress routers
How do ingress routers decide not to always take the shortest path? Ingress routers use CSPF (constrained shortest path
first) instead of SPF Examples of constraints:
Do not use links left with less than 7Mb/s bandwidth Do not use blue-colored links for this request Use a path with delay less than 130ms
Feb 14, 2008 CS 573: Network Protocols and Standards 23
CSPF
What is the mechanism? (in typical cases!) First prune all links not fulfilling constrains Now find shortest path on the rest of the topology
Requires some reservation mechanism Changing state of the network must also be
recorded and propagated For example, ingress needs to know how much
bandwidth is left on links The information is propagated by means of routing
protocols and their extensions
Feb 14, 2008 CS 573: Network Protocols and Standards 24
More MPLS terminology
172.68.10/24
LSR1 LSR2
Upstream Downstream
Data
Feb 14, 2008 CS 573: Network Protocols and Standards 25
Label advertisement
Always downstream to upstream label advertisement and distribution
171.68.32/24
LSR1LSR2
Use label 5 for destination 171.68.32/24
MPLS Data Packet
with label 5 travels
Upstream Downstream
Feb 14, 2008 CS 573: Network Protocols and Standards 26
Label advertisement
Label advertisement can be downstream unsolicited or downstream on-demand
171.68.32/24
LSR1 LSR2
Sends label Without any Request
Upstream Downstream
171.68.32/24
LSR1 LSR2
Sends label ONLY after receiving request
Request For label
Upstream Downstream
Feb 14, 2008 CS 573: Network Protocols and Standards 27
Label distribution Label distribution can be ordered or unordered First we see an example of ordered label distribution
Ingress LSR
Egress LSR
Label
Feb 14, 2008 CS 573: Network Protocols and Standards 28
Label distribution Label distribution can be ordered or unordered Next we see an example of unordered label distribution
Ingress LSR
Egress LSR
Label
Label
Feb 14, 2008 CS 573: Network Protocols and Standards 29
Label retention modes Label retention can be conservative or liberal
LSR1
Destination
Label
Label
?
Feb 14, 2008 CS 573: Network Protocols and Standards 30
Label operations
Advertisement Downstream unsolicited Downstream on-demand
Distribution Ordered Unordered
Retention Liberal Conservative
Feb 14, 2008 CS 573: Network Protocols and Standards 31
Outline Traditional IP Routing
Forwarding and routing Problems with IP routing Motivations behind MPLS
MPLS Terminology and Operation MPLS Label, LSR and LSP, LFIB Vs FIB Transport of an IP packet over MPLS More MPLS terminology
Traffic Engineering [with MPLS] Nomenclature Requirements Examples
Traffic Engineering
Traffic Engineering with MPLS(Application of CSPF)
Feb 14, 2008 CS 573: Network Protocols and Standards 33
What is traffic engineering? Performance optimization of operational
networks optimizing resource utilization optimizing traffic performance reliable network operation
How is traffic engineered? measurement, modeling, characterization,
and control of Internet traffic Why?
high cost of network assets service differentiation
Feb 14, 2008 CS 573: Network Protocols and Standards 34
Traffic engineering Recall the IP hotspot problem
The ability to move traffic away from the shortest path calculated by the IGP (such as OSPF) to a less congested path
IP: changing a metric will cause ALL the traffic to divert to the less congested path
MPLS: allows explicit routing (using CSPF) and setup of such explicitly computed LSPs
Feb 14, 2008 CS 573: Network Protocols and Standards 35
MPLS-TE: How to do it?
LSPs are set up by LSRs based on information they learn from routing protocols (IGPs)
This defeats the purpose! If we were to use “shortest path”, IGP was okay
Feb 14, 2008 CS 573: Network Protocols and Standards 36
MPLS TE: How we actually do it?
MPLS TE Requires: Enhancements to routing protocols
OSPF-TE ISIS-TE
Enhancement to signaling protocols to allow explicit constraint based routing RSVP-TE and CR-LDP
Constraint based routing Explicit route selection Recovery mechanisms defined
Feb 14, 2008 CS 573: Network Protocols and Standards 37
Signaling mechanisms
RSVP-TE Extensions to RSVP for traffic engineering
BGP-4 Carrying label information in BGP-4
CR-LDP A label distribution protocol that distributes labels
determined based on constraint based routing
RSVP-TE and CR-LDP both do label distribution and path reservation – use any one of them!
Feb 14, 2008 CS 573: Network Protocols and Standards 38
RSVP-TE
Basic flow of LSP set-up using RSVP
Feb 14, 2008 CS 573: Network Protocols and Standards 39
RSVP-TE PATH Message
PATH message is used to establish state and request label assignment
R1 transmits a PATH message addressed to R9
Feb 14, 2008 CS 573: Network Protocols and Standards 40
RSVP-TE RESV Message
RESV is used to distribute labels after reserving resources R9 transmits a RESV message, with label=3, to R8 R8 and R4 store “outbound” label and allocate an
“inbound” label. They also transmits RESV with inbound label to upstream LSR
R1 binds label to forwarding equivalence class (FEC)
Feb 14, 2008 CS 573: Network Protocols and Standards 41
Rerouting LSP tunnels
When a more “optimal” route/path becomes available
When a failure of a resource occurs along a TE LSP
Make-before-break mechanism Adaptive, smooth rerouting and traffic
transfer before tearing down the old LSP Not disruptive to traffic
Feb 14, 2008 CS 573: Network Protocols and Standards 42
Recovering LSP tunnels
LSP Set-up
Feb 14, 2008 CS 573: Network Protocols and Standards 43
Protection LSP set up
Feb 14, 2008 CS 573: Network Protocols and Standards 44
Protection LSP
Feb 14, 2008 CS 573: Network Protocols and Standards 45
References
RFC 2702 “Requirements for Traffic Engineering Over MPLS”
RFC 3031 “Multiprotocol Label Switching Architecture”
RFC 3272 “Overview and Principles of Internet Traffic Engineering”
RFC 3346 “Applicability Statement for Traffic Engineering with MPLS”
MPLS Forum (http://www.mplsforum.org)
top related