Add some setup and learning content.
This commit is contained in:
BIN
content/learning/internet/featured.png
Normal file
BIN
content/learning/internet/featured.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.9 MiB |
95
content/learning/internet/index.md
Normal file
95
content/learning/internet/index.md
Normal file
@@ -0,0 +1,95 @@
|
||||
---
|
||||
title: "The Internet"
|
||||
date: 2025-08-17
|
||||
featureImageCaption: ITU. https://bbmaps.itu.int/bbmaps/. Captured 2025-07-09.
|
||||
summary: What even _is_ the Internet?
|
||||
---
|
||||
|
||||
## Introduction
|
||||
|
||||
Many of us don't even remember a time before the Internet, so we kind of just think of it as a natural part of our lives that is in some way _behind_ things like a force of the universe or something.
|
||||
|
||||
Simultaneously, most of us don't ever _do_ anything with the Internet other than use it to connect our devices to services from companies.
|
||||
|
||||
This can all create a dependency mindset.
|
||||
|
||||
Part of Wild Cloud's purpose is to demystify technology and empower individuals and communities to take control of their digital lives. To do that, let's start with the Internet. What even is it? Really?
|
||||
|
||||
It's not really _that_ complicated.
|
||||
|
||||
## Letting computers talk to each other (networking)
|
||||
|
||||
At its core, the Internet is simply a bunch of computers that are connected together so they can pass data between them. People thought this was a good idea from the beginning with computers, but it was always hard to physically connect them, the data moved slow, and it was hard to make sure that the data got to to the other side uncorrupted. Also, even if you get two computers connected with a wire between them, what if you want to connect a dozen computers? Do you run a wire through all of them like a big circle or do you make it like a spider web with one sort of "hub" in the middle? And what if you want to connect one group to another group?
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**Network**: A group of computers connected together so they can pass data around.
|
||||
{{</alert>}}
|
||||
|
||||
Lot's of people and companies worked on a lot of ideas for a few decades to solve all these challenges. In 1969, some people working at UCLA, Stanford, UC Santa Barbara, and the University of Utah figured out a way to connect their computers together to pass data around. Do you think they knew at that moment that they had created something that would connect most of the computers in the world together!?
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**ARPANET**: The original network that connected these early computers together, and the precursor to the modern Internet. This public research project was funded by the U.S. Department of Defense's Advanced Research Projects Agency (ARPA), so they named their network ARPANET.
|
||||
{{</alert>}}
|
||||
|
||||
Over the next ten years, they connected more than 200 nodes (the name for a computer that is part of a network). Some as far away as London and Norway.
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**Node**: A computer that is part of a network (a "network node").
|
||||
{{</alert>}}
|
||||
|
||||
|
||||
{{<alert icon="heart" iconColor="red" cardColor="pink">}}
|
||||
Your wild cloud is a network of at least 8 nodes all running on your Local Area Network (LAN) and connected through a router to the Internet, also known as the Wide Area Network (WAN).
|
||||
{{</alert>}}
|
||||
|
||||
|
||||
## Introducing a common language (TCP/IP)
|
||||
|
||||
But, in the 1970s, other groups kept working on other ways to connect computers, and they developed their own networking protocols that were incompatible with the ARPANET. How could these different networks communicate with each other?
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**Protocol**: An agreed-upon way of doing something. If two people, or companies, or schools, **or machines**, use the same protocol, they can work together. People or machines using different protocols have a hard time getting along. Two computers that can talk together on a network are using the same "network protocol".
|
||||
{{</alert>}}
|
||||
|
||||
So, they figured out a common language to connect all these different networks, named it TCP/IP, and switched the ARPANET over to it in 1983.
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**TCP/IP**: The common language that connects different networks together. It if flexible because it breaks the problem into two parts, the Transmission Control Protocol (TCP) and the Internet Protocol (IP).
|
||||
{{</alert>}}
|
||||
|
||||
{{<alert icon="graduation-cap" cardColor="#ffdf78ff" iconColor="#fa6b0cff">}}
|
||||
Vint Cerf and Bob Kahn developed TCP/IP, and explained how it works in their paper, [“A Protocol for Packet Network Intercommunication”](/papers/cerf74.pdf), which was published in IEEE Transactions on Communications, May 1974. Want to have some fun digging in? Try uploading this paper to ChatGPT or some other assistant and have a conversation about it! You'll know more about networking in an afternoon than many career software engineers. 😁
|
||||
{{</alert>}}
|
||||
|
||||
TCP/IP gives every node on the Internet a unique address you can use to find it and talk to it. These are called "IP Addresses". Every device that talks to another device on the Internet has an IP address. These are the "###.###.###.###" format numbers where section is a number from 0-255. So, 192.168.1.0 is an IP address, and so is 10.10.10.10, and so it 56.122.200.27. TCP/IP can route data to your device just using its address... very similar to how letters get to your mailbox.
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**IP Address**: A unique string of numbers separated by periods that identifies _every_ computer on a TCP/IP network like the Internet. For example, `192.168.1.1` is an IP address.
|
||||
{{</alert>}}
|
||||
|
||||
{{<alert icon="heart" iconColor="red" cardColor="pink">}}
|
||||
Every computer that is a part of your wild cloud has a unique, local, IP address. Your LAN router, which also has an IP address, assigns unique IP addresses to each device on your LAN and keeps track of them.
|
||||
{{</alert>}}
|
||||
|
||||
|
||||
## Making it friendly (DNS)
|
||||
|
||||
But people don't think in numbers, people think in words or names, so a guy at the University of Southern California figured out a system he called the Domain Name System (DNS) in 1983. His system allowed IP addresses to be mapped to "domain names", so that now, somebody could use `wikipedia.org` instead of `198.35.26.96` (see that's easier to remember!) to address a particular computer. The DNS system is particularly interesting because it's design is much of the reason we have a resilient, distributed, non-centrally controlled Internet today. Any individual or organization can register their own unique domain name and control what computers IP addresses it maps to.
|
||||
|
||||
{{<alert icon="circle-info">}}
|
||||
**DNS**: The Domain Name System, which maps IP addresses to human-readable domain names (like `wikipedia.org`).
|
||||
{{</alert>}}
|
||||
|
||||
{{<alert icon="graduation-cap" cardColor="#ffdf78ff" iconColor="#fa6b0cff">}}
|
||||
Paul Mockapetris wrote up his design in a working group he was a part of in 1983. You can read his paper ["DOMAIN NAMES - CONCEPTS and FACILITIES"](/papers/rfc882.txt.pdf). The design has been adapted a bit over the years, but if you spent an afternoon with ChatGPT digging into this paper, you'll know more about how the Internet works almost anyone. 😁
|
||||
{{</alert>}}
|
||||
|
||||
{{<alert icon="heart" iconColor="red" cardColor="pink">}}
|
||||
When you set up a wild cloud, you will register a domain name at a domain registrar (Wild Cloud currently supports CloudFlare). You will then map this domain name to the applications on your wild cloud.
|
||||
{{</alert>}}
|
||||
|
||||
|
||||
## Conclusion
|
||||
|
||||
So what is the Internet? It's just a bunch of computers connected together, all speaking the same language (TCP/IP) and using a system (DNS) to find each other. It's not something that is "out there"; it's right here, in your home, in your devices, and in your wild cloud.
|
||||
|
Reference in New Issue
Block a user