How the Internet Works?
YouTube’s computers then sent the file back to your computer piece by piece, where those ones and zeros were interpreted as the start of a video. And the ones and zeros are still streaming, even while you’re watching me talk. It’s pretty amazing when you think about it. And if you’re curious how we ended up ina world where billions of computers are all interconnected through this strange structure that we call the Internet, then you’re in the right place. Because this is the start of a mini-series of videos about the history of the Internet, from some of the first attempts at making computers work together with all the way through modern social networks on-the-go videoconferences. Developing the right combination of software, hardware, technology, and marketing took decades, so we won’t be able to talk about a critical engineer and invention.
But we hope you’ll join us as we investigate some of the fundamental ideas and events along the way. People started making computers work together pretty early on — as far back as World War II when computers were big, clunky machines that didn’t do much more than solve challenging math problems. Even with the best computers of the day, it could take months to resolve just one of the complicated physics problems involved in making the atomic bomb. But a team led by physicist Richard Feynman found a way of solving a bunch of issues at once: when computers weren’t being used for part of one problem, they had those computers work on the part of a different problem. So one problem might still take a month, but they could also solve three or four in the same amount of time. And for really important calculations, they used their system to simultaneously do the same problem a whole bunch of times.
That way, they were sure of the final answer– even if a couple computers made mistakes along the way. Another early step came in the 1950s and 60s, when colleges started separating their computer terminals, where someone would type their program, from the computers themselves. This made it easy for lots of different people to experiment with the new machines while keeping the circuits and tubes safely away from tinkering hands. It was almost like an early form of today cloud computing, where a user-friendly computer sends complicated tasks to better, less accessible computers somewhere else. Except that today’s cloud uses the Internet, and in 1960, there was no Internet. But people were starting to think about it. The US Department of Defense had recently created the Advanced Research Projects Agency, also known as ARPA, to keep its technology a step ahead of the Soviets.
And a computer enthusiast named Joseph Lickliderhelped convinces ARPA to fund research into a computer network connecting scientists and engineers throughout the country. A few key colleges agreed to be involved, and ARPA started building the network in 1969. They called it ARPANET. It started fairly small, as a sort of messaging service between computers at UCLA, UC Santa Barbara, Stanford University, and the University of Utah. But it was the first network of its kind. And as ARPANET grew over the next couple of decades, its engineers would add features and solve problems that still shape everything we do online. One of ARPANET’s first big innovations was what’s known as packet switching. You know how sometimes in old movies when someone wants to phone a friend they have to call a switchboard operator first?
The operator was there because those phones worked by what’s called circuit switching, where signals could only get from one place to another if there was a single uninterrupted circuit between them. So the operator’s job was literally to plug the wire from one phone into the wire from another. Circuit switching works great if two places stay connected for a long time like they might be for a phone call, which is why most phones still work through circuit switching — except that now the circuits move automatically instead of manually. But it would be totally impractical for the Internet to work that way. Your computer would only be able to connect to one other computer at a time, and it would take extra time whenever you tried to connect somewhere else. Some modern websites might connect you to ten different computers from around the world at the same time.
All of them need to respond immediately if you click, all the while connecting and monitoring hundreds or thousands of other visitors at once. So circuits all over the place would constantly be flipping around, connecting somewhere for a split second before switching away and connecting elsewhere. It just wouldn’t work. Even back in the 1960s, engineers knew that computers send messages far too quickly to make circuit switching practical. So instead, they invented an alternative: packet switching, where different computers send messages along with the same set of wires instead of each getting one. To communicate with each other, they just send a message, called a packet, along the wires. Every packet had a kind of address label: a string of numbers representing the computer where it was headed. The computer where it started would look up the address on a table with all the addresses in the network on it, and then send the packet toward whatever nearby computer was closest to the destination. That second computer would get the packet, look up the destination address, and again send the packet in the right direction. This process would repeat over and over until the packet finally got where it was going. No moving circuits or wires, no one-conversation-at-a-time requirement. ARPANET used packet switching from the start, and its packets traveled over phone lines.
And at first, packet switching worked exactly as planned. But there were problems over the next couple of years, as dozens of new computers from around the country joined. Because the way the packet switching system was set up meant that every computer always had to keep an updated list of all the other computers’ addresses. Otherwise, they’d get packets, and Wouldnt know where to send them, or they’d try to send a packet somewhere that might not be around anymore. But the network kept getting bigger and bigger, and sometimes a computer’s address might change if they temporarily disconnected from the network or a connection stopped working. And different computers ended up with different address books if they didn’t update fast enough.
So ARPANET’s engineers scrapped that system and selected Stanford as the official record-keeper of everyone’s addresses in 1973. This quick-fix let ARPANET keep growing throughout the seventies, with sixty computers in 1974 and over a hundred by 1977. Soon, satellites connected California and Hawaii, stretching ARPANET to what had been one of the most isolated places in the world. Then, ARPANET jumped across the pond, extending the network to England and Norway. But by the mid-seventies, ARPANET wasn’t the only network in town. Similar networks were popping up around the world, and some had even more computers on them.
But everyone formatted their packets differently, so even though you could connect different networks together, it was a real headache. The problem was mostly solved back in 1974, but it took until the early eighties before ARPANET, and most of the other networks started using it. The solution was a set of programs called TCP/IP, or Transmission Control Protocol/Internet Protocol, which we still use today. The Transmission Control Protocol was a standard way of formatting packets so that everyone was speaking the same language. And the Internet Protocol was a standard way of assigning addresses, so there wasn’t any confusion about where packets were headed. Once two networks used TCP/IP, connecting them became way easier. So all the different networks were connected to one another, forming what became known as the Internet — with ARPANET as the glue holding it all together. But with ARPANET growing so quickly and connecting to so many other networks, the record-keepers at Stanford were getting overloaded.
Hosts were always joining and changing addresses and trying to download the updated address book, and occasionally the Stanford list would have errors that messed up communication throughout the network. And sending emails was becoming a real pain. The email was invented back in 1971, and by 1973emails made up more than three-quarters of ARPANET’s packets. But different computers had different email programs, and some required a list of every computer it would pass between sender and receiver — so people had to keep an updated map of the entire network by their desk, and they had to type out the path of their email before they could send it. And with hundreds of computers on ARPANET and over a thousand across the Internet, keeping up those maps was getting impossible. ARPANET’s engineers realized that the entire structure of the Internet had to be reorganized, so they came up with the Domain Name System or DNS.
Instead of separating each host and storing their addresses in a random order, the hosts were arranged into domains. First came the top-level domains — those dot-com and dot-edu at the end of every website and email address. The new top-level domains meant that instead of sending an email to john@example like you would’ve before DNS, you were emailing email@example.com. Then, within these top-level domains, each host was called a second-level domain. So “mit.edu,” for example, now meant “the second-level domain ‘mit’ within the top-level domain ‘dot-edu'”. The domain structure organized all those different hosts from all around the world in a way that computers could handle. Then, DNS added a whole new network to the Internet whose whole job was to keep track of addresses and connections. One computer on the new network effectively stored all addresses within the dot-com top-level domain, another got all the dot-edu, another got all the dot-org, and so on. Then, other new computers collectively mapped out the entire network.
So when you wanted to send an email, you didna have to check your map and plan out all the connections yourself. That became the DNS’s job — and its still the DNS’s job today. It’s why your computer didn’t know how to get a message to YouTube when you clicked on this video. It basically just told the DNS server that it had something for the domain “youtube” within the top-level domain “dot-com.” And the DNS server did the rest. By the late 1980s, the Department of Defense realized that it had long-since accomplished its goal. Originally, they just wanted a few reliably interconnected computers, but they ended up serving as the backbone of a global network of thousands of universities, companies, and governments all talking to each other. So they decided to end the ARPANET project, and they needed to find someone to take over all those wires — someone to run the Internet. But who could be trusted with all that power? And could the Internet, this huge complicated system, become accessible to the general public? These were the big questions plaguing theInternet in 1989, and that’s where we’ll pick up in the next episode of this series. In the meantime, thanks for watching this episode of SciShow, which was brought to you by our patrons on Patreon.