1 00:00:00,000 --> 00:00:03,864 [AUDIO LOGO] 2 00:00:03,864 --> 00:00:08,220 3 00:00:08,220 --> 00:00:13,110 So in this video, let's take a closer look at the differences 4 00:00:13,110 --> 00:00:15,930 between normal shortest path first, 5 00:00:15,930 --> 00:00:20,640 which of course, is what OSPF and IS-IS normally use, 6 00:00:20,640 --> 00:00:24,510 and constraint-based shortest path first, which is what we're 7 00:00:24,510 --> 00:00:26,400 using for traffic engineering. 8 00:00:26,400 --> 00:00:29,790 Specifically, we want to look at what some of those constraints 9 00:00:29,790 --> 00:00:33,240 are, how we can change them, how it influences the path 10 00:00:33,240 --> 00:00:36,060 selection, and ultimately, how we 11 00:00:36,060 --> 00:00:39,400 choose the path that our tunnel is going to use. 12 00:00:39,400 --> 00:00:41,470 So let's go ahead and jump in and get started 13 00:00:41,470 --> 00:00:44,830 looking at those details. 14 00:00:44,830 --> 00:00:49,530 So we already know that traffic engineering uses CSPF. 15 00:00:49,530 --> 00:00:52,030 But what does that actually mean? 16 00:00:52,030 --> 00:00:56,770 Well, it modifies regular shortest path first 17 00:00:56,770 --> 00:01:02,160 so that it's not just looking at the shortest or the best path. 18 00:01:02,160 --> 00:01:07,800 It's the shortest or best path within defined constraints. 19 00:01:07,800 --> 00:01:12,300 Now, we have already mentioned that the use of CSPF 20 00:01:12,300 --> 00:01:15,240 does require a link-state routing protocol. 21 00:01:15,240 --> 00:01:20,220 So of course, that's only OSPF and IS-IS. 22 00:01:20,220 --> 00:01:23,460 And just for terminology's sake, another name for this 23 00:01:23,460 --> 00:01:27,990 is Constraint-Based Routing, or CBR. 24 00:01:27,990 --> 00:01:32,610 Now, the way that CBR differs from regular link-state routing 25 00:01:32,610 --> 00:01:35,650 is, of course, in a few different ways. 26 00:01:35,650 --> 00:01:41,100 So first, it modifies the use of the link cost 27 00:01:41,100 --> 00:01:44,310 to actually consider a few things that we normally 28 00:01:44,310 --> 00:01:46,770 don't consider, the first of which 29 00:01:46,770 --> 00:01:49,530 is bandwidth availability. 30 00:01:49,530 --> 00:01:52,720 Traditionally, we just look at the total bandwidth. 31 00:01:52,720 --> 00:01:54,690 This is actually looking at how much of that 32 00:01:54,690 --> 00:01:58,170 bandwidth is currently available as opposed, 33 00:01:58,170 --> 00:02:00,060 of course, to being in use. 34 00:02:00,060 --> 00:02:03,450 It also looks at link attributes. 35 00:02:03,450 --> 00:02:06,420 We'll be covering those more in an upcoming video. 36 00:02:06,420 --> 00:02:08,490 And of course, it looks at the priority 37 00:02:08,490 --> 00:02:12,210 of the tunnel, zero to seven, as we discussed 38 00:02:12,210 --> 00:02:14,280 in our previous video. 39 00:02:14,280 --> 00:02:18,920 Now, CBR is generally going to be used on the edge of the MPLS 40 00:02:18,920 --> 00:02:19,460 network-- 41 00:02:19,460 --> 00:02:21,620 again, generally on the PEs. 42 00:02:21,620 --> 00:02:25,680 And it's going to calculate the path to another edge. 43 00:02:25,680 --> 00:02:29,870 So again, this is normally an edge to edge type technology. 44 00:02:29,870 --> 00:02:32,600 And what it's going to do is give us 45 00:02:32,600 --> 00:02:36,650 a series of next-hop addresses instead 46 00:02:36,650 --> 00:02:38,570 of just a single next hop. 47 00:02:38,570 --> 00:02:44,070 This is going to be used to create that entire path. 48 00:02:44,070 --> 00:02:47,100 Now, there are two types of tunnels possible. 49 00:02:47,100 --> 00:02:51,108 The first and probably the most common is dynamic. 50 00:02:51,108 --> 00:02:53,150 This is one that's going to be calculated, again, 51 00:02:53,150 --> 00:02:55,640 by either OSPF or IS-IS-- 52 00:02:55,640 --> 00:02:58,010 in other words, your IGP. 53 00:02:58,010 --> 00:03:02,810 The other one is explicit, where you as the administrator 54 00:03:02,810 --> 00:03:06,260 manually configure a particular path. 55 00:03:06,260 --> 00:03:07,970 This will probably more likely be 56 00:03:07,970 --> 00:03:10,250 done if we're talking about setting up 57 00:03:10,250 --> 00:03:13,980 a tunnel for a specific type of traffic. 58 00:03:13,980 --> 00:03:16,130 Now, another interesting thing to note here, 59 00:03:16,130 --> 00:03:20,390 tunnels do not do multipathing. 60 00:03:20,390 --> 00:03:24,690 Now, understand, MPLS itself can, of course, 61 00:03:24,690 --> 00:03:30,170 do multipathing if we have an IGP tie, which of course, we 62 00:03:30,170 --> 00:03:33,620 mentioned earlier, is equal-cost multipathing. 63 00:03:33,620 --> 00:03:36,320 So MPLS itself can. 64 00:03:36,320 --> 00:03:39,620 The tunnel itself will not. 65 00:03:39,620 --> 00:03:42,950 So if there is equal-cost multipathing, 66 00:03:42,950 --> 00:03:45,680 we're going to break that tie. 67 00:03:45,680 --> 00:03:50,090 The way we're going to do it is using this criteria. 68 00:03:50,090 --> 00:03:55,970 First, we'll look at the highest minimum bandwidth on the path. 69 00:03:55,970 --> 00:03:58,980 Basically, we're looking for the bottleneck. 70 00:03:58,980 --> 00:04:01,940 So whatever the smallest link is, 71 00:04:01,940 --> 00:04:05,150 we're going to choose the best of those. 72 00:04:05,150 --> 00:04:08,090 Next, it's going to go to lowest hop count. 73 00:04:08,090 --> 00:04:10,730 Just between us, we're not going to say that that 74 00:04:10,730 --> 00:04:12,860 sounds an awful lot like RIP. 75 00:04:12,860 --> 00:04:14,760 We're just not going to say that. 76 00:04:14,760 --> 00:04:19,310 But the fact of the matter is it's quite a bit like RIP. 77 00:04:19,310 --> 00:04:21,589 But of course, that's still a little bit better 78 00:04:21,589 --> 00:04:25,430 than the final tiebreaker, which is just really random. 79 00:04:25,430 --> 00:04:27,740 So it's just going to pick a path 80 00:04:27,740 --> 00:04:31,310 to use if there's no other tiebreakers here. 81 00:04:31,310 --> 00:04:34,070 The point is it will only use one path. 82 00:04:34,070 --> 00:04:37,140 And that's fine because it's a single tunnel. 83 00:04:37,140 --> 00:04:41,420 Now, two key factors here of the TE tunnel, 84 00:04:41,420 --> 00:04:47,360 this is not considered an interface to the IGP. 85 00:04:47,360 --> 00:04:50,180 If it was, we could have some issues. 86 00:04:50,180 --> 00:04:53,130 And by not doing so, we prevent them. 87 00:04:53,130 --> 00:04:57,500 First one is we prevent a recursive lookup problem, 88 00:04:57,500 --> 00:04:59,090 where all of a sudden, the tunnel 89 00:04:59,090 --> 00:05:01,670 itself might look like a really good way 90 00:05:01,670 --> 00:05:03,590 to get to the tunnel destination. 91 00:05:03,590 --> 00:05:06,750 And of course, that's a recursive lookup problem. 92 00:05:06,750 --> 00:05:09,210 So that's not going to be allowed. 93 00:05:09,210 --> 00:05:14,180 It also prevents triggering an SPF calculation. 94 00:05:14,180 --> 00:05:17,990 We don't want SPF to have to reconverge 95 00:05:17,990 --> 00:05:20,180 every time a tunnel comes up. 96 00:05:20,180 --> 00:05:22,340 So these are both really good things 97 00:05:22,340 --> 00:05:24,860 that happen because it's not actually 98 00:05:24,860 --> 00:05:28,250 treated as an IGP interface. 99 00:05:28,250 --> 00:05:31,760 And another big thing that changes with CSPF 100 00:05:31,760 --> 00:05:33,830 and the changes to our routing protocols 101 00:05:33,830 --> 00:05:37,130 is we pick up this feature called autoroute. 102 00:05:37,130 --> 00:05:39,110 Now, we're going to talk about traffic steering 103 00:05:39,110 --> 00:05:41,160 in a little more detail coming up. 104 00:05:41,160 --> 00:05:45,410 But for now, let's just say that the tunnel actually 105 00:05:45,410 --> 00:05:47,310 appears in the routing table. 106 00:05:47,310 --> 00:05:49,460 So yes, it's an interface. 107 00:05:49,460 --> 00:05:53,840 It's just not an interface in the IGP. 108 00:05:53,840 --> 00:05:57,170 It does have its own IGP metric, however. 109 00:05:57,170 --> 00:06:01,460 And it, of course, can be used to forward traffic. 110 00:06:01,460 --> 00:06:04,160 All of that said, again, it is still 111 00:06:04,160 --> 00:06:07,790 not used in link-state updates. 112 00:06:07,790 --> 00:06:11,060 Again, that's going back to the statement up here, 113 00:06:11,060 --> 00:06:14,960 where it's not actually an interface to the IGP, 114 00:06:14,960 --> 00:06:17,630 so that we prevent these other problems. 115 00:06:17,630 --> 00:06:19,820 But autoroute does give us a method 116 00:06:19,820 --> 00:06:22,340 to get traffic to go into this tunnel. 117 00:06:22,340 --> 00:06:26,480 We'll talk about that more in an upcoming video. 118 00:06:26,480 --> 00:06:29,320 So in this video, we looked at the things 119 00:06:29,320 --> 00:06:33,700 that had to change between normal shortest path first 120 00:06:33,700 --> 00:06:37,180 and constraint-based shortest path first in order for it 121 00:06:37,180 --> 00:06:39,280 to work for traffic engineering. 122 00:06:39,280 --> 00:06:41,920 We talked about how it will actually not 123 00:06:41,920 --> 00:06:43,900 use equal-cost multipathing. 124 00:06:43,900 --> 00:06:46,120 But it will come down to a tiebreaker, 125 00:06:46,120 --> 00:06:48,970 even if that's just randomly choosing a path. 126 00:06:48,970 --> 00:06:52,330 And we talked about how it doesn't use this tunnel 127 00:06:52,330 --> 00:06:57,220 as an actual IGP interface, therefore preventing some, 128 00:06:57,220 --> 00:07:01,640 well, rather catastrophic problems that could occur. 129 00:07:01,640 --> 00:07:04,210 Now, we've spent a lot of time talking 130 00:07:04,210 --> 00:07:07,150 about how this tunnel is built, how it's set up, 131 00:07:07,150 --> 00:07:10,250 the different protocols and decisions that have to be made. 132 00:07:10,250 --> 00:07:12,160 But at the end of the day, the tunnel 133 00:07:12,160 --> 00:07:15,160 won't do any good unless we get traffic 134 00:07:15,160 --> 00:07:16,630 to go through the tunnel. 135 00:07:16,630 --> 00:07:19,090 And that we call traffic steering. 136 00:07:19,090 --> 00:07:21,710 And that's what we get to cover next. 137 00:07:21,710 --> 00:07:25,120 Until then, I hope this has been informative for you, 138 00:07:25,120 --> 00:07:28,320 and I'd like to thank you for viewing. 139 00:07:28,320 --> 00:07:32,000