MSc project: NetInf for Events with Large Crowds - Prototyping and emulation evaluation

This page describes an example Master student project previously offered in the DNA lab.


The Network of Information (NetInf) [1] is a future network architecture based on the concept of information-centric networking (ICN) [2].  NetInf was developed in the EU project SAIL ( and in SICS Center for Networked Systems.  The main abstraction of ICN is named data objects.  Communication is defined in terms of requesting and publishing named data objects, making it possible to integrate storage for caching in the network infrastructure.  In contrast, the main abstraction of current networks is named hosts and communication is defined in terms of end-to-end communication between the named hosts.

The Event with Large Crowd scenario was used in the SAIL EU project to demonstrate the benefits of the NetInf architecture.  This scenario considers the situation where a large crowd gathers in a geographically confined area to attend a common event such as a sports event in a stadium, a concert, or a street festival. Under such circumstances, the network infrastructure in the venue is likely to become overloaded due to the large number of users. This causes bad performance for the end-users due to congestion and interference in the network, and/or higher operational costs for the network operator in terms of requiring more capacity to be deployed. The use of NetInf in a scenario like this has great potential as it allows the load of the network to be reduced due to caching in the local network infrastructure as well as local peer-to-peer sharing of content among mobile users. This effect is particularly powerful when users attend a common event, as there is likely to be a higher degree of content that is requested by many users (content related to the event).

An emulated environment using the ns-3 network simulator connected to Linux LXC containers running a proprietary NetInf router implementation (NNRP) was set up and used for some initial evaluations of the EwLC scenario within the SAIL project. There is however a need for an open source implementation that can be used to realize the EwLC scenario and a more flexible emulation framework for dynamically configuring, setting up, and running experiments with this new code base in order to carry out more extensive experimental evaluations of the NetInf architecture in mobile and opportunistic networks.

Objectives and goals

The main objectives of the project are to re-implement the existing emulated Event with Large Crowd NetInf scenario using the NEPI ( network experimentation control framework, using a Python-based open source NetInf code base.  In order to fully realize the EwLC scenario, some additional functionality will also need to be added to the NetInf implementation to create a stand-alone mobile NetInf router/AP platform.

Time permitting, the implementation should also be deployed on a set of one-board computers (Raspberry Pi) in order to create a small, cheap, and highly mobile NetInf access point that can be easily deployed and that smart phones and laptops can connect to in order to get NetInf service. This will be used to test NetInf in real network settings.

The project is intended for one student that works together with the other NetInf-related project.  Very good implementation experience is a required prerequisite.  The project will likely involve visiting INRIA in Sophia-Antipolis near Nice in France.

Work plan

1. Study and learn the key concepts of information-centric networking and the NetInf, as well as, become familiarised with NEPI and the existing NetInf Python code base.

2. Set up an instance of NEPI such that basic NetInf scenarios can be configured and run.

3. Extend the Python NetInf code base with support for the required features needed for the EwLC scenario. Such features include (but might not be limited to):

* UDP based convergence layer
* Local broadcast/multicast based NetInf search
* ....

4. Experiment and evaluate NetInf in the EwLC scenario in collaboration with the other student project.

5. Use the developed Python NetInf implementation and a Raspberry Pi platform to create a mobile NetInf access point.


[1] Christian Dannewitz, Dirk Kutscher, Börje Ohlman, Stephen Farrell, Bengt Ahlgren, and Holger Karl. Network of information (NetInf) - An information-centric networking architecture. Computer Communications, 36(7):721–735, April 2013.


[2] Bengt Ahlgren, Christian Dannewitz, Claudio Imbrenda, Dirk Kutscher, and Börje Ohlman. A survey of information-centric networking. IEEE Communications Magazine, 50(7), July 2012.