1 00:00:00,360 --> 00:00:02,940 When we talk about the way data flows in a network, 2 00:00:02,940 --> 00:00:05,340 there's really three different ways it can flow, 3 00:00:05,340 --> 00:00:08,070 if you're talking about IP version four. 4 00:00:08,070 --> 00:00:11,580 IPv4 allows us to have unicast, multicast, 5 00:00:11,580 --> 00:00:13,500 and broadcast data flows. 6 00:00:13,500 --> 00:00:15,060 First we have unicast, 7 00:00:15,060 --> 00:00:16,890 and unicast is when data travels 8 00:00:16,890 --> 00:00:19,800 from a single source to a single destination. 9 00:00:19,800 --> 00:00:20,910 So if you want to think about this 10 00:00:20,910 --> 00:00:22,950 like me picking up the phone and calling you, 11 00:00:22,950 --> 00:00:25,710 it's a one-way conversation between you and me. 12 00:00:25,710 --> 00:00:28,410 There's only two people who are talking, me and you, 13 00:00:28,410 --> 00:00:32,340 and it's unicast, going from me to you, or from you to me. 14 00:00:32,340 --> 00:00:34,200 Second, we have multicast, 15 00:00:34,200 --> 00:00:37,230 and this allows data transfer from a specific source 16 00:00:37,230 --> 00:00:40,200 to multiple but specific destinations. 17 00:00:40,200 --> 00:00:42,000 For example, maybe I'm in a classroom 18 00:00:42,000 --> 00:00:43,530 with three different people. 19 00:00:43,530 --> 00:00:45,990 I can now talk to all three of them at once, 20 00:00:45,990 --> 00:00:47,910 because I'm talking to the three people 21 00:00:47,910 --> 00:00:49,410 who are sitting in that classroom, 22 00:00:49,410 --> 00:00:52,620 and it's going from me to those three specific people. 23 00:00:52,620 --> 00:00:54,180 Now, broadcast on the other hand, 24 00:00:54,180 --> 00:00:56,310 is when data travels from a single source 25 00:00:56,310 --> 00:00:59,220 to all the sources on a destination network. 26 00:00:59,220 --> 00:01:02,160 If you think about this, if I go and do a radio broadcast, 27 00:01:02,160 --> 00:01:04,110 I might be speaking on the radio 28 00:01:04,110 --> 00:01:05,640 and I don't know who I'm talking to. 29 00:01:05,640 --> 00:01:07,620 I just know that I'm talking to anybody 30 00:01:07,620 --> 00:01:09,570 who happens to tune in and listen. 31 00:01:09,570 --> 00:01:11,550 That's the big difference between unicast, 32 00:01:11,550 --> 00:01:13,740 multicast and broadcast. 33 00:01:13,740 --> 00:01:15,600 Let's look at each of these a little bit closer 34 00:01:15,600 --> 00:01:17,370 by looking at some diagrams. 35 00:01:17,370 --> 00:01:19,890 First we have unicast, and let's say I have unicast, 36 00:01:19,890 --> 00:01:22,230 and I have one server who wants to send messages 37 00:01:22,230 --> 00:01:24,360 to PC one and PC two. 38 00:01:24,360 --> 00:01:26,130 If I put that message in an envelope, 39 00:01:26,130 --> 00:01:27,480 also known as a packet, 40 00:01:27,480 --> 00:01:30,030 I can then send it out, based on its IP address, 41 00:01:30,030 --> 00:01:34,170 from the server to PC one, or from the server to PC two. 42 00:01:34,170 --> 00:01:35,910 Now, when I go into multicast, 43 00:01:35,910 --> 00:01:38,130 I can send just a single message 44 00:01:38,130 --> 00:01:41,070 and it will be directed to whoever I want it to be into 45 00:01:41,070 --> 00:01:43,110 as part of their multicast group. 46 00:01:43,110 --> 00:01:45,690 So my server in this case is sending out a message 47 00:01:45,690 --> 00:01:49,683 to multicast group number one at 239.2.1.3. 48 00:01:51,000 --> 00:01:52,350 When it gets to the switch, 49 00:01:52,350 --> 00:01:55,020 the switch determines who's part of that multicast group, 50 00:01:55,020 --> 00:01:57,660 and in this example, PC one and PC two 51 00:01:57,660 --> 00:01:59,550 both get a copy of that message. 52 00:01:59,550 --> 00:02:01,410 That's the great thing about multicast, 53 00:02:01,410 --> 00:02:03,360 is I don't have to repeat the message twice, 54 00:02:03,360 --> 00:02:04,890 even if it's the same message, 55 00:02:04,890 --> 00:02:06,930 because it's going out and hitting that switch 56 00:02:06,930 --> 00:02:09,990 and getting repeated everyone in that group. 57 00:02:09,990 --> 00:02:11,700 This works very much like when we're doing things 58 00:02:11,700 --> 00:02:14,850 like broadcasting video using a service like a live stream, 59 00:02:14,850 --> 00:02:17,400 and I can send the message once to my Facebook group, 60 00:02:17,400 --> 00:02:19,290 and then Facebook can multicast that out 61 00:02:19,290 --> 00:02:21,630 to all of the users who want it. 62 00:02:21,630 --> 00:02:23,370 Next we have broadcast, 63 00:02:23,370 --> 00:02:25,530 and when you're dealing with a broadcast message, 64 00:02:25,530 --> 00:02:26,940 this is when the server sends it out 65 00:02:26,940 --> 00:02:30,150 and says, hey, switch, everyone is connected to you. 66 00:02:30,150 --> 00:02:32,070 Tell them all about this message. 67 00:02:32,070 --> 00:02:34,170 By doing that, it's going to broadcast that out 68 00:02:34,170 --> 00:02:35,970 to everybody on the network. 69 00:02:35,970 --> 00:02:38,520 So if you're using a standard Class C network, 70 00:02:38,520 --> 00:02:43,260 that would actually go out to 255.255.255.255. 71 00:02:43,260 --> 00:02:44,670 And when it goes out to the switch, 72 00:02:44,670 --> 00:02:47,490 it's going to send it to everybody who's connected to it. 73 00:02:47,490 --> 00:02:51,840 And in this case, that's PCs one, PC two, and PC three. 74 00:02:51,840 --> 00:02:53,160 Now, some students get confused 75 00:02:53,160 --> 00:02:55,860 between multicast and broadcast. 76 00:02:55,860 --> 00:02:58,740 The key distinction there is with broadcast, 77 00:02:58,740 --> 00:03:00,450 everybody is going to get it. 78 00:03:00,450 --> 00:03:03,930 But with multicast, only those who have opted into it 79 00:03:03,930 --> 00:03:05,430 are going to get that message, 80 00:03:05,430 --> 00:03:07,280 and that's the key distinction there.