Browse Source

++graphs ++ intro

master
Nico Schottelius 3 years ago
parent
commit
1c217817c4
  1. 80
      doc/Introduction.tex
  2. 4
      doc/appendix.tex
  3. 11
      doc/graphviz/v6-v4-innetwork.dot
  4. BIN
      doc/graphviz/v6-v4-innetwork.png
  5. 54
      doc/graphviz/v6-v4-mixed.dot
  6. BIN
      doc/graphviz/v6-v4-mixed.png
  7. BIN
      doc/graphviz/v6-v4-standard.png
  8. 2
      doc/preamble.tex
  9. 15
      doc/refs/refs.bib

80
doc/Introduction.tex

@ -2,6 +2,17 @@
% the topic and motivates the work.
% 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}
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
of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}).
\begin{figure}[h]
\includegraphics[scale=0.2]{googlev6}
\centering
@ -41,6 +51,10 @@ of 2019-08-08 (\cite{google:_ipv6_googl}, see figure \ref{fig:googlev6}).
\cite{google:_ipv6_googl}}
\label{fig:googlev6}
\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}
@ -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
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
Make it easier
take away burden
In theory line speed - what is reality?
The motivation to write this thesis was...
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}
IPv6 P4
\begin{figure}[h]
\includegraphics[scale=0.7]{v6-v4-standard}
\centering
\caption{Standard NAT64 translation}
\label{fig:v6v4standard}
\end{figure}
Introduce the related research field/the project.
The in network solution does not only ease the installation and
deployment of IPv6, but it also allows line speed translation, because
it is compiled into target dependent low level code that can run in
ASICs\cite{networks:_tofin},
FPGAs\cite{netfpga:_p4_netpf_public_github}
or even in software \cite{_implem_your_switc_target_with_bmv2}.
\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
a lot of potential
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
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.
\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}
NAT64 in software is CPU bound. Hardware can potentially do this at

4
doc/appendix.tex

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

11
doc/graphviz/v6-v4-innetwork.dot

@ -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;
}

BIN
doc/graphviz/v6-v4-innetwork.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

54
doc/graphviz/v6-v4-mixed.dot

@ -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;
}
}

BIN
doc/graphviz/v6-v4-mixed.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
doc/graphviz/v6-v4-standard.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

2
doc/preamble.tex

@ -14,7 +14,7 @@
pdftex}
\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{subcaption} % caption/subcaption replaces subfigure, which is deprecated

15
doc/refs/refs.bib

@ -48,3 +48,18 @@
title = {IPv6 transition mechanism},
howpublished = {\url{https://en.wikipedia.org/wiki/IPv6_transition_mechanism}},
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/}}}

Loading…
Cancel
Save