All language subtitles for 03 - Cisco Foundations - Speaking the Language of the OSI Model-eng

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian Download
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug 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

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.