0:00:00.901,0:00:04.498 (upbeat piano and drum music) 0:00:10.024,0:00:11.551 - Hi. My name is Paola, 0:00:11.551,0:00:14.501 and I am a software engineer at Microsoft. 0:00:14.501,0:00:17.077 Let's talk about how the internet works. 0:00:17.077,0:00:19.933 My job relies on networks being able 0:00:19.933,0:00:21.930 to talk with one another. 0:00:21.930,0:00:24.774 But back in the 1970s, there was no 0:00:24.774,0:00:26.956 standard method for this. 0:00:26.956,0:00:29.821 It took the work of Vint Cerf and Bob Kahn 0:00:29.821,0:00:32.126 to invent the Internetworking Protocol 0:00:32.126,0:00:34.308 to make communication possible. 0:00:34.638,0:00:36.570 This invention laid the groundwork 0:00:36.570,0:00:38.975 for what we now call the internet. 0:00:39.566,0:00:42.045 - The internet is a network of networks. 0:00:42.045,0:00:45.503 It links billions of devices[br]together all around the globe. 0:00:46.723,0:00:48.706 Maybe you're connected with a laptop 0:00:48.706,0:00:50.903 or a phone through wifi. 0:00:50.903,0:00:52.525 But then that wifi connection 0:00:52.525,0:00:55.716 connects to an Internet[br]Service Provider, or ISP. 0:00:55.716,0:00:58.363 And that ISP connects you[br]to billions and billions 0:00:58.363,0:01:00.196 of devices around the world 0:01:00.196,0:01:02.123 through hundreds of thousands of networks 0:01:02.123,0:01:04.045 that are all interconnected. 0:01:05.465,0:01:08.682 One thing that most[br]people do not appreciate, 0:01:08.682,0:01:12.142 is that the internet is[br]really a design philosophy 0:01:12.142,0:01:16.108 and an architecture expressed[br]in a set of protocols. 0:01:16.598,0:01:19.629 A protocol is a well-known set[br]of rules and standards that, 0:01:19.629,0:01:21.417 if all parties agree to use it, 0:01:21.417,0:01:23.781 will allow them to[br]communicate without trouble. 0:01:24.927,0:01:28.799 How the internet actually[br]physically works is less important 0:01:28.799,0:01:31.761 than the fact that this[br]design philosophy has allowed 0:01:31.761,0:01:33.920 the internet to adapt and absorb 0:01:33.920,0:01:36.239 new communication technologies. 0:01:36.239,0:01:38.464 This is because in order[br]for a new technology 0:01:38.464,0:01:40.650 to use the internet in some fashion, 0:01:40.650,0:01:43.455 it just needs to know which[br]protocols to work with. 0:01:44.763,0:01:46.782 All the different devices on the internet 0:01:46.782,0:01:48.489 have unique addresses. 0:01:48.489,0:01:50.865 An address on the[br]internet is just a number, 0:01:50.865,0:01:54.082 similar to a phone number,[br]or a sort of street address 0:01:54.082,0:01:56.248 that's unique to each computer or device 0:01:56.248,0:01:57.682 at the edge of the network. 0:01:59.314,0:02:01.755 This is similar to how most[br]homes and businesses have 0:02:01.755,0:02:03.099 a mailing address. 0:02:03.099,0:02:04.499 You don't need to know a person 0:02:04.499,0:02:05.829 to send them a letter in the mail, 0:02:05.829,0:02:08.344 but you do need to know their address, 0:02:08.344,0:02:10.141 and how to write the address properly, 0:02:10.141,0:02:12.335 so the letter can be[br]carried by the mail system 0:02:12.335,0:02:13.886 to its destination. 0:02:14.246,0:02:15.854 The addressing system for computers 0:02:15.854,0:02:17.724 on the internet is similar, 0:02:18.114,0:02:20.645 and it forms part of one[br]of the most important 0:02:20.645,0:02:23.354 protocols used in internet communication, 0:02:23.354,0:02:26.235 simply called the[br]Internet Protocol, or IP. 0:02:26.958,0:02:30.072 A computer's address, then,[br]is called its IP address. 0:02:30.514,0:02:33.222 Visiting a website is really[br]just your computer asking 0:02:33.222,0:02:35.299 another computer for information. 0:02:35.299,0:02:37.627 Your computer sends a message[br]to the other computer's 0:02:37.627,0:02:41.011 IP address, and it also sends[br]along its origin address 0:02:41.011,0:02:43.673 so the other computer knows[br]where to send its response. 0:02:45.751,0:02:47.895 - You may have seen an IP address. 0:02:47.895,0:02:49.743 It's just a bunch of numbers. 0:02:50.043,0:02:52.795 These numbers are[br]organized in a hierarchy. 0:02:53.425,0:02:55.685 Just like a home address has a country, 0:02:55.685,0:02:58.635 a city, a street, and a house number, 0:02:58.635,0:03:01.242 an IP address has many parts. 0:03:01.472,0:03:03.250 Just like all digital data, 0:03:03.250,0:03:06.250 each of these numbers[br]is represented in bits. 0:03:06.655,0:03:09.985 Traditional IP addresses are 32 bits long, 0:03:09.985,0:03:13.540 with eight bits for each[br]part of the address. 0:03:13.540,0:03:15.947 The earlier numbers usually identify 0:03:15.947,0:03:18.653 the country and regional[br]network of the device. 0:03:18.653,0:03:20.570 Then come the subnetworks. 0:03:20.570,0:03:23.925 And then, finally, the address[br]of the specific device. 0:03:24.435,0:03:28.485 This version of IP[br]addressing is called IPv4. 0:03:28.485,0:03:30.968 It was designed in 1973, 0:03:30.968,0:03:33.386 and widely adopted in the early '80s, 0:03:33.386,0:03:36.729 and provides for more than[br]4 billion unique addresses 0:03:36.729,0:03:39.527 for devices connecting to the internet. 0:03:39.797,0:03:43.170 But the internet has turned[br]out to be much more popular 0:03:43.170,0:03:45.339 than even Vint Cerf imagined, 0:03:45.339,0:03:48.677 and 4 billion unique[br]addresses won't be enough. 0:03:48.677,0:03:51.461 We're now in the middle[br]of a multi-year transition 0:03:51.461,0:03:55.793 to a longer IP address format called IPv6, 0:03:55.793,0:03:59.545 which uses 128 bits per address, 0:03:59.545,0:04:04.545 and provides over 340[br]undecillion unique addresses. 0:04:05.130,0:04:08.009 That's more than enough for[br]every grain of sand on Earth 0:04:08.009,0:04:09.990 to have its own IP address. 0:04:10.805,0:04:14.869 - Most users never see or[br]care about internet addresses. 0:04:14.869,0:04:18.160 A system called the Domain[br]Name System, or DNS, 0:04:18.160,0:04:22.065 associates names, like www.example.com, 0:04:22.065,0:04:24.050 with the corresponding addresses. 0:04:24.050,0:04:27.185 Your computer uses the DNS[br]to look up domain names 0:04:27.185,0:04:30.206 and get the associated[br]IP address, which is used 0:04:30.206,0:04:33.099 to connect your computer to the[br]destination on the internet. 0:04:33.099,0:04:34.999 - [Voiceover] And it goes a[br]little something like this. 0:04:34.999,0:04:35.619 - Hey, hi there. 0:04:35.619,0:04:39.450 I want to go to www.code.org 0:04:41.313,0:04:45.011 - Yeah, well I don't know the[br]IP address for that domain. 0:04:45.011,0:04:46.729 Let me ask around. 0:04:46.859,0:04:49.836 Hey, anyone know how to get to a... 0:04:50.396,0:04:52.022 code.org? 0:04:53.292,0:04:54.347 - Yeah, I got it right here. 0:04:54.347,0:04:57.270 It's 174 dot 129 0:04:57.270,0:05:00.184 dot 14 dot 120. 0:05:00.514,0:05:01.842 - Oh, okay, great. Thanks. 0:05:01.842,0:05:04.096 Yeah, I'm gonna write that[br]down and save it for later 0:05:04.096,0:05:05.078 in case I need it. 0:05:05.078,0:05:06.758 Hey, here's that address you wanted. 0:05:07.048,0:05:08.574 - Awesome. Thank you. 0:05:10.527,0:05:13.792 (piano flourish) 0:05:13.792,0:05:17.359 - So how do we design a[br]system for billions of devices 0:05:17.359,0:05:21.108 to find any one of billions[br]of different websites? 0:05:21.388,0:05:24.097 There is no way one DNS server 0:05:24.097,0:05:27.413 can handle all of the[br]requests from all devices. 0:05:27.633,0:05:30.513 The answer is that DNS[br]servers are connected 0:05:30.513,0:05:33.816 in a distributed hierarchy,[br]and are divided into zones, 0:05:33.822,0:05:36.915 splitting up responsibility[br]for the major domains 0:05:36.915,0:05:40.899 such as .org, .com, .net, et cetera. 0:05:41.829,0:05:44.129 DNS was originally created to be 0:05:44.129,0:05:47.116 an open and public communication protocol 0:05:47.116,0:05:49.871 for government and[br]educational institutions. 0:05:49.871,0:05:51.589 Because of its openness, 0:05:51.589,0:05:54.706 DNS is susceptible to cyber attacks. 0:05:55.247,0:05:58.399 An example attack is DNS spoofing. 0:05:58.399,0:06:01.724 That's when a hacker[br]taps into a DNS server 0:06:01.724,0:06:04.450 and changes it to match a domain name 0:06:04.450,0:06:06.725 with the wrong IP address. 0:06:06.985,0:06:11.588 This lets the attacker send[br]people to one imposter website. 0:06:11.588,0:06:13.364 If this happens to you, 0:06:13.364,0:06:15.694 you are vulnerable for more problems 0:06:15.694,0:06:19.783 because you are using that[br]fake website as if it is real. 0:06:21.443,0:06:25.597 The internet is huge, and[br]getting bigger every day. 0:06:25.597,0:06:28.599 But the Domain Name System[br]and Internet Protocol 0:06:28.599,0:06:30.485 are designed to scale, 0:06:30.485,0:06:32.885 no matter how much the internet grows.