1 00:00:00,000 --> 00:00:03,936 [AUDIO LOGO] 2 00:00:03,936 --> 00:00:07,880 3 00:00:07,880 --> 00:00:11,150 Finally, let's jump in and get an introduction 4 00:00:11,150 --> 00:00:13,820 to multicast routing protocols. 5 00:00:13,820 --> 00:00:18,380 Our main purpose in this video and this skill, in general, 6 00:00:18,380 --> 00:00:21,380 in regards to routing protocols is really just 7 00:00:21,380 --> 00:00:23,910 to talk about the different choices that are available. 8 00:00:23,910 --> 00:00:26,730 And as we've mentioned in previous videos, 9 00:00:26,730 --> 00:00:28,760 we sort of know that we generally 10 00:00:28,760 --> 00:00:32,390 use PIM, or Protocol-Independent Multicast, 11 00:00:32,390 --> 00:00:34,680 for our multicast routing. 12 00:00:34,680 --> 00:00:36,560 So what we're going to be focusing on here 13 00:00:36,560 --> 00:00:38,600 are some of the other options just 14 00:00:38,600 --> 00:00:40,910 so you're aware that they exist and a little bit 15 00:00:40,910 --> 00:00:42,410 about how they work. 16 00:00:42,410 --> 00:00:44,480 We have a whole nother skill coming up 17 00:00:44,480 --> 00:00:46,890 that focuses in on PIM itself. 18 00:00:46,890 --> 00:00:48,740 So again, this is just an introduction. 19 00:00:48,740 --> 00:00:53,530 Let's go ahead and jump in and get started. 20 00:00:53,530 --> 00:00:55,470 So one of the things we're going to discuss 21 00:00:55,470 --> 00:00:57,930 are the different multicast routing 22 00:00:57,930 --> 00:01:01,870 protocols used in different places of the network. 23 00:01:01,870 --> 00:01:05,970 Not all of the protocols are for between the routers to exchange 24 00:01:05,970 --> 00:01:07,720 multicast information. 25 00:01:07,720 --> 00:01:11,700 So first, we have between the source 26 00:01:11,700 --> 00:01:13,980 and the first-hop router. 27 00:01:13,980 --> 00:01:18,520 And here no protocol is used. 28 00:01:18,520 --> 00:01:23,220 What happens is the sender just starts sending packets 29 00:01:23,220 --> 00:01:24,630 onto the network. 30 00:01:24,630 --> 00:01:27,750 It uses, of course, the correct multicast group 31 00:01:27,750 --> 00:01:29,320 as the destination. 32 00:01:29,320 --> 00:01:32,460 And what happens is that first-hop router 33 00:01:32,460 --> 00:01:34,290 sees the traffic coming in. 34 00:01:34,290 --> 00:01:37,860 And then using its router-to-router protocols, 35 00:01:37,860 --> 00:01:40,990 it then forwards the traffic appropriately. 36 00:01:40,990 --> 00:01:45,300 Now, between those routers, within a single domain, 37 00:01:45,300 --> 00:01:48,600 we have the option to have a couple of different protocols. 38 00:01:48,600 --> 00:01:51,870 But as I mentioned, we generally use PIM. 39 00:01:51,870 --> 00:01:55,570 Some other choices that have been available-- well, we 40 00:01:55,570 --> 00:01:59,620 have what's called Distance Vector Multicast Routing 41 00:01:59,620 --> 00:02:02,920 Protocol, or DVMRP. 42 00:02:02,920 --> 00:02:08,949 This is referenced in RFC 1075, which is a fairly old RFC. 43 00:02:08,949 --> 00:02:11,740 This is based on RIP. 44 00:02:11,740 --> 00:02:13,900 We won't necessarily make any comment 45 00:02:13,900 --> 00:02:17,110 on that, because RIP is a spectacular protocol 46 00:02:17,110 --> 00:02:18,400 to base things on. 47 00:02:18,400 --> 00:02:22,090 And just like RIP, it uses poison reverse 48 00:02:22,090 --> 00:02:23,920 for loop prevention. 49 00:02:23,920 --> 00:02:27,400 I don't think we have to probably say too much about why 50 00:02:27,400 --> 00:02:29,380 this isn't super popular. 51 00:02:29,380 --> 00:02:31,990 Then they decided to do the same thing 52 00:02:31,990 --> 00:02:36,070 by adding multicast to Open Shortest Path First, which, 53 00:02:36,070 --> 00:02:37,630 of course, is OSPF. 54 00:02:37,630 --> 00:02:40,450 And we end up with MOSPF. 55 00:02:40,450 --> 00:02:42,580 This, again, is an older RFC. 56 00:02:42,580 --> 00:02:44,380 It's 1584. 57 00:02:44,380 --> 00:02:48,430 And this just uses standard LSAs to advertise 58 00:02:48,430 --> 00:02:50,080 connected receivers. 59 00:02:50,080 --> 00:02:53,530 This, again, wasn't a very popular choice. 60 00:02:53,530 --> 00:02:57,340 And most devices don't even support this. 61 00:02:57,340 --> 00:03:02,360 Then we have one called Core-Based Tree, or CBT. 62 00:03:02,360 --> 00:03:04,030 This is a little bit newer. 63 00:03:04,030 --> 00:03:06,880 This is from RFC 2189. 64 00:03:06,880 --> 00:03:10,240 This uses the underlying IGP, which 65 00:03:10,240 --> 00:03:13,580 is very similar to PIM itself. 66 00:03:13,580 --> 00:03:17,860 So in a way, it was a bit of a predecessor to PIM. 67 00:03:17,860 --> 00:03:20,770 Now, again, all the ones we've talked about so far 68 00:03:20,770 --> 00:03:24,250 really aren't very popular and/or are not even 69 00:03:24,250 --> 00:03:25,990 supported on most equipment. 70 00:03:25,990 --> 00:03:28,840 Then, of course, we have the most popular, 71 00:03:28,840 --> 00:03:34,090 Protocol-Independent Multicast, or PIM. 72 00:03:34,090 --> 00:03:36,490 So let's talk about some of its details. 73 00:03:36,490 --> 00:03:39,430 First, for loop prevention, it uses 74 00:03:39,430 --> 00:03:43,720 something called the RPF check, or the Reverse Path Forwarding 75 00:03:43,720 --> 00:03:44,470 check. 76 00:03:44,470 --> 00:03:48,490 We'll talk about this in much more detail in our skill 77 00:03:48,490 --> 00:03:49,930 on PIM. 78 00:03:49,930 --> 00:03:53,590 This also uses the underlying IGP-- 79 00:03:53,590 --> 00:03:58,010 so for example, EIGRP, OSPF, even RIP. 80 00:03:58,010 --> 00:04:00,710 It'll use whatever your IGP is. 81 00:04:00,710 --> 00:04:04,100 And what it's going to use that for is to do this RPF check 82 00:04:04,100 --> 00:04:05,240 we just talked about. 83 00:04:05,240 --> 00:04:07,970 That's what it's going to use that IGP for. 84 00:04:07,970 --> 00:04:12,560 And it uses that information to build a multicast distribution 85 00:04:12,560 --> 00:04:13,400 tree. 86 00:04:13,400 --> 00:04:18,019 Now, this can operate in either sparse mode or dense mode. 87 00:04:18,019 --> 00:04:22,700 Dense mode is referenced in RFC 3973. 88 00:04:22,700 --> 00:04:26,990 This is referred to as a flood and prune model. 89 00:04:26,990 --> 00:04:29,480 And it's a bit of a push model. 90 00:04:29,480 --> 00:04:33,650 It makes the assumption that everybody wants the multicast. 91 00:04:33,650 --> 00:04:37,490 And those that don't need to prune it back. 92 00:04:37,490 --> 00:04:42,500 Then we have the opposite, which is sparse mode operation. 93 00:04:42,500 --> 00:04:45,800 This one's in RFC 4601. 94 00:04:45,800 --> 00:04:49,520 This one uses a shared distribution tree, 95 00:04:49,520 --> 00:04:52,940 where the multicast packets are delivered to something called 96 00:04:52,940 --> 00:04:56,390 a Rendezvous Point, or an RP. 97 00:04:56,390 --> 00:04:58,550 And then the routers that need this 98 00:04:58,550 --> 00:05:02,270 make a request from the RP for the information. 99 00:05:02,270 --> 00:05:04,950 This is more of a pull model. 100 00:05:04,950 --> 00:05:07,640 So again, PIM is the primary protocol 101 00:05:07,640 --> 00:05:10,400 used for multicast intradomain routing. 102 00:05:10,400 --> 00:05:13,490 And we will have an entire skill coming up on this. 103 00:05:13,490 --> 00:05:16,310 So we understand this in much more detail, 104 00:05:16,310 --> 00:05:19,880 mostly how sparse mode operation works. 105 00:05:19,880 --> 00:05:23,130 Dense mode, again, not an incredibly popular choice. 106 00:05:23,130 --> 00:05:27,020 We'll be focusing mostly on sparse mode. 107 00:05:27,020 --> 00:05:31,510 Now, between domains, we need an interdomain protocol. 108 00:05:31,510 --> 00:05:35,350 For this, we can use multiprotocol BGP, 109 00:05:35,350 --> 00:05:39,160 which we've used for many other things throughout this course. 110 00:05:39,160 --> 00:05:45,250 But understand that this is only used for those RPF checks. 111 00:05:45,250 --> 00:05:50,080 It does not actually build the multicast trees. 112 00:05:50,080 --> 00:05:52,700 This is not part of its job. 113 00:05:52,700 --> 00:05:55,570 So multiprotocol BGP is only going 114 00:05:55,570 --> 00:05:58,420 to be solving half of this problem. 115 00:05:58,420 --> 00:06:03,160 The other part here is Multicast Source Discovery Protocol, 116 00:06:03,160 --> 00:06:05,050 or MSDP. 117 00:06:05,050 --> 00:06:08,770 The job of MSDP is to exchange what's 118 00:06:08,770 --> 00:06:14,200 called Source Active, or SA, messages between the RPs 119 00:06:14,200 --> 00:06:16,120 of different domains. 120 00:06:16,120 --> 00:06:20,020 This way, the RPs know what sources are 121 00:06:20,020 --> 00:06:22,240 available in the other domains. 122 00:06:22,240 --> 00:06:25,210 And once we know where those sources are, 123 00:06:25,210 --> 00:06:29,360 we can then still use traditional PIM sparse mode 124 00:06:29,360 --> 00:06:34,720 within each domain and connect these trees together. 125 00:06:34,720 --> 00:06:38,760 So in this video, we just jumped in with a quick introduction 126 00:06:38,760 --> 00:06:41,520 to some of the multicast routing protocols 127 00:06:41,520 --> 00:06:43,180 that we have available. 128 00:06:43,180 --> 00:06:46,140 Now, keep in mind, out of this whole list, 129 00:06:46,140 --> 00:06:47,940 pretty much the only things we use 130 00:06:47,940 --> 00:06:52,740 these days are, of course, PIM, specifically PIM version 2, 131 00:06:52,740 --> 00:06:58,560 and between domains, multiprotocol BGP with MSDP 132 00:06:58,560 --> 00:07:00,870 along with our PIM version 2. 133 00:07:00,870 --> 00:07:04,120 That's within each of the individual domains. 134 00:07:04,120 --> 00:07:08,880 So that concludes everything we need to discuss in this skill. 135 00:07:08,880 --> 00:07:11,970 And that leaves us with nothing other than to do 136 00:07:11,970 --> 00:07:14,460 a review in the form of a quiz. 137 00:07:14,460 --> 00:07:17,350 And that's exactly what we're going to do next. 138 00:07:17,350 --> 00:07:20,700 Until then, I hope this has been informative for you, 139 00:07:20,700 --> 00:07:23,870 and I'd like to thank you for viewing. 140 00:07:23,870 --> 00:07:28,000