1 00:00:00,000 --> 00:00:03,290 [AUDIO LOGO] 2 00:00:03,290 --> 00:00:07,050 3 00:00:07,050 --> 00:00:12,300 So in this video, let's jump in and get an overview of the OSPF 4 00:00:12,300 --> 00:00:14,230 path selection process. 5 00:00:14,230 --> 00:00:18,840 Now, as we said, we know cost is probably the most common rule 6 00:00:18,840 --> 00:00:20,730 at which decisions get made. 7 00:00:20,730 --> 00:00:23,950 But there are plenty before and after cost. 8 00:00:23,950 --> 00:00:27,420 So in this video, we're going to look over the entire list 9 00:00:27,420 --> 00:00:30,070 just so we have an idea where we're going. 10 00:00:30,070 --> 00:00:32,460 And then in the upcoming videos, we'll 11 00:00:32,460 --> 00:00:35,020 look at each one of these one by one. 12 00:00:35,020 --> 00:00:36,990 So let's go ahead and jump in, looking 13 00:00:36,990 --> 00:00:42,340 at the overall list of the OSPF path selection process. 14 00:00:42,340 --> 00:00:45,360 So as we said during the introduction, when we're 15 00:00:45,360 --> 00:00:48,690 thinking about OSPF and path selection, 16 00:00:48,690 --> 00:00:52,980 we are normally going to be thinking about that lowest 17 00:00:52,980 --> 00:00:53,910 cost. 18 00:00:53,910 --> 00:00:56,830 Again, if you ask most engineers out there, 19 00:00:56,830 --> 00:01:00,970 this would be their go-to answer for OSPF path selection. 20 00:01:00,970 --> 00:01:03,900 However, there is quite a bit more to it 21 00:01:03,900 --> 00:01:05,890 than just lowest cost. 22 00:01:05,890 --> 00:01:08,400 So the first thing we want to talk about 23 00:01:08,400 --> 00:01:12,720 is that it actually prefers internal routes 24 00:01:12,720 --> 00:01:15,250 over external routes. 25 00:01:15,250 --> 00:01:18,300 And essentially, what that means is any route 26 00:01:18,300 --> 00:01:22,920 that is either an O or an O IA in your routing table 27 00:01:22,920 --> 00:01:28,230 is going to beat anything that is either an E1 or an E2, 28 00:01:28,230 --> 00:01:31,710 as well as an N1 or an N2. 29 00:01:31,710 --> 00:01:34,260 It's simply going to win regardless 30 00:01:34,260 --> 00:01:36,400 of any other factors. 31 00:01:36,400 --> 00:01:40,800 Number two, we're going to prefer intra-area 32 00:01:40,800 --> 00:01:42,720 over inter-area. 33 00:01:42,720 --> 00:01:45,270 This rule is simply saying that it's going 34 00:01:45,270 --> 00:01:49,230 to prefer the O over the O IA. 35 00:01:49,230 --> 00:01:53,460 The IA, of course, is indicating that it's Inter-Area. 36 00:01:53,460 --> 00:01:56,970 Intra-area would just have the O in the routing table. 37 00:01:56,970 --> 00:02:00,845 Number three, if we have nothing but externals-- 38 00:02:00,845 --> 00:02:02,220 because keep in mind, we wouldn't 39 00:02:02,220 --> 00:02:05,490 have gotten to number three if we had internals. 40 00:02:05,490 --> 00:02:09,539 The internals would have already won at rule number one, right? 41 00:02:09,539 --> 00:02:12,030 So the only way to get to rule number three 42 00:02:12,030 --> 00:02:14,280 is if all the routes are external. 43 00:02:14,280 --> 00:02:17,170 And if all of the routes are external, 44 00:02:17,170 --> 00:02:22,800 we're going to always prefer a type 1 over a type 2. 45 00:02:22,800 --> 00:02:29,100 So this would be an E1 or an N1 beating an E2 or an N2. 46 00:02:29,100 --> 00:02:31,230 1's beats 2's. 47 00:02:31,230 --> 00:02:35,730 Now, remember, we're talking about the external type. 48 00:02:35,730 --> 00:02:39,300 We're not talking about the LSA type here. 49 00:02:39,300 --> 00:02:43,260 These are both either LSA type 5, 50 00:02:43,260 --> 00:02:46,020 if we're talking about just regular externals, 51 00:02:46,020 --> 00:02:51,570 or type 7 LSAs if we're talking about NSSA. 52 00:02:51,570 --> 00:02:54,540 So again, don't confuse the external type 53 00:02:54,540 --> 00:02:57,000 versus the actual LSA type. 54 00:02:57,000 --> 00:02:59,520 Here we're talking about the external type. 55 00:02:59,520 --> 00:03:02,310 Next up is-- well, there it is-- 56 00:03:02,310 --> 00:03:05,520 the lowest total path cost. 57 00:03:05,520 --> 00:03:07,890 That's the one that most people know 58 00:03:07,890 --> 00:03:11,820 and, again, is really where commonly the routes 59 00:03:11,820 --> 00:03:13,110 do get decided. 60 00:03:13,110 --> 00:03:15,030 And if we're going to start manipulating 61 00:03:15,030 --> 00:03:18,220 routing and getting paths to go a certain way, 62 00:03:18,220 --> 00:03:21,150 this is usually where we would implement changes 63 00:03:21,150 --> 00:03:22,960 in order to make that happen. 64 00:03:22,960 --> 00:03:25,560 We can simply change the cost on an interface 65 00:03:25,560 --> 00:03:28,450 and influence OSPF's decisions. 66 00:03:28,450 --> 00:03:33,360 So again, definitely the most common but also not the end. 67 00:03:33,360 --> 00:03:36,240 It's quite possible that we get all the way down here, 68 00:03:36,240 --> 00:03:39,840 all the way through rule number four, and still have a tie. 69 00:03:39,840 --> 00:03:42,840 So there are still some tiebreakers here. 70 00:03:42,840 --> 00:03:46,890 Number five, if it is an external type 2-- 71 00:03:46,890 --> 00:03:49,800 and again, here we're talking about the type 72 00:03:49,800 --> 00:03:52,000 2's that we were mentioning up here-- 73 00:03:52,000 --> 00:03:54,960 then it's going to use something called 74 00:03:54,960 --> 00:03:57,720 the lowest forwarding metric. 75 00:03:57,720 --> 00:03:59,740 Now, if you're not familiar with this, 76 00:03:59,740 --> 00:04:02,070 we will of course cover each of these 77 00:04:02,070 --> 00:04:06,700 in more detail on the upcoming videos here in this skill. 78 00:04:06,700 --> 00:04:09,570 So we will get back to this if you're not familiar with it. 79 00:04:09,570 --> 00:04:12,050 Sort of the easiest way to look at this 80 00:04:12,050 --> 00:04:14,820 is this is essentially the closest exit. 81 00:04:14,820 --> 00:04:18,670 We're going to leave the network sooner rather than later. 82 00:04:18,670 --> 00:04:22,800 So it's actually going to look at the cost to get to the exit. 83 00:04:22,800 --> 00:04:25,030 Again, we'll see this in more detail. 84 00:04:25,030 --> 00:04:27,900 This is just going to be for external type 2's. 85 00:04:27,900 --> 00:04:31,020 Next, we have sort of an odd little rule where 86 00:04:31,020 --> 00:04:34,050 we're actually going to prefer routes that do not 87 00:04:34,050 --> 00:04:37,530 have a Forwarding Address, or an FA, 88 00:04:37,530 --> 00:04:42,060 over routes that do have that Forwarding Address, or FA. 89 00:04:42,060 --> 00:04:45,450 So this is just a rule saying that if there's no FA, 90 00:04:45,450 --> 00:04:46,410 prefer that. 91 00:04:46,410 --> 00:04:49,800 This one is going to be a little bit more obscure as far 92 00:04:49,800 --> 00:04:53,410 as when it actually gets used in a production environment. 93 00:04:53,410 --> 00:04:56,640 However, it is still a rule that we want to be aware of. 94 00:04:56,640 --> 00:04:59,490 And finally, we have a rather interesting rule, 95 00:04:59,490 --> 00:05:01,080 rule number seven. 96 00:05:01,080 --> 00:05:03,900 This is the it depends rule. 97 00:05:03,900 --> 00:05:05,700 Now, as we can sort of see here-- 98 00:05:05,700 --> 00:05:08,380 and we're gonna go through this, of course, in detail-- 99 00:05:08,380 --> 00:05:12,360 it really depends on two different RFCs, 100 00:05:12,360 --> 00:05:15,360 which RFC is actually implemented 101 00:05:15,360 --> 00:05:17,800 on this particular device. 102 00:05:17,800 --> 00:05:21,660 RFC 3101 is considered the newer way 103 00:05:21,660 --> 00:05:25,030 to do this, or the newer rule to follow. 104 00:05:25,030 --> 00:05:28,090 However, not all of our devices do that. 105 00:05:28,090 --> 00:05:30,880 So let's take a look at this in a little bit more detail. 106 00:05:30,880 --> 00:05:36,000 So the first decision here would be RFC 1587. 107 00:05:36,000 --> 00:05:39,030 And of course, this is the older rule. 108 00:05:39,030 --> 00:05:42,590 And this is actually where we prefer 109 00:05:42,590 --> 00:05:47,690 a type 5 LSA over a type 7 LSA. 110 00:05:47,690 --> 00:05:50,750 And this was the rule for quite some time. 111 00:05:50,750 --> 00:05:52,970 And essentially, what this rule means 112 00:05:52,970 --> 00:06:01,160 is that we would prefer an E1 or an E2 over an N1 or an N2. 113 00:06:01,160 --> 00:06:04,250 Now, keep in mind, we would never get here with 114 00:06:04,250 --> 00:06:06,380 a combination of 1's or 2's. 115 00:06:06,380 --> 00:06:08,990 They'll either both be 1's, or they'll 116 00:06:08,990 --> 00:06:12,380 both be 2's because we wouldn't have gotten through rule number 117 00:06:12,380 --> 00:06:15,270 three up here if we had a combination. 118 00:06:15,270 --> 00:06:17,990 So just keep that in mind as we're looking at this. 119 00:06:17,990 --> 00:06:21,740 It's either going to be 1's or 2's. 120 00:06:21,740 --> 00:06:25,430 This is more about the E versus the N, 121 00:06:25,430 --> 00:06:32,000 whether it is a we can say normal external versus an NSSA. 122 00:06:32,000 --> 00:06:36,830 Now, RFC 1587 does actually have an issue 123 00:06:36,830 --> 00:06:41,780 if you're trying to control the translator for the NSSA. 124 00:06:41,780 --> 00:06:44,900 It can actually cause the changing of the translator 125 00:06:44,900 --> 00:06:47,330 or the manual setting of the translator 126 00:06:47,330 --> 00:06:51,210 to, well, not work as you would expect it to. 127 00:06:51,210 --> 00:06:53,660 And that's really the main reason they changed 128 00:06:53,660 --> 00:06:56,180 and they gave us 3101. 129 00:06:56,180 --> 00:07:02,030 But notice here that the IOS XR only supports, 130 00:07:02,030 --> 00:07:05,360 at this time, 1587. 131 00:07:05,360 --> 00:07:09,620 Now, that said, this could of course change at any time. 132 00:07:09,620 --> 00:07:13,610 They could easily change the code to support 3101. 133 00:07:13,610 --> 00:07:17,700 But again, as of right now, that's not the case. 134 00:07:17,700 --> 00:07:25,160 And it's not really the focus of IOS XR to run OSPF in an NSSA. 135 00:07:25,160 --> 00:07:30,230 So it's probably not that big of a priority on that code chain 136 00:07:30,230 --> 00:07:35,180 to actually be updating this to support the newer RFCs related 137 00:07:35,180 --> 00:07:37,700 specifically to NSSA. 138 00:07:37,700 --> 00:07:41,960 So all of that said, again, RFC 3101 139 00:07:41,960 --> 00:07:44,820 is basically the newer way of doing this. 140 00:07:44,820 --> 00:07:48,830 And here we're going to prefer the type 7 LSAs 141 00:07:48,830 --> 00:07:53,960 or the N routes before the type 5's or the E routes. 142 00:07:53,960 --> 00:07:57,890 So in this case, it's going to be N before E. 143 00:07:57,890 --> 00:08:03,110 Now, this is the default on newer versions of IOS XE. 144 00:08:03,110 --> 00:08:04,670 I forget the exact version. 145 00:08:04,670 --> 00:08:08,970 It's somewhere around 15.1 where they changed that. 146 00:08:08,970 --> 00:08:12,570 But if for some reason, you do need to change it back, 147 00:08:12,570 --> 00:08:17,600 there is a command compatible RFC 1587, 148 00:08:17,600 --> 00:08:22,020 which will flip it back to using the older method. 149 00:08:22,020 --> 00:08:26,220 In fact, when we go over this rule in an upcoming video, 150 00:08:26,220 --> 00:08:28,820 we'll actually turn this feature on and off 151 00:08:28,820 --> 00:08:35,640 and actually see it switch between 1587 and 3100. 152 00:08:35,640 --> 00:08:39,510 In this video, we just jumped in and got an introduction 153 00:08:39,510 --> 00:08:43,620 to the full OSPF path selection criteria. 154 00:08:43,620 --> 00:08:47,100 And as you can see here, it's a bit more complicated 155 00:08:47,100 --> 00:08:49,800 than just the lowest path cost wins. 156 00:08:49,800 --> 00:08:53,590 But it's also one of the big rules that we have in here. 157 00:08:53,590 --> 00:08:56,280 And as we said, it is where most of the decisions 158 00:08:56,280 --> 00:08:58,780 happen in most environments. 159 00:08:58,780 --> 00:09:01,530 But we're going to go through and jump into each one of these 160 00:09:01,530 --> 00:09:03,160 in the upcoming videos. 161 00:09:03,160 --> 00:09:05,440 So let's go ahead and move on to that. 162 00:09:05,440 --> 00:09:07,470 I hope this has been informative for you, 163 00:09:07,470 --> 00:09:10,520 and I'd like to thank you for viewing. 164 00:09:10,520 --> 00:09:14,000