Towards a More Stable Network Infrastructure
There have been many recent proposals to change the network infrastructure in order to meet different performance objectives. These changes are often difficult to deploy, either requiring specialized network switching hardware or greatly complicating network management. Rather than continuing to add new features to the network in an adhoc manner, we advocate a more principled approach for meeting different performance objectives, that leads to a more stable network infrastructure. This approach is based on the following two questions:
(1) Can we avoid making changes to the network infrastructure by finding solutions that only change the end-points? Here, we focus on congestion control for both wide-area and datacenter networks, showing how the end-points can be updated to achieve near-optimal performance using commodity switches, and on redesigning RDMA NICs to eliminate their reliance on the in-network mechanism for loss avoidance.
(2) When infrastructure changes are needed, can we make them universal in nature? Here, we focus on packet scheduling, examining whether we can have a universal packet scheduling algorithm that can mimic all others. We show, both theoretically and practically, that we can have an almost-universal packet scheduling algorithm that can closely mimic other scheduling algorithms and can achieve a variety of network-wide performance objectives.