Potential performance bottleneck in Linux TCP
TCP is the most widely used transport protocol on the Internet today. Over the years, especially recently, due to requirements of high bandwidth transmission, various approaches have been proposed to improve TCP performance. The Linux 2.6 kernel is now preemptible. It can be interrupted mid-task, making the system more responsive and interactive. However, we have noticed that Linux kernel preemption can interact badly with the performance of the networking subsystem. In this paper we investigate the performance bottleneck in Linux TCP. We systematically describe the trip of a TCP packet from its ingress into a Linux network end system to its final delivery to the application; we study the performance bottleneck in Linux TCP through mathematical modeling and practical experiments; finally we propose and test one possible solution to resolve this performance bottleneck in Linux TCP.
- Research Organization:
- Fermi National Accelerator Lab. (FNAL), Batavia, IL (United States)
- Sponsoring Organization:
- USDOE
- DOE Contract Number:
- AC02-07CH11359
- OSTI ID:
- 897196
- Report Number(s):
- FERMILAB-PUB-06-432-CD; TRN: US200704%%650
- Country of Publication:
- United States
- Language:
- English
Similar Records
Enhanced Explicit Congestion Notification (EECN) in TCP with P4 Programming
QMP-MVIA: a message passing system for Linux clusters with gigabit Ethernet mesh connections