blob: 0e21a7b47f5658d4648df489b61e64bb88805d16 [file] [log] [blame]
Charles Chancaebcf32021-09-20 22:17:52 -07001Specification
2=============
3
Charles Chane6bb27a2021-10-03 23:26:50 -07004SDN Features
Charles Chan7cc9b402021-10-04 16:14:20 -07005------------
Charles Chane6bb27a2021-10-03 23:26:50 -07006 - ONOS cluster of all-active N instances affording N-way redundancy and scale, where N = 3 or N = 5
7 - Unified operations interface (GUI/REST/CLI)
8 - Centralized configuration: all configuration is done on the controller instead of each individual switch
9 - Centralized role-based access control (RBAC)
10 - Automatic host (end-point) discovery: attached hosts, access-devices, appliances (PNFs), routers, etc.
11 based on ARP, DHCP, NDP, etc.
12 - Automatic switch, link and topology discovery and maintenance (keepalives, failure recovery)
Charles Chancaebcf32021-09-20 22:17:52 -070013
Charles Chane6bb27a2021-10-03 23:26:50 -070014L2 Features
Charles Chan7cc9b402021-10-04 16:14:20 -070015-----------
Charles Chane6bb27a2021-10-03 23:26:50 -070016Various L2 connectivity and tunneling support
Charles Chan7cc9b402021-10-04 16:14:20 -070017
Charles Chane6bb27a2021-10-03 23:26:50 -070018 - VLAN-based bridging
19
20 - Access, Trunk and Native VLAN support
21 - VLAN cross connect
22
23 - Forward traffic based on outer VLAN id
24 - Forward traffic based on outer and inner VLAN id (QinQ)
25 - Pseudowire
26
27 - L2 tunneling across the L3 fabric
28 - Support tunneling based on double tagged and single tagged traffic
29
30 - Support VLAN translation of outer tag
31
32L3 Features
Charles Chan7cc9b402021-10-04 16:14:20 -070033-----------
Charles Chane6bb27a2021-10-03 23:26:50 -070034IP connectivity
Charles Chan7cc9b402021-10-04 16:14:20 -070035
Charles Chane6bb27a2021-10-03 23:26:50 -070036 - IPv4 and IPv6 unicast routing (internal use of MPLS Segment Routing)
37 - Subnetting configuration on all non-spine facing leaf ports; no configuration required on any spine port
38 - IPv6 router advertisement
39 - ARP, NDP, IGMP handling
40 - Number of flows in spines greatly simplified by MPLS Segment Routing
41 - Further reduction of per-leaf flows with route optimization logic
42
43DHCP Relay
Charles Chan7cc9b402021-10-04 16:14:20 -070044----------
Charles Chane6bb27a2021-10-03 23:26:50 -070045DHCP L3 relay
Charles Chan7cc9b402021-10-04 16:14:20 -070046
Charles Chane6bb27a2021-10-03 23:26:50 -070047 - DHCPv4 and DHCPv6
48 - DHCP server either directly attached to fabric leaves, or indirectly connected via upstream router
49 - DHCP client directly either attached to fabric leaves, or indirectly connected via LDRA
50 - Multiple DHCP servers for HA
51
52vRouter
Charles Chan7cc9b402021-10-04 16:14:20 -070053-------
54vRouter presents the entire SD-Fabric as a single router (or dual-routers for HA),
55with disaggregated control/data plane
56
Charles Chane6bb27a2021-10-03 23:26:50 -070057 - Uses open-source protocol implementations like Quagga (or FRR)
58 - BGPv4 and BGPv6
59 - Static routes
60 - Route blackholing
61 - ACLs based on port, L2, L3 and L4 headers
62
63Multicast
Charles Chan7cc9b402021-10-04 16:14:20 -070064---------
Charles Chane6bb27a2021-10-03 23:26:50 -070065Centralized multicast tree computation, programming and management
Charles Chan7cc9b402021-10-04 16:14:20 -070066
Charles Chane6bb27a2021-10-03 23:26:50 -070067 - Support both IPv4 and IPv6 multicast
68 - Dual-homed multicast sinks for HA
69 - Multiple multicast sources for HA
70
71API
Charles Chan7cc9b402021-10-04 16:14:20 -070072---
Charles Chane6bb27a2021-10-03 23:26:50 -070073- Provide easy access for 3rd party edge application developers and for the Aether centralized management platform
74- Support for traffic redirecting, dropping, network slicing and QoS
75
76Programmability
Charles Chan7cc9b402021-10-04 16:14:20 -070077---------------
Charles Chane6bb27a2021-10-03 23:26:50 -070078- Support for Stratum, P4Runtime and gNMI and P4 programs
79- Innovative services enabled by programmable pipeline
80 - 4G/5G UPF - GTP encap/decap, idle-mode buffering, QoS and more
81 - BNG - PPPoE, anti-spoofing, accounting and more
82
83Troubleshooting & Diagnostics
Charles Chan7cc9b402021-10-04 16:14:20 -070084-----------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -070085- T3: Troubleshooting tool to diagnose broken forwarding paths fabric wide
86- ONOS-diags: One-click Diagnostics collection tool
87
88Topology
Charles Chan7cc9b402021-10-04 16:14:20 -070089--------
Charles Chane6bb27a2021-10-03 23:26:50 -070090SD-Fabric can start at the smallest scale (single leaf) and grow horizontally.
91
Charles Chan33528a92021-10-05 13:28:13 -070092.. image:: images/topology-scale.png
93 :width: 900px
94
95
Charles Chane6bb27a2021-10-03 23:26:50 -070096Single Leaf (ToR)
Charles Chan7cc9b402021-10-04 16:14:20 -070097-----------------
Charles Chane6bb27a2021-10-03 23:26:50 -070098This is the minimum SD-Fabric setup. In this setup, all servers are connected to a single switch.
99
100.. image:: images/topology-single.png
Charles Chan33528a92021-10-05 13:28:13 -0700101 :width: 160px
Charles Chane6bb27a2021-10-03 23:26:50 -0700102
Charles Chan33528a92021-10-05 13:28:13 -0700103Single Leaf Pair (Dual-Homing)
104------------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700105Compared to single switch, it provides more redundancy in terms of server NIC failure and link failure.
106
107.. image:: images/topology-pair.png
Charles Chan33528a92021-10-05 13:28:13 -0700108 :width: 225px
Charles Chane6bb27a2021-10-03 23:26:50 -0700109
110Leaf-Spine (without pairing)
Charles Chan7cc9b402021-10-04 16:14:20 -0700111----------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700112Compared to single switch, it offers more redundancy in terms of switch failure and provides better scalability.
113
114.. image:: images/topology-2x2.png
Charles Chan33528a92021-10-05 13:28:13 -0700115 :width: 300px
Charles Chane6bb27a2021-10-03 23:26:50 -0700116
117Leaf-Spine (with pairing)
Charles Chan7cc9b402021-10-04 16:14:20 -0700118-------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700119It supports all the redundancy and scalability features mentioned above.
120
121.. image:: images/topology-2x4.png
Charles Chan33528a92021-10-05 13:28:13 -0700122 :width: 450px
Charles Chane6bb27a2021-10-03 23:26:50 -0700123
124Multi-Stage Leaf-Spine
Charles Chan7cc9b402021-10-04 16:14:20 -0700125----------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700126Multi-stage is specifically designed for telco service providers.
Charles Chan33528a92021-10-05 13:28:13 -0700127The first stage can be installed in the central office, while the second stage
128can be installed in a field office that is closer to the subscribers.
Charles Chane6bb27a2021-10-03 23:26:50 -0700129Two stages are typically connected via long distance optical transport.
130
131.. image:: images/topology-full.png
Charles Chan33528a92021-10-05 13:28:13 -0700132 :width: 700px
Charles Chane6bb27a2021-10-03 23:26:50 -0700133
134Resiliency
Charles Chan7cc9b402021-10-04 16:14:20 -0700135----------
Charles Chane6bb27a2021-10-03 23:26:50 -0700136Provides HA in following scenarios
Charles Chan7cc9b402021-10-04 16:14:20 -0700137
Charles Chane6bb27a2021-10-03 23:26:50 -0700138 - Controller instance failure (requires 3 or 5 node ONOS cluster)
139 - Link failures
140 - Spine failure
Charles Chan7cc9b402021-10-04 16:14:20 -0700141
Charles Chane6bb27a2021-10-03 23:26:50 -0700142Further HA support in following failure scenarios with dual-homing enabled
Charles Chan7cc9b402021-10-04 16:14:20 -0700143
Charles Chane6bb27a2021-10-03 23:26:50 -0700144 - Leaf failure
145 - Upstream router failure
146 - Host NIC failure
147
148Scalability
Charles Chan7cc9b402021-10-04 16:14:20 -0700149-----------
Charles Chane6bb27a2021-10-03 23:26:50 -0700150In Production
Charles Chan7cc9b402021-10-04 16:14:20 -0700151
Charles Chane6bb27a2021-10-03 23:26:50 -0700152 - Up to 80k routes (with route optimization)
153 - 170k Flows
154 - 600 direct-attached hosts
155 - 8 leaf switches
156 - 2 spine switches
157
158In Pre-Production
Charles Chan7cc9b402021-10-04 16:14:20 -0700159
Charles Chane6bb27a2021-10-03 23:26:50 -0700160 - Up to 120k routes (with route optimization)
161 - 250k flows
162 - 600 direct-attached hosts
163 - 8 leaf switches
164 - 2 spine switches
165 - 5000 active UEs, 10 call per second
166
167Security
Charles Chan7cc9b402021-10-04 16:14:20 -0700168--------
Charles Chane6bb27a2021-10-03 23:26:50 -0700169 - TLS-secured connection between controllers and switches (premium feature)
170 - AAA 802.1x authentication
171
172Aether-ready
Charles Chan7cc9b402021-10-04 16:14:20 -0700173------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700174Fully integrated with Aether (5G/LTE private enterprise edge cloud solution)
175including deployment automation, CI/CD, logging, monitoring, and alerting.
176
177Overlay Support
Charles Chan7cc9b402021-10-04 16:14:20 -0700178---------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700179Can be used/integrated with 3rd party overlay networks (e.g., OpenStack Neutron, Kubernetes CNI).
180
181Orchestrator Support
Charles Chan7cc9b402021-10-04 16:14:20 -0700182--------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700183Can be integrated with an external orchestrator, optionally running from the public cloud
184Supports logging, telemetry, monitoring and alarm services via
185REST APIs and Elastic/Fluentbit/Kibana, Prometheus/Grafana
186
187Controller Server Specs
Charles Chan7cc9b402021-10-04 16:14:20 -0700188-----------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700189Recommendation (per ONOS instance) based on 50K routes
Charles Chan7cc9b402021-10-04 16:14:20 -0700190
Charles Chane6bb27a2021-10-03 23:26:50 -0700191 - CPU: 32 Cores
192 - RAM: 128GB RAM. 64GB dedicated to ONOS JVM heap
193
194White Box Switch Hardware
Charles Chan7cc9b402021-10-04 16:14:20 -0700195-------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700196- Multi-vendor: APS Networks™, Dell™, Delta Networks™, Edgecore Networks™, Inventec™, Netburg™, QCT
197- Multi-chipset:
198 - Intel Tofino (supports all features, including programmability, UPF & INT)
199 - Broadcom Tomahawk®, Tomahawk+®, Trident2 (traditional fabric features only)
200- 1/10G, 25G, 40G, 100G
201- Refer to Supported Devices list in https://github.com/stratum/stratum for the most up-to-date hardware list
202
203White Box Switch Software
Charles Chan7cc9b402021-10-04 16:14:20 -0700204-------------------------
Charles Chane6bb27a2021-10-03 23:26:50 -0700205- Open source ONL, ONIE, Docker, Kubernetes
206- Stratum available from ONF