Nowadays, it is possible to have high-performance software-based network functions. This concept, known as Network Function Virtualization (NFV), enables us to run network functions on-demand and where they are needed. Another aspect of network softwarization is Software-defined networking (SDN), which separates data and control plane and a logically centralized controller controls data plane. The computer network enabled by SDN and NFV has unique and interesting challenges and opportunities. In these networks, network functions can be instantiated all over the network, and the flows are steered through them, which is known as service chaining.
In one branch of our work, we showed how jointly solving routing, and network function placement problem outperforms traditional placement solutions. Next step was designing a protocol for service chaining in these networks. Hence, we showed that efficient use of available information in the centralized controller makes the protocol more efficient with a reduces the number of messages and bits in the headers. Thus far, we had considered nodes as black boxes, but in the next branch of our work, we focused on each node. We proposed a solution for the architecture of a protocol-free software switch equipped with SmartNICs and the optimization of resources to carry out different tasks within each node.
Based on the lessons we learned in the projects above, we worked on the application of these technologies in the cellular domain. We proposed an NFV-based architecture and protocol for the cellular packet core. Our proposed architecture, CleanG, is simple, scalable, and efficient. In addition, in the CleanG protocol, the number of control messages exchanged is reduced dramatically, and packets are forwarded through more efficient tunneling. This reduction in messages lowers the delay and the load on control plane components, which increases the system capacity dramatically.
In conclusion, software-based networks provide a plethora of opportunities for the next generations of networks. However, to leverage them efficiently, we believe merely implementing hardware components as a software piece is not the answer. Thus, it is crucial to rethink the architecture and protocols, and the specific challenges and opportunities of software-based networks should be considered.