Download Latest Version ICN_Sim.tar.gz (2.5 MB)
Email in envelope

Get an email when there's a new version of ICN Simulator

Home
Name Modified Size InfoDownloads / Week
README.txt 2015-04-10 6.5 kB
ICN_Sim.tar.gz 2015-04-10 2.5 MB
Manual.pdf 2012-06-26 384.5 kB
Totals: 3 Items   2.9 MB 0
+----------------------+
|       README         |
+----------------------+

== Introduction ==

In this page the Information-centric Network (ICN) Simulator developed by the 
University of Essex for the needs of the PAL project is presented. The 
project is driven by a clear platform-oriented vision, in which user and 
system requirements specific to the area of lifestyle monitoring and 
assisted living are used to carefully extend capabilities of the underlying 
platform and prototyping novel concepts in a realistic setting. The 
platform work can be divided into information-centric environment and 
communication environment.

The information-centric environment deals with information gathering, 
processing, presentation and governance. A publish subscribe scheme has 
been created therefore, more specifically by extending the Blackadder 
information-centric networking environment. One of the most important 
additions and a vital part of the project was the link-aware 
Information-centric Topology Management. However, physical 
limitations arise while testing and validating the effectiveness of 
the proposed additions. Therefore the ICN simulator was introduced. It 
is able to simulate a large number of nodes and publisher-subscriber pairs 
and produce a huge amount of information, providing an insight on the new 
techniques introduced in the topology management of the information-centric 
networks.


== Installation ==

Before trying to install the ICN_Sim, you first have to have OMNET++ 
simulation environment and INET framework already up and running in
your system. For more information on that you can check:

for OMNET++ 	---	http://www.omnetpp.org/documentation
for INET	---	http://inet.omnetpp.org/index.html

ICN Simulator is now compiled to work with OMNeT++ 4.6 and the default
version of INET (2.6.0) coming with it. If you don't already have the 
simulation environment installed, just download it from the link
provided and it will automatically offer to download and compile INET
for you.

After INET has been imported in the workspace, you need to import the
downloaded tar file as a new Project. Go:
	File->Import->Existing Projects into Workspace
and press Next. Choose "Select archive file" and select the downloaded
tar file. That should be it.

Once important issue is that currently the code involved a classs for the 
Blackadder API that can be used to directly port the developed Topology 
Managers to the Blackadder platform. Several header files inlcuded there 
are not compatible with the Windows Environmentand therefore will fail 
(like sys/sockets.h). It is therefore suggested that you use an appropriate 
UNIX/Linux-based environment.

One more issue exists with the dependency of the existing code on the
Boost++ graph library. This should be installed before compiling the
code.

For Ubuntu:
Just install the libboost-graph-dev package:
	apt-get install libboost-graph-dev
	
For Windows:
You need to download boost from here:
	http://www.boost.org/users/download/
Extract the file in any location and open a command prompt in the
same directory. Build the library using the following commands.
	./bootstrap mingw
	b2 install --prefix=c:/installation/path toolset=gcc
Then after you open OMNeT++ and import the ICN_Sim tar file as 
an existing project, add the foolowing path to your includes
list.
	C:/installation/path/include/boost-version
And finally add the following path to your additional library 
directories list.
	C:/installation/path/lib

However if you are using Windows after that point you are pretty
much on your own!


== Simulation Parameters ==

The main parameters than control the simulation can be viewed and 
accessed from the omnetpp.ini file. The most important ones are 
the following:

*numRouters: The number of routers involved in the simulation.
*numPubs: The number of Publishers involved in the simulation.
*numSubs: The number of Subscribers involved in the simulation.
*Datarate: The maximum datarate of the connections between the various 
modules.
*startTime: The time at which the publishing application will start.
*pubInterval: The interval at which the Publishers with changes their 
publication list.
*subInterval: The interval at which the Subscribers with changes 
their subscription list.

Note that these parameters are owned by different modules. However, 
they have a unique name so that they can be accessed individually, 
without naming the owner module first.


== Basic Modules ==

The Publisher Host: This is a complex module that generates the network traffic. 
No IP or other network layer protocol is involved. Multiple application 
can be used, but each will use a different ethernet interface, therefore, 
it will be characterized by a different Link ID. This host is capable of
publishing Information Items, and transmits packets according to the published 
Information Item scopes and IDs. Additionally, it send periodical updates to 
the Topology Manager, informing of the current link status.

The Subscriber Host: This a complex module, very similar to the Publisher but
with the exact opposite behaviour. It consumes the network traffic, by 
subscribing to the available (or not yet) Information Item IDs. Again, no IP or 
other network layer protocol is involved. Multiple applications can be used,  
but each will use a different Ethernet interface, therefore, it will be 
characterized by a different Link ID. This host is only capable of subscribing
to Information Items, and receives packets which are afterwards treated as in a 
sink.

The Publish-Subscribe Router: The PSRouter, may support any number of 
Ethernet interfaces, which on the other hand, all have to be connected 
to the Forwarder. There is no other protocol able to operate in the 
PSRouter, apart from the Publish-Subscribe scheme.

The Information Item Table: Stores the Information item table. It is 
used instead of the rendezvous module of publish subscribe schemes such 
as Blackadder. It allows the publisher and subscriber nodes to access 
it and input their identifiers to the registered Information Item. 

Topology Manager: This the brain of the network performing all the 
path discovery options. It is seperated into two different layers, 
the TMInterface and the Topology Manager application, disconnecting 
the message exchange, from the more intelligent operations.


== Notes ==

Tested for omnetpp-4.6 with inet-2.6-b673687

For any comments mail me at nvasta@essex.ac.uk

Nikolaos Vastardis

Source: README.txt, updated 2015-04-10