Abstract / Description of output
With the advances in network speeds a single processor cannot cope anymore with the growing number of data streams from a single network card. Multicore processors come at a rescue but traditional SMP OSes, which integrate the software network stack, scale only to a certain extent, limiting an application’s ability to serve more connections while increasing the number of cores. On the other hand, kernel bypass solutions seem to scale better, but limit resource flexibility and control. We propose attacking these problems with a distributed OS design, using multiple network stacks (one per kernel) and relying on multi-queue hardware and hardware flow steering. This creates a single-socket abstraction among kernels while minimizing inter-core communication. We introduce our design, consisting of a distributed network stack, a distributed device driver, and a load-balancing algorithm. We compare our prototype, NetPopcorn, with Linux, Affinity Accept, FastSocket. NetPopcorn accepts between 5 to 8 times more connections and reduces the tail latency compared to these competitors. We also compare NetPopcorn with mTCP and observe that for high core counts, mTCP accepts only 18% more connections yet with higher tail latency than NetPopcorn.
Original language | English |
---|---|
Title of host publication | 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS) |
Publisher | Institute of Electrical and Electronics Engineers |
Pages | 2646-2649 |
Number of pages | 4 |
ISBN (Electronic) | 978-1-5386-1792-2 |
ISBN (Print) | 978-1-5386-1793-9 |
DOIs | |
Publication status | Published - 17 Jul 2017 |
Event | The 37th IEEE International Conference on Distributed Computing Systems - Atlanta, United States Duration: 5 Jun 2017 → 8 Jun 2017 http://icdcs2017.gatech.edu/ |
Publication series
Name | |
---|---|
Publisher | Institute of Electrical and Electronics Engineers (IEEE) |
ISSN (Print) | 1063-6927 |
Conference
Conference | The 37th IEEE International Conference on Distributed Computing Systems |
---|---|
Abbreviated title | ICDCS 2017 |
Country/Territory | United States |
City | Atlanta |
Period | 5/06/17 → 8/06/17 |
Internet address |
Keywords / Materials (for Non-textual outputs)
- device drivers
- multiprocessing systems
- operating systems (computers)
- resource allocation
- distributed operating system network stack
- distributed device driver
- multicore processors
- software network stack
- distributed OS design
- single-socket abstraction
- intercore communication minimization
- load-balancing algorithm
- Linux
- Kernel
- Multicore processing
- Hardware
- Scalability
- network
- multicore
- OS
- SMP
- single IP
- connections scalability
- Popcorn Linux