From a08f757e96a8ca194055151dc9f7c6e412ef5caa Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Mon, 19 Aug 2019 15:39:47 +0200 Subject: [PATCH] Design chapter done --- doc/Background.tex | 12 ++++++- doc/Design.tex | 79 ++++++++++++++++++++++----------------------- doc/Thesis.pdf | Bin 1401242 -> 1401817 bytes doc/appendix.tex | 1 + 4 files changed, 51 insertions(+), 41 deletions(-) diff --git a/doc/Background.tex b/doc/Background.tex index 18faab2..dc0d8de 100644 --- a/doc/Background.tex +++ b/doc/Background.tex @@ -381,7 +381,7 @@ When translating, the checksum fields in the higher protocols need to be adjusted. The checksums for TCP and UDP is calculated not only over the pseudo headers, but also contain the payload of the packet. This is important, because some targets (like the NetPFGA) do not allow to -access the payload. +access the payload (see section \ref{design:netpfga}). \begin{figure}[h] \begin{verbatim} 0 7 8 15 16 23 24 31 @@ -397,6 +397,16 @@ access the payload. \caption{IPv4 Pseudo Header} \label{fig:ipv4pseudoheader} \end{figure} +The checksums for IPv4, TCP, UDP and ICMP6 are all based on the +``Internet Checksum''~\cite{rfc791},~\cite{rfc1071}. +Its calculation can be summarised as follows: +\begin{quote} + The checksum field is the 16-bit one's complement of the one's + complement sum of all 16-bit words in the header. For purposes of + computing the checksum, the value of the checksum field + is zero.\footnote{Quote from Wikipedia~\cite{wikipedia:_ipv4}.}. +\end{quote} + % ---------------------------------------------------------------------- \section{\label{background:networkdesign}Network Designs} %% \begin{figure}[h] diff --git a/doc/Design.tex b/doc/Design.tex index 25ba593..fef5b06 100644 --- a/doc/Design.tex +++ b/doc/Design.tex @@ -320,16 +320,7 @@ second option of using the differences is described in section \ref{design:netpfga}. % ok % ---------------------------------------------------------------------- -\section{\label{design:netpfga}NetFPGA - FIXME: relate things} -While the P4-NetFPGA project ~\cite{netfpga:_p4_netpf_public_github} -allows compiling P4 to the NetPFGA, the design slightly varies. -In particular, the NetFPGA P4 compiler does not support reading -the payload. For this reason it also does not support -creating the checksum based on the payload. -To support checksum modifications in NAT64 on the NetFPGA, the -checksum was calculated on the netpfga using differences between -the IPv6 and IPv4 headers. Figure \ref{fig:checksumbydiff} shows an -excerpt of the code used for calculating checksums in the netpfga. +\section{\label{design:netpfga}P4/NetFPGA} \begin{figure}[h] \begin{verbatim} action v4sum() { @@ -366,55 +357,63 @@ action delta_tcp_from_v6_to_v4() hdr.tcp.checksum = (bit<16>) tmp; } - \end{verbatim} \centering \caption{Calculating checksum based on header differences} \label{fig:checksumbydiff} \end{figure} -The checksums for IPv4, TCP, UDP and ICMP6 are all based on the -``Internet Checksum''~\cite{rfc791},~\cite{rfc1071}. -Its calculation can be summarised as follows: -\begin{quote} - The checksum field is the 16-bit one's complement of the one's - complement sum of all 16-bit words in the header. For purposes of - computing the checksum, the value of the checksum field - is zero.\footnote{Quote from Wikipedia~\cite{wikipedia:_ipv4}.}. -\end{quote} -As the calculation mainly depends on on (1-complement) sums, the -checksums after translating the protocol can be corrected by -subtracting the differences of the relevant fields. It is notable that -not the full headers are used, but the pseudo headers (compare figures +While the P4-NetFPGA project~\cite{netfpga:_p4_netpf_public_github} +allows compiling P4 to the NetPFGA, the design slightly varies due to +limitations in the available toolchain. +In particular, the NetFPGA P4 compiler does not support reading +the payload.\footnote{This feature could be implemented in theory, but +isn't available at the moment, see~\cite{schottelius:_exter_p4_netpf}.} +For this reason it also does not support +creating the checksum based on the payload. +To support checksum modifications in NAT64 on the NetFPGA, the +checksum is calculated using differences between +the IPv6 and IPv4 headers. + +As the checksum calculation only depends on the 1-complement sums of +headers and the payload (compare section \ref{background:checksums}) +and only headers are modified during NAT64 translations, the higher +level protocol checksums can be corrected based on the sum of +differences of both headers. Thus our P4/NetFPGA implementation first +calculates the sum of the relevant IPv4 headers (\texttt{v4sum()}), +the sum of the relevant IPv6 headers (\texttt{v6sum()}) +and then calculates the difference including a +possible carry bit and adjusts the higher level protocol by this +difference (\texttt{delta\_tcp\_from\_v6\_to\_v4()}). +Figure \ref{fig:checksumbydiff} shows an +excerpt of the code used for adjust the checksum when translating TCP +from IPv6 to IPv4. +It is notable that +not the full headers are used, but only a ``pseudo header'' (compare figures \ref{fig:ipv6pseudoheader} and \ref{fig:ipv4pseudoheader}). -To compensate the carry bit, our code uses 17 bit integers for -correcting the carry. -% FIXME: add note to python script / checksum diffing - - +% ok % ---------------------------------------------------------------------- \section{\label{design:benchmarks}Benchmarks} -The benchmarks were performed on two hosts, a load generator and a -nat64 translator. Both hosts were equipped with a dual port -Intel X520 10 Gbit/s network card. Both hosts were connected using DAC -without any equipment in between. TCP offloading was enabled in the -X520 cards. Figure \ref{fig:softwarenat64design} -shows the network setup. \begin{figure}[h] \includegraphics[scale=0.5]{softwarenat64design} \centering - \caption{NAT64 in software benchmark} + \caption{Benchmark design for NAT64 in software implementations} \label{fig:softwarenat64design} \end{figure} +We use two hosts for performing benchmarks: a load generator and a +NAT64 translator. Both hosts are equipped with a dual port +Intel X520 10 Gbit/s network card. Both hosts are connected using DAC +without any equipment in between. TCP offloading is enabled in the +X520 cards. Figure \ref{fig:softwarenat64design} +shows the network setup. When testing the NetPFGA/P4 performance, the X520 cards in the NAT64 -translator were diconnected and instead the NetPFGA ports were +translator are disconnected and instead the NetPFGA ports are connected, as show in figure \ref{fig:netpfgadesign}. The load generator is equipped with a quad core CPU (Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz), enabled with hyperthreading and 16 GB RAM. The NAT64 translator is also equipped with a quard core CPU (Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz) and 16 GB RAM. - -The first 10 seconds of the benchmark were excluded to avoid the TCP -warm up phase.\footnote{iperf -O 10 parameter} +The first 10 seconds of the benchmark are excluded to avoid the TCP +warm up phase.\footnote{iperf -O 10 parameter, see section \ref{design:tests}.} \begin{figure}[h] \includegraphics[scale=0.5]{netpfgadesign} \centering diff --git a/doc/Thesis.pdf b/doc/Thesis.pdf index 4e3da3ffd176cf6c2ed19ee00809cbb950e5588f..78d24a4e886ea921c1cad454a48e6775dd9dbf74 100644 GIT binary patch delta 38691 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