[piano pop music] Hi! My name is Paola,
and I am a software engineer at Microsoft. Let's talk about how the internet
works. My job relies on networks being able to talk with one another, but back in the
1970s there was no standard method for this. It took the work of Vint Cerf and Bob Kahn
to invent the internet working protocol, to make communication possible. This invention
laid the groundwork for what we now call the internet. The internet is a network of networks.
It links billions of devices together all around the globe. So maybe you're connected
with a laptop or a phone through wifi, then that wifi connection connects to an internet
service provider (or ISP), and that ISP connects you to billions and billions of devices around
the world through hundreds of thousands of networks that are all interconnected. One thing that most people do not appreciate is that the internet is really a design philosophy and an architecture expressed in a set of protocols. A protocol is a well known set
of rules and standards, that if all parties agree to use it, will allow them to communicate
without trouble. How the internet actually physically works is less important than the fact that this design philosophy has allowed the internet to adapt and absorb new communication technologies. This is because in order for a new technology to use the internet in some fashion, it just needs to know which protocols to work with. All the different devices on
the internet have unique addresses. An address on the internet is just a number, similar
to a phone number or a sort of street address, that's unique to each computer or device at
the edge of the network. This is similar to how most homes and businesses have a mailing address. You don't need to know a person to send them a letter in the mail, but you do
need to know their address and how to write the address properly so the letter can be
carried by a mail system to its destination. The addressing system for computers on the
internet is similar and it forms part of one of the most important protocols used in internet
communication simply called the internet protocol or IP. A computer's address then is called
its IP address. Visiting a website is really just your computer asking another computer
for information. Your computer sends a message to the other computer's IP address and it
also sends along its origin address, so the other computer knows where to send its response. [music] You may have seen an IP address. It's just a bunch of numbers! These numbers are organized in a hierarchy. Just like a home address has a country, a city, a street, and a house number, an IP address has many parts. Just like all digital data, each of these numbers is represented in bits. Traditional IP addresses are 32 bits long, with 8 bits for each part of the address. The earlier numbers usually identify the country and regional network of the device. Then come the subnetworks, and then finally the address of the specific device. This version of IP addressing is called IPv4. [retro arcade music] It was designed in 1973 and was widely adopted in the early 80s, and provides for more than 4 billion unique addresses for devices connecting to the Internet. But the internet has turned out to be much more popular than even Vint Cerf imagined and 4 billion unique addresses won't be enough. We're now in the middle of
a multi-year transition to a longer IP address format called IPv6, which uses 128 bits per address and provides over 340 undecillion unique addresses. That's more than enough for every grain of sand on Earth to have its own IP address. Most users never see or care
about internet addresses. A system called the domain name system or DNS associates names like www.example.com with the corresponding addresses. Your computer uses the DNS to look
up domain names and get the associated IP address which is used to connect your computer
to the destination on the internet. And it goes a little something like this: (Laptop): "Hey, hi there, I want to go to www.code.org." (Server 1): "Ehhh.. yeah I don't know the IP address for that domain let me ask around. "Hey, anyone know how to get to code.org?" [old timey piano music] (Server 2): "Yeah I got it right here. It's uh, 174.129.14.120." (Server 1): "Oh okay, great, thanks. I'm gonna write that down and save it for later in case I need it." (Server 1): "Hey here's that address you
wanted." (Laptop): "Awesome! Thank you." [woosh, pew, piano music ends] So how do we design a system for billions of
devices to find any one of billions of different websites? There is no way one DNS server can
handle all the requests from all devices. [kaboom!] The answer is that DNS servers are connected
in a distributed hierarchy, and are divided into zones, splitting up responsibility for
the major domains such as .org, .com, .net, etc. DNS was originally created to be an open
and public communication protocol for government and educational institutions. Because of its openness, DNS is susceptible to cyber attacks. [lasers] An example attack is DNS spoofing. That's
when a hacker taps into a DNS server and changes it to match a domain name with the wrong IP address. This lets the attacker send people to an imposter website. If this happens to you, you are vulnerable for more problems because you are using that fake website as if it's real. [music] The Internet is huge and getting bigger everyday. But the domain name system
and internet protocol are designed to scale, no matter how much the internet grows. [music fade out]