SoftRing: Taming the Reactive Model for Software Defined Networks

Slides:



Advertisements
Similar presentations
SDN Controller Challenges
Advertisements

Dynamic Scheduling of Network Updates Based on the slides by Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer.
VCRIB: Virtual Cloud Rule Information Base Masoud Moshref, Minlan Yu, Abhishek Sharma, Ramesh Govindan HotCloud 2012.
OpenFlow overview Joint Techs Baton Rouge. Classic Ethernet Originally a true broadcast medium Each end-system network interface card (NIC) received every.
Nanxi Kang Princeton University
Packet Switching COM1337/3501 Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 3.
Slick: A control plane for middleboxes Bilal Anwer, Theophilus Benson, Dave Levin, Nick Feamster, Jennifer Rexford Supported by DARPA through the U.S.
Connecting LANs: Section Figure 15.1 Five categories of connecting devices.
Congestion Control Reasons: - too many packets in the network and not enough buffer space S = rate at which packets are generated R = rate at which receivers.
A SOFT Way for OpenFlow Interoperability Testing Maciej Kuźniar, Peter Perešini, Marco Canini†, Daniele Venzano, Dejan Kostić‡ EPFL †TU Berlin/T-Labs ‡IMDEA.
OpenFlow-Based Server Load Balancing GoneWild
SDN and Openflow.
Scalable Flow-Based Networking with DIFANE 1 Minlan Yu Princeton University Joint work with Mike Freedman, Jennifer Rexford and Jia Wang.
Flowspace revisited OpenFlow Basics Flow Table Entries Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot L4 sport L4 dport Rule Action.
Information-Agnostic Flow Scheduling for Commodity Data Centers
SDN Scalability Issues
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
OpenFlow Switch Limitations. Background: Current Applications Traffic Engineering application (performance) – Fine grained rules and short time scales.
Connecting LANs, Backbone Networks, and Virtual LANs
FAR: A Fault-avoidance Routing Method for Data Center Networks with Regular Topology Bin Liu, ZTE.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 8: Bridging Slides used with permissions.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
Wei Bai with Li Chen, Kai Chen, Dongsu Han, Chen Tian, Hao Wang SING HKUST Information-Agnostic Flow Scheduling for Commodity Data Centers 1 SJTU,
Jennifer Rexford Princeton University MW 11:00am-12:20pm Measurement COS 597E: Software Defined Networking.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
SDN and Openflow. Motivation Since the invention of the Internet, we find many innovative ways to use the Internet – Google, Facebook, Cloud computing,
CellSDN: Software-Defined Cellular Core networks Xin Jin Princeton University Joint work with Li Erran Li, Laurent Vanbever, and Jennifer Rexford.
Improving Network Management with Software Defined Network Group 5 : z Xuling Wu z Haipeng Jiang z Sichen Wu z Aparna Sanil.
Research on TCAM-based OpenFlow Switch Author: Fei Long, Zhigang Sun, Ziwen Zhang, Hui Chen, Longgen Liao Conference: 2012 International Conference on.
Shadow MACs: Scalable Label- switching for Commodity Ethernet Author: Kanak Agarwal, John Carter, Eric Rozner and Colin Dixon Publisher: HotSDN 2014 Presenter:
Jennifer Rexford Princeton University MW 11:00am-12:20pm Data-Plane Verification COS 597E: Software Defined Networking.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
RuleTris: Minimizing Rule Update Latency for TCAM-based SDN Switches Xitao Wen*, Bo Yang #, Yan Chen*, Li Erran Li $, Kai Bu #, Peng Zheng &, Yang Yang*,
SDN and Security Security as a service in the cloud
Xin Li, Chen Qian University of Kentucky
SDN challenges Deployment challenges
Problem: Internet diagnostics and forensics
SDN Network Updates Minimum updates within a single switch
Software defined networking: Experimental research on QoS
University of Maryland College Park
Dynamic Routing Protocols part2
Heitor Moraes, Marcos Vieira, Italo Cunha, Dorgival Guedes
Topics discussed in this section:
Efficient Round-Trip Time Monitoring in OpenFlow Networks
Routing and Switching Fabrics
Advanced Computer Networks
Network Data Plane Part 2
Chapter 4 Data Link Layer Switching
Hubs Hubs are essentially physical-layer repeaters:
of Dynamic NFV-Policies
SDN Overview for UCAR IT meeting 19-March-2014
Hubs Hubs are essentially physical-layer repeaters:
CONGESTION CONTROL.
Be Fast, Cheap and in Control
Bridges and Extended LANs
Implementing an OpenFlow Switch on the NetFPGA platform
Congestion Control, Quality of Service, & Internetworking
Virtual TCAM for Data Center Switches
EE 122: Lecture 7 Ion Stoica September 18, 2001.
Programmable Networks
Congestion Control Reasons:
Packet Switching Outline Store-and-Forward Switches
2019/5/2 Using Path Label Routing in Wide Area Software-Defined Networks with OpenFlow ICNP = International Conference on Network Protocols Presenter:Hung-Yen.
SDN-Guard: DoS Attacks Mitigation in SDN Networks
Routing and Switching Fabrics
Autonomous Network Alerting Systems and Programmable Networks
Fast Testing Network Data Plane with RuleChecker
OpenSec:Policy-Based Security Using Software-Defined Networking
Elmo Muhammad Shahbaz Lalith Suresh, Jennifer Rexford, Nick Feamster,
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

SoftRing: Taming the Reactive Model for Software Defined Networks Chengchen Hu, Kaiyu Hou, Hao Li, Ruilong Wang Peng Zheng, Peng Zhang, Huanzhao Wang MOE KLINNS Lab Xi’an Jiaotong University

Match-Action Abstraction Software Defined Networking (SDN) employs a Match-Action model as processing abstraction A packet: ① match a rule in switches ② execute the related actions Forward, Drop, Modify Flow entry stored in Flow Table

Proactive vs. Reactive Proactive Pre-install flow entry in switches Anticipate the network issues in advance Reactive Switches invoke the controller on network event Controller pushes corresponding flow entry To push the flow rules

Proactive Model Only? Limited flow entry memory in switch TCAM, up to 5000~ flow entries Limited flexibility, finer-grained control Unawareness of data plane Controller cannot be aware of failures Flow entry removed: bugs, attacks Continuously drop packets Therefore, we believe the Proactive model should work together with reactive model

Overhead in Reactive Reactive introduces communicate overhead between controller and switches (South-Bound Interface) Table-miss event One common trigger of reactive Example: OpenFlow Controller Switch Generally, we believe the reactive model should coexist with proactive model as a complement,

Table-miss New incoming packet doesn’t match any flow entry Raise a Table-miss event Controller Packet Switch Generally, we believe the reactive model should coexist with proactive model as a complement,

Table-miss Switch buffers the packet Sends a Packet-in message to controller first 128 bytes of the packet Controller Packet-in 128 Byte Packet-out Buffer Id Switch Packet Buffer Packet in Switch

Table-miss The buffer overflows Switch has to send the entire packet through the Packet-in message Controller Packet-in 1500 Byte Packet-out 1500 Byte SBI bandwidth overhead increases Latency to install the new entry increases (5ms to 100ms) Packet Packet Packet Switch Packe Packet Packet If too many new flow arrived on a short period of time, Which finally affect the performance of whole network systems.

When Does Reactive Happen? 1 Small flows come successively. 20% traffic occupies 80% of total flows. Limited flow entry memory, replacement E.g., LRU Policy Subsequent packets of TCP can trigger Table-miss Subsequent packets also trigger Table-miss Before related new rule installed 2 Generally, we believe the reactive model should coexist with proactive model as a complement, 3

Where to buffer the Table-miss packet? Keep in Switch Buffer overflow: new flow exceeds 0.26% of switch capacity Send to Controller Only 0.06% of the traffic consume all the control bandwidth Brand Model Port Buffer Control BW Pica8 AS7712-32X 100GbE*32 16MB 1000Mbps Brocade ICX7750-26Q 40GbE*26 12.2MB Dell Z9100-ON Huawei CE8860 N/A Netgear M5300-52G 48+10GbE*4 4MB 10Gbps Generally, we believe the reactive model should coexist with proactive model as a complement,

Goal of SoftRing Reduce Buffer Reduce Bandwidth Less Packet Drop Compatibility 1 2 3 4 Generally, we believe the reactive model should coexist with proactive model as a complement,

Popular Restaurant Policy Popular restaurant cannot have enough tables to serve everyone (“table-miss”) Waiters: record the customer,arrange a waiting number Customers: walk away and back later when the seat availability.

Basic Idea Extend loops in network Remaining bandwidth and memory in dataplane Internet: > 50% Data Center: > 75% Accurate control of packet forwarding

Three Challenges Seek and Select waiting-loops Enforce waiting-loop policy in switches Dynamically adjust waiting-loops 1 2 3 Generally, we believe the reactive model should coexist with proactive model as a complement,

Seek and Select 1 Loop Seeking Algorithm Loop Selection Algorithm (collect enough loops as waiting-loop candidate) Loop Selection Algorithm (select a loop subset to cover all the switches)

Loop Seeking Algorithm Based on Johnson’s loop searching algorithm Directed graph Accelerate Graph partition Loop length and scale control Random shuffle Virtual Loop 𝑣1→𝑣2→…→𝑣2→𝑣1 Waiting-loop Candidate Set Graph partition: calculation simultaneously Random shuffle: increase loop diversity

Loop Selection Algorithm Select a loop subset to meet the requirements: Cover all the switches Minimize the extra delay Bandwidth in Data Plane Minimize the extra flow entries Map to weighted set cover problem Graph partition: calculation simultaneously Random shuffle: increase loop diversity

Switch Enforcement 2 Priority Match Action Timeout OpenFlow * * ① Buffer Table-miss packet in switch ② Send Packet-in with 128 Bytes ES (Entry Switch) ① Send Packet-in with 128 Bytes ② Push VLAN = 1 ③ Set TTL = β ④ Send to next switch by queue LS (Loop Switch) 1 VLAN = 1 in-port = pre-switch ① Set TTL = TTL -1 ② Send to next Switch by queue

Switch Enforcement 2 VLAN tag: distinguish waiting-loop packet Priority Match Action Timeout OpenFlow * ① Buffer Table-miss packet in switch ② Send Packet-in with 128 Bytes ES (Entry Switch) ① Send Packet-in with 128 Bytes ② Push VLAN = 1 ③ Set TTL = β ④ Send to next switch by queue LS (Loop Switch) 1 VLAN = 1 in-port = pre-switch ① Set TTL = TTL -1 ② Send to next Switch by queue VLAN tag: distinguish waiting-loop packet

Switch Enforcement 2 VLAN tag: distinguish waiting-loop packet Priority Match Action Timeout OpenFlow * ① Buffer Table-miss packet in switch ② Send Packet-in with 128 Bytes ES (Entry Switch) ① Send Packet-in with 128 Bytes ② Push VLAN = 1 ③ Set TTL = β ④ Send to next switch by queue LS (Loop Switch) 1 VLAN = 1 in-port = pre-switch ① Set TTL = TTL -1 ② Send to next Switch by queue VLAN tag: distinguish waiting-loop packet Priority: never affect normal traffic

Switch Enforcement 2 VLAN tag: distinguish waiting-loop packet Priority Match Action Timeout OpenFlow * ① Buffer Table-miss packet in switch ② Send Packet-in with 128 Bytes ES (Entry Switch) ① Send Packet-in with 128 Bytes ② Push VLAN = 1 ③ Set TTL = β ④ Send to next switch by queue LS (Loop Switch) 1 VLAN = 1 in-port = pre-switch ① Set TTL = TTL -1 ② Send to next Switch by queue VLAN tag: distinguish waiting-loop packet Priority: never affect normal traffic TTL: avoid endless loop

Switch Enforcement 2 Controller-to-Switch Message: OpenFlow Type Priority Match/Data Field Action Timeout Packet-out / Buffer ID or Entire Packet Forwarding Flow-add >2 ip_src ip_dst etc. normal Controller-to-Switch Message: SoftRing Type Priority Match/Data Field Action Timeout Flow-add >2 VLAN = None ip_src ip_dst etc. Forwarding normal VLAN = 1 ① Pop VLAN ② Reset TTL ③ Forwarding short

Handling the Dynamic 3 Forbidden Link: overloaded or failed links Re-execute: Only Loop Selection Algorithm (< 1s)

Handling the Dynamic 3

SoftRing: Implementation

SoftRing: Implementation Fattree(4) with 20 ONetSwitch Controller: Floodlight Switch: Open vSwitch: Software Switch ONetSwitch 30: Hardware Switch

SoftRing: Implementation Loop ID Switch ID Length 1 10 20 14 6 13 17 9 8 2 5 19 3 12 16 15 18 11 4 7

Evaluation

Evaluation 100% Coverage, Virtual Loop used in last three topology

Evaluation

Benefit of SoftRing

Average Packet Delay in Different Reactive Packet Rate Cost of SoftRing Average Packet Delay in Different Reactive Packet Rate 0.2% 2.9%

Static Flow Entries Used in One Switch Cost of SoftRing Static Flow Entries Used in One Switch

Conclusion Claim SoftRing We advocate the coexistence of proactive model and reactive model. SoftRing A reactive packet goes through a pre-computed waiting-loop before get related rules from controller. Evaluation Reduce the control channel bandwidth up to 80%. With the cost of 3 flow entries, minor latency.

Thank You Questions ?