Aqua-Sim

From Zheng Peng's Wiki
Jump to: navigation, search

Overview

Motivation

Recently underwater sensor network has emerged as a powerful technique for aquatic applications, and it has attracted more and more attention from the networking research community. To facilitate the research in underwater sensor networks, it is desirable to have a standard simulation platform to compare and evaluate different network designs, algorithms and protocols.

Although there are a couple of efforts on incorporating acoustic propagation models into the simulation of underwater acoustic networks, to the best of our knowledge, there is no complete packet level underwater network simulator published yet. There are several widely used packet level network simulators such as NS-2 and OPNET. However, they were developed for terrestrial radio wireless and/or wired networks, not for underwater sensor networks. They cannot be used for the simulation of underwater sensor networks without significant modifications for the following reasons: Firstly, acoustic communication is the commonly accepted method for underwater environments, while the propagation speed of acoustic signal in water is very slow (about 1500 m/s), significantly different from that of radio signal; secondly, the acoustic signal attenuation model is drastically different from that of radio signal, and thus acoustic channel models have to be incorporated; thirdly, underwater sensor networks are usually deployed in a three dimensional space, while these simulators usually only support two-dimensional deployment. Thus, the unique characteristics of underwater sensor networks make the existing network simulators unsuitable.

Aqua-Sim Overview

We have developed a simulator, called Aqua-Sim, for underwater sensor networks. Developed on the basis of NS-2, Aqua-Sim can effectively simulate acoustic signal attenuation and packet collisions in underwater sensor networks. Moreover, Aqua-Sim supports three-dimensional deployment. Further, Aqua-Sim can easily be integrated with the existing codes in NS-2. Aqua-Sim is in parallel with the CMU wireless simulation package. As shown in the figure below, Aqua-Sim is independent of the wireless simulation package and is not affected by any change in the wireless package. On the other hand, any change to Aqua-Sim is also confined to itself and does not have any impact on other packages in NS-2. In this way, Aqua-Sim can evolve independently.


Aqua-Sim is based on NS-2 and in parallel with the CMU wireless simulation package

Advantages of Aqua-Sim

  • Discrete-event driven network simulator
  • Support 3D networks and mobile networks
  • Simulate underwater acoustic channels with high fidelity
  • Implement a complete protocol stack from physical layer to application layer


Design

Architecture and Implementation

Aqua-Sim follows the object-oriented design style of NS- 2, and all Compost Bin network entities are implemented as classes in C++. Currently, Aqua-Sim is organized into four folders, uw-common, uw-mac, uw-routing and uw-tcl. The codes simulating underwater sensor nodes and traffic are grouped in folder uw-common; the codes simulating acoustic channels and MAC protocols are organized in the folder of uw-mac. The folder uw-routing contains all routing protocols. The folder uw-tcl includes all Otcl script examples to validate Aqua-Sim.

The figure below plots the class diagram of Aqua-Sim. In the figure, the “UnderwaterNode” object is the abstraction of the underwater sensor node. It encapsulates many useful information of the node such as its location and its moving speed. It is a global object and can be accessed by any object in Aqua-Sim. The “UnderwaterChannel” object represents the underwater acoustic channel. There is only one “UnderwaterChannel” object in the network and all packets are queued here before being delivered. The “UnderwaterChannel” object also provides public interface to upper layers and thus the object in the upper layer, such as a routing layer object, can easily get to know the channel properties.

360*360px

Features

  • In parallel with CMU wireless extension
  • Object Oriented Design: extensible and flexible
  • Open Architecture: easily import new protocols
  • Three Basic Classes: Entities, Interfaces, Functions


Fidelity Verification

It has been proved that the simulation results from Aqua-Sim fit the testbed results quite well, as shown in the figures below.

360*360px
360*360px


Aqua3D - Underwater Sensor Network 3D Visualizer

To support 3D underwater networks, we have designed and implemented a 3D visualizer called Aqua3D. The main features of Aqua-3D includes:

  • Retrieve events from trace files of NS-2 and render them into 3D scenarios
  • Allow users to monitor events from different angles

Aqua3D main page: Aqua-3D
Aqua3D manual: Aqua-3D_manual

Implemented Protocols

MAC

  • ALOHA
  • Broadcast MAC
  • GOAL: a geo-routing aware MAC integrating VBF and handshake scheme in cross-layer approach. (New in Aqua-Sim 2)
  • Slotted-FAMA: a MACA like handshake-based MAC (New in Aqua-Sim 2)
  • UWAN-MAC (New in Aqua-Sim 2)
  • COPE-MAC (New in Aqua-Sim 2)
  • R-MAC

Routing

  • VBF: vector-based forwarding. Note: VBF only works with Broadcast MAC. To work with handshake-based MAc, please use GOAL (MAC/Routing cross-layer approach) alternatively.
  • HH-VBF: hop-by-hop VBF, which can be used by configuring VBF
  • Dynamic Routing: a Distance-vector routing like protocol (New in Aqua-Sim 2)
  • Static Routing: routes with a predefined routing table (New in Aqua-Sim 2)
  • Dummy Routing: for purpose of testing MAC protocols; only forwards packets to upper/lower layers (New in Aqua-Sim 2)

Tutorials

Aqua-Sim User Tutorial

Aqua-Sim Developer Tutorial

People

  • Zheng Peng , Assistant Professor, Computer Science Department, City College, City University of New York
  • Robert Martin, Computer Science and Engineering, University of Connecticut.
  • Peng Xie, Computer Science and Engineering, University of Connecticut. (Graduated)
  • Yibo Zhu, Computer Science and Engineering, University of Connecticut. (Graduated)
  • Matthew Tran, Computer Science and Engineering, University of Connecticut. (Graduated)

Mail List Subscribe

Welcome to the Aqua-Sim mailing list!

  • To subscribe the mail list, send your email to LISTSERV@LISTSERV.UCONN.EDU with command "SUBSCRIBE AQUASIM-L FULL NAME" in your email. Please replace "FULL NAME" with your full name or "Anonymous" if you want to hide your subscription.
  • To post to this list, send your email to: AQUASIM-L@LISTSERV.UCONN.EDU.

Got a Question?

  • You can also check the archive of our mailing list for the answers to your questions via here or search the archive here
  • To post to this list, send your email to: AQUASIM-L@LISTSERV.UCONN.EDU.

Aqua-Sim Download


Publications

This project is supported in part by the US National Science Foundation under CAREER Grant No. 0644190, Grant No. 0709005, Grant No. 0721834, Grant No. 0821597 and the US Office of Navy Research under YIP Grant No. N000140810864.