Technical Report Number
This paper presents a Real-time Upcall (RTU)  based TCP/IP implementation that guarantees throughput for continuous media applications and ensures low latency bounds for interactive applications. RTU is an endsystem rate-based scheduling mechanism that provides quality of service (QoS) in terms of CPU cycles, to applications. We restructured the existing NetBSD TCP/IP implementation to exploit the RTU concurrency model and to provide predictable performance. Our experimental results show that on two 200 MHz NetBSD PCs connected by a 155Mbps ATM link, the RTU based kernel TCP/IP implementation provides excellent throughput guarantees for periodic connections regardless the system or network load. The round trip time (RTT) for low-delay connections with message size of 1 KB typically as low as 600 micro seconds, and only increases slowly with increasing system load. Another important result is that this performance is preserved even when all three type of connections coexist in our testbed: the periodic connection is guaranteed its share of bandwidth, the low-delay connection achieves low RTT of 1.2 msec, while the best-effort connection still makes steady progress.
Shi, Sherlia Y.; Parulkar, Gurudatta M.; and Gopalakrishnan, R., "TCP/IP Implementation with Endsystem QoS" Report Number: WUCS-98-10 (1998). All Computer Science and Engineering Research.