Software Defined Networking
Innovated to accelerate the standardization and innovation of the networking discipline.
Control requirements led to great complexity:
- isolation -> vlan, acl
- traffic engineering -> mpls, ecmp, weights
- packet processing middleboxes -> firewalls, NATs
- payload analysis -> deep packet inspection
Needed to abstract the control plane for simplicity of the discipline.
Legacy switches had hardware (ASIC) and software (JUNOS routing processes).
A Clean Slate 4D Approach - introduced problems with legacy approach
Ethane - Took 4D and put it into practice with OpenFlow
- Discovery (how does centralized controller find out about new server)
Key innovation was an abstraction over switches, Match Action Table
Match Action Table
Key abstraction to unify different kinds of devices in networking ecosystem:
Router
- match: longest destination IP prefix
- action: forward out a link
Switch
- match: destination MAC address
- action: forward or flood
Firewall
- match: IP addresses and TCP/UDP port numbers
- action: permit or deny
NAT
- match IP address and port
- action: rewrite address and port
Reconfigurable Match Action Table
Adds "compiler" to open flow to parse control flow and configure rules.
Read about P4 Abstract Model