The Internet

A Series Of Tubes

Information is meant to be shared. This unit explores the essential protocols of the Internet and how the increasing velocity of information (true or not) has and will continue to change society. Key topics in personal cybersecurity will also be covered. The fundamentals of HTML, CSS, and modern markup languages will be used in this section of the course.

Networking

Distributed Packet-Switching Network

If all computers are speaking the same “language” of moving electrons and are consistent in how they interpret the encoded data, they should all be able to communicate if they are able to share their electrons. That’s pretty much exactly what they do! As long as devices are physically connected so that they can share their signals, they can network together and share data and information across devices. Scientists and researchers refined this system with different protocols to ensure reliable communication and this work has led to the internet you are currently experiencing!

The core of these protocols is the Internetworking Protocol, IP. This is the addressing system for devices so that they can find each other just like the addresses on homes and businesses. Every device connected to the internet is assigned a unique IPv6 address when it connects to the internet and this 128-bit of digits lets other devices maintain a conversation with it. This networking can be measured with a bitrate, the speed in bits per second that data can travel from one device to the other. But just like water through a pipe, this is limited by the bandwidth of the infrastructure, which is a speed limit on how many bits can “fit” through the wire at a time. Electrons are fast but not magic, so there is also a measure of time called latency for the electron signals to go from one device to the other.

Delivery Service

Files are too big to be sent all in one piece. Even something as simple as text carries bytes of metadata that can make it unwieldy, especially with the metadata required for networking like IP addresses. To solve this problem, files are divided up into multiple packets of bits, each with their own label of networking metadata. This metadata will have the addresses and also some sort of secure delivery protocol. The most common secure protocol is TCP, transmission control protocol. This works just like sending a large physical package. Each packet is labeled with two numbers: its own unique number and the total number of packets in the file, like packet six out of seven. That way the receiving computer can both put the files back in order and ensure that every file was delivered properly.

TCP is useful since it ensures accurate delivery, but it does come at the cost of time. Some files don’t need perfection, like streaming media or a time-sensative game. These files could use UDP, the user datagram protocol which is a firehose of data - a heuristic that prioritizes speed over accuracy. You probably wouldn’t notice a missing frame in a video but you would have noticed it pausing to load perfectly if it was using TCP.

Where does this risk of incorrect transmission come from? Part of it is just the reality of physical infrastructure. Wires can break, ports can fail, and even sea animals could interfere with the undersea cables. But another factor is how individual packets are routed through the network. Traffic online is managed through computers called routers which operate much like a post office. You send them a packet with the destination labeled on it and the routers make the best choice at the time on how to send your packet. They might avoid traffic and go around accidents like an actual postal service, but this does mean your different packets will arrive out of order at different times.

This system can seem inefficient at first glance - sending packages with the same start and end points along different routes doesn’t feel right at first. But the strength of routing is its robustness provided by this redundancy. If a single router fails, the other devices in the network can work around it. This does take a bit of an investment to have these additional routers and wires, but it is worth it to have a reliable internet. No one would use an unreliable network!

The Layers of the Internet

Name Game

The amazing part of the internet protocols is how they grow stronger as they scale. The more devices and participants on the network, the stronger it will be. The domain name system, DNS, helps make the internet much more accessible and thus facilitates its growth. DNS involves dedicated servers that translate text URLs into IP addresses. That’s why you don’t need to memorize a number to find a website, the DNS servers do that work for you. The DNS comes at a slight cost. Any new layer to a system introduces vulnerabilities. DNS servers can be tricked or attacked to stop people from accessing certain information or even redirect them to malicious sites.

The IETF

The internet works because all the devices participating are willingly subscribed to the same protocols. But you probably never did anything to teach your devices these languages. These protocols are developed and refined by the IETF, the Internet Engineering Task Force. This voluntary organization works through public trust. They publish new protocols and updates via RFCs, requests for comments. These documents outline how to participate on the internet, like the way to format an IP address. Developers follow the IETF’s guidance and implement their policies into operating systems and programs they create. There is no enforcement arm of the IETF, nothing forces you to follow their recommendations. But if you don’t, the other devices on the open internet will not be able to find you nor could you find or understand any other device.

HTML, CSS, and Modern Web Design

The Internet is for Everyone

The Dead Internet

Cybersecurity

Other Resources

TBD