Abstract
A communication subsystem consists of protocol functions and operating system mechanisms that support the implementation and execution of protocol stacks. To effectively parallelize a communication subsystem, careful consideration must be given to the process architecture used to structure multiple processing elements. A process architecture binds one or more processing elements with the protocol tasks and messages associated with protocol stacks in a communication subsystem. This paper outlines the two fundamental types of process architectures (task-based and message-based) and describes performance experiments conducted on three representative examples of these two types of process architectures — Layer Parallelism, which is a task-based process architecture, and Message-Parallelism and Connectional Parallelism, which are message-based process architectures. These experiments measure the impact of the process architecture on connectionless and connection-oriented protocol stacks (based upon UDP and TCP) in a shared-memory multi-processor operating system. The results from these experiments indicate that the choice of process architecture significantly affects communication subsystem performance.
This research is supported in part by grants from the University of California MICRO program, Hughes Aircraft, Nippon Steel Information and Communication System Inc. (ENICOM), Hitachi Ltd. Hitachi America, and Tokyo Electric Power Company.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Mats Bjorkman and Per Gunningberg, “Locking Strategies in Multiprocessor Implementations of Protocols,” in SIGCOMM Symposium on Communications Architectures and Protocols, ( San Francisco, California ), ACM, 1993.
M. Zitterbart, “High-Speed Transport Components,” IEEE Network Magazine, pp. 54–63, January 1991.
M. Goldberg, G. Neufeld, and M. Ito, “A Parallel Approach to OSI Connection-Oriented Protocols,” in Proceedings of the 3rd IFIP Workshop on Protocols for High-Speed Networks, ( Stock holm, Sweden ), May 1992.
J. Jain, M. Schwartz, and T. Bashkow, “Transport Protocol Processing at GBPS Rates,” in SIGCOMM Symposium on Communications Architectures and Protocols, (Philadelphia, PA), pp. 188–199, ACM, Sept. 1990.
C. M. Woodside and R. G. Franks, “Alternative software architectures for parallel protocol execution with synchronous ipc,” IEEE/ACM Transactions on Networking, vol. 1, Apr. 1993.
J. Eykholt, S. Kleiman, S. Barton, R. Faulkner, A. Shivalingiah, M. Smith, D. Stein, J. Voll, M. Weeks, and D Williams, “Beyond Multiprocessing… Multithreading the SunOS Kernel,” in Summer USENIX Conference, ( San Antonio, Texas ), June 1992.
A. Tevanian, R. Rashid, D. Golub, D. Black, E. Cooper, and M. Young, “Mach Threads and the Unix Kernel: The Battle for Control,” in USENIX Summer Conference, USENIX, August 1987.
D. Presotto, “Multiprocessor Streams for Plan 9,” in United Kingdom UNIX User Group Summer Proceedings, ( London, England ), Jan. 1993.
B. Lindgren, B. Krupczak, M. Ammar, and K. Schwan, “Parallelism and Configurability in High Performance Protocol Architectures,” in Proceedings of the Second Workshop on the Architecture and Implementation of High Performance Communication Subsystems, (Williamsburg, Virgina), IEEE, September 1993.
T. Braun and M. Zitterbart, “Parallel Transport System Design,” in Proceedings of the 4th IFIP Conference on High Performance Networking, ( Belgium ), IFIP, 1993.
M. Zitterbart, B. Stiller, and A. Tantawy, “A Model for High-Performance Communication Subsystems,” IEEE Journal on Selected Areas in Communication, vol. 11, pp. 507–519, May 1993.
D. Giarrizzo, M. Kaiserswerth, T. Wicki, and R. Williamson, “High-Speed Parallel Protocol Implementations,” in Proceedings of the 1st International Workshop on High-Speed Networks, pp. 165–180, May 1989.
N. C. Hutchinson and L. L. Peterson, “The x-kernel: An Architecture for Implementing Network Protocols,” IEEE Transactions on Software Engineering, vol. 17, pp. 64–76, January 1991.
S. Saxena, J. K. Peacock, F. Yang, V. Verma, and M. Krishnan, “Pitfalls in Multithreading SVR4 STREAMS and other Weightless Processes,” in Winter USENIX Conference, (San Diego, CA), pp. 85–106, Jan. 1993.
D. C. Schmidt and T. Suda, “The ADAPTIVE Service eXecutive: an Object-Oriented Architecture for Configuring Concurrent Distributed Applications,” in The proceedings of the 8th International Working Conference on Upper Layer Protocols, Architectures, and Applications, (Barcelona, Spain), IFIP, June 1994.
D. C. Schmidt, “Reactor: An Object Behavioral Pattern for Concurrent Event Demultiplexing and Dispatching,” in lst Annual Conference on the Pattern Languages of Programs, (Monticello, Illinois ), ACM, August 1994.
D. Ritchie, “A Stream Input—Output System,” ATandT Bell Labs Technical Journal, vol. 63, pp. 311–324, Oct. 1984.
J. M. Zweig, “The Conduit: a Communication Abstraction in C++,” in USENIX C++ Conference Proceedings, pp. 191–203, USENIX Association, April 1990.
D. C. Schmidt and T. Suda, “Transport System Architecture Services for High-Performance Communications Systems,” IEEE Journal on Selected Areas in Communication, vol. 11, pp. 489–506, May 1993.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1995 Springer Science+Business Media Dordrecht
About this chapter
Cite this chapter
Schmidt, D.C., Suda, T. (1995). Measuring the Impact of Alternative Parallel Process Architectures on Communication Subsystem Performance. In: Neufield, G., Ito, M. (eds) Protocols for High Speed Networks IV. PfHSN 1995. IFIP Advances in Information and Communication Technology. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-34885-8_8
Download citation
DOI: https://doi.org/10.1007/978-0-387-34885-8_8
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4757-6314-0
Online ISBN: 978-0-387-34885-8
eBook Packages: Springer Book Archive