2019-07-29 17:13:47 +00:00
|
|
|
\chapter{\label{results}Results}
|
|
|
|
%** Results.tex: What were the results achieved including an evaluation
|
|
|
|
%
|
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
\section{\label{results:general}General}
|
|
|
|
Parser for all protocols (udp,tcp,icmp,icmp6)
|
|
|
|
|
|
|
|
BMV2: more feature rich, but software only solution
|
|
|
|
NetFPGA: capabale of line speed Nat64, focused port on nat64
|
2019-07-29 17:13:47 +00:00
|
|
|
|
2019-08-13 10:56:15 +00:00
|
|
|
Both support EAMT as defined by RFC7757 \cite{rfc7757}.
|
2019-07-29 17:13:47 +00:00
|
|
|
|
2019-07-31 08:50:30 +00:00
|
|
|
\section{\label{Results:BMV2}BMV2}
|
2019-08-12 10:13:59 +00:00
|
|
|
|
|
|
|
Responds to icmp, icmp6
|
2019-08-12 15:36:43 +00:00
|
|
|
ndp \cite{rfc4861}
|
2019-07-31 08:50:30 +00:00
|
|
|
arp
|
|
|
|
|
|
|
|
test framework openvswitch
|
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
Fully functional host
|
|
|
|
Can compute checksums on its own.
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-08-12 15:36:43 +00:00
|
|
|
focus on typical use cases of icmp, icmp6, the software implementation
|
|
|
|
supports translating echo request and echo reply messages, but does
|
|
|
|
not support all ICMP/ICMP6 translations that are defined in
|
|
|
|
RFC6145\cite{rfc6145}.
|
|
|
|
|
|
|
|
Stateful : no automatic removal
|
|
|
|
|
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
\section{\label{results:tayga}Tayga}
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
3gbit
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
\section{\label{results:jool}Jool}
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-07-31 09:30:56 +00:00
|
|
|
|
2019-08-14 14:18:27 +00:00
|
|
|
% ----------------------------------------------------------------------
|
2019-08-12 10:13:59 +00:00
|
|
|
\section{\label{Results:NetPFGA}NetFPGA}
|
2019-08-14 14:18:27 +00:00
|
|
|
\subsection{\label{results:netpfga:checksum}Checksum computation}
|
|
|
|
\subsection{\label{results:netpfga:general}to be named}
|
|
|
|
|
2019-08-13 10:56:15 +00:00
|
|
|
|
|
|
|
Trace files
|
|
|
|
\begin{verbatim}
|
|
|
|
create mode 100644 pcap/tcp-udp-delta-2019-07-17-1555-h1.pcap
|
|
|
|
create mode 100644 pcap/tcp-udp-delta-2019-07-17-1555-h3.pcap
|
|
|
|
create mode 100644 pcap/tcp-udp-delta-2019-07-17-1557-h1.pcap
|
|
|
|
create mode 100644 pcap/tcp-udp-delta-2019-07-17-1558-h3.pcap
|
|
|
|
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
*** DONE 2019-07-21: Proof of v6->v4 working delta based
|
|
|
|
CLOSED: [2019-07-21 Sun 12:30]
|
|
|
|
#+BEGIN_CENTER
|
|
|
|
pcap/tcp-udp-delta-from-v6-2019-07-21-0853-h1.pcap | Bin 0 -> 4252 bytes
|
|
|
|
pcap/tcp-udp-delta-from-v6-2019-07-21-0853-h3.pcap | Bin 0 -> 2544 bytes
|
|
|
|
#+END_CENTER
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
**** DONE Testing v4->v6 tcp: ok (version 10.0)
|
|
|
|
CLOSED: [2019-08-04 Sun 09:15]
|
|
|
|
#+BEGIN_CENTER
|
|
|
|
nico@ESPRIMO-P956:~/master-thesis/bin$ ./socat-connect-tcp-v4
|
|
|
|
+ echo from-v4-ok
|
|
|
|
+ socat - TCP:10.0.0.66:2345
|
|
|
|
TCPv6-ok
|
|
|
|
nico@ESPRIMO-P956:~/master-thesis/bin$ ./socat-listen-tcp-v6
|
|
|
|
from-v4-ok
|
|
|
|
|
|
|
|
#+END_CENTER
|
|
|
|
|
|
|
|
trace:
|
|
|
|
netfpga-nat64-2019-08-04-0907-enp2s0f0.pcap
|
|
|
|
netfpga-nat64-2019-08-04-0907-enp2s0f1.pcap
|
|
|
|
|
|
|
|
**** DONE Testing v4->v6 udp: ok (version 10.1)
|
|
|
|
trace:
|
|
|
|
create mode 100644 pcap/netfpga-nat64-udp-2019-08-04-0913-enp2s0f0.pcap
|
|
|
|
create mode 100644 pcap/netfpga-nat64-udp-2019-08-04-0913-enp2s0f1.pcap
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
*** DONE 2019-08-04: version 10.1/10.2: new maxpacketregion: v4->v6 works
|
|
|
|
CLOSED: [2019-08-04 Sun 19:42]
|
|
|
|
#+BEGIN_CENTER
|
|
|
|
nico@ESPRIMO-P956:~/master-thesis/bin$ ./init_ipv4_esprimo.sh
|
|
|
|
nico@ESPRIMO-P956:~/master-thesis/bin$ ./set_ipv4_neighbor.sh
|
|
|
|
|
|
|
|
#+END_CENTER
|
|
|
|
|
|
|
|
Test 20 first:
|
|
|
|
|
|
|
|
- Does't work -> missed to add table entries
|
|
|
|
- Does work after setting table entries
|
|
|
|
- 300 works
|
|
|
|
- 1450 works
|
|
|
|
- 1500 does not work
|
|
|
|
|
|
|
|
Proof:
|
|
|
|
|
|
|
|
create mode 100644 pcap/netfpga-10.2-maxpacket-2019-08-04-1931-enp2s0f0.pcap
|
|
|
|
create mode 100644 pcap/netfpga-10.2-maxpacket-2019-08-04-1931-enp2s0f1.pcap
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
*** DONE 2019-08-04: test v6 -> v4: works for 1420
|
|
|
|
CLOSED: [2019-08-04 Sun 20:30]
|
|
|
|
|
|
|
|
Proof:
|
|
|
|
#+BEGIN_CENTER
|
|
|
|
create mode 100644 pcap/netfpga-10.2-fromv6tov4-2019-08-04-1943-enp2s0f0.pcap
|
|
|
|
create mode 100644 pcap/netfpga-10.2-fromv6tov4-2019-08-04-1943-enp2s0f1.pcap
|
|
|
|
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
General result: limited NAT64 is working, however
|
2019-08-01 18:59:21 +00:00
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
No Payload
|
|
|
|
checksumming - requires controller
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
Hash funktion in Arbeit
|
2019-07-31 08:50:30 +00:00
|
|
|
|
2019-08-12 10:13:59 +00:00
|
|
|
No NDP, no ARP - focused on key factors of NAT64 translation,
|
|
|
|
other features can be supported by controller
|
2019-08-07 13:55:53 +00:00
|
|
|
|
2019-08-09 12:25:18 +00:00
|
|
|
\section{\label{results:softwarenat64}NAT64 in Software}
|
|
|
|
Tayga, Jool
|
|
|
|
|
2019-08-13 10:56:15 +00:00
|
|
|
tayga: Single threaded
|
|
|
|
fork:
|
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
| What? | Description | State in P4 | References |
|
|
|
|
|---------------------+------------------------------------------+-------------------+---------------------------------------------------------------------------------|
|
|
|
|
|
|
|
|
| Jool EAMT | Mapping with tables, multiple entries | Supported | https://www.jool.mx/en/eamt.html, https://www.jool.mx/en/run-eam.html, RFC 7757 |
|
|
|
|
| Jool SIIT | Mapping IPv6 to range of IPv4, one entry | Supported by EAMT | |
|
|
|
|
|
|
|
|
\end{verbatim}
|
|
|
|
|
|
|
|
|
2019-08-12 15:36:43 +00:00
|
|
|
\section{\label{results:features}Feature comparison}
|
|
|
|
|
|
|
|
speed - sessions - eamt
|
|
|
|
can act as host
|
|
|
|
lpm tables
|
|
|
|
ping
|
|
|
|
ping6 support
|
|
|
|
ndp
|
|
|
|
controller support
|
|
|
|
|
|
|
|
\section{todo - FIXME: remove}
|
2019-08-07 13:55:53 +00:00
|
|
|
|
|
|
|
\begin{verbatim}
|
|
|
|
***** Dorth eher detailiertes Drawing
|
|
|
|
***** Längste Section!
|
|
|
|
|
|
|
|
\end{verbatim}
|