This page intentionally left blank. ⬇️, ➡️, or spacebar 🛰 to start slidedeck. --- class: center, middle # Networks --- # Networks - protocols - infrastructure - the internet --- # Networks A network is two or more devices that are connected together, and are able to communicate or share resources with each other. I like this picture because the firewall is on fire for some reason. .center[![network-fire](/img/network-fire.png)] --- # NAS, DAS, SAN See [Storage](/presentations/storage.html) for information about storage on networks. --- # Protocols This communication can happen because of established rules and standards around the sending of data. Some common protocols for networking are: - TCP/IP - FTP (sending files) - SMTP (email) - HTTP - Wi-Fi - Bluetooth - LTE --- # Intermission: The early days [telnet starwars](https://itsfoss.com/star-wars-linux/) ![telnet starwars](/img/telnet-c3PO.png) - `telnet towel.blinkenlights.nl` (try it, it works!) - No terminal access? [here](https://www.youtube.com/watch?v=Dgwyo6JNTDA)'s a video (but it's not as fun!) --- # telnet - short for "teletype network" - developed in 1969! - a pre-WWW network communication --- ![](/img/reabracadabra.jpg) - [source: Rhizome Net Art Anthology: Reabracadabra](https://anthology.rhizome.org/reabracadabra) - [wikipedia page on the Minitel](https://en.wikipedia.org/wiki/Minitel) --- ![network protocols](/img/b0rk-network-protocols.jpeg) - [source](https://twitter.com/b0rk/status/1222273122986024961) --- # TCP/IP TCP: Transmission Control Protocol IP: Internet Protocol ![](/img/survived-tcp.jpg) --- # TCP/IP It is a set of rules that govern how data is transferred over the internet. TCP/IP was standardized via the [Internet Engineering Task Force](https://www.ietf.org/), and in fact the organization itself was established in order to properly identify and formalize TCP/IP as a standard. --- # Introduction to TCP/IP The 4-Layer Model (4m32s)
--- # The 4 layers - Application layer (sends information to transport layer) - Transport (TCP) layer (breaks packets down, ensures reliable byte stream) - Internet (IP) layer (pair each packet to proper IP destination) - Link layer (sends packets between IP and hosts) --- # HTTP, FTP, SMTP These are all internet protocols that work at the application level to help you access websites (HTTP), send files (FTP) and send email (SMTP) over the network. ![](/img/computer_e-mail.gif) ![](/img/computer_e-mail.gif) ![](/img/computer_e-mail.gif) --- # HTTPS? HTTPS is a protocol developed on top of HTTP that takes extra steps to ensure security, privacy, and integrity of the communication channel between you and the website. ![](/img/computerhorsepics.gif) Why is this such a big deal? --- # Activity: 🐠 Test your network 🦈 Use [WireShark](https://www.wireshark.org/) to understand your surroundings. What is WireShark? "Wireshark is the world’s foremost and widely-used network protocol analyzer. It lets you see what’s happening on your network at a microscopic level and is the de facto (and often de jure) standard across many commercial and non-profit enterprises, government agencies, and educational institutions." [source: website](https://www.wireshark.org/) --- # Wireshark non-live demo [HakTip - How to Capture Packets with Wireshark - Getting Started](https://www.youtube.com/watch?v=6X5TwvGXHP0)
--- # E-mail! ![](/img/woman-throwing-papers.jpg) --- # DNS - Domain Name System - How does this work? ![](/img/mypoetry.gif) --- # Wi-Fi, Bluetooth, LTE ![](/img/phone.gif) These are all protocols for allowing devices to connect to each other wirelessly. LTE (Long Term Evolution) is what my phone is always saying its connected as (when it's not wifi). --- # Cell phone towers - [Gizmodo: How cell towers work](https://gizmodo.com/giz-explains-how-cell-towers-work-5177322) ![](/img/phone-veronica.gif) --- # Example: LinkNYC ![](/img/linknyc.jpg) - [article](https://theintercept.com/2018/09/08/linknyc-free-wifi-kiosks/) --- class: center, middle # The Internet "The best-known computer network" ![map-of-internet](/img/map-of-internet.png) [source](http://www.opte.org/maps/) --- # The Internet - [Quartz: Map of the Internet](https://qz.com/se/map-of-the-internet/) - size and scope - built up of things --- # The internet is a real place - Data centers - Cables - Towers - Satellites - in the air around us right now --- # Short video - [http://www.thepeoplescloud.org/](http://www.thepeoplescloud.org/) (introduction video, 2min) --- # Submarine cables Large networked systems are connected to each other via undersea cables. .center[![submarine-cables](/img/submarine-cables.png)] [source: submarinecablemap.com](https://www.submarinecablemap.com/) --- # Access Access to the internet is not a given ![ireland access](/img/ireland-access.jpg) --- # Activity: ping Running `ping [site]` in your shell will test your connection between you and the site you are trying to connect to. It should look something like: Running `ping -c 5 google.com`: ``` PING google.com (172.217.10.46): 56 data bytes 64 bytes from 172.217.10.46: icmp_seq=0 ttl=54 time=14.954 ms 64 bytes from 172.217.10.46: icmp_seq=1 ttl=54 time=13.729 ms 64 bytes from 172.217.10.46: icmp_seq=2 ttl=54 time=20.970 ms 64 bytes from 172.217.10.46: icmp_seq=3 ttl=54 time=15.135 ms 64 bytes from 172.217.10.46: icmp_seq=4 ttl=54 time=16.923 ms --- google.com ping statistics --- 5 packets transmitted, 5 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 13.729/16.342/20.970/2.529 ms ``` --- # Activity: trace Maybe you want to know more than you can connect to google and not lose any data along the way. Maybe you want to know how those pings got there, and where "there" is. For this you can use trace! On Mac/Linux, it's `traceroute` and on Windows it is `tracert` The first hop will probably be from your computer to your router. After that, it's out on the internet. Hopping somewhere close like from NYC to google.com or loc.gov might take something like 8 hops. Hopping from NYC to Cambodia might take 16 or so hops. Some sites end up returning `* * *` between hops or near the end. What is that? It means your packets are not sending back a response and have timed out, waiting for it. They could be getting ignored or not being received, or they are bouncing around inside a firewall and you cannot directly reach your specified server. --- # Is this a lot? .center[![eye-martini](/img/eye-martini.gif)] Almost done! --- # Talking to other computers - [SSH](/presentations/ssh.html) .center[![ssh-astral-projection](/img/ssh-astral-projection.jpeg)] --- # People make networks Not everything has to be super technical, there is a very large and chaotic "people" layer when it comes to computer networks. .center[![dollz](/img/dollz.gif)] --- # Moment of zen 1 [Simon Weckert: Google Maps Hacks (2020)](http://www.simonweckert.com/googlemapshacks.html)
--- # Moment of zen 2 - [Rhizome write-up](https://anthology.rhizome.org/everythingiveeverwantedtoknow-com) - [everythingiveeverwantedtoknow.com](http://everythingiveeverwantedtoknow.com/) .center[![people_line](/img/people_line.gif)] --- # Network-based Communication Computers talk to each other via a network. You can instruct your computer to talk to other computers over the internet by using different protocols such as: - APIs (they are protocols) - REST --- # APIs *Application programming interface* A set of rules that explain how a resource can be used. In the context of the web... a preferred methods to communicate with a website. Allows the web to be more collaborative. --- # REST *Representational state transfer.* An architecture for communication between a client’s interface and a website’s server. - GET - POST - PUT - DELETE Sites are described as being RESTful when complying with this architecture. --- # Additional Resources - [Do Not Track: A Personalized Documentary](https://donottrack-doc.com/en/intro/) - [Evolution of the Web](http://www.evolutionoftheweb.com/?hl=en) - [Quartz: Map of the Internet](https://qz.com/se/map-of-the-internet/) - [Ingrid Burrington: Networks of New York](http://lifewinning.com/projects/networks-of-new-york/) - [Julia Evan: Networking zine](https://jvns.ca/networking-zine.pdf) - [The People's Cloud](http://www.thepeoplescloud.org/) - [Miriam Posner: Systems & Infrastructures Syllabus](http://miriamposner.com/classes/is270w18/) - [Radia Perlman - "Computer Networks: Myths, Missteps, and Mysteries" (TCSDLS 2018-2019)](https://www.youtube.com/watch?v=qXz_RxBFQ20) - [Vox: How Does the Internet Work? - Glad You Asked S1](https://www.youtube.com/watch?v=TNQsmPf24go) --- # Learning more - [Computers](/presentations/computers.html) - [Fixity](/presentations/fixity.html) - [Storage](/presentations/storage.html) - [SSH](/presentations/ssh.html) - [World Wide Web](/presentations/world-wide-web.html) [Home](/)