MPLS Tutorial

Reviews
Shared by: techmaster
Stats
views:
256
rating:
not rated
reviews:
0
posted:
10/28/2008
language:
pages:
0
MPLS Tutorial Contents         Legacy IP Routing Model 차세대 인터넷의 과제 Why MPLS ? MPLS Base LDP, CR-LDP MPLS & ATM Traffic Engineering MPLS와 QoS 안동대학교 차 영욱, ywcha@andong.ac.kr, 2008-10-28 ywcha MPLS Tutorial 1 “legacy” IP 라우팅 모델(1)  Connectionless  per-packet routing: 라우터는 각 패킷에 대해서 forwarding 결정을 한다.  no connection setup latency: short-lived packet service와 longlived packet service에 상관없다.  End-to-end forwarding state를 필요로 하지 않는다.  Forwarding state 정보를 soft-state로 관리하기 때문에 link failure 에 대해서 새로운 path를 찾는다 • robust, flexible, adaptable  scalable  longest prefix matching address lookup : 따라서 low speed, expensive  “soft-state” routing path management  IP 패킷을 forwarding하기위한 state의 관리를 의미  routing path에 대한 resource를 미리 확보하지 않는다. 2008-10-28 ywcha MPLS Tutorial 2 “legacy” IP routing 모델(2)  IP routing(계속)  single routing view: 하나의 global address에 의해서 routing이 이 루어진다.  No QoS routing  best effort service  single class  no service guaranteed 2008-10-28 ywcha MPLS Tutorial 3 “legacy” IP 라우팅 모델(3)  IP over any link layer technology  IP는 link layer technology에는 무관하게 동작한다.  IP over Ethernet, IP over Serial Link, IP over Frame Relay, IP over CATV, IP over ATM, etc. R IP link layer R IP link layer IP link layer subnet 2008-10-28 ywcha subnet MPLS Tutorial subnet 4 차세대 인터넷의 과제  고속의 패킷 전달, 즉 속도의 문제 해결  해결책으로 L2 스위칭 기술을 사용하거나 혹은 L3에서 고속 패킷 전달 (Terabit router)  차별화된 서비스의 제공, 즉 QoS의 과제  Mission-critical Service도 인터넷을 이용할 수 있도록  multiservice의 제공을 위하여  해결책으로 IP Int-serv, Diff-serv 모델을 만듬  Traffic Engineering 기능을 제공  Reliable 망  망 보호/복구 기능 제공  Secure 망 2008-10-28 ywcha MPLS Tutorial 5 MPLS (Multiprotocol Label Switching)  MPLS의 출발은 ATM 스위치를 이용하여 IP 패킷을 전달하는 방 안으로 출발하였다.  MPLS는 기존의 overlay 모델의 약점을 극복하기 위해서 L3 라우 터와 L2 스위치 간에 peer model로서 접근하였다.  L3 라우터와 L2 스위치에서 동일한 L3 라우팅 프로토콜을 사용  MPLS base  Hop-by-hop or source routing to establish labels  Uses label native to the media  Multi level label substitution transport MPLS intended to be “multi-protocol” below as well as above 2008-10-28 ywcha MPLS Tutorial 6 IP and ATM Integration IP over ATM VCs IP over MPLS • ATM cloud invisible to Layer 3 Routing • Full mesh of VCs within ATM cloud • Many adjacencies between edge routers • Topology change generates many route updates • Routing algorithm made more complex • ATM network visible to Layer 3 Routing • Singe adjacency possible with edge router • Hierachical network design possible • Reduces route update traffic and power needed to process them MPLS eliminates the “n-squared” problem of IP over ATM VCs 2008-10-28 ywcha MPLS Tutorial 7 ROUTE AT EDGE, SWITCH IN CORE IP IP #L1 IP #L2 IP #L3 IP IP Forwarding 2008-10-28 ywcha LABEL SWITCHING MPLS Tutorial IP Forwarding 8 BEST OF BOTH WORLDS PACKET ROUTING HYBRID CIRCUIT SWITCHING IP MPLS +IP MPLS Tutorial ATM • MPLS + IP form a middle ground that combines the best of IP and the best of circuit switching technologies. • ATM and Frame Relay cannot easily come to the middle so IP has!! 2008-10-28 ywcha 9 WHY MPLS ?  Leverage existing ATM hardware  Ultra fast forwarding  IP Traffic Engineering  Explicit routing,  Constraint-based Routing  Virtual Private Networks  Controllable tunneling mechanism  Voice/Video on IP  Delay variation + QoS constraints 2008-10-28 ywcha MPLS Tutorial 10 MPLS가 꼭 필요한가?  Label switching을 통한 고속의 패킷 전달이라는 목표는?  이것은 이미 이유를 상실했다.  이미 L3 packet routing/forwarding이 충분히 고속으로 이루어질 수 있기 때 문에(경제적으로도)  이미 Terabit router에 OC-48 interface가 제공되고 있으며 조만간 OC-192 interface도 등장할 것이다.  VPN을 위한 IP tunnel의 제공?  한 방편이 될 수 있다.  Traffic engineering 기능의 제공?  결국 MPLS의 당위성을 들라면 TE 기능의 제공이라고 할 수 있다.  MPLS의 Explicit Routing 혹은 Constrained-based routing 기능의 제공은 현재 의 IP 라우팅이 갖지 못한 필수적인 기능을 제공해 준다.  이것은 망에서의 load balancing, 망 보호/복구, QoS routing에 사용될 수 있다. 2008-10-28 ywcha MPLS Tutorial 11 In a nutshell, MPLS는 “legacy” IP 라우팅 모델을 연결형 방식(connection-oriented mode) 으로 사용할 수 있도록 확장한 것이다. 2008-10-28 ywcha MPLS Tutorial 12 MPLS Terminology  Label  LDP: Label Distribution Protocol  LSR(Label Switch Router) : Label switching 기능을 갖는 라우터  LSP(Label Switched Path) : the concatenation of label switching hops  FEC(Forwarding Equivalence Class ) : 동일한 label 값을 갖는 IP 패 킷들의 그룹  LER(Label Edge Router) : Useful term not in standards  LIB(Label Information Base) : database of information containing label assignment(binding) 2008-10-28 ywcha MPLS Tutorial 13 Label이란?  Short fixed length identifiers  label value는 사용하기 전에 각 노드 간에 정해져야 한다.  Label의 value는 local 값이다.  즉 두 인접한 노드 간에서만 합의된 값이다.  Label의 교환(swap)은 각 hop마다 발생 application 1 application 2 application 3 a single label application N flows stream 2008-10-28 ywcha MPLS Tutorial 14 Label Encapsulation L2 ATM FR DLCI Ethernet PPP Label VPI VCI “Shim Label” “Shim Label” ……. IP | PAYLOAD  There are many examples of label substitution protocols already in existence.  ATM - label is called VPI/VCI and travels with cell.  Frame Relay - label is called a DLCI and travels with frame.  TDM - label is called a timeslot its implied, like a lane.  X25 - a label is an LCN  One day perhaps Frequency substitution where label is a light frequency? 2008-10-28 ywcha MPLS Tutorial 15 MPLS shim header 20 bits 3 1 8 label Exp s TTL IP 패킷 Exp : experimental use S : bottom of stack TTL : time to live 2008-10-28 ywcha MPLS Tutorial 16 MPLS Encapsulation ATM LSR constrained by the ATM imposed by existing ATM standards cell format 5 Octets ATM Header Format Option 1 Option 2 Option 3 VPI Label VCI Label Label PT CLP HEC Combined Label ATM VPI (Tunnel) AAL 5 PDU Frame (nx48 bytes) n ••• 1 Network Layer Header and Packet (eg. IP) AAL5 Trailer ATM SAR ATM Header ATM Payload Generic Label Encap. (PPP/LAN format) 48 Bytes 48 Bytes ••• • Top 1 or 2 labels are contained in the VPI/VCI fields of ATM header - one in each or single label in combined field, negotiated by LDP • Further fields in stack are encoded with „shim‟ header in PPP/LAN format - must be at least one, with bottom label distinguished with „explicit NULL‟ • TTL is carried in top label in stack, as a proxy for ATM header (that lacks TTL) 2008-10-28 ywcha MPLS Tutorial 17 MPLS Encapsulation - Frame Relay Q.922 Header Generic Encap. (PPP/LAN Format) n Layer 3 Header and Packet 1 ••• DLCI C/ E R A DLCI FE BE D E CN CN E A DLCI Size = 10, 17, 23 Bits • Current label value carried in DLCI field of Frame Relay header • Can use either 2 or 4 octet Q.922 Address (10, 17, 23 bytes) • Generic encapsulation contains n labels for stack of depth n - top label contains TTL (which FR header lacks), „explicit NULL‟ label value 2008-10-28 ywcha MPLS Tutorial 18 MPLS Encapsulation - PPP & LAN Data Links MPLS „Shim‟ Headers (1-n) n Layer 2 Header (eg. PPP, 802.3) ••• 1 Network Layer Header and Packet (eg. IP) 4 Octets Label Stack Entry Format Label Exp. S TTL Label: Label Value, 20 bits (0-16 reserved) Exp.: Experimental, 3 bits (was Class of Service) S: Bottom of Stack, 1 bit (1 = last entry in label stack) TTL: Time to Live, 8 bits • Network layer must be inferable from value of bottom label of the stack • TTL must be set to the value of the IP TTL field when packet is first labelled • When last label is popped off stack, MPLS TTL to be copied to IP TTL field • Pushing multiple labels may cause length of frame to exceed layer-2 MTU - LSR must support “Max. IP Datagram Size for Labelling” parameter - any unlabelled datagram greater in size than this parameter is to be fragmented MPLS on PPP links and LANs uses „Shim‟ Header Inserted Between Layer 2 and Layer 3 Headers 2008-10-28 ywcha MPLS Tutorial 19 Label의 의미  Label은 virtual circuit 패킷망의 VC 값과 거의 유사하며, 결국 MPLS는 IP의 연결형 모델이라고 할 수 있다. Label Switching Domain 1 LSR 5 LSR LSR 3 LSR label 1 2008-10-28 ywcha out link 4 label 5 MPLS Tutorial label 5 out link 2 label 3 20 Label, FEC, LSP, LIB, LSR Routing table addr-prefix next hop 129.20.0.0/16 180.20.10.1 129.20.100.12 Routing table addr-prefix next hop 129.20.0.0/16 203.30.107.1 LSR LSP-i LSR 180.20.10.1 LSP-i LSR 203.30.107.1 Label information base(LIB) Label information base(LIB) label-in FEC label-out 17 129.20.0.0/16 21 label-in FEC label-out 129.20.0.0/16 17 2008-10-28 ywcha MPLS Tutorial 21 Label Granularity (1)  어떤 종류의 패킷들이 동일한 label 값을 갖는가?  즉 Forward Equivalent Class를 어떻게 결정하는가  MPLS는 다양한 FEC를 허용하고 있다.  가장 쉬운 예로서 라우팅 테이블의 address prefix 값에 따라서 하나의 FEC 가 정의될 수 있다.  이것은 LSP에 따른 차별화된 패킷의 전달, 즉 QoS(혹은 CoS)의 제공과 밀접한 관계를 갖는다. 2008-10-28 ywcha MPLS Tutorial 22 Label Granularity (2)  Spectrum of label granularities application flow: finer grain - (source, destination, TCP/UDP port) - (ports pair + TOS) middle flows: - host pairs: (source, destination address) - network pair: (source, destination address prefix) coarser grain 2008-10-28 ywcha same destination network address prefix same egress router ID same next-hop AS number (BGP) same destination AS number (BGP) MPLS Tutorial 23 Label Stack  다층 구조를 갖는 라우팅을 위해서 label stack을 사용할 수 있다.  Inter-domain BGP에서 유용하게 사용될 수 있다. A LSR LSR 2008-10-28 ywcha LSR D B LSR 1 C MPLS Tutorial 24 LSP Scalability  LSP의 수를 줄이는 방법으로 multipoint-to-point trees(MPTs)을 사용 할 수 있다.  LSR은 O(n) label을 관리하면 된다.  egress LSR에서 하나의 tree를 형성할 수 있다. LSR LSR LSR LSR LSR 2008-10-28 ywcha MPLS Tutorial 25 Forwarding Equivalence Classes LER LSR LSR LER LSP IP1 IP1 IP1 IP2 #L1 #L1 IP1 IP2 #L2 #L2 IP1 IP2 #L3 #L3 IP2 Packets are destined for different address prefixes, but can be mapped to common path IP2 • FEC = “A subset of packets that are all treated the same way by a router” • The concept of FECs provides for a great deal of flexibility and scalability • In conventional routing, a packet is assigned to a FEC at each hop (i.e. L3 lookup), in MPLS it is only done once at the network ingress 2008-10-28 ywcha MPLS Tutorial 26 LABEL SWITCHED PATH (vanilla) #14 #216 #99 #311 #311 #963 #311 #963 #14 #612 #462 #99 #311 #5 - A Vanilla LSP is actually part of a tree from every source to that destination (unidirectional). - Vanilla LDP builds that tree using existing IP forwarding tables to route the control messages. MPLS Tutorial 2008-10-28 ywcha 27 MPLS Label Distribution Intf Label Dest Intf Label In In Out Out 3 0.50 47.1 1 0.40 3 Intf In 3 Label Dest Intf In Out 0.40 47.1 1 1 Request: 47.1 1 47.1 Intf Dest Intf Label In Out Out 3 47.1 1 0.50 47.3 3 3 2 1 2 Mapping: 0.40 2 47.2 2008-10-28 ywcha MPLS Tutorial 28 Label Switched Path (LSP) Intf Label Dest Intf Label In In Out Out 3 0.50 47.1 1 0.40 Intf Dest Intf Label In Out Out 3 47.1 1 0.50 1 47.3 3 2 IP 47.1.1.1 3 1 2 47.2 Intf In 3 Label Dest Intf In Out 0.40 47.1 1 IP 47.1.1.1 1 47.1 3 2 2008-10-28 ywcha MPLS Tutorial 29 Label은 어떻게 전달되나?  이것은 MPLS signaling의 과제이다.  두 가지 접근 방법이 있다.  하나는 새로운 프로토콜을 만드는 것이다.  또 하나는 기존의 control message에 piggyback 해서 전달하는 방법이다.  Label 전달을 위한 새로운 프로토콜로서 MPLS에서는 Label Distribution Protocol(LDP)을 새로 만들었다. 2008-10-28 ywcha MPLS Tutorial 30 LDP에서 정의하는 주요 내용        언제 Label을 할당하는가? LDP session은 어떻게 설정하는가? 누가 제일 처음 Label 할당을 시작하는가? Label은 LSR 간에 어떤 순서로 할당되는가? 할당 받은 Label 값을 다 보관할 것인가? Loop detection은? Label과 함께 전달하는 정보는? 2008-10-28 ywcha MPLS Tutorial 31 언제 Label을 할당하나  Topology driven label assignment  LSP는 라우팅 경로와 함께 미리 설정된다.  no setup latency  Flow(or Traffic) driven label assignment  첫번째 패킷이 도착했을 때 할당한다.  setup latency  Control driven label assignment(ex, RSVP 메시지)  LDP는 Topology driven label 할당을 전제로 하고 있다. 2008-10-28 ywcha MPLS Tutorial 32 LDP의 동작의 단계 Hello (over UDP) LDP discovery LSR LSR Hello (over UDP) Open (over TCP) LDP session 설정 LSR LSR Initialization Label request Label 할당 2008-10-28 ywcha LSR LSR Label mapping MPLS Tutorial 33 LDP discovery  LSR이 이웃 LSR(LDP peer)을 찾는 절차  Basic Discovery Mechanism  LDP Hello message를 주기적으로 보낸다.  “all routers on this subnet” group multicast address를 사용한다.  Well-known LDP discovery port를 사용한다.  Extended Discovery Mechanism  link level에서 직접 연결되지 않은 LSR을 찾을 때  LDP Targeted Hello message를 주기적으로 보낸다.  해당 LSR의 IP 주소를 목적지 주소로 사용한다. 2008-10-28 ywcha MPLS Tutorial 34 LDP Session 설정  Hello message 교환으로 LDP session을 설정한다.  TCP connection 설정  session parameter를 협상  Initialization message를 교환한다. LSR LSR TCP 연결 설정 Initialization message Initialization message LDP session 설정 2008-10-28 ywcha MPLS Tutorial 35 LSR adjacency와 LDP session의 유지  LSR adjacency 유지  주기적으로 Hello message를 주고 받는다.  Hold timer 사용  LDP session의 유지  지속적으로 LDP message를 주고 받는다.  만약 LDP message를 보내지 못한다면 KeepAlive message를 주기 적으로 보낸다.  KeepAlive timer 사용 2008-10-28 ywcha MPLS Tutorial 36 누가 Label을 할당하는가  downstream node  downstream LSR에 의해 label을 할당한다.  upstream LSR은 downstream LSR로부터 label을 받을 때 만약 downstream node가 경로 상의 next hop이라면 그 label 값을 LIB에 outgoing label 값으로 기록한다.  downstream node on demand  upstream LSR의 요청이 있을 때 downstream LSR이 할당한다. 2008-10-28 ywcha MPLS Tutorial 37 Downstream on demand Label Distribution 1 LSR 2 LSR 특정 FEC에 대한 next hop LSR 2를 발견 Label-FEC binding request Label-FEC binding Downstream unsolicited Label Distribution LSR LSR Label-FEC binding 2008-10-28 ywcha MPLS Tutorial 38 Label 할당은 누가 처음 시작?  Independent label 할당  임의의 LSR은 Label-FEC binding을 upstream LSR에 알려줄 수 있 다.  Ordered label 할당  Label-FEC binding은 upstream LSR에서부터 downstream LSR로 순차적으로 이루어진다.  결국 Label 할당의 흐름은 egress LSR에서부터 시작하여 ingress LSR로 이루어진다. 2008-10-28 ywcha MPLS Tutorial 39 INDEPENDENT MODE #14 #311 #216 #99 #963 #311 #311 D #963 #14 #612 #5 D D D #99 D D D #311 D #462     label 교환을 하는 시간이 절약된다. Egress LSR을 찾는 것과는 상관없이 이루어진다. 각 LSR에서 label granularity의 일관성을 유지하는 어려움이 있다. Loop detection에도 어려움이 있다. MPLS Tutorial 2008-10-28 ywcha 40 ORDERED MODE  결국 먼저 egress LSR에 까지 도달해야 한다.  Explicit routing과 multicast를 위해서 필요하다. 2008-10-28 ywcha MPLS Tutorial 41 Label retention  LSR은 여러 LSR들로부터 label 값을 받을 것이다. 이 중에서 어 떤 값은 valid next hop이 아닌 LSR로부터 온 것도 있을 것이다. 이것들을 받아 줄 것인가 무시할 것인가?  두 가지 대안  Liberal label retention  Conservative label retention LSR LSR 10 20 LSR 30 LSR LSR 10 20 LSR 30 2008-10-28 ywcha LSR Valid next hop MPLS Tutorial LSR Valid next hop 42 CONSERVATIVE These labels are RETENTION MODE released the moment they are received. #216 D D #422 #622 D D #462 #963 #14 #612 #5 D D D #99 D D D #311  valid next hop으로부터 받은 label mapping 만 보관한다.  Next hop이 바뀌면 새로운 next hop에 다시 요청해야 한다.  유지해야 하는 label의 수가 적게 된다. 2008-10-28 ywcha MPLS Tutorial 43 LIBERAL RETENTION MODE These labels are kept incase they are needed after a failure. #216 D D #422 #622 D D #462 #963 #14 #612 #5 D D D #99 D D D #311 2008-10-28 ywcha MPLS Tutorial 44 Constrained-based Routing(CR)이란?  “constraint”에 의해서 routing path를 결정하는 것을 말한다.  “constraint”가 explicit route(ER)라면 Explicit routing이라 할 수 있으며, “constraint”가 QoS라면 QoS routing, policy라면 policy-based routing이라고 할 수 있다.  즉 ER 혹은 QoS routing을 포괄하는 개념이다.  만약 “constraint”가 현재 IP routing에서 사용하는 hop-byhop(혹은 destination-based routing)이라면 기존 IP routing에 해당한다. 2008-10-28 ywcha MPLS Tutorial 45 즉,  앞에서 설명한 LDP에서 LSP의 결정은 LSR의 routing table의 정 보에 의해서 이루어졌다.  그러나, 이것을 Explicit Routing(ER)로 확장을 한다면 망의 경계 LSR은 routing table과 함께 다른 기준에 의해서 LSR을 결정해야 할 것이다.  Routing table + explicit route  그리고 여기에 대역을 고려하여 LSP를 결정한다면 +의 기준에 의해서 결정해야 할 것이다. 2008-10-28 ywcha MPLS Tutorial 46 CR을 위한 signaling protocol은?  IP routing에 의하여 LSP를 결정하는 경우 LDP를 사용하는 것을 앞에서 설명하였다.  그러면 +의 정보를 전달하기 위해서 어떤 signaling protocol을 사용할 것인가?  자연스런 답은 LDP를 확장하는 것이다.  또 하나의 답은 RSVP를 확장하는 것이다.  그래서 CR을 위한 두 가지 signaling protocol이 존재한다.  CR-LDP  RSVP-TE 2008-10-28 ywcha MPLS Tutorial 47 Label Request Message 0 15 31 0 0x0401 Message ID FEC TLV Message Length Optional Parameters  Label-FEC binding을 request  Optional parameter TLV  Hop Count TLV, Path vector TLV 2008-10-28 ywcha MPLS Tutorial 48 CR-LDP Label Request Message 0 15 31 0 0x0401 Message ID Message Length FEC TLV LSPID TLV (CR-LDP, mandatory) ER TLV (CR-LDP, mandatory) Traffic TLV (CR-LDP, optional) Pinning TLV (CR-LDP, optional) Resource Class TLV (CR-LDP, optional) Preemption TLV (CR-LDP, optional) 2008-10-28 ywcha MPLS Tutorial 49 ER TLV 0 15 31 0 0 0x0800 ER-Hop TLV 1 . . ER-Hop TLV n Length 2008-10-28 ywcha MPLS Tutorial 50 ER-Hop TLV 0 15 31 0 0 L ER-Hop Type content Length  ER-Hop Type: content의 type을 지정      0x801: 0x802: 0x803: 0x804: IPv4 Prefix IPv6 Prefix AS number LSPID  L bit loose/strict ER-Hop을 나타낸다. 2008-10-28 ywcha MPLS Tutorial 51 Traffic Parameters TLV 0 15 31 0 0x0810 Flags Frequency Peak Data Rate (PDR) Peak Burst Rate (PBS) Length Reserved Weight Committed Data Rate (CDR) Committed Burst Size (CBS) Excess Burst Size (EBS) 2008-10-28 ywcha MPLS Tutorial 52 ER-LSP의 설정 A LSR B LSR C LSR D LSR Explicit Route Label Request message 전송: ER path Label Request message 처리: ER path Label Request message 처리: ER path Label Mapping message 전송 2008-10-28 ywcha MPLS Tutorial 53 ER LSP - advantages •Operator has routing flexibility (policy-based, QoS-based) •Can use routes other than shortest path •Can compute routes based on constraints in exactly the same manner as ATM based on distributed topology database. (traffic engineering) 2008-10-28 ywcha MPLS Tutorial 54 MPLS & ATM  Various Modes of Operation  Label-Controlled ATM  Tunneling Through ATM  Ships in the night with ATM  ATM Merge  VC Merge  VP Merge 2008-10-28 ywcha MPLS Tutorial 55 MPLS & ATM Several Models for running MPLS on ATM: 1. Label-Controlled ATM: • Use ATM hardware for label switching • Replace ATM Forum SW by IP/MPLS IP Routing MPLS ATM HW 2008-10-28 ywcha MPLS Tutorial 56 Label-Controlled ATM • Label switching is used to forward network-layer packets • It combines the fast, simple forwarding technique of ATM with network layer routing and control of the TCP/IP protocol suite Network Layer Routing (eg. OSPF, BGP4) Label Switching Router Switched path topology formed using network layer routing (I.e. TCP/IP technique) Forwarding Table Forwarding Table B 17 • • • C 05 Port Label A Label IP Packet 17 C D IP Packet 05 B Packets forwarded by swapping short, fixed length labels (I.e. ATM technique) ATM Label Switching 2008-10-28 ywcha is the combination of L3 routing and L2 ATM switching MPLS Tutorial 57 2. MPLS Over ATM MPLS L S R MPLS ATM Network L S R Two Models VP VC Internet Draft: VCID notification over ATM Link 2008-10-28 ywcha MPLS Tutorial 58 3. Ships in the Night L S R ATM SW MPLS ATM L S R ATM SW  ATM Forum and MPLS control planes both run on the same hardware but are isolated from each other, i.e. they do not interact.  This allows a single device to simultaneously operate as both an MPLS LSR and an ATM switch.  Important for migrating MPLS into an ATM network 2008-10-28 ywcha MPLS Tutorial 59 Label과 VPI/VCI  Label과 VPI/VCI는 동일한 semantics를 갖는다.     Option 1의 경우 2개의 label stack으로 사용할 수 있다. Option 2의 경우 label space를 크게 사용할 수 있다. Option 3의 경우 VP tunnel로서 사용할 수 있다. EXP와 TTL 값으로 사용할 필드는 없다. 5 Octets ATM Header GFC VPI Label VCI PTI CLP HEC Option 1 Option 2 Option 2008-10-28 ywcha 3 Label Label VPI MPLS Tutorial Label 60 Label Encapsulation  AAL PDU는 적어도 하나의 Generic label을 갖는다.  Top label은 TTL 값을 갖는다. AAL 5 PDU n ••• 1 Generic label ATM cell ATM Header 48 Bytes IP 패킷 AAL5 trailer 48 Bytes ••• MPLS Tutorial 2008-10-28 ywcha 61 Ships in the night Requirements Resource Management  VPI.VCI Space Partitioning  Traffic management • • • • Bandwidth Reservation Admission Control Queuing & Scheduling Shaping/Policing  Processing Capacity 2008-10-28 ywcha MPLS Tutorial 62 Bandwidth Management A. Full Sharing MPLS Pool 1 •MPLS •ATM B. Protocol Partition Pool 1 MPLS •50% •ATM Available C. Service Partition MPLS Pool 1 •50% •rt-VBR ATM •COS2 Available Port Capacity ATM Available Pool 2 ATM •50% •rt-VBR Available MPLS Pool 2 •50% •nrt-VBR ATM •COS1 Available 2008-10-28 ywcha • Bandwidth Guarantees MPLS Tutorial • Flexibility 63 VC merge의 문제  Multipoint-to-point의 LSP 구성  scalibility의 문제를 해결하기 위해서 사용  사용해야 될 VC의 수를 줄일 수 있다.  그런데 현재 ATM에서 mpt-to-pt, mpt-to-mpt는 일반적으로 지 원되지 않는다.  즉 non-VC merge ATM LSR  따라서 VC merge의 문제를 해결하여야 한다.  AAL5에서는 MID 필드가 없으므로 merge된 cell이 뒤섞일 경우 원래 의 flow를 구별할 수 없다. 2008-10-28 ywcha MPLS Tutorial 64 VC merge와 non-VC merge Input cell streams 1 1 1 2 2 2 3 3 in 1 2 3 out 7 6 9 6 7 9 6 7 9 6 7 Non-VC merging (Nin--Nout) Input cell streams in out 7 7 7 7 7 7 7 7 1 1 1 1 7 AAL5 Cell Interleaving Problem 2 7 2 2 2 7 7 7 7 7 7 7 7 3 7 3 3 No Cell Interleaving VC merging (Nin-1out) 2008-10-28 ywcha MPLS Tutorial 65 VC merge 방법  Frame-based VC merge (아래 그림)  Cell-based VP merge (다음 페이지 그림) Reassembly buffers 7 7 7 5 5 4 2008-10-28 ywcha 2 2 2 2 2 2 2 4 Merge MPLS Tutorial 66 VP-Merge VCI=1 VCI=2 Option 1: Dynamic VCI Mapping VPI=1 No Cell Interleaving Problem Since VCI is unique VCI=1 VCI=2 VPI=2 VCI=3 VPI=3 Option 2: Root Assigned VCI VCI=3 –merge multiple VPs into one VP –use separate VCIs within VPs to distinguish frames –less efficient use of VPI/VCI space, needs support of SVP MPLS Tutorial 2008-10-28 ywcha 67 Traffic Engineering  “A major goal of Internet Traffic Engineering is to facilitate efficient and reliable network operations while simultaneously optimizing network resource utilization and performance.”  (RFC 2702 Requirement for Traffic Engineering over MPLS) 그래서  Efficient network를 위해서,  “constraint”를 고려한 경로 설정과 트래픽 할당  load balancing과 congestion 해소  서비스의 질을 높임, 등등  Reliable network를 위해서,     링크/노드 고장 시 이를 검출하고, 대체 경로 설정 트래픽의 rerouting 결국 망 보호/복구 2008-10-28 ywcha MPLS Tutorial 68 Traffic Engineering B Demand C A D Traffic engineering is the process of mapping traffic demand onto a network Network Topology Purpose of traffic engineering: • Maximize utilization of links and nodes throughout the network • Engineer links to achieve required delay, grade-of-service • Spread the network traffic across network links, minimize impact of single failure • Ensure available spare link capacity for re-routing traffic on failure • Meet policy requirements imposed by the network operator Traffic engineering key toMPLS Tutorial cost/performance optimizing 2008-10-28 ywcha 69 Traffic Engineering Alternatives Current methods of traffic engineering: Manipulating routing metrics Use PVCs over an ATM backbone Difficult to manage Not scalable Over-provision bandwidth Not economical MPLS provides a new method to do traffic engineering (traffic steering) Example Network: Ingress node explicitly routes traffic over uncongested path Congested Node Chosen by Traffic Eng. (least congestion) Chosen by routing protocol (least cost) Potential benefits of MPLS for traffic engineering: - allows explicitly routed paths - no “n-squared” problem - per FEC traffic monitoring - backup paths may be configured operator control scalable granularity of feedback redundancy/restoration 70 MPLS ywcha MPLS Tutorial 2008-10-28 combines benefits of ATM and IP-layer traffic engineering MPLS Traffic Engineering Methods • MPLS can use the source routing capability to steer traffic on desired path • Operator may manually configure these in each LSR along the desired path - analogous to setting up PVCs in ATM switches • Ingress LSR may be configured with the path, RSVP used to set up LSP - some vendors have extended RSVP for MPLS path set-up • Ingress LSR may be configured with the path, LDP used to set up LSP - many vendors believe RSVP not suited • Ingress LSR may be configured with one or more LSRs along the desired path, hop-by-hop routing may be used to set up the rest of the path - a.k.a loose source routing, less configuration required • If desired for control, route discovered by hop-by-hop routing can be frozen - a.k.a “route pinning” • In the future, constraint-based routing will offload traffic engineering tasks from the operator to the network itself 2008-10-28 ywcha MPLS Tutorial 71 인터넷 QoS 모델  QoS는 서비스에 따른 IP 패킷의 구분과 스케쥴링, 대역의 보장을 요구 한다.  인터넷에서 이러한 QoS의 접근 방법에는 두 가지 모델이 존재한다.  Microflow에 대해서 QoS를 보장 • per-flow 기반의 패킷 구분과 대역 보장 • Integrated Services 모델  aggregated flow에 대해서 QoS(혹은 CoS)를 보장 • Differentiated Services 모델 2008-10-28 ywcha MPLS Tutorial 72 MPLS와 QoS  MPLS에서 별도의 QoS 모델을 정의하는 것은 아니다.  MPLS는 IP routing/forwarding 모델의 보완이다.  따라서 MPLS에서의 QoS 목표는 IP에서 정의된 QoS 모델을 지 원하는 것이다.  그런데 MPLS가 traffic aggregation이 사용되는 망에서 적용될 것이기 때문에 여기에 해당하는 IP QoS 모델은 Differentiated Services 모델이다.  따라서 여기서의 주제는 Diff-Serv over MPLS라고 할 수 있다. 2008-10-28 ywcha MPLS Tutorial 73 Differentiated Services(Diff-Serv)  트래픽 조절 기능과 같은 복잡한 기능은 모두 망의 경계 라우터에서만 처리하고, 망 내 부 라우터는 아주 간단한 패킷 전달(forwarding) 기능만 수행.  망의 경계 라우터는 서비스 계약에 따라서 패킷의 분류를 수행하여 이를 패킷에 표시 (mark)하고, 망 내부 라우터는 패킷에 표시된 정보에 따라서 단순히 패킷의 전달 기능 만을 담당. LSR LSR LSR LSR LSR LSR LSR classification and conditioning (metering, marking, policing등) 2008-10-28 ywcha Per Hop Behavior (scheduling, dropping) MPLS Tutorial codepoint PHB class 74 Diff-Serv 구성 요소  Service Level Agreement(SLA)  사용자와 DS망의 관리자와 서비스 사용을 위한 협약이 이루어진다.  SLA에 의해서 DS망을 통해 전달하고자 하는 패킷 flow의 집합체를 정의하게 된다.  트래픽 조절(Traffic Conditioning)  DS망 경계 라우터는 SLA에 의해 정의된 패킷 흐름에 대해서 marking, metering, shaping, policing 기능을 수행한다.  패킷 전달 기능(Per-Hop Behavior)  내부 라우터는 경계 라우터에 의해 mark된 코드에 의해서 단순히 패킷을 전 달한다.  이러한 패킷 전달 기능을 PHB라고 부른다.  현재 Best Effort 외에 Expedited PHB와 Assured PHB에 대해서 정의되어 있다.  DS codepoints  IPv4의 TOS 필드, IPv6의 Class 필드를 사용  이 필드를 DS byte 그리고 여기에 표시되는 값을 DS codepoints라고 부른 다. 2008-10-28 ywcha MPLS Tutorial 75 DS codepoints IPv4 Header 4-bit version 4-bit header length 8-bit type of service (TOS) 16-bit total length (in byte) 2-bit 6-bit DS codepoints CU PHB codepoints Default 000000 class selector xxx000 Expedited 101110 forwarding MPLS Tutorial 2008-10-28 ywcha Currently Unused 76 PHB와 DS codepoints  Default PHB  best effort 서비스에 해당  codepoint = 000000  Expedited Forwarding  가장 우선 순위가 높은 패킷의 전달로 Premium Service라고도 부른다.  Virtual leased line 서비스에 해당한다.  Jitter-sensitive 트래픽을 대상으로 한다. • Rate-controlled traffic (video/voice) • simple priority queuing  가장 비싼 값을 지불하며 보장된 서비스를 제공받는다.  Codepoint = 101110  Class Selector  현재 라우터에서 쓰고 있는 IP precedence 필드와의 호환을 위해 정의  codepoints = xxx000 2008-10-28 ywcha MPLS Tutorial 77 Assured Forwarding  약정된 Traffic profile을 지키는 경우 어느 정도 보장 받음  low loss, timely response를 기대할 수 있다.  그러나 profile을 넘어서 트래픽을 보낼 수도 있다.  라우터는 buffer management에 의한 packet drop을 수행한다.  ISP 입장에서 사용 방안   약정을 준수하는 트래픽은 flat rate 약정을 초과하는 트래픽은 usage charging  현재 4개의 패킷 전달 우선 순위와 3개의 패킷 폐기 우선 순위(drop precedence) 로 구분하고 있다.  AFxy class   x class : 해당 패킷에 대하여 동일한 큐를 선택 y : 동일 클래스에 대하여 drop precedence 를 나타냄. Drop procedence Low Medium High 2008-10-28 ywcha Class 1 001010 001100 001110 Class 2 010010 010100 010110 MPLS Tutorial Class 3 011010 011100 011110 Class 4 100010 100100 100110 78 Diff-Serv over MPLS의 목표  Diff-Serv에서 정의된 동일한 PHB를 LSR이 수행할 수 있도록 한다.  Diff-Serv의 PHB classes와 drop profiles  EF, AF1, AF2, AF3, AF4, CSs, Default PHBs Non-MPLS Diffserv domain LER MPLS Diffserv domain 2008-10-28 ywcha MPLS Tutorial 79 MPLS 헤더와 Diff-Serv DSCP Non-MPLS Diffserv domain LER MPLS Diffserv domain IP 패킷 IP 패킷 MPLS Header DSCP DSCP DSCP Label 2008-10-28 ywcha MPLS Tutorial EXP S 3 1 TTL 80 20 MPLS 헤더와 Diff-Serv DSCP  DSCP값은 LSR에서는 볼 수 없다. 따라서 DSCP 값은 MPLS 헤더의 값으 로 매핑되어야 한다.  Diff-Serv에서는 DSCP에 의해서 패킷의 구분(classification/enqueuing) 과 패킷의 폐기 우선순위(drop priority)가 이루어 진다.  이러한 Diff-Serv의 정보를 MPLS에 전달하는데 두 가지 방법이 정의되어 있다.  E-LSP (EXP-inferred PSC LSP) • Scheduling (queuing)을 위한 PHB class는 EXP 값에 의해 구분된다. • 8 가지(EXP 3 비트)의 PHB 만 지원.  L-LSP (Label-inferred PSC LSP) • Scheduling (queuing)을 위한 PHB class는 Label 값에 의해 구분된다. • Drop priority는 EXP 값에 의해서 결정된다. 2008-10-28 ywcha MPLS Tutorial 81 E-LSP LSR EF와 AF1 LSR LSR EF AF1  MPLS 망을 EF와 AF1의 두 PHB class의 패킷이 전달된다고 할 때 ELSP는 동일한 LSP(즉 같은 label 값)를 통해서 전달된다.  하지만 LSR에서 EXP 값에 의해서 다른 queue에 들어간다. 2008-10-28 ywcha MPLS Tutorial 82 L-LSP LSR LSR LSR EF AF1  L-LSP의 경우 EF와 AF1의 두 PHB class의 패킷은 별도의 LSP를 통해 서 전달된다. 즉 다른 label 값을 갖는다.  그리고 LSR에서 별도의 queue에 들어간다.  Drop priority는 EXP 값에 의해서 결정된다. 2008-10-28 ywcha MPLS Tutorial 83 E-LSP와 L-LSP의 적용  MPLS over PPP and LAN  E-LSP와 L-LSP 둘 다 적용된다.  MPLS over ATM/FR  ATM/FR은 forwarding을 위해서는 shim header를 사용하지 않음.  ATM과 FR은 EXP값을 정의할 수 없으므로 L-LSP만 사용 가능하다. 2008-10-28 ywcha MPLS Tutorial 84 Summary of Motivations for MPLS • Simplified forwarding based on exact match of fixed length label - initial drive for MPLS was based on existance of cheap, fast ATM switches • Separation of routing and forwarding in IP networks - facilitates evolution of routing techniques by fixing the forwarding method - new routing functionality can be deployed without changing the forwarding techniques of every router in the Internet • Facilitates the integration of ATM and IP - allows carriers to leverage their large investment of ATM equipment - eliminates the adjacency problem of VC-mesh over ATM •Enables the use of explicit routing/source routing in IP networks - can be easily used for such things as traffic management, QoS routing •Promotes the partitioning of functionality within the network - move granular processing of packets to edge; restrict core to packet forwarding - assists in maintaining scalability of IP protocols in large networks •Improved routing scalability through stacking of labels - removes the need for full routing tables from interior routers in transit domain; only routes to border routers are required •Applicability to both cell and packet link-layers - can be deployed on both cell (eg. ATM) and packet (eg. FR, Ethernet) media - common management and techniques simplifies engineering 2008-10-28 ywcha Many drivers exist MPLS Tutorial for MPLS above and beyond high speed forwarding 85

Related docs
CONCEPT OF MPLS
Views: 237  |  Downloads: 62
A small MPLS VPN tutorial
Views: 173  |  Downloads: 62
Forms of MPLS
Views: 5  |  Downloads: 2
(TT-MPLS) MPLS Fundamentals Test Applications
Views: 8  |  Downloads: 2
MPLS GUIDE
Views: 191  |  Downloads: 46
A BRIEF DESCRIPTION OF MPLS
Views: 189  |  Downloads: 24
What is MPLS VPN
Views: 283  |  Downloads: 31
mpls
Views: 46  |  Downloads: 17
Introduction to MPLS
Views: 40  |  Downloads: 14
Introduction to MPLS
Views: 62  |  Downloads: 28
MPLS_TE
Views: 32  |  Downloads: 11
premium docs
Other docs by techmaster
ADOPT 220 ADOPTION OF INDIAN CHILD
Views: 196  |  Downloads: 2
Platt Amendment _1903_
Views: 70  |  Downloads: 0
Sample Operations Plan JH Reid
Views: 439  |  Downloads: 10
National Labor Relations Act _1935_ - 1
Views: 115  |  Downloads: 0
FORM 6729C VOLUNTEER RETURN PREPARATION PROGRAM
Views: 145  |  Downloads: 1
Sample Business Plan Umagic Systems
Views: 462  |  Downloads: 6