From 284a60cf65523b3a868a58cf2edc97d190a95608 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Fri, 27 Apr 2018 00:39:19 +0200 Subject: wip --- slides/images/ip-packet.pgf | 47 +++++++++++++++++++++++++++++ slides/images/mqtt-example-architecture.pgf | 23 ++++++++++++++ slides/images/qtikz-template.pgs | 2 ++ slides/images/udp-packet.pgf | 32 ++++++++++++++++++++ 4 files changed, 104 insertions(+) create mode 100644 slides/images/ip-packet.pgf create mode 100644 slides/images/mqtt-example-architecture.pgf create mode 100644 slides/images/udp-packet.pgf (limited to 'slides/images') diff --git a/slides/images/ip-packet.pgf b/slides/images/ip-packet.pgf new file mode 100644 index 0000000..5a977a2 --- /dev/null +++ b/slides/images/ip-packet.pgf @@ -0,0 +1,47 @@ +\begin{tikzpicture}[scale=0.30] + \sffamily + \foreach \x in {0,7,8,15,16,31} % {0,...,32} + \node at (\x+0.5,20.5) {\scriptsize \x}; +% \foreach \x in {0,...,31} +% \node at (\x+0.5,13.5) {\scriptsize \x}; + \foreach \x in {0,8,16,32} % {0,...,32} + \draw[thick] (\x,20) -- (\x,21); + \foreach \x in {0,...,32} + \draw[thick] (\x,14) -- (\x,20); +% \foreach \x in {0,...,32} +% \draw[thick] (\x,13) -- (\x,14); + \node[thick] (bit1) at (-0.6,20.5) {\scriptsize bit}; +% \node[thick] (bit2) at (-0.6,13.5) {\scriptsize bit}; + +\iffalse + \draw [<->, thick] (-0.6, 19.9) -- (-0.6,15.1); + \draw [thick] (-1, 20) -- (-0.1,20); + \draw [thick] (-1, 15) -- (-0.1,15); + \node[fill=white] at (-1.1,17.5) {\tiny 20 bytes}; +\fi + \foreach \y/\v in {0,4,8,12,16,20} + \node at (-0.6,{19.5-(\v / 4)}) {\scriptsize \v}; + + \filldraw[thick,draw=black, fill=white] (0,20) rectangle (4,19); \node (mode) at (2,19.5) {\scriptsize version}; + \filldraw[thick,draw=black, fill=white] (4,20) rectangle (8,19); \node (mode) at (6,19.5) {\scriptsize len}; +% \draw[thick, draw=black, fill=white] (8,20) rectangle (16,19); \node (stratum) at (11.5,19.5) {\scriptsize type of service (TOS)}; + \draw[thick, draw=black, fill=white] (8,20) rectangle (16,19); \node (stratum) at (11.5,19.5) {\scriptsize TOS}; + \draw[thick, draw=black, fill=white] (16,20) rectangle (32,19); \node (li) at (24,19.5) {\scriptsize full length of packet}; + \filldraw[thick,draw=black, fill=white] (0,19) rectangle (16,18); \node (mode) at (8,18.5) {\scriptsize identification}; +% \draw[thick, draw=black] (16,19) rectangle (19,18); \filldraw[white] (16.5,18.43) rectangle (19,18.88); \node [](li) at (17.5,18.67) {\tiny IP flags}; \node at (16.5,18.25) {\tiny x};\node at (17.5,18.25) {\tiny D};\node at (18.5,18.25) {\tiny M}; + \draw[thick, draw=black] (16,19) rectangle (19,18); \filldraw[white] (16.5,18.43) rectangle (19,18.88); \node at (16.5,18.5) {\scriptsize X};\node at (17.5,18.5) {\scriptsize D};\node at (18.5,18.5) {\scriptsize M}; + \draw[thick, draw=black, fill=white] (19,19) rectangle (32,18); \node (li) at (24,18.5) {\scriptsize fragment Offset}; + \filldraw[thick,draw=black, fill=white] (0,18) rectangle (8,17); \node (mode) at (4,17.5) {\scriptsize time to live (TTL)}; + \draw[thick, draw=black, fill=white] (8,18) rectangle (16,17); \node (stratum) at (11.5,17.5) {\scriptsize protocol}; + \draw[thick, draw=black, fill=white] (16,18) rectangle (32,17); \node (li) at (24,17.5) {\scriptsize header checksum}; + \filldraw[thick,draw=black, fill=white] (0,17) rectangle (32,16); \node (mode) at (16,16.5) {\scriptsize source IP address}; + \filldraw[thick,draw=black, fill=white] (0,16) rectangle (32,15); \node (mode) at (16,15.5) {\scriptsize destination IP address}; + \draw[thick,draw=black, fill=white] (0,15) rectangle (32,14); +% \draw[thick,draw=black, fill=white] (0,15) rectangle (31.5,14); +% \draw[fill=white, draw=white] (31.4,15) rectangle (31.6,16); +% \draw[thick] (31.5,14.97) decorate [decoration=saw] { -- (31.5,14.02)}; + \node (mode) at (16,14.5) {\scriptsize IP options (variable length)}; + + \filldraw[thick,draw=black, fill=white] (0,12) rectangle (32,14); \node (mode) at (16,13) {\scriptsize payload}; + +\end{tikzpicture} diff --git a/slides/images/mqtt-example-architecture.pgf b/slides/images/mqtt-example-architecture.pgf new file mode 100644 index 0000000..b36827c --- /dev/null +++ b/slides/images/mqtt-example-architecture.pgf @@ -0,0 +1,23 @@ +\begin{tikzpicture} + +\path + (-3 cm, 0) node (c1_label) {Device \#1} + ( 0 cm, 0) node (c2_label) {Device \#2} + ( 3 cm, 0) node (c3_label) {Device \#3} + + (0, -3 cm) node (broker_label) {Broker} + (0, -6 cm) node (central_label) {Central} +; + +\node (c1)[draw, circle, fit=(c1_label)] {}; +\node (c2)[draw, circle, fit=(c2_label)] {}; +\node (c3)[draw, circle, fit=(c3_label)] {}; +\node (central)[draw, circle, fit=(central_label)] {}; +\node (broker)[draw, rectangle, thick, inner ysep=5 mm, inner xsep=10 mm, fit=(broker_label)] {}; + +\draw[{Latex[length=4mm, round]}-{Latex[length=4mm, round]}] (c1) to [bend right] (broker); +\draw[{Latex[length=4mm, round]}-{Latex[length=4mm, round]}] (c2) -- (broker); +\draw[{Latex[length=4mm, round]}-{Latex[length=4mm, round]}] (c3) to [bend left] (broker); +\draw[{Latex[length=4mm, round]}-{Latex[length=4mm, round]}] (central) -- (broker); + +\end{tikzpicture} diff --git a/slides/images/qtikz-template.pgs b/slides/images/qtikz-template.pgs index 6d23d1a..edb322b 100644 --- a/slides/images/qtikz-template.pgs +++ b/slides/images/qtikz-template.pgs @@ -6,6 +6,7 @@ \usetikzlibrary{ angles, arrows, + arrows.meta, backgrounds, calc, chains, @@ -14,6 +15,7 @@ decorations.pathreplacing, decorations.text, fit, + matrix, positioning, quotes, shapes.arrows, diff --git a/slides/images/udp-packet.pgf b/slides/images/udp-packet.pgf new file mode 100644 index 0000000..405f805 --- /dev/null +++ b/slides/images/udp-packet.pgf @@ -0,0 +1,32 @@ +\scalebox{0.5}{ + +\begin{tikzpicture}[ +every node/.style={font=\bfseries} +] + +\path +(-6.5em, 2em) node[draw, rectangle, minimum width=5em, minimum height=2em] {Offsets} +(-6.5em, 0em) node[draw, rectangle, minimum width=5em, minimum height=2em] {Octet} +(-2em, 2em) node[draw, rectangle, minimum width=4em, minimum height=2em] {Octet} +(-2em, 0em) node[draw, rectangle, minimum width=4em, minimum height=2em] {Bit} + +(16em, -2em) node[draw, rectangle, minimum width=32em, minimum height=2em] {source port} +(48em, -2em) node[draw, rectangle, minimum width=32em, minimum height=2em] {destination port} +(16em, -4em) node[draw, rectangle, minimum width=32em, minimum height=2em] {length} +(48em, -4em) node[draw, rectangle, minimum width=32em, minimum height=2em] {checksum} +; + +\foreach \x in {0,...,3} + \node[draw, rectangle, minimum width=16em, minimum height=2em] at (\x * 16em + 8em, 2em) {\scriptsize \x}; +\foreach \x in {0,...,31} + \node[draw, rectangle, minimum width=2em, minimum height=2em] at (\x * 2em + 1em, 0em) {\scriptsize \x}; + +\node[draw, rectangle, minimum width=4em, minimum height=2em] at (-2em, -2em) {\scriptsize 0}; +\node[draw, rectangle, minimum width=4em, minimum height=2em] at (-2em, -4em) {\scriptsize 32}; + +\node[draw, rectangle, minimum width=5em, minimum height=2em] at (-6.5em, -2em) {\scriptsize 0}; +\node[draw, rectangle, minimum width=5em, minimum height=2em] at (-6.5em, -4em) {\scriptsize 4}; + +\end{tikzpicture} + +} -- cgit v1.2.3