Implementing protocols in Java: the price of portability

Bobby Krupczak, Kenneth L. Calvert, Mostafa Ammar

Research output: Contribution to journalConference articlepeer-review

9 Scopus citations

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 present performance cost of using Java-based protocols is roughly 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.

Original languageEnglish
Pages (from-to)765-773
Number of pages9
JournalProceedings - IEEE INFOCOM
Volume2
StatePublished - 1998
EventProceedings of the 1998 17th Annual IEEE Conference on Computer Communications, INFOCOM. Part 1 (of 3) - San Francisco, CA, USA
Duration: Mar 29 1998Apr 2 1998

ASJC Scopus subject areas

  • General Computer Science
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'Implementing protocols in Java: the price of portability'. Together they form a unique fingerprint.

Cite this