ICeONE

ICeONE is an extension of the Opportunistic Network Environment (ONE) simulator, which provides additional features that allows the researcher to develop and simulate more accurately Information Centric Networking (ICN) solutions in a realistic opportunistic network environment.

The ICeONE simulator is an extension of the Opportunistic Network Environment (ONE) simulator, which provides additional features to allow the development and the simulation of networking solutions based on the Information Centric Networking (ICN) paradigm in an opportunistic network environment.

The ONE is an open source simulation environment written in JAVA. Its features include: the generation of node movements using different movement models, the routing of messages between nodes in the network with various DTN routing algorithms (e.g., Epidemic, Spray and Wait, PRoPHET, MaxProp) and sender and receiver types, and the visualization of both mobility and message passing in real time in its graphical user interface.

For further information, we invite the reader to refer to [1] or visit the official website of the project (link)

ICeONE is built upon the version 1.4.1 of the ONE simulator. It introduces many new features to the original simulator to enable the simulation of solutions based on the ICN paradigm and developed for wireless ad hoc networking environments.

The most important additions are listed below:

  • Publish/Subscribe communication model. ICeONE provides additional routing schemes that rely on the Publish/subscribe communication model to deliver messages to other nodes in the network in the context of a subscription. This eases the development of ICN-based networking solution, that typically rely on such model for the delivery of Information Objects (IOs);
  • Broadcast transmissions. ICeONE extends the functionalities of the wireless network interfaces supported by the ONE simulator by adding the possibility of broadcasting messages. To increase simulation accuracy, a collision avoidance mechanism, similar to the CSMA/CA defined in the IEEE 802.11 specifications, is used before performing broadcast transmissions;
  • Collision Model. ICeONE provides an interface for the definition of a Collision Model (CM) to handle packets collisions. Each wireless network interface on any node can be independently configured with a different CM, to better reflect the behaviour of that type of interface in case of packets collision. ICeONE comes with two CM implementations, but users can easily define new ones and configure nodes in their simulations to use them;
  • Augmented cache management. Given the importance of caching strategies in ICN, we enhanced ICeONE with rich set of methods to manipulate cached messages. Each node can be configured with a different message priority strategy, which is responsible for eviction decisions (ICeONE already defines four strategies: random, FIFO, Prioritized FIFO, and Prioritized Least-Forwarded First FIFO), and a different message forwarding order strategy, that can give suggestions to the router scheme on which message to forward next (ICeONE already provides two strategies: a FIFO queue, and another one based on an exponentially decaying forwarding probability);
  • Broadcast routing schemes. ICeONE defines the broadcast versions of the Epidemic and the Spray and Wait routing schemes.
  • Mersenne Twister pseudorandom number generation. To increase the quality of simulation, ICeONE uses a Mersenne Twister pseudorandom number generator (included in the Uncommon Maths Library) to drive the events generation.

[1] A. Keränen, J. Ott, T. Kärkkäinen, “The ONE Simulator for DTN Protocol Evaluation”, SIMUTools’09: 2nd International Conference on Simulation Tools and Techniques, Rome, No. 55, pp. 1-10, March 2009.