Virtual Private Networks Identifier, September 1999
Total Page:16
File Type:pdf, Size:1020Kb
VirtualVirtual PrivatePrivate NetworksNetworks Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 [email protected] Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-09/ Washington University in St. Louis CSE571S ©2009 Raj Jain 17-1 Overview Overview: What, When, Issues Types of VPNs: PE/CE based, L2 vs. L3 Point-to-Point Protocol (PPP) VPN Tunneling Protocols: GRE, PPTP, L2TPv3, MPLS Washington University in St. Louis CSE571S ©2009 Raj Jain 17-2 WhatWhat isis aa VPN?VPN? Private Network: Uses leased lines Virtual Private Network: Uses public Internet Internet Service Provider Washington University in St. Louis CSE571S ©2009 Raj Jain 17-3 WhenWhen toto VPN?VPN? Modest Many Bandwidth Locations QoS not Long Critical Distance More Locations, Longer Distances, Less Bandwidth/site, QoS (Quality of Service) less critical ⇒ VPN more justifiable Fewer Locations, Shorter Distances, More Bandwidth/site, QoS more critical ⇒ VPN less justifiable Washington University in St. Louis CSE571S ©2009 Raj Jain 17-4 VPNVPN DesignDesign IssuesIssues 1. Security 2. Address Translation 3. Performance: Throughput, Load balancing (round-robin DNS), fragmentation 4. Bandwidth Management: RSVP (Resource Reservation Protocol) 5. Availability: Good performance at all times 6. Scalability: Number of locations/Users 7. Interoperability: Among vendors, Internet Service Providers (ISPs), customers (for extranets) ⇒ Standards Compatibility, With firewall Washington University in St. Louis CSE571S ©2009 Raj Jain 17-5 DesignDesign IssuesIssues (Cont)(Cont) 8. Compression: Reduces bandwidth requirements 9. Manageability: SNMP (Simple Network Management Protocol), Browser based, Java based, centralized/distributed 10. Accounting, Auditing, and Alarming 11. Protocol Support: IP, non-IP (IPX) 12. Platform and O/S support: Windows, UNIX, MacOS, HP/Sun/Intel 13. Installation: Changes to desktop or backbone only 14. Legal: Exportability, Foreign Govt Restrictions, Key Management Infrastructure (KMI) initiative ⇒ Need key recovery Washington University in St. Louis CSE571S ©2009 Raj Jain 17-6 TypesTypes ofof VPNsVPNs Ends: ¾ WAN VPN: Branch offices ¾ Access VPN: Roaming Users ¾ Extranet VPNs: Suppliers and Customers Branch Office ISP Head Office Partner Telecommuter Washington University in St. Louis CSE571S ©2009 Raj Jain 17-7 TypesTypes ofof VPNsVPNs (Cont)(Cont) Payload Layer: Layer 1 (L1), Layer 2 (L2) VPN (Ethernet), L3 VPN (IP) Tunneling Protocol: MPLS (Multiprotocol Label Switching), GMPLS (Generalized MPLS), L2TPv3 (Layer 2 Tunneling Protocol version 3), PPTP (Point to Point Tunneling Protocol) Who is in charge?: Provider Edge Device (PE Based) or Customer Edge Device (CE Based) VPN Site-to-Site Access PPVPN CE Based L3 L2 L1 L3 L2 L1 MPLS Virtual VPWS VPLS IPsecL2TPv3 GRE Router PPTP Washington University in St. Louis CSE571S ©2009 Raj Jain 17-8 CECE BasedBased VPNsVPNs Customers Edge routers implement IPsec tunnels Customer Net 2 CE Customer Customer CE CE Net 1 Net 4 CE Customer Net 3 Washington University in St. Louis CSE571S ©2009 Raj Jain 17-9 PEPE BasedBased VPNsVPNs Service providers offers privacy, QoS, and Routing Customer uses standard routers Customer Net 2 CE PE Customer Customer CE PE PE CE Net 1 Net 4 PE Washington University in St. Louis CSE571S ©2009 Raj Jain 17-10 LayerLayer 11 VPNsVPNs A single fiber can carry multiple wavelengths, which can be rearranged dynamically to provide a VPN for customers. Similarly, a single SONET (Synchronous optical network) stream can be shared by multiple customers. Connectivity is at layer 1. Any layer 2 signal (Ethernet, ATM, etc) or multiple L2 signals can be carried. [RFC 4847] Can be used by carrier’s carriers PE Customer Customer CE PE PE CE Net 1 Net 2 PE Washington University in St. Louis CSE571S ©2009 Raj Jain 17-11 LayerLayer 22 VPNsVPNs Customers' Layer 2 packets are encapsulated and delivered at the other end Looks like the two ends are on the same LAN or same wire ⇒ Provides Ethernet connectivity Works for all Layer 3 protocols Virtual Private Wire Service (VPWS) Virtual Private LAN Service (VPLS) RFC4664, "Framework for L2 VPNs," Sep 2006. Provider Net Provider Net Washington University in St. Louis CSE571S ©2009 Raj Jain 17-12 LayerLayer 33 VPNVPN Provides Layer 3 connectivity Looks like the two customer routers are connected Usually designed for IP packets Provider Net Washington University in St. Louis CSE571S ©2009 Raj Jain 17-13 PPP:PPP: IntroductionIntroduction Point-to-point Protocol Originally for User-network connection Now being used for router-router connection Three Components: Data encaptulation, Link Control Protocol (LCP), Network Control Protocols (NCP) Up Opened Dead Establish Authenticate Fail Fail Success/None Down Closing Terminate Network Washington University in St. Louis CSE571S ©2009 Raj Jain 17-14 PPPPPP ProceduresProcedures Typical connection setup: ¾ Home PC Modem calls Internet Provider's router: sets up physical link ¾ PC sends series of LCP packets Select PPP (data link) parameters Authenticate ¾ PC sends series of NCP packets Select network parameters E.g., Get dynamic IP address Transfer IP packets Washington University in St. Louis CSE571S ©2009 Raj Jain 17-15 VPNVPN TunnelingTunneling ProtocolsProtocols GRE: Generic Routing Encaptulation (RFC 1701/2) PPTP: Point-to-point Tunneling Protocol L2TP: Layer 2 Tunneling protocol IPsec: Secure IP MPLS: Multiprotocol Label Switching Washington University in St. Louis CSE571S ©2009 Raj Jain 17-16 GREGRE Delivery Header GRE Header Payload Generic Routing Encaptulation (RFC 1701/1702) Generic ⇒ X over Y for any X or Y Optional Checksum, Loose/strict Source Routing, Key Key is used to authenticate the source Over IPv4, GRE packets use a protocol type of 47 Allows router visibility into application-level header Restricted to a single provider network ⇒ end-to-end Washington University in St. Louis CSE571S ©2009 Raj Jain 17-17 PPTPPPTP Network PPTP ISP Access Client Server Server PPTP Tunnel PPTP = Point-to-point Tunneling Protocol Developed jointly by Microsoft, Ascend, USR, 3Com and ECI Telematics PPTP server for NT4 and clients for NT/95/98 Washington University in St. Louis CSE571S ©2009 Raj Jain 17-18 PPTPPPTP PacketsPackets Network Private PPTP Internet Access Client Network Server Server PPP PPP Public IP IP IP Addressing GRE GRE PPP PPP PPP IP/IPX/NetBEUI IP/IPX/NetBEUI IP/IPX/NetBEUI Data Data Data Internal IP Encrypted Addressing Washington University in St. Louis CSE571S ©2009 Raj Jain 17-19 L2TPL2TP Layer 2 Tunneling Protocol L2F = Layer 2 Forwarding (From CISCO) L2TP = L2F + PPTP Combines the best features of L2F and PPTP Easy upgrade from L2F or PPTP Allows PPP frames to be sent over non-IP (Frame relay, ATM) networks also (PPTP works on IP only) Allows multiple (different QoS) tunnels between the same end-points. Better header compression. Supports flow control Washington University in St. Louis CSE571S ©2009 Raj Jain 17-20 L2TPv3L2TPv3 Provider Net Allows service providers to offer L2 VPN over IP network. L2TPv2 was for tunneling PPP over packet switched data networks (PSDN) V3 generalizes it for other protocols over PSDN ⇒ PPP specific header removed Can handle HDLC (High-Level Data Link Control), Ethernet, 802.1Q VLANs, Frame relay, packet over SONET (Synchronous Optical Network) Washington University in St. Louis CSE571S ©2009 Raj Jain 17-21 L2TPv3L2TPv3 (Cont)(Cont) Universal Transport Interface (UTI) is a pre-standard effort for transporting L2 frames. L2TPv3 extends UTI and includes it as one of many supported encapsulations. L2TPv3 has a control plane using reliable control connection for establishment, teardown and maintenance of individual sessions. RFC4667, "L2 VPN extensions for L2TP," Sept 2006 Ref: L2TPv3 FAQ, www.cisco.com/warp/public/cc/so/neso/vpn/unvpnst/ 2tpv3_qp.pdf Washington University in St. Louis CSE571S ©2009 Raj Jain 17-22 L2TPv3L2TPv3 FrameFrame FormatFormat Delivery Header L2TPv3 Header Payload 20B 12B Tunnel Identifier Tunnel Cookie 4B 8B Delivery Header: IPv4 header Payload: L2 or L3 packet Washington University in St. Louis CSE571S ©2009 Raj Jain 17-23 MultiprotocolMultiprotocol LabelLabel SwitchingSwitching (MPLS)(MPLS) PBXPBX PBXPBX 1 3 5 2 3 Allows virtual circuits in IP Networks (May 1996) Each packet has a virtual circuit number called ‘label’ Label determines the packet’s queuing and forwarding Circuits are called Label Switched Paths (LSPs) LSP’s have to be set up before use Allows traffic engineering Washington University in St. Louis CSE571S ©2009 Raj Jain 17-24 LabelLabel SwitchingSwitching ExampleExample Ethernet Header IP Header Payload Layer 2.5 Ethernet Header Label IP Header Payload 64 3 5 <64> A R1 <3> <5> R3 C B R2 <2> <5> <3> 5 3 2 Washington University in St. Louis CSE571S ©2009 Raj Jain 17-25 LabelLabel AssignmentAssignment Unsolicited: Topology driven ⇒ Routing protocols exchange labels with routing information. Many existing routing protocols are being extended: BGP, OSPF On-Demand: ⇒ Label assigned when requested, e.g., when a packet arrives ⇒ latency Label Distribution Protocol called LDP RSVP has been extended to allow label request and response Washington University in St. Louis CSE571S ©2009 Raj Jain 17-26 VPNVPN SupportSupport withwith MPLSMPLS Labels contain Class of Service (CoS), Stack Indicator (SI), and Time to Live (TTL) Label Switch/Router Private ISP R S S S S R S Unlabeled Labeled Unlabeled Packet Packet