Title: Building Efficient Network Protocols for Data Centers using Programmable Switches

Advisor: Arvind Krishnamurthy

Supervisory Committee: Arvind Krishnamurthy (Chair), Sreeram Kannan (GSR, ECE), Tom Anderson, and Ratul Mahajan

Abstract:

Historically, computer networks have been designed to have most of the complexity at the end-hosts, while the switches or routers connecting them are simple forwarding pipes that understand a fixed, well-specified set of protocols. This simplifies switch design, letting them operate at high speeds, albeit at the cost of limited flexibility and features.

On the other hand, recent advances in hardware switch architectures make it feasible to perform flexible packet processing inside the network without sacrificing performance. Network operators can configure switches to process custom packet headers to exercise greater control over how packets are processed and routed. However, these switches have limited state, support limited types of operations, and limit per-packet computation in order to be able to operate at line rate.

This work explores various techniques and mechanisms to overcome these switch restrictions and implement efficient network protocols that leverage both flexible computation and packet scheduling inside the network. First, we use approximation techniques to mask limitations on computation and network state, letting us implement complex protocols that rely on complex computations inside the network. Next, we propose an approximate scheduling mechanism based on Calendar Queues that allows us to implement a wide range of scheduling algorithms to achieve end-to-end network performance objectives. Finally, we implement these protocols on real hardware and packet-level simulators to demonstrate significant performance improvement over state-of-the-art techniques.

 

Place: 
CSE 403
When: 
Thursday, April 11, 2019 - 11:45 to 13:45