++graphs ++ intro
This commit is contained in:
parent
de6bc3dcba
commit
1c217817c4
9 changed files with 124 additions and 42 deletions
|
@ -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
|
||||||
|
|
|
@ -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}
|
||||||
|
|
11
doc/graphviz/v6-v4-innetwork.dot
Normal file
11
doc/graphviz/v6-v4-innetwork.dot
Normal 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;
|
||||||
|
|
||||||
|
}
|
BIN
doc/graphviz/v6-v4-innetwork.png
Normal file
BIN
doc/graphviz/v6-v4-innetwork.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
54
doc/graphviz/v6-v4-mixed.dot
Normal file
54
doc/graphviz/v6-v4-mixed.dot
Normal 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;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
BIN
doc/graphviz/v6-v4-mixed.png
Normal file
BIN
doc/graphviz/v6-v4-mixed.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 30 KiB |
BIN
doc/graphviz/v6-v4-standard.png
Normal file
BIN
doc/graphviz/v6-v4-standard.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
|
@ -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
|
||||||
|
|
|
@ -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/}}}
|
||||||
|
|
Loading…
Add table
Reference in a new issue