The Impact of Buffer Management on Networking Software Performance in Berkeley UNIX 4.2BSD: A Case Study
Cabrera, Luis Felipe
Karels, Michael J.
Technical Report Identifier: CSD-85-247
January 1, 1985
Abstract: Berkeley UNIX 4.2BSD is an operating system which provides easy networking among 4.2BSD installations and others supporting DOD's Internet protocols. Moreover, it also offers alternative ways for processes to communicate with each other both within and across machine boundaries. Processes need not have a common ancestor to communicate and they may do so using different addressing families and styles of communication. In addition, several protocol families may be supported simultaneously.
In this paper we present a detailed timing analysis of the dynamic behavior of the TCP/IP and the UDP/IP network communication protocols' current implementation in Berkeley UNIX 4.2BSD. These measurements show the effect that kernel buffer management has on the network software performance. We discuss issues and tradeoffs involved when implementing network communication mechanisms for multiple-protocol systems. We highlight the intricate interrelationships arising from the simultaneous coexistence of different buffering policies within a system.
This study also sheds light on the inefficiencies encountered when software and hardware perform the same actions on data, e.g., checksums.