Abstract
Since user-level communication (ULC) architecture provides only primitive operations for application programmers, there have been several researches to build a portable and standard communication interface, such as sockets, on top of ULC architecture. Basically there are three different approaches to supporting the sockets interface over ULC architecture: LAN emulation, a user-level sockets, and a kernel-level sockets. The primary objective of this paper is to compare these approaches in terms of their design, implementation, and performance.
We have developed and implemented a kernel-level sockets layer over ULC architecture, since there is currently no available implementation. We also present different design and implementation decisions on data receiving, data sending, connection management, etc. in the three approaches. Through the performance comparison, we show that LAN emulation approach exhibits the worst performance both in latency and bandwidth. Our experiments also show that a user-level sockets is useful for latency-sensitive applications and a kernel-level sockets is effective for applications which require high bandwidth and full compatibility with the legacy sockets interface.
References
Balaji P, Narravula S, Vaidyanathan K, Krishnamoorthy S, Wu J, Panda DK (2004) Sockets direct protocol over InfiniBand in clusters: is it benefitial? In: Proceedings of the IEEE international symposium on performance analysis of systems and software, IEEE Computer Society Press, Los Alamitos, pp 28–35
Balaji P, Shivan P, Wyckoff P, Panda D (2002) High performance user level sockets over gigabit ethernet. In: Proceedings of the IEEE international conference on cluster computing, IEEE Computer Society Press, Los Alamitos, pp 179–186
Baker M (ed) (December 2000) Cluster computing white paper (Version 2.0). IEEE Task Force on Cluster Computing
Bozeman P, Saphir B (1999) A modular high performance implementation of the Virtual Interface Architecture. In: Proceedings of extreme linux conference
Buonadonna P, Geweke A, Culler D (1998) An implementation and analysis of the Virtual Interface Architecture. In: Proceedings of ACM/IEEE international conference on supercomputing (CDROM), IEEE Computer Society Press, Los Alamitos, pp 1–15
Cameron D, Regnier G (2002) The virtual interface architecture. Intel Press
Chen Y, Wang X, Jiao Z, Xie J, Du Z, Li S (2002) MyVIA: a design and implementation of the high performance Virtual Interface Architecture. In: Proceedings of the IEEE international conference on cluster computing, IEEE Computer Society Press, Los Alamitos, pp 160–167
Compaq Corporation, Intel Corporation, and Microsoft Corporation (1997) Virtual interface architecture specification, Version 1.0
Emulex Corporation-Products. http://www.emulex.com/products/legacy/vi/clan1000.html
Emulex Inc (2001) cLAN for Linux. Software User’s Guide
Fischer M (2001) GMSOCKS—a direct sockets implementations on myrinet. In: Proceedings of the IEEE international conference on cluster computing, IEEE Computer Society Press, Los Alamitos, pp 204–211
InfiniBand Linux SourceForge Project: http://infiniband.sourceforge.net
InfiniBand Trade Association. http://www.infinibandta.org
Itoh M, Ishizaki T, Kishimoto M (2000) Accelerated socket communication in system area network. In: Proceedings of the IEEE international conference on cluster computing, IEEE Computer Society Press, Los Alamitos, pp 357–358
Kim J-S, Kim K, Jung S-I, Ha S. (2003) Design and implementation of a user-level sockets layer over Virtual Interface Architecture. Concurr Comput Pract Exp 15(7–8):727–749
Liu J, Wu J, Panda DK (2003) High performance RDMA-based MPI implementation over InfiniBand. In: Proceedings of the 17th annual international conference on supercomputing, ACM Press, New York, pp 295–304
McKusick MK, Bostic K, Karels MJ, Quarterman JS (1996) The design and implementation of the 4.4 BSD operating system. Addison-Wesley, Reading
MVICH—MPI for the Virtual Interface Architecture. http://old-www.nersc.gov/research/FTG/mvich
OpenIB.org. http://www.openib.org
Seifert F, Kohmann H SCI SOCKET—a fast socket implementation over SCI. White paper, Dophin Interconnect Solutions Inc
TOP500 Supercomputer sites. http://www.top500.org
Yu J-L, Lee M-S, Maeng S-R (2001) An efficient implementation of Virtual Interface Architecture using adaptive transfer mechanism on myrinet. In: Proceedings of international conference on parallel and distributed systems, IEEE Computer Society Press, Los Alamitos, pp 741–747
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Jang, JW., Kim, JS. Design issues and performance comparisons in supporting the sockets interface over user-level communication architecture. J Supercomput 39, 205–226 (2007). https://doi.org/10.1007/s11227-007-0109-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-007-0109-5