++graphs ++ intro

This commit is contained in:
Nico Schottelius 2019-08-09 11:49:41 +02:00
parent de6bc3dcba
commit 1c217817c4
9 changed files with 124 additions and 42 deletions

View File

@ -2,6 +2,17 @@
% the topic and motivates the work. % the topic and motivates the work.
% State what the reader can find where. % State what the reader can find where.
%** 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}.
\chapter{\label{introduction}Introduction} \chapter{\label{introduction}Introduction}
In this chapter we give an introduction about the topic of the master In this chapter we give an introduction about the topic of the master
@ -33,7 +44,6 @@ three countries (India, US, Belgium) surpassing 50\% adoption
\cite{cisco:_ipv6}). Traffic from Google users reaches almost 30\% as \cite{cisco:_ipv6}). Traffic from Google users reaches almost 30\% as
of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}). of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}).
\begin{figure}[h] \begin{figure}[h]
\includegraphics[scale=0.2]{googlev6} \includegraphics[scale=0.2]{googlev6}
\centering \centering
@ -41,6 +51,10 @@ of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}).
\cite{google:_ipv6_googl}} \cite{google:_ipv6_googl}}
\label{fig:googlev6} \label{fig:googlev6}
\end{figure} \end{figure}
We conclude that IPv6 is a technology strongly gaining importance with
the IPv4 depletion that is estimated to be world wide happening in the
next years. Thus more devices will be using IPv6, while communication
to legacy IPv4 devices still needs to be provided.
% ---------------------------------------------------------------------- % ----------------------------------------------------------------------
\section{\label{introduction:motivation}Motivation} \section{\label{introduction:motivation}Motivation}
@ -58,34 +72,37 @@ In this thesis we show an in-network transition method based on NAT64
\cite{rfc6146}. Compared to traditional NAT64 methods which require an \cite{rfc6146}. Compared to traditional NAT64 methods which require an
extra device in the network, our proposed method is transparent to the 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 user. This way neither the operator nor the end user has to configure
extra devices, besides the extra devices. Figures \ref{fig:v6v4standard} shows the standard NAT64
approach and \ref{fig:v6v4innetwork} shows our solution.
\begin{figure}[h]
\includegraphics[scale=0.7]{v6-v4-innetwork}
\centering
\caption{In Network NAT64 translation}
\label{fig:v6v4innetwork}
\end{figure}
\begin{figure}[h]
\includegraphics[scale=0.7]{v6-v4-standard}
\centering
\caption{Standard NAT64 translation}
\label{fig:v6v4standard}
\end{figure}
are incompatible protocols (i.e. host connected by The in network solution does not only ease the installation and
IPv4 only cannot cannot directly connect to IPv6 hosts and vice deployment of IPv6, but it also allows line speed translation, because
versa), it is compiled into target dependent low level code that can run in
ASICs\cite{networks:_tofin},
In this master thesis we focus on the mechanism ``NAT64'' that FPGAs\cite{netfpga:_p4_netpf_public_github}
translates or even in software \cite{_implem_your_switc_target_with_bmv2}.
This development motivates companies and users
Make it easier
take away burden
In theory line speed - what is reality?
The motivation to write this thesis was...
IPv6 P4
Introduce the related research field/the project.
\section{\label{introduction:taskdescription}The Task} \section{\label{introduction:taskdescription}The Task}
- Milestone 1: Stateless NAT64/NAT46 translations in P4
- Milestone 2: Stateful (dynamic) NAT64/NAT46 translations
- Milestone 3: Hardware adaption
This thesis is
into 3 milestone
P4 environment P4 environment
a lot of potential a lot of potential
Programming language in the network Programming language in the network
@ -100,26 +117,9 @@ Not only faster, but also more convienient.
solution supporting all features of jool/tayga and comparing the solution supporting all features of jool/tayga and comparing the
performance, security and adaptivity of the solutions. 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
Describe your task. Describe your task.
\section{\label{introduction:overview}Overview}
Chapter 2 describes... Chapter 3 presents...
%** 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} \section{\label{chapter2:linespeed}Line Speed NAT64}
NAT64 in software is CPU bound. Hardware can potentially do this at NAT64 in software is CPU bound. Hardware can potentially do this at

View File

@ -1495,6 +1495,8 @@ root@ESPRIMO-P956:~#
%--------------------------------------------------------------------------------------------------------- %---------------------------------------------------------------------------------------------------------
\printnomenclature \printnomenclature
\abbrev{RIR}{Regional Internet Registry} \abbrev{ASIC}{Application-specific integrated circuit}
\abbrev{FGPA}{Field-programmable gate array}
\abbrev{NAT}{Network Address Translation} \abbrev{NAT}{Network Address Translation}
\abbrev{NAT64}{Network Address Translation from / to IPv6 to / from IPv4} \abbrev{NAT64}{Network Address Translation from / to IPv6 to / from IPv4}
\abbrev{RIR}{Regional Internet Registry}

View File

@ -0,0 +1,11 @@
graph G {
node [ shape="box"];
v6host [ label="IPv6 only host"];
v4host [ label="IPv4 only host"];
switch1 [ label="Network Switch and NAT64 translator", shape="oval" ];
v6host--switch1;
v4host--switch1;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -0,0 +1,54 @@
graph G {
node [ shape="box"];
v6host1 [ label="IPv6 only host"];
v6host2 [ label="IPv6 only host"];
v6host3 [ label="IPv6 only host"];
v6host12 [ label="IPv6 only host"];
v6host22 [ label="IPv6 only host"];
v6host32 [ label="IPv6 only host"];
v4host1 [ label="IPv4 only host"];
v4host2 [ label="IPv4 only host"];
v4host3 [ label="IPv4 only host"];
v4host12 [ label="IPv4 only host"];
v4host22 [ label="IPv4 only host"];
v4host32 [ label="IPv4 only host"];
switchv6 [ label="Network Switch", shape="oval" ];
switchv4 [ label="Network Switch", shape="oval" ];
switchboth [ label="Network Switch with NAT64", shape="oval" ];
nat64gw [ label="NAT64 translator", rank=max ];
subgraph cluster_seperate {
v6host1--switchv6;
v6host2--switchv6;
v6host3--switchv6;
v4host1--switchv4;
v4host2--switchv4;
v4host3--switchv4;
switchv4--nat64gw;
switchv6--nat64gw;
};
subgraph cluster_mixed {
v6host12--switchboth;
v6host22--switchboth;
v6host32--switchboth;
v4host12--switchboth;
v4host22--switchboth;
v4host32--switchboth;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -14,7 +14,7 @@
pdftex} pdftex}
\usepackage[pdftex]{color,graphicx} % pdftex does not read eps files -> use epstopdf to convert files \usepackage[pdftex]{color,graphicx} % pdftex does not read eps files -> use epstopdf to convert files
\graphicspath{{Figures/},{logos/},{images/}} \graphicspath{{Figures/},{logos/},{images/},{graphviz/}}
\usepackage{caption} \usepackage{caption}
\usepackage{subcaption} % caption/subcaption replaces subfigure, which is deprecated \usepackage{subcaption} % caption/subcaption replaces subfigure, which is deprecated

View File

@ -48,3 +48,18 @@
title = {IPv6 transition mechanism}, title = {IPv6 transition mechanism},
howpublished = {\url{https://en.wikipedia.org/wiki/IPv6_transition_mechanism}}, howpublished = {\url{https://en.wikipedia.org/wiki/IPv6_transition_mechanism}},
note = {As requested on 2019-08-08}} note = {As requested on 2019-08-08}}
@Misc{_implem_your_switc_target_with_bmv2,
author = {BMV2},
title = {IMPLEMENTING YOUR SWITCH TARGET WITH BMv2},
howpublished = {\url{http://www.bmv2.org/}}}
@Misc{netfpga:_p4_netpf_public_github,
author = {NetFPGA},
title = {P4-NetPFGA-Public repository at Github},
howpublished = {\url{https://github.com/NetFPGA/P4-NetFPGA-public}}}
@Misc{networks:_tofin,
author = {Barefoot Networks},
title = {Tofino2},
howpublished = {\url{https://barefootnetworks.com/products/brief-tofino-2/}}}