MPLS and VPNs (David Andersen) (Nick Feamster) February 18, 2008.

Slides:



Advertisements
Similar presentations
Virtual Links: VLANs and Tunneling
Advertisements

MPLS VPN.
Identifying MPLS Applications
Deployment of MPLS VPN in Large ISP Networks
Internetworking II: MPLS, Security, and Traffic Engineering
Internet Routing (COS 598A) Today: Multi-Protocol Label Switching Jennifer Rexford Tuesdays/Thursdays.
Packet Switching COM1337/3501 Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 3.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—2-1 Label Assignment and Distribution Introducing Typical Label Distribution in Frame-Mode MPLS.
MPLS-VPN/BGP Approach Hari Rakotoranto Technical Marketing Engineer
Introducing MPLS Labels and Label Stacks
CS Summer 2003 Lecture 14. CS Summer 2003 MPLS VPN Architecture MPLS VPN is a collection of sites interconnected over MPLS core network. MPLS.
Spring 2002CS 4611 Router Construction Outline Switched Fabrics IP Routers Tag Switching.
1 Lecture 13 Virtual Circuits, ATM Networking, Fall 2007 These slides swiped, with pride, from Dave Anderson, Spring 2006.
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
CS Summer 2003 Lecture 6. CS Summer 2003 Hierarchical LSP LSP1 LSP2 LSP3 Ingress LSR for LSP1 Egress LSR for LSP1 Ingress LSR for LSP3 Hierarchical.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
ATM Networks An Engineering Approach to Computer Networking.
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
MPLS H/W update Brief description of the lab What it is? Why do we need it? Mechanisms and Protocols.
MPLS and Traffic Engineering
Computer Networking Lecture 13: Virtual Circuits, ATM, MPLS.
1 Lecture 8 Virtual Circuits, ATM, MPLS David Andersen School of Computer Science Carnegie Mellon University Networking, Spring 2005
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
Multi-Protocol Label Switching
Overlay Networks and Tunneling Reading: 4.5, 9.4 COS 461: Computer Networks Spring 2009 (MW 1:30-2:50 in COS 105) Mike Freedman Teaching Assistants: Wyatt.
MPLS L3 and L2 VPNs Virtual Private Network –Connect sites of a customer over a public infrastructure Requires: –Isolation of traffic Terminology –PE,
COS 420 Day 16. Agenda Assignment 3 Corrected Poor results 1 C and 2 Ds Spring Break?? Assignment 4 Posted Chap Due April 6 Individual Project Presentations.
SMUCSE 8344 MPLS Virtual Private Networks (VPNs).
1 Multi-Protocol Label Switching (MPLS) presented by: chitralekha tamrakar (B.S.E.) divya krit tamrakar (B.S.E.) Rashmi shrivastava(B.S.E.) prakriti.
MPLS networking at PSP Co Multi-Protocol Label Switching Presented by: Hamid Sheikhghanbari 1.
1 Multi Protocol Label Switching Presented by: Petros Ioannou Dept. of Electrical and Computer Engineering, UCY.
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Introduction to MPLS and Traffic Engineering Zartash Afzal Uzmi.
End-to-end resource management in DiffServ Networks –DiffServ focuses on singal domain –Users want end-to-end services –No consensus at this time –Two.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS Introduction Module 4: Frame Mode MPLS Implementation.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 18 Omar Meqdadi Department of Computer Science and Software Engineering University.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
MPLS Forwarder Preliminary 1 Outline MPLS Overview MPLS Overview MPLS MRD MPLS Data Path HLD 48K MPLS Fwder HLD IPE MPLS Fwder HLD Issues Summary.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Network Layer introduction.
ECE 466 Switching Networks. ECE 466 A communication network provides a scalable solution to connect a large number of end systems Communication Networks.
Case Study: ATM (+ MPLS)
Brief Introduction to Juniper and its TE features Huang Jie [CSD-Team19]
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
1MPLS QOS 10/00 © 2000, Cisco Systems, Inc. rfc2547bis VPN Alvaro Retana Alvaro Retana
BZUPAGES.COM Presentation On SWITCHING TECHNIQUE Presented To; Sir Taimoor Presented By; Beenish Jahangir 07_04 Uzma Noreen 07_08 Tayyaba Jahangir 07_33.
MPLS Label Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
Forwarding.
MULTI-PROTOCOL LABEL SWITCHING Brandon Wagner. Lecture Outline  Precursor to MPLS  MPLS Definitions  The Forwarding Process  MPLS VPN  MPLS Traffic.
Mr. Mark Welton.  WAN transportation method that formats data into frames and sent over a network controlled by a service provider  Frame Relay is often.
Unit III Bandwidth Utilization: Multiplexing and Spectrum Spreading In practical life the bandwidth available of links is limited. The proper utilization.
Multiple Protocol Support: Multiprotocol Level Switching.
Univ. of TehranComputer Network1 Advanced topics in Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Virtual Circuit Networks Frame Relays. Background Frame Relay is a Virtual Circuit WAN that was designed in late 80s and early 90s. Prior to Frame Relays.
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
Tunneling Continued/ End-to-End Principle CS 4251: Computer Networking II Nick Feamster Spring 2008.
MULTI-PROTOCOL LABEL SWITCHING By: By: YASHWANT.V YASHWANT.V ROLL NO:20 ROLL NO:20.
3. INTERNETWORKING (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 18 February
Multi-protocol Label Switching
Multiprotocol Label Switching (MPLS) Routing algorithms provide support for performance goals – Distributed and dynamic React to congestion Load balance.
Multi-protocol Label Switching (MPLS) RFC 3031 MPLS provides new capabilities: QoS support Traffic engineering VPN Multiprotocol support.
MPLS Virtual Private Networks (VPNs)
Advanced Computer Networks
Chapter 3: Packet Switching (overview)
EE 122: Lecture 19 (Asynchronous Transfer Mode - ATM)
3. Internetworking (part 1)
Lecture 8 Virtual Circuits, ATM, MPLS
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
An Engineering Approach to Computer Networking
Presentation transcript:

MPLS and VPNs (David Andersen) (Nick Feamster) February 18, 2008

2 Packet Switching l Source sends information as self-contained packets that have an address. »Source may have to break up single message into multiple l Each packet travels independently to the destination host. »Routers and switches use the address in the packet to determine how to forward the packets l Destination recreates the message. l Analogy: a letter in surface mail.

3 Circuit Switching l Source first establishes a connection (circuit) to the destination. »Each router or switch along the way may reserve some bandwidth for the data flow l Source sends the data over the circuit. »No need to include the destination address with the data since the routers know the path l The connection is torn down. l Example: telephone network.

4 Circuit Switching Discussion l Traditional circuits: on each hop, the circuit has a dedicated wire or slice of bandwidth. »Physical connection - clearly no need to include addresses with the data l Advantages, relative to packet switching: »Implies guaranteed bandwidth, predictable performance »Simple switch design: only remembers connection information, no longest-prefix destination address look up l Disadvantages: »Inefficient for bursty traffic (wastes bandwidth) »Delay associated with establishing a circuit l Can we get the advantages without (all) the disadvantages?

5 Virtual Circuits l Each wire carries many “virtual” circuits. »Forwarding based on virtual circuit (VC) identifier – IP header: src, dst, etc. –Virtual circuit header: just “VC” »A path through the network is determined for each VC when the VC is established »Use statistical multiplexing for efficiency l Can support wide range of quality of service. »No guarantees: best effort service »Weak guarantees: delay < 300 msec, … »Strong guarantees: e.g. equivalent of physical circuit

6 Packet Switching and Virtual Circuits: Similarities l “Store and forward” communication based on an address. »Address is either the destination address or a VC identifier l Must have buffer space to temporarily store packets. »E.g. multiple packets for some destination arrive simultaneously l Multiplexing on a link is similar to time sharing. »No reservations: multiplexing is statistical, i.e. packets are interleaved without a fixed pattern »Reservations: some flows are guaranteed to get a certain number of “slots” ABACBD

7 Virtual Circuits Versus Packet Switching l Circuit switching: »Uses short connection identifiers to forward packets »Switches know about the connections so they can more easily implement features such as quality of service »Virtual circuits form basis for traffic engineering: VC identifies long-lived stream of data that can be scheduled l Packet switching: »Use full destination addresses for forwarding packets »Can send data right away: no need to establish a connection first »Switches are stateless: easier to recover from failures »Adding QoS is hard »Traffic engineering is hard: too many packets!

8 Packet switched vs. VC A B R2 R1 R3 R4 R1 packet forwarding table: Dst R2 R1 VC table: VC 1 R2 VC 2 R3 Different paths to same destination! (useful for traffic engineering!) VCI Payload Dst Payload Dst

9 Virtual Circuit A B R2 R1 R3 R4 R1 VC table: VC 5 R2 VCI Payload Dst R2 VC table: VC 5 R4 Challenges: - How to set up path? - How to assign IDs??

10 Virtual Circuit Switching: Label (“tag”) Swapping l Global VC ID allocation -- ICK! Solution: Per-link uniqueness. Change VCI each hop. Input Port Input VCI Output Port Output VCI R1: R2: R4: A B R2 R1 R3 R4Dst

11 Label (“tag”) Swapping l Result: Signalling protocol must only find per-link unused VCIs. »“Link-local scope” »Connection setup can proceed hop-by-hop. –Good news for our setup protocols!

12 Virtual Circuits In Practice l Asynchronous Transfer Mode (ATM): Teleco approach »Kitchen sink. Based on voice, support file transfer, video, etc., etc. »Intended as IP replacement. That didn’t happen. :) »Today: Underlying network protocol in many teleco networks. E.g., DSL speaks ATM. IP over ATM in some cases. l MPLS: The “IP Heads” answer to ATM »Stole good ideas from ATM »Integrates well with IP »Today: Used inside some networks to provide VPN support, traffic engineering, simplify core. l Other nets just run IP. l Older tech: Frame Relay »Only provided PVCs. Used for quasi-dedicated 56k/T1 links between offices, etc. Slower, less flexible than ATM.

13 ATM Cell Switching l Small, fixed-size cells [Fixed-length data][header] l Why? »Efficiency: All packets the same –Easier hardware parallelism, implementation »Switching efficiency: –Lookups are easy -- table index. »Result: Very high cell switching rates. »Initial ATM was 155Mbit/s. Ethernet was 10Mbit/s at the same time. (!) l How do you pick the cell size?

14 ATM Features l Fixed size cells (53 bytes). »Why 53? l Virtual circuit technology using hierarchical virtual circuits (VP,VC). l PHY (physical layer) processing delineates cells by frame structure, cell header error check. l Support for multiple traffic classes by adaptation layer. »E.g. voice channels, data traffic l Elaborate signaling stack. »Backwards compatible with respect to the telephone standards l Standards defined by ATM Forum. »Organization of manufacturers, providers, users

15 Why 53 Bytes? l Small cells favored by voice applications »delays of more than about 10 ms require echo cancellation »each payload byte consumes 125  s (8000 samples/sec) l Large cells favored by data applications »Five bytes of each cell are overhead l France favored 32 bytes »32 bytes = 4 ms packetization delay. »France is 3 ms wide. »Wouldn’t need echo cancellers! l USA, Australia favored 64 bytes »64 bytes = 8 ms »USA is 16 ms wide »Needed echo cancellers anyway, wanted less overhead l Compromise

16 Multi Protocol Label Switching - MPLS l Selective combination of VCs + IP »Today: MPLS useful for traffic engineering, reducing core complexity, and VPNs l Core idea: Layer 2 carries VC label »Could be ATM (which has its own tag) »Could be a “shim” on top of Ethernet/etc.: »Existing routers could act as MPLS switches just by examining that shim -- no radical re-design. Gets flexibility benefits, though not cell switching advantages Layer 2 header Layer 3 (IP) header Layer 2 header Layer 3 (IP) header MPLS label

17 MPLS + IP l Map packet onto Forward Equivalence Class (FEC) »Simple case: longest prefix match of destination address »More complex if QoS of policy routing is used l In MPLS, a label is associated with the packet when it enters the network and forwarding is based on the label in the network core. »Label is swapped (as ATM VCIs) l Potential advantages. »Packet forwarding can be faster »Routing can be based on ingress router and port »Can use more complex routing decisions »Can force packets to followed a pinned route

18 MPLS core, IP interface A B R2 R1 R3 R4 C D IP MPLS tag assigned IP MPLS forwarding in core MPLS tag stripped

19 MPLS use case #1: VPNs A B R2 R1 R3 R4 C D /24 MPLS tags can differentiate green VPN from orange VPN.

20 MPLS use case #2: Reduced State Core A R2 R1 R3 R4 C. EBGP A R2 R1 R3 R4 C EBGP IP Core MPLS Core A-> C pkt Internal routers must know all C destinations R1 uses MPLS tunnel to R4. R1 and R4 know routes, but R2 and R3 don’t.

21 MPLS use case #3: Traffic Engineering l As discussed earlier -- can pick routes based upon more than just destination l Used in practice by many ISPs, though certainly not all.

22 MPLS Mechanisms l MPLS packet forwarding: implementation of the label is technology specific. »Could be ATM VCI or a short extra “MPLS” header l Supports stacked labels. »Operations can be “swap” (normal label swapping), “push” and “pop” labels. –VERY flexible! Like creating tunnels, but much simpler -- only adds a small label. LabelCoSSTTL CoS: Class of Service S: Bottom of Stack

23 MPLS Discussion l Original motivation. »Fast packet forwarding: –Use of ATM hardware –Avoid complex “longest prefix” route lookup –Limitations of routing table sizes »Quality of service l Currently mostly used for traffic engineering and network management. »LSPs can be thought of as “programmable links” that can be set up under software control » on top of a simple, static hardware infrastructure

24 Layer 3 Virtual Private Networks Private communications over a public network A set of sites that are allowed to communicate with each other Defined by a set of administrative policies –determine both connectivity and QoS among sites –established by VPN customers –One way to implement: BGP/MPLS VPN mechanisms (RFC 2547)

25 Building Private Networks Separate physical network –Good security properties –Expensive! Secure VPNs –Encryption of entire network stack between endpoints Layer 2 Tunneling Protocol (L2TP) –“PPP over IP” –No encryption Layer 3 VPNs Privacy and interconnectivity (not confidentiality, integrity, etc.)

26 Layer 3 BGP/MPLS VPNs Isolation: Multiple logical networks over a single, shared physical infrastructure Tunneling: Keeping routes out of the core VPN A/Site 1 VPN A/Site 2 VPN A/Site 3 VPN B/Site 2 VPN B/Site 1 VPN B/Site 3 CE A1 CE B3 CE A3 CE B2 CE A2 CE 1 B1 CE 2 B1 PE 1 PE 2 PE 3 P1P1 P2P2 P3P3 10.1/ / / / / /16 BGP to exchange routes MPLS to forward traffic

27 High-Level Overview of Operation IP packets arrive at PE (Provider Edger router) Destination IP address is looked up in forwarding table for customer site Datagram sent to customer’s network using tunneling (i.e., an MPLS label-switched path)

28 BGP/MPLS VPN key components Forwarding in the core: MPLS Distributing routes between PEs: BGP Isolation: Keeping different VPNs from routing traffic over one another –Constrained distribution of routing information –Multiple “virtual” forwarding tables Unique addresses: VPN-IPV4 Address extension (8- byte Route Distinguisher (RD) added to IPV4 address)

29 Virtual Routing and Forwarding (VFR) Separate tables per customer at each router /24 RD: Green /24 RD: Blue /24 Customer 1 Customer 2 Customer 1 Customer 2

30 Routing: Constraining Distribution Performed by Service Provider using route filtering based on BGP Extended Community attribute – BGP Community is attached by ingress PE route – filtering based on BGP Community is performed by egress PE Site 1Site 2Site 3 Static route, RIP, etc. RD: /24 Route target: Green Next-hop: A A /24 BGP

31 BGP/MPLS VPN Routing in Cisco IOS ip vrf Customer_A rd 100:110 route-target export 100:1000 route-target import 100:1000 ! ip vrf Customer_B rd 100:120 route-target export 100:2000 route-target import 100:2000 Customer ACustomer B

32 Forwarding PE and P routers have BGP next-hop reachability through the backbone IGP Labels are distributed through LDP (Label Distribution Protocol) (hop-by-hop) corresponding to BGP Next-Hops Two-Label Stack is used for packet forwarding Top label indicates Next-Hop (interior label) Second level label indicates outgoing interface or VRF (exterior label) IP Datagram Label 2 Label 1 Layer 2 Header Corresponds to LSP (Label Switched Path) of BGP next-hop (PE) Corresponds to VRF/interface at exit

33 Forwarding in BGP/MPLS VPNs Step 1: Packet arrives at incoming interface –Site VRF determines BGP next-hop and Label #2 IP Datagram Label 2 Step 2: BGP next-hop lookup, add corresponding LSP (also at site VRF) IP Datagram Label 2 Label 1