10-04-2017, 07:56 PM
[attachment=15199]
Introduction
1.1 IPv6 the Next Generation IP
The explosive growth of the Internet in the recent years has led to a number of di -
culties with the existing Internet Protocol - IPv4 [J81]. The high speed networking
technologies like ATM, etc., coupled with the wide availability of low cost computing
devices, have resulted in a large number of new applications and services. IPv4 is
not able to cope with the explosive growth of the internet. It also does not have
adequate facilities to support the widely varying service requirements of these new
applications. So the need for a new Internet Protocol, that would address these is-
sues of scalability and quality of service, was felt widely. In 1991 the IETF embarked
on the process of de ning a new Internet Protocol - IPng. Later, this protocol was
given a version number of 6 and now, o cially, it is known as IPv6.
IPv6 has been designed as an evolutionary step from IPv4. This makes the transition
from IPv4 to IPv6 easier, as IPv6 can be installed into the current IPv4 nodes
as a normal software upgradation. It is expected to be e cient throughout the
networking technology spectrum ranging from high-speed ATM networks to low-
speed wireless networks. The protocol is also designed to be future-safe in the sense
that, it provides a framework for easy addition of new features. This new protocol
has a huge address space with 128-bit addresses and also allows route aggregation
at multiple hierarchies.
In this project we built a basic IPv6 implementation that may serve as a good
framework for further research and development. This can be used to experiment
with various approaches and tradeo s involved in the issues that are still unresolved.
Attempts have been made to make this implementation as extendible as possible,
so that extra functionality can be added as the standards evolve.
We implemented this in Linux-1.3.24 kernel. The choice of Linux was driven by its
growing popularity and the wide availability of its source code. Moreover, Linux is
being ported to a wide variety of architectures and expected be much more wide-
spread.
We could also create an IPv6 backbone for the IIT Kanpur campus network, by
running the router code on two Linux machines. The utility of this backbone has
been demonstrated by running two more Linux machines as IPv6 hosts connected to
this backbone. This facility allows any host in the campus network to be upgraded
to IPv6 with minimal e ort.