TCP/IP illustrated (vol. 1): the protocols
TCP/IP illustrated (vol. 1): the protocols
U-Net: a user-level network interface for parallel and distributed computing
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
High performance messaging on workstations: Illinois fast messages (FM) for Myrinet
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
The design and implementation of the 4.4BSD operating system
The design and implementation of the 4.4BSD operating system
In search of clusters (2nd ed.)
In search of clusters (2nd ed.)
Realizing the performance potential of the virtual interface architecture
ICS '99 Proceedings of the 13th international conference on Supercomputing
An implementation and analysis of the virtual interface architecture
SC '98 Proceedings of the 1998 ACM/IEEE conference on Supercomputing
High Performance Cluster Computing: Architectures and Systems
High Performance Cluster Computing: Architectures and Systems
MPI: The Complete Reference
CANPC '98 Proceedings of the Second International Workshop on Network-Based Parallel Computing: Communication, Architecture, and Applications
ALS'00 Proceedings of the 4th annual Linux Showcase & Conference - Volume 4
Porting PVM to the VIA Architecture Using a Fast Communication Library
Proceedings of the 9th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Hi-index | 0.02 |
The Virtual Interface Architecture (VIA) is an industry standard user-level communication architecture for cluster or system area networks. The VIA provides a protected, directly-accessible interface to a network hardware, removing the operating system from the critical communication path. Although the VIA enables low-latency high-bandwidth communication, the application programming interface defined in the VIA specification lacks many high-level features.In this paper, we develop a high performance communication layer over VIA, named SOVIA (Sockets Over VIA). Our goal is to make the SOVIA layer as efficient as possible so that the performance of native VIA can be delivered to the application, while retaining the portable Sockets semantics. We find that the single-threaded implementation with conditional sender-side buffering is effective in reducing latency. To increase bandwidth, we implement a flow control mechanism similar to the TCP's sliding window protocol. Our flow control mechanism is enhanced further by adding delayed acknowledgments and the ability to combine small messages.With these optimizations, SOVIA realizes comparable performance to native VIA, showing the latency of 10.5 µsec for 4-byte messages and the peak bandwidth of 814Mbps on Giganet's cLAN. The functional validity of SOVIA is verified by porting FTP (File Transfer Protocol) application over SOVIA.