Abstract

Communication application programming interfaces (API) constitute an important component of many network-based applications. They play a central role in the end-to-end performance ultimately delivered by networked applications. Most network architectures exploit the underlying networking API in their designs. In this paper, we conduct an empirical performance evaluation on the PC platform of some of the most popular networking API which include: Winsock/BSD, Java, and RMI. To explore the impact of the underlying operating system and Java virtual machine (JVM) architecture, we conducted performance tests on two operating systems namely, Windows NT 4.0 and Solaris 8. We found that on both operating system platforms, Winsock and BSD sockets yield about 1.8 times better throughput than Java sockets, and Java sockets in turn yield twice the throughput of that obtained using remote method invocation (RMI). We also obtained about 1.3 times higher latency overheads with Java compared to either Winsock or BSD as well as with RMI when compared to Java sockets on both Windows NT and Solaris operating systems. We hope that our results will be useful to application designers and developers in better optimizing end-to-end application performance.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call