Floodless in SEATTLE: A Scalable Ethernet Architecture for Large Enterprises

Similar documents
Scalable and Efficient Self-configuring Networks. Changhoon Kim

Floodless in SEATTLE: A Scalable Ethernet Architecture for Large Enterprises

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies

Floodless in SEATTLE A Scalable Ethernet Architecture for Large Enterprises By Changhoon Kim, Ma/hew Caesar, and Jennifer Rexford

Principles behind data link layer services:

Principles behind data link layer services:

Principles behind data link layer services

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 18

CSC 4900 Computer Networks: Link Layer (2)

CS 43: Computer Networks Switches and LANs. Kevin Webb Swarthmore College December 5, 2017

Summary of MAC protocols

L2 Addressing and data plane. Benjamin Baron

Medium Access Protocols

Communication Networks

CS 455/555 Intro to Networks and Communications. Link Layer Addressing, Ethernet, and a Day in the Life of a Web Request

Principles behind data link layer services:

CSCI Computer Networks

Hubs. twisted pair. hub. 5: DataLink Layer 5-1

Catalyst 1900 Series and Catalyst 2820 Series Enterprise Edition Software Configuration Guide

CS 457 Lecture 11 More IP Networking. Fall 2011

- Hubs vs. Switches vs. Routers -

Ethernet. EE 122: Intro to Communication Networks. Fall 2007 (WF 4-5:30 in Cory 277) Vern Paxson TAs: Lisa Fowler, Daniel Killebrew & Jorge Ortiz

The Link Layer and LANs: Ethernet and Swiches

Switching & ARP Week 3

Link layer: introduction

Reminder: Datalink Functions Computer Networking. Datalink Architectures

ECE 158A: Lecture 13. Fall 2015

Chapter 3 Part 2 Switching and Bridging. Networking CS 3470, Section 1

Transparent Bridging and VLAN

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

List of groups known at each router. Router gets those using IGMP. And where they are in use Where members are located. Enhancement to OSPF

Switching and Forwarding Reading: Chapter 3 1/30/14 1

Lecture 9 The Data Link Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Internetwork Expert s CCNP Bootcamp. Hierarchical Campus Network Design Overview

LAN Interconnection and Other Link Layer Protocols

Mobile Communications. Ad-hoc and Mesh Networks

Fundamental Questions to Answer About Computer Networking, Jan 2009 Prof. Ying-Dar Lin,

CS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013

Lecture 9: Switched Ethernet Features: STP and VLANs

Scalable Enterprise Networks with Inexpensive Switches

Lecture 6: Bridges and Switches. CS/ECE 438: Communication Networks Prof. Matthew Caesar February 19, 2010

Better Approach To Mobile Adhoc Networking

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

VXLAN Overview: Cisco Nexus 9000 Series Switches

Internetworking Part 1

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

ARP, IP. Chong-Kwon Kim. Each station (or network interface) should be uniquely identified Use 6 byte long address

More on Link Layer. Recap of Last Class. Interconnecting Nodes in LAN (Local-Area Network) Interconnecting with Hubs. Computer Networks 9/21/2009

Professor Yashar Ganjali Department of Computer Science University of Toronto.

Internetworking Part 2

Chapter 4. DataLink Layer. Reference: Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.

Missing pieces + Putting the pieces together

Routing Between VLANs Overview

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols

Router Architecture Overview

Introducing Campus Networks

Data Center Configuration. 1. Configuring VXLAN

EEC-684/584 Computer Networks

Lecture 3: Packet Forwarding

Computer Networking Introduction

Multicast Communications. Slide Set were original prepared by Dr. Tatsuya Susa

CSCD 330 Network Programming Spring 2017

Objectives. Hexadecimal Numbering and Addressing. Ethernet / IEEE LAN Technology. Ethernet

Example: Configuring DHCP Snooping, DAI, and MAC Limiting on an EX Series Switch with Access to a DHCP Server Through a Second Switch

Last time. BGP policy. Broadcast / multicast routing. Link virtualization. Spanning trees. Reverse path forwarding, pruning Tunneling

Routing Between VLANs Overview

What is Multicasting? Multicasting Fundamentals. Unicast Transmission. Agenda. L70 - Multicasting Fundamentals. L70 - Multicasting Fundamentals

Good day. Today we will be talking about Local Internetworking What is Internetworking? Internetworking is the connection of different networks.

CSC 401 Data and Computer Communications Networks

Unicast Routing in Mobile Ad Hoc Networks. Dr. Ashikur Rahman CSE 6811: Wireless Ad hoc Networks

How Did LANs Evolve to Multilayer Switching?

Missing pieces + Putting the pieces together

Table of Contents Chapter 1 Multicast Routing and Forwarding Configuration

Networking for Data Acquisition Systems. Fabrice Le Goff - 14/02/ ISOTDAQ

LOCAL AREA NETWORKS Q&A Topic 4: VLAN

CS4450. Computer Networks: Architecture and Protocols. Lecture 20 Pu+ng ALL the Pieces Together. Spring 2018 Rachit Agarwal

Some portions courtesy Srini Seshan or David Wetherall

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing

Review. Error Detection: CRC Multiple access protocols. LAN addresses and ARP Ethernet. Slotted ALOHA CSMA/CD

CS 3516: Advanced Computer Networks

Lecture 20: Link Layer

Bridging and Switching Basics

Lecture 5 The Data Link Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

DD2490 p Layer 2 networking. Olof Hagsand KTH CSC

Growth. Individual departments in a university buy LANs for their own machines and eventually want to interconnect with other campus LANs.

CompSci 356: Computer Network Architectures. Lecture 8: Spanning Tree Algorithm and Basic Internetworking Ch & 3.2. Xiaowei Yang

Lecture 3: Packet Forwarding

Advanced Computer Networks. Network Virtualization

Chapter 4 NETWORK HARDWARE

Lecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011

Planning for Information Network

Content. 1. Introduction. 2. The Ad-hoc On-Demand Distance Vector Algorithm. 3. Simulation and Results. 4. Future Work. 5.

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing

Example: Configuring DHCP Snooping and DAI to Protect the Switch from ARP Spoofing Attacks

To contain/reduce broadcast traffic, we need to reduce the size of the network (i.e., LAN).

Network layer: Overview. Network Layer Functions

Overlay and P2P Networks. Introduction and unstructured networks. Prof. Sasu Tarkoma

Transcription:

Floodless in SEATTLE: A Scalable Ethernet Architecture for Large Enterprises Full paper available at http://www.cs.princeton.edu/~chkim Changhoon Kim, Matthew Caesar, and Jennifer Rexford Outline of Today s Lecture Review Ethernet bridging New challenges to Ethernet Control-plane scalability Data-plane efficiency SEATTLE as a solution 2 1

Quick Review of Ethernet Ethernet Dominant wired LAN technology Covers the first IP-hop in most enterprises/campuses First widely used LAN technology Simpler, cheaper than token LANs, ATM, and IP Kept up with speed race: 10 Mbps 10+ Gbps Metcalfe s Ethernet sketch 4 2

Ethernet Frame Structure MAC address Flat, globally unique, and permanent 48-bit value Adaptor passes frame to network-level protocol If destination address matches the adaptor Or the destination address is the broadcast address Otherwise, adapter discards frame Type: indicates the higher layer protocol Usually IP 5 Ethernet Bridging: Routing at L2 Routing determines paths to destinations through which traffic is forwarded Routing takes place at any layer (including L2) where devices are reachable across multiple hops App Layer P2P, or CDN routing Overlay routing IP Layer Link Layer IP routing Ethernet bridging 6 3

Ethernet Bridges Self-learn Host Info Bridges (switches) forward frames selectively Forward frames only on segments that need them Switch table Maps destination MAC address to outgoing interface Goal: construct the switch table automatically B A C switch D 7 Self Learning: Building the Table When a frame arrives Inspect the source MAC address Associate the address with the incoming interface Store the mapping in the switch table Use a timeout to eventually forget the mapping Switch learns how to reach A. B A C D 8 4

Self Learning: Handling Misses Floods when frame arrives with unfamiliar destination or broadcast address Forward the frame out all of the interfaces except for the one where the frame arrived Hopefully, this case won t happen very often When in doubt, shout! A B C D 9 Flooding Can Lead to Loops Flooding can lead to forwarding loops, confuse bridges, and even collapse the entire network E.g., if the network contains a cycle of switches Either accidentally, or by design for higher reliability 10 5

Solution: Spanning Trees Ensure the topology has no loops Avoid using some of the links when flooding Spanning tree Sub-graph that covers all vertices but contains no cycles Links not in the spanning tree do not forward frames 11 Interaction with the Upper Layer (IP) Bootstrapping end hosts by automating host configuration DHCP(Dynamic Host Configuration Protocol) Broadcast DHCP discovery and request messages Bootstrapping each conversation by enabling resolution from IP to MAC addr ARP(Address Resolution Protocol) Broadcast ARP requests Both work via Ethernet-layer broadcasting 12 6

Broadcast Domain and IP Subnet Ethernet broadcast domain A group of hosts and switches to which the same broadcast or flooded frame is delivered Broadcast domain!= Collision domain Broadcast domain == IP subnet Uses ARP to reach other hosts in the same subnet Uses default GW to reach hosts in different subnets Too large a broadcast domain leads to Excessive flooding and broadcasting overhead Insufficient security/performance isolation 13 New Challenges, and SEATTLE as a solution 7

Ethernet in Enterprise Nets? Ethernet has substantial benefits Simplifies network management, greatly reducing operational expense Naturally supports host mobility Enhances network flexibility Why do we still use IP routing inside a single network? 15 Ethernet Doesn t Scale! Reasons for poor scalability Network-wide flooding Frequent broadcasting Unbalanced link utilization, low availability and throughput due to tree-based forwarding Limitations quickly growing with network size Scalability requirement is growing very fast 50K ~ 1M hosts 16 8

Current Practice A hybrid architecture comprised of several small Ethernet-based IP subnets interconnected by routers IP subnet == Ethernet broadcast domain (LAN or VLAN) R R Loss of self-configuring capability Complexity in implementing policies R R Limited mobility R support Inflexible route selection R Sacrifices Ethernet s simplicity and IP s efficiency only for scalability 17 Key Question and Contribution Can we maintain the same properties as Ethernet, yet scales to large networks? SEATTLE: The best of IP and Ethernet Two orders of magnitude more scalable than Ethernet Broadcast domains in any size Vastly simpler network management, with host mobility and network flexibility Shortest path forwarding 18 9

Objectives and Solutions Objective Approach Solution 1. Avoiding flooding 2.Restraining broadcasting 3. Reducing routing state 4. Shortest-path forwarding Never broadcast unicast traffic Bootstraphosts via unicast Populate host info only when and where it is needed Allowswitches to learn topology * Meanwhile, avoid modifying end hosts Network-layer one-hop DHT Traffic-driven resolution with caching L2 link-state routing maintaining only switch-level topology 19 Network-layer One-hop DHT Switches maintain <key, value> pairs by commonly using a hash function F F: Consistent hash mapping a key to a switch Fis defined over the live set of switches LS routing ensures each switch knows about all the other live switches, enabling one-hopdht operations 20 10

One-hop DHT Details and Benefits Benefits Owner of <k,v> User Fast and efficient reaction to changes B A Apublishes <k,v> to C Bretrieves <k,v> from C Reliability and capacity naturally growing with network size D Consistent-hash ring F(k) = C C E k Resolver 21 Location Resolution <key, val> = <MAC addr, location> x Owner Host discovery A Hash F(MACx) = B Publish <MACx, A> Tunnel to A C Forward directly from Dto A Tunnel to B y Traffic to User x Hash D F(MACx ) = B Switches End hosts Control message Data traffic Resolver B Store <MACx, A> Notify <MACx, A> E 22 11

Address Resolution <key, val> = <IP addr, MAC addr> x <IPx,MACx> A Hash F(IPx) = B C Unicast look-up to B Broadcast ARP request for IPx D y Hash F(IPx) = B Unicast reply <IPx, MACx, A> B Store <IPx, MACx, A> Traffic following ARP takes a shortest path without separate location resolution E 23 Handling Network Dynamics Events not modifying the set of live switches E.g., most link failure/recovery LS routing simply finds new shortest paths Events modifying the live set of switches E.g., switch failure/recovery Fworks differently after a change Two simple operations ensure correctness If F new (k)!= F old (k), owner re-publishes to F new (k) Remove any <k,v> published by non-existing owners 24 12

Handling Host Dynamics Host location, MAC-addr, or IP-addr can change x Old location New location < x, A > < x, D > D A < x, D > Dealing with host mobility B F < x, A > < x, D > Resolver < x, A > < x, D > Host talking with x y MAC- or IP-address change can be handled similarly C E 25 Ensuring Ethernet Compatibility Scalable host bootstrapping using the DHT Hashes a pre-determined string (e.g., DHCP_SERVER ) to resolve DHCP server Group: Scalable and flexible alternative of VLAN A group is a highly scalable location-independent broadcast domain Resolver controls inter-group access Broadcast frames in each group are forwarded along a multicast tree 26 13

Further Enhancements Goal: Dealing with switch-level heterogeneity Solution: Virtual switches Goal: Attaining very high availability of resolution Solution: Replication via multiple hash functions Goal: Dividing administrative control to sub-units Solution: Multi-level one-hop DHT Similar to OSPF areas Contains local resolution within a region 27 Performance Evaluation Large-scale packet-level simulation Event-driven simulator optimized for control-plane evaluation Synthetic traffic based on real traces from LBNL Inflated the trace while preserving original properties Real topologies from campus, data centers, and ISPs Emulation with prototype switches Click/XORP implementation 28 14

Prototype Implementation Link-state routing: XORP OSPFD Host-info management and traffic forwarding: Click Click Interface XORP Network Map OSPF Daemon Link-state advertisements Routing Table User/Kernel Click Ring Manager Host Info Manager Host-info registration and notification msgs SeattleSwitch Data Frames Data Frames 29 Amount of Routing State Ethernet SEATTLE reduces the amount of routing state by more than an order of magnitude SEATTLE w/ caching SEATTLE w/o caching 30 15

Cache Size vs. Stretch Stretch = actual path length / shortest path length (in latency) ROFL SEATTLE offers near-optimal stretch with very small amount of routing state SEATTLE 31 Sensitivity to Mobility Ethernet SEATTLE rapidly updates routing state with very low overhead SEATTLE w/ caching SEATTLE w/o caching 32 16

Control Overhead Instrumentation results from Emulab test SEATTLE maintains lower control overhead and is less vulnerable to control-plane attack 33 Conclusion and Future Work SEATTLE is a plug-and-playablenetwork architecture ensuring both scalability and efficiency Enabling design decisions One-hop DHT tightly coupled with LS routing Reactive location resolution and caching Shortest-path forwarding Future work Using SEATTLE to improve network security Utilizing indirect delivery for load balancing Optimizations when end hosts can be changed 34 17