2019-07-29 17:13:47 +00:00
|
|
|
%** Introduction.tex: Contains an introduction to
|
|
|
|
% the topic and motivates the work.
|
|
|
|
% State what the reader can find where.
|
|
|
|
|
2019-02-21 19:29:50 +00:00
|
|
|
|
|
|
|
\chapter{\label{introduction}Introduction}
|
2019-08-08 12:08:07 +00:00
|
|
|
In this chapter we give an introduction about the topic of the master
|
|
|
|
thesis, the motivation and problemes that we address.
|
2019-02-21 19:29:50 +00:00
|
|
|
|
2019-08-08 12:08:07 +00:00
|
|
|
% ----------------------------------------------------------------------
|
2019-08-09 08:38:54 +00:00
|
|
|
\section{\label{introduction:ipv4ipv6}IPv4 exhaustion and IPv6 adoption}
|
2019-08-08 12:08:07 +00:00
|
|
|
The Internet has almost completely run out of public IPv4 space. The
|
2019-08-08 12:45:16 +00:00
|
|
|
5 Regional Internet Registries (RIRs) report IPv4 exhaustion world wide
|
2019-08-08 12:08:07 +00:00
|
|
|
(\cite{ripe_exhaustion},
|
|
|
|
\cite{apnic_exhaustion},
|
2019-08-08 12:45:16 +00:00
|
|
|
\cite{lacnic:_ipv4_deplet_phases},
|
|
|
|
\cite{afrinic:_afrin_ipv4_exhaus},
|
|
|
|
\cite{arin:_ipv4_addres_option}) and LACNIC project complete
|
|
|
|
exhaustion for 2020 (see figure \ref{fig:lacnicexhaust}).
|
|
|
|
|
|
|
|
\begin{figure}[h]
|
|
|
|
\includegraphics[scale=0.7]{lacnicdepletion}
|
|
|
|
\centering
|
|
|
|
\caption{LACNIC Exhaustion projection,
|
|
|
|
\cite{lacnic:_ipv4_deplet_phases}}
|
|
|
|
\label{fig:lacnicexhaust}
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
On the other hand IPv6 adoption grows significantly, with at least
|
2019-08-09 08:38:54 +00:00
|
|
|
three countries (India, US, Belgium) surpassing 50\% adoption
|
2019-08-08 12:45:16 +00:00
|
|
|
(\cite{akamai:_ipv6_adopt_visual},
|
|
|
|
\cite{vyncke:_ipv6_deploy_aggreg_status}).
|
|
|
|
|
|
|
|
\cite{cisco:_ipv6}). Traffic from Google users reaches almost 30\% as
|
2019-08-09 08:38:54 +00:00
|
|
|
of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}).
|
2019-08-08 12:45:16 +00:00
|
|
|
|
|
|
|
\begin{figure}[h]
|
|
|
|
\includegraphics[scale=0.2]{googlev6}
|
|
|
|
\centering
|
|
|
|
\caption{Google IPv6 Statistics,
|
|
|
|
\cite{google:_ipv6_googl}}
|
|
|
|
\label{fig:googlev6}
|
|
|
|
\end{figure}
|
2019-08-08 12:08:07 +00:00
|
|
|
|
2019-08-09 08:38:54 +00:00
|
|
|
% ----------------------------------------------------------------------
|
|
|
|
\section{\label{introduction:motivation}Motivation}
|
|
|
|
IPv6 nodes and IPv4 nodes cannot directly connect to each other,
|
|
|
|
because the protocols are incompatible to each other.
|
|
|
|
To allow communication between different protocol nodes,
|
|
|
|
several transition mechanism have been proposed
|
|
|
|
\cite{wikipedia:_ipv6}, \cite{rfc4213}.
|
|
|
|
|
|
|
|
However installation and configuration of the transition mechanism
|
|
|
|
usually require in depth knowledge about both protocols and require
|
|
|
|
additional hardware to be added in the network.
|
|
|
|
|
|
|
|
In this thesis we show an in-network transition method based on NAT64
|
|
|
|
\cite{rfc6146}. Compared to traditional NAT64 methods which require an
|
|
|
|
extra device in the network, our proposed method is transparent to the
|
|
|
|
user. This way neither the operator nor the end user has to configure
|
|
|
|
extra devices, besides the
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
are incompatible protocols (i.e. host connected by
|
|
|
|
IPv4 only cannot cannot directly connect to IPv6 hosts and vice
|
|
|
|
versa),
|
|
|
|
|
|
|
|
In this master thesis we focus on the mechanism ``NAT64'' that
|
|
|
|
translates
|
|
|
|
This development motivates companies and users
|
|
|
|
|
2019-07-29 17:13:47 +00:00
|
|
|
Make it easier
|
|
|
|
take away burden
|
|
|
|
|
|
|
|
In theory line speed - what is reality?
|
|
|
|
|
2019-02-21 19:29:50 +00:00
|
|
|
The motivation to write this thesis was...
|
|
|
|
|
2019-08-08 12:08:07 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IPv6 P4
|
|
|
|
|
|
|
|
Introduce the related research field/the project.
|
|
|
|
|
2019-02-21 19:29:50 +00:00
|
|
|
\section{\label{introduction:taskdescription}The Task}
|
2019-07-29 17:13:47 +00:00
|
|
|
|
|
|
|
P4 environment
|
|
|
|
a lot of potential
|
|
|
|
Programming language in the network
|
|
|
|
Not only faster, but also more convienient.
|
|
|
|
|
|
|
|
**** High speed NAT64 with P4
|
|
|
|
Currently there are two main open source NAT64 solution available:
|
|
|
|
tayga and jool. The former is a single threaded, cpu bound user
|
|
|
|
space solution, the latter a custom Linux kernel module.
|
|
|
|
|
|
|
|
This thesis challenges this status quo by developing a P4 based
|
|
|
|
solution supporting all features of jool/tayga and comparing the
|
|
|
|
performance, security and adaptivity of the solutions.
|
|
|
|
|
|
|
|
- Milestone 1: Stateless NAT64/NAT46 translations in P4
|
|
|
|
- Milestone 2: Stateful (dynamic) NAT64/NAT46 translations
|
|
|
|
- Milestone 3: Hardware adaption
|
|
|
|
|
2019-02-21 19:29:50 +00:00
|
|
|
Describe your task.
|
|
|
|
|
|
|
|
\section{\label{introduction:overview}Overview}
|
2019-07-29 17:13:47 +00:00
|
|
|
Chapter 2 describes... Chapter 3 presents...
|
2019-08-07 13:55:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
%** Problem.tex: Documentation in own words of the problem to
|
|
|
|
% be addressed in this document:
|
|
|
|
% What is the challenge, why is it useful what you
|
|
|
|
% plan to do.
|
|
|
|
|
|
|
|
|
|
|
|
%% In \ref{introduction} we start with our introduction to the problem that we
|
|
|
|
%% are going to address. Since we do not want to waste the readers time we
|
|
|
|
%% go and show the essential issues of latex in section
|
|
|
|
%% \ref{chapter2:essentials}.
|
|
|
|
|
|
|
|
\section{\label{chapter2:linespeed}Line Speed NAT64}
|
|
|
|
NAT64 in software is CPU bound. Hardware can potentially do this at
|
|
|
|
line speed.
|
|
|
|
|
|
|
|
\section{\label{chapter2:transitition}Simplify IPv6 deployments}
|
|
|
|
Currently network operators have to focus on two network stacks when
|
|
|
|
designing networks: IPv6 and IPv4. As To simplify network setups
|
|
|
|
|
|
|
|
|
|
|
|
\section{todo}
|
|
|
|
\begin{verbatim}
|
|
|
|
|
|
|
|
***** Motivation zeigen
|
|
|
|
***** IPv6, NetPFGA mehr Möglichketien
|
|
|
|
***** P4 erwähnen
|
|
|
|
***** Task gut zu zeigen, alles erreicht
|
|
|
|
use cases / sample applications
|
|
|
|
|
|
|
|
|
|
|
|
\end{verbatim}
|