a. History of SDN
This lesson: Network Virtualization
- What is network virtualization?
- What is its history? (w/examples)
- 1990s (and before): Switchlets
- Mid-2000s: VINI, Cabo
- Looking forward
- Network virtualization and SDN
Evolution of Supporting Technologies
- Central network control: Dates back (at least) to AT&T’s network control point (1980s)
- Programmability in networks: Active networks (1990s)
- Network virtualization: Switchlets (1990s), VINI (2000s)
What is Network Virtualization?
- Representation of one or more logical network topologies on the same infrastructure.
- Many different instantiations
- Virtual LANs (VLANs)
- Various technologies and network testbeds
- Today: VMWare, Nicira, etc.
Benefits of Network Virtualization
- Sharing: Multiple logical routers on a single platform
- Sharing: Resource isolation in CPU, memory, bandwidth, forwarding tables, …
- Customizability: Customizable routing and forwarding software
- Customizability: General-‐purpose CPUs for the control plane
- Customizability: Network processors and FPGAs for data plane
b. Three Examples of Virtual Networks
Tempest: Switchlets (1998)
- Separation of control framework from switches
- Virtualization of the switch
- VINI: A Virtual Network Infrastructure (2006)
- Virtualization of the network infrastructure
- Cabo: Separates infrastructure, services (2007)
The Tempest Architecture: Switchlets
- Multiple control architectures over ATM
- Separation of switch controller and fabric via open signaling
- Partitioning of switch resources across controllers
c. Switch Divider
- Partitions port space, bandwidth, buffers
- Different controllers control each switchlet
d. VINI: Virtual Network Infrastructure
- Runs real routing software
- Exposes realistic network conditions
- Gives control over network events
- Carries traffic on behalf of real users
- Shared among many experiments
e. XORP: Control Plane
- BGP, OSPF, RIP, PIMSM, IGMP/MLD
- Goal: run real routing protocols on virtual network topologies
Click: Data Plane
- Performance
- Avoid UML overhead
- Move to kernel, FPGA
- Interfaces ð tunnels
- Click UDP tunnels correspond to UML network interfaces
- Filters
- “Fail a link” by blocking packets at tunnel
f. Concurrent Architectures are Better than One
- Infrastructure providers: Maintain routers, links, data centers, and other physical infrastructure
- Service providers: Offer end-to-end services (e.g., layer 3 VPNs, SLAs, etc.) to users
- Today: ISPs try to play both roles, and cannot offer end-to-end services
g. Examples in Communications Networks
- Two commercial examples in IP networks
- Packet Fabric: share routers at exchange points
- FON: resells users’wireless Internet connectivity
- FON economic refactoring
- Infrastructure providers: Buy upstream connectivity
- Service provider: FON as the broker
h. Evolution of Supporting Technologies
- Central network control: Dates back (at least) to AT&T’s network control point (1980s)
- Programmability in networks: Active networks (1990s)
- Network virtualization: Switchlets (1990s), VINI (2000s)
Goal: Control and Realism
- Control: Reproduce results
- Control: Methodically change or relax constraints
- Realism: Long-running services
- Realism: Connectivity to real Internet
- Realism: Forward high traffic volumes (Gb/s)
- Realism: Handle unexpected events
i. Similar Trends in Other Industries
Example: Commercial aviation
- Infrastructure providers: Airports
- Infrastructure: Gates, “hands and eyes” support
- Service providers: Airlines
Enabling End-to-End Services
- Secure routing protocols
- Multi-provider Virtual Private Networks
- Paths with end-to-end performance guarantees
This lesson: Network Virtualization
- What is network virtualization?
- What is its history? (w/examples)
- 1990s (and before): Switchlets
- Mid-2000s: VINI, Cabo
- Looking forward
- Network virtualization and SDN
Evolution of Supporting Technologies
- Central network control: Dates back (at least) to AT&T’s network control point (1980s)
- Programmability in networks: Active networks (1990s)
- Network virtualization: Switchlets (1990s), VINI (2000s)
What is Network Virtualization?
- Representation of one or more logical network topologies on the same infrastructure.
- Many different instantiations
- Virtual LANs (VLANs)
- Various technologies and network testbeds
- Today: VMWare, Nicira, etc.
Benefits of Network Virtualization
- Sharing: Multiple logical routers on a single platform
- Sharing: Resource isolation in CPU, memory, bandwidth, forwarding tables, …
- Customizability: Customizable routing and forwarding software
- Customizability: General-‐purpose CPUs for the control plane
- Customizability: Network processors and FPGAs for data plane
b. Three Examples of Virtual Networks
Tempest: Switchlets (1998)
- Separation of control framework from switches
- Virtualization of the switch
- VINI: A Virtual Network Infrastructure (2006)
- Virtualization of the network infrastructure
- Cabo: Separates infrastructure, services (2007)
The Tempest Architecture: Switchlets
- Multiple control architectures over ATM
- Separation of switch controller and fabric via open signaling
- Partitioning of switch resources across controllers
c. Switch Divider
- Partitions port space, bandwidth, buffers
- Different controllers control each switchlet
d. VINI: Virtual Network Infrastructure
- Runs real routing software
- Exposes realistic network conditions
- Gives control over network events
- Carries traffic on behalf of real users
- Shared among many experiments
e. XORP: Control Plane
- BGP, OSPF, RIP, PIMSM, IGMP/MLD
- Goal: run real routing protocols on virtual network topologies
Click: Data Plane
- Performance
- Avoid UML overhead
- Move to kernel, FPGA
- Interfaces ð tunnels
- Click UDP tunnels correspond to UML network interfaces
- Filters
- “Fail a link” by blocking packets at tunnel
f. Concurrent Architectures are Better than One
- Infrastructure providers: Maintain routers, links, data centers, and other physical infrastructure
- Service providers: Offer end-to-end services (e.g., layer 3 VPNs, SLAs, etc.) to users
- Today: ISPs try to play both roles, and cannot offer end-to-end services
g. Examples in Communications Networks
- Two commercial examples in IP networks
- Packet Fabric: share routers at exchange points
- FON: resells users’wireless Internet connectivity
- FON economic refactoring
- Infrastructure providers: Buy upstream connectivity
- Service provider: FON as the broker
h. Evolution of Supporting Technologies
- Central network control: Dates back (at least) to AT&T’s network control point (1980s)
- Programmability in networks: Active networks (1990s)
- Network virtualization: Switchlets (1990s), VINI (2000s)
Goal: Control and Realism
- Control: Reproduce results
- Control: Methodically change or relax constraints
- Realism: Long-running services
- Realism: Connectivity to real Internet
- Realism: Forward high traffic volumes (Gb/s)
- Realism: Handle unexpected events
i. Similar Trends in Other Industries
Example: Commercial aviation
- Infrastructure providers: Airports
- Infrastructure: Gates, “hands and eyes” support
- Service providers: Airlines
Enabling End-to-End Services
- Secure routing protocols
- Multi-provider Virtual Private Networks
- Paths with end-to-end performance guarantees