Architecture¶
High Level Architecture Diagram¶
The flexiWAN high level architecture is depicted below. flexiWAN comprises a software based edge device, flexiEdge, and a central management system, flexiManage. In the diagram we can see a flexiEdge device connected via secure API to flexiManage. flexiManage is responsible for the configurtion of the flexiEdge devices and for the collection of statistics. In flexiManage, the network administrator can view and configure all flexiEdge devices in his network.
flexiEdge¶
A flexiEdge device comprises three key components:
Router infrastructure - a modified version of FD.io Vector Packet Processor (VPP) - https://fd.io/vppproject/vpptech/
Routing control plane - Free Range Routing (FRR) - https://frrouting.org/
flexiWAN Agent - The software element that connects flexiEdge with the flexiManage system broker through on-the-wire secure APIs
flexiAgent¶
The flexiWAN Agent connects with the flexiWAN management using a bi-directional secured web socket connection for configuration and statistics. The flexiWAN Agent supports the capabilities of:
Get simplified JSON API commands
Separate and translate APIs into internal commands provisioned in Linux and the Router
Key-value configuration storage
Orchestrate the execution sequence between various elements
Maintain configuration order
Restore the last system state and configuration after reboot
Transaction configuration processing and roll-back on failures
Monitor components and restart them on failure
Provide JSON structure of the entire configuration
Provide various CLI commands for troubleshooting
flexiManage¶
flexiManage runs a scalable web server for the network management. Through flexiManage, a network administrator can manage his devices and network. The flexiManage system broker is responsible for the communication with a set of flexiEdge devices and serves as the communication channel between the web server and the devices. The flexiWAN analytics system collects statistics from the flexiEdge devices, analyzes them and provides reports to the administrator.