Network Application Programming Interfaces (APIs) are important components of network-based applications. They play a central role in the end-to-end performance ultimately delivered by networked applications. In addition, most network architectures exploit the underlying networking APIs in their designs. We present an empirical performance evaluation on the PC platform of the most popular networking APIs, namely: Winsock/BSD, Java, and RMI.To explore the impact of the underlying operating system and the Java Virtual Machine architecture on the networking APIs, we conducted performance tests on four widely used operating systems namely, Windows NT 4.0, Windows 2000, Linux, and Solaris 8. We found that RMI latency is 1.7 times higher over Java. Latency over Java is around two to three times higher than over native Windows or BSD sockets. Moreover, native sockets yield around 1.8 and 3.5 times higher throughput over Java and RMI, respectively. We hope that our results will be useful to application designers and developers and help them better optimize the end-to-end performance of their applications with a knowledge of the performance of the underlying networking APIs.
|Number of pages||6|
|Journal||Information and Software Technology|
|State||Published - May 1 2004|
Bibliographical noteFunding Information:
This work was supported by a grant (EDUD-7824-000145-US) from Sun Microsystems Inc. (Palo Alto). The authors thank DV Sreenath for his suggestions on improving the quality of this paper. We would also like to thank the anonymous reviewers for their constructive comments and suggestions which greatly helped to improve the quality and presentation of this paper.
- Operating system
ASJC Scopus subject areas
- Information Systems
- Computer Science Applications