The Importance of Non-Data Touching Processing Overheads in TCP/IP

We present detailed measurements of various processing overheads of the TCP/IP and UDP/IP protocol stacks on a DECstation 5000/200 running the Ultrix 4.2a operating system. These overheads include data-touching operations, such as the checksum computation and data movement, which are well known to be major time consumers. In this study, we also considered overheads due to non-data touching operations, such as network buffer manipulation, protocol-specific processing, operating system functions, data structure manipulations (other than network buffers), and error checking. We show that when one considers realistic message size distributions, where the majority of messages are small, the cumulative time consumed by the non-data touching overheads represents the majority of processing time. We assert that it will be difficult to significantly reduce the cumulative processing time due to non-data touching overheads.

[1]  Robert T. Braden,et al.  Requirements for Internet Hosts - Communication Layers , 1989, RFC.

[2]  Riccardo Gusella,et al.  A measurement study of diskless workstation traffic on an Ethernet , 1990, IEEE Trans. Commun..

[3]  David C. Plummer,et al.  Ethernet Address Resolution Protocol: Or Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware , 1982, RFC.

[4]  David D. Clark,et al.  Architectural considerations for a new generation of protocols , 1990, SIGCOMM '90.

[5]  John K. Ousterhout,et al.  Why Aren't Operating Systems Getting Faster As Fast as Hardware? , 1990, USENIX Summer.

[6]  C MogulJeffrey Network locality at the scale of processes , 1992 .

[7]  Jon Postel,et al.  Transmission Control Protocol , 1981, RFC.

[8]  David Clark,et al.  An analysis of TCP processing overhead , 1989 .

[9]  David A. Mosher,et al.  User-Process Communication Performance in Networks of Computers , 1988, IEEE Trans. Software Eng..

[10]  Paul E. McKenney,et al.  Efficient demultiplexing of incoming TCP packets , 1992, SIGCOMM 1992.

[11]  William I. Nowicki,et al.  NFS: Network File System Protocol specification , 1989, RFC.

[12]  David D. Clark,et al.  Modularity and efficiency in protocol implementation , 1982, RFC.

[13]  Shivakant Mishra,et al.  Tools for implementing network protocols , 1989, Softw. Pract. Exp..

[14]  Richard W. Watson,et al.  Gaining efficiency in transport services by appropriate design and implementation choices , 1987, TOCS.

[15]  Samuel J. Leffler,et al.  The design and implementation of the 4.3 BSD Unix operating system , 1991, Addison-Wesley series in computer science.

[16]  Jon Postel,et al.  The TCP Maximum Segment Size and Related Topics , 1983, RFC.

[17]  Jeffrey C. Mogul Network Locality at the Scale of Processes , 1992, ACM Trans. Comput. Syst..

[18]  David D. Clark,et al.  The structuring of systems using upcalls , 1985, SOSP '85.

[19]  C. Partridge,et al.  Computing the internet checksum , 1989, CCRV.

[20]  Joseph Pasquale,et al.  Measurement, Analysis, and Improvement of UDP/IP Throughput for the DECstation 5000 , 1993, USENIX Winter.

[21]  Peter B. Danzig,et al.  Characteristics of wide-area TCP/IP conversations , 1991, SIGCOMM 1991.