I follow the SDN industry and in today’s world “white box” switches and now routers are very hot products right now.
I came across 2 projects that appear to be idea for those looking for Advanced Networking for LXD and for which I think the new LXC/LXD 3.0 release and the clustering feature announcement are ideal.
First there is Beluganos which already uses LXD: GitHub - beluganos/beluganos: The new network OS designed for white-box switches based on open API.
Beluganos is a new network OS designed for white-box switches (OF-DPA), which can apply large-scale networks.
-
IP Routing (BGP, OSPF, ...)
-
IP/MPLS, BGP/MPLS IP-VPNs
-
Interoperability with conventional IP or IP/MPLS router
-
ASIC based full hardware processing
Second, reading the Beluganos’ I read the “requirements”:
You can also build Beluganos in the white-box switches, but installing another Ubuntu server is recommended at first.
Ubuntu server Ubuntu 16.04 server is strongly recommended. Two or more network interfaces are required. White-box switches OF-DPA 2.0 switch and OpenFlow agent are required. ** If you don't have OF-DPA switches, any OpenFlow1.3 switches are acceptable to try Beluganos. In this case, we recommend the Lagopus switch.
This Lagopus switch software (from NTT - Nippon Telegraph and Telephone) also seems prime for use in an LXD host but perhaps could also be configured to be used in LXD/LXC containers.
So its my guess that you could use a combination of Beleganos & Lagopus & LXD containers to create some pretty powerful Linux based routing/switching capabilities !
I’ve not experimented with the new LXD clustering capabilities yet but mentally I could envision how that could make the above combination very powerful as a large virtual switch/router.