MPLS MultiProtocol Label Switching Purpose

advertisement
MPLS
Tarik Cicic
University of Oslo
December 2001
MultiProtocol Label Switching
•
•
•
•
•
Purpose
history
technology overview
traffic engineering
outlooks
2
Purpose
• Improving the L3 (IP) services by effective
utilization of switching
• “MultiProtocol”: applicable to different
protocols, not only IP
• “Label Switching”: packet forwarding by
label lookup (instead of routing table)
3
1
Label Switching
IP packet
Payload
Header
Label
The label-extended packets are forwarded by
Label-Switching Routers
4
Traditional routers
Dest
192.34.x.x
192.x.x.x
default
Int.
1
2
1
IP
ATM
PHY
5
Label-Switching Routers
VPI/VCI
131/17
12/44
42/77
IP
Port
1/12/15
2/32/9
1/12/99
ATM
PHY
6
2
History
• Ca. 1997, Ipsilon Networks
• problem: slow IP routing table lookup
• dynamic label associations to “eligible”
flows (“Data Trigger”)
• later: labels assigned according to the
routing information (before the flow starts)
• now: traffic engineering in focus
7
Flow
• Contiguous sequence of packets following
the same network path from the source to
the receiver
• a flow can be distinguished using
– source and destination address and port
– flow ID in the header
– any other combination of header fields
8
Flows and labels
• Each flow has a unique label
• labels can be stacked, providing an n-level
hierarchy, allowing flow aggregation
• example:
– no label in non-MPLS network
– one label in flat networks
– two labels for inter/intra-domain routing
• Label ”push” and ”pop”, together with ”swap”
9
3
Data trigger
• Routers keep “flow statistic”
• if a flow has more than x packets in y
seconds
– assign a label
– inform the neighbor
– append the label to all coming packets
• else
– keep routing this flow at Layer 3
10
MPLS effect on delay
Routing Kernel and Switch Controller
Delay = 2* Switch
time + processing
time
ATM switch
11
Data Trigger in action
L3
L2
L3
L2
L3
L2
Send
Rec
REDIRECT
• When router R3 accepts more than x
packets belonging to flow f in y seconds, it
sends a “redirect” message to the upstream
router R2
12
4
Data Trigger in action
L3
L2
L3
L2
L3
L2
Send
Rec
ACK
• R2 appends a label to all future packets of f.
The same action is repeated between all
routers
13
Data Trigger in action
L3
L2
L3
L2
L3
L2
Send
Rec
• Routers remove the labels from the
switching tables after a period of inactivity.
14
Data Trigger analyze
• Simulations and analysis of traces from
real-life showed that size order 80% flows
would justify switching
• short or bursty flows are problematic
• packet counting is resource consuming
• flow aggregation needs additional
knowledge
15
5
Control Trigger
• Labels are assigned to flows already when
the appropriate routing info is available
• extended routing opens for traffic
engineering (network path manipulation)
• a separate Label Distribution Protocol
maintains the label consistency throughout
the network
16
Traffic engineering
• A data flow is leaded through the network using
another path than the L3 routing would choose
3
5
3
4
1
5
2
3
5
2
• a 3Mb/s flow can be identified and given a label to
be switched 1-3-4-5 (Label Switched Path)
17
LSP setup
• Manual
• together with other mechanisms:
– RSVP (resource information for path
computation)
– DiffServ (trunks can have priorities)
– recovery (protection)
• two levels of routing (IP + LSP)
18
6
Traffic engineering
• Solves long lasting traffic jams
• routing based on traffic and resource
information (in addition to topology)
• periodic and triggered
updates (when thresholds
Tr2
Tr1
passed)
92%
90%
85%
75%
50%
19
Traffic Engineering – Policing
• The flow ID can be used to support perflow routing policies
• 32-bit “resource-class affinity string” + 32bit mask (CISCO)
• assigns tunnels over the links
20
4-bit tunnel setup example
4
0000
1
0000
2
0000
0000
0000
5
3
• Trunk A to B = 0000, t-mask = 0011
• 1-2-3-5 and 1-2-4-3-5 are possible
21
7
4-bit tunnel setup example (2)
4
0000
1
0000
2
0000
0010
0000
5
3
• Trunk A to B = 0000, t-mask = 0011
• only 1-2-4-3-5 is possible
22
Protection
• “Protection” is another name for data path
recovery
• idea:
– create an alternative path for a flow
– do not use it until the primary path fails
– then quickly mark the alternative path active
• research area today
23
MPLS summary
• First:
– designed as a performance improvement for IP
networks
– simple and efficient
• now:
– traffic engineering support
– complex, becoming heavy-weight
24
8
MPLS Summary (2)
• There is no a single network function which
cannot be performed without MPLS
• it is highly discussable if MPLS provides
any performance improvement
• CISCO’s “favorite” technology
25
9
Download