Network topology emulation and performance evaluation using multiple programmable switches
[Objective]With the emerging applications of cloud computing and artificial intelligence,traditional network topology structures are no longer suitable for the new traffic pattern.Developing novel network topologies depends on high-fidelity network emulation tools;moreover,traditional network simulators and emulators find it difficult to satisfy the requirements of high-bandwidth and-throughput network scenarios.TurboNet based on programmable switches could achieve high-fidelity network topology emulation,but its application to scenarios where multiple programmable switches are employed for the network topology emulation is difficult due to the physical link bandwidth limitations between different programmable switches.[Methods]To this end,this paper proposes a solution based on a nonlinear integer programming,which can partition the network topology and accommodate the physical link bandwidth constraints,allowing the virtual ports on each subtopology to be mapped using TurboNet on a single programmable switch,thereby enabling the emulation of a large network topology.Herein,a multilevel partitioning algorithm is proposed to further enhance the solver efficiency.The algorithm first utilizes the Metis algorithm to reduce the dimensionality of the input topology,considerably decreasing the size of the topology and enhancing the efficiency of the solver.Additionally,by combining the characteristics of network emulation scenarios,this paper proposes a solution utilizing the match-action table for programmable switches to record the probe forwarding path;as a result,this path is no longer restricted by the restriction of the programmable switch on the packet header length.Specifically,the match-action table would match the current hop number of probes with the corresponding measurement task ID.Subsequently,the existing forwarding port for the corresponding measurement task could be acquired.When sending a new probe,corresponding forwarding table entries need to be added through the control plane based on the probe forwarding path.[Results]The experimental results performed on the Internet Topology Zoo and FatTree reveal that the proposed Metis-based multilevel partition algorithm can effectively improve the solution efficiency of the algorithm.However,due to the limitations of constraint-based methods,for topologies such as FatTree with a small number of switches but a large number of ports,the effect of the multilevel partition algorithm is relatively not evident.The experimental results also demonstrate that the solution for the network telemetry on larger topologies of using the match-action tables on programmable switches to record the probe forwarding paths enables the application of Netview to emulate network topologies on longer forwarding paths.Furthermore,this paper validates the feasibility of the network emulation scheme and performance evaluation with multiple programmable switches on a testbed with two Tofino programmable switches and one server.[Conclusions]By reducing the node dimensionality in the original network topology using the Metis algorithm,the number of constraints in the partitioning problem can be effectively reduced,thereby remarkably enhancing the solution efficiency of the partitioning algorithm.Moreover,the match-action table on programmable switches can be used to record the forwarding paths of the probe,thereby removing the restrictions on the forwarding paths;this solution could be applied to network telemetry on large-scale network topologies.