Software Defined Networks Dr. Uttam Ghosh, CDAC, Bangalore uttamg@cdac.in
Outline Networking Planes OpenFlow Software Defined Network (SDN) SDN Origin What is SDN? SDN Architecture SDN Operation Why We Need SDN? SDN Integration Conclusion
Planes of Networking Data Plane: Responsible for forwarding and processing data. Runs at line rate (Fast Path). Implemented using special hardware TCAMs. Control Plane: Responsible for making forwarding decisions (routing table) and programming (packet handling policies) data plane Handled by CPU Management Plane: Responsible for provisioning and monitoring of networks Fault, Configuration, Accounting, Performance and Security(FCAPS). Instantiate new devices and protocols (turn devices on/off)
Problem of Legacy Network Devices Too complicated Control plane is implemented with complicated S/W and ASIC Closed platform Vendor Specific Hard to modify (nearly impossible) Hard to add new functionalities New proposal: OpenFlow/Software Defined Networking
Legacy Network and SDN
OpenFlow: Key Ideas Separation of control and data planes Centralization of control Flow based control
OpenFlow: Separation of Control and Data Planes Components: Controller, OpenFlow switch and secure channels. Control logic is moved to a controller. Switches only have forwarding elements. One expensive controller with a lot of cheap switches. OpenFlow is the protocol to send/receive forwarding rules from controller to switches.
OpenFlow: Bootstrapping Switches require initial configuration: Switch IP address, controller IP address and default gateway Switches connect to the controller Switch provides configuration information about ports Controller sends a LLDP request to all neighbors (switches) Controller determines the topology from LLDP responses
Origins of SDN SDN originated from OpenFlow Centralized Controller Easy to program Change routing policies on the fly Software Defined Network (SDN) Initially, SDN= Separation of Control and Data Plane Centralization of Control OpenFlow to talk to the data plane Now the definition has changed significantly.
What is SDN? The physical separation of the network control plane from the forwarding plane, and where a control plane controls several devices. 1. Directly programmable 2. Agile: Abstracting control from forwarding 3. Centrally managed 4. Programmatically configured 5. Open standards-based vendor neutral
SDN Architecture
SDN Architecture (Contd..)
SDN Operation
Why We Need SDN? 1. Virtualization: Use network resource without worrying about where it is physically located, how much it is, how it is organized, etc. 2. Orchestration: Should be able to control and manage thousands of devices with one command. 3. Programmable: Should be able to change behavior on fly. 4. Dynamic Scaling: Should be able to change size, quantity 5. Automation: To lower OpEx minimize manual involvement Troubleshooting Reduce downtime Policy enforcement Provision / Re-provision /Segmentation of resources Add new workloads, sites, devices, and resources
Why We Need SDN? (Contd..) 6. Visibility: Monitor resources, connectivity 7. Performance: Optimize network device utilization Traffic engineering/bandwidth management Capacity optimization Load balancing High utilization Fast failure handling 8. Multi-tenancy: Tenants need complete control over their addresses, topology, and routing, security 9. Service Integration: Load balancers, firewalls, Intrusion Detection Systems (IDS), provisioned on demand and placed appropriately on the traffic path
Definition of SDN SDN is a framework to allow network administrators to automatically and dynamically manage and control a large number of network devices, services, topology, traffic paths, and packet handling (quality of service) policies using high-level languages and APIs. Management includes provisioning, operating, monitoring, optimizing, and managing FCAPS (faults, configuration, accounting, performance, and security) in a multi-tenant environment. Dynamic and Quick
Integration of SDN Cloud Computing Internet of Things Sensor Networks Mobile Computing Named Data Networking (NDN)/ Information Centric Networking (ICN)
SDN in Wi-Fi http://www.merunetworks.com/products/technology/sdn/
SDN in MANET/VANET Challenges: Unreliable: Controller-switch connection is wireless Complex: Node mobility adds complexity Solution: Ian Ku, You Lu, and Mario Gerla. "Software-Defined Mobile Cloud: Architecture, Services and Use Cases, in IWCMC 14. Two Interfaces: 1) LTE for Controller; 2) WiFi for Data Plane Wireless node has an local optional SDN Controller. Wireless Node
SDN in MANET/VANET
Conclusion SDN? New network architecture Dynamic flow control, programmability, and more Usually employ into a wired-network environment (Data Center) Many researchers try to move this idea into a wireless network environment SDN is the tool to develop new applications and solutions to longstanding problems. In this respect, our work is just beginning.
References [1] Ian Ku, You Lu, and Mario Gerla. "Software-Defined Mobile Cloud: Architecture, Services and Use Cases, in IWCMC 14. [2] Prof. Raj Jain, Introduction to Software Defined Networking (SDN). [3] Qin, Zhijing, et al. "A Software Defined Networking Architecture for the Internet-of-Things."
Thank You