MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Implementing protocols in Java: The price of portability (1998) [8 citations — 0 self]

Download:
Download as a PDF | Download as a PS
by Bobby Krupczak, Ken Calvert, Mostafa Ammar
In IEEE INFOCOM'98
http://www.tns.lcs.mit.edu/~djw/library/GIT-CC-97-21.ps.gz
Add To MetaCart

Abstract:

As the number and variety of Web- and network-based applications continues to increase, so does the need for flexible communication protocols and services to support them. Traditionally, a major impediment to deployment of new protocols is the need to upgrade millions of end-systems with compatible implementations. At the same time, Java--- a language explicitly designed to support development and distribution of new applications via the Web--- is emerging as a (potentially) ubiquitous system platform. It is therefore natural to consider whether Java might speed the introduction of protocols to better support new applications. In this paper, we investigate the tradeoffs involved in using Java for protocol implementation and deployment. Using insights from a Java-based protocol suite and supporting subsystem we have implemented, we describe the benefits of using the Java language and quantify the performance cost of implementing a protocol in Java for various combinations of interpretation and compilation. We find that the performance cost of using Java-based protocols is presently equivalent to four years of hardware performance gains, i.e., interpreted, Java-based protocol performance on current hardware is roughly equivalent to the performance of compiled C code on four-year-old hardware.

Citations

1452 The Java Language Specification – Gosling, Joy, et al. - 1996
594 The x-Kernel: An architecture for implementing network protocols – Hutchinson, Peterson - 1991
371 Congestion avoidance and control – Jacobson - 1988
271 The World-Wide Web – Berners-Lee, Cailliau, et al. - 1994
219 Efficient implementation of the Smalltalk-80 system – Deutsch, Schiffman - 1984
217 A Stream Input-Output System – Ritchie - 1984
143 Implementing network protocols at user level – Thekkath, Nguyen, et al. - 1993
93 An Object-Oriented Framework for Dynamically Configuring Extensible Distributed Communication Systems – Schmidt, Suda - 1994
61 Dynamic binding for an extensible system – Pardyak, Bershad - 1996
46 Transport System Architecture Services for High-Performance Communications Systems – Schmidt, Suda - 1993
37 A programmable interface language for heterogeneous systems – Falcone - 1987
37 Flexible Protocol Stacks – Tschudin - 1991
22 Dynamic Host Configuration Protocol,’’ Request for Comments 2131 – Droms - 1997
18 Modules as building blocks for protocol configuration – Plagemann, Plattner, et al. - 1993
16 The Java Virtual Machine Specification – Microsystems - 1995
7 JavaOS: A Standalone Java Environment – Madany - 1996
6 Multi-subsystem protocol architectures: Motivation and experience with an adapter-based approach – Krupczak, Ammar, et al. - 1996
3 Increasing the portability and re-usability of protocol code – Krupczak, Calvert, et al. - 1997
3 Implementing communication protocols using object-oriented techniques – Lavender, Kafura, et al. - 1992
2 System V Network Programmer’s Guide – UNIX - 1987
2 DNS encoding of network names and other types. Request for Comments RFC – Mockapetris - 1989
1 Standardized protocol interfaces – Holzmann - 1993
1 Protocol Portability through Module Encapsulation – Krupczak, Calvert, et al. - 1996