ACM SIGCOMM Computer Communication Review · 2014 · 46 citations · 11 references
ComputingComputer ScienceComputer SystemsDistributed SystemsEdge ComputingInterconnection NetworksEdge ArchitectureScalability ArchitectureHigh PerformanceNetwork Protocol StacksNetwork StackNetwork Stack ImplementationResource ScalingScalability Trade-offs
Contemporary network stacks are masterpieces of generality, supporting many edge-node and middle-node functions. Generality comes at a high performance cost: current APIs, memory models, and implementations drastically limit the effectiveness of increasingly powerful hardware. Generality has historically been required so that individual systems could perform many functions. However, as providers have scaled services to support millions of users, they have transitioned toward thousands (or millions) of dedicated servers, each performing a few functions. We argue that the overhead of generality is now a key obstacle to effective scaling, making specialization not only viable, but necessary. We present Sandstorm and Namestorm, web and DNS servers that utilize a clean-slate userspace network stack that exploits knowledge of application-specific workloads. Based on the netmap framework, our novel approach merges application and network-stack memory models, aggressively amortizes protocol-layer costs based on application-layer knowledge, couples tightly with the NIC event model, and exploits microarchitectural features. Simultaneously, the servers retain use of conventional programming frameworks. We compare our approach with the FreeBSD and Linux stacks using the nginx web server and NSD name server, demonstrating 2--10x and 9x improvements in web-server and DNS throughput, lower CPU usage, linear multicore scaling, and saturated NIC hardware.
11
Thorsten von Eicken, Anindya Basu, V. Buch et al. · 1995 · 719 citations
Anil Madhavapeddy, Richard Mortier, Charalampos Rotsos et al. · 2013 · 402 citations
Fbufs: a high-bandwidth cross-domain transfer facility
Peter Druschel, Larry Peterson · 1993 · 333 citations
Vivek S. Pai, Peter Druschel, Willy Zwaenepoel · ACM Transactions on Computer Systems · 2000 · 187 citations · Full text
Towards high performance virtual routers on commodity hardware
Norbert Egi, Adam Greenhalgh, Mark Handley et al. · 2008 · 140 citations · Full text