Virtual Link Layer

14-740: Fundamentals of Computer Networks Bill Nace

Material from Computer Networking: A Top Down Approach, 6th edition. J.F. Kurose and K.W. Ross traceroute

• VLANs • Link Virtualization • Asynchronous Transfer Mode (ATM) • Multiprotocol Label Switching (MPLS)

14-740: Fall 2017 2 Motivation

Can I join these 4 boxes together?

14-740: Fall 2017 3 Port-based VLAN

• Static VLAN: VLAN=Group of Ports • Port = switches’ wire connection • Two VLANs configured on a 16-port switch • How do the VLANs communicate with each other? Connecting VLANs

• What happens when the same VLAN exists on multiple switches? • Perhaps for architectural reasons • Ex: ECE Faculty in HH and CIC

But, what if you have MANY different VLANs? Connecting VLANs (2)

• Trunked connection: port belongs to all VLANs ➙ all frames at that port are forwarded to all VLANs

• But, how does the receiving side know which VLAN a particular frame belongs to? 802.1Q Tagged Ethernet

• VLAN identifier added to Ethernet frame • 4-byte VLAN tag • Includes 12-bit VLAN identifier • Sending switch adds tag, receiving switch parses and removes tag

14-740: Fall 2017 8 traceroute

• VLANs • Link Virtualization • Asynchronous Transfer Mode (ATM) • Multiprotocol Label Switching (MPLS)

14-740: Fall 2017 9 Evolving Understanding of Link Layer

• Start of Lecture 20 • “Link = channel connecting adjacent nodes” • Point-to-Point links • Broadcast links The Zen of “Link”

• In Lecture 21, started to realize links can be more complex than a simple wire • Link = channel, but can include switches, hubs, etc • Link can also be PPP/HDLC • Uses complex telephony network, but looks to IP like a single wire Link Virtualization

• What if an entire network could act as a link? • ATM (for instance) connects 2 routers, looks like a link • But, ATM network consists of multiple routers, different standards, its own network stack, different architecture from TCP/IP!!!! • Layered architecture will let this happen

14-740: Fall 2017 12 traceroute

• VLANs • Link Virtualization • Asynchronous Transfer Mode (ATM) • Multiprotocol Label Switching (MPLS)

14-740: Fall 2017 13 ATM: A Short Introduction

• ATM = Asynchronous Transfer Mode • Vision: single integrating network technology for real-time video/audio, plus text/images • Typically used for telephony or WAN scenarios • Designed to be low jitter -- great for streaming video • Connection oriented -- routing

14-740: Fall 2017 14 ATM Stack: 3 Layers

• ATM Layer • Sort of a • Packet is called a “cell” • 5 byte header • 48 byte payload (halfway between 32 & 64) • Virtual Circuit routing with explicit congestion control • Permanent VCs for long-lived connections

14-740: Fall 2017 15 ATM Stack: 3 Layers

• Physical Layer • Supports a variety of media • Fiber and copper • Inserts a constant flow of bits, even when no cells are available for transmission • Manages cell delineation so receiver can detect cell boundaries

14-740: Fall 2017 16 ATM Stack: 3 Layers

• ATM Adaptation Layer (AAL) • Analogous to Transport Layer • Segmentation / Reassembly • 5 different services defined • Constant Bit Rate, VBR (3 types), Datagram • Choice negotiated at circuit initialization

14-740: Fall 2017 17 ATM as a Virtual Link • IP “over” ATM • Fully connect ATM border routers with virtual circuits

14-740: Fall 2017 20 A Packet's Journey • IP handoff to AAL5 at ingress border router • Use ATMARP (like ARP) to get VCI addr • AAL will negotiate circuit setup • IP packet fragmented into cells • AAL will respond to congestion events

14-740: Fall 2017 22 Datagram Journey (2) • AAL passes each cell to ATM • ATM moves cell from interior router to router across the network • At egress border router, cells handed to AAL5 • Cells reassembled into IP datagram

14-740: Fall 2017 23 Link Virtualization Limits

• Many different link technologies • Quick RFC search found IP over {FDDI, PPP, Token-ring, HIPPI, MAPOS, Ethernet, NBMA, ARCnet, InfiniBand, Frame Relay, TV Broadcast signals, Firewire, MPLS, Optical, MPEG-2, Fibre channel, Avians, Semaphore Flags, LoWPAN, 802.15.4, 802.16, SLIP, NetBIOS, IPX, SMDS} only 2 of which are April Fools jokes

14-740: Fall 2017 24 traceroute

• VLANs • Link Virtualization • Asynchronous Transfer Mode (ATM) • Multiprotocol Label Switching (MPLS)

14-740: Fall 2017 25 A short aside: Encapsulation

HTTP Request

TCP Segment

IP Packet

Ethernet Frame Key Insight

• Routers within a network can label packets in any way they wish • Label is used for network management • other router removes the label before the packet exits the network • Where do you put this label? • between data-link layer and network layer headers

14-740: Fall 2017 28 Multiprotocol Label Switching

• IP routing is slowed by the variable length address searching in the forwarding table • Remember longest matching prefix rule? • MPLS replaces IP routing within a network by using a fixed length label • RFC 3031, 3032

14-740: Fall 2017 29 MPLS Packet Format

• Label (20 bits) • Traffic Class (3 bits): Used for QoS priority, ECN • Bottom of Stack (1 bit) • Packet may have a “stack” of labels • Time To Live (8 bits) • Same operation as in IP, copied from/into IP header by ingress / egress router

14-740: Fall 2017 30 Router Operation • Inside the network (Label Switch Router) • On receipt of packet, lookup label • Replace label for next hop • Edge of the network (Label Edge Router) • Incoming packet: convert IP to label, push MPLS header • Outgoing packet: pop MPLS header, forward based on IP address

14-740: Fall 2017 31 MPLS Routing • MPLS-capable router has IP forwarding table plus MPLS forwarding table in out dest out if label label in out dest out if - A 10 0 label label - B 12 0 10 A 6 1 - A 8 1 12 B - 0

in out in out dest out if dest out if label label label label 8 A 6 0 6 A - 0 MPLS Forwarding

• Notice that Forwarding process doesn’t examine the IP header • Except at entry to MPLS network • Forwarding table is filled (i.e. labels are distributed) using the RSVP-TE protocol or LDP (Label Distribution Protocol) • Can populate with any route desired • source-specific forwarding • Multiple paths possible • Paths chosen based on performance, policy, ... MPLS • Lots more cool stuff you can do with MPLS • Backup links with failover capability • Virtual Private Networks • Connects disjoint networks and keeps them isolated from other customers • Exotic Traffic Engineering • Very useful tool ➙ I predict lots of excellent tech, research ➙ you should learn more Lesson Objectives

• Now, you should be able to: • describe the use of virtual LANs (VLAN) to allow multiple subnets to be connected with a single port-based switch. Be sure to include broadcast domain separation, flexibility for re-assigning hosts within the VLAN, connection mechanisms for when the same VLAN is connected across switches • describe how link virtualization allows links to be more than just a simple "channel connecting adjacent nodes"

14-740: Fall 2017 35 • You should be able to: • diagram the encapsulation of messages inside segments inside packets inside frames. Ensure you can handle cases such as ICMP and ARP • describe MPLS, including advantages, labeled frame formats (why is the label between link-layer and IP headers?), router operations. Be able to describe what an MPLS forwarding table might look like, given some MPLS enabled network scenario