MPLS. MultiProtocol Label Switching. Purpose. Tarik Cicic University of Oslo December 2001

MPLS Tarik Cicic University of Oslo December 2001 MultiProtocol Label Switching • • • • • Purpose history technology overview traffic engineering ou...
35 downloads 0 Views 55KB Size
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