All language subtitles for 03 - Cisco Foundations - Speaking the Language of the OSI Model-eng
Afrikaans
Albanian
Amharic
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bengali
Bosnian
Bulgarian
Catalan
Cebuano
Chichewa
Chinese (Simplified)
Chinese (Traditional)
Corsican
Croatian
Czech
Danish
Dutch
English
Esperanto
Estonian
Filipino
Finnish
French
Frisian
Galician
Georgian
German
Greek
Gujarati
Haitian Creole
Hausa
Hawaiian
Hebrew
Hindi
Hmong
Hungarian
Icelandic
Igbo
Indonesian
Irish
Italian
Japanese
Javanese
Kannada
Kazakh
Khmer
Korean
Kurdish (Kurmanji)
Kyrgyz
Lao
Latin
Latvian
Lithuanian
Luxembourgish
Macedonian
Malagasy
Malay
Malayalam
Maltese
Maori
Marathi
Mongolian
Myanmar (Burmese)
Nepali
Norwegian
Pashto
Persian
Polish
Portuguese
Punjabi
Russian
Samoan
Scots Gaelic
Serbian
Sesotho
Shona
Sindhi
Sinhala
Slovak
Slovenian
Somali
Spanish
Sundanese
Swahili
Swedish
Tajik
Tamil
Telugu
Thai
Turkish
Ukrainian
Urdu
Uzbek
Vietnamese
Welsh
Xhosa
Yiddish
Yoruba
Zulu
Odia (Oriya)
Kinyarwanda
Turkmen
Tatar
Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
1
00:00:00,636 --> 00:00:04,226
>> You don't have to be in the network world
very long before you start hearing people say
2
00:00:04,226 --> 00:00:07,266
things like, "It sounds like
that's a Layer 2 issue,"
3
00:00:07,606 --> 00:00:09,856
or "Did you check the Layer 3 routing table?"
4
00:00:10,366 --> 00:00:12,796
or "That's definitely a layer 8 issue."
5
00:00:13,306 --> 00:00:17,466
So all of this goes into the
concept known as the OSI model,
6
00:00:17,466 --> 00:00:22,346
which really defines networking
as we know it in today's world.
7
00:00:22,346 --> 00:00:25,706
So I want to unpack in this
nugget what is the OSI model,
8
00:00:25,706 --> 00:00:27,996
not just - not just memorizing the layers.
9
00:00:27,996 --> 00:00:32,806
Anybody can do that, but understanding the
layers, and then it's even a step beyond that,
10
00:00:32,806 --> 00:00:38,796
to be able to say, I know how those layers
impact networks and how communication works.
11
00:00:38,996 --> 00:00:42,846
And I added, "Is there a conspiracy here
too," because of the last nugget when I talk
12
00:00:42,846 --> 00:00:44,176
about Cisco inventing the router -
13
00:00:44,326 --> 00:00:47,266
there's a little conspiracy here,
but I'll try to keep it low.
14
00:00:48,016 --> 00:00:52,376
Then we'll get into the layers themselves of
OSI, what adds what, where it's being added,
15
00:00:52,376 --> 00:00:57,786
and then how network devices communicate, how
does this impact what we saw in the last nugget,
16
00:00:57,786 --> 00:01:00,086
which is the switches and the
routers, where do they operate?
17
00:01:00,086 --> 00:01:00,956
How do they work?
18
00:01:01,286 --> 00:01:03,046
All of that will be exposed here.
19
00:01:04,256 --> 00:01:07,686
But let's start off with what it is first.
20
00:01:07,856 --> 00:01:09,736
So what is the OSI model?
21
00:01:10,146 --> 00:01:13,066
A standard architecture defining
network communication.
22
00:01:13,416 --> 00:01:16,886
Rewind your mind back in time
to when IBM ruled the world,
23
00:01:16,886 --> 00:01:19,696
all the computers were quote unquote
"IBM compatible" if you will.
24
00:01:19,696 --> 00:01:28,096
If it was left to vendors to come up with these
standards, IBM would say, we have the IBM model,
25
00:01:28,406 --> 00:01:32,396
and all other computers and network
devices have to follow this model,
26
00:01:32,396 --> 00:01:35,516
but let's say Dell comes along or
Apple comes along and they say,
27
00:01:35,516 --> 00:01:37,406
"We want to create an Apple model."
28
00:01:37,406 --> 00:01:41,476
And so now you've got this issue where,
Apple computers talk to Apple computers,
29
00:01:41,516 --> 00:01:46,126
and IBM talks to IBM and Dell talks to
Dell, and there's no kind of standard
30
00:01:46,126 --> 00:01:49,476
that they all can apply to to
allow cross platform communication;
31
00:01:49,826 --> 00:01:51,576
thus, the OSI model was born.
32
00:01:51,956 --> 00:01:57,486
Now, the OSI model in itself is not a standard,
like you can't go into the Control Panel
33
00:01:57,486 --> 00:02:01,396
and say, "Oh, look, there's the transport
control panel in my Windows device."
34
00:02:01,896 --> 00:02:04,336
It's a framework -- I'm going
to jump straight down here --
35
00:02:05,166 --> 00:02:07,606
it's really a standard to create standards.
36
00:02:07,606 --> 00:02:10,926
And without diving into everything
we're going to explore
37
00:02:10,926 --> 00:02:13,286
through this entire series,
let me give you an example.
38
00:02:13,766 --> 00:02:16,616
The network layer defines a type of addressing.
39
00:02:16,616 --> 00:02:18,496
Actually, you know what, I'm
going to go even lower than that.
40
00:02:18,666 --> 00:02:21,956
Datalink layer also defines addressing,
41
00:02:22,036 --> 00:02:26,996
which we're going to find two different
flavors of addresses that we run into.
42
00:02:26,996 --> 00:02:32,426
In the Ethernet world, we have
something known as Mac addresses.
43
00:02:33,596 --> 00:02:39,006
Now, let's say that somebody
comes up with something new --
44
00:02:39,006 --> 00:02:42,886
and let me before I go there
-- the Mac is a standard.
45
00:02:42,976 --> 00:02:48,146
I mean, there is a standard written for how Mac
addresses should look, how they should be used,
46
00:02:48,146 --> 00:02:52,236
how network cards should handle
them and be applied to them
47
00:02:52,236 --> 00:02:53,836
when they're created at the manufacturer.
48
00:02:53,836 --> 00:02:55,166
I mean, there is a whole standard.
49
00:02:55,166 --> 00:02:57,246
So it's not like there's a Datalink standard
50
00:02:57,246 --> 00:03:00,056
that all network card manufacturers
have to adhere to -no, no, no.
51
00:03:00,306 --> 00:03:03,396
There's a Mac or there's an
Ethernet standard that exists
52
00:03:03,396 --> 00:03:06,226
at the Datalink layer that
all the vendors adhere to.
53
00:03:06,226 --> 00:03:08,926
So again, this is kind of a
standard to create standards.
54
00:03:08,926 --> 00:03:12,646
But if down the road, let's say,
I'm sitting here talking to you
55
00:03:12,646 --> 00:03:14,136
and all of a sudden, I'm like, wait a second.
56
00:03:14,136 --> 00:03:16,856
I pause the recording and
I go, "I've got an idea.
57
00:03:17,356 --> 00:03:20,376
I need to create the Jeremy
standard of communication."
58
00:03:20,376 --> 00:03:24,606
I grab my paper and start scribbling
down notes - that's it, it's brilliant,
59
00:03:24,606 --> 00:03:27,186
I've got an improved network
performance 500 times over.
60
00:03:27,456 --> 00:03:30,236
Bam, and I publish my own
little standard right here.
61
00:03:30,236 --> 00:03:31,276
That's totally fine.
62
00:03:31,276 --> 00:03:34,706
I could come up with the Jer standard,
that would be able to plug-in there
63
00:03:34,706 --> 00:03:40,186
at the Datalink layer, and if the world accepts
it, and all the network card manufacturers like,
64
00:03:40,186 --> 00:03:41,556
why didn't we think of that before?
65
00:03:41,556 --> 00:03:43,906
Let's all jump on board, and they
all apply to the Jer standard --
66
00:03:44,146 --> 00:03:46,716
the beauty is we can change that out.
67
00:03:47,116 --> 00:03:51,236
All the network cards could start being
remanufactured, go by the Jer standard now --
68
00:03:51,626 --> 00:03:54,756
but all of these other layers
above it can stay the same.
69
00:03:54,876 --> 00:03:56,816
Now, what's up there?
70
00:03:56,816 --> 00:04:03,226
We talked about the Datalink, which is
really kind of almost network card level.
71
00:04:03,356 --> 00:04:04,046
And what's up here?
72
00:04:04,046 --> 00:04:07,226
Well, you run into things like IP or TCP --
73
00:04:07,226 --> 00:04:11,416
combine them together and there's
your TCP/IP and as you go up.
74
00:04:11,416 --> 00:04:15,786
So I could change out all the network cards in
the world, but never make a change to TCP/IP
75
00:04:15,786 --> 00:04:18,066
at all, because those are
upper layers above that.
76
00:04:18,066 --> 00:04:18,886
Does that make sense?
77
00:04:18,886 --> 00:04:23,166
So again, it's not a network layer standard;
it's a framework to create standards
78
00:04:23,166 --> 00:04:25,586
and IP is one of the standards
that have been developed.
79
00:04:25,946 --> 00:04:30,736
So that's where I'll stop that discussion,
because we will really spend the rest
80
00:04:30,736 --> 00:04:36,376
of the series exploring what standards are,
what they do, and how we can best use them.
81
00:04:36,376 --> 00:04:40,266
So this is also a way to break
down network communication.
82
00:04:40,496 --> 00:04:45,306
When I first started this nugget, I said, you
won't go long without hearing something like,
83
00:04:45,306 --> 00:04:47,416
"Oh, that's a layer 2 issue,"
or "that's a layer 3."
84
00:04:47,416 --> 00:04:50,796
It really helps you figure out
where's the problem in the network?
85
00:04:50,796 --> 00:04:55,876
It helps with trouble-shooting, it helps
with a more modular way of thinking
86
00:04:55,876 --> 00:05:00,206
versus somebody coming up and
screaming, "The network's down."
87
00:05:00,206 --> 00:05:04,756
I mean, when you hear that immediately,
my mind goes to the OSI model.
88
00:05:04,866 --> 00:05:05,826
I'm like, the network's down.
89
00:05:05,826 --> 00:05:06,726
What does that mean?
90
00:05:06,726 --> 00:05:08,976
I'm going, so what do you mean?
91
00:05:08,976 --> 00:05:10,986
Can you not get on the Internet.
92
00:05:10,986 --> 00:05:15,296
Or I always love it when my family calls,
they're like, "Jeremy, the Internet's down."
93
00:05:15,296 --> 00:05:17,646
I'm like, "Oh, a panic, worldwide crisis."
94
00:05:17,646 --> 00:05:20,346
The Internet's not down, it's the
connection to the Internet down.
95
00:05:20,556 --> 00:05:24,626
So I start working through this
and I say, "Oh, okay, let's think -
96
00:05:24,626 --> 00:05:26,616
so are you saying, it's a physical issue?
97
00:05:26,616 --> 00:05:29,426
Let's just take my parents if they
call me -- "Oh, the Internet's down."
98
00:05:29,426 --> 00:05:30,716
"Oh, okay.
99
00:05:30,716 --> 00:05:32,266
Check your connection.
100
00:05:32,446 --> 00:05:35,306
Is your cable - do you see lights on the back?"
101
00:05:35,486 --> 00:05:37,486
Immediately I'm going to the physical layer.
102
00:05:37,486 --> 00:05:39,706
And then I started you know, thinking through.
103
00:05:39,706 --> 00:05:44,676
I'm like, "Okay, well, wait a sec,
if your connections are good" --
104
00:05:44,676 --> 00:05:49,006
so again, I'm already starting to bite my
tongue because I'm like, "well, let me -
105
00:05:49,126 --> 00:05:51,636
let me take a methodical, middle layer approach.
106
00:05:51,636 --> 00:05:53,316
I'll do a ping and I'll do all this."
107
00:05:53,316 --> 00:05:58,846
So it really helps us define instead of
screaming, "The network is down," we can go oh,
108
00:05:58,896 --> 00:06:00,426
well, what about the network is down?
109
00:06:00,426 --> 00:06:01,676
Oh, a Datalink layer.
110
00:06:01,676 --> 00:06:03,706
Okay, there's something going
on with the switches.
111
00:06:03,706 --> 00:06:05,726
There's something going on with
the routers of the network layer.
112
00:06:06,026 --> 00:06:08,266
Again, really helps us to break it down.
113
00:06:08,996 --> 00:06:12,516
It's never good without leaving
with a conspiracy, right.
114
00:06:12,566 --> 00:06:17,066
It is a competing protocol to
see TCP/IP, or should I say,
115
00:06:17,396 --> 00:06:19,986
was, because the competition is over.
116
00:06:19,986 --> 00:06:21,076
And I shouldn't even say that.
117
00:06:21,376 --> 00:06:25,646
The OSM model was not competing;
the OSI protocol was.
118
00:06:26,126 --> 00:06:31,256
Most people don't know the OSI
protocol ever existed, but this model -
119
00:06:32,156 --> 00:06:34,386
it wasn't just something somebody thought up.
120
00:06:34,386 --> 00:06:35,776
They're like, "Hey, let's
just think of a model."
121
00:06:36,076 --> 00:06:36,566
No, no, no.
122
00:06:36,716 --> 00:06:43,046
they thought of the model to describe
this protocol, developed in 1977,
123
00:06:43,046 --> 00:06:46,976
called the OSI protocol,
as a competition to TCP/IP.
124
00:06:47,416 --> 00:06:51,096
The irony is - you remember VHS and beta,
125
00:06:51,166 --> 00:06:55,196
the videocassettes before DVDs
came along -- which one was better?
126
00:06:55,936 --> 00:06:56,966
Beta, right.
127
00:06:56,966 --> 00:06:58,366
Which one won?
128
00:06:59,026 --> 00:07:04,396
VHS did, except in the recording studios
and movie studios and things like that,
129
00:07:04,396 --> 00:07:06,686
VHS won out in the consumer
- I don't know why that is.
130
00:07:06,686 --> 00:07:09,536
It was the lesser standard,
but the consumer shows,
131
00:07:09,536 --> 00:07:12,056
the Mafia got involved, I don't know, VHS won.
132
00:07:12,336 --> 00:07:14,256
Well, same thing back in the day.
133
00:07:14,256 --> 00:07:16,016
We had the OSI protocol and TCP/IP.
134
00:07:16,016 --> 00:07:18,746
It's kind of like, oh, which
one is it going to be?
135
00:07:18,746 --> 00:07:23,796
Well, ooh, looking at the addressing
of OSI it just was complex.
136
00:07:23,916 --> 00:07:25,206
It was hexadecimal.
137
00:07:25,206 --> 00:07:26,426
There was too many addresses.
138
00:07:26,426 --> 00:07:31,146
It was like, wow, why would we
ever need that many addresses,
139
00:07:31,246 --> 00:07:34,026
and thus, fate has a sense of humor.
140
00:07:34,336 --> 00:07:41,686
TCP/IP was chosen, and now, TCP/IP has exhausted
its IP addresses, and we need TCP/IP version 6
141
00:07:41,736 --> 00:07:48,786
to be released, which looks very similar to
the way OSI addressing looked way back in 1977.
142
00:07:48,786 --> 00:07:53,186
So the funny thing about all of
this is not only was TCP/IP chosen,
143
00:07:53,186 --> 00:07:56,056
which was the lesser protocol,
if I can say that.
144
00:07:56,236 --> 00:07:58,966
But TCP/IP had a model of its own.
145
00:07:59,616 --> 00:08:04,626
It's called the DoD model, Department
of Defense model, which people looked at
146
00:08:04,626 --> 00:08:06,916
and they said, "That just isn't very good."
147
00:08:06,916 --> 00:08:13,186
And so what they did was they took the model
of the better protocol and started using it
148
00:08:13,186 --> 00:08:16,126
to describe TCP/IP communication.
149
00:08:16,126 --> 00:08:17,556
Isn't that ironic for you?
150
00:08:18,866 --> 00:08:20,306
Now we know what it is.
151
00:08:20,396 --> 00:08:24,876
Let's take a look at what it does,
and understand this beautiful model.
152
00:08:25,676 --> 00:08:28,636
First off, isn't that weird?
153
00:08:28,816 --> 00:08:30,636
Here I am thinking, this beautiful --
154
00:08:30,636 --> 00:08:36,066
most people are like, sunsets and
mountains, and I'm like ah, the OSI model.
155
00:08:36,386 --> 00:08:39,366
Wipe the tear from my eye.
156
00:08:40,016 --> 00:08:42,316
Top three layers - notice they're purple.
157
00:08:42,776 --> 00:08:44,496
Bottom three layers, notice they're red.
158
00:08:45,146 --> 00:08:48,726
The top three, the reason I changed
the color code on them a little bit is
159
00:08:48,726 --> 00:08:53,456
because these typically happen
before the data leaves the computer.
160
00:08:53,926 --> 00:08:58,116
Normally our network devices
don't care about that stuff.
161
00:08:58,116 --> 00:09:01,496
I'm saying normally, but that
is kind of a blanket statement.
162
00:09:01,496 --> 00:09:06,786
Normally our network devices are highly
focused on these bottom four layers.
163
00:09:06,996 --> 00:09:11,696
And so when you're looking at this, you
go, okay, where do I really want the depth?
164
00:09:11,696 --> 00:09:14,686
It's layers 1 through 4,
and that's the first thing.
165
00:09:14,686 --> 00:09:17,066
That's why knowing the numbers are key.
166
00:09:17,066 --> 00:09:21,066
It's numbered from the bottom
up, and if we got to get back,
167
00:09:21,066 --> 00:09:23,656
you got to memorize the layers
-- but that's just the beginning.
168
00:09:23,966 --> 00:09:30,146
The acronym I always remember is
please do not throw sausage pizza away,
169
00:09:30,516 --> 00:09:31,836
because that would be a travesty.
170
00:09:31,956 --> 00:09:36,106
So if you remember that, that will
be a good way to remember the layers.
171
00:09:37,036 --> 00:09:42,046
But it also explains my somewhat of a joke, if
you want to call it that, that at the beginning
172
00:09:42,366 --> 00:09:47,426
of the series where I said, a lot of
people might say, oh, it's a layer 8 issue.
173
00:09:47,426 --> 00:09:50,666
Well, that usually is describing
the user at the terminal.
174
00:09:50,666 --> 00:09:54,676
Layer 7 is where the OSM model stops, so there's
somebody saying, oh, it's a user problem.
175
00:09:54,676 --> 00:09:57,956
So that's - if you haven't heard
that joke, you will before long.
176
00:09:57,956 --> 00:10:00,726
So let's break it down.
177
00:10:00,726 --> 00:10:04,276
Let me first off -- I'm going
to hit this in two ways.
178
00:10:04,276 --> 00:10:07,976
One, I want to give you fly-by
description of what these layers do.
179
00:10:07,976 --> 00:10:12,016
And again, the fly-by version, because
I know if I just kind of go, okay,
180
00:10:12,016 --> 00:10:16,166
here's the laundry list, it's going to quickly
be forgotten - where I want to spend the time is
181
00:10:16,166 --> 00:10:19,616
where we watch data being sent
between clients and servers,
182
00:10:19,616 --> 00:10:21,436
and then we break it down one by one.
183
00:10:21,436 --> 00:10:23,246
So let's go piece by piece.
184
00:10:23,246 --> 00:10:25,166
First off, application layer.
185
00:10:25,166 --> 00:10:27,986
Now, again, let me set the paradigm.
186
00:10:28,246 --> 00:10:30,686
This is a standard of standards, right.
187
00:10:30,686 --> 00:10:34,496
The application layer, it's not like
when somebody builds a computer, they go,
188
00:10:34,496 --> 00:10:36,546
okay, I need to install the OSI model.
189
00:10:36,876 --> 00:10:39,446
No, no, no, they install
standards from the OSI model.
190
00:10:39,446 --> 00:10:41,596
So let's talk about the application
layer up top.
191
00:10:42,036 --> 00:10:48,436
The application layer is what the application
itself interfaces with if it's network aware.
192
00:10:49,136 --> 00:10:50,056
So let me define that.
193
00:10:50,056 --> 00:10:53,476
Let's say you have an application
like Solitaire on your computer.
194
00:10:53,856 --> 00:10:57,426
Not even going to look at the OSI
model, because you play it yourself,
195
00:10:57,426 --> 00:10:59,146
unless you're playing it online somehow.
196
00:10:59,766 --> 00:11:03,646
You're playing it yourself on the local
computer, so that's not an application
197
00:11:03,646 --> 00:11:07,316
that would interface with this
layer, but World of War Craft would.
198
00:11:07,716 --> 00:11:10,756
Half-Life, Counter- Strike -- whatever.
199
00:11:10,916 --> 00:11:13,766
I'm just thinking of online
games, but let's go productivity.
200
00:11:14,336 --> 00:11:19,976
Internet Explorer, Firefox, Google Chrome,
peer-to-peer file share transfers --
201
00:11:19,976 --> 00:11:23,036
anything that is network-aware
interfaces with this.
202
00:11:23,036 --> 00:11:28,646
So when you're an application writer, let's
say I or you decide to develop an application.
203
00:11:28,646 --> 00:11:31,376
You're writing the code, this
is what my application does.
204
00:11:31,376 --> 00:11:34,006
It's a putt putt golf application
that works on the network --
205
00:11:34,386 --> 00:11:40,346
you don't have to worry about here's how
my application communicates to the network,
206
00:11:40,346 --> 00:11:44,706
because there are well-known APIs --
application programming interfaces --
207
00:11:44,706 --> 00:11:48,626
that are written at the application
layer for Windows or for Apple or for --
208
00:11:48,626 --> 00:11:52,236
I should say OSX -- or for all the other
operating systems that are out there.
209
00:11:52,236 --> 00:11:57,506
So I write my putt putt golf application
to talk to that API which says, okay,
210
00:11:57,506 --> 00:11:59,356
I'm going to start this network communication.
211
00:11:59,616 --> 00:12:03,156
That way it saves me from having
to write all of the code of like,
212
00:12:03,156 --> 00:12:05,526
this is how you talk to the
network within Windows.
213
00:12:05,526 --> 00:12:06,166
No, no, no.
214
00:12:06,456 --> 00:12:08,516
Just let Windows do that.
215
00:12:08,516 --> 00:12:09,886
They've written the APIs for you.
216
00:12:10,156 --> 00:12:13,116
So the application layer is where the
application exists, and provides -
217
00:12:13,426 --> 00:12:15,746
this provides network access
to the applications.
218
00:12:15,936 --> 00:12:16,866
Presentation layer.
219
00:12:16,866 --> 00:12:19,316
So let's say we've got an application.
220
00:12:19,316 --> 00:12:20,586
It's sending some data down here.
221
00:12:21,166 --> 00:12:24,856
The presentation layer generifies the data.
222
00:12:25,566 --> 00:12:27,856
Yes, I just made that word up.
223
00:12:27,856 --> 00:12:32,906
It turns it into well-known formats, like,
for example, if I'm communicating pictures,
224
00:12:32,906 --> 00:12:40,146
I might store them in jpeg or gif or png format,
which is a well-known format that's understood.
225
00:12:40,146 --> 00:12:47,036
So this is where a lot of our standards exist
for how to format things, htm, html, http --
226
00:12:47,036 --> 00:12:51,316
those kind of things exist at
the presentation layer, html,
227
00:12:51,316 --> 00:12:55,676
a generic language of formatting
web pages online.
228
00:12:55,676 --> 00:12:58,636
You've got Java, you've got encryption --
229
00:12:58,636 --> 00:13:03,906
there's a big one, encryption is
generic at the presentation layer.
230
00:13:03,906 --> 00:13:06,266
And when I say that, I know
some people are like, what?
231
00:13:06,896 --> 00:13:08,026
Generic encryption.
232
00:13:08,516 --> 00:13:09,776
Say no such thing.
233
00:13:09,776 --> 00:13:11,046
Encryption is secure.
234
00:13:11,276 --> 00:13:15,886
Well, yes, it is very secure but it is
generically secure, as in you wouldn't be able
235
00:13:15,886 --> 00:13:20,656
to surf the web securely and do online
bankings if there wasn't a generic
236
00:13:20,656 --> 00:13:24,006
or well-known industry-supported
encryption standard
237
00:13:24,006 --> 00:13:26,586
that anything could use, and it's very secure.
238
00:13:26,806 --> 00:13:29,966
Now, I'll talk about how that is later
- is that going to be the series?
239
00:13:29,966 --> 00:13:33,856
Maybe. That'd be fun to talk about --
how generic encryption works really well,
240
00:13:34,166 --> 00:13:35,716
but that's all presentation layer.
241
00:13:36,186 --> 00:13:39,456
Session layer, just, this
one's probably the most bland.
242
00:13:39,456 --> 00:13:44,816
It starts and ends session, maintains to
make sure that the session is still active.
243
00:13:44,816 --> 00:13:46,696
Creates session IDs in the operating system.
244
00:13:46,696 --> 00:13:51,126
So this is all again, operating
system stuff, application stuff, okay.
245
00:13:52,516 --> 00:13:58,156
So now we come to the transport layer,
the first real layer that defines -
246
00:13:58,156 --> 00:14:02,826
this is dealing with the network,
because it defines how the data is set.
247
00:14:03,416 --> 00:14:06,916
So right here your application will choose.
248
00:14:06,916 --> 00:14:10,026
Now, again, it's not you saying I want
it to be sent this way or that way --
249
00:14:10,026 --> 00:14:13,656
it's the application that people who write
the application say, I want this to be sent.
250
00:14:13,656 --> 00:14:17,406
For instance, one example would
be reliably or unreliably.
251
00:14:18,096 --> 00:14:19,706
That seems like an easy decision.
252
00:14:19,706 --> 00:14:21,916
It's like, well, I want reliable.
253
00:14:22,176 --> 00:14:23,476
Well, what does that mean?
254
00:14:23,476 --> 00:14:27,846
Let me match this up to some protocols
we're going to see -- TCP versus UDP.
255
00:14:27,846 --> 00:14:30,586
And I say, well, I always
want reliability, don't I?
256
00:14:31,016 --> 00:14:31,876
Not necessarily.
257
00:14:32,216 --> 00:14:37,776
What reliability says is I'm going to send a
packet, and I want the other side to receive it,
258
00:14:37,776 --> 00:14:43,106
and to make sure that it receives it, I want it
to send an acknowledgement back to me saying,
259
00:14:43,186 --> 00:14:45,626
I got it, so I know that that packet got there.
260
00:14:46,086 --> 00:14:48,716
Well, I would say that's
huge for data applications.
261
00:14:48,716 --> 00:14:50,256
You absolutely want reliability.
262
00:14:50,666 --> 00:14:55,556
But what about applications like voice-over
IP, where you've got somebody talking
263
00:14:55,556 --> 00:14:57,596
on the phone to someone else over here?
264
00:14:57,956 --> 00:14:59,896
Well, this is real-time conversation.
265
00:14:59,896 --> 00:15:03,276
If a packet gets dropped and maybe
there's a glip in the conversation,
266
00:15:03,586 --> 00:15:07,446
there's no use in sending that at
a later time, because it's gone.
267
00:15:07,446 --> 00:15:09,886
The time is past.
268
00:15:09,886 --> 00:15:14,466
Or, like video, you're watching
video on your TV.
269
00:15:14,466 --> 00:15:18,636
Almost every TV works over a network
nowadays, as you're watching movie on Netflix
270
00:15:18,636 --> 00:15:23,256
or your cable provider's
streaming live media to you.
271
00:15:23,566 --> 00:15:25,186
And some data gets dropped.
272
00:15:25,186 --> 00:15:28,546
You might see the screen kind of get a little
jittery, if some data's dropped, but again,
273
00:15:28,546 --> 00:15:32,776
there's no sense in sending that later,
so that would be an unreliable choice.
274
00:15:32,776 --> 00:15:36,216
So for any real time communication,
unreliable's the way you want to go.
275
00:15:36,706 --> 00:15:42,546
Also with this layer you have application
separation, which really deals with ports.
276
00:15:45,456 --> 00:15:50,436
Yes, that's what it deals with, and that's
what we're going to talk about when I unpack.
277
00:15:50,436 --> 00:15:53,476
I've got a live scenario, I'm like, I
just don't even want to dive into that.
278
00:15:53,476 --> 00:15:56,836
So just remember, you run more than
one application and a time, right.
279
00:15:57,166 --> 00:15:59,506
That's the job of the transport layers,
280
00:15:59,506 --> 00:16:01,806
to keep all of that separate
for your network communication.
281
00:16:02,426 --> 00:16:03,866
Now, we come down to the network layer.
282
00:16:04,196 --> 00:16:06,946
This is where you have logical addressing.
283
00:16:08,846 --> 00:16:15,706
So logical addressing nowadays, boils down
to IP addresses, but it wasn't always so.
284
00:16:16,226 --> 00:16:20,266
Back in the day when I was in networking
and first learning networking myself,
285
00:16:20,266 --> 00:16:26,026
there was protocols like IPX/SPX,
AppleTalk, Net buoy, I mean,
286
00:16:26,026 --> 00:16:28,976
these protocols were widespread
and that was back in the day.
287
00:16:28,976 --> 00:16:31,136
I used to be -- I think I still am --
288
00:16:31,136 --> 00:16:34,976
a certified Novell instructor
that I haven't taught for decades
289
00:16:34,976 --> 00:16:38,196
and I don't remember a thing about, but that's
- I mean, I remember back in the day being, dah,
290
00:16:38,196 --> 00:16:46,996
IPS/SPX -- I can't even say it -- IPS/SPX,
it's the future, TCP/IP, who needs it.
291
00:16:46,996 --> 00:16:48,266
So those were all gone.
292
00:16:48,536 --> 00:16:52,696
Those were standards that are long since
deprecated and now everything is IP.
293
00:16:52,756 --> 00:16:58,506
So a logical address to say, this
is where I want my data to go.
294
00:16:58,726 --> 00:17:00,546
Causes a lot of confusion.
295
00:17:01,156 --> 00:17:02,636
When I come down here and tell you that --
296
00:17:02,636 --> 00:17:08,556
well, actually, the Datalink layer represents
the physical address, which is where I get
297
00:17:08,556 --> 00:17:12,776
to say, this is where I want my data to go.
298
00:17:14,186 --> 00:17:19,786
Wait a sec -- scratching a pad-- I will say
this, this has caused a lot of confusion
299
00:17:19,786 --> 00:17:21,586
for a lot of people learning networking.
300
00:17:21,586 --> 00:17:22,496
Well, what do you mean?
301
00:17:22,496 --> 00:17:24,056
So this is telling your data where to go?
302
00:17:24,266 --> 00:17:27,026
Uh-huh. And - and this is
telling your data where to go?
303
00:17:27,576 --> 00:17:30,086
Uh-huh. But it's different.
304
00:17:30,596 --> 00:17:38,816
There's a way of communicating within a network
that's different than communicating end to end.
305
00:17:39,156 --> 00:17:42,476
Let me give you a brief example that
I think will really demystify it.
306
00:17:42,856 --> 00:17:44,806
I've got my computer right here.
307
00:17:45,486 --> 00:17:48,666
I want to talk to that server over there.
308
00:17:49,386 --> 00:17:55,586
The way networks work, I can't just -- let's
say I want to send a message over that --
309
00:17:55,586 --> 00:17:59,486
I don't know, add an entry to a
database or something like that.
310
00:17:59,486 --> 00:18:02,026
I'm saying 50 people showed
up for a conference today.
311
00:18:02,026 --> 00:18:04,966
So I type in 50 and hit the enter key,
so it's going to send the number 50.
312
00:18:05,236 --> 00:18:06,676
Well, that's the payload.
313
00:18:06,676 --> 00:18:08,366
That's the data that's actually being sent.
314
00:18:08,506 --> 00:18:13,946
But I can't just -- it's not like you know,
finding Nemo, where I just take 50 and I'm like,
315
00:18:13,946 --> 00:18:17,456
okay, go, Nemo, go, find your home.
316
00:18:17,606 --> 00:18:20,736
I have to tell it where to go, so I'm going
to have to say, well, you're going to go
317
00:18:20,736 --> 00:18:24,036
to the destination IP address of that server.
318
00:18:25,036 --> 00:18:28,186
But unfortunately, it doesn't work that way.
319
00:18:28,186 --> 00:18:31,986
Again, it's not like the fish where I
can just say, okay, now, go find you way.
320
00:18:32,436 --> 00:18:36,956
No, no, no, I actually have to say, I
want you to go right here to this router,
321
00:18:37,186 --> 00:18:40,846
because that router will know
how to get to that IP address.
322
00:18:41,266 --> 00:18:43,536
Ah, okay, now we have a problem -- wait a sec.
323
00:18:43,536 --> 00:18:47,346
I have to tell this number
50, we had 50 people show up.
324
00:18:47,346 --> 00:18:50,616
I'm typing that in my database
program, 50, hit the enter key.
325
00:18:50,866 --> 00:18:54,246
I have to tell it to go to this router,
because this router will know how to get
326
00:18:54,246 --> 00:18:59,136
to the IP address of where I'm really going,
thus, now, we're starting to see the need.
327
00:18:59,136 --> 00:19:03,966
Okay, wait a sec, we have two addresses,
one of them -- circle, circle --
328
00:19:04,576 --> 00:19:09,496
has the ability to show me where
I go on my local area network --
329
00:19:10,556 --> 00:19:14,906
the other one tells me where I go end-to-end.
330
00:19:16,286 --> 00:19:19,776
So think of the logical addressing
is this is going to be how you get
331
00:19:19,776 --> 00:19:23,406
to your final destination,
and that should never change.
332
00:19:23,716 --> 00:19:28,926
That's my destination; that's where I'm
going to -- that needs to stay the same.
333
00:19:28,926 --> 00:19:32,086
However, when we come to this
one, that's going to tell me how
334
00:19:32,086 --> 00:19:34,036
to get there from this network's perspective.
335
00:19:34,566 --> 00:19:37,856
But also remember, we have a network
here and we have a network here.
336
00:19:38,176 --> 00:19:41,116
So this one may change quite
a bit on our little journey.
337
00:19:41,116 --> 00:19:43,826
Again, more on that as we
start breaking this down.
338
00:19:43,876 --> 00:19:48,426
Physical layer, this is where
we have electrical signals.
339
00:19:48,426 --> 00:19:49,696
You get shocked.
340
00:19:49,696 --> 00:19:52,396
This is where ones and zeros prevail.
341
00:19:52,396 --> 00:19:54,576
We're actually sending data across the network.
342
00:19:54,576 --> 00:19:58,836
If you hear somebody say, oh, it's a physical
layer problem, I mean, where does your mind go?
343
00:19:58,836 --> 00:20:02,466
Something's broken, right, like
the cable is not plugged in,
344
00:20:02,466 --> 00:20:06,396
or somebody kicks the network cord --
or I found this more times than once --
345
00:20:06,606 --> 00:20:12,186
I have a network cable on the floor in my
office and I have a rolling chair and I just go,
346
00:20:12,186 --> 00:20:15,176
[rolling sound], roll right over that
network cable, destroy the network cable.
347
00:20:15,176 --> 00:20:19,976
So physical layer issues happen all the time,
so physical layer is just what it sounds like.
348
00:20:19,976 --> 00:20:24,586
So now let's talk about this
from a practical sense.
349
00:20:25,776 --> 00:20:34,486
I've got an online bank account, and let's
just say it is with BankofArizona.com --
350
00:20:34,486 --> 00:20:37,406
I don't even know if there is such
a thing, but we'll make it up.
351
00:20:37,406 --> 00:20:43,416
So I'm going to go to my online bank account
and transfer $50 from my checking account
352
00:20:43,416 --> 00:20:45,756
to my savings account because
that's what I'd like to do.
353
00:20:45,916 --> 00:20:49,476
So I log into the -- let's kind
of fast forward a little bit --
354
00:20:49,476 --> 00:20:53,106
I log into the website, my user name, password
-- I get to the point where I say, okay,
355
00:20:53,106 --> 00:20:59,266
transfer $50, so $50 is my transfer
-- from checking to savings.
356
00:20:59,656 --> 00:21:02,346
And I type in the 50 and I click submit.
357
00:21:02,346 --> 00:21:03,346
Okay, what happens?
358
00:21:03,346 --> 00:21:06,866
First things first, I am using a browser.
359
00:21:07,346 --> 00:21:14,316
It could be Internet Explorer, it could be
Firefox, it could be Chrome, down the list we go
360
00:21:14,316 --> 00:21:16,406
through all the different web
browsers that I could be using.
361
00:21:16,766 --> 00:21:21,336
those web browsers interface directly with
the application layer API, which says,
362
00:21:21,336 --> 00:21:24,856
I have data to send across the network.
363
00:21:24,856 --> 00:21:25,666
This is the data.
364
00:21:25,836 --> 00:21:29,416
This is the payload, if you will, that
I'm saying, this is my $50 transfer.
365
00:21:29,416 --> 00:21:33,006
So the first thing you know, this is
before it even leaves the application --
366
00:21:33,166 --> 00:21:38,276
I'm going to format that into the
language that the web server understands.
367
00:21:38,276 --> 00:21:40,466
I mean, over here, we have a web server.
368
00:21:40,466 --> 00:21:42,846
I mean, it could be running IIS for Microsoft.
369
00:21:42,846 --> 00:21:48,706
Could be running Apache from -- well,
it's Open Source -- Linux community.
370
00:21:48,706 --> 00:21:52,426
It could be running Websphere from IBM.
371
00:21:52,426 --> 00:21:56,306
There's all these different web servers that
are out there, and you might be saying, okay,
372
00:21:56,306 --> 00:21:57,606
Jeremy, my God, what's your point?
373
00:21:57,736 --> 00:21:59,086
Well, my point is look at this.
374
00:21:59,366 --> 00:22:01,226
We've got all kinds of different web browsers,
375
00:22:01,706 --> 00:22:03,706
and we've got all kinds of
different web servers.
376
00:22:04,106 --> 00:22:06,616
What's to say that if I'm
using Chrome and looking
377
00:22:06,616 --> 00:22:09,066
at an IIS-supported website that it looks right?
378
00:22:09,376 --> 00:22:13,406
Or what's to say that if I'm using Firefox
looking at an Apache website, it looks right?
379
00:22:13,566 --> 00:22:16,866
Well, that's because there's standards
that are created to presentation layer.
380
00:22:17,076 --> 00:22:20,056
As a matter of fact, Microsoft is
the biggest bender of the rules --
381
00:22:20,056 --> 00:22:24,746
not to throw them under the bus -- but with
Internet Explorer you'll come to some sites
382
00:22:24,746 --> 00:22:27,546
with Chrome or Firefox and it's like -- an --
383
00:22:27,546 --> 00:22:30,826
sorry, this is an Internet
Explorer only website.
384
00:22:31,136 --> 00:22:37,076
Why? Because Microsoft has written
IIS in such a way for some languages
385
00:22:37,076 --> 00:22:39,376
that only Internet Explorer supports it.
386
00:22:39,376 --> 00:22:42,976
Now, those are becoming less and less and less,
because these other browsers are becoming more
387
00:22:42,976 --> 00:22:46,306
and more popular where Internet
Explorer used to rule the world.
388
00:22:46,516 --> 00:22:49,056
But all of this is handled
by the presentation layer.
389
00:22:49,576 --> 00:22:52,746
We've got standards that things
should be written to on this side,
390
00:22:52,816 --> 00:22:57,256
standards like active server pages,
standards like Java, standards like html,
391
00:22:57,256 --> 00:22:59,936
standards like blah, blah, blah, blah
-- this list could go on and on --
392
00:22:59,936 --> 00:23:02,776
jpeg pictures, generic -- we're at a bank.
393
00:23:02,776 --> 00:23:05,176
This is obviously encrypted,
right, so encryption standards.
394
00:23:05,176 --> 00:23:11,516
So right now, our web program is taking our $50
transfer and let's just say it's encrypting it.
395
00:23:11,696 --> 00:23:16,896
It's formatting it in whatever the
web server has suggested that it uses,
396
00:23:16,896 --> 00:23:19,216
to send that $50 transfer back over.
397
00:23:19,546 --> 00:23:22,036
So moves down to session layer.
398
00:23:22,036 --> 00:23:24,946
Now, session layer doesn't have much to
do here because it's already started.
399
00:23:24,946 --> 00:23:28,436
We went to the website at some point, it stated
the session, maintains that session and so on.
400
00:23:28,436 --> 00:23:30,506
Okay, now we come down to the transport layer.
401
00:23:31,126 --> 00:23:34,506
Major action happening here
from the network perspective.
402
00:23:35,636 --> 00:23:41,116
We have to send this $50
transfer across the wire.
403
00:23:42,096 --> 00:23:43,186
First things first.
404
00:23:43,636 --> 00:23:48,266
Do you think that this would be a good
one for reliability or unreliable?
405
00:23:48,876 --> 00:23:55,786
All hands go up -- reliability, which would
be using -- choosing to use the TCP protocol.
406
00:23:55,786 --> 00:23:57,926
I want to know when I click the Submit button
407
00:23:57,926 --> 00:24:00,836
that that $50 transfer got
there, and it's happening.
408
00:24:00,836 --> 00:24:04,016
Like I need those $50 to go into savings.
409
00:24:04,016 --> 00:24:06,036
Maybe the crisis should be the other way.
410
00:24:06,036 --> 00:24:07,136
I need it in my checking.
411
00:24:07,136 --> 00:24:08,016
I need to buy something.
412
00:24:08,066 --> 00:24:12,306
So we're going to choose the TCP
protocol, but then we go one step further.
413
00:24:12,736 --> 00:24:23,806
TCP actually has a series of ports, matter
of fact 1 through 65,530, oh, is it 5 or 6?
414
00:24:24,416 --> 00:24:26,066
It's 5. I had to check.
415
00:24:26,066 --> 00:24:28,346
There's some things that are
6, some things that are 5.
416
00:24:28,696 --> 00:24:31,466
So 65,000 ports.
417
00:24:31,466 --> 00:24:33,016
Now, what does this mean?
418
00:24:33,156 --> 00:24:40,356
Well, the port defines what applications -- kind
of think of it like a tag for your application.
419
00:24:40,786 --> 00:24:42,856
So let's say it this way.
420
00:24:43,396 --> 00:24:46,156
This server might be running the web server.
421
00:24:47,536 --> 00:24:50,166
It might also be an e-mail server.
422
00:24:51,136 --> 00:24:55,836
It might also be an online gaming server.
423
00:24:56,176 --> 00:24:58,246
We don't know -- I mean,
Bank of Arizona, who's that?
424
00:24:58,376 --> 00:25:00,696
Who knows what they could be running over there.
425
00:25:00,696 --> 00:25:02,726
They could be running all kinds
of different services on there.
426
00:25:02,726 --> 00:25:09,486
So I want to know, when my $50 transfer goes
across the wire, that it's going to be going
427
00:25:09,486 --> 00:25:12,576
to the correct application on this side --
428
00:25:12,576 --> 00:25:15,666
IIS or Apache or whatever web server
they're actively running over there.
429
00:25:15,796 --> 00:25:18,336
And it doesn't end up going to their
e-mail server, which would say,
430
00:25:18,336 --> 00:25:20,646
what am I doing with a $50 transfer?
431
00:25:21,126 --> 00:25:25,266
The way I designate that -- and I keep
saying "I," I being the application
432
00:25:25,266 --> 00:25:29,876
or I being the computer -- is by
putting a destination port on there.
433
00:25:29,876 --> 00:25:35,706
So it just so happens that web servers
use two very common destination ports.
434
00:25:35,786 --> 00:25:39,796
Port 80 is known as http.
435
00:25:39,796 --> 00:25:43,516
Every time you go to a website, your
web browser is actually squeezing it --
436
00:25:43,516 --> 00:25:49,786
like you type in Google.com, your web
browser's actually doing behind the scenes,
437
00:25:49,786 --> 00:25:55,026
put a little :80 on there, so that when we go
to Google, we're accessing the web services
438
00:25:55,026 --> 00:26:00,426
on the Google server, not email services
or any of the other services I rattled out,
439
00:26:00,426 --> 00:26:02,676
but the web browser does that for
you; you don't have to know that.
440
00:26:02,926 --> 00:26:08,946
The other one that it uses is Port 443, which
is https, which is what it would do in our case,
441
00:26:08,946 --> 00:26:14,036
because we have a secure session,
encrypted session here with this web server,
442
00:26:14,276 --> 00:26:21,006
so I would actually tag onto the front of
this, destination port 443, destination.
443
00:26:21,006 --> 00:26:27,426
By the way, what I'm doing here, this
is a process -- notice encapsulation.
444
00:26:28,086 --> 00:26:33,686
So when I'm sending this $50 transfer,
behind the scenes it's actually adding data
445
00:26:33,686 --> 00:26:36,436
to the front of my little payload,
this is what I want to send.
446
00:26:36,436 --> 00:26:37,446
But again, it's not Nemo.
447
00:26:37,446 --> 00:26:39,036
We can't just say, go find your home.
448
00:26:39,166 --> 00:26:42,316
We have to add all this stuff to tell
it where it's going and how it's going
449
00:26:42,316 --> 00:26:44,206
and what it's going to do when it gets there.
450
00:26:44,466 --> 00:26:48,406
That's all -- remember I said in the previous
nugget when I was talking about the speed
451
00:26:48,406 --> 00:26:51,146
of the network -- this is the
overhead stuff that's being added
452
00:26:51,146 --> 00:26:54,566
to every single packet that's
being sent -- it's encapsulation.
453
00:26:54,566 --> 00:26:56,136
Now, wait a sec.
454
00:26:56,306 --> 00:26:59,736
That tells it where to go on this
computer or this server over here,
455
00:26:59,736 --> 00:27:03,576
but there's an often forgotten
piece, which is where it came from.
456
00:27:03,906 --> 00:27:07,136
I'm not talking the IP address,
like oh, that's you, Mr. Computer --
457
00:27:07,336 --> 00:27:10,406
I'm talking about the application
on that computer.
458
00:27:10,866 --> 00:27:12,946
Chances are if you're like me,
you've got that ADD thing going
459
00:27:12,946 --> 00:27:15,816
to where you've got the web browser going
to where you've got the web browser going
460
00:27:15,816 --> 00:27:19,116
to your bank but you have
Pandora's open streaming music.
461
00:27:19,116 --> 00:27:22,576
You've got the little -- what do they call it
-- the waste of time bar in Windows on the right
462
00:27:22,576 --> 00:27:24,146
with the stock quotes, the weather --
463
00:27:24,586 --> 00:27:28,866
all of these are network applications
that are constantly receiving data.
464
00:27:29,086 --> 00:27:32,776
So when I send my $50 transfer to
this web server over here, saying,
465
00:27:32,776 --> 00:27:39,966
I want $50 in my savings, and it comes back to
me, I want to make sure that my web browser,
466
00:27:39,966 --> 00:27:42,436
Chrome or Internet Explorer, says, success!
467
00:27:42,436 --> 00:27:46,406
Your $50 was transferred, and it's
not Pandora going $50 has been --
468
00:27:46,406 --> 00:27:47,916
I mean, it wouldn't even understand it.
469
00:27:47,916 --> 00:27:49,086
I want to make sure it comes
from the right thing.
470
00:27:49,086 --> 00:27:52,746
So again, the application
adds a source port as well.
471
00:27:53,316 --> 00:27:54,756
It's a dynamic port.
472
00:27:54,756 --> 00:27:56,356
These are considered well-known.
473
00:27:57,686 --> 00:28:02,676
Matter of fact, ports 1 through
1024 are all considered well-known.
474
00:28:02,676 --> 00:28:03,686
Like, you can't touch those.
475
00:28:03,686 --> 00:28:07,196
Nobody touches those ports for new applications
476
00:28:07,196 --> 00:28:10,316
that they create unless they do all
these sophisticated applications,
477
00:28:10,316 --> 00:28:12,326
because those are all well-known.
478
00:28:12,496 --> 00:28:15,976
Up here, these are considered
dynamic ports, that Windows,
479
00:28:15,976 --> 00:28:19,806
when I open Internet Explorer,
it's going to generate for me.
480
00:28:19,876 --> 00:28:22,836
Matter of fact, I'm having a spontaneous moment.
481
00:28:22,936 --> 00:28:24,076
Let's do this for a second.
482
00:28:24,966 --> 00:28:28,086
I'm going to open a web browser on my computer.
483
00:28:28,086 --> 00:28:31,356
Let-s just -- I've got Google
Chrome, right there.
484
00:28:31,866 --> 00:28:36,796
And you know what, my home page is cbtnuggets,
which is what everybody's page should be.
485
00:28:37,146 --> 00:28:43,576
Just by doing that, I opened Google Chrome,
it created a session with cbtnuggets.com.
486
00:28:43,836 --> 00:28:44,926
Let's check the results.
487
00:28:44,926 --> 00:28:50,736
I'm going to go here and go to a command
prompt and type in the command netstat.
488
00:28:52,326 --> 00:28:56,716
netstat shows all the open
connections coming from my computer.
489
00:28:56,716 --> 00:29:01,636
Now, I'm looking here, I'm
going, whoa, wait a sec.
490
00:29:01,986 --> 00:29:09,426
I've got ec2 such and such,
I've got 80, going http -- what?
491
00:29:10,366 --> 00:29:11,906
Huh? What is this?
492
00:29:11,906 --> 00:29:13,056
How am I going to read this?
493
00:29:13,466 --> 00:29:20,416
Well, first off, when I went to cbtnuggest.com,
which is my home page, this is not a website
494
00:29:20,416 --> 00:29:21,986
that is just sitting on a server.
495
00:29:22,546 --> 00:29:26,096
Everything from this is probably
spread across many different servers.
496
00:29:26,096 --> 00:29:30,806
What you're actually coming to, if I could
draw -- and this is how most websites are.
497
00:29:31,056 --> 00:29:35,676
When you go to a website -- actually,
here, this will help show it even better.
498
00:29:35,676 --> 00:29:39,386
Let's go to the biggest waste of
time website in the world -- MSN.com.
499
00:29:39,386 --> 00:29:41,486
Holy cow, the iPhone 5 is out!
500
00:29:42,506 --> 00:29:43,756
That's something I have to look at.
501
00:29:43,756 --> 00:29:49,666
I'm not going to pause the recording; I'm
going to finish this, because let's look at --
502
00:29:49,776 --> 00:29:51,676
this is news of the day, by the way.
503
00:29:51,676 --> 00:29:54,576
So MSN.com, I come here and I look, I go, okay,
504
00:29:54,576 --> 00:29:56,946
this little butterfly, MSN,
this came from a server.
505
00:29:56,946 --> 00:30:02,306
Matter of fact, if I go back here, and I hit the
up arrow, this thing will just scroll and scroll
506
00:30:02,306 --> 00:30:03,816
and scroll and scroll and scroll, scroll for --
507
00:30:03,866 --> 00:30:06,666
it's kind of hanging, trying to figure
out what name these are and all that,
508
00:30:06,666 --> 00:30:11,026
but it will continue to scroll through all
kinds of different servers all over the place,
509
00:30:11,026 --> 00:30:16,766
because we've got this Buy Stocks, this
little pop star joining XFactor, gossip --
510
00:30:16,766 --> 00:30:19,476
this image -- these all came
from a different server.
511
00:30:19,476 --> 00:30:23,556
If I scroll down, we've got the
NFL rookie, something or another.
512
00:30:23,556 --> 00:30:27,376
This really -- MSN.com, if you
want to know, is just a framework.
513
00:30:27,376 --> 00:30:30,216
Like the first server that
you hit, says, okay, this one,
514
00:30:30,396 --> 00:30:32,566
this picture comes from this server over here.
515
00:30:32,566 --> 00:30:34,686
This ad came from this server over here.
516
00:30:34,916 --> 00:30:38,386
And oh, by the way, these scrolling
pictures on here, that was actually fed
517
00:30:38,386 --> 00:30:42,536
by three different servers over here, so when
my Internet Explorer came here, it's like,
518
00:30:42,536 --> 00:30:44,406
hey, I'm just wanting one session.
519
00:30:44,586 --> 00:30:47,916
It got the feedback, no, you need to go
here and here and here and here and here,
520
00:30:47,916 --> 00:30:51,476
and that's why we come here to the
command prompt, and it's still going.
521
00:30:51,686 --> 00:30:55,306
It's still trying to find all the different
sessions that I'm using, because it's saying,
522
00:30:55,306 --> 00:30:59,566
okay, well, I was sent to this server to
get a web page using http and this server
523
00:30:59,566 --> 00:31:05,486
and this server and this server and this ser
-- notice, they all have this IP address:http.
524
00:31:05,576 --> 00:31:11,646
Now, Windows is very kind in that it
hides -- it should actually say, port 80,
525
00:31:11,646 --> 00:31:15,036
or right here it would say port 443 https,
526
00:31:15,036 --> 00:31:17,176
but you can see that we're
just getting spider-webbed
527
00:31:17,436 --> 00:31:19,456
to all of these different locations.
528
00:31:19,456 --> 00:31:26,246
Now, that's the foreign address, that's the
destination, so that's where we're going.
529
00:31:26,796 --> 00:31:30,266
On this side of things, I can see my computer.
530
00:31:30,266 --> 00:31:30,956
This is me.
531
00:31:31,056 --> 00:31:36,076
I have the IP address, 1723100.72.
532
00:31:36,076 --> 00:31:41,156
Notice I've got :490, :49, :50, :50 -- all
of these are different source port numbers,
533
00:31:41,536 --> 00:31:47,166
so when my web browser went to those websites
it actually got sent to many different websites,
534
00:31:47,166 --> 00:31:50,166
and generated all of these different
unique source port numbers --
535
00:31:50,226 --> 00:31:55,546
each packet would have one
unique source port number,
536
00:31:55,546 --> 00:32:01,496
so when these web servers responded back,
my computer knows exactly where to put them.
537
00:32:01,956 --> 00:32:05,766
So if we were to look - if we were to
talk to this computer and somehow be able
538
00:32:05,766 --> 00:32:10,036
to peel this web page back, this tiger
right here would be able to say --
539
00:32:10,036 --> 00:32:14,116
the tiger wouldn't say anteing but if we
could peel it back it would actually say,
540
00:32:14,116 --> 00:32:22,926
65.55.239.146:http is where this came from.
541
00:32:23,046 --> 00:32:28,366
And it came from the source in here of
this, so when tiger image got sent back,
542
00:32:28,596 --> 00:32:33,126
my web browser knew exactly what application to
send it to and where to put it on the web page.
543
00:32:33,126 --> 00:32:34,666
That comes into the web page formatting.
544
00:32:34,666 --> 00:32:37,366
So that's the idea of port numbers.
545
00:32:37,366 --> 00:32:42,466
So every single packet, my $50 transfer to the
bank, goes to a destination on the web server
546
00:32:42,696 --> 00:32:46,546
but always has a source that
the web server talks back to.
547
00:32:46,856 --> 00:32:47,836
Big layer, huh?
548
00:32:48,156 --> 00:32:49,436
That's the transport layer.
549
00:32:49,606 --> 00:32:55,456
Huge. The network layer deals with
the addressing, the IP addressing.
550
00:32:55,766 --> 00:32:59,656
So I went to Bank of Arizona -- I
don't even know if there is one.
551
00:32:59,656 --> 00:33:08,136
I went to Bank of Arizona -- oh, there is
one, great, Bankofarizona.com, nice and easy.
552
00:33:08,466 --> 00:33:17,986
But behind the scenes, my command prompt is
freezing here, so let's open another one.
553
00:33:18,016 --> 00:33:19,926
My computer used something called DNS.
554
00:33:21,026 --> 00:33:27,916
www.bankofarizona.com, because
we work in terms of names
555
00:33:28,196 --> 00:33:30,586
but computers work in terms of IP addresses.
556
00:33:30,586 --> 00:33:34,306
So when I went to Bankofarizona.com
and got this whole thing going,
557
00:33:34,466 --> 00:33:40,906
my computer found out that Bank of Arizona has
the IP address 21660188, and it filled that in
558
00:33:40,906 --> 00:33:43,226
as the destination IP address
of where I'm going.
559
00:33:43,226 --> 00:33:50,106
It said, I'm going to have the source IP
address of -- I forgot my IP, 172.3100.72 --
560
00:33:50,106 --> 00:33:51,806
that's going to be where I came from.
561
00:33:51,976 --> 00:33:55,496
So that will be one layer of
addressing, where I originally started
562
00:33:55,496 --> 00:33:57,156
from and where I'm finally going.
563
00:33:58,006 --> 00:34:01,316
But you remember, my computer realizes
564
00:34:01,316 --> 00:34:04,336
that I'm not plugged right into
the Bank of Arizona server.
565
00:34:04,336 --> 00:34:08,896
Bank of Arizona is not sitting
on my home network.
566
00:34:09,506 --> 00:34:15,166
I need to go to my router, because it's the one
that knows the path to get to that IP address.
567
00:34:15,586 --> 00:34:21,406
So I use a different source and destination
address, and that's going to be a Mac address.
568
00:34:21,716 --> 00:34:26,336
So again, encapsulating this packet further, I
have the source IP address, which I'll just put,
569
00:34:26,336 --> 00:34:31,626
I think it was .172 or .72 or something
-- destination IP address, so what was it.
570
00:34:31,626 --> 00:34:36,696
It was .8 -- I'll just put dadadada.8.
571
00:34:36,696 --> 00:34:38,936
I do have the full address, I just
can't squeeze it all in there.
572
00:34:38,936 --> 00:34:45,596
So now I need a source and destination --
source and destination Mac address as well,
573
00:34:45,996 --> 00:34:50,716
which is going to be my physical
computer -- it's still describing me --
574
00:34:50,766 --> 00:34:55,016
I'm the original source of this -- but now
I'm going to say I need to get to the router,
575
00:34:55,016 --> 00:35:02,056
I need to get to my network because I
realize Bank of Arizona is not on my network.
576
00:35:02,296 --> 00:35:05,256
Those of you analysts are
going, how did the computer know
577
00:35:05,256 --> 00:35:07,346
that Bank of Arizona's not on its network?
578
00:35:07,346 --> 00:35:12,046
That's when we get into IP addressing, and
subnet masks and all of that kind of stuff,
579
00:35:12,046 --> 00:35:14,706
but for now I'm just going to say, it knows.
580
00:35:14,846 --> 00:35:20,046
So the computer knows and it realizes I have to
send it to my router, so what it's configured
581
00:35:20,046 --> 00:35:22,526
with -- take a look at this;
I'm going to do an IPconfig.
582
00:35:23,986 --> 00:35:30,896
My computer says this is my IP address but
I also know the IP address of my Gateway.
583
00:35:30,896 --> 00:35:31,826
This is my router.
584
00:35:31,826 --> 00:35:36,516
This is where I go if I want to get off my
network, so behind the scenes, when he realizes,
585
00:35:36,516 --> 00:35:39,326
I need to go to Bank of Arizona,
I need to get off of my network,
586
00:35:39,326 --> 00:35:44,986
he's going to do something called an
ARP, an Address Resolution Protocol --
587
00:35:45,496 --> 00:35:49,956
to find out what is the Mac address,
what is the physical address,
588
00:35:49,956 --> 00:35:54,286
Datalink address of this router
so I can add that to the packet.
589
00:35:54,286 --> 00:36:00,156
Matter of fact, digging a little bit here,
I'm going to type in the command arp-a,
590
00:36:00,156 --> 00:36:05,366
which shows I figured this IP address,
which is my gateway, my router,
591
00:36:05,606 --> 00:36:10,036
has the physical address, a/k/a
Datalink address, of this.
592
00:36:10,036 --> 00:36:11,236
This is its Mac address.
593
00:36:11,546 --> 00:36:12,246
What is mine?
594
00:36:12,416 --> 00:36:19,886
I can do an IPconfig/all, and I
can say my address is right here.
595
00:36:21,966 --> 00:36:25,896
This is the IP -- sorry, the
Mac address of my network card.
596
00:36:26,236 --> 00:36:27,986
So let's put these two pieces together.
597
00:36:28,276 --> 00:36:31,196
I'm going to -- good grief,
this is just getting messy.
598
00:36:31,306 --> 00:36:38,456
Hang on. I'm going to this server right here.
599
00:36:38,456 --> 00:36:40,116
I'm coming -- I lost my $50.
600
00:36:40,606 --> 00:36:41,296
It's gone, man.
601
00:36:41,516 --> 00:36:43,856
Add all the headers there that we're tacking on.
602
00:36:44,056 --> 00:36:47,006
But I get to the point where I'm
saying the source IP address is me,
603
00:36:47,246 --> 00:36:51,006
and the destination IP address
is that server over here.
604
00:36:51,246 --> 00:36:52,126
That's where I'm going.
605
00:36:52,316 --> 00:36:55,066
But I know that I can't just
say Go Fish, Find your home.
606
00:36:55,066 --> 00:37:00,566
I'm going to say the source Mac address for
my local communication on this switch is
607
00:37:00,566 --> 00:37:06,166
that nice Mac address that I
highlighted and showed right here.
608
00:37:06,166 --> 00:37:11,126
That's going to be me, so I'll just
put 32 is the source Mac address.
609
00:37:11,126 --> 00:37:13,486
And the destination Mac address
is going to be here.
610
00:37:13,486 --> 00:37:15,076
That's going to be the router that it gets to.
611
00:37:15,496 --> 00:37:22,196
Now, the router is the ultimate bummer
job, because from there, comes down
612
00:37:22,196 --> 00:37:26,266
and physically sends my $50 transfer,
switch looks at it, sends it to the router.
613
00:37:26,556 --> 00:37:28,846
The router's like, oh, oh, I got some mail.
614
00:37:28,846 --> 00:37:32,656
It has my destination MAC
address in this header.
615
00:37:32,826 --> 00:37:33,556
It's for me.
616
00:37:33,756 --> 00:37:38,636
It opens it up and looks at the destination
IP address, which was somewhere around here,
617
00:37:38,966 --> 00:37:43,056
looks at the destination IP address,
it's like oh, this isn't for me.
618
00:37:43,566 --> 00:37:47,966
This is going to some server far, far away,
and by the way, that's the job of the router.
619
00:37:48,396 --> 00:37:52,856
The job of the router, its number one
goal, is to maintain a routing table.
620
00:37:53,376 --> 00:37:56,666
So it knows how to get around
the world at large.
621
00:37:56,666 --> 00:37:59,196
It knows where to send stuff
based on its IP address.
622
00:37:59,196 --> 00:38:00,796
So it goes, oh, it's not for me.
623
00:38:01,016 --> 00:38:05,086
It's going to the bank, so I'm going to
send it to this router, because I'm looking
624
00:38:05,086 --> 00:38:08,886
at my routing table, and it says,
your next destination is right here.
625
00:38:09,996 --> 00:38:14,176
Now, keep in mind, when it did
that, it totally changed networks.
626
00:38:14,436 --> 00:38:18,476
Instead of saying, it came from this source
MAC address and went to this destination,
627
00:38:18,666 --> 00:38:21,386
now it says, oh, okay, we're now coming from me.
628
00:38:21,426 --> 00:38:23,626
I'm the new source and you're the destination.
629
00:38:23,846 --> 00:38:25,516
And then every time we have a network change,
630
00:38:25,776 --> 00:38:28,146
this is the new source and
this is the new destination.
631
00:38:28,336 --> 00:38:31,336
And by the way, there's quite a
few routers in between these two.
632
00:38:31,546 --> 00:38:40,716
If I do a trace route -- I'm going to do -g,
it just goes faster -- www.bankofarizona.com.
633
00:38:40,786 --> 00:38:45,686
It goes through my router, it goes out my
ISP and each one of these represents a router
634
00:38:45,686 --> 00:38:46,926
that it's going through along the way.
635
00:38:46,926 --> 00:38:49,376
Say I'm going here, I'm going
there, I'm going here.
636
00:38:49,536 --> 00:38:54,326
So think of this, every single one of these
lines that come out, represent a router
637
00:38:54,326 --> 00:38:57,756
that I'm passing through on
my way to the Bank of Arizona.
638
00:38:58,046 --> 00:38:59,356
Isn't it amazing?
639
00:38:59,356 --> 00:39:00,026
Look at that.
640
00:39:00,316 --> 00:39:05,536
17 routers, and then it blocked
me, because they're like, okay,
641
00:39:05,536 --> 00:39:07,886
you've gone far enough, buddy, this is a bank.
642
00:39:07,886 --> 00:39:09,936
We're not going to let you
see beyond this point,
643
00:39:09,936 --> 00:39:12,556
so we don't even know how
many routers are past 17.
644
00:39:12,556 --> 00:39:14,116
That's actually surprising to me.
645
00:39:14,116 --> 00:39:18,816
That's a lot of routers that it's going through,
all the way over here to this Bank of Arizona.
646
00:39:19,056 --> 00:39:25,756
Every single time this happens, takes that
Datalink address, rips it off, and replaces it.
647
00:39:25,756 --> 00:39:27,366
Isn't that amazing?
648
00:39:27,366 --> 00:39:29,326
$50 is coming right here.
649
00:39:29,556 --> 00:39:31,146
IP addresses don't change.
650
00:39:31,146 --> 00:39:32,896
Now, I know some of you are
going, what about NAT?
651
00:39:32,896 --> 00:39:34,206
We'll talk about NAT later on.
652
00:39:34,486 --> 00:39:38,046
But every single one of these hops is
going to say, I'm going to go here first.
653
00:39:38,046 --> 00:39:41,606
Okay, rip off that source and
destination MAC address, replace it.
654
00:39:41,726 --> 00:39:44,086
Okay, now I'm going to go
here, rip off, replace.
655
00:39:44,326 --> 00:39:45,976
Now I'm going to go here, rip off, replace.
656
00:39:46,136 --> 00:39:55,516
17 minimum times it's going through this story
all the way to finally reach this destination.
657
00:39:56,386 --> 00:40:00,426
That's how the OSI model
is used in practical use.
658
00:40:00,426 --> 00:40:03,956
Now, on this side, he receives
it, the final server.
659
00:40:03,956 --> 00:40:08,036
He goes, okay, this is my MAC address --
looking at the header -- this is for me.
660
00:40:08,036 --> 00:40:11,626
It looks at the IP address and
he goes, oh, this is for me, too.
661
00:40:11,626 --> 00:40:13,686
It's not a router; it's going directly to him.
662
00:40:13,836 --> 00:40:15,286
He goes, great, that's fantastic.
663
00:40:15,286 --> 00:40:18,556
He then looks and goes, okay, it
looks like he's coming to Port 443.
664
00:40:18,696 --> 00:40:22,146
I'm going to pass that to Apache or
IIS because it's easier to write,
665
00:40:22,496 --> 00:40:25,886
and I'm now going to do my
application layer stuff.
666
00:40:25,886 --> 00:40:30,666
The database says take that $50, move
it from that field to that field,
667
00:40:30,666 --> 00:40:34,026
so now it's added to the savings
account, and I'm going to send
668
00:40:34,026 --> 00:40:36,566
that acknowledgement back saying
I got that, and then I'm going
669
00:40:36,566 --> 00:40:39,956
to send some information refreshing the
web page saying, "Successful transfer."
670
00:40:40,516 --> 00:40:41,596
Isn't this crazy?
671
00:40:43,056 --> 00:40:47,146
We're sitting here -- we go to
websites all the time, right?
672
00:40:47,146 --> 00:40:51,256
I click on Bank of Arizona, and I'm
greeted here by this fall money makeover
673
00:40:51,256 --> 00:40:53,436
and all this kind of data that's on the screen.
674
00:40:53,766 --> 00:40:59,086
There were probably 50, 60 different packets
used to generate this web page that went
675
00:40:59,086 --> 00:41:02,896
through 17 different routers that had -- every
single one of those packets had its source
676
00:41:02,896 --> 00:41:07,156
and destination MAC address changed,
and we have the audacity to be
677
00:41:07,156 --> 00:41:10,226
at some point, oh, this is so slow.
678
00:41:10,226 --> 00:41:13,586
You know, I'm clicking on collection
-- oh, man, that took awhile.
679
00:41:13,686 --> 00:41:17,836
It didn't really, but it's like
-- wow, that's not as fast as --
680
00:41:17,836 --> 00:41:21,776
okay, this is a lot faster than I was
hoping it would be, but you get the point.
681
00:41:21,776 --> 00:41:23,086
A lot of times we're like, man, it's slow,
682
00:41:23,086 --> 00:41:27,156
but if you think about the behind the
scenes, what's really happening -- wow.
683
00:41:27,716 --> 00:41:32,046
It's surprising it's not taking a
good full day for that thing to show
684
00:41:32,046 --> 00:41:33,486
up with the amount of work that's happening.
685
00:41:33,826 --> 00:41:35,926
That's the OSI model in action.
686
00:41:35,926 --> 00:41:38,106
That's what's really happening
behind the scenes.
687
00:41:39,446 --> 00:41:42,736
Okay, last thing I want to
add to this before we wrap up,
688
00:41:43,086 --> 00:41:49,006
is we've seen some core network
devices -- primarily switches, routers,
689
00:41:49,006 --> 00:41:54,256
and I think on the opening nugget we saw the
wireless access points and clients and servers.
690
00:41:54,616 --> 00:41:56,876
Where do these work in the OSI model?
691
00:41:57,736 --> 00:42:00,896
Well, the switches, if you want
to know their primary role,
692
00:42:00,896 --> 00:42:03,086
they sit right here at the Datalink layer.
693
00:42:03,526 --> 00:42:04,146
Their goal?
694
00:42:04,766 --> 00:42:07,436
Learn physical addresses.
695
00:42:07,676 --> 00:42:09,266
Learn MAC addresses.
696
00:42:09,946 --> 00:42:13,656
They are committed -- when I plug
in a network cable into that switch,
697
00:42:13,786 --> 00:42:17,596
I will identify exactly what
physical address exists on there.
698
00:42:17,866 --> 00:42:20,226
So when this guy sends a message and says,
699
00:42:20,226 --> 00:42:22,866
I want to talk to that router,
the switch already knows.
700
00:42:22,866 --> 00:42:27,396
It says, oh, he's right at this port,
let me forward you over, because my job,
701
00:42:27,606 --> 00:42:32,706
my resume says I learn MAC addresses, and I
already have learned where that MAC address is.
702
00:42:33,026 --> 00:42:37,436
And before switches were, there was
this lovely device known as a hub.
703
00:42:38,516 --> 00:42:42,756
A hub actually worked at the
physical layer of the OSI model.
704
00:42:43,086 --> 00:42:47,436
It serves the same purpose of a switch,
which was to connect everything together
705
00:42:47,436 --> 00:42:52,026
and allow LAN-based communication, but it
didn't have the ability to learn MAC addresses.
706
00:42:52,026 --> 00:42:57,056
So anytime somebody would send something,
the hub just sent it out every single port.
707
00:42:57,436 --> 00:43:03,216
So when I sent my $50 transfer to the bank,
all of the different computers and servers
708
00:43:03,216 --> 00:43:05,216
and everything else plugged
into my local network here,
709
00:43:05,396 --> 00:43:08,586
would get my $50 transfer,
they would just ignore it.
710
00:43:08,806 --> 00:43:12,796
Now, if I had somebody malicious over here
-- this is my evil user in the cubicle --
711
00:43:13,116 --> 00:43:17,126
with a program called Wire Shark on his
hand, he could start capturing that data.
712
00:43:17,336 --> 00:43:21,076
Now, it would be encrypted thanks to the
presentation layer, but he could you know,
713
00:43:21,076 --> 00:43:23,756
try and start working it, see if
he could break the encryption.
714
00:43:23,756 --> 00:43:28,576
There's a lot of dangerous stuff if you're using
hubs, which is why we don't use hubs anymore.
715
00:43:28,576 --> 00:43:31,666
Everything that we use is switches,
which are Datalink layer devices.
716
00:43:32,236 --> 00:43:34,456
Routers, if you said, what
layer do they work at?
717
00:43:34,456 --> 00:43:35,846
They work at multiple layers.
718
00:43:35,846 --> 00:43:39,686
I mean, but I would say their
specialty is right here.
719
00:43:40,326 --> 00:43:45,376
They sit right at the network layer, and
if you had like a drag and drop example
720
00:43:45,376 --> 00:43:47,306
where I was okay, where do we drag that device?
721
00:43:47,306 --> 00:43:48,426
He's a network device.
722
00:43:48,426 --> 00:43:49,696
He looks at IP addresses.
723
00:43:49,696 --> 00:43:53,336
That's his primary function, look at IP
addresses and figures out what to do with them.
724
00:43:53,566 --> 00:43:57,246
Says, I'm going to move that one from
here to here based on my routing table,
725
00:43:57,426 --> 00:43:59,196
which tells me where to send everything.
726
00:43:59,846 --> 00:44:05,336
Now, these devices, I mean, you can really
set these guys up with the application layer.
727
00:44:05,336 --> 00:44:10,436
Now, debatably so you could say,
well, doesn't this guy do --
728
00:44:10,436 --> 00:44:13,066
put IP addresses on there and
doesn't he have a MAC address?
729
00:44:13,376 --> 00:44:14,166
Yes, he does.
730
00:44:14,166 --> 00:44:18,576
All of these devices, in some realm,
function at every layer of the OSI model.
731
00:44:18,576 --> 00:44:23,256
I'm just talking where they would specialize,
where you would know these devices to exist,
732
00:44:23,396 --> 00:44:26,376
it would be primarily -- I would
say the applications running
733
00:44:26,376 --> 00:44:30,516
on that computer are working primarily at
the application layer, but also remembering,
734
00:44:30,516 --> 00:44:34,496
it has an IP address, it communicates on
the network just like any device does.
735
00:44:34,836 --> 00:44:37,366
One more piece, I mentioned Wi-Fi.
736
00:44:38,956 --> 00:44:39,716
Where does that fit?
737
00:44:39,716 --> 00:44:41,826
It's an alternative right here.
738
00:44:41,886 --> 00:44:43,806
It serves the same function as a switch.
739
00:44:43,806 --> 00:44:48,156
Its goal is to connect devices to the
network and to learn MAC addresses;
740
00:44:48,156 --> 00:44:52,746
it just does so through airwaves rather than
physical network cables that are coming in.
741
00:44:53,516 --> 00:44:57,016
There's so much more to say here, but
remember, this is where it begins.
742
00:44:57,016 --> 00:44:59,176
This is the foundations of the OSI model.
743
00:44:59,546 --> 00:45:02,316
So let me hit the high points
of what we've discussed,
744
00:45:02,316 --> 00:45:06,116
but then give you a specific direction of
what I want you to do with this information.
745
00:45:06,826 --> 00:45:08,626
Number one, we saw what the OSI model was,
746
00:45:08,626 --> 00:45:11,156
a standard of standards,
allowing network communication.
747
00:45:11,286 --> 00:45:15,596
We saw the conspiracy behind it, which I
know a few high-level politicians claiming
748
00:45:15,596 --> 00:45:18,916
to invent the Internet were involved
in, but they chose TCP/IP instead.
749
00:45:18,916 --> 00:45:24,346
We saw getting to know the layers, what adds
what, what are the functions for each one
750
00:45:24,346 --> 00:45:26,926
of these layers, encapsulating
the packet all the way through.
751
00:45:27,536 --> 00:45:31,626
And then we saw how network devices
communicate using OSI and also
752
00:45:31,626 --> 00:45:35,456
where those network devices fit, where
does the switch fit in the stack,
753
00:45:35,456 --> 00:45:36,866
where does the router fit in the stack.
754
00:45:36,936 --> 00:45:39,346
So here's what I want you to do.
755
00:45:39,346 --> 00:45:42,566
I always like wrapping up each
nugget giving you an action plan,
756
00:45:42,566 --> 00:45:45,926
just because there's so much information.
757
00:45:46,016 --> 00:45:48,526
What's to say this doesn't just
evaporate out of your mind.
758
00:45:49,326 --> 00:45:51,836
I want you to find a friend.
759
00:45:52,596 --> 00:45:56,156
This is a weird goal I have for yoyu right now.
760
00:45:56,376 --> 00:46:00,376
I want you to find a friend, maybe
it's a wife, a husband, a friend,
761
00:46:00,376 --> 00:46:04,466
a dog, somebody you meet on the street.
762
00:46:04,466 --> 00:46:07,336
Just pull them aside and be like,
I want to show you something.
763
00:46:07,336 --> 00:46:12,536
Bring your phone, bring your iPad, bring your
computer, bring him to your computer and pull
764
00:46:12,536 --> 00:46:17,386
up a web browser and go to Google,
and say, you see that web page?
765
00:46:17,606 --> 00:46:19,646
I want to tell you how it got there.
766
00:46:19,806 --> 00:46:25,666
And then sit there and explain to them -- I
know, they're going to be like, I've got -- no.
767
00:46:25,666 --> 00:46:27,606
I'm sorry, I've handcuffed you to the chair.
768
00:46:27,606 --> 00:46:30,616
I don't know if you noticed that when
I said I have something to show you,
769
00:46:30,616 --> 00:46:32,306
but there was a snapping sound; you can't move.
770
00:46:32,536 --> 00:46:37,386
And I'm going to show you how this PC
communicates with that Google server,
771
00:46:37,386 --> 00:46:42,576
or whatever web page you went to, and describe
to them this OSI process the entire way through.
772
00:46:42,826 --> 00:46:45,716
I know you're going, he's joking.
773
00:46:45,886 --> 00:46:47,146
I am dead serious.
774
00:46:47,146 --> 00:46:51,566
This is one of those things that
will quickly evaporate your mind.
775
00:46:51,566 --> 00:46:55,146
I know this is kind of cliché,
but one of the best ways
776
00:46:55,386 --> 00:46:58,096
to learn something is to teach it to somebody.
777
00:46:58,316 --> 00:47:02,936
I guarantee if you -- first, maybe
do a presentation to yourself.
778
00:47:02,936 --> 00:47:07,206
Make sure that you've got it down, because when
you try to explain it, you're going to go, ooh,
779
00:47:07,206 --> 00:47:09,126
wait a second, how did that work?
780
00:47:09,296 --> 00:47:10,066
Wait a second.
781
00:47:10,066 --> 00:47:16,956
Hang on. A lot of times -- because I've seen it
for many different students when I've taught,
782
00:47:16,956 --> 00:47:19,546
people go, oh, okay, that
make sense, great, I got it.
783
00:47:19,826 --> 00:47:24,436
But it didn't really soak in far enough to
where they really got it until they were put
784
00:47:24,436 --> 00:47:28,896
into a position where they had to display
that knowledge, and at that point,
785
00:47:28,896 --> 00:47:32,536
having to display the knowledge didn't
work because they never really confirmed
786
00:47:32,536 --> 00:47:33,686
that they got it in the first place.
787
00:47:33,686 --> 00:47:39,656
So seriously, find a friend and explain this
to them, then move on to the next nugget.
788
00:47:39,656 --> 00:47:42,816
I hope this has been informative for you,
and I'd like to thank you for viewing.
78006