Hop logo

Hop: A Fast Wireless Transport Protocol


Overview

Hop is a transport layer protocol designed for wireless mesh networks. Hop is 1) fast, because it eliminates many sources of overhead as well as noisy end-to-end rate control, 2) robust to partitions and route changes because of hop-by-hop control as well as in-network caching, and 3) simple, because it obviates complex end-to-end rate control as well as complex interactions between the transport and link layers.

Hop features:
  1. Hop maximizes channel utilization by minimizing control overhead.
  2. Hop is robust to message losses, contentions, and network partitions.
  3. Hop co-exists with delay-sensitive traffic without adversely impacting their performance.
  4. Hop leverages in-network storage to cache data, thereby improving throughput and resilience to disconnections.
Following diagram shows major components in Hop.

Hop Components

Software

  1. Hop has been written using C and C++. The up-to-date version Hop v0.1 can be downloaded here. Hop is distributed under the terms of the General Public License as here.
  2. We modified Madwifi driver version 0.9.3.2 to (a) enable 802.11e QoS support under Ad-Hoc-Demo mode, (b) emulate message losses, and (c) change number of link-layer retransmissions. The modified driver can be downloaded here . The README_UMASS lists all the modifications.

Documentation and Support

The documentation related to the implementation can be found in the README along with the code. The design of Hop is described in a draft RFC All questions should be directed to mingli@cs.umass.edu

Publications

Ming Li, Devesh Agrawal, Deepak Ganesan, Arun Venkataramani, and Himanshu Agrawal, Block-switched Networks: A New Paradigm for Wireless Transport, under submission, 2008

People

Funding

This work is supported by the following grants CNS-0626873, CNS-0546177, CNS-052072, and EEC-0313747.