master-thesis/doc/Results.tex

168 lines
4.6 KiB
TeX
Raw Normal View History

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