traceroute Basic Ideas Behind SDN Scaling SDN Example
traceroute • Basic Ideas Behind SDN • Scaling SDN • Example Uses of SDN 14 -740: Spring 2017 2
Network "Ossification" • Millions of standards-complying bits of hardware mean it is difficult to change anything • See IPv 6 • Hard even to run research experiments at scale 14 -740: Spring 2017 3
Open Virtualization • Open standards have worked to create change in OS, CPU, computer hardware fields • A virtualized programmable network interface ➙ lower barrier to entry for new ideas • "But, aren't all the networking standards open? " • Not within routers and switches 14 -740: Spring 2017 4
Router/Switch Architecture • Remember this picture from Routing Lecture? • I used it to show routers have upper layers stuff happening also 14 -740: Spring 2017 5
Router/Switch Arch (2) • Perhaps better drawn as • Apps: Routing, VPNs, Qo. S, netflow, access control… • OS: Mlines of source code (8000+ RFCs) • HW: Billions of power hungry gates • All of it: vertically integrated, proprietary, not amenable to experimentation 14 -740: Spring 2017 6
Data / Control Plane • Network layer's 2 functions: Routing / Forwarding • Control Plane: All the complex functionality concerned with managing policies (i. e. routing. Also security, naming, etc) • Data Plane: functionality concerned with transferring frame/packet (i. e. forwarding) 14 -740: Spring 2017 7
SDN Goals • Software Defined Networking (SDN) seeks to use standard interface between control and data functions in core devices (at both network and link layer) • Allows new features to be added • Isolates experimental and production traffic • Vendor still has closed hardware platform 14 -740: Spring 2017 8
Data Plane • Proprietary switching hardware • Usually a forwarding table built from ternary content addressable memory (TCAM) • Concerned with speed • 48 -port Gigabit switch must have 96 Gbps switching fabric/flow table • SDN abstracts the forwarding table • each entry ("flow") has an action 14 -740: Spring 2017 9
Control Plane • Controller makes decisions on what actions happen for each flow • i. e. "This flow should be forwarded on interface #4" • "Forward to controller" • Useful for first packet of a new flow • or for experimental processing • "Drop" • "Use legacy forwarding pipeline" • These actions configure the flow table 14 -740: Spring 2017 10
For Example
Picture so far 14 -740: Spring 2017 12
traceroute • Basic Ideas Behind SDN • Scaling SDN • Example Uses of SDN 14 -740: Spring 2017 13
Power of APIs • The SDN controller does not need to be in the same box as the data plane • Just use a secure channel to communicate with the controller box 14 -740: Spring 2017 14
Distributed Control • Even better, SDN controller can control multiple data planes • Ex: when a new packet shows up, controller can install flow in a series of flow tables to direct a route through the network 14 -740: Spring 2017 15
Control Messages • BTW, SDN messages don't actually travel over dedicated wires • All messages, device to/from controller, travel via production links 14 -740: Spring 2017 16
Even more Distributed • Multiple SDN domains can work together • Starting to look like ASes (EGP/IGP? ) 14 -740: Spring 2017 17
SDNi • IETF is working on a standard interface between SDN domains • Exchange network topology • Events (e. g. , 'link-down') • Infrastructure status (e. g. 'energy consumption') • QOS requirements… 14 -740: Spring 2017 18
SDN Pros • Fulfills desire for flexibility/reprogrammability/virtualization • Switches/Routers can be cheaper • Focuses purely on forwarding • Maybe: still need to provide "legacy" action 14 -740: Spring 2017 19
SDN Cons • Increased latency? • Reliability? Controller is single point of failure • Also single-point of security break in • Unclear how to broad/multicast • Race conditions? • ex: Controller installing new route, but route gets to some flow tables before others…. 14 -740: Spring 2017 20
traceroute • Basic Ideas Behind SDN • Scaling SDN • Example Uses of SDN 14 -740: Spring 2017 21
Network Research • Easy to isolate experimental traffic from production traffic • Production: Legacy routing • A new routing algorithm runs in controller • Establishes route through network when first packet of flow is encountered • A new P 2 P algorithm can do content search in controller 14 -740: Spring 2017 22
Network Research (2) • Packet oriented experiments • Ex: intrusion detection, deep packet inspection • Either forward all packets to controller (slow) • or forward packets to hardware packet processor 14 -740: Spring 2017 23
Cellular industry • Recently made transition to IP • Billions of mobile users • Need to securely extract payments and hold users accountable • IP not ideal for either, yet hard to change Open. Flow provides a way for the cellular industry to solve real problem plaguing their networks. 14 -740: Spring 2017 24
ISPs • Global IP traffic growing 40 -50% per year • End-customer bill remains unchanged • Therefore, expenses need to reduce 4050% per Gbps per year (vs. ~20%) • And using the same equipment as competitors Open. Flow allows telcos to reduce CAPEX, OPEX and to add new differentiating features to their networks. 14 -740: Spring 2017 25
Example: New Data Center • Cost • 200 K servers • 10 K switches (fanout of 20) • $5 k vendor switch=$50 M • $1 k commodity switch=$10 M • Control • Tailor network for services (ex: mobile virtual machines) • More flexible control (ex: load balancing) • Quicker to improve and innovate Data center companies have been the first to deploy SDN in their networks, Google most famously. 14 -740: Spring 2017 26
Today • Basic Ideas Behind SDN • Scaling SDN • Example Uses of SDN 14 -740: Spring 2017 27
- Slides: 26