Reliable network connections

  • Authors:
  • Victor C. Zandy;Barton P. Miller

  • Affiliations:
  • University of Wisconsin, Madison, Wisconsin;University of Wisconsin, Madison, Wisconsin

  • Venue:
  • Proceedings of the 8th annual international conference on Mobile computing and networking
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present two systems, reliable sockets (rocks) and reliable packets (racks), that provide transparent network connection mobility using only user- level mechanisms. Each system can detect a connection failure within seconds of its occurrence, preserve the endpoint of a failed connection in a suspended state for an arbitrary period of time, and automatically reconnect, even when one end of the connection changes IP address, with correct recovery of in-flight data. To allow rocks and racks to interoperate with ordinary clients and servers, we introduce a general user-level Enhancement Detection Protocol that enables the remote detection of rocks and racks, or any other socket enhancement system, but does not affect applications that use ordinary sockets. Rocks and racks provide the same functionality but have different implementation models: rocks intercept and modify the behavior of the sockets API by using an interposed library, while racks uses a packet filter to intercept and modify the packets exchanged over a connection. Racks and rocks introduce small throughput and latency overheads that we deem acceptable for the level of mobility and reliability they provide.