The design and implementation of the 4.4BSD operating system
The design and implementation of the 4.4BSD operating system
An implementation and analysis of the virtual interface architecture
SC '98 Proceedings of the 1998 ACM/IEEE conference on Supercomputing
High performance RDMA-based MPI implementation over InfiniBand
ICS '03 Proceedings of the 17th annual international conference on Supercomputing
GMSOCKS - A Direct Sockets Implementation on Myrinet
CLUSTER '01 Proceedings of the 3rd IEEE International Conference on Cluster Computing
High Performance User Level Sockets over Gigabit Ethernet
CLUSTER '02 Proceedings of the IEEE International Conference on Cluster Computing
MyVIA: A Design and Implementation of the High Performance Virtual Interface Architecture
CLUSTER '02 Proceedings of the IEEE International Conference on Cluster Computing
ICPADS '01 Proceedings of the Eighth International Conference on Parallel and Distributed Systems
Sockets Direct Protocol over InfiniBand in clusters: is it beneficial?
ISPASS '04 Proceedings of the 2004 IEEE International Symposium on Performance Analysis of Systems and Software
Hi-index | 0.00 |
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.