ascii to graphs
This commit is contained in:
parent
1041ab6d87
commit
90a44d8d54
@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
\usepackage{pdfpages}
|
\usepackage{pdfpages}
|
||||||
\usepackage{graphicx}
|
\usepackage{graphicx}
|
||||||
|
\usepackage{tikz}
|
||||||
|
\usetikzlibrary{positioning}
|
||||||
|
|
||||||
\begin{document}
|
\begin{document}
|
||||||
\includepdf{cover.pdf}
|
\includepdf{cover.pdf}
|
||||||
@ -35,30 +37,38 @@ Some existing attempts to solve these problems, and the shortfalls of each solut
|
|||||||
By providing congestion control over each interface and therefore being able to share packets without bias between connections, this project should provide a superior solution for load balancing across heterogeneous and volatile network connections. An example of a client using this is shown in Figure \ref{fig:sample-network}. It's worth noting that this solution is highly flexible, allowing the client to be a NAT Router with more devices behind it, or the flows from the Local Server to the Remote Server being tunnelled over a VPN.
|
By providing congestion control over each interface and therefore being able to share packets without bias between connections, this project should provide a superior solution for load balancing across heterogeneous and volatile network connections. An example of a client using this is shown in Figure \ref{fig:sample-network}. It's worth noting that this solution is highly flexible, allowing the client to be a NAT Router with more devices behind it, or the flows from the Local Server to the Remote Server being tunnelled over a VPN.
|
||||||
|
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
\small
|
\centering
|
||||||
\begin{verbatim}
|
\begin{tikzpicture}[
|
||||||
Uncontrolled
|
squarednode/.style={rectangle, draw=black!60, fill=red!5, very thick, minimum size=5mm},
|
||||||
On Premises Off Premises Devices
|
]
|
||||||
+-------------------------------------------------+ +----------+ +----------+
|
|
||||||
|
% Nodes
|
||||||
|
\node[squarednode] (client) {Client};
|
||||||
|
\node[squarednode] (localserver) [right=of client] {Local Server};
|
||||||
|
|
||||||
|
\node[squarednode] (modema) [above right=0.5 and 1 of localserver] {Modem A};
|
||||||
|
\node[squarednode] (modemb) [below right=0.5 and 1 of localserver] {Modem B};
|
||||||
|
|
||||||
|
\node[squarednode] (remoteserver) [below right=0.5 and 1 of modema] {Remote Server};
|
||||||
|
|
||||||
|
\node[squarednode] (webserver) [above right=of remoteserver] {Web Server};
|
||||||
|
\node[squarednode] (voipserver) [right=of remoteserver] {VoIP Server};
|
||||||
|
\node[squarednode] (vpnserver) [below right=of remoteserver] {Corporate VPN};
|
||||||
|
|
||||||
|
% Edges
|
||||||
|
\draw[->] (client.east) -- (localserver.west);
|
||||||
|
|
||||||
|
\draw[->] (localserver.east) -- (modema.west);
|
||||||
|
\draw[->] (localserver.east) -- (modemb.west);
|
||||||
|
|
||||||
|
\draw[->] (modema.east) -- (remoteserver.west);
|
||||||
|
\draw[->] (modemb.east) -- (remoteserver.west);
|
||||||
|
|
||||||
|
\draw[->] (remoteserver.east) -- (webserver.west);
|
||||||
|
\draw[->] (remoteserver.east) -- (voipserver.west);
|
||||||
|
\draw[->] (remoteserver.east) -- (vpnserver.west);
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
+----------+
|
|
||||||
| Web |
|
|
||||||
+->+ Server |
|
|
||||||
+----------+ via | | |
|
|
||||||
+-------------------------------+ | | ISP A | +----------+
|
|
||||||
| | +-->+ Modem A +--+ |
|
|
||||||
| +----------+ +----------+ | | | | | +----------+ | +----------+
|
|
||||||
| | | | Local +----+ +----------+ +---->+ Remote +--+ | VoIP |
|
|
||||||
| | Client +---->+ Server | | | Server |---->+ Server |
|
|
||||||
| | | | +----+ +----------+ +---->+ +--+ | |
|
|
||||||
| +----------+ +----------+ | | | | | +----------+ | +----------+
|
|
||||||
| | +-->+ Modem B +--+ |
|
|
||||||
+-------------------------------+ | | via | +----------+
|
|
||||||
+----------+ ISP B | |Corporate |
|
|
||||||
+->+ VPN |
|
|
||||||
| |
|
|
||||||
+----------+
|
|
||||||
\end{verbatim}
|
|
||||||
\caption{A network applying this proxy}
|
\caption{A network applying this proxy}
|
||||||
\label{fig:sample-network}
|
\label{fig:sample-network}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
@ -111,30 +121,31 @@ A sample network is provided in Figure \ref{fig:sample-network-session-based}.
|
|||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
\small
|
\centering
|
||||||
\begin{verbatim}
|
\begin{tikzpicture}[
|
||||||
Uncontrolled
|
squarednode/.style={rectangle, draw=black!60, fill=red!5, very thick, minimum size=5mm},
|
||||||
On Premises Devices
|
]
|
||||||
+-------------------------------------------------+ +----------+
|
|
||||||
|
% Nodes
|
||||||
|
\node[squarednode] (client) {Client};
|
||||||
|
\node[squarednode] (natrouter) [right=of client] {NAT Router};
|
||||||
|
|
||||||
|
\node[squarednode] (modema) [above right=0.5 and 1 of natrouter] {Modem A};
|
||||||
|
\node[squarednode] (modemb) [below right=0.5 and 1 of natrouter] {Modem B};
|
||||||
|
|
||||||
|
\node[squarednode] (webserver) [above right=0.25 and 1 of modema] {Web Server};
|
||||||
|
\node[squarednode] (voipserver) [right=of modema] [below=of webserver] {VoIP Server};
|
||||||
|
\node[squarednode] (vpnserver) [right=of modemb] [below=of voipserver] {Corporate VPN};
|
||||||
|
|
||||||
|
% Edges
|
||||||
|
\draw[->] (client.east) -- (natrouter.west);
|
||||||
|
\draw[->] (natrouter.east) -- (modema.west);
|
||||||
|
\draw[->] (natrouter.east) -- (modemb.west);
|
||||||
|
\draw[->] (modema.east) -- (webserver.west);
|
||||||
|
\draw[->] (modema.east) -- (voipserver.west);
|
||||||
|
\draw[->] (modemb.east) -- (vpnserver.west);
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
+----------+
|
|
||||||
| Web |
|
|
||||||
+-->+ Server |
|
|
||||||
+----------+ | | |
|
|
||||||
+-------------------------------+ | +--+ +----------+
|
|
||||||
| | +-->+ Modem A |
|
|
||||||
| +----------+ +----------+ | | | +--+ +----------+
|
|
||||||
| | | | NAT +----+ +----------+ | | VoIP |
|
|
||||||
| | Client +---->+ Router | | +-->+ Server |
|
|
||||||
| | | | +----+ +----------+ | |
|
|
||||||
| +----------+ +----------+ | | | | +----------+
|
|
||||||
| | +-->+ Modem B +--+
|
|
||||||
+-------------------------------+ | | | +----------+
|
|
||||||
+----------+ | |Corporate |
|
|
||||||
+-->+ VPN |
|
|
||||||
| |
|
|
||||||
+----------+
|
|
||||||
\end{verbatim}
|
|
||||||
\caption{A network with a NAT Router and two modems}
|
\caption{A network with a NAT Router and two modems}
|
||||||
\label{fig:sample-network-session-based}
|
\label{fig:sample-network-session-based}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
Loading…
Reference in New Issue
Block a user