Skip to Main Content
Since user-level communication architecture (ULC) provides only primitive operations for application programmers, many high-level communication layers have been developed on top of ULC. One of such high-level communication layers is the sockets interface and it can be supported over ULC architectures in several ways. The primary objective of this paper is to identify design issues and tradeoffs among these different approaches, and to quantitatively analyze their performance to understand the various costs associated with the communication. In this paper, we design and implement KSOVIA, a kernel-level sockets layer over VIA, and compare it with the existing approaches such as a user-level sockets layer over VIA and an IP emulation layer over VIA. Our measurement results show that using an IP emulation layer exhibits the worst performance in terms of latency and bandwidth and a user-level sockets layer is useful for latency-sensitive applications. KSOVIA is found to be effective for applications, which require high bandwidth or the full compatibility with the sockets interface.