WEBVTT 0:00:05.020000 --> 0:00:09.880000 So, up until this point, we've talked about why do we need routing? 0:00:09.880000 --> 0:00:15.520000 We've talked about what happens to a packet when it gets routed, what 0:00:15.520000 --> 0:00:17.880000 changes occur to it. 0:00:17.880000 --> 0:00:24.520000 We've talked about how can routes get put into the routing table, connected, 0:00:24.520000 --> 0:00:26.460000 static, dynamic routes. 0:00:26.460000 --> 0:00:32.120000 We've talked about if I learn about the same network via multiple next 0:00:32.120000 --> 0:00:35.980000 hops, how do I select the best path? 0:00:35.980000 --> 0:00:40.060000 So, now we're going to start focusing in on either routing protocols themselves. 0:00:40.060000 --> 0:00:44.260000 Now, we're going to focus exclusively on dynamic routing protocols. 0:00:44.260000 --> 0:00:47.860000 And now, if you are in the position where you have to choose a routing 0:00:47.860000 --> 0:00:51.660000 protocol, most likely if you are taking a job as a network engineer or 0:00:51.660000 --> 0:00:55.680000 network admin for some company, they probably already have some routing 0:00:55.680000 --> 0:00:57.200000 protocol in place. 0:00:57.200000 --> 0:01:01.060000 But let's say at some point in your career, you actually are designing 0:01:01.060000 --> 0:01:05.400000 a network and it's in your hands to decide what kind of routing protocol 0:01:05.400000 --> 0:01:07.900000 to select for that network. 0:01:07.900000 --> 0:01:12.620000 Because you've got about six choices to choose from, it helps to be able 0:01:12.620000 --> 0:01:16.800000 to sort of contrast and compare them against each other to make an informed 0:01:16.800000 --> 0:01:21.180000 choice. And this last section of video is going to help guide you down 0:01:21.180000 --> 0:01:27.680000 that path. So, let's start with IGP's and EGP's. 0:01:27.680000 --> 0:01:31.900000 So, in order to understand these acronyms of IGP's and EGP's, we first 0:01:31.900000 --> 0:01:35.280000 have to understand what an autonomous system is. 0:01:35.280000 --> 0:01:39.100000 So, an autonomous system, as it says here, is a collection of networks 0:01:39.100000 --> 0:01:42.260000 all under one administrative authority. 0:01:42.260000 --> 0:01:43.720000 What does that mean? 0:01:43.720000 --> 0:01:48.800000 Okay. Let me give you two contrasting examples. 0:01:48.800000 --> 0:01:50.960000 Think of your network at your house. 0:01:50.960000 --> 0:01:53.280000 It's probably pretty small. 0:01:53.280000 --> 0:01:57.780000 You probably have like a cable modem or a DSL modem. 0:01:57.780000 --> 0:02:01.040000 And you might just have a single laptop connected to that. 0:02:01.040000 --> 0:02:04.860000 Or maybe you've got a switch and a couple laptops and a printer connected 0:02:04.860000 --> 0:02:11.380000 to that. However big or small your home network is, who controls it? 0:02:11.380000 --> 0:02:16.300000 You do. You are the central administrative authority for your network 0:02:16.300000 --> 0:02:20.980000 at home. So, that network you have at home technically is considered an 0:02:20.980000 --> 0:02:22.520000 autonomous system. 0:02:22.520000 --> 0:02:24.180000 You are in charge of it. 0:02:24.180000 --> 0:02:26.220000 It's managed by you. 0:02:26.220000 --> 0:02:29.280000 Now, let's go to the opposite end of the extreme. 0:02:29.280000 --> 0:02:35.020000 Think about a company like Cisco Systems that has close to 100,000 employees 0:02:35.020000 --> 0:02:40.760000 almost. They've got, in their San Jose campus, they've got over 40 buildings, 0:02:40.760000 --> 0:02:42.780000 40 buildings in their San Jose campus. 0:02:42.780000 --> 0:02:45.220000 So, their network is massive. 0:02:45.220000 --> 0:02:50.920000 And yet, that huge network they have out there is all managed by their 0:02:50.920000 --> 0:02:55.160000 IT department. Which is pretty big, but there's one central administrative 0:02:55.160000 --> 0:03:00.360000 authority which is Cisco's IT department which is managing that huge network. 0:03:00.360000 --> 0:03:04.560000 That is also an example of an autonomous system. 0:03:04.560000 --> 0:03:08.760000 So, what does that have to do with IGP's or EGP's? 0:03:08.760000 --> 0:03:13.520000 Routing protocols at a very high level when you think about what problem 0:03:13.520000 --> 0:03:15.160000 were they designed to solve. 0:03:15.160000 --> 0:03:17.540000 Why were they invented in the first place? 0:03:17.540000 --> 0:03:20.900000 One of the first things you have to ask yourself is, was the intention 0:03:20.900000 --> 0:03:25.940000 of this routing protocol, was its purpose to be able to exchange routes 0:03:25.940000 --> 0:03:31.320000 with routers that are in the same autonomous system within the same company 0:03:31.320000 --> 0:03:37.520000 or within routers that are in different autonomous systems? 0:03:37.520000 --> 0:03:42.920000 And IGP, interior gateway protocol, was designed to provide reachability 0:03:42.920000 --> 0:03:46.400000 for information within an autonomous system. 0:03:46.400000 --> 0:03:51.720000 Pretty much all your routing protocols but one fall into this category. 0:03:51.720000 --> 0:03:59.720000 So, RIP, EIGRP, OSPF, ISIS, they are all examples of routing protocols 0:03:59.720000 --> 0:04:03.520000 that are interior gateway protocols. 0:04:03.520000 --> 0:04:09.740000 So, when I'm a router and I'm running RIP or EIGRP or OSPF for ISIS and 0:04:09.740000 --> 0:04:13.380000 I hear from another routing protocol that's speaking my same language, 0:04:13.380000 --> 0:04:14.940000 I trust that router. 0:04:14.940000 --> 0:04:19.560000 I assume that router is running in the same autonomous system as me. 0:04:19.560000 --> 0:04:23.300000 He belongs to the same company as me, so I trust him. 0:04:23.300000 --> 0:04:26.060000 Now, EIGRP actually sort of checks that. 0:04:26.060000 --> 0:04:29.260000 When you configure EIGRP you actually have to tell it what autonomous 0:04:29.260000 --> 0:04:33.320000 system number it's in and it will only speak to other routers that are 0:04:33.320000 --> 0:04:38.440000 in the same autonomous system as itself, because EIGRP is an interior 0:04:38.440000 --> 0:04:40.720000 gateway protocol. 0:04:40.720000 --> 0:04:48.640000 So, IGP's, their main responsibility is to speak to routers in the same 0:04:48.640000 --> 0:04:53.240000 AS's themselves and to very quickly transfer information. 0:04:53.240000 --> 0:04:57.540000 IGP's main goal is to have very quick convergence. 0:04:57.540000 --> 0:05:00.280000 Now, in case you're not familiar with that term convergence, all convergence 0:05:00.280000 --> 0:05:04.700000 means is that if you think about a network, however big or how small, 0:05:04.700000 --> 0:05:08.120000 let's say one part of that network goes down. 0:05:08.120000 --> 0:05:12.780000 Convergence is the length of time it takes for the entire network to be 0:05:12.780000 --> 0:05:16.220000 aware that that portion has gone down. 0:05:16.220000 --> 0:05:17.620000 That's what we mean by convergence. 0:05:17.620000 --> 0:05:21.920000 So, we want quick convergence and this is what IGP's were designed for. 0:05:21.920000 --> 0:05:24.120000 IGP's were designed for quick convergence. 0:05:24.120000 --> 0:05:27.120000 As soon as a new network comes up, let's let everybody know about it as 0:05:27.120000 --> 0:05:28.520000 quickly as possible. 0:05:28.520000 --> 0:05:31.520000 If some network changes or go down, let's let everybody know about it 0:05:31.520000 --> 0:05:32.820000 as quickly as possible. 0:05:32.820000 --> 0:05:34.880000 We want fast convergence. 0:05:34.880000 --> 0:05:38.480000 So, we want to learn everything and we want to learn it quickly. 0:05:38.480000 --> 0:05:42.900000 That is the primary goal of an interior gateway protocol. 0:05:42.900000 --> 0:05:47.580000 An exterior gateway protocol, and there's only one, BGP, the border gateway 0:05:47.580000 --> 0:05:51.060000 protocol, is our one and only example of an exterior gateway protocol. 0:05:51.060000 --> 0:05:55.880000 This is designed to provide prefix reachability between different autonomous 0:05:55.880000 --> 0:06:02.000000 systems. For example, Internet service providers, Time Warner Cable, Comcast, 0:06:02.000000 --> 0:06:06.420000 Sprint, they use BGP so their routers can talk to each other. 0:06:06.420000 --> 0:06:10.760000 Now, when you're talking about one service provider talking to another 0:06:10.760000 --> 0:06:15.080000 service provider, you're talking about them exchanging possibly hundreds 0:06:15.080000 --> 0:06:19.660000 of thousands of routes, hundreds of thousands of routes. 0:06:19.660000 --> 0:06:24.560000 So, the primary responsibility of an exterior gateway protocol is to be 0:06:24.560000 --> 0:06:28.020000 secure. You don't trust routers blindly. 0:06:28.020000 --> 0:06:30.480000 You only talk to routers that you're supposed to talk to. 0:06:30.480000 --> 0:06:35.620000 And to be able to handle massive quantities of routes. 0:06:35.620000 --> 0:06:40.540000 An exterior gateway protocol is not concerned as much with convergence. 0:06:40.540000 --> 0:06:44.020000 In other words, an exterior gateway protocol, if it learns that a new 0:06:44.020000 --> 0:06:48.680000 network has come up or some network has gone down, it will tell its neighbors 0:06:48.680000 --> 0:06:53.040000 about that. But its primary job is not to convey that information super, 0:06:53.040000 --> 0:06:57.160000 super fast. The primary job of an exterior gateway protocol is to be able 0:06:57.160000 --> 0:07:02.920000 to handle mass bulk transfers of routing information, tens or hundreds 0:07:02.920000 --> 0:07:04.500000 of thousands of routes. 0:07:04.500000 --> 0:07:09.480000 That's what it's optimized for, for scale, for grandness, not for being 0:07:09.480000 --> 0:07:15.640000 quick. So, if you are designing a routing protocol in your network, chances 0:07:15.640000 --> 0:07:19.740000 are you're going to select an interior gateway protocol. 0:07:19.740000 --> 0:07:24.280000 Now, if you happen to be a network engineer for an Internet service provider, 0:07:24.280000 --> 0:07:27.260000 and your job is to design a routing protocol that will talk to another 0:07:27.260000 --> 0:07:31.720000 router that's owned by a different service provider, then your car probably 0:07:31.720000 --> 0:07:34.600000 going to want an exterior gateway protocol. 0:07:34.600000 --> 0:07:37.860000 In the next sections of videos, we're going to now start drilling down 0:07:37.860000 --> 0:07:42.380000 a little bit more and see what categorizes our various interior gateway 0:07:42.380000 --> 0:07:47.160000 protocols from each other and sort of contrast that against our one and 0:07:47.160000 --> 0:07:49.260000 only exterior gateway protocol.