
1
00:00:00,4 --> 00:00:03,74
Welcome, back. 
So, I hope you enjoyed that. 

2
00:00:03,74 --> 00:00:06,914
Now, I want to make it real clear that, 
when I give you a 15 minute video of an 

3
00:00:06,914 --> 00:00:11,202
amazing inventor and computer scientist, 
you don't have to remember every word 

4
00:00:11,202 --> 00:00:14,824
that that person says. 
Okay? 

5
00:00:14,824 --> 00:00:18,260
it's more important to get the gist of 
it. 

6
00:00:18,260 --> 00:00:21,816
I try to cover the things I really want 
you to know in my slides. 

7
00:00:21,816 --> 00:00:25,912
You might want to listen to it more than 
once, or listen to my slides and then go 

8
00:00:25,912 --> 00:00:30,8
back, but you're not, I, I don't want you 
to memorize it, I, I wanted to give you 

9
00:00:30,8 --> 00:00:34,232
smart people, I want you to hear from the 
smart people who did all this cool work, 

10
00:00:34,232 --> 00:00:40,667
in their own words. 
But when we hear from their own words, 

11
00:00:40,667 --> 00:00:44,486
they're sometimes pretty technical, so 
just relax and enjoy listening to these 

12
00:00:44,486 --> 00:00:49,360
people and understand that you're not 
going to get everything. 

13
00:00:49,360 --> 00:00:53,20
But hopefully you'll come back and you'll 
get more and more later. 

14
00:00:53,20 --> 00:00:57,298
So the idea was that he really started 
with this idea of wireless which was, 

15
00:00:57,298 --> 00:01:01,921
we're going to share one medium, and the 
wireless and the wire, the Ethernet wire 

16
00:01:01,921 --> 00:01:06,475
that he built, the coaxial cable that he 
built, was like a giant radio, except it 

17
00:01:06,475 --> 00:01:13,250
ran in the ceiling. 
And, so, the design ended up really 

18
00:01:13,250 --> 00:01:17,730
simple and that's been good for Ethernet 
over the years, and later WiFi is a, a 

19
00:01:17,730 --> 00:01:23,352
variation of Ethernet. 
and so it turns out to be sometimes it's 

20
00:01:23,352 --> 00:01:27,192
best to build something simple but that 
just make it go really fast and make it 

21
00:01:27,192 --> 00:01:31,909
really cheap. 
He also formed the company 3 Con which 

22
00:01:31,909 --> 00:01:35,760
was one of the first manufacturers of PC 
cards. 

23
00:01:35,760 --> 00:01:39,115
And so back in the day you would go buy a 
PC and you would go buy a 3COM card and 

24
00:01:39,115 --> 00:01:42,770
you'd plug it into the back of your 
computer. 

25
00:01:42,770 --> 00:01:47,630
And so, there was a time when San 
Francisco stadium Candlestick Park was 

26
00:01:47,630 --> 00:01:54,902
named 3COM Stadium and our friend Bob 
Metcalfe was involved in all of that. 

27
00:01:54,902 --> 00:01:58,542
So, he's done many things throughout his 
life, and we're honored to have met him. 

28
00:01:58,542 --> 00:02:02,562
So, we started with this four layer 
architecture, that says we're going to 

29
00:02:02,562 --> 00:02:06,917
break down a big problem of cooperating 
applications across various kinds of 

30
00:02:06,917 --> 00:02:11,355
networks. 
We're going to break it down, and we just 

31
00:02:11,355 --> 00:02:16,938
got them talking about the Link Layer. 
It's literally, 20,000, maybe 50,000 

32
00:02:16,938 --> 00:02:21,452
engineers have spent the last 20 years 
figuring out how to make this work, 

33
00:02:21,452 --> 00:02:26,262
because the layered architecture lets 
them think, although it was informed, 

34
00:02:26,262 --> 00:02:31,72
they had 20,000, 50,000, I don't know, 
20,000 engineers that think about that 

35
00:02:31,72 --> 00:02:38,372
problem, and the, they ignore the rest of 
the problems. 

36
00:02:38,372 --> 00:02:42,960
'Kay they ignore the rest of the 
problems. 

37
00:02:42,960 --> 00:02:46,560
That's great, because they've gotten 
really good at this one problem. 

38
00:02:46,560 --> 00:02:49,540
Now, we're going to go like, you know, I 
don't know how many engineers. 

39
00:02:49,540 --> 00:02:53,560
Let's just make it up, 5k engineers think 
about this next problem. 

40
00:02:53,560 --> 00:02:59,147
The next problem is called, oh my colors 
got changed, the internetwork layer. 

41
00:03:00,230 --> 00:03:05,218
It is the notion of forwarding each of 
the post cards with a from and a to 

42
00:03:05,218 --> 00:03:13,280
address, forwarding enough times to get 
them all the way across the network. 

43
00:03:13,280 --> 00:03:16,430
That's the next problem we're going to 
solve, we're going to stop thinking about 

44
00:03:16,430 --> 00:03:20,910
the link layer, we're just going to 
assume it works, it's just magic. 

45
00:03:20,910 --> 00:03:23,100
That's what a layered architecture gives 
you. 

46
00:03:23,100 --> 00:03:24,600
You don't worry about the stuff above 
you. 

47
00:03:24,600 --> 00:03:26,790
You don't worry about the stuff below 
you. 

48
00:03:26,790 --> 00:03:33,104
You focus like crazy on the stuff that 
you're focusing on. 

49
00:03:33,104 --> 00:03:40,560
So, the link layer only works on one 
link, right? 

50
00:03:40,560 --> 00:03:45,780
It, it worries about one link, and there 
might be 15 or so of these links. 

51
00:03:45,780 --> 00:03:51,630
But the Internet layer worries about all 
the links, and the proper sequence of 

52
00:03:51,630 --> 00:03:59,320
links to follow to get from to Stanford. 
That's a kind of complex problem. 

53
00:03:59,320 --> 00:04:01,780
We're not even going to worry about 
reliability. 

54
00:04:01,780 --> 00:04:05,501
We are just going to worry about if I had 
a pack-, if I had a postcard with a from 

55
00:04:05,501 --> 00:04:09,620
and a to address, a packet, can I get it 
there? 

56
00:04:09,620 --> 00:04:13,313
How will I forward it? 
I assume the link layer is perfect so the 

57
00:04:13,313 --> 00:04:17,95
Internet layer is the first end to end, 
because if you recall this vertical box, 

58
00:04:17,95 --> 00:04:21,60
this set of boxes is the host starting 
computer, and this vertical set of boxes 

59
00:04:21,60 --> 00:04:28,120
is the destination computer. 
So in this little raspberry pie, all four 

60
00:04:28,120 --> 00:04:33,547
of these things, application, transport, 
IP, and the link is all part of this one 

61
00:04:33,547 --> 00:04:39,475
gadget, okay? 
So IP is best effort and it's okay to 

62
00:04:39,475 --> 00:04:43,547
drop data if things go bad. 
And that's one of it's charming, most 

63
00:04:43,547 --> 00:04:47,800
charming features. 
But what it had to introduce, in addition 

64
00:04:47,800 --> 00:04:52,450
to the Ethernet addresses or the media 
access layer or Mac addresses, is an 

65
00:04:52,450 --> 00:04:58,766
address of the destination. 
Now, if you remember, the Mac addresses, 

66
00:04:58,766 --> 00:05:02,100
the addresses for the link layer, come 
from the manufacturer. 

67
00:05:02,100 --> 00:05:05,628
The moment this equipment is 
manufactured, it is burned in a serial 

68
00:05:05,628 --> 00:05:09,100
number. 
But these move all around the world. 

69
00:05:09,100 --> 00:05:12,70
If this runs here at the University of 
Michigan, it needs one address to connect 

70
00:05:12,70 --> 00:05:15,862
to the network. 
One IP address, if it runs at Stanford, 

71
00:05:15,862 --> 00:05:19,622
it needs a different IP address. 
So we have to be able to change these, so 

72
00:05:19,622 --> 00:05:24,222
they're assigned different. 
So it's the worldwide number that is your 

73
00:05:24,222 --> 00:05:28,669
like postcard address. 
It's like a phone number, right, so 

74
00:05:28,669 --> 00:05:33,213
wherever I'm at, you call my phone, and 
this gadget rings, so its address Well 

75
00:05:33,213 --> 00:05:39,966
that's actually kind of a[SOUND] bad 
example cause I used a sync on it. 

76
00:05:39,966 --> 00:05:41,680
Okay. 
Ignore that. 

77
00:05:41,680 --> 00:05:44,351
Phones use magic, they use crazy magic. 
So, and computers they're not as cool as 

78
00:05:44,351 --> 00:05:49,153
phones. 
You have to change the address everywhere 

79
00:05:49,153 --> 00:05:52,4
you go. 
We'll talk about how you change the 

80
00:05:52,4 --> 00:05:56,26
address everywhere you go. 
The IP addresses are based on where the 

81
00:05:56,26 --> 00:06:00,422
station is connected. 
They do get reorganized once in a great 

82
00:06:00,422 --> 00:06:04,232
while but not very often. 
And you can even go to various websites 

83
00:06:04,232 --> 00:06:08,136
on the internet and say IP address look 
up is the most common search and it will 

84
00:06:08,136 --> 00:06:12,704
tell you something about where your 
coming from. 

85
00:06:12,704 --> 00:06:14,703
Right? 
You know, kind of be sometimes really 

86
00:06:14,703 --> 00:06:18,442
weird, because you might be at Starbucks, 
and it might send it all to St. 

87
00:06:18,442 --> 00:06:20,96
Louis, and it might say, oh you're coming 
from St. 

88
00:06:20,96 --> 00:06:22,730
Louis, even if you're not. 
So you can look it up, and you can look 

89
00:06:22,730 --> 00:06:26,16
up other addresses as well. 
You can say oh, here's an IP address, I'm 

90
00:06:26,16 --> 00:06:30,52
going to look this one up. 
First it starts by looking yours, but you 

91
00:06:30,52 --> 00:06:34,540
can put in different addresses, like in 
this particular one If I put a different 

92
00:06:34,540 --> 00:06:40,150
address in here, it will actually go look 
that address up. 

93
00:06:40,150 --> 00:06:45,10
So the IP address format, it's four 
numbers that are separated by dots. 

94
00:06:45,10 --> 00:06:48,904
Each of the number can be between 1 and 
2,000 and 255 and it suggests a 

95
00:06:48,904 --> 00:06:53,62
representation of a 32 bit number, back 
in the day, it kept the numbers small 

96
00:06:53,62 --> 00:06:58,804
because it didn't want to use all the 
computer memory. 

97
00:06:58,804 --> 00:07:03,620
and so, this is an example of an IP 
address. 

98
00:07:03,620 --> 00:07:09,338
Four numbers between zero and 255, 
separated by dots, okay? 

99
00:07:09,338 --> 00:07:14,960
Now the concept, the address is broken 
into two parts. 

100
00:07:14,960 --> 00:07:19,47
There is the network number part which is 
the prefix, and then there is the 

101
00:07:19,47 --> 00:07:25,39
computer number within network, 'kay? 
And it's kind of like phone numbers were 

102
00:07:25,39 --> 00:07:29,857
before cellphones where the area code was 
where the phone was, and then this was 

103
00:07:29,857 --> 00:07:36,392
within that area code, where to find it. 
And even in the older days, these were 

104
00:07:36,392 --> 00:07:40,104
actually geographic too, right, so these 
numbers would be neighborhoods or 

105
00:07:40,104 --> 00:07:44,312
whatever. 
These days, it's all electronic, so the 

106
00:07:44,312 --> 00:07:49,730
precise mapping of a phone number to a 
geography is less precise. 

107
00:07:49,730 --> 00:07:52,475
And that's why you get a cell phone 
number and you move to a whole new state, 

108
00:07:52,475 --> 00:07:56,600
you keep your old phone cell phone number 
because it's become electronic. 

109
00:07:56,600 --> 00:08:00,696
But in the early days, when it was actual 
relays and switches making the phone 

110
00:08:00,696 --> 00:08:04,918
numbers work, they actually had to do 
with where. 

111
00:08:04,918 --> 00:08:07,980
It's actually kind of fascinating how 
phones work. 

112
00:08:07,980 --> 00:08:11,576
I ought to, I ought to teach a class on 
like how phones switches worked in the 

113
00:08:11,576 --> 00:08:16,164
1800s. 
Actually quite fascinating, because they 

114
00:08:16,164 --> 00:08:20,495
were surprisingly simple. 
That's the interesting part is how simple 

115
00:08:20,495 --> 00:08:24,942
turn of the century, well turn of last 
century, phone numbers were. 

116
00:08:24,942 --> 00:08:30,540
So, lets get back to IP addresses. 
There's four numbers. 

117
00:08:30,540 --> 00:08:33,450
Some part of those four numbers is a 
prefix. 

118
00:08:33,450 --> 00:08:36,996
We call that the network number. 
And when the packet is in the middle of 

119
00:08:36,996 --> 00:08:40,717
the network, it doesn't really look at 
these numbers, it only looks at the 

120
00:08:40,717 --> 00:08:44,133
prefix, so it kind of thinks of all the 
packets going to a piece of the 

121
00:08:44,133 --> 00:08:48,37
University of Michigan as 141.211.*.*, 
and then we, we assign these numbers 

122
00:08:48,37 --> 00:08:52,185
within Michigan, and then this number is 
assigned to us by the internet authority 

123
00:08:52,185 --> 00:08:59,306
that assigns numbers. 
So we say hey, we need some more and they 

124
00:08:59,306 --> 00:09:03,262
give us a prefix. 
Then within that prefix we get to set up 

125
00:09:03,262 --> 00:09:06,940
all the other things. 
So. 

126
00:09:06,940 --> 00:09:10,660
This network number which is the prefix 
of the IP address is the way that a 

127
00:09:10,660 --> 00:09:17,160
packet is routed through the internet as 
it progresses through the internet. 

128
00:09:17,160 --> 00:09:21,696
And so it's sort of like if I start with, 
if I start with my computer here in U of 

129
00:09:21,696 --> 00:09:26,770
M, and that's my number, that's my actual 
number. 

130
00:09:26,770 --> 00:09:31,100
And here's a Stanford computer, and 
that's its number, alright? 

131
00:09:31,100 --> 00:09:37,871
And I send a packet and I say, okay, I'm 
going to send it from 141 211 144 188 269 

132
00:09:37,871 --> 00:09:43,960
67 149 yada yada. 
As soon as the packet enters the network, 

133
00:09:43,960 --> 00:09:48,270
it doesn't throw the data away, but it 
stops thinking about it. 

134
00:09:48,270 --> 00:09:52,486
It only looks at the prefix and so it's 
simplify, greatly simplify what the 

135
00:09:52,486 --> 00:09:58,90
routers have to do as it go across the 
hops on the internet. 

136
00:09:58,90 --> 00:10:01,30
It's greatly simplified because it only 
looks at the first part. 

137
00:10:01,30 --> 00:10:02,592
It doesn't have to look at the whole 
thing. 

138
00:10:02,592 --> 00:10:06,480
[COUGH] And then this starts making 
decisions as to how to get there. 

139
00:10:06,480 --> 00:10:09,897
So it says okay, I'll hop it over here, 
again it's like in Kansas City and says, 

140
00:10:09,897 --> 00:10:13,110
what am I going to do here and I'll pick 
one of those two links and I'll go over 

141
00:10:13,110 --> 00:10:16,272
here and then, as it exits the network, 
it dumps it somehow onto Stanford's 

142
00:10:16,272 --> 00:10:21,788
campus. 
And then, it finds its way. 

143
00:10:21,788 --> 00:10:24,120
Oh, it didn't find it to this one;, it 
found its way to that one. 

144
00:10:24,120 --> 00:10:27,49
There you go. 
Unpredictable computers. 

145
00:10:27,49 --> 00:10:30,514
Now it, so within the Stanford campus, 
these numbers mean something and the 

146
00:10:30,514 --> 00:10:35,660
Stanford campus uses those numbers to get 
the thing to the actual real computer. 

147
00:10:35,660 --> 00:10:40,224
And so it sort of used this prefix. 
You know, it has a real number, but then 

148
00:10:40,224 --> 00:10:45,326
it uses the prefix in the middle and then 
the real number reappears at the end. 

149
00:10:45,326 --> 00:10:51,260
So that's called a network number. 
And it greatly simplifies. 

150
00:10:51,260 --> 00:10:55,418
It's complex enough to be in the middle 
and have tot worry about all these things 

151
00:10:55,418 --> 00:10:59,639
coming from Kansas City and Beijing and, 
like, where do these things go to have to 

152
00:10:59,639 --> 00:11:05,510
look at each one and know where every 
computer is is crazy. 

153
00:11:05,510 --> 00:11:09,454
So that's why they call it the 
Internetwork Protocol, because it says 

154
00:11:09,454 --> 00:11:13,942
"there's one network, there's another 
network, and the only thing I care about 

155
00:11:13,942 --> 00:11:19,608
is the network number, and I am the 
Internetwork Protocol. 

156
00:11:19,608 --> 00:11:23,642
I" P, in a network protocol. 
I'm just getting these things from one 

157
00:11:23,642 --> 00:11:26,678
network to another network, and then it's 
up to that network to figure out how to 

158
00:11:26,678 --> 00:11:29,576
get the darn thing to the right computer 
within it, and it's up to Stanford to 

159
00:11:29,576 --> 00:11:34,160
figure out how to get it to the right 
computer at Stanford. 

160
00:11:34,160 --> 00:11:37,877
So these things are called the network 
number, it's the prefix of the IP 

161
00:11:37,877 --> 00:11:40,928
address. 
Now the key thing that its really a 

162
00:11:40,928 --> 00:11:44,648
beautiful, beautiful design. 
because the, because the center of the 

163
00:11:44,648 --> 00:11:48,400
network is both exceedingly complex in 
one way. 

164
00:11:48,400 --> 00:11:52,270
That it's so big and so fast. 
But exceedingly simple in the other. 

165
00:11:52,270 --> 00:11:56,40
It just has to move the data from point A 
to point B. 

166
00:11:56,40 --> 00:12:01,456
If you think about it, it's even simpler. 
If we look at it from the perspective of 

167
00:12:01,456 --> 00:12:04,976
this router, the router here I've got 
circled. 

168
00:12:04,976 --> 00:12:08,89
Right? 
It just received a packet, it looks at 

169
00:12:08,89 --> 00:12:11,865
the network number, and it actually 
doesn't even care, to some degree, where 

170
00:12:11,865 --> 00:12:16,760
it really belongs. 
It only has one of two choices. 

171
00:12:16,760 --> 00:12:20,131
It's going to go this way, it's going to 
go that way, right? 

172
00:12:20,131 --> 00:12:24,804
Which one's better? 
And it turns out, if you look at it, 

173
00:12:24,804 --> 00:12:28,777
either one will work. 
It turns out this one is better but if I 

174
00:12:28,777 --> 00:12:33,624
went this way, it would just take an 
extra tenth of a second or something. 

175
00:12:33,624 --> 00:12:35,640
Right? 
So it turns out that decisions that are 

176
00:12:35,640 --> 00:12:40,314
made don't even have to be perfect. 
You can make the wrong decision, and the 

177
00:12:40,314 --> 00:12:44,950
network automatically corrects. 
That's part of the goal of the network. 

178
00:12:44,950 --> 00:12:49,238
And so it really simplifies and limits 
the need for each router to understand 

179
00:12:49,238 --> 00:12:53,258
the entire network, which makes these 
routers, I draw 'em small on these 

180
00:12:53,258 --> 00:12:58,495
diagrams on purpose. 
Because we think of them as small and 

181
00:12:58,495 --> 00:13:02,207
fast, and only solving a really tiny 
problem but doing it really super 

182
00:13:02,207 --> 00:13:07,565
awesome. 
So routers maintain what we call router 

183
00:13:07,565 --> 00:13:11,275
tables. 
And they maintain a list of network 

184
00:13:11,275 --> 00:13:17,13
numbers and the best outbound route for 
each of the network numbers. 

185
00:13:17,13 --> 00:13:22,620
Now, the other thing that they do is they 
pass routes back and forth. 

186
00:13:22,620 --> 00:13:25,530
And this is how they adapt to errors, 
right? 

187
00:13:25,530 --> 00:13:29,140
They get updated dynamically. 
They ask each other for the best place. 

188
00:13:29,140 --> 00:13:33,26
If they see a network number they haven't 
seen before, they ask their neighbors, 

189
00:13:33,26 --> 00:13:36,912
then their neighbors' neighbors, and they 
go, "Oh, God, OK; I got a good way to get 

190
00:13:36,912 --> 00:13:40,624
to 16749 And so there's all kinds of 
communication, but it's relatively slow 

191
00:13:40,624 --> 00:13:46,702
and it doesn't have to be perfect. 
And so it's router tables are what 

192
00:13:46,702 --> 00:13:49,887
routers have but they're indexed by the 
network number of the packets, not the 

193
00:13:49,887 --> 00:13:55,358
host of the destination. 
So that's an amazing, amazing improvement 

194
00:13:55,358 --> 00:14:01,970
in the performance and efficiency of the 
Internet core, the IP core. 

195
00:14:01,970 --> 00:14:07,228
So it's really quite simple, right? 
You basically have a local area network 

196
00:14:07,228 --> 00:14:11,440
on your campus. 
This might actually be your house too. 

197
00:14:11,440 --> 00:14:15,614
House is kind of like a campus. 
And you can do all the crazy things you 

198
00:14:15,614 --> 00:14:19,124
want hundreds of computers thousands of 
hundreds of servers and thousands of 

199
00:14:19,124 --> 00:14:23,922
laptops. 
And you get one address that is the 

200
00:14:23,922 --> 00:14:29,276
address of your campus. 
It's the network number of your campus to 

201
00:14:29,276 --> 00:14:33,316
the rest of the world. 
And then all over the world people can 

202
00:14:33,316 --> 00:14:38,340
send to you and by simply looking at the 
prefix. 

203
00:14:38,340 --> 00:14:43,26
Data makes it to you. 
Keeps this really simple and really fast, 

204
00:14:43,26 --> 00:14:45,574
OK? 
So it's beautiful. 

205
00:14:45,574 --> 00:14:50,562
That's with a network number, one area 
code, one network number. 

206
00:14:50,562 --> 00:14:53,744
It's the only thing has to be kept track 
of. 

207
00:14:53,744 --> 00:14:57,464
A whole campus can be characterized 
within the quarter of the network as 

208
00:14:57,464 --> 00:15:02,544
basically a single network number. 
Now, the reality is, it's usually a few 

209
00:15:02,544 --> 00:15:05,192
of these. 
because they give them to you in smaller 

210
00:15:05,192 --> 00:15:08,342
chunks, so you end up with you know, 20 
or 30 of these things for your campus if 

211
00:15:08,342 --> 00:15:12,282
you're a medium to large campus. 
Okay. 

212
00:15:12,282 --> 00:15:20,262
So now I want to talk a little bit about 
the problem of computers that move 

213
00:15:20,262 --> 00:15:25,240
around. 
So you have a laptop, and you use it at 

214
00:15:25,240 --> 00:15:29,84
your local coffee shop, and then you 
close the lid and you go home and open it 

215
00:15:29,84 --> 00:15:33,114
and it works home, and then you close the 
lid and you go to school and you open it, 

216
00:15:33,114 --> 00:15:38,828
and talk to wireless at school and it 
works. 

217
00:15:38,828 --> 00:15:42,374
It's like, Hey Dr. 
Chuck you just told me that I have to 

218
00:15:42,374 --> 00:15:46,680
have this address and I can't talk on the 
internet if don't have the right address. 

219
00:15:46,680 --> 00:15:50,230
And the packets are routed based on the 
prefix of this address. 

220
00:15:50,230 --> 00:15:54,500
Why is it that I can be in three places: 
coffee shop, home, and school and it 

221
00:15:54,500 --> 00:16:00,700
seems like everything works? 
Well, That's because while your computer 

222
00:16:00,700 --> 00:16:05,870
has an Ethernet address that's baked into 
the factory. 

223
00:16:05,870 --> 00:16:09,582
Most computers are configured when they 
first open up and connect to a Wifi to 

224
00:16:09,582 --> 00:16:14,300
ask instead of having an IP address 
configured in your computer. 

225
00:16:14,300 --> 00:16:19,640
They send a request out to say, hey I'm 
new here. 

226
00:16:19,640 --> 00:16:22,775
Is there anyone who will give me an IP 
address that I might use for this 

227
00:16:22,775 --> 00:16:28,168
particular location? 
And, if there is an access point, say, at 

228
00:16:28,168 --> 00:16:33,580
your Starbucks, it says sure, use this 
one. 

229
00:16:33,580 --> 00:16:36,930
You're at Starbucks, that's a good number 
for Starbucks. 

230
00:16:36,930 --> 00:16:40,950
Now, it turns out that the prefix of this 
is exactly the prefix that the, the world 

231
00:16:40,950 --> 00:16:44,910
sees all this traffic to Starbucks, so 
there's actually kind of a real address, 

232
00:16:44,910 --> 00:16:51,148
Okay, and it gives you an address. 
Okay, so you ask, when your thing comes 

233
00:16:51,148 --> 00:16:56,910
up, it asks, what can I get, and then 
it's told what address to use. 

234
00:16:56,910 --> 00:17:00,558
So using one address while you're at 
Starbucks, a different address at home, 

235
00:17:00,558 --> 00:17:03,910
and a different address yet again at 
school. 

236
00:17:03,910 --> 00:17:09,88
So that's called the dynamic host 
configuration protocol. 

237
00:17:09,88 --> 00:17:18,200
Now it turns out, with schools and homes 
and, there's just too many computers Give 

238
00:17:18,200 --> 00:17:26,745
every computer a real address. 
And so we have these special addresses, 

239
00:17:26,745 --> 00:17:30,446
they're called the non-routable 
addresses. 

240
00:17:30,446 --> 00:17:34,352
So you'll probably notice if you go to 
one person's house, you will have a IP 

241
00:17:34,352 --> 00:17:39,290
address of 192 dot 168 dot something dot 
something. 

242
00:17:39,290 --> 00:17:41,690
Go to a different person's house it'll 
also be 192.168. 

243
00:17:41,690 --> 00:17:45,3
something dot something. 
And you go to your house and it's 

244
00:17:45,3 --> 00:17:47,656
192.168. 
something dot something. 

245
00:17:47,656 --> 00:17:51,972
And you're like, how can that work? 
I seem to have the same address. 

246
00:17:51,972 --> 00:17:56,732
Well, that's because of a technology 
called network address translation, where 

247
00:17:56,732 --> 00:18:01,352
each of the home routers actually has a 
unique and distinct address, but you're 

248
00:18:01,352 --> 00:18:05,916
not seeing it. 
It's giving you a temporary address, an 

249
00:18:05,916 --> 00:18:09,244
address that really can't run at all on 
the Internet.It only lives within the 

250
00:18:09,244 --> 00:18:12,676
house, but then as your packets leave the 
house or leave the Starbucks, the real 

251
00:18:12,676 --> 00:18:16,4
address is put in, and then when it comes 
back the real address is taken out and 

252
00:18:16,4 --> 00:18:22,22
your local address is put in. 
So they're called non-routable addresses 

253
00:18:22,22 --> 00:18:24,710
because if they ever escaped into the 
real internet, they'd be like, oh those 

254
00:18:24,710 --> 00:18:27,398
are for your house, they're only for, 
they're not supposed to go very far and I 

255
00:18:27,398 --> 00:18:32,247
don't even know where they go. 
They go nowhere in the core of the 

256
00:18:32,247 --> 00:18:36,320
internet but they go properly inside your 
house. 

257
00:18:36,320 --> 00:18:42,365
So the way this ends up working Is if you 
are at your coffee shop, the coffee shop 

258
00:18:42,365 --> 00:18:48,558
has an address. 
You associate with their base access 

259
00:18:48,558 --> 00:18:51,712
point. 
It gives you a non-routable address to 

260
00:18:51,712 --> 00:18:55,79
use locally, and then as your traffic 
gets sent. 

261
00:18:56,450 --> 00:18:59,540
This address is changed to the address, 
that address. 

262
00:18:59,540 --> 00:19:02,544
You never see this happening. 
It's done as the packet goes through the 

263
00:19:02,544 --> 00:19:05,856
base station. 
And then when the packet comes back, it 

264
00:19:05,856 --> 00:19:09,974
comes back with this address. 
But then as it goes to the base station 

265
00:19:09,974 --> 00:19:13,943
it switches back to this address. 
So even though this address is not the 

266
00:19:13,943 --> 00:19:18,118
real address the network sees, they see 
you having this address here. 

267
00:19:18,118 --> 00:19:21,835
So if you would do an IP lookup from a 
coffee shop, the coffee shop will be 

268
00:19:21,835 --> 00:19:26,739
identified. 
You'll see the IP address here, and if 

269
00:19:26,739 --> 00:19:33,372
you looked at your laptop, your laptop 
would not have that same address, because 

270
00:19:33,372 --> 00:19:39,836
it's being translated in the access 
point. 

271
00:19:39,836 --> 00:19:47,228
So then, you go home, and at home, your 
access point has a different address, but 

272
00:19:47,228 --> 00:19:54,956
your computer asks your as, ask, address, 
asks your access point foreign address, 

273
00:19:54,956 --> 00:20:04,190
and it gets a local address that's 
generated locally. 

274
00:20:04,190 --> 00:20:08,923
And again, there is a mapping. 
It's called NAT, NAT. 

275
00:20:08,923 --> 00:20:13,890
Oh I'll change the color. 
NAT, Network Address Translation. 

276
00:20:13,890 --> 00:20:17,250
So as the packet goes through, it takes 
out the one address and puts in the 

277
00:20:17,250 --> 00:20:19,620
second. 
Dave comes back. 

278
00:20:19,620 --> 00:20:22,156
He takes the address out and puts the 
local one in. 

279
00:20:22,156 --> 00:20:25,641
And the same thing happens at school. 
Alright, so, you're at school finally and 

280
00:20:25,641 --> 00:20:28,611
you get a different address. 
They're not the same, but you look and 

281
00:20:28,611 --> 00:20:31,549
the prefixes are the same. 
It's like they should be the same, but 

282
00:20:31,549 --> 00:20:34,783
they're completely different because your 
school has a different address and 

283
00:20:34,783 --> 00:20:40,40
there's a translation that goes back and 
forth as the data goes round and round. 

284
00:20:40,40 --> 00:20:44,566
So just for the distance of the local 
Wi-Fi, or whatever, use these 192.168 

285
00:20:44,566 --> 00:20:49,457
numbers, and then they're translated to 
the real numbers by your network access 

286
00:20:49,457 --> 00:20:55,755
points. 
So these are illegal inside this network, 

287
00:20:55,755 --> 00:21:03,420
so if it ever saw a 192.168 It would just 
throw that packet away. 

288
00:21:03,420 --> 00:21:12,657
They're only for very local connections. 
So with that, I'm wondering if by now, 

289
00:21:12,657 --> 00:21:26,84
you know why this is funny. 
I'll give you a minute. 

290
00:21:26,84 --> 00:21:36,387
OK. 
So the reason this is funny Is she traced 

291
00:21:36,387 --> 00:21:42,723
the killer's IP address and it had a 
prefix of 192.168 which means that killer 

292
00:21:42,723 --> 00:21:48,960
had to be within a short radius using 
likely the same WiFi access point which 

293
00:21:48,960 --> 00:22:00,10
means it was close. 
Very scary. 

294
00:22:00,10 --> 00:22:05,242
Hope you think it's funny. 
'Course, XKCD is never exactly funny, but 

295
00:22:05,242 --> 00:22:11,29
it hopefully makes you smile a little 
bit. 

296
00:22:11,29 --> 00:22:15,973
So up till now,[COUGH] I've been talking 
about. 

297
00:22:15,973 --> 00:22:25,330
[SOUND] So, up to now, I've been talking 
about this cloud network that's magic. 

298
00:22:25,330 --> 00:22:29,120
And the packets take different routes and 
we don't know, but they show up. 

299
00:22:29,120 --> 00:22:33,947
Remember the mail box, like, they just 
show up or don't show up, right? 

300
00:22:33,947 --> 00:22:37,758
So, it turns out. 
That sometimes, we as engineers, want to 

301
00:22:37,758 --> 00:22:41,920
take a look at what's going on inside the 
internet. 

302
00:22:41,920 --> 00:22:45,616
And it turned out that there was a 
feature they added early on to help 

303
00:22:45,616 --> 00:22:50,550
diagnose problems in the internet that we 
still use today. 

304
00:22:50,550 --> 00:22:53,718
And it's so convenient that it's built 
right into your operating system. 

305
00:22:53,718 --> 00:22:57,480
Y'know, in Macintosh or Linux, Traceroute 
is built in, and if you have Windows, 

306
00:22:57,480 --> 00:23:01,632
you've got to install Traceroute. 
So just say Windows and Install 

307
00:23:01,632 --> 00:23:06,460
Traceroute, and you'll find something. 
But there was a problem. 

308
00:23:06,460 --> 00:23:12,155
So if you recall, I said that each router 
sees the world very narrowly, and simply 

309
00:23:12,155 --> 00:23:18,130
sees a packet and makes a decision, one 
of one place. 

310
00:23:18,130 --> 00:23:23,186
So let's say that here comes a packet on 
the way to Stanford, and these routers 

311
00:23:23,186 --> 00:23:28,794
are sort of strangely configured. 
This router thinks it should go there, 

312
00:23:28,794 --> 00:23:33,920
this router thinks it should go there, 
and this router thinks it shoud go there. 

313
00:23:33,920 --> 00:23:36,376
Well it comes in. 
It goes like, oh, well I know where that 

314
00:23:36,376 --> 00:23:40,680
one goes, there. 
So if you end up with this misconfigured 

315
00:23:40,680 --> 00:23:48,400
router situation, you end up with your 
data going round and round in circles. 

316
00:23:48,400 --> 00:23:51,969
It would actually, like, crush the 
network because it's like a whirlpool. 

317
00:23:53,410 --> 00:23:57,863
You can't even notice that it's 
happening, because there might acutally 

318
00:23:57,863 --> 00:24:01,449
be, you know, ten. 
You know there might be a bunch of them, 

319
00:24:01,449 --> 00:24:04,250
and then it comes back and you send it 
around again. 

320
00:24:04,250 --> 00:24:07,870
So you're filling up all your bandwidth. 
It's never going to get there, unless 

321
00:24:07,870 --> 00:24:11,390
something changes, unless something 
crashes. 

322
00:24:11,390 --> 00:24:13,870
It's not going to change because these 
routers think that's the best thing to 

323
00:24:13,870 --> 00:24:15,740
do. 
They're mistaken. 

324
00:24:15,740 --> 00:24:19,898
But they are, they can be mistaken 
because they're, they're operating with 

325
00:24:19,898 --> 00:24:24,800
imperfect information. 
So how would you solve this problem? 

326
00:24:24,800 --> 00:24:29,816
The routers are imperfect but they solve 
the problem with a thing called Time to 

327
00:24:29,816 --> 00:24:34,376
Live field. 
So much like the network entrance 

328
00:24:34,376 --> 00:24:38,406
translation tweaks the addresses on the 
way in and the way out, Time to Live is a 

329
00:24:38,406 --> 00:24:43,648
field that routers change. 
Every time a packet goes through a router 

330
00:24:43,648 --> 00:24:48,200
it subtracts one from this field. 
And it starts with a number between 25, 

331
00:24:48,200 --> 00:24:51,648
it can be as high as 255 but it usually 
like 25. 

332
00:24:51,648 --> 00:24:57,360
And what happens is, is every time the 
packet goes through a router, the number 

333
00:24:57,360 --> 00:25:02,614
goes down by one. 
So, if it was, it would be come in here 

334
00:25:02,614 --> 00:25:07,310
as 255 and it will go through here 254, 
and 253. 

335
00:25:07,310 --> 00:25:11,862
It will come back it will be 252 and what 
would happen is eventually. 

336
00:25:11,862 --> 00:25:17,217
We get to one of these guys and it hit 0 
and they would decide okay, you've been 

337
00:25:17,217 --> 00:25:22,726
running around to long we will throw you 
away. 

338
00:25:22,726 --> 00:25:27,57
So the number goes down, and it always 
goes down but then when it hits 0 they 

339
00:25:27,57 --> 00:25:33,600
throw the packet away. 
They say you have been through 255 hops. 

340
00:25:33,600 --> 00:25:37,260
Chances are good you're never going to 
get to your destination. 

341
00:25:37,260 --> 00:25:44,586
So the Traceroute command sort of cheats. 
Normal packets are sent with a TTL, or 

342
00:25:44,586 --> 00:25:49,190
time to live, of like 30, 30 hops or 40 
hops. 

343
00:25:49,190 --> 00:25:54,455
But what Traceroute does is send broken 
packets It turns out that when a router 

344
00:25:54,455 --> 00:25:59,477
throws away your packet most of the time 
it is courteous, and it sends back a 

345
00:25:59,477 --> 00:26:04,661
notification and says hi I got your 
packet, I decremented it, subtracted one 

346
00:26:04,661 --> 00:26:13,540
and it got to zero and I threw it away. 
Sorry about that. 

347
00:26:13,540 --> 00:26:16,110
Here's here's who I am. 
I mean I really feel bad about throwing 

348
00:26:16,110 --> 00:26:18,349
your packet away. 
Maybe you want to figure something else 

349
00:26:18,349 --> 00:26:19,30
out. 
I don't know. 

350
00:26:19,30 --> 00:26:21,630
Something must be messed up. 
It can't be my fault, but I threw it 

351
00:26:21,630 --> 00:26:24,6
away. 
So what it does is, it first sends a 

352
00:26:24,6 --> 00:26:28,456
packet with a time to live of one. 
So the first router goes like hello, this 

353
00:26:28,456 --> 00:26:31,720
has been around a long time. 
Sets to zero, throws it away. 

354
00:26:31,720 --> 00:26:36,520
Then sends a note back Then Traceroute 
sends a packet of two across. 

355
00:26:36,520 --> 00:26:40,470
It goes hop, hop, and then it gets thrown 
away, and a little note comes back. 

356
00:26:40,470 --> 00:26:45,244
So you can kind of build a map by sending 
enough packets and getting kind of a 

357
00:26:45,244 --> 00:26:51,340
return rejection from one of the routers. 
It would have got there. 

358
00:26:51,340 --> 00:26:54,939
So if, for example, I do a Traceroute 
from the University of Michigan to 

359
00:26:54,939 --> 00:27:00,72
Stanford, you'd, if I did it now, it'd be 
a different set of things. 

360
00:27:00,72 --> 00:27:05,700
[COUGH] I get this output, and if I take 
a look at this, this is the hop. 

361
00:27:05,700 --> 00:27:10,227
So there's the first one, two, three, 
four through 14, 14 hops. 

362
00:27:10,227 --> 00:27:13,444
So it takes 14 hops. 
Now interestingly, again I don't remember 

363
00:27:13,444 --> 00:27:17,191
what the hop count was in the store in 
former days but is quite a few. 

364
00:27:17,191 --> 00:27:21,525
And that's because it's optimizing 
geography. 

365
00:27:21,525 --> 00:27:26,772
and so you can see the first hop is on my 
campus. 

366
00:27:26,772 --> 00:27:32,530
Then the second and third hop are 
bouncing around my campus some more. 

367
00:27:32,530 --> 00:27:34,730
Now we don't quite know where this one 
is. 

368
00:27:34,730 --> 00:27:38,415
But now it's on an, on a national network 
called internet 2, internet 2, internet 

369
00:27:38,415 --> 00:27:41,424
2. 
This is probably going across the 

370
00:27:41,424 --> 00:27:44,280
country. 
And then it ends up on scenic, which I 

371
00:27:44,280 --> 00:27:48,351
think is sort of California's network, it 
bounces through California's network a 

372
00:27:48,351 --> 00:27:55,96
couple of times. 
Let's see hprlax, that's Los Angeles. 

373
00:27:55,96 --> 00:28:00,352
And this is, I don't know where that is. 
Los Angeles, that looks like it's making 

374
00:28:00,352 --> 00:28:04,820
Oakland, I don't know, there's probably 
some meaning to these things. 

375
00:28:04,820 --> 00:28:09,760
So it's making it through Oakland, then 
it's going to Stanford from something 

376
00:28:09,760 --> 00:28:12,860
Okland. 
I don't know. 

377
00:28:12,860 --> 00:28:16,565
But now it's on Stanford campus, and now 
it has three more hops to get across the 

378
00:28:16,565 --> 00:28:20,530
Stanford campus To the Stanford campus's 
web server. 

379
00:28:20,530 --> 00:28:25,890
Now what's also going on here, is it's 
keeping track of how long it's taking. 

380
00:28:25,890 --> 00:28:29,823
It sends each one a couple of times, and 
so these are milliseconds, so 

381
00:28:29,823 --> 00:28:36,475
milliseconds are thousandths of a second, 
so 534 milliseconds is a half a second. 

382
00:28:36,475 --> 00:28:40,917
490 is a half a second. 
So these are, like, half a second, half a 

383
00:28:40,917 --> 00:28:45,471
second, oh, wait, no, no, sorry, not half 
a second, that'd be 4,000, well, 1,000 

384
00:28:45,471 --> 00:28:51,136
milliseconds would be one second so I got 
that all wrong. 

385
00:28:51,136 --> 00:28:56,265
So, 0.49 milliseconds is like half of a 
thousandth of a second. 

386
00:28:56,265 --> 00:29:01,568
So that's fast, fast. 
6 milliseconds is 6 1/1000ths of a 

387
00:29:01,568 --> 00:29:07,410
second. 
76 milliseconds, which is 9 hops away, 

388
00:29:07,410 --> 00:29:15,311
that's 76,000 or 7, 100s. 
So it takes about 7, 100s. 

389
00:29:15,311 --> 00:29:19,147
Yeah, so like 77 over 1000. 
So, no 7 100's. 

390
00:29:19,147 --> 00:29:26,161
Sorry, 7 100's of a second. 
It's less than a 10th of a second to get 

391
00:29:26,161 --> 00:29:39,114
through 14 routers from Michigan to 
Stanford Less than a tenth of a second. 

392
00:29:39,114 --> 00:29:44,247
Pretty impressive. 
Now, if I do a trace route from Ann 

393
00:29:44,247 --> 00:29:49,288
Arbor, Michigan to East Lansing Michigan, 
Michigan State University, we have a very 

394
00:29:49,288 --> 00:29:54,817
close connection. 
I mentioned the Merit Network, where 

395
00:29:54,817 --> 00:29:59,397
we've have a close connection for a long 
time. 

396
00:29:59,397 --> 00:30:06,68
So not only is it fewer hops, it's only 
eight hops to get to Michigan State. 

397
00:30:06,68 --> 00:30:11,519
if you look at the, if you look at the 
hops here I'm bouncing around the campus 

398
00:30:11,519 --> 00:30:16,654
for three, I'm bouncing through the state 
for two and bouncing on the Michigan 

399
00:30:16,654 --> 00:30:23,204
State campus for three. 
So it's total of eight, two hops to get, 

400
00:30:23,204 --> 00:30:26,986
two, three hops to get across my campus, 
two hops to get across the State of 

401
00:30:26,986 --> 00:30:33,178
Michigan and three hops to get on campus. 
And it's really fast. 

402
00:30:33,178 --> 00:30:40,350
It's 9 1000ths of a second which is less 
than a hundredth of a second. 

403
00:30:40,350 --> 00:30:44,246
So really fast, you can kind of see it. 
Now if you ran this tracer out more than 

404
00:30:44,246 --> 00:30:48,556
once, this might change. 
It doesn't change too fast, but legally 

405
00:30:48,556 --> 00:30:51,880
it could change. 
I mean it, there's no guarantee it's 

406
00:30:51,880 --> 00:30:54,876
going to be the same. 
It's highly likely it's going to be the 

407
00:30:54,876 --> 00:30:58,600
same because the most efficient way is 
not going to change within a few seconds. 

408
00:30:58,600 --> 00:31:01,101
But if you start in the middle of the 
day, and you do it the next day, it might 

409
00:31:01,101 --> 00:31:05,840
change quite a bit. 
So it'd be something to play with. 

410
00:31:05,840 --> 00:31:08,82
Run it. 
Print it out. 

411
00:31:08,82 --> 00:31:11,787
And run it again at midnight, run it at 
noon, see if your Traceroute is 

412
00:31:11,787 --> 00:31:16,248
different. 
Right, interesting. 

413
00:31:16,248 --> 00:31:21,84
So here's an example of a Traceroute From 
University of Michigan to Peking 

414
00:31:21,84 --> 00:31:26,894
University in China and and so it's 
again, you know it's. 

415
00:31:26,894 --> 00:31:32,542
{COUGH} it bounces thru the state of my 
campus for a couple of hops. 

416
00:31:32,542 --> 00:31:37,794
Alright my campus for a couple of hops. 
It bounces around the United States for a 

417
00:31:37,794 --> 00:31:42,924
couple of hops. 
and then it starts crossing the Pacific 

418
00:31:42,924 --> 00:31:46,456
Ocean. 
It goes this, there's traffic actually 

419
00:31:46,456 --> 00:31:50,476
went through Seoul, Korea. 
And then it ended up in Beijing. 

420
00:31:50,476 --> 00:31:55,156
Now the interesting thing is you can see 
that it looks like it's taking about 61 

421
00:31:55,156 --> 00:31:59,764
thousandths or six one hundredths, just 
over a, just almost, well, a half of a 

422
00:31:59,764 --> 00:32:05,340
tenth of a second to get across the 
country. 

423
00:32:05,340 --> 00:32:09,159
And then it starts taking longer. 
And then by the time it's going all the 

424
00:32:09,159 --> 00:32:13,575
way to China and back, it's doing 256 
milliseconds which is about a quarter of 

425
00:32:13,575 --> 00:32:19,9
a second. 
Now the big different here is likely not 

426
00:32:19,9 --> 00:32:23,920
traffic It is likely the speed of the 
light. 

427
00:32:23,920 --> 00:32:29,407
It is how fast it takes light to get 
across the Pacific Ocean, so it takes 

428
00:32:29,407 --> 00:32:35,378
awhile. 
the reason I think it's most 

429
00:32:35,378 --> 00:32:42,578
likely[INAUDIBLE] 
numbers[INAUDIBLE][INAUDIBLE] load 

430
00:32:42,578 --> 00:32:49,530
traffic because these are very 
consistent. 

431
00:32:49,530 --> 00:32:56,721
[INAUDIBLE] pretty much all the time. 
So that suggests that we're not waiting 

432
00:32:56,721 --> 00:32:59,87
for any traffic. 
We're getting through as fast as we 

433
00:32:59,87 --> 00:33:05,72
physically can. 
Which is some combination of the speed of 

434
00:33:05,72 --> 00:33:13,498
the link and the speed of light. 
So we just got done talking about how we 

435
00:33:13,498 --> 00:33:19,615
add to every packet this global number, 
the IP address. 

436
00:33:19,615 --> 00:33:23,575
It has the prefix of the network number 
in the internet part, the inter network, 

437
00:33:23,575 --> 00:33:27,595
where it's really moving data from one 
network to another network and leaving it 

438
00:33:27,595 --> 00:33:32,706
up to those destination networks how to, 
how to move it. 

439
00:33:32,706 --> 00:33:37,442
we end up really simplifying the 
postcard, and the postcard ends up being 

440
00:33:37,442 --> 00:33:41,982
a really apt example. 
But the key thing, especially when 

441
00:33:41,982 --> 00:33:45,573
thinking about the four layer 
architecture that, the reason that, I 

442
00:33:45,573 --> 00:33:49,794
think, TCP/IP succeeded was in this real 
complex problem of moving data between 

443
00:33:49,794 --> 00:33:55,940
billions of computers, it kept the part 
in the middle real simple. 

444
00:33:55,940 --> 00:33:58,995
It doesn't try to be perfect. 
It doesn't try to retransmit data. 

445
00:33:58,995 --> 00:34:02,375
Doesn't try to store it, it doesn't try 
to keep it in the right order, it doesn't 

446
00:34:02,375 --> 00:34:05,651
try to say that "if this packet went here 
I'm going to make sure the next one goes 

447
00:34:05,651 --> 00:34:11,30
there." If the two packets, one gets 
ahead, we don't really care. 

448
00:34:11,30 --> 00:34:15,119
It means it really fast and really 
scalable. 

449
00:34:15,119 --> 00:34:20,219
And by keeping it simple and really fast, 
It solves really an amazing problem, but 

450
00:34:20,219 --> 00:34:27,231
we yet have other problems to solve. 
So I want to close this lecture by 

451
00:34:27,231 --> 00:34:34,71
introducing you to another person. 
So, Vint Cerf was a graduate student as 

452
00:34:34,71 --> 00:34:38,828
the whole notion of packet-switching was 
being sort of examined and, both in the 

453
00:34:38,828 --> 00:34:43,940
Federal Government at the Defense Advance 
Research Project Agency, DARPA, and in 

454
00:34:43,940 --> 00:34:50,568
higher education. 
Both in the United States and Europe UK 

455
00:34:50,568 --> 00:34:54,38
and elsewhere. 
So, Vint Cerf was kind of at the right 

456
00:34:54,38 --> 00:34:58,570
place at the right time and we can be 
very thankful for that. 

457
00:34:58,570 --> 00:35:02,540
He's credited as being one of the 
father's of the ARPANET. 

458
00:35:02,540 --> 00:35:09,93
Which of course begat the internet. 
And so, Vint is going to talk to us, in a 

459
00:35:09,93 --> 00:35:14,405
sense, going back even pre-ARPANET and 
bring us up packets and what packet's 

460
00:35:14,405 --> 00:35:19,800
mean and then how that all flowed into 
the ARPANET And how the ARPANET evolved, 

461
00:35:19,800 --> 00:35:25,677
to become the internet, Enjoy. 

