1 00:00:00,060 --> 00:00:00,990 In this lesson, 2 00:00:00,990 --> 00:00:02,850 we're going to cover Routing Protocols. 3 00:00:02,850 --> 00:00:04,380 Now, there are two different types 4 00:00:04,380 --> 00:00:06,090 of dynamic routing protocols. 5 00:00:06,090 --> 00:00:08,340 There are internal ones and external ones, 6 00:00:08,340 --> 00:00:10,350 and these are the basic categories. 7 00:00:10,350 --> 00:00:11,820 Now, interior ones are things 8 00:00:11,820 --> 00:00:14,070 like interior gateway protocols that operate 9 00:00:14,070 --> 00:00:17,010 within a network or within an autonomous system. 10 00:00:17,010 --> 00:00:19,140 External gateway protocols will operate 11 00:00:19,140 --> 00:00:22,500 between autonomous systems on those exterior networks. 12 00:00:22,500 --> 00:00:24,240 So for example, the internet is 13 00:00:24,240 --> 00:00:26,280 a really large exterior system, 14 00:00:26,280 --> 00:00:29,490 so it's going to be using exterior gateway protocols. 15 00:00:29,490 --> 00:00:31,500 Your networks inside your internet, 16 00:00:31,500 --> 00:00:33,840 even if you have multiple routers and switches there 17 00:00:33,840 --> 00:00:36,900 are going to operate using interior gateway protocols. 18 00:00:36,900 --> 00:00:38,550 And we're going to go through some examples of both 19 00:00:38,550 --> 00:00:41,070 of these types of protocols in this lesson. 20 00:00:41,070 --> 00:00:42,540 Now, first, let's talk 21 00:00:42,540 --> 00:00:44,790 about the Router Advertisement Method. 22 00:00:44,790 --> 00:00:47,850 This is a characteristic of every routing protocol. 23 00:00:47,850 --> 00:00:50,460 Every dynamic routing protocol is going to look at routing 24 00:00:50,460 --> 00:00:52,290 just a little bit differently though. 25 00:00:52,290 --> 00:00:55,320 Some of them are going to use things known as distance vectors, 26 00:00:55,320 --> 00:00:58,380 and others are going to use things known as link states. 27 00:00:58,380 --> 00:01:00,270 Now, some of them don't fit neatly 28 00:01:00,270 --> 00:01:01,890 either of these two categories, 29 00:01:01,890 --> 00:01:04,080 and they become a hybrid of both of them. 30 00:01:04,080 --> 00:01:06,570 Now, what this means is that there's some method 31 00:01:06,570 --> 00:01:08,790 for the route to be received, advertised, 32 00:01:08,790 --> 00:01:10,440 and provided to somebody else, 33 00:01:10,440 --> 00:01:12,330 and you need to figure out how you're going to do that. 34 00:01:12,330 --> 00:01:13,410 There's different ways of doing it. 35 00:01:13,410 --> 00:01:15,270 It can be based on the measurement of cost. 36 00:01:15,270 --> 00:01:16,980 That would be something like a distance vector. 37 00:01:16,980 --> 00:01:18,120 It could be based on how many routers 38 00:01:18,120 --> 00:01:19,140 you have to go through. 39 00:01:19,140 --> 00:01:21,390 It might be something based on the link state of it. 40 00:01:21,390 --> 00:01:23,220 All of those are valid ways depending 41 00:01:23,220 --> 00:01:24,750 on the protocol you're using, 42 00:01:24,750 --> 00:01:26,850 and this is where you become much more concerned 43 00:01:26,850 --> 00:01:28,530 with the different ways of doing things. 44 00:01:28,530 --> 00:01:31,050 For instance, if you're going to be using a link state vector, 45 00:01:31,050 --> 00:01:33,480 this is where you're going to be concerned more with link speed 46 00:01:33,480 --> 00:01:35,640 and what is the quickest method of getting there. 47 00:01:35,640 --> 00:01:37,020 If you have to go through four routers, 48 00:01:37,020 --> 00:01:38,730 but it's quicker than going through just one, 49 00:01:38,730 --> 00:01:40,710 that's okay if we're dealing with link state. 50 00:01:40,710 --> 00:01:43,200 But if we're dealing with distance, that would be backwards. 51 00:01:43,200 --> 00:01:45,990 We only want to go through one router, even if it's slower. 52 00:01:45,990 --> 00:01:47,970 This is the way we have to look at these different things 53 00:01:47,970 --> 00:01:50,100 and figure out what's going to be best for us. 54 00:01:50,100 --> 00:01:51,690 Now, we're going to talk about all of these 55 00:01:51,690 --> 00:01:53,070 as we go through this video, 56 00:01:53,070 --> 00:01:55,530 and hopefully, it'll make a little bit more sense to you. 57 00:01:55,530 --> 00:01:57,960 First, let's talk about distance vectors. 58 00:01:57,960 --> 00:01:59,940 Now, when you're dealing with a distance vector, 59 00:01:59,940 --> 00:02:01,560 this is about the number of routers 60 00:02:01,560 --> 00:02:04,200 you're going to be connecting through for a particular route. 61 00:02:04,200 --> 00:02:05,730 And so, if you're dealing with a distance vector, 62 00:02:05,730 --> 00:02:08,340 it's going to send a full copy of its routing table 63 00:02:08,340 --> 00:02:10,380 to everybody else who's directly connected 64 00:02:10,380 --> 00:02:12,240 to it at regular intervals. 65 00:02:12,240 --> 00:02:14,070 Now, the bad thing about this is it has 66 00:02:14,070 --> 00:02:16,290 what's known as a slow convergence time. 67 00:02:16,290 --> 00:02:17,610 Now, what is convergence? 68 00:02:17,610 --> 00:02:19,500 Well, convergence is the time it takes 69 00:02:19,500 --> 00:02:21,960 for all of the routers to update their routing tables 70 00:02:21,960 --> 00:02:24,240 in response to a topology change. 71 00:02:24,240 --> 00:02:26,340 So if I add a router or I take one away, 72 00:02:26,340 --> 00:02:28,080 how long is it going to take for everyone 73 00:02:28,080 --> 00:02:30,060 on the network to know that happened? 74 00:02:30,060 --> 00:02:32,850 So in this example, you'll see I have three routers. 75 00:02:32,850 --> 00:02:35,160 I have routers one, two, and three, 76 00:02:35,160 --> 00:02:36,750 and if I added a fourth router in, 77 00:02:36,750 --> 00:02:38,250 it's going to take some amount of time 78 00:02:38,250 --> 00:02:40,590 for router four to tell the other three routers 79 00:02:40,590 --> 00:02:42,810 that it's there and how it's connected. 80 00:02:42,810 --> 00:02:45,180 That's the idea of convergence time. 81 00:02:45,180 --> 00:02:47,580 Now, once everybody knows all the same information 82 00:02:47,580 --> 00:02:50,310 across all four routers, then you have what's known 83 00:02:50,310 --> 00:02:52,140 as a converged network. 84 00:02:52,140 --> 00:02:53,820 Now, one of the ways that we can speed up 85 00:02:53,820 --> 00:02:57,240 our convergence time is to actually use a hold-down timer. 86 00:02:57,240 --> 00:03:00,270 So instead of updating our routing tables every 30 seconds, 87 00:03:00,270 --> 00:03:02,490 we might update it every three minutes. 88 00:03:02,490 --> 00:03:05,520 Now, by doing that, it's going to allow us to converge faster 89 00:03:05,520 --> 00:03:08,040 because there's less changes across the network. 90 00:03:08,040 --> 00:03:09,480 Now, if there's more changes, 91 00:03:09,480 --> 00:03:11,520 it's going to take us more time to converge. 92 00:03:11,520 --> 00:03:12,660 So if we do less changes, 93 00:03:12,660 --> 00:03:15,390 and we spread that out from 30 seconds to three minutes, 94 00:03:15,390 --> 00:03:17,730 maybe to six minutes, that's going to be better 95 00:03:17,730 --> 00:03:20,190 for us in terms of convergence time. 96 00:03:20,190 --> 00:03:22,230 Now, when we deal with a distance vector, 97 00:03:22,230 --> 00:03:25,110 it's really also concerned about a thing known as hop count, 98 00:03:25,110 --> 00:03:26,580 and this is how many times I have to go 99 00:03:26,580 --> 00:03:29,010 through another router to get somewhere. 100 00:03:29,010 --> 00:03:31,350 So in this example, what's the quickest way 101 00:03:31,350 --> 00:03:33,840 to get from router three to router two? 102 00:03:33,840 --> 00:03:35,850 Well, if you're only concerned with hops 103 00:03:35,850 --> 00:03:37,620 or the number of routers you have to go through, 104 00:03:37,620 --> 00:03:40,620 you're going to go directly from three over to two, 105 00:03:40,620 --> 00:03:43,890 over that slow one megabit per second connection. 106 00:03:43,890 --> 00:03:46,350 Now, if you're concerned with link state, on the other hand, 107 00:03:46,350 --> 00:03:48,840 you're going to be concerned with the fastest way to get there 108 00:03:48,840 --> 00:03:51,000 by going where the most bandwidth is available, 109 00:03:51,000 --> 00:03:52,380 and that would actually be going across 110 00:03:52,380 --> 00:03:54,600 the hundred megabit per second connections. 111 00:03:54,600 --> 00:03:58,290 So I go from router three to router one, to router two, 112 00:03:58,290 --> 00:04:01,020 and that would be much faster than going directly 113 00:04:01,020 --> 00:04:02,880 to router two from router three. 114 00:04:02,880 --> 00:04:04,800 Now, that's again, not going to account 115 00:04:04,800 --> 00:04:06,270 for the fact that if we're doing a distance 116 00:04:06,270 --> 00:04:07,680 or a link state vector. 117 00:04:07,680 --> 00:04:09,390 If we're using a distance vector, 118 00:04:09,390 --> 00:04:12,210 we don't consider speed, we just count the hops. 119 00:04:12,210 --> 00:04:14,100 So we're going to go direct from three to two, 120 00:04:14,100 --> 00:04:16,500 but if we're dealing with a link state vector, 121 00:04:16,500 --> 00:04:18,149 we're going to go based on speed. 122 00:04:18,149 --> 00:04:19,800 And that's the big difference here. 123 00:04:19,800 --> 00:04:21,149 So you have to think about that 124 00:04:21,149 --> 00:04:23,220 as you're figuring out which protocol you're going to use 125 00:04:23,220 --> 00:04:25,020 and which is going to be the best way for you 126 00:04:25,020 --> 00:04:27,210 to have information flow on your network. 127 00:04:27,210 --> 00:04:28,950 Now, when we deal with link state, 128 00:04:28,950 --> 00:04:30,480 we start worrying about the cost 129 00:04:30,480 --> 00:04:32,310 and the speed of all these connections. 130 00:04:32,310 --> 00:04:33,900 This is going to require all of our routers 131 00:04:33,900 --> 00:04:36,960 to know about all the paths, all the other routers as well, 132 00:04:36,960 --> 00:04:38,580 so it can figure out what the best path is 133 00:04:38,580 --> 00:04:40,380 to send the information around. 134 00:04:40,380 --> 00:04:42,030 Now, this information is flooded out 135 00:04:42,030 --> 00:04:45,120 through the Link State Domain when you're using OSPF 136 00:04:45,120 --> 00:04:47,220 which is one of our routing protocols. 137 00:04:47,220 --> 00:04:48,823 Another one we can use is IS-IS, 138 00:04:49,830 --> 00:04:51,540 and this, again is a Link State protocol 139 00:04:51,540 --> 00:04:53,850 to ensure the routers have a synchronized information 140 00:04:53,850 --> 00:04:55,560 inside their routing tables. 141 00:04:55,560 --> 00:04:57,330 Now, with that synchronized information, 142 00:04:57,330 --> 00:04:59,970 they can then make the best routing decisions. 143 00:04:59,970 --> 00:05:02,760 Now, we're going to talk specifically about these two protocols 144 00:05:02,760 --> 00:05:05,610 in just a little bit here, so hang in with me. 145 00:05:05,610 --> 00:05:08,820 Now, the link state does have a faster convergence time 146 00:05:08,820 --> 00:05:11,430 than distance vectors, and it does use that cost 147 00:05:11,430 --> 00:05:13,710 and other factors as metrics when it figures out 148 00:05:13,710 --> 00:05:16,140 what the best way of routing traffic is. 149 00:05:16,140 --> 00:05:18,720 Now, this also includes things like your link speed, 150 00:05:18,720 --> 00:05:20,460 because the link speed is really important 151 00:05:20,460 --> 00:05:23,490 of how much bandwidth you have to send the data across. 152 00:05:23,490 --> 00:05:24,900 Each router is going to construct its 153 00:05:24,900 --> 00:05:27,120 own relative shortest path based on 154 00:05:27,120 --> 00:05:29,940 where it sees itself in the logical diagram, 155 00:05:29,940 --> 00:05:31,560 and then it calculates the distance 156 00:05:31,560 --> 00:05:33,930 of how it's going to get to the other places. 157 00:05:33,930 --> 00:05:36,330 So let's take an example of you sitting in Florida, 158 00:05:36,330 --> 00:05:38,280 and we both want to get to California. 159 00:05:38,280 --> 00:05:40,860 Now, we can have different methods to get there based on 160 00:05:40,860 --> 00:05:43,650 where we sit in the topology of the United States, right? 161 00:05:43,650 --> 00:05:45,480 If we're both going to get in our car and drive there, 162 00:05:45,480 --> 00:05:47,970 we have to figure out based on the highway speeds 163 00:05:47,970 --> 00:05:49,500 and the slowness of those speeds, 164 00:05:49,500 --> 00:05:50,940 and which traffic there is, 165 00:05:50,940 --> 00:05:52,560 and how many states we have to go through, 166 00:05:52,560 --> 00:05:54,900 and which highways we're going to go to get over there. 167 00:05:54,900 --> 00:05:57,390 So let's say, we had to go 3,000 miles to get 168 00:05:57,390 --> 00:06:00,180 to California from Washington or from Florida. 169 00:06:00,180 --> 00:06:02,250 Well, if I can go 60 miles an hour the whole time, 170 00:06:02,250 --> 00:06:04,680 but you can only go 30 miles an hour, well, 171 00:06:04,680 --> 00:06:06,330 I'm going to get there a lot faster, right? 172 00:06:06,330 --> 00:06:09,090 Because I can go two miles for every one that you go. 173 00:06:09,090 --> 00:06:10,530 Now, that's the idea. 174 00:06:10,530 --> 00:06:12,360 So as we start figuring out how we're going to go 175 00:06:12,360 --> 00:06:14,130 through this using link state, 176 00:06:14,130 --> 00:06:15,930 we could start taking speeds into account 177 00:06:15,930 --> 00:06:17,100 and figuring out, hey, 178 00:06:17,100 --> 00:06:20,040 maybe, I'm going to take this highway versus that back road, 179 00:06:20,040 --> 00:06:22,020 or there's a lot of traffic on that highway, 180 00:06:22,020 --> 00:06:23,970 so I'm going to take the back roads instead. 181 00:06:23,970 --> 00:06:26,280 Well, our routers do the same exact thing 182 00:06:26,280 --> 00:06:28,590 using those link state protocols. 183 00:06:28,590 --> 00:06:30,990 Now, let's talk about the first routing protocol here. 184 00:06:30,990 --> 00:06:33,810 This one is known as RIP, R-I-P, 185 00:06:33,810 --> 00:06:36,510 and it's one of the oldest routing protocols out there. 186 00:06:36,510 --> 00:06:38,820 It stands for the Routing Information Protocol, 187 00:06:38,820 --> 00:06:41,040 and it is an interior gateway protocol 188 00:06:41,040 --> 00:06:43,380 that's used internal to your networks. 189 00:06:43,380 --> 00:06:45,300 This is a distance vector protocol, 190 00:06:45,300 --> 00:06:47,190 and so it's going to rely on hop count 191 00:06:47,190 --> 00:06:49,200 to figure out the fastest path. 192 00:06:49,200 --> 00:06:51,450 Now, it's all about how many routers we're going to have 193 00:06:51,450 --> 00:06:53,250 to go through, and the maximum number 194 00:06:53,250 --> 00:06:55,713 of hops you can hit is 15 with RIP. 195 00:06:56,580 --> 00:06:58,440 Now, if you hit 16 or more routers, 196 00:06:58,440 --> 00:07:00,060 the connection is going to be considered dead, 197 00:07:00,060 --> 00:07:01,650 and it's just going to drop the packet 198 00:07:01,650 --> 00:07:03,660 and wait for you to retransmit it. 199 00:07:03,660 --> 00:07:05,970 Now, again, this is the oldest dynamic routing protocol 200 00:07:05,970 --> 00:07:09,210 out there, and it does provide updates every 30 seconds, 201 00:07:09,210 --> 00:07:11,700 and so, it becomes really hard to maintain convergence 202 00:07:11,700 --> 00:07:13,710 when you're dealing with a RIP network. 203 00:07:13,710 --> 00:07:15,510 Now, RIP is really easy to configure, 204 00:07:15,510 --> 00:07:19,080 and it sends out its information using UDP as its protocol, 205 00:07:19,080 --> 00:07:21,900 and so, it does have that fire-and-forget method. 206 00:07:21,900 --> 00:07:24,720 The next writing protocol we have is known as OSPF, 207 00:07:24,720 --> 00:07:26,190 which is really popular. 208 00:07:26,190 --> 00:07:29,040 This is known as Open Shortest Path First. 209 00:07:29,040 --> 00:07:31,770 OSPF is another interior gateway protocol, 210 00:07:31,770 --> 00:07:34,950 but unlike RIP, it doesn't use distance vector. 211 00:07:34,950 --> 00:07:38,100 It uses Link State, so it is concerned with cost, 212 00:07:38,100 --> 00:07:40,560 and this way it's going to be a lot more efficient. 213 00:07:40,560 --> 00:07:42,990 Now, going back to our example of having the three routers, 214 00:07:42,990 --> 00:07:45,030 router one, router two, and router three, 215 00:07:45,030 --> 00:07:46,590 what is the shortest path for us 216 00:07:46,590 --> 00:07:49,110 to go from router three to router two? 217 00:07:49,110 --> 00:07:51,420 Well, it's actually going through router one 218 00:07:51,420 --> 00:07:52,650 because the speed there is going 219 00:07:52,650 --> 00:07:54,900 across a hundred megabit per second link, 220 00:07:54,900 --> 00:07:57,630 instead of going over one megabit per second link. 221 00:07:57,630 --> 00:08:00,840 Cost here is based on link speed, not on hop count, 222 00:08:00,840 --> 00:08:03,210 and so, OSPF will help you get their fastest 223 00:08:03,210 --> 00:08:05,340 using that link state variable. 224 00:08:05,340 --> 00:08:07,470 Next, we have the intermediate system 225 00:08:07,470 --> 00:08:10,620 to intermediate system known as IS-IS. 226 00:08:10,620 --> 00:08:12,810 This is another interior gateway protocol, 227 00:08:12,810 --> 00:08:15,180 and it functions a lot like OSPF. 228 00:08:15,180 --> 00:08:18,270 It, again, is going to use cost as its link state measurement, 229 00:08:18,270 --> 00:08:21,630 and this cost is based on link speed between two routers. 230 00:08:21,630 --> 00:08:23,670 It functions a lot like OSPF, 231 00:08:23,670 --> 00:08:26,040 but OSPF is still dominant in the marketplace 232 00:08:26,040 --> 00:08:28,500 and used very widely where IS-IS 233 00:08:28,500 --> 00:08:30,690 didn't really see widespread adoption. 234 00:08:30,690 --> 00:08:34,080 The next routing protocol we have to discuss is EIGRP 235 00:08:34,080 --> 00:08:36,750 or the Enhanced Interior Gateway Routing Protocol, 236 00:08:36,750 --> 00:08:38,100 which you can probably guess 237 00:08:38,100 --> 00:08:41,309 is the interior gateway protocol based on its name. 238 00:08:41,309 --> 00:08:43,980 Now, this is an advanced distance vector protocol 239 00:08:43,980 --> 00:08:46,170 that uses both bandwidth and delay 240 00:08:46,170 --> 00:08:47,880 to make it a hybrid of the distance 241 00:08:47,880 --> 00:08:49,650 and link state protocols. 242 00:08:49,650 --> 00:08:51,300 It does count the delay that exists 243 00:08:51,300 --> 00:08:52,890 which is how many hops there are, 244 00:08:52,890 --> 00:08:54,990 as well as the cost that's available 245 00:08:54,990 --> 00:08:57,360 with each of those links to figure out their speed, 246 00:08:57,360 --> 00:08:59,100 making it that nice hybrid. 247 00:08:59,100 --> 00:09:00,870 Now, this hybrid protocol was developed 248 00:09:00,870 --> 00:09:03,390 by Cisco as an upgrade to OSPF, 249 00:09:03,390 --> 00:09:06,960 and it is very popular if you're using a Cisco-only network. 250 00:09:06,960 --> 00:09:09,450 Because it's proprietary, meaning you can only use it 251 00:09:09,450 --> 00:09:10,980 with all Cisco products, 252 00:09:10,980 --> 00:09:13,080 you're not going to see it a lot if you're using Juniper 253 00:09:13,080 --> 00:09:15,810 or Brocade, or other routers in your network. 254 00:09:15,810 --> 00:09:18,240 Again, it hasn't gotten the widespread acceptance 255 00:09:18,240 --> 00:09:21,630 that OSPF has because OSPF can be used on any device 256 00:09:21,630 --> 00:09:24,270 and any networks, not just Cisco. 257 00:09:24,270 --> 00:09:27,030 The last protocol we're going to talk about is BGP 258 00:09:27,030 --> 00:09:29,070 or the Border Gateway Protocol. 259 00:09:29,070 --> 00:09:31,380 This is an external gateway protocol, 260 00:09:31,380 --> 00:09:33,000 and on the exam, if you're asked which 261 00:09:33,000 --> 00:09:35,160 of these is an exterior gateway protocol, 262 00:09:35,160 --> 00:09:38,340 the only answer you should be looking for is BGP 263 00:09:38,340 --> 00:09:40,260 because all the other protocols we talked about 264 00:09:40,260 --> 00:09:42,210 are interior protocols. 265 00:09:42,210 --> 00:09:45,420 Now, this gateway protocol is going to use a path vector 266 00:09:45,420 --> 00:09:47,880 to use a number of the autonomous system hops 267 00:09:47,880 --> 00:09:50,490 that it needs to use instead of router hops. 268 00:09:50,490 --> 00:09:52,380 Now, I'm not concerned with how many routers I have 269 00:09:52,380 --> 00:09:54,750 to go through necessarily, but I'm more concerned 270 00:09:54,750 --> 00:09:57,120 with how many systems I have to go through. 271 00:09:57,120 --> 00:09:58,920 Again, this makes sense when you start thinking 272 00:09:58,920 --> 00:10:00,990 about the fact that BGP is used 273 00:10:00,990 --> 00:10:02,670 as the backbone of the internet. 274 00:10:02,670 --> 00:10:05,010 It's made up of lots of different autonomous systems 275 00:10:05,010 --> 00:10:07,050 as we move from one ISP to another. 276 00:10:07,050 --> 00:10:08,930 And so, this is what we want to think about 277 00:10:08,930 --> 00:10:10,830 when we talk about autonomous systems. 278 00:10:10,830 --> 00:10:12,870 Now, this has gained widespread utilization 279 00:10:12,870 --> 00:10:15,480 and is used all across the internet. 280 00:10:15,480 --> 00:10:17,760 BGP makes the internet run. 281 00:10:17,760 --> 00:10:18,603 The big problem with it is 282 00:10:18,603 --> 00:10:20,730 that it doesn't converge very quickly 283 00:10:20,730 --> 00:10:23,190 because of the large scale of all of these networks. 284 00:10:23,190 --> 00:10:25,530 So if you had a new router or a new system to the internet, 285 00:10:25,530 --> 00:10:26,670 it can take an hour or two 286 00:10:26,670 --> 00:10:28,260 before it starts getting populated, 287 00:10:28,260 --> 00:10:30,840 and even more as it goes across the entire internet 288 00:10:30,840 --> 00:10:32,640 to let them know that it now exists.