Why SDN and Virtual Networking?
What is Network Virtualization?
· Representation of one or more logical network topologies on the same infrastructure.
· Many different instantiations
o Virtual LANs (VLANs)
o Various technologies and network test-beds
o Today: VMWare, Nicira, Cisco etc.
Applications of Virtual Networking
· Experimentation on production networks
o Can run (virtual) experimental infrastructure in parallel with production
· Rapid deployment and development
o Can deploy services independently from underlying vendor hardware
· Dynamic scaling of resources
o Can allocate from “pool” of resources
Benefits of Network Virtualization
· Sharing
o Multiple logical routers on a single platform
o Resource isolation in CPU, memory, bandwidth, forwarding tables, …
· Customizability
o Customizable routing and forwarding software
o General-purpose CPUs for the control plane
o Network processors and FPGAs for data plane
Control and Data Planes:
· Control Plane: Logic for controlling forwarding behavior.
o Examples: routing protocols, network middlebox configuration.ž
· Data Plane: Forward traffic according to control plane logic
o Examples: IP forwarding, Layer 2 switching
Why are Separate Control and Data Planes desirable?
· Independent evolution and development
o The software control of the network can evolve independently of the hardware.
· Control from high-level software program
o Control behavior using higher-order programs
o Debug/check behavior more easily
Separation of Control and Data planes helps in:
· Data centers: VM migration, Layer 2 routing
· Routing: More control over decision logic
· Enterprise networks: Security applications
· Research networks: Coexistence with production
Separating Control allows advances in:
· More rapid innovation: Control logic is not tied to hardware
· Network-wide view: Easier to infer (and reason about) network behavior
· More flexibility: Can introduce new services more easily
Network Virtualization Is The Largest Transformation IT in 30 Years
Where will SDN be deployed?
1. Multi-tenant “virtualized” data centers
– Public and private clouds
2. WANs
– Google WAN
– Eventually, public WANs
3. Enterprise networks
– Greater control, fewer middleboxes
4. Home networks
– Outsourced management
5. Cellular Networks
– Separation of service from physical infrastructure
6. Research and Education Networks
– National backbones
– College campus networks
OpenFlow
· It's a protocol for control the forwarding behavior of Ethernet switches in a Software Defined Network
· Initially released by the Clean Slate Program at Stanford, its specification is now maintained by the Open Networking Forum
· OpenFlow is similar to an x86 instruction set for the network
· Provide open interface to “black box” networking node
§ (ie. Routers, L2/L3 switch) to enable visibility and openness in network
§ Separation of control plane and data plane.
§ The datapath of an OpenFlow Switch consists of a Flow Table, and an action associated with each flow entry
§ The control path consists of a controller which programs the flow entry in the flow table
§ OpenFlow is based on an Ethernet switch, with an internal flow-table, and a standardized interface to add and remove flow entries
OpenFlow Basics I
OpenFlow Basics II
OpenFlow Consortium: http://OpenFlowSwitch.org
• Goal
§ Evangelize OpenFlow to vendors
§ Whitepaper, OpenFlow Switch Specification, Reference Designs
§ Licensing: Free for research and commercial use
OpenFlow building blocks
Components of OpenFlow Network:
OpenFlow Controllers
· Secure Channel (SC)
o SC is the interface that connects each OpenFlow switch to controller
o A controller configures and manages the switch via this interface.
§ Receives events from the switch
§ Send packets out the switch
§ SC establishes and terminates the connection between OpneFlow Switch and the controller using the procedures
§ Connection Setup
§ Connection Interrupt
§ The SC connection is a TLS connection. Switch and controller mutually authenticate by exchanging certificates signed by a site-specific private key.
Dynamic Flow Aggregation on an OpenFlow Network
• Motivation
§ Different Networks want different flow granularity (ISP, Backbone,…)
§ Switch resources are limited (flow entries, memory)
§ Network management is hard
§ Current Solutions : MPLS, IP aggregation
• How does OpenFlow Help?
§ Dynamically define flow granularity by wildcarding arbitrary header fields
§ Granularity is on the switch flow entries, no packet rewrite or encapsulation
§ Create meaningful bundles and manage them using your own software (reroute, monitor)
Virtualizing OpenFlow
• Network operators “Delegate” control of subsets of network hardware and/or traffic to other network operators or users
• Multiple controllers can talk to the same set of switches
• Imagine a hypervisor for network equipments
• Allow experiments to be run on the network in isolation of each other and production traffic
The “Software-defined Network”
Effects:
· More innovation in network services
§ Owners, operators, 3rd party developers, researchers can improve the network
§ E.g. energy management, data center management, policy routing, access control, denial of service, mobility
§ Lower barrier to entry for competition
§ Healthier market place, new players
Next: Open vSwitch…
No comments:
Post a Comment