Implementation of Nemo on Linux
Essay by review • February 7, 2011 • Research Paper • 6,397 Words (26 Pages) • 1,878 Views
Implementation of NEMO on Linux
Part of the eMOTION (Networks in Motion) Project
Ian Paul McNamara & Franklin Pho
Thesis submitted as a requirement for the degree
Bachelor of Engineering (Software Engineering)
Submitted: May 18, 2004
Supervisor: Mahbub Hassan
Contents
1 Introduction 5
2 Background 7
2.1 Host Mobility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Network Mobility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 Limitations of MIPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Solutions to Network Mobility . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.1 MOCCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.2 NEMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.3 Choice of solution: NEMO . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.4 Previous/Current Work on NEMO . . . . . . . . . . . . . . . . . . . . . 14
2.3.5 Why Implement NEMO? . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3 Plan 15
3.1 Platform Choice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2
3.1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 Package Qualification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Requirements Elicitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.4 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.1 Functional Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4.2 Infrastructure Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.3 Development Cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5 Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5.1 Test Bed Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.5.2 Requirements Driven Testing . . . . . . . . . . . . . . . . . . . . . . . . 31
3.5.3 System Testing and Evaluation . . . . . . . . . . . . . . . . . . . . . . . 32
4 Conclusion 33
Bibliography 34
3
Acknowledgements
With many thanks to our supervisors Mahbub Hassan, for the invaluable guidance he has
provided, and Eranga Perera for her enthusiasm and commitment to the project. Also to our
fellow project members Nicolas Kerneis and Laurent Monminoux for all the hard work, and
input they have put into this project.
4
Chapter 1
Introduction
There have been many changes in the face of computing in the past decade, one of which is
undoubtably the introduction of mobile computing. Over the past few years, mobile computing
has become widely accepted by the general public as a useful productivity tool, with wireless
hotspots becoming more and more common.
The ability to travel whilst accessing the Internet, provides the opportunity to increase productivity
by making use of previously unusable time, and makes Internet access easier and more
flexible. It may soon be possible to access the Internet from public transport, and aircraft. Some
pilot studies have already been done to test the feasibility of this hypothesis, and so far have
been very successful. Boeing recently trialed a broadband Internet connection in its aircraft in
conjunction with the German Airline Lufthansa, who is now planning to use the system in most
of their fleet as a way to differentiate their product from other airlines [1].
Whilst these trials are a great step forward, diligent studies have shown that the present Internet
architecture is not suitable for this sort of mobility, with groups of users (or networks), moving
together. This is referred to as Network Mobility, where a network itself is mobile as opposed to
an individual host. Protocols currently used for mobility such as Mobile IPv4 and Mobile IPv6,
do not provide any way to exploit the fact that all of the passengers on the plane are moving
together. As such, their performance is far below optimal [7], and involves significant overhead
5
due to the fact that each host is performing handoffs, sending binding updates, and tunneling
packets back to their home agent.
...
...