diff --git a/main.md b/main.md index 95c0f2f..26405f6 100644 --- a/main.md +++ b/main.md @@ -431,12 +431,15 @@ Regn ut 1920x1080 x 24 bits \\[ 16\ bits \cdot 44100\ Hz \cdot (3 \cdot 60)s \cdot 2\ kanaler \\] +Note: + +tegn en bølge, og vis frekvensen + --- ## Encoding og Komprimering - - - - + - "Hvordan tolke dataen" - Lossless vs lossy Note: @@ -453,6 +456,10 @@ Note: \\[ A6B4A5B2 \\] <!-- .element: class="fragment" data-fragment-index="1" --> +Note: + +Rart for tekst, men gir mening for bilder -> Runlength encoding + ---- ### Eksempel på lossy komprimering @@ -463,20 +470,86 @@ Dte e en eksmplstnig <!-- .element: class="fragment" data-fragment-index="1" --> Note: ikke vanlig for tekst, men akseptabelt for video/lyd/bilde +Gjøres ofte på tjenester som messenger. --- # Algoritmer - - +Note: +Beskriver stegvis og nøyaktig hvordan man løser et problem +Uten tolkning +Pseudokode ---- +(Eksempel på pseudokode) + --- ## Kompleksitet +<table> +<tr> +<td> + +\\[ \mathcal{O}(1) \\] + +</td> +<td> + +```python +def f(lst): + print('Hi!') +``` + +</td> +</tr> +<tr> +<td> + +\\[ \mathcal{O}(n) \\] + +</td> +<td> + +```python +def f(lst): + for item in lst: + print(item) +``` + +</td> +</tr> +<tr> +<td> + +\\[ \mathcal{O}(n^2) \\] + +</td> +<td> + +```python +def f(lst): + for item in lst: + for itemOnceMore in lst: + print(item, itemOnceMore) +``` + +</td> +</tr> +</table> + +Note: +brukes mer om dere skal programmere mye + +---- + +Sorteringsalgortimer: + +- Bubble sort: \\(\mathcal{O}(n^2)\\) +- Merge sort : \\(\mathcal{O}(n\ log\ n)\\) + --- # Nettverk @@ -491,9 +564,73 @@ ikke vanlig for tekst, men akseptabelt for video/lyd/bilde ### Historie - +- ARPAnet + +Note: +Sponset av Dep. of defense, USA +Kjellermaskiner, matte +Ble ikke brukt aktivt hele tiden +Overføre instruksjoner +Maksimal utnyttelse +Flere universiteter koblet seg på +Ikke veldig planlagt + --- +### 5 lags modellen + +<img src="./static/graphics/network-stack.svg" width=40%/> + +Note: +pakker +pakket inn i hverandre + +---- + +### Physical layer + +Note: +Medium for kommunikasjon mellom 2 eller flere endrepunkter + +---- + +### Data link layer + +Note: +Etablert: Kommunikasjonsmedium + +Stabil overføring, og kontakt med andre ender + +---- + +### Network layer + +Note: +Etablert: Flere computere er koblet sammen + +Kommunikasjon gjennom flere computere. + +Oppfører seg litt som postkontorer + +---- + +### Transport layer + + +Note: +Etablert: Link over mange computere. + +Stabil og sikker kommunikasjon til tross for forsvunnede pakker, + +---- + +Etablert: Stabil og sikker kommunikasjon. + +Applikasjonsspesifikk data. + +--- + + # Programvareutvikling diff --git a/static/graphics/internet.png b/static/graphics/internet.png new file mode 100644 index 0000000..73211ed Binary files /dev/null and b/static/graphics/internet.png differ diff --git a/static/graphics/internet.svg b/static/graphics/internet.svg index 1b6e9be..496158c 100644 --- a/static/graphics/internet.svg +++ b/static/graphics/internet.svg @@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- Do not edit this file with editors other than diagrams.net --> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="2336px" height="1860px" viewBox="-0.5 -0.5 2336 1860" content="<mxfile host="app.diagrams.net" modified="2021-11-15T19:22:42.502Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="K6DLsPXKleUHlwce7pmw"><diagram id="ayH7IwpMUGKmzRZnhKLC">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</diagram></mxfile>"><defs/><g><path d="M 584 600 L 594 568" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 648 691.31 L 800 756.18" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="519.5" y="599.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 498 542.67 L 550 525.33" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 370 564 L 318 564" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 408 500 L 395 468" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="369.5" y="499.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 408 715.33 L 520 682.67" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 310.12 670 L 287.88 628" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 377.88 670 L 400.12 628" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="279.5" y="669.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 589.11 440 L 568.89 388" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="549.5" y="439.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 480 353.26 L 433 374.74" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="479.5" y="259.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="304.5" y="339.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 300 500 L 323 468" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="189.5" y="499.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="455.5" y="1039.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 602 1182.93 L 584 1168" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="601.5" y="1171.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 638 1405.43 L 678 1412.57" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 611.27 1330 L 628.73 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 533.77 1330 L 526.23 1318" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="509.5" y="1329.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 716.13 1360 L 691.87 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="677.5" y="1359.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 500.51 1190 L 505.49 1168" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 550 1247.6 L 602 1242.4" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 446.06 1187.57 L 410 1180" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 435.87 1318 L 442.13 1310" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="421.5" y="1189.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="285.5" y="1081.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 232.38 1310 L 235.62 1330" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 286 1222 L 318 1210" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="157.5" y="1181.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="29.5" y="1259.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 182 1364.53 L 158 1353.47" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="181.5" y="1329.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 456 1381.03 L 510 1386.97" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 380.21 1310 L 361.79 1210" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 328 1382.77 L 310 1385.23" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="327.5" y="1309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 626 1546.64 L 660 1553.36" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 498 1526.89 L 446 1521.11" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 562 1470 L 563.89 1458" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="497.5" y="1469.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 724 1502 L 727.23 1488" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="659.5" y="1501.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 771.59 1660 L 756.41 1630" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="739.5" y="1659.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 500 1697.85 L 430.06 1702.05" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 628 1702 L 740 1716" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 563.2 1630 L 562.8 1598" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="499.5" y="1629.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="309.5" y="1619.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 378.99 1578 L 377.01 1620" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 382 1450 L 383.58 1438" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="317.5" y="1449.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 152 1560.71 L 126 1548" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 280 1561.93 L 318 1544.07" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 280 1629.27 L 310 1646.73" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 225.7 1528 L 236.3 1458" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="151.5" y="1527.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 74.11 1610 L 83.89 1548" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 128 1639.47 L 152 1626.53" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="-0.5" y="1609.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 158 1446.11 L 182 1431.89" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 94 1420 L 94 1388" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="29.5" y="1419.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1911.2 1410 L 1938.8 1378" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1894.4 1538 L 1913.6 1570" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1792 1472.59 L 1380 1463.52" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1791.5" y="1409.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2053.73 1378 L 2074.27 1400" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1930 1254.41 L 1768 1103.59" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1929.5" y="1249.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="2069.5" y="1399.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2177.65 1570 L 2160.35 1528" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2231.08 1698 L 2242.92 1726" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2139.5" y="1569.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1992.8 1698 L 2013.2 1730" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2016 1574.22 L 2070 1523.78" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1887.5" y="1569.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2118 1792.81 L 2206 1791.19" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2114 1730 L 2144 1698" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1989.5" y="1729.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="2205.5" y="1725.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1768 1000.88 L 1830 959.12" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1639.5" y="979.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1851.65 852 L 1756.35 708" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1829.5" y="851.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1650 607.55 L 1439.93 487.9" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1740.07 580 L 1797.93 438" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1649.5" y="579.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2048 442.8 L 2070 425.2" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1919.5" y="429.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2048 230.63 L 2078 209.37" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1920 239.73 L 1868 210.27" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1919.5" y="211.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2070 332.19 L 2048 317.81" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2069.5" y="309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1888 334.8 L 1920 315.2" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1888 422 L 1920 446" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1759.5" y="309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1868 134.89 L 1920 103.11" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1739.5" y="109.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2078 123.49 L 2048 104.51" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2077.5" y="99.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="1919.5" y="-0.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1055 1120 L 1142.35 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1310 935.33 L 1640 1026.35" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="799.5" y="609.5" width="510" height="510" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1296.92 558 L 1255.94 610" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1269.5" y="303.5" width="254" height="254" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1380 1322.48 L 1640 1099.01" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1060 1447.95 L 806 1428.82" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1059.5" y="1299.5" width="320" height="320" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/></g></svg> \ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="2335px" height="1860px" viewBox="-0.5 -0.5 2335 1860" content="<mxfile host="app.diagrams.net" modified="2021-11-16T20:05:44.646Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" etag="90J1oFlEQKUFsp-uAQo0" version="15.7.4" type="device"><diagram id="ayH7IwpMUGKmzRZnhKLC" name="Page-1">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</diagram></mxfile>"><defs/><g><path d="M 584 600 L 594 568" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 648 691.31 L 800 756.18" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="519.5" y="599.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 498 542.67 L 550 525.33" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 370 564 L 318 564" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 408 500 L 395 468" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="369.5" y="499.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 408 715.33 L 520 682.67" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 310.12 670 L 287.88 628" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 377.88 670 L 400.12 628" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="279.5" y="669.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 589.11 440 L 568.89 388" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="549.5" y="439.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 480 353.26 L 433 374.74" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="479.5" y="259.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="304.5" y="339.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 300 500 L 323 468" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="189.5" y="499.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="455.5" y="1039.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 602 1182.93 L 584 1168" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="601.5" y="1171.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 638 1405.43 L 678 1412.57" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 611.27 1330 L 628.73 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 533.77 1330 L 526.23 1318" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="509.5" y="1329.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 716.13 1360 L 691.87 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="677.5" y="1359.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 500.51 1190 L 505.49 1168" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 550 1247.6 L 602 1242.4" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 446.06 1187.57 L 410 1180" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 435.87 1318 L 442.13 1310" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="421.5" y="1189.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="285.5" y="1081.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 232.38 1310 L 235.62 1330" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 286 1222 L 318 1210" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="157.5" y="1181.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="29.5" y="1259.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 182 1364.53 L 158 1353.47" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="181.5" y="1329.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 456 1381.03 L 510 1386.97" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 380.21 1310 L 361.79 1210" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 328 1382.77 L 310 1385.23" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="327.5" y="1309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 626 1546.64 L 660 1553.36" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 498 1526.89 L 446 1521.11" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 562 1470 L 563.89 1458" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="497.5" y="1469.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 724 1502 L 727.23 1488" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="659.5" y="1501.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 771.59 1660 L 756.41 1630" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="739.5" y="1659.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 500 1697.85 L 430.06 1702.05" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 628 1702 L 740 1716" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 563.2 1630 L 562.8 1598" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="499.5" y="1629.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="309.5" y="1619.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 378.99 1578 L 377.01 1620" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 382 1450 L 383.58 1438" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="317.5" y="1449.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 152 1560.71 L 126 1548" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 280 1561.93 L 318 1544.07" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 280 1629.27 L 310 1646.73" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 225.7 1528 L 236.3 1458" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="151.5" y="1527.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 74.11 1610 L 83.89 1548" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 128 1639.47 L 152 1626.53" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="-0.5" y="1609.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 158 1446.11 L 182 1431.89" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 94 1420 L 94 1388" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="29.5" y="1419.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1911.2 1410 L 1938.8 1378" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1894.4 1538 L 1913.6 1570" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1792 1472.59 L 1380 1463.52" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1791.5" y="1409.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2053.73 1378 L 2074.27 1400" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1930 1254.41 L 1768 1103.59" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1929.5" y="1249.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="2069.5" y="1399.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2177.65 1570 L 2160.35 1528" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2231.08 1698 L 2242.92 1726" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2139.5" y="1569.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1992.8 1698 L 2013.2 1730" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2016 1574.22 L 2070 1523.78" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1887.5" y="1569.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2118 1792.81 L 2206 1791.19" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2114 1730 L 2144 1698" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1989.5" y="1729.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="2205.5" y="1725.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1768 1000.88 L 1830 959.12" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1639.5" y="979.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1851.65 852 L 1756.35 708" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1829.5" y="851.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1650 601 L 1524 516.33" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1740.07 580 L 1797.93 438" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1649.5" y="579.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2048 442.8 L 2070 425.2" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1919.5" y="429.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2048 230.63 L 2078 209.37" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1920 239.73 L 1868 210.27" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1919.5" y="211.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2070 332.19 L 2048 317.81" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2069.5" y="309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1888 334.8 L 1920 315.2" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1888 422 L 1920 446" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1759.5" y="309.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1868 134.89 L 1920 103.11" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1739.5" y="109.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 2078 123.49 L 2048 104.51" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="2077.5" y="99.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><image x="1919.5" y="-0.5" width="128" height="128" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1055 1120 L 1142.35 1300" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1310 935.33 L 1640 1026.35" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="799.5" y="609.5" width="510" height="510" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1296.92 558 L 1255.94 610" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1269.5" y="303.5" width="254" height="254" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/><path d="M 1380 1322.48 L 1640 1099.01" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1060 1447.95 L 806 1428.82" fill="none" stroke="#000000" stroke-width="6" stroke-miterlimit="10" pointer-events="stroke"/><image x="1059.5" y="1299.5" width="320" height="320" xlink:href="https://cdn4.iconfinder.com/data/icons/retro-items-4/64/Monitor-128.png" preserveAspectRatio="none" opacity="0.9"/></g></svg> \ No newline at end of file diff --git a/static/graphics/network-layers/application-layer.svg b/static/graphics/network-layers/application-layer.svg new file mode 100644 index 0000000..83b5eb7 --- /dev/null +++ b/static/graphics/network-layers/application-layer.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="121px" height="41px" viewBox="-0.5 -0.5 121 41" content="<mxfile host="app.diagrams.net" modified="2021-11-16T19:57:44.521Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="xKFLj6U-MgqwRiGAxz72"><diagram id="KOalU2rd4urnJMs7M3Zj">jZPBboMwDIafJncgZep1pV132amHnTNwSdQQo9QtsKdfKE4pqipNSIh8v53Ev42QRdPvvWr1F1ZgRZZUvZBbkWXrZB3eIxgmsHqTE6i9qSaUzuBgfoFhwvRiKjgvAgnRkmmXsETnoKQFU95jtww7ol2e2qoansChVPaZfpuKNJeVJzP/BFPreHKasPKjylPt8eL4PJFJuRmfSW5U3Ivjz1pV2D0guROy8Ig0fTV9AXa0Nto25X28UO/39uDoPwnZlHBV9sKlv7etNaUig46vSEO05VYYjKmpkJtOG4JDq8pR7cIcBKapsSwfjbUFWvS3XLkr8m2+DvxMHk8QFYcOxmB0xGOQ5iLadQVP0L8sLb0bFuYQsAHyQwjhhBVbPCyX3dzPNHZBP/Qyxikeofq+8Wxj+GAn43Lu2E17+Cvk7g8=</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="#ec5d58" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Application</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Application</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/network-layers/data-link-layer.svg b/static/graphics/network-layers/data-link-layer.svg new file mode 100644 index 0000000..2d97d68 --- /dev/null +++ b/static/graphics/network-layers/data-link-layer.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="121px" height="41px" viewBox="-0.5 -0.5 121 41" content="<mxfile host="app.diagrams.net" modified="2021-11-16T19:56:35.737Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="IbcD921IvG8CMCEABXok"><diagram id="Vl8WDxM0K2OXE8GCHviM">jZNNb8IwDIZ/Te5NAxMcR/nYYTtx2DlrTRORxlUItOzXLyUOpUJIU6Wqeew3iV+7TBRNv3OyVV9YgWF5VvVMrFmeL7JFeA/gGsHsTURQO11FxEew179AMCN61hWcJoke0XjdTmGJ1kLpJ0w6h9007YBmemora3gC+1KaZ/qtK6+orHk28g/QtUon84wiP7I81g7Pls5juRCr4YnhRqa9KP+kZIXdAxIbJgqH6ONX0xdgBmuTbVG3fRG939uB9f8R5FFwkeZMpa+ll4F8anukK/prsuVWGAxSzsSqU9rDvpXlEO3CHASmfGMofNDGFGjQ3bRinr8vtsvAT97hEVLEooUhGa2nMeBzluy6gPPQvyyN3w0LcwjYgHfXkEKCGVlMI8iXtO7GhvLUBvXQzKSTNEP1fefRx/BBVqbl2LJb7OG3EJs/</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="#52a8f9" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Data Link</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Data Link</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/network-layers/network-layer.svg b/static/graphics/network-layers/network-layer.svg new file mode 100644 index 0000000..56ce041 --- /dev/null +++ b/static/graphics/network-layers/network-layer.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="121px" height="41px" viewBox="-0.5 -0.5 121 41" content="<mxfile host="app.diagrams.net" modified="2021-11-16T19:57:00.915Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="QjCZ6WuEe09ZhCWpMr3E"><diagram id="AIpg-GV8FqL3Du3CeWKt">jZPBboMwDIafJncg7dZzWbtdtksPO2fgkqghRqlb6J5+pHFKUVVpQkLk++0k/m2ELNvh3atOf2INVhRZPQj5Jopila3GdwCXCBYvMoLGmzqifAI78wsMM6YnU8NxFkiIlkw3hxU6BxXNmPIe+3nYHu381E418AB2lbKP9NvUpLmsZTbxDzCNTifnGSs/qjo0Hk+OzxOFlOvwRLlVaS+OP2pVY3+H5EbI0iNS/GqHEmywNtkW87ZP1Nu9PTj6T0IRE87Knrj0L6Ae/YGvR5dkybUoCGm5kOteG4Jdp6qg9uMMjExTa1neG2tLtOivufK1WG8XgR/J4wGS4tBBCEZHPAL5UiSrzuAJhqdl5TezxhkEbIH8ZQzhhAXby+OXp3U/NTNPLdB3jUxxiuenue08eTh+sI1pObXrqt39EnLzBw==</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="#72bf41" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Network</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Network</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/network-layers/physical-layer (1).svg b/static/graphics/network-layers/physical-layer (1).svg new file mode 100644 index 0000000..253ebd3 --- /dev/null +++ b/static/graphics/network-layers/physical-layer (1).svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="121px" height="41px" viewBox="-0.5 -0.5 121 41" content="<mxfile host="app.diagrams.net" modified="2021-11-16T19:56:03.344Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="xqxc0QokOJiBWbAfkuAe"><diagram id="3G20tiJFlDmEMRTCvDpR">jZJNb4MwDIZ/Te5A2qlnWLddJk3qYecMXBI1xCikBfbrFxqHD1WVJiSUPLZj+7UZL5rh3YpWfmIFmmVJNTD+yrLskBz8fwJjALsXHkBtVRVQuoCT+gWCCdGrqqDbODpE7VS7hSUaA6XbMGEt9lu3M+pt1lbU8ABOpdCP9FtVTlJb+2ThH6BqGTOnCVl+RHmpLV4N5WMZ5/n0BXMj4lvk30lRYb9C/Mh4YRFdODVDAXqSNsoW4t6eWOe6LRj3n4AsBNyEvlLrX3LslFeC6nNj1OTeFUxxKeN5L5WDUyvKydr7JfBMukaTuXMWL1CgRuuJQePd8jMaR7NO9yxqcgPrYHhafzqr4pcNsAFnR+9CATvSkfZsvvfL1NKotVxNLPoJWpR6fnkRyx9Ir3hd5nK3rXafH/8A</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="rgba(255, 255, 255, 1)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Physical</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Physical</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/network-layers/transport-layer.svg b/static/graphics/network-layers/transport-layer.svg new file mode 100644 index 0000000..7d0deb5 --- /dev/null +++ b/static/graphics/network-layers/transport-layer.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="121px" height="41px" viewBox="-0.5 -0.5 121 41" content="<mxfile host="app.diagrams.net" modified="2021-11-16T19:57:20.322Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" version="15.7.4" etag="uz7D5yJ0d0vVh0R64pXm"><diagram id="r2UyNdIQ4s-erphLrhNM">jZPBbsIwDIafJvc2AQRXCtsuOzFp56w1TUQaV2mgZU+/lDiUCiFNlarms/8k/u0yUTTDu5Ot+sQKDONZNTCxY5yvs3V4j+AawWIlIqidriLKJ3DQv0AwI3rWFXSzRI9ovG7nsERrofQzJp3Dfp52RDM/tZU1PIFDKc0z/daVV1TWMpv4B+hapZPzjCI/sjzVDs+WzmNciO34xHAj016U3ylZYf+AxJ6JwiH6+NUMBZjR2mRb1L29iN7v7cD6/wh4FFykOVPpX07arkXn6YL+mky5lQWjMGdi2yvt4dDKcoz2YQoCU74xFD5qYwo06G5a8bbacb4JvPMOT5AiFi2MyWg9DUG+ZMmsCzgPw8vC8rtdYQoBG/DuGlJIsCCDaQA3tOynbuapB+qhk0kmaYDq+8aTieGDfEzLqV+32MM/IfZ/</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="#f6d229" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Transport</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Transport</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/network-stack.svg b/static/graphics/network-stack.svg new file mode 100644 index 0000000..3f50f06 --- /dev/null +++ b/static/graphics/network-stack.svg @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file with editors other than diagrams.net --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="122px" height="302px" viewBox="-0.5 -0.5 122 302" content="<mxfile host="app.diagrams.net" modified="2021-11-16T20:01:56.611Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" etag="WlYLY6onDD02Pz1-4f9Y" version="15.7.4"><diagram id="cnfusq8POEsLmfGbvMva" name="Page-1">1Zdtb5swEMc/DS9b8RA3ycs8dlKzrlKn7eXkwBW8GBsZJyH79LPBJlDSNNVSoREpwv87Dvt3Z2M7wSwt7gXOkq88Aur4blQ4wdzx/fEQqX8tHCoBoXElxIJEleQdhWfyB4zoGnVLIshbjpJzKknWFkPOGISypWEh+L7t9sJp+60ZjqEjPIeYdtWfJJJJpY6Qe9S/AIkT+2bPNZY1Djex4Ftm3uf4QTDVv8qcYhvL+OcJjvi+IQULJ5gJzmV1lxYzoBqtxVY9t3zDWvdbAJOXPLB6+H2/evwxWX27gSKMJvONeLgxUXaYbg2PSZZREmJJODP9lgfLqhwt6HieE0z3CZHwnOFQW/eqOJSWyJQa8wuhdMYpF+WzwWKG5mik9FwKvgFrYZyBduZMmtrwkGMZNgdnewpCQtGQzGDvgacgxUG5GOvAcD+0m/tjkj2bmqSRYOuHTV3FdeAjW3Vj8H4AddBB/V1glmdcyKuCXt7N1bTsD/S4b9CDDuhHkHsuNlfFPPSny4HXH2av94JGHc5zLLFSVoRdlzXyJ6NljyXt9V7Tdx3WT8khV+s0/TfQPQHtfzX2/A7RMyTdC0jaz7v2jSnOc3Ofb0CGiWm8XqvLq86D3YD414FeEzXUA3d4izrcByewe+izsHe/gh3selOVXT78emuI1zaCexaL3bHaWjwxudEJJujTStH9SCleMqkvKkUsQjvJ31wJulk4n9X3S7MvyKP3GbfoZJwwCWKxUyPPT3GNcJ7Ua0MDPs6z6pjyQgptn1K8BvrEc1JuqYN5CDqwMmhaegVfvXJYcyl52nCYUBJrg+Q60di06jh8KylhKnX2gORWfc30uNIi1se2290uugWZgGAgf5V7zs5i5JbX/1wKqnk8T5W2xpk1WPwF</diagram></mxfile>"><defs/><g><rect x="0" y="0" width="120" height="40" rx="6" ry="6" fill="#ec5d58" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 20px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Application</div></div></div></foreignObject><text x="60" y="25" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Application</text></switch></g><rect x="0" y="50" width="120" height="40" rx="6" ry="6" fill="#f6d229" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 70px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Transport</div></div></div></foreignObject><text x="60" y="75" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Transport</text></switch></g><rect x="0" y="100" width="120" height="40" rx="6" ry="6" fill="#72bf41" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 120px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Network</div></div></div></foreignObject><text x="60" y="125" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Network</text></switch></g><rect x="0" y="150" width="120" height="40" rx="6" ry="6" fill="#52a8f9" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 170px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Data Link</div></div></div></foreignObject><text x="60" y="175" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Data Link</text></switch></g><rect x="0" y="200" width="120" height="40" rx="6" ry="6" fill="rgba(255, 255, 255, 1)" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 220px; margin-left: 1px;"><div data-drawio-colors="color: rgba(0, 0, 0, 1); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Physical</div></div></div></foreignObject><text x="60" y="225" fill="rgba(0, 0, 0, 1)" font-family="Helvetica" font-size="15px" text-anchor="middle">Physical</text></switch></g><rect x="80" y="267.5" width="40" height="15" fill="#ffffff" stroke="rgba(0, 0, 0, 1)" stroke-width="2" pointer-events="all"/><rect x="35" y="250" width="50" height="50" rx="5.5" ry="5.5" fill="rgba(255, 255, 255, 1)" stroke="none" pointer-events="none"/><path d="M 72.96 264.33 C 72.65 264.34 72.36 264.46 72.15 264.68 C 71.94 264.9 71.82 265.2 71.83 265.5 L 71.83 270.08 C 71.83 270.49 72.05 270.87 72.4 271.07 C 72.76 271.28 73.2 271.28 73.56 271.07 C 73.91 270.87 74.13 270.49 74.13 270.08 L 74.13 265.5 C 74.14 265.19 74.02 264.89 73.79 264.67 C 73.57 264.45 73.27 264.33 72.96 264.33 Z M 66.86 264.33 C 66.55 264.34 66.26 264.46 66.05 264.68 C 65.83 264.9 65.71 265.2 65.72 265.5 L 65.72 270.08 C 65.72 270.71 66.24 271.23 66.87 271.23 C 67.51 271.23 68.03 270.71 68.03 270.08 L 68.03 265.5 C 68.03 265.19 67.91 264.89 67.69 264.67 C 67.47 264.45 67.17 264.33 66.86 264.33 Z M 60.75 264.33 C 60.45 264.34 60.15 264.46 59.94 264.68 C 59.73 264.9 59.61 265.2 59.62 265.5 L 59.62 270.08 C 59.62 270.71 60.13 271.23 60.77 271.23 C 61.41 271.23 61.92 270.71 61.92 270.08 L 61.92 265.5 C 61.93 265.19 61.81 264.89 61.59 264.67 C 61.37 264.45 61.06 264.33 60.75 264.33 Z M 54.65 264.33 C 54.34 264.34 54.05 264.46 53.84 264.68 C 53.62 264.9 53.51 265.2 53.51 265.5 L 53.51 270.08 C 53.51 270.71 54.03 271.23 54.66 271.23 C 55.3 271.23 55.82 270.71 55.82 270.08 L 55.82 265.5 C 55.82 265.19 55.7 264.89 55.48 264.67 C 55.26 264.45 54.96 264.33 54.65 264.33 Z M 48.54 264.33 C 48.24 264.34 47.94 264.46 47.73 264.68 C 47.52 264.9 47.4 265.2 47.41 265.5 L 47.41 270.08 C 47.41 270.71 47.92 271.23 48.56 271.23 C 49.2 271.23 49.71 270.71 49.71 270.08 L 49.71 265.5 C 49.72 265.19 49.6 264.89 49.38 264.67 C 49.16 264.45 48.86 264.33 48.54 264.33 Z M 41.75 260 L 41.75 282.52 L 42.98 282.52 L 48.02 282.52 L 48.02 286.71 L 52.1 286.71 L 52.1 291.49 L 68.26 291.49 L 68.26 286.71 L 72.68 286.71 L 72.68 282.52 L 78.75 282.52 L 78.75 260 Z M 44.21 262.46 L 76.29 262.46 L 76.29 280.06 L 70.22 280.06 L 70.22 284.25 L 65.8 284.25 L 65.8 289.04 L 54.56 289.04 L 54.56 284.25 L 50.48 284.25 L 50.48 280.06 L 44.21 280.06 Z M 39.02 250 C 36.81 250 35 251.81 35 254.01 L 35 295.99 C 35 298.19 36.81 300 39.02 300 L 80.98 300 C 83.19 300 85 298.19 85 295.99 L 85 254.01 C 85 251.81 83.19 250 80.98 250 Z M 39.02 252.46 L 80.98 252.46 C 81.87 252.46 82.54 253.13 82.54 254.01 L 82.54 295.99 C 82.54 296.87 81.87 297.54 80.98 297.54 L 39.02 297.54 C 38.13 297.54 37.46 296.87 37.46 295.99 L 37.46 254.01 C 37.46 253.13 38.13 252.46 39.02 252.46 Z" fill="#000000" stroke="none" pointer-events="none"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Viewer does not support full SVG 1.1</text></a></switch></svg> \ No newline at end of file diff --git a/static/graphics/sources/internet.drawio b/static/graphics/sources/internet.drawio index 9717775..3d623ca 100644 --- a/static/graphics/sources/internet.drawio +++ b/static/graphics/sources/internet.drawio @@ -1 +1 @@ -<mxfile host="app.diagrams.net" modified="2021-11-15T19:22:01.507Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" etag="-01Wis6rnk-IngTut06P" version="15.7.4" type="device"><diagram id="FoPzOr6xO5Z_VcP7m6Hq" name="Page-1">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</diagram></mxfile> \ No newline at end of file +<mxfile host="app.diagrams.net" modified="2021-11-16T20:05:55.797Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" etag="rhMvgsEsmnAljsOD65e9" version="15.7.4" type="device"><diagram id="ayH7IwpMUGKmzRZnhKLC" name="Page-1">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</diagram></mxfile> \ No newline at end of file diff --git a/static/graphics/sources/internet.png b/static/graphics/sources/internet.png new file mode 100644 index 0000000..44aa3d1 Binary files /dev/null and b/static/graphics/sources/internet.png differ diff --git a/static/graphics/sources/network-stack.drawio b/static/graphics/sources/network-stack.drawio new file mode 100644 index 0000000..dd84ed5 --- /dev/null +++ b/static/graphics/sources/network-stack.drawio @@ -0,0 +1 @@ +<mxfile host="app.diagrams.net" modified="2021-11-16T19:55:31.652Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36" etag="GwL-ErYEHqJ2yfTtP6If" version="15.7.4" type="device"><diagram id="cnfusq8POEsLmfGbvMva" name="Page-1">1Zdtb5swEMc/DS8bAQ5J+jLPk5p1lTJtLycHHPBifMg4CdmnHwabQEnTVEuFRqQI/+8w9u/Oh22haZwtBU6irxAQZrl2kFloZrnuyB7l/0o4lUJ/gEohFDQoJecsrOkfokVbq3sakLThKAGYpElT9IFz4suGhoWAY9NtC6z51gSHpCWsfcza6k8ayEhPy7PP+hdCw8i82bG1ZYP9XShgz/X7LBehifqV5hibvrR/GuEAjjUJzS00FQCyvIuzKWEKrcFWPrd4w1qNWxAub3lg9fR7uXr+MV59eyCZH4xnO/H0oHs5YLbXPMZJwqiPJQWuxy1PhlUxW6L6cyw0OUZUknWCfWU95smRa5GMmTZvKWNTYCCKZ9F86s28Ua6nUsCOGAsHTpQzcKlzw/Esw7A+OTNSIiTJapKe7JJATKQ45S7a2tfcT83m8Rxkx4QmqgXY+GGdV2HV8ZltfqPxfgA1aqH+LjBPExDyrqAXg5nrPnYH+rFr0P0W6GcijyB2d8U8dCeLvtMdZqfzhPZanGdY4lxZUX5f1p47Hi06TGmn85wetFi/RKc0r9Ps30B3BLT7auy4LaJXSNo3kDSfd+UbMpym+j7dEelHuvG6VhdXFQezAXHvA70iqqkje9jzWtz7F7A73mdhb38FW9jVpiq5ffrV1hBvTA/2VSxDr5mLFxa3d4GJ92mpaH8kFW9Z1DelIha+WeRvVoJ2FK5H9f3U7Ary6H3GDToJUC6JmB/ymaeXuAY4jaraUIOP06Q8pmxppuwThjeEvUBKiy01mvlEdZwbFC1VwVevHDYgJcQ1hzGjoTJIUIHGulX1A3vJKM9DZw5IdjnWRM0rzkJ1bOsdDkGPyIgITuSvYs/ZKkZ2cf3PqZA3z+epwlY7s6L5Xw==</diagram></mxfile> \ No newline at end of file