A gateway in SONA is a special compute node, which plays role as a connection point to external networks. It performs NAT and PAT for outbound traffics and also exchanges routes to with external routers with BGP or OSPF. Scalable gateway provides load balancing and high availability by allowing multiple redundant gateways to the system.
Features
- Provides load balancing balance of outbound traffics among multiple gateways
- Provides a selection of load balancing mechanisms including random, hash, and port statsfail-over for a gateway failure
- Provides dynamic add or remove of gateway nodesProvides fast failover for a gateway failure
High Level Architecture
SONA is composed of multiple ONOS applications, and Scalable Gateway and vRouter are takes in charge of the North-South connectivity.
- Scalable Gateway selects and provides a GNODE per VM
- SONA OpenstackSwitching takes care of L2 connection between CNODE and GNODE
- gateway group to OpenstackRouting
- OpenstackRouting takes care of forwarding outbound traffic to the gateway group
- SONA OpenstackRouting takes care of NAT/PAT at the gateways
- vRouter takes care of connectivity between GNODEs and external routers
...
- GNODE is composed of two software switches controlled by SONA and vRouter
- br-int which is controlled by SONA, OpenstackRouting module specifically, performs NAT and PAT of for N-S packets
- br-router which is controlled by vRouter makes the GNODE as a legacy router and it performs forwarding packets to right port
Detailed
...
Architecture
- Scalable GW manages the information of GNODEs
- OpenstackRouting requests the information of GNODEs
- Scalable GW provides the load-balancing policy to OpenstackRouting
Scalable GW handles GNODE fail-over and scale-out
Upstream Traffic Load Balancing
Gateway Node Fail-Over
Dynamic Gateway Node Scale-Out
...
Scalable Gateway takes an advantage of OpenFlow “Fast Failover” group for load balancing and HA, where each bucket represents a single gateway. Each VM has its own gateway group and the bucket order of each group is decided by various mechanisms of the scalable gateway so that the outbound traffic of the VMs can be distributed.
Note |
---|
Fast failover group takes the first bucket until its watch port is alive. It takes the next bucket if the first bucket fails. |
...