Introduction To MPLS and Traffic Engineering

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 44

Introduction to MPLS

and Traffic Engineering


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

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

3
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

4
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)

5
How IP routing works

Searching
Longest
Prefix Match
in FIB (Too
Slow)
6
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

7
IP routing rigidity example
D
1 1
A
S A B
B
1 2
C

 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

8
IP routing rigidity example
D
1 4
A
S A B
B
1 2
C

 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

9
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)

10
IP routing versus MPLS routing
Traditional IP Label
Multiprotocol Routing
Switching (MPLS)
1 2

S D

3 4 5

MPLS allows overriding shortest paths!

11
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

12
MPLS label
 To avoid IP lookup MPLS packets carry
extra information called “Label”
 Packet forwarding decision is made using
label-based lookups
Label IP Datagram

 Labels have local significance only!


 How routing along explicit path works?

13
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)

14
Label, LSP and LSR
 Label 01234567890123456789012345678901
Label | Exp|S| TTL

Label = 20 bits
Exp = Experimental, 3 bits
S = Bottom of stack, 1bit
TTL = Time to live, 8 bits

 Router that supports MPLS is known as label


switching router (LSR)
 Path which is followed using labels is called LSP

15
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

16
MPLS Flow Progress

D
R1 LSR4 R2
LSR1
D

LSR6 destination

LSR3
LSR2 R1 and R2 are
regular routers
LSR5

1 - R1 receives a packet for destination D connected to R2

17
MPLS Flow Progress

D
R1 LSR4 R2
LSR1
D

LSR6 destination

LSR3
LSR2

LSR5

2 - R1 determines the next hop as LSR1 and forwards the packet


(Makes a routing as well as a forwarding decision)

18
MPLS Flow Progress

R1 LSR4 R2
LSR1
31 D
D

LSR6 destination

LSR3
LSR2

LSR5

3 – LSR1 establishes a path to LSR6 and “PUSHES/ATTACHES” a label


(Makes a routing as well as a forwarding decision)
19
MPLS Flow Progress

R1 LSR4 R2
LSR1
D

LSR6 destination

LSR3 17 D

LSR2

LSR5 Labels have local


signifacance!
4 – LSR3 just looks at the incoming label
LSR3 “SWAPS” with another label before forwarding

20
MPLS Flow Progress

R1 LSR4 R2
LSR1
D

LSR6 destination

LSR3 17 D

LSR2
Path within MPLS cloud
is pre-established:
LSR5
LSP (label-switched path)

5 – LSR6 looks at the incoming label


LSR6 “POPS/REMOVES” the label before forwarding to R2

21
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

22
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

23
More MPLS terminology

Upstream Downstream

172.68.10/24
LSR1 LSR2

Data

24
Label advertisement
 Always downstream to upstream label
advertisement and distribution

Upstream Downstream
Use label 5 for destination
171.68.32/24
171.68.32/24

MPLS Data Packet LSR2


LSR1 with label 5 travels

25
Label advertisement
 Label advertisement can be downstream
unsolicited or downstream on-demand
Upstream Sends label Downstream
Without any Request
171.68.32/24

LSR1 LSR2

Upstream Sends label ONLY after Downstream


receiving request
171.68.32/24

LSR1 LSR2
Request For label

26
Label distribution
 Label distribution can be ordered or unordered
 First we see an example of ordered label distribution

Label

Egress LSR
Ingress LSR

27
Label distribution
 Label distribution can be ordered or unordered
 Next we see an example of unordered label distribution

Label

Label

Egress LSR
Ingress LSR

28
Label operations
 Advertisement
 Downstream unsolicited
 Downstream on-demand
 Distribution
 Ordered
 Unordered

29
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

30
Traffic Engineering
Traffic Engineering with MPLS
(Application of CSPF)
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

32
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

33
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

34
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

35
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!

36
RSVP-TE

Basic flow of LSP set-up using RSVP

37
RSVP-TE PATH Message

 PATH message is used to establish state and


request label assignment
 R1 transmits a PATH message addressed to R9

38
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 transmit RESV with inbound label to upstream LSR
 R1 binds label to forwarding equivalence class (FEC)

39
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

40
Recovering LSP tunnels
LSP Set-up

41
Protection LSP set up

42
Protection LSP

43
References
 http://www.cisco.com/univercd/cc/td/doc/product/s
oftware/ios120/120newft/120limit/120s/120s5/mpls
_te.htm
 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)

44

You might also like