The OpenFlow API does not provide…
Specific guarantees about the level of consistency that packets along an end-to-end path can experience
What are 2 consistency problems with SDNs?
Packet-level consistency problems
Flow-level consistency problems
Packet-level consistency problem
Updates to multiple switches along a path in a network that occur at different times may result in problems such as forwarding loops
Flow-level consistency problem
If updates to switches along an end-to-end path occur in the middle of a flow, packets from the same flow may be subjected to 2 different network states
3 steps of SDN program
Reading and writing network state can be challenging because OpenFlow rules are simple match-action predicates, so it can be difficult to express complex logic. Need more sophisticated predicates.
3 approaches to help guarantee consistency in reading state
Predicates
Rule unfolding
Suppression
Reasons a controller might want to write policy to change state in network
*** These all require updating state in the network switches
When writing policy changes, we want to make sure forwarding remains…
correct and consistent
When writing policy changes, we’d like to maintain the following invariants…
What can happen if policies are written in an inconsistent fashion?
Solution to inconsistent policy writing?
What problems can arise from inconsistent “writes” of network state?
How do you cope with inconsistency?
-Keeping the old and new state on the routers/switches
What is network virtualization?
In network virtualization, a single link in a logical topology might actually map to multiple links in the physical topology. The mechanism to achieve these virtual links is typically through:
tunneling
For example, a packet from A->B in the logical topology in the lecture might be encapsulated as a packet that goes from A->X->B in the physical topology.
Network virtualization can also be thought of as an analogy to…
virtual machines
Why use network virtualization?
Network virtualization has really taken off in…
Multi-tenant data centers where there may be multiple tenants/applications running on a shared cluster of servers. Well-known examples of this include Amazon’s EC2, Rackspace, and things like Google App Engine.
Motivation for virtual networking?
- Adjusting resources to demand
Promised benefits of network virtualization
Important to make a distinction between SDN and Network Virtualization
Which are characteristics of network virtualization?
*** The 2 other answers below are defining characteristics of SDN but not of network virtualization
What are the various design goals of virtual networks?
2 components of virtual networks