improved motivation
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
\label{Methodology}
|
\label{Methodology}
|
||||||
|
|
||||||
This chapter describes the methodology used to benchmark peer-to-peer
|
This chapter describes the methodology used to benchmark peer-to-peer
|
||||||
overlay VPN implementations. The experimental design prioritizes
|
mesh VPN implementations. The experimental design prioritizes
|
||||||
reproducibility at every layer---from dependency management to network
|
reproducibility at every layer---from dependency management to network
|
||||||
conditions---enabling independent verification of results and
|
conditions---enabling independent verification of results and
|
||||||
facilitating future comparative studies.
|
facilitating future comparative studies.
|
||||||
@@ -58,13 +58,13 @@ mesh topologies. Table~\ref{tab:vpn_selection} summarizes the selection.
|
|||||||
\hline
|
\hline
|
||||||
Tailscale (Headscale) & Coordinated mesh & Open-source coordination server \\
|
Tailscale (Headscale) & Coordinated mesh & Open-source coordination server \\
|
||||||
ZeroTier & Coordinated mesh & Global virtual Ethernet \\
|
ZeroTier & Coordinated mesh & Global virtual Ethernet \\
|
||||||
Nebula & Lighthouse-based mesh & Slack's overlay network \\
|
Nebula & Coordinated mesh & Slack's overlay network \\
|
||||||
Tinc & Decentralized mesh & Established since 1998 \\
|
Tinc & Fully decentralized & Established since 1998 \\
|
||||||
Yggdrasil & Fully decentralized & Spanning-tree routing \\
|
Yggdrasil & Fully decentralized & Spanning-tree routing \\
|
||||||
Mycelium & Fully decentralized & End-to-end encrypted IPv6 overlay \\
|
Mycelium & Fully decentralized & End-to-end encrypted IPv6 overlay \\
|
||||||
Hyprspace & Fully decentralized & libp2p-based, IPFS-compatible \\
|
Hyprspace & Fully decentralized & libp2p-based, IPFS-compatible \\
|
||||||
EasyTier & Decentralized mesh & Rust-based, multi-protocol \\
|
EasyTier & Fully decentralized & Rust-based, multi-protocol \\
|
||||||
VpnCloud & Decentralized mesh & Lightweight, kernel bypass option \\
|
VpnCloud & Fully decentralized & Lightweight, kernel bypass option \\
|
||||||
WireGuard & Point-to-point & Reference baseline (not a mesh VPN) \\
|
WireGuard & Point-to-point & Reference baseline (not a mesh VPN) \\
|
||||||
\hline
|
\hline
|
||||||
Internal (no VPN) & N/A & Baseline for raw network performance \\
|
Internal (no VPN) & N/A & Baseline for raw network performance \\
|
||||||
@@ -359,6 +359,17 @@ isolated from stateful interactions typical in imperative package
|
|||||||
management. This property is essential for ensuring identical test
|
management. This property is essential for ensuring identical test
|
||||||
environments across benchmark runs.
|
environments across benchmark runs.
|
||||||
|
|
||||||
|
\subsection{A Comparative Study on Virtual Private Networks}
|
||||||
|
|
||||||
|
Lackorzynski et al.\ \cite{lackorzynski_comparative_2019} evaluate
|
||||||
|
VPN protocols in the context of industrial communication systems (Industry 4.0),
|
||||||
|
benchmarking OpenVPN, IPSec, Tinc, Freelan, MACsec, and WireGuard.
|
||||||
|
Their analysis focuses on point-to-point protocol performance---throughput,
|
||||||
|
latency, and CPU overhead---rather than overlay network behavior.
|
||||||
|
In contrast, this thesis evaluates VPNs that provide a full data plane
|
||||||
|
with peer-to-peer connectivity, NAT traversal, and dynamic peer discovery.
|
||||||
|
|
||||||
|
|
||||||
\subsection{Full-Mesh VPN Performance Evaluation}
|
\subsection{Full-Mesh VPN Performance Evaluation}
|
||||||
|
|
||||||
Kjorveziroski et al.\ \cite{kjorveziroski_full-mesh_2024} provide a
|
Kjorveziroski et al.\ \cite{kjorveziroski_full-mesh_2024} provide a
|
||||||
@@ -377,11 +388,4 @@ This thesis extends their work in several ways:
|
|||||||
\item Fully reproducible experimental framework via Nix/NixOS/Clan
|
\item Fully reproducible experimental framework via Nix/NixOS/Clan
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Low Maintenance Peer-to-Peer Overlays}
|
|
||||||
|
|
||||||
Shukla et al.\ propose integrating Software Defined Networks with
|
|
||||||
DHT-based P2P overlays to reduce maintenance overhead
|
|
||||||
\cite{shukla_towards_2021}. Their work on aligning overlay topology
|
|
||||||
with physical networks is relevant to understanding the performance
|
|
||||||
characteristics of mesh VPNs that must discover and maintain peer
|
|
||||||
connectivity dynamically.
|
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ evidence-based comparison of peer-to-peer overlay VPN implementations.
|
|||||||
Existing research on this topic remains sparse.
|
Existing research on this topic remains sparse.
|
||||||
One notable work from 2024, ``Full-mesh VPN performance evaluation
|
One notable work from 2024, ``Full-mesh VPN performance evaluation
|
||||||
for a secure edge-cloud continuum'' \cite{kjorveziroski_full-mesh_2024},
|
for a secure edge-cloud continuum'' \cite{kjorveziroski_full-mesh_2024},
|
||||||
benchmarks a subset of overlay VPNs but focuses primarily
|
benchmarks a subset of mesh VPNs but focuses primarily
|
||||||
on solutions with a central point of failure.
|
on solutions with a central point of failure.
|
||||||
In contrast, this thesis evaluates more widely adopted mesh VPNs
|
In contrast, this thesis evaluates more widely adopted mesh VPNs
|
||||||
with an emphasis on fully decentralized architectures.
|
with an emphasis on fully decentralized architectures.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
@Comment{$ biblatex control file $}
|
@Comment{$ biblatex control file $}
|
||||||
@Comment{$ biblatex bcf format version 3.11 $}
|
@Comment{$ biblatex bcf format version 3.10 $}
|
||||||
% Do not modify this file!
|
% Do not modify this file!
|
||||||
%
|
%
|
||||||
% This is an auxiliary file used by the 'biblatex' package.
|
% This is an auxiliary file used by the 'biblatex' package.
|
||||||
@@ -7,5 +7,5 @@
|
|||||||
% required.
|
% required.
|
||||||
|
|
||||||
@Control{biblatex-control,
|
@Control{biblatex-control,
|
||||||
options = {3.11:0:0:1:0:1:1:0:0:0:0:1:3:1:3:1:0:0:3:1:79:+:+:nty},
|
options = {3.10:0:0:1:0:1:1:0:0:0:0:1:3:1:3:1:0:0:3:1:79:+:+:nty},
|
||||||
}
|
}
|
||||||
|
|||||||
31
main.tex
31
main.tex
@@ -41,12 +41,17 @@
|
|||||||
%parskip, % Uncomment to add space between paragraphs
|
%parskip, % Uncomment to add space between paragraphs
|
||||||
%nohyperref, % Uncomment to not load the hyperref package
|
%nohyperref, % Uncomment to not load the hyperref package
|
||||||
headsepline, % Uncomment to get a line under the header
|
headsepline, % Uncomment to get a line under the header
|
||||||
%chapterinoneline, % Uncomment to place the chapter title next to
|
chapterinoneline, % Place the chapter title next to the number on one line
|
||||||
% the number on one line
|
|
||||||
%consistentlayout, % Uncomment to change the layout of the
|
%consistentlayout, % Uncomment to change the layout of the
|
||||||
% declaration, abstract and acknowledgements pages to match the default layout
|
% declaration, abstract and acknowledgements pages to match the default layout
|
||||||
]{MastersDoctoralThesis} % The class file specifying the document structure
|
]{MastersDoctoralThesis} % The class file specifying the document structure
|
||||||
|
|
||||||
|
% Fix chapter prefix for chapterinoneline option
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\mdtChapapp}{\@chapapp\space}
|
||||||
|
\renewcommand{\autodot}{:}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
\usepackage[utf8]{inputenc} % Required for inputting international characters
|
\usepackage[utf8]{inputenc} % Required for inputting international characters
|
||||||
\usepackage[T1]{fontenc} % Output font encoding for international characters
|
\usepackage[T1]{fontenc} % Output font encoding for international characters
|
||||||
\usepackage{float}
|
\usepackage{float}
|
||||||
@@ -250,7 +255,7 @@ and Management}} % Your department's name and URL, this is used in
|
|||||||
demonstrating measurable improvements in network throughput.
|
demonstrating measurable improvements in network throughput.
|
||||||
This work contributes to decentralized networking research
|
This work contributes to decentralized networking research
|
||||||
by providing an extensible framework for reproducible P2P benchmarks,
|
by providing an extensible framework for reproducible P2P benchmarks,
|
||||||
offering insights into overlay VPN implementation quality,
|
offering insights into mesh VPN implementation quality,
|
||||||
and demonstrating that default Linux kernel settings are suboptimal
|
and demonstrating that default Linux kernel settings are suboptimal
|
||||||
for adverse network conditions.
|
for adverse network conditions.
|
||||||
|
|
||||||
@@ -264,7 +269,7 @@ and Management}} % Your department's name and URL, this is used in
|
|||||||
\addchaptertocentry{\acknowledgementname} % Add the
|
\addchaptertocentry{\acknowledgementname} % Add the
|
||||||
% acknowledgements to the table of contents
|
% acknowledgements to the table of contents
|
||||||
|
|
||||||
I am very grateful to my work colleagues Mic92, Lassulus, W, Hsjobeki,
|
I am very grateful to my work colleagues Mic92, Lassulus, Hsjobeki, Enzime,
|
||||||
DavHau and Pinpox with whom I worked together to create the Clan framework.
|
DavHau and Pinpox with whom I worked together to create the Clan framework.
|
||||||
As well as my supervisor, Ber Lorke, for his guidance and support
|
As well as my supervisor, Ber Lorke, for his guidance and support
|
||||||
during my research.
|
during my research.
|
||||||
@@ -283,9 +288,9 @@ and Management}} % Your department's name and URL, this is used in
|
|||||||
|
|
||||||
\tableofcontents % Prints the main table of contents
|
\tableofcontents % Prints the main table of contents
|
||||||
|
|
||||||
\listoffigures % Prints the list of figures
|
%\listoffigures % Prints the list of figures
|
||||||
|
|
||||||
\listoftables % Prints the list of tables
|
%\listoftables % Prints the list of tables
|
||||||
|
|
||||||
%----------------------------------------------------------------------------------------
|
%----------------------------------------------------------------------------------------
|
||||||
% ABBREVIATIONS
|
% ABBREVIATIONS
|
||||||
@@ -315,17 +320,17 @@ and Management}} % Your department's name and URL, this is used in
|
|||||||
% SYMBOLS
|
% SYMBOLS
|
||||||
%----------------------------------------------------------------------------------------
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
\begin{symbols}{lll} % Include a list of Symbols (a three column table)
|
% \begin{symbols}{lll} % Include a list of Symbols (a three column table)
|
||||||
|
|
||||||
% $a$ & distance & \si{\meter} \\
|
% % $a$ & distance & \si{\meter} \\
|
||||||
% $P$ & power & \si{\watt} (\si{\joule\per\second}) \\
|
% % $P$ & power & \si{\watt} (\si{\joule\per\second}) \\
|
||||||
%Symbol & Name & Unit \\
|
% %Symbol & Name & Unit \\
|
||||||
|
|
||||||
\addlinespace % Gap to separate the Roman symbols from the Greek
|
% \addlinespace % Gap to separate the Roman symbols from the Greek
|
||||||
|
|
||||||
% $\omega$ & angular frequency & \si{\radian} \\
|
% % $\omega$ & angular frequency & \si{\radian} \\
|
||||||
|
|
||||||
\end{symbols}
|
% \end{symbols}
|
||||||
|
|
||||||
%----------------------------------------------------------------------------------------
|
%----------------------------------------------------------------------------------------
|
||||||
% DEDICATION
|
% DEDICATION
|
||||||
|
|||||||
Reference in New Issue
Block a user