C. Raiciu

Rekindling Network Protocol Innovation with User-Level Stacks

By: 
M. Honda, F. Huici, C. Raiciu, J. Araujo, L. Rizzo
Appears in: 
CCR April 2014

Public Review By: 
Sharad Agarwal

This paper has three central premises. Recent prior work has shown that despite middle boxes, 86% of Internet paths allow traffic using TCP extensions. There is still active work in new TCP extensions such as FastOpen and Multipath TCP. Deployment of TCP extensions is hampered by waiting for OS updates. This paper presents MultiStack, which is a system for user-level transport stacks. While prior work has proposed user-level stacks, this paper focuses on supporting existing OSes and allows use of the legacy OS stack along with user-level ones. It is built on FreeBSD on top of the VALE software switch with some modifications. The design isolates packet buffer access by different applications. The authors drop support for multicast, and instead scale out the number of applications that can be supported. The evaluation demonstrates almost line rate on a 10 gbps NIC with at least two cores on an Intel Core i7 with multiple applications. All the reviewers found the paper to be interesting from an engineering point of view. The network performance that the system can achieve is impressive. However, this appears to come at the cost of CPU load, and is perhaps too excessive to be used in high performance server applications. The reviewers also wondered how the performance compares to prior user-space stacks and raw sockets. Has industry forsaken TCP transport improvements by moving to UDP, or can UDP still not traverse enough Internet paths?

Syndicate content