%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% (c) Andreas Hofmeier
%       http://www.lgut.uni-bremen.de/an-h/
%       http://an-h.de/
%       http://an-h.de.vu/
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%    This document is free software; you can redistribute it and/or
%    modify it under the terms of the GNU General Public License as
%    published by the Free Software Foundation; either version 2 of
%    the License, or (at your option) any later version.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% v1 - ready for correction by english teacher
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\documentclass[12pt]{article}

%PDF \usepackage[final]{ps4pdf}

%%%%%%%%% GERMAN
%\usepackage{a4,german}
\usepackage{a4}

\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

%%%%%%%%% GERMAN
%\usepackage{ngerman}

%%%%%%%%% PDF-Latex:
%PDF \ifpdf
%PDF   \usepackage[pdftex]{graphics}
%PDF   \usepackage{ae}
%PDF   \usepackage{graphicx}
%PDF   \usepackage[
%PDF      pdftex,
%PDF      a4paper,
%PDF      bookmarks,
%PDF      bookmarksopen=true,
%PDF      bookmarksnumbered=true,
%PDF      pdfauthor={Andreas Hofmeier  --  an-h.de},
%PDF      pdftitle={},
%PDF %     colorlinks=true,
%PDF %     linkcolor=black,
%PDF %     filecolor=black,
%PDF %     urlcolor=black
%PDF   ]{hyperref}
%PDF \else
%PDF   \usepackage[dvips]{graphics}
%PDF \fi

%NOTPDF
  \usepackage[dvips]{graphics}
%PDF

%\usepackage[dvips]{graphics}
\usepackage{latexsym}
\usepackage{exscale}
\usepackage{amssymb,amsmath}
%\documentclass[11pt]{report}
%\usepackage{isolatin1}
%\usepackage{german}
\usepackage{epsf}
\usepackage[dvips]{rotating}

\usepackage{longtable}
\usepackage{dcolumn}

\usepackage{listings}

%\usepackage{eurosym}
%\EUR{300}

\usepackage{multicol}
%\usepackage[dvips]{rotating}

%ENDHEAD

\parindent=0pt
\parskip=\baselineskip

%\setcounter{tocdepth}{4}
%\setcounter{secnumdepth}{4}

\pagestyle{empty}
%\pagestyle{myheadings}
%\markright{\mbox{\bf A. Hofmeier, ...}}

\begin{titlepage}
\title{
  \centerline{
    \epsffile{../LSBULogo.eps}
  }
Engineering Informations Management: Standards and Specificaions\vspace{1.5cm}\\-- Assignment --\\Principle of Controlled Documentation\\}
\author{Andreas Hofmeier}
%\date{12. Mai 2003}
\date{}
\end{titlepage}


\begin{document}

IPv6, What's New?

This part of the report will discuss the differences between IPv4 and
IPv6. In particular the advantages of Internet Protocol version 6
(IPv6) will be mentioned.

The most important improvement in IPv6 is the much bigger address
space. IPv4 uses 4 Byte (32 Bit) addresses, that are 4,294,967,296 (4.3 *
10$^9$) addresses. IPv6 increases the address-size to 16 Byte (128
Bit). With this address size
340,282,366,920,938,463,463,374,607,431,768,211,456 (3.4 * 10$^{38}$)
different addresses can be distinguished (Sæther, 2004).

An IPv4-address is displayed as four decimal numbers separated by
dots:

{\tt 134.102.199.160}

Every number must be in the range between 0 and 255 because it is an 8
bit value. This notation is unpractical with IPv6 because of the long
address. An IPv6 address is written as eight groups of 4 hexadecimal
digits each (en.wikipedia.org, 2004; de.wikipedia.org, 2004; Forouzan,
2001). For example:

\begin{lstlisting}
2001:0DB8:0000:0000:0000:0000:1428:57ab 
2001:0DB8:0000:0000:0000::1428:57ab 
2001:0DB8:0:0:0:0:1428:57ab
2001:0DB8:0::0:1428:57ab
2001:DB8::1428:57ab                 (adapted form en.wikipedia.org, 2004)
\end{lstlisting}

Because of the huge address space a lot of addresses will be unused,
many zeros will be occur. One zeros-sequence can be condensed with the
{\tt ::}-operator. This operator can be used only once. First zeros
in a column can be leaved out. (en.wikipedia.org, 2004;
de.wikipedia.org, 2004; Forouzan, 2001)

Because of the strong limited address space of IPv4, the current
Internet protocol, it is necessary for users to share IP
addresses. The IP addresses are dynamical assigned during establishing
the connection to the Internet Service Provider (ISP). Therefore it is
no possible for all terminals to be online at the same time. The new
technologies like DSL make it possible and affordable to be always
on. For some application like tele- and video-conferencing it make
sense to be  online 24 hours a day. This applications become more and
more important.

Another possibility to share IP addresses is to do a Network Address
Translation (NAT). NAT masquerades many private IP addresses behind few
public addresses. One of the most important disadvantages of NAT is that
the terminal behind a NAT are not accessible from outside/public. This
is no problem in a server-client-structure but the trend goes to
Peer-to-Peer applications such as Voice over IP. This applications can
not fully used through a NAT.

The new Internet Protocol version 6 eliminate this
disadvantages. Dirty tricks are not longer necessary because of the
huge address space. Every terminal get its own public and unique IP
address. Anyway, the old techniques like NAT and firewalling can be also
applied on IPv6. Sometimes this makes sense for security reasons.




The following picture faces the protocol header from the old Internet
protocol against the new one. Adapted from Impress (2003)

\includegraphics[width=14.52cm]{NBS_IPv6_Report_A_Header.eps}

The header structure in IPv6 was reviewed and optimised. It can be
faster processed by routers and other devices. The most important
change is the increase of the address fields form 32 bits to 128
bits. The {\tt Time to Live} (TTL) field from IPv4 is now called {\tt
Hop Limit}, it is still an 8 bit field. It contains the number of
still allowed hops. Within every hop this values is decreased by
one. The header-type of the payload-header is stored in an 8 bit field
named {\tt Next Header}. The next header can be an additional IP
header or a header from an upper layer, such as TCP or UDP. The
overall size of the payload is stored as a 16 bit value in the {\tt
Payload Length} field. The {\tt Flow Label} field provides the
possibility of special handling of particular data-flows. It is 24
bits long. Traffic control with {\tt Priority} if realized with a
4-bit-field. The {\tt V}-field (Version) do not changes its meaning,
position or size. It still contains the version number of IP. In IPv4
a binary 4, and in IPv6 a binary 6.

The IPv4 header has not a fixed size. The smallest header is 20 bytes
long and grows if some additional informations, such as encryption
details, are stored in the option field. In difference, IPv6 has a
fixed header size of 40Bytes. Additional informations are not longer
stored in the header of the packet. This information are stored in the
{\tt Payload Extension Headers} which are a part of the
Payload. Because of the fixed header size and the fact that all
important information (for routing, for example payload length) stored
in the beginning of each packet, it is possible to process an IPv6
packet much more faster as an old IPv4 one. The unnecessary checking
of the header information was disestablished, because this will be
done in the previous layer. This speeds up the processing of an IPv6
packet again, because the checksum do not need to be recalculated in
every hop.

Another simplification is done in the fragmentation process. In IPv6
only the sender of an packet does fragmentation. If a router receives
an IPv6 packet which is to large, an error messages is sent back to
the sender. The sender has to send smaller packets. An IPv4 packet
will be fragment by the router if it is to big. In this case the other
side has to be able to do the reserve process, the
defragmentation. Therefore information about the fragmentation process
have to be stored in the packet header. This makes the processing of
an IPv4 packet much more slower and more complicated.


The following graph shows the difference between the two (IPv4 and
IPv6) network layers. Adapted from Forouzan (2001).

\includegraphics[width=14.52cm]{NBS_IPv6_Report_A_NetworkLayers.eps}

IP works within or is a part of the network layer. The IPv4 network
layer contains additionally to the IPv4 the Internet Control Message
Protocol (ICMP), the Internet Group Management Protocol (IGMP), the
Address Resolution Protocol (ARP), and the Reverse Address Resolution
Protocol (RARP). IGMP provides the feasibility to doing multi-casting
(Baccala, 1997). The ICMP announces network errors, network
congestion, and timeouts. In addition it can be used to assistance
troubleshooting (Baccala, 1997). The ARP is necessary to figure out
the right corresponding (to the Network or IP address) physical
address. The RARP does this the other way around. Forouzan (2001) says
that IGMP, ICMP, and ARP centralised to the ICMPv6 within the
IPv6. RARP is not longer supported because it is rarely used.










                             
\end{document}