Multi Writer Issues and potential directions
September 3rd, 2015
OvS Tables status and issues
there is no way to know the outcome of mixing rules from more than one project in these tables, as
The Multi-writer Issues
Proposed Requirements – for community discussion
Existing Pipelines
Issue to surface the discussion is SFF control and multiple code paths emerging in ODL
5
Transport Ingress
Table 0
Path Mapper
Table 1
Path Mapper ACL
Table 2
Next Hop
Table 3
Transport Egress
Table 10
SFC
Port Security
Table 0
Ingress NAT Mapper
Table 1
Source Mapper
Table 2
Destination Mapper
Table 3
Policy Enforcer
Table 4
GBP
Egress NAT Mapper
Table 5
External Mapper
Table 6
Classifier
Table 0
Director
Table 10
Distributed ARP Responder
Table 20
DNAT
Table 30
Egress Access Control
Table 40
OVSDB
Distributed LBaaS
Table 50
Distributed Virtual Routing (DVR)
Table 60
Layer 3 forwarding
Table 70
Layer2 rewrite
Table 80
Ingress Access Control
Table 90
SNAT
Table 100
Layer2 Forwarding
Table 110
Option I: per project pipeline
Transport Ingress
Table 1
Path Mapper
Table 2
Path Mapper ACL
Table 3
Next Hop
Table 4
Transport Egress
Table 5
SFC
Port Security
Table 6
Ingress NAT Mapper
Table 7
Source Mapper
Table 8
Destination Mapper
Table 9
Policy Enforcer
Table 10
GBP
Egress NAT Mapper
Table 11
External Mapper
Table 12
Classifier
Table 13
Director
Table 14
Distributed ARP Responder
Table 15
DNAT
Table 16
Egress Access Control
Table 17
OVSDB
Distributed LBaaS
Table 18
Distributed Virtual Routing (DVR)
Table 19
Layer 3 forwarding
Table 20
Layer2 rewrite
Table 21
Ingress Access Control
Table 22
SNAT
Table 23
Layer2 Forwarding
Table 24
Pipeline
Classifier
Table 0
Option II: Stacked Pipeline
Option III: Fixed Pipeline
Classifier
Table 0
Security, ACL
Table 1
L2
Table 2
L3
Table 3
etc
Table 4
Ingress
Egress
Option IV: Branching table snippets
Option V: Openflowplugin Flow Programmer
GBP
SFC
OVSDB
Others…
Openflowplugin programmer
Openflowplugin
OVS1
OVS2
OVSn
…
Add a middle layer
A separate project
Or
Part of openflowplugin
ofoverlay
sfcofl2
netvirt
Option VI – abandon OF tables and use Device Models
Comparison (per Project, Table, Flow requirements)
Options | Pros | Cons |
Option I Per Project Pipeline |
|
|
Option II Stacked Pipeline |
|
|
Option III Fixed Pipeline |
|
|
Option IV – Branching Table Snippets |
| As option II |
Option V - Openflowplugin Flow Programmer |
|
|
Option VI – Device Models |
|
|
backup
AAA: Authentication, Authorization & Accounting
ALTO: Application Layer Traffic Optimization
AuthN: Authentication
BGP: Border Gateway Protocol
CAPWAP: Control and Provisioning of Wireless Access Points
COPS: Common Open Policy Service
DIDM: Device Identification and Driver management
DLUX: OpenDaylight User Experience
DDoS: Distributed Denial Of Service
DOCSIS: Data Over Cable Service Interface Specification
FRM: Forwarding Rules Manager
GBP: Group Based Policy
IoTDM: Internet of Things Data Broker
LACP: Link Aggregation Control Protocol
LISP: Locator/Identifier Separation Protocol
MAPLE: Maple Programming
NIC: Network Intent Proposal
OVSDB: Open vSwitch DataBase Protocol
OPFLEX: Extensible Policy Protocol
Legend
“LITHIUM”
AAA- AuthN Filter
OpenDaylight APIs (REST)
OpenFlow Enabled Devices
DLUX
VTN Coordinator
OpenStack Neutron
SDNI Wrapper
DDoS Protection
Open vSwitches
Additional Virtual & Physical Devices
Topology Processing
DIDM
MD-SAL / Yangtools
GBP Service
SFC
DOCSIS Abstraction
VTN Manager
Plugin20C
LISP Service
BGP
PCEP
OVSDB
OVSDB
NETCONF
PCMM/COPS
SNBI
LISP
BGP
PCEP
SNMP
Plugin20C
OpenFlow
Neutron Service
SDNI
Aggregator
Persistence
L2 Switch
TCP-MD5
SXP
USC
Discovery
IoTDM
IoT
LACP
MAPLE
ALTO
CAPWAP
Reservation
TSDR
VPN Service
NIC
USC Manager
OPFLEX
Topology
Inventory
FRM
Network Applications
Orchestrations and Services
NB APIs
Applications
Plugin Services
Controller platform
SB interfaces & protocols plugins
PCEP: Path Computation Element Protocol
PCMM: Packet Cable MultiMedia
Plugin2OC: Plugin To OpenContrail
SDNI: SDN Interface (Cross-Controller Federation)
SFC: Service Function Chaining
SNBI: Secure Network Bootstrapping Infrastructure
SNMP: Simple Network Management Protocol
SXP: Source-Group Tag eXchange Protocol
TSDR: Time Series Data Repository
TTP: Table Type Patterns
USC: Unified Secure Channel
VTN: Virtual Tenant Network
15
16
17
Flowvisor/OVX Approach: Namespace/Slice
18