Sie sind auf Seite 1von 61

Multi-Protocol Label Switching -MPLS-

S.N.Mishra

TE-Mid 1990s
R1 1 1 R2 1 R3 R4 1 2 R5 1 R6

Numbers are metrics

 IGP route calculation is topology based  Some links become congested while other remained under utilised
RTTC/Bhubaneswar 2

TE-Mid to Late 1990s


Physical Topology

Routed PVC

 Routed edge/ATM core


 L3 decision at edge router  L2 decision at each core switch

 PVCs are mapped edge to edge to evenly distribute traffic across all the links
RTTC/Bhubaneswar 3

Routing
 Internet delivers the data packets on a Best Effort basis using the TCP/IP protocol suite  The routing job is accomplished by a device called Router  The router sends the packets from one network to another by processing layer-3 network header  Different routing protocols discover the routes at layer-3 to create Routing Information Base-RIB or Routing Table

RTTC/Bhubaneswar

Routing-Data Traffic
3 H3 H4 D 2
Forwarding Information Base Routing Information Base

N H3 H4 D H3 H4 H2 H3 H4 P D D T2 D ICI

H2 H3 H4

T2 1

Receive Logic

Transmit Logic

01 10 00 101 11

Input port

Output port

01 10 00 101 11

S0

S1
RTTC/Bhubaneswar 5

Routing-Control Traffic
3 O H3 O C C 2
Forwarding Information Base OSPF Routing Information Base

N O H3 O D C C

H2 H3 O

T2 1

Receive Logic

Receive Logic

H2 H3 O P

T2

01 10 00 101 11

Input port

Output port

01 10 00 101 11

S0

S1
RTTC/Bhubaneswar 6

Fast Path vs Slow Path


 Control Traffic
 Control traffic is the protocols traffic at layer-3  Control packets are processed slowly because they need to be examined by the software

 Data Traffic
 Follows the fast path and is processed by the network devices in an efficient and timely manner  Generally realised in hardware

RTTC/Bhubaneswar

Fast Path vs Slow Path


Router-A Software
Control

Router-B Software Control Path


Slow Path

Control Path

Data

Forwarding Path
Fast Path

Forwarding Path Hardware

Hardware

RTTC/Bhubaneswar

Router Planes
3 Routing 2 Switching
Forwarding Information Base Receive Logic Transmit Logic Routing Information Base

N Control Plane D

1 Forwarding
Input port Output port

Forwarding Plane

S0

S1
RTTC/Bhubaneswar 9

Routing-Switching-Forwarding
 Routing
 Process of setting up routes to understand the next hop a packet should take towards its destination

 Switching
 The knowledge of directing the forwarding process to choose the correct output port

 Forwarding
 The process of receiving a packet on an input port and sending it out an output port
RTTC/Bhubaneswar 10

Evolution of MPLS
 IETF in the year 1997 met to achieve the following objectives
 Enhance the performance and scalability of IP routing  Facilitate explicit routing and traffic engineering  Separate control from forwarding mechanism  Develop a single forwarding algorithm to support wide range of routing and switching functionality

RTTC/Bhubaneswar

11

Evolution of MPLS
 Solution to support multi-layer switching:
 IP Switching (Ipsilon/Nokia)  Tag Switching (Cisco)  IP Navigator (Cascade/Ascend/Lucent)  ARIS (IBM)

RTTC/Bhubaneswar

12

MPLS
3
Routing Information Base

MPLS

Layer 2.5

Forwarding Information Base Receive Logic Transmit Logic

Input port

Output port

S0

S1
RTTC/Bhubaneswar 13

MPLS
 MPLS is a binding of the control plane at the bottom of the network layer with the data forwarding plane at the top of data link layer  MPLS is a hybrid of a traditional networks layer-3 routing protocols and layer-2 switching technologies  MPLS is not a new network layer protocol because it does not have its own routing capabilities and addressing schemes

RTTC/Bhubaneswar

14

MPLS
 MPLS is not a new data link layer protocol because it is designed to work over many of the data link technologies that provides requisite layer2 addressing and functionality  MPLS is also known by the name of Layer 2.5 Technology  MPLS allows current layer-2 transport technologies like ATM, FR and Ethernet to seamlessly interoperate and co-exits with layer-3 protocols
RTTC/Bhubaneswar 15

MPLS Model
Upper Layers

4-7

IPv4

IPv6

IPX

Apple Talk

DCEnet

CLNP

Others

MPLS 2
PPP ATM FR Ethernet FDDI Others

Physical Layer

1
16

RTTC/Bhubaneswar

MPLS Data Encapsulation


Application Data

TPT Layer

H4

Data

NW Layer

H3

H4

Data

MPLS

LVL

H3

H4

Data

Data Link

H2

LVL

H3

H4

Data

T2

RTTC/Bhubaneswar

17

Traditional System of Mail Sorting

Mr.XYZ Qr.No-1,RTTC , Bhubaneswar-751007

1. All the sorting stations should have list of all the cities, towns and villages 2. Searching for destination from huge list of cities, towns and villages was a time consuming job 3. Language problem also poses a problem and tends to delay the mail sorting
RTTC/Bhubaneswar 18

Postal Index Number System of Mail Sorting

Mr.XYZ Qr.No-1,RTTC , Bhubaneswar751007

2. At main cities Letters are sorted & forwarded quickly based on the PIN Code 4. Language also does not pose any problem in writing the address 3. Beyond main cities letters are sorted & forwarded based on the actual village or town address
RTTC/Bhubaneswar 19

Normal IP Routing

IP Header is Carrying the Routing Information Source IP Address and Destination IP Address

1. Routers maintain Routing Tables

2. Packets are routed on the basis of Destination IP Address and Big Routing Tables

RTTC/Bhubaneswar

20

MPLS Based Routing


MPLS Router MPLS Domain MPLS Router MPLS Router

1. In MPLS Domain packets are switched on the basis of label information in the MPLS Header

Normal Router 2. Outside MPLS Domain packets are routed on the basis of information in the IP Header

RTTC/Bhubaneswar

21

MPLS Labels
 MPLS uses Label Switched Path (LSP) for layer-2 switching that have been set up with layer-3 routing and signaling protocols  MPLS signaling and label distributing protocol will distribute the proper labels within the MPLS domain to create LSP  LSPs are roughly equivalent to virtual circuit  Label Switched Path is unidirectional
 If the traffic flow on the same route in opposite direction is required, two label paths are to be set up
RTTC/Bhubaneswar 22

LSP
Mumbai New Delhi

LSP

 Label-Switched Path
 Simplex L2 tunnel across a network  Concatenation of one or more label switched hops  Analogous to an ATM or Frame Relay PVC
RTTC/Bhubaneswar 23

LSR
LSR LSR New Delhi LSR LSR LSP Mumbai

 MPLS enabled router is called label Switching Router


    Forwards MPLS packets using label-switching Capable of forwarding native IP packets Executes one or more IP routing protocols Participates in MPLS control protocols
RTTC/Bhubaneswar 24

MPLS Terminology
Egress LSR Ingress LSR San Francisco Transit LSR New York Transit LSR LSP

 Ingress LSR (head-end LSR)


 Examines inbound IP packets and assigns them to an FEC  Generates MPLS header and assigns initial label

 Transit LSR
 Forwards MPLS packets using label swapping

 Egress LSR (tail-end LSR)


 Removes the MPLS header
RTTC/Bhubaneswar 25

FEC
 A forwarding equivalence class (FEC) is a stream of IP packets that are forwarded over the same path, treated in the same manner and mapped to the same label  LDP associates a set of destinations with each data link LSP  This set of destinations is called the FEC  These destinations all share a common data LSP path egress and a common unicast routing path

RTTC/Bhubaneswar

26

FEC
 Packets could be assigned to a LSP based on
 A combination of destination address and application type  A combination of destination address and source address  A specific quality of service requirement  A VPN identifier

RTTC/Bhubaneswar

27

MPLS Label Assignment/Binding


 Label values and FEC-bindings are negotiated before any MPLS traffic ever flows on data path for a particular label  Labels are downstream-assigned  FEC-Label bindings are distributed downstream-to- upstream direction

RTTC/Bhubaneswar

28

MPLS Label Assignment/Binding

Control LSR-A

Assign label Label assigned Data LSR-B

Control

Data

Data

Upstream Node

Downstream Node

RTTC/Bhubaneswar

29

MPLS Label Assignment/Binding


Label Request for FEC 10.0.0.0

Upstream LDP peer

Net: 10.0.0.0 Label: 17

LSR 4 5

Net: 10.0.0.0 Label: 52

Downstream Net: 10.0.0.0 LDP peer Label: 29

MPLS Table
In (3, 35) Out (1, 17)

MPLS Table Advertise incoming label


In (4, 17) Out (5, 52)

MPLS Table Receive outgoing label


In (2, 52) Out (3, 29)

RTTC/Bhubaneswar

30

MPLS Labels
 MPLS label assignment can be done in two ways
 Control Driven
 Labels are assigned and distributed before any label swapping of data occurs  Mostly used

 Traffic Driven
 Labels are assigned and distributed as packets belonging to a specified flow or class enter the network  Rarely used
RTTC/Bhubaneswar 31

Label Distribution
 MPLS architecture does not mandate a single method of signalling for label distribution. Various schemes for label exchange is as follows :
 LDP- maps unicast destinations into labels  RSVP,CR-LDP-used for traffic engineering and resource reservation  Protocol-independent multicast(PIM)-used for multicast states label mapping  BGP-external labels(VPN)
RTTC/Bhubaneswar 32

Label Processing
 Push
 Add a new label to the top of the packet  The TTL, stack and CoS fields are derived from the IP packet header  Can be performed on an existing MPLS packet-Label Stacking

 Pop
 Remove the label  TTL is copied from the label to the IP header  IP packet is forwarded as a native IP packet

RTTC/Bhubaneswar

33

Label Processing
 Swap
 Replace the label at the top of the label stack with a new label  The TTL, stack and CoS fields are copied from the previous label

 Multiple Push
 Adding multiple labels (up to 3)

 Swap and Push


 Replace the existing top of the label stack with a new label followed by pushing another new label on top  Used when a LDP signaled LSP transits an RSVP-TS signaled core
RTTC/Bhubaneswar 34

Label Pushing
3 H3 H4 D
Routing Information Base

N H3 H4 S H3 H4 D D

MPLS
Forwarding Information Base

H2 H3 H4

T2 1

Receive Logic

Transmit Logic

H2 S H3 H4 P

T2

Ingress Node 01 10 00 101 11


Input port Output port

01 S 10 00 101 11

S0

S1
RTTC/Bhubaneswar 35

Label Swapping
3
Routing Information Base

S H3 H4

MPLS
Forwarding Information Base

S H3 H4

H2 S H3 H4

T2 1

Receive Logic

Transmit Logic

H2 S H3 H4 P

T2

Transit Node 01 S 10 00 101 11


Input port Output port

01 S 10 00 101 11

S0

S1
RTTC/Bhubaneswar 36

Label Popping
3 H3 H4 S H3 H4 D D
Routing Information Base

N H3 H4 D

MPLS
Forwarding Information Base

H2 S H3 H4

T2 1

Receive Logic

Transmit Logic

H2 H3 H4 P

T2

Egress Node 01 S 10 00 101 11


Input port Output port

01 10 00 101 11

S0
RTTC/Bhubaneswar

S1
37

MPLS Forwarding Model


Source Ingress LSR Egress LSR

Mumbai

Chennai

 Ingress LSR determines FEC and assigns a label


 Forwards Mumbai traffic on the Green LSP  Forwards Chennai traffic on the Blue LSP

 Traffic is label swapped at each transit LSR  Egress LSR


 Removes MPLS header  Forwards packet based on destination address
RTTC/Bhubaneswar 38

LSR Operation
 Each LSR maintains a connection table
Connection Table IP 25
Port 1 Port 2
In Out Label (port, label) (port, label) Operation

(1, 22) (1, 24) IP 19


Port 3 Port 4

(2, 17) (3, 17) (4, 19) (3, 12)

Swap Swap Swap Swap

(1, 25) (2, 23)

RTTC/Bhubaneswar

39

MPLS Forwarding Example


MPLS Table
In (2, 84) Out (6, 0)

134.5.6.1

134.5.1.5

2
200.3.2.7

6
Egress Routing Table
Destination 134.5/16 200.3.2/24 Next Hop 134.5.6.1 200.3.2.1

2 3

Ingress Routing Table


Destination 134.5/16 200.3.2/24 Next Hop (2, 84) (3, 99)

5
200.3.2.7

MPLS Table
In (1, 99) Out (2, 56)

MPLS Table
In (3, 56) Out (5, 0)

200.3.2.1 200.3.2.7

RTTC/Bhubaneswar

40

MPLS v IP Routing
Source

IP Routing Domain

Destination

Examine IP header Assign to FEC Forward

Examine IP header Assign to FEC Forward

Examine IP header Assign to FEC Forward

Examine IP header Assign to FEC Forward

Source

Ingress LSR

MPLS Domain

Egress LSR

Destination

Examine IP header Assign to FEC Forward

Label swap Forward

Label swap Forward

Examine IP header Assign to FEC Forward


41

RTTC/Bhubaneswar

MPLS Header
LABEL EXP S TTL

 Label-(20 Bits)
 Used for all of the subsequent label operations
     Push Pop Swap Multiple Push Swap and Push

 A label only has a local significance between two communicating LSRs


RTTC/Bhubaneswar 42

MPLS Header
 0-IPv4 Explicit NULL Label
 Label stack must be popped  Subsequent forwarding of the packet will be based on the IPv4 network header  Used only as the bottom most label

 1-Router Alert Label


 Can be used anywhere in the stack except at the bottom  LSR receiving this label will send packet to the local software to process the information  The next innermost label determines the subsequent forwarding of the MPLS packet  If the packet is forwarded further, this label must be pushed back on to the stack before forwarding
RTTC/Bhubaneswar 43

MPLS Header
 2-IPv6 Explicit NULL Label
 Label stack must be popped  Subsequent forwarding of the packet will be based on the IPv6network header  Used only as the bottom most label

 3-Implicit NULL Label


 Label is virtual in the sense that this value can be distributed but never appears in the MPLS header encapsulation  Causes the LSR to pop the stack instead of normal swap operation, where a new label value will be introduced

 4:15-Reserved

RTTC/Bhubaneswar

44

Label Spaces
 Each label space consists of the assignable labels from 0-1048574 (0-15 Reserved)  Two basic notions of label spaces
 Per-Platform Label Space
 There is one set of labels for the entire LSR  All interfaces share this common label pool

 Per-Interface Label Space


 Each interface has its own label pool  Used particularly with ATM-LSRs

 Decision to choose the label platform to be implemented on a particular LSR is a function of how the interfaces are used
RTTC/Bhubaneswar 45

Label Spaces
Per-Platform Label Space Per-Interface Label Space

Platform Labels (0-1048574)

Int-1 Labels (0-1048574)

Int-n Labels (0-1048574)

Label Manager Process

Label Manager Process

Int-1 LSR

Int-n

Int-1 LSR

Int-n

RTTC/Bhubaneswar

46

MPLS Header
 EXP-(3 Bits)-Experimental Bits
 Reserved for experimentation  Will be used for differentiated services (Diff-serv) and providing class of service

 S Bit-Stack Bit
    Used to support hierarchical MPLS label stacking Set to indicate the last header in the stack Set to 0 for all other MPLS headers MPLS stack follows LIFO arrangement
L2 HDR MPLS HDR#3 (S=0) MPLS HDR#2 (S=0) MPLS HDR#1 (S=1) L3 HDR Data
47

RTTC/Bhubaneswar

MPLS Header
 TTL-(8 Bits)-Time To Live
 Works in a similar fashion to the TTL field in an IP header  The valid range is 0-255

RTTC/Bhubaneswar

48

MPLS Applications
 There are 3 major MPLS applications currently being implemented
 Traffic Engineering  Virtual Private Network  Internet QoS

RTTC/Bhubaneswar

49

MPLS-Traffic Engineering

R1 1

R2

1 R3 1 R4

R5 1

R6

Numbers are metrics

MPLS Path

IGP Path

RTTC/Bhubaneswar

50

MPLS-QoS
 Different types of service quality can be provided for different types of traffic  QoS is the guarantee of providing a requested level of service
 QoS requires every element from the start of an application flow till its completion to be aware and respond to QoS requirements

 CoS is the category of service requested by each packet that is part of a particular application flow

RTTC/Bhubaneswar

51

MPLS-QoS
 IETF has created two efforts to directly relate QoS ans CoS
 IntServ  Diff-Serv

 IntServ and Diff-Serv can be used together with MPLS to realise an MPLS QoS application  IntServ deals with resource reservations
 Network resources are apportioned to the needs of the application flows  RSVP is the only currently implemented signaling protocol used for IntServ

RTTC/Bhubaneswar

52

MPLS-QoS
 Diff-Serv is often compared to a set of building blocks that can be used to prioritise packets in the QoS flow  Packets can be classified by designated fields in the header and are examined at each node for the predefined treatment
 TOS field in IP Header  Diff-Serv redefines the TOS byte syntax as well as its semantics

RTTC/Bhubaneswar

53

TOS Byte-IP Header


0 1 2 3 4 5 6 7
Reserved: Always set to 0

Precedence 000-Routine 001-Priority 010-Immediate 011-Flash 100-Flash Override 101-CRITIC/ECP 110-Internetwork Control 111-Network Control

Delay 0-Normal 1-Minimise

Reliability 0-Normal 1-Maximise

Throughput 0-Normal 1-Maximise

Cost 0-Normal 1-Minimise

RTTC/Bhubaneswar

54

DS Byte-IP Header
 DS byte field uses the former TOS field location in the IP header  Bits (0-5) are used as an index value called DSCP(Diff-Serv Code Point) field  6 bits can give 26=64 independent values called Code Points  Bits 6 & 7 are unused
0 1 2 3 4 5 6 7

DSCP-Diff-Serve Code Point

Reserved

RTTC/Bhubaneswar

55

Per Hop Behaviors (PHB)


 The DSCP index maps to various data treatments that handle CoS  These data treatments are called Per Hop Behaviors (PHB)  A Per Hop Behavior PHB includes CoS handling mechanism such as queue selection, scheduling and congestion control.  The currently defined PHBs include
 Expedited Forwarding (EF) Gold  Assured Forwarding (AF) Silver  Default Behavior (DE) - Bronze
RTTC/Bhubaneswar 56

Per Hop Behaviors (PHB)


 An EF PHB is required when loss,jitter, and delay must be low. This PHB generally prevents any queues in the node from increasing in size  An AF PHB assures the delivery but does not guarantees the delay, jitter and other QoS parameters  A DE PHB is the default best effort behavior
RTTC/Bhubaneswar 57

EXP(CoS) Bits-MPLS Header


Packet Loss Priority (PLP) Bit

Queue No 4

00 0 00 1 01 0 01 1 10 0 10 1 11 0 11 1

Bronze Traffic (Best Effort)

Queue No 3

Silver Traffic (Assured Forwarding, Guaranteed delivery)

Queue No 2

Gold Traffic (Expedited Forwarding, Guaranteed Latency And Delivery

Queue No 1

Premium Traffic (Guaranteed Bandwidth, Latency and Delivery)

If PLP bit is set to 1 packet discard probability is high in case of Network congestion.
RTTC/Bhubaneswar 58

Implementing Network Policy


Video Conferencing Application-level QoS and bandwidth management IP Network VPN Business Applications Traffic Classification Gold Silver Bronze

Email, Web browsing, Pointcast

Multiple Service Classes (can be customized per customer)


RTTC/Bhubaneswar 59

Traffic Differentiation
Classifier sets MPLS EXP bits
C C

Gold CE VPN Customer Silver CE VPN Customer

VRF
C

Schedule r

Separate queues for different VPNs Gold VPNs preferred over Silver VPNs.

VRF

Bronze CE VPN Customer

C
Could have different traffic-engineered base tunnels for Gold and Silver VPNs.
60

VRF

Stacked Tunnel RTTC/Bhubaneswar

Base Tunnel

L2 Interface

RTTC/Bhubaneswar

61

Das könnte Ihnen auch gefallen