33
Multi-Protocol Label Switch (MPLS) Overview and short tutorial Credits: Part of this presentation is based on James Yu lecture (Many thanks!) and from MPLS council web site

Multi-Protocol Label Switch (MPLS)

  • Upload
    nicola

  • View
    54

  • Download
    0

Embed Size (px)

DESCRIPTION

Multi-Protocol Label Switch (MPLS). Overview and short tutorial. Credits: Part of this presentation is based on James Yu lecture (Many thanks!) and from MPLS council web site. What is MPLS?. From MPLS Resource center: - PowerPoint PPT Presentation

Citation preview

Page 1: Multi-Protocol Label Switch (MPLS)

Multi-Protocol Label Switch (MPLS)

Overview and short tutorial

Credits: Part of this presentation is based on James Yu lecture (Many thanks!) and from MPLS council web site

Page 2: Multi-Protocol Label Switch (MPLS)

What is MPLS? From MPLS Resource center:

“MPLS stands for "Multiprotocol Label Switching".   In an MPLS network, incoming packets are assigned a "label" by a "label edge router (LER)".  Packets are forwarded along a "label switch path (LSP)" where each "label switch router (LSR)" makes forwarding decisions based solely on the contents of the label.  At each hop, the LSR strips off the existing label and applies a new label which tells the next hop how to forward the packet.

Label Switch Paths (LSPs) are established by network operators for a variety of purposes, such as to guarantee a certain level of performance, to route around network congestion, or to create IP tunnels for network-based virtual private networks.  In many ways, LSPs are no different than circuit-switched paths in ATM or Frame Relay networks, except that they are not dependent on a particular Layer 2 technology.  

An LSP can be established that crosses multiple Layer 2 transports such as ATM, Frame Relay or Ethernet.  Thus, one of the true promises of MPLS is the ability to create end-to-end circuits, with specific performance characteristics, across any type of transport medium, eliminating the need for overlay networks or Layer 2 only control mechanisms.”

Page 3: Multi-Protocol Label Switch (MPLS)

What is MPLS? OK now in plain English now please?

Packets enter MPLS Network at a “Label Edge Router” (LER)

LER Affix a label to packet and forwards it to the MPLS network

Label switches in the network at each hop makes forwarding decision solely based on label. That decision is made based on a pre-established “Label Switch Path” (LSP).

Labels can be integrated with existing L2 info such as DLCI or ATM VCs.

Diagram in class.

Page 4: Multi-Protocol Label Switch (MPLS)

MPLS Motivation Original drivers towards label

switching: Designed to make routers faster

ATM switches were faster than routers Fixed length label lookup faster than longest

match used by IP routing Allow a device to do the same job as a router with

performance of ATM switch Enabled IP + ATM integration

Mapping of IP to ATM had become very complex, hence simplify by replacing ATM signalling protocols with IP control protocols

Page 5: Multi-Protocol Label Switch (MPLS)

MPLS Motivation Growth and evolution of the Internet

The need to evolve routing algorithm The need for advanced forwarding algorithm routing vs. forwarding (switching)

routing: flexibility forwarding: price/performance Can we forward/switch IP packets?

Allow speed of L2 switching at L3 Router makes L3 forwarding decision based on a single

field: similar to L2 forwarding Sppppppeeeeed

Page 6: Multi-Protocol Label Switch (MPLS)

Some MPLS Benefits Traffic Engineering - the ability to set the path traffic will take through

the network, and the ability to set performance characteristics for a class of traffic

VPNs - using MPLS, service providers can create IP tunnels throughout their network, without the need for encryption or end-user applications

Layer 2 Transport - New standards being defined by the IETF's PWE3 and PPVPN working groups allow service providers to carry Layer 2 services including Ethernet, Frame Relay and ATM over an IP/MPLS core

Elimination of Multiple Layers - Typically most carrier networks employ an overlay model where SONET/SDH is deployed at Layer 1, ATM is used at Layer 2 and IP is used at Layer 3.  Using MPLS, carriers can migrate many of the functions of the SONET/SDH and ATM control plane to Layer 3, thereby simplifying network management and network complexity.  Eventually, carrier networks may be able to migrate away from SONET/SDH and ATM all-together, which means elimination of ATM's inherent "cell-tax" in carrying IP traffic.

Page 7: Multi-Protocol Label Switch (MPLS)

MPLS History IP over ATM IP Switching by Ipsilon Cell Switching Router (CSR) by Toshiba Tag switching by Cisco Aggregate Route-based IP Switching (IBM) IETF – MPLS

http://www.ietf.org/html.charters/mpls-charter.html RFC3031 – MPLS Architecture RFC2702 – Requirements for TE over MPLS RFC3036 – LDP Specification

Page 8: Multi-Protocol Label Switch (MPLS)

MPLS and ISO model(MPLS is a layer 2.5 protocol)

Physical

IP

Applications

TCP UDP

PPP FR ATM

MPLS

When a layer is added, no modification is needed on the existing layers.

Ethernet MPSDWDM

Page 9: Multi-Protocol Label Switch (MPLS)

Label Switching

What is it? Goal: sending a packet from A to B

We can do it in a broadcast way. We can use source routing where the

source determines the path. How do we do it on the Internet today?

Hop-by-hop routing: continue asking who is closer to B at every stop (hop).

Page 10: Multi-Protocol Label Switch (MPLS)

Using Label on the network(This is not new!)

ATM: VPI/VCI Frame Relay: DLCI X.25: LCI (logical Channel Identifier) TDM: the time slot (Circuit

Identification Code) Ethernet switching: ???

Q: do you see any commonality of these labels?

Page 11: Multi-Protocol Label Switch (MPLS)

Label Substitution (swapping)

Label-A1 Label-B1

Label-A2

Label-A3

Label-A4

Label-B2

Label-B3

Label-B4

Page 12: Multi-Protocol Label Switch (MPLS)

MPLS A protocol to establish an end-to-end path

from source to the destination A hop-by-hop forwarding mechanism Use labels to set up the path

Require a protocol to set up the labels along the path

It builds a connection-oriented service on the IP network

Page 13: Multi-Protocol Label Switch (MPLS)

Terminology LSR - Routers that support MPLS are called Label Switch

Router LER - LSR at the edge of the network is called Label Edge

Router (a.k.a Edge LSR) Ingress LER is responsible for adding labels to unlabeled IP

packets. Egress LER is responsible for removing the labels.

Label Switch Path (LSP) – the path defined by the labels through LSRs between two LERs.

Label Forwarding Information Base (LFIB) – a forwarding table (mapping) between labels to outgoing interfaces.

Forward Equivalent Class (FEC) – All IP packets follow the same path on the MPLS network and receive the same treatment at each node.

Page 14: Multi-Protocol Label Switch (MPLS)

How does it work?

IP IP #L1 IP #L2 IP #L3 IP

LSR LSRLER LER

IPRouting IP

RoutingLabel

SwitchingLabel

Switching

Add label at the ingress LER

remove label at the egress LER

Page 15: Multi-Protocol Label Switch (MPLS)

MPLS Operation

Label Path: R1 => R2 => R3 => R4

Page 16: Multi-Protocol Label Switch (MPLS)

Label Forwarding Information Base (LFIB)Router Incomin

g LabelIncoming Interface

Destination Network

(FEC)

Outgoing

Interface

Outgoing Label

R1 --- E0 172.16.1.0 S1 6R2 6 S0 172.16.1.0 S2 11R3 11 S0 172.16.1.0 S3 7R4 7 S1 172.26.1.0 E0 --

Q: create LFIB for R4 => R3 => R2 => R1

Page 17: Multi-Protocol Label Switch (MPLS)

Label removal

ClassificationLabel assignment

Routing Protocol

Label Switch Path

LFIB

IngressNode

CoreNode

EgressNode

Layer 2

Layer 1

Layer 2

Layer 1

Layer 2

Layer 1

LFIB

Layer 2

Layer 1

Layer 2

Layer 1

FEC FEC FEC

MPLS process

LFIB

Label Swapping

Page 18: Multi-Protocol Label Switch (MPLS)

Label Encapsulation

Label information can be carried in a packet in a variety of ways:

A small, shim label header inserted between the Layer 2 and network layer headers.

As part of the Layer 2 header, if the Layer 2 header provides adequate semantics (such as ATM).

As part of the network layer header (future, such as IPv6).

In general, MPLS can be implemented over any media type, including point-to-point, Ethernet, Frame Relay, and ATM links. The label-forwarding component is independent of the network layer protocol.

Page 19: Multi-Protocol Label Switch (MPLS)

Label EncapsulationATM FR Ethernet PPP

MPLS Encapsulation is specified over various media types. Labels may use existing format (e.g., VPI/VCI) or use a new shim label format.

VPI/VCI DLCI Shim Label

L2

Label

DatagramIP Header

LabelL2Header

Page 20: Multi-Protocol Label Switch (MPLS)

Shim Header The Label (Shim Header) is represented as a

sequence of Label Stack Entry Each Label Stack Entry is 4 bytes (32 bits) 20 Bits is reserved for the Label Identifier (also

named Label)Label

(20 bits)Exp

(3 bits)S

(1 bit)TTL

(8bits)

Label : Label value (0 to 15 are reserved for special use)Exp : Experimental UseS : Bottom of Stack (set to 1 for the last entry in the label)TTL : Time To Live

Page 21: Multi-Protocol Label Switch (MPLS)

Ingress Label FEC Egress Label6 138.120.6.0/24 9

A packet can be mapped to a particular FEC based on the following criteria:

•destination IP address,•source IP address,•TCP/UDP port,•class of service (CoS) or type of service (ToS), •application used,•…•any combination of the previous criteria.

Forward Equivalent Class (FEC) Classification

Page 22: Multi-Protocol Label Switch (MPLS)

Forwarding Equivalence Classes (FEC)

• FEC = A group of packets that are treated the same way by a router.• The concept of FECs provides for flexibility, scalability, and traffic engineering.• In legacy routing, the ToS field is used to determine FEC at each hop. In MPLS it is only done once at the network ingress.

IP1

IP2

IP1

IP2

LSRLSRLER LER

IP1 #L1

IP2 #L1

IP1 #L2

IP2 #L2

IP1 #L3

IP2 #L3

IP3

IP4

IP3

IP4

IP3 #L4

IP4 #L4

IP3 #L5

IP4 #L5

IP3 #L6

IP4 #L6

Page 23: Multi-Protocol Label Switch (MPLS)

MPLS Applications

Traffic Engineering Virtual Private Network Quality of Service (QoS)

Page 24: Multi-Protocol Label Switch (MPLS)

Traffic Engineering Traffic engineering allows a network administrator to make the

path deterministic and bypass the normal routed hop-by-hop paths. An administrator may elect to explicitly define the path between stations to ensure QoS or have the traffic follow a specified path to reduce traffic loading across certain hops.

The network administrator can reduce congestion by forcing the frame to travel around the overloaded segments. Traffic engineering, then, enables an administrator to define a policy for forwarding frames rather than depending upon dynamic routing protocols.

Traffic engineering is similar to source-routing in that an explicit path is defined for the frame to travel. However, unlike source-routing, the hop-by-hop definition is not carried with every frame. Rather, the hops are configured in the LSRs ahead of time along with the appropriate label values.

Page 25: Multi-Protocol Label Switch (MPLS)

MPLS – Traffic Engineering

End-to-End forwarding decision determined by ingress node.

Enables Traffic Engineering

LER 1

LSR 2 LSR 3

LER 4

LIP

Forward toLSR 2LSR 3LSR 4LSR X

Overload !!

Overload !!IPIP

LIP

LIP

Page 26: Multi-Protocol Label Switch (MPLS)

MPLS-based VPN

One of most popular MPLS applications is the implementation of VPN.

The basic concept is the same as ATM transparent LAN.

Using label (instead of IP address) to interconnect multiple sites over a carrier’s network. Each site has its own private IP address space.

Different VPNs may use the same IP address space. Same as Frame Relay separation of different user

traffic… but more” fashionable” to use word “VPN” today.

Page 27: Multi-Protocol Label Switch (MPLS)

MPLS VPN Connection Model

VPN_A

VPN_A

VPN_B10.3.0.0

10.1.0.0

11.5.0.0

VPN_A

VPN_B

VPN_B

10.1.0.0

10.2.0.0

11.6.0.0

VPN_A

10.2.0.0MPLS Core

VPN_A: 10.2.0.0/24, 11.6.0.0/24, 11.5.0.0/24VPN_B: 10.2.0.0/24, 10.1.0.0/24, 10.3.0.0/24

MPLSEdge

MPLSEdge

Page 28: Multi-Protocol Label Switch (MPLS)

MPLS VPN - Example192.168.1.0 192.168.2.0

192.168.3.0 192.168.4.0-- E1 10 E3-- E2 20 E3

10 E1 30 E220 E1 40 E2

30 E3 -- E140 E3 -- E2

E1

E2

E1

E2

-- E1 50 E3-- E2 60 E3

50 E2 70 E160 E2 80 E1

70 E3 -- E180 E3 -- E1

LSP

LSP

E3E1 E2

E3

Page 29: Multi-Protocol Label Switch (MPLS)

MPLS and QoS An important proposed MPLS capability is quality of service (QoS)

support. QoS mechanisms:

Pre-configuration based on physical interface Classification of incoming packets into different classes Classification based on network characteristics (such as congestion,

throughput, delay, and loss) A label corresponding to the resultant class is applied to the packet. Labeled packets are handled by LSRs in their path without needing to

be reclassified. MPLS enables simple logic to find the state that identifies how the

packet should be scheduled. The exact use of MPLS for QoS purposes depends a great deal on how

QoS is deployed. Support various QoS protocols, such as IntServ, DiffServ, and RSVP.

Page 30: Multi-Protocol Label Switch (MPLS)

FEC QoS ClassificationLER

MPLS label based on1. physical interface2. Source IP address3. Destination IP address4. Type of Service (ToS)5. Protocol information6. etc.

LSR

A priority scheme fordifferent label switch path (LSP)

Page 31: Multi-Protocol Label Switch (MPLS)

IP Differentiated Model

VersionVersionLengthLength

Layer 3IPV4

DataDataToSToS1 Byte1 Byte

07 123456

IP Precedence Unused Bits;

0 1 2 30 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 |

other IP header infoother IP header info

Page 32: Multi-Protocol Label Switch (MPLS)

Internet

MPLS between Carriers?Carrier-A Carrier-B

Carrier-C Carrier-D

Q: Does LDP work on different carriers’ network?A (short): not yetA (long): no network-to-network interface (NNI) signaling.. And I really don’t expect it in the near future…

Page 33: Multi-Protocol Label Switch (MPLS)

Summary MPLS is accepted by the industry to migrate ATM-based

core to IP/MPLS-based core. It is applied to carrier networks and large enterprise

networks. How do we set the label path: LDP What is the need: traffic classification What are the applications: traffic engineering, VPN, QoS,

etc. Challenges:

NNI for MPLS MPLS for the Internet