ECE Special Seminar: Keon Jang (Intel Labs) – “End Host Newtork Support for Datacenters”
Speaker : Keon Jang
In this talk, I’ll present Silo, an end-host based solution to provide latency guarantee in multi-tenant datacenters. Many cloud applications can benefit from guaranteed latency for their network messages, however providing such predictability is hard, especially in multi-tenant datacenters. We identify three key requirements for such predictability: guaranteed network bandwidth, guaranteed packet delay and guaranteed burst allowance. Silo leverages the tight coupling between bandwidth and delay: controlling tenant bandwidth leads to deterministic bounds on network queuing delay. Silo builds upon network calculus to place tenant VMs with competing requirements such that they can coexist. A novel hypervisor-based policing mechanism achieves packet pacing at sub-microsecond granularity, ensuring tenants do not exceed their allowances. We have implemented a Silo prototype comprising a VM placement manager and a Windows filter driver. Silo does not require any changes to applications, guest OSes or network switches. We show that Silo can ensure predictable message latency for cloud applications while imposing low overhead.
From the experience of Silo, we have learned that implementing new functionalities today’s network stack doesn’t provide high performance while implementing such functions in hardware takes too much time and effort. Motivated by this, we developed SoftNIC, which is a network augmentation layer to implement network functions at the end host. As the main gateway for network traffic to a server, the network interface card (NIC) is an ideal place to incorporate diverse network functionality, such as traffic control, protocol offloading, and virtualization. However, the slow evolution and inherent inflexibility of NIC hardware have failed to support evolving protocols, emerging applications, and rapidly changing system/network architectures. The traditional software approach to this problem?implementing NIC features in the host network stack?is unable to meet increasingly challenging performance requirements. SoftNIC is a hybrid software-hardware architecture to bridge the gap between limited hardware capabilities and ever changing user demands. SoftNIC provides a programmable platform that allows applications to leverage NIC features implemented in software and hardware, without sacrificing performance. Our evaluation results show that SoftNIC achieves multi-10G performance even on a single core and scales further with multiple cores. We also present a variety of use cases to show the potential of software NIC augmentation.
Keon Jang is a research scientist at Intel Labs. Prior to joining Intel Labs, he was a post-doctoral researcher at Microsoft Research, Cambridge and KAIST. He received Ph.D from KAIST under Prof. Sue Moon and Prof. KyoungSoo Park. His research interest is in networking software systems and datacenter networking.