WEBVTT 0:00:02.880000 --> 0:00:06.920000 Hello and welcome to this video titled the rapid spanning tree protocol 0:00:06.920000 --> 0:00:09.200000 topology changes. 0:00:09.200000 --> 0:00:12.640000 In this video, that's exactly what I'm going to talk about is how does 0:00:12.640000 --> 0:00:18.260000 rapid spanning tree protocol react when a topology change occurs? 0:00:18.260000 --> 0:00:21.080000 So let's look into it. 0:00:21.080000 --> 0:00:25.440000 So if you've watched any of my videos or studied rapid spanning tree on 0:00:25.440000 --> 0:00:30.640000 your own, you'll know that. 0:00:30.640000 --> 0:00:32.920000 The original spanning tree came out in 1998. 0:00:32.920000 --> 0:00:35.640000 It was called 802 dot 1d. 0:00:35.640000 --> 0:00:38.760000 Rapid spanning tree came out three years later in 2001. 0:00:38.760000 --> 0:00:44.080000 It was called 802 dot 1d as an amendment to spanning tree. 0:00:44.080000 --> 0:00:49.840000 And then it was incorporated into 802 dot 1d three years later in 2004. 0:00:49.840000 --> 0:00:56.280000 Now in the original version of 802 dot 1d in 1998, basically, almost anything 0:00:56.280000 --> 0:01:01.340000 that could happen to a port would cause that switch to generate a topology 0:01:01.340000 --> 0:01:05.000000 change. If a port went blocking, if a port went forwarding, if it went 0:01:05.000000 --> 0:01:09.260000 down, pretty much any event you could think of that could happen to a 0:01:09.260000 --> 0:01:12.780000 port on a switch would cause that switch to say, oh, there's been a topology 0:01:12.780000 --> 0:01:16.260000 change. I need to let the root bridge know about that. 0:01:16.260000 --> 0:01:21.000000 And in 802 dot 1d, the original, it was really the job of the root bridge 0:01:21.000000 --> 0:01:25.520000 once he found out that there had been a topology change to let the rest 0:01:25.520000 --> 0:01:29.460000 of the switch topology know that something had happened. 0:01:29.460000 --> 0:01:33.220000 And then what would happen as a result of that was something we're not 0:01:33.220000 --> 0:01:35.980000 going to cover because this video is not talking about that. 0:01:35.980000 --> 0:01:41.800000 So when 802 dot 1d w, 802 dot 1d w came out rapid spanning tree, they 0:01:41.800000 --> 0:01:45.020000 changed the topology change process quite a bit. 0:01:45.020000 --> 0:01:48.760000 So the first thing they changed was they said, okay, we want to restrict 0:01:48.760000 --> 0:01:49.440000 this a little bit. 0:01:49.440000 --> 0:01:54.900000 We don't want any willy-nilly change on a port to cause this topology 0:01:54.900000 --> 0:01:58.460000 change process to happen that I'm about to describe for you. 0:01:58.460000 --> 0:02:02.640000 So with 802 dot 1d w, which is now incorporated into spanning tree, they 0:02:02.640000 --> 0:02:07.680000 said only when a non edge port goes forwarding, will that be considered 0:02:07.680000 --> 0:02:09.400000 a topology change? 0:02:09.400000 --> 0:02:12.600000 Now remember, what is a non edge port? 0:02:12.600000 --> 0:02:16.460000 That is a port that does not have port fast. 0:02:16.460000 --> 0:02:19.720000 So any interface on your switch running rapid spanning tree that does 0:02:19.720000 --> 0:02:23.840000 not have port fast configured is considered a non edge port. 0:02:23.840000 --> 0:02:28.600000 And only when that port goes into the forwarding state, will that switch 0:02:28.600000 --> 0:02:32.460000 say, ah, a topology change has just happened. 0:02:32.460000 --> 0:02:37.000000 Okay. So if the port goes blocking, if it goes down, nope, that doesn't 0:02:37.000000 --> 0:02:39.320000 cause it. Only if it goes into the forwarding state. 0:02:39.320000 --> 0:02:41.960000 Secondly, what does that switch do about it? 0:02:41.960000 --> 0:02:46.180000 Well, in rapid spanning tree, if I am a switch, doesn't matter if I'm 0:02:46.180000 --> 0:02:49.240000 the root bridge or not, if I'm any switch in the topology and all of a 0:02:49.240000 --> 0:02:53.520000 sudden I have a non edge port that just comes up. 0:02:53.520000 --> 0:02:57.860000 Now remember, if this is a non edge port, it's probably a port leading 0:02:57.860000 --> 0:02:59.660000 to another switch. 0:02:59.660000 --> 0:03:03.860000 Because if this is a port leading to a host device like a laptop or a 0:03:03.860000 --> 0:03:08.380000 PC or even a port leading to a router, one would assume we would have 0:03:08.380000 --> 0:03:10.520000 configured port fast on that interface. 0:03:10.520000 --> 0:03:14.300000 So if a non edge port goes forwarding, that's most likely an infrastructure 0:03:14.300000 --> 0:03:19.040000 port leading to another switch, either a new switch in the topology or 0:03:19.040000 --> 0:03:24.680000 something. So in that case, I say, oh, I need to let the whole topology 0:03:24.680000 --> 0:03:27.500000 know that there's been a topology change. 0:03:27.500000 --> 0:03:29.140000 So how am I going to do that? 0:03:29.140000 --> 0:03:33.380000 I'm going to generate a topology change BPDU. 0:03:33.380000 --> 0:03:37.540000 Now, if you know what the structure of a regular BPDU looks like, and 0:03:37.540000 --> 0:03:40.020000 actually let's just go back a little bit and take a look at one of those 0:03:40.020000 --> 0:03:50.220000 real quickly. So here was our BPDU, our rapid spanning tree BPDU. 0:03:50.220000 --> 0:03:55.080000 And if you'll recall, in the rapid spanning tree BPDU, we had a one byte 0:03:55.080000 --> 0:03:57.540000 field called flags. 0:03:57.540000 --> 0:04:04.360000 So there was our flags field. 0:04:04.360000 --> 0:04:07.760000 And in the flags field, let's go ahead and look at that a little bit more 0:04:07.760000 --> 0:04:15.560000 closely. So in the flags field, here was the flags field. 0:04:15.560000 --> 0:04:25.640000 We had a topology change bit and a topology change acknowledgement bit. 0:04:25.640000 --> 0:04:30.400000 So if I am a switch, whether I'm the root bridge or not, and I detected 0:04:30.400000 --> 0:04:35.600000 a non edge port has just gone forwarding, I will immediately create a 0:04:35.600000 --> 0:04:39.220000 BPDU. Now if I'm not the root bridge, I'm not going to all of a sudden 0:04:39.220000 --> 0:04:41.760000 say, hey, I'm the root bridge, I'm not going to do that. 0:04:41.760000 --> 0:04:45.540000 I will still say, hey, the root bridge is a switch out there, but I will 0:04:45.540000 --> 0:04:49.080000 now set this bit right here to a one. 0:04:49.080000 --> 0:04:54.340000 So we'll say yes, there has been a topology change and I will do that. 0:04:54.340000 --> 0:04:56.320000 Now where am I going to send that? 0:04:56.320000 --> 0:05:01.160000 So I've just created that BPDU, I've just set the topology bit to a one. 0:05:01.160000 --> 0:05:04.920000 Where am I going to send that BPDU? 0:05:04.920000 --> 0:05:11.400000 Well as you can see right here, I will transmit it on my root port. 0:05:11.400000 --> 0:05:12.800000 It says all root ports. 0:05:12.800000 --> 0:05:16.660000 Well I'm only going to have one root port and I will transmit it on all 0:05:16.660000 --> 0:05:21.020000 of my designated ports that are non edge. 0:05:21.020000 --> 0:05:22.840000 Let's just draw this here for a second. 0:05:22.840000 --> 0:05:28.180000 Kind of wordy. So here's the root bridge out here. 0:05:28.180000 --> 0:05:34.540000 He's somewhere in the cloud that I get to him and here's me, here's my 0:05:34.540000 --> 0:05:40.020000 switch. So here's my root port. 0:05:40.020000 --> 0:05:46.680000 Here I have a couple of designated ports, but these are edge. 0:05:46.680000 --> 0:05:51.700000 I've got port fast turned on on those. 0:05:51.700000 --> 0:05:56.440000 So maybe one's leading to a PC, maybe one is leading to a router. 0:05:56.440000 --> 0:06:06.040000 Here I have a couple of other designated ports leading to downstream switches. 0:06:06.040000 --> 0:06:11.040000 Maybe here I have a couple of blocking ports. 0:06:11.040000 --> 0:06:13.680000 Okay so that's my steady state. 0:06:13.680000 --> 0:06:20.920000 Now all of a sudden a new port comes up, most likely connected to a switch. 0:06:20.920000 --> 0:06:23.800000 This goes forwarding. 0:06:23.800000 --> 0:06:27.060000 It's a designated port and it's non edge. 0:06:27.060000 --> 0:06:27.900000 That is my trigger. 0:06:27.900000 --> 0:06:31.720000 I say aha, I need to create a topology change BPDU. 0:06:31.720000 --> 0:06:35.860000 So as we can see, I will send that topology change BPDU out my root port 0:06:35.860000 --> 0:06:40.740000 and out my non edge designated ports. 0:06:40.740000 --> 0:06:44.220000 I'm not going to send it out my blocking ports and I'm not going to send 0:06:44.220000 --> 0:06:45.480000 it out my edge ports. 0:06:45.480000 --> 0:06:48.480000 That router, that PC, they wouldn't even know what to do with it anyway. 0:06:48.480000 --> 0:06:49.940000 They're not running spanning tree. 0:06:49.940000 --> 0:06:51.680000 So that's where it's going to go. 0:06:51.680000 --> 0:06:56.400000 So the first critical piece of this is you need to recognize where the 0:06:56.400000 --> 0:06:59.340000 topology change BPDU will go. 0:06:59.340000 --> 0:07:02.840000 Now you might say, well why do I care where it will go? 0:07:02.840000 --> 0:07:06.600000 Well because in rapid spanning tree, here's the critical thing. 0:07:06.600000 --> 0:07:12.260000 If I transmit a BPDU out an interface, like in this case I'm transmitting 0:07:12.260000 --> 0:07:21.340000 it out here, here, and here, any MAC addresses that I learned on those 0:07:21.340000 --> 0:07:26.640000 interfaces gone, I flush them, I delete them. 0:07:26.640000 --> 0:07:28.440000 So that's the critical thing. 0:07:28.440000 --> 0:07:32.780000 If you don't know which interface the switch is going to forward his topology 0:07:32.780000 --> 0:07:38.980000 BPDU on, you won't understand why did some MAC addresses just get erased? 0:07:38.980000 --> 0:07:43.280000 Why did some MAC addresses not get erased? 0:07:43.280000 --> 0:07:50.000000 Now also, let's say that we have this situation. 0:07:50.000000 --> 0:08:02.500000 Okay, so here is a root port. 0:08:02.500000 --> 0:08:07.500000 Here we have a designated port, a designated port, and another designated 0:08:07.500000 --> 0:08:10.420000 port, but this is edge. 0:08:10.420000 --> 0:08:21.500000 Okay, now I receive a topology change BPDU. 0:08:21.500000 --> 0:08:27.720000 So this is me right here. 0:08:27.720000 --> 0:08:31.240000 So some non-edge port went forward somewhere in the topology. 0:08:31.240000 --> 0:08:36.140000 It wasn't on my switch, but because that happened, I received a topology 0:08:36.140000 --> 0:08:39.800000 change BPDU. So first question, where am I going to send it? 0:08:39.800000 --> 0:08:43.080000 Well we know. I'm not going to send it on my root port in this case because 0:08:43.080000 --> 0:08:44.700000 I just received it on my root port. 0:08:44.700000 --> 0:08:47.460000 I wouldn't reflect it right back out the same port I just received it 0:08:47.460000 --> 0:08:52.560000 on, but I will send it out here on this interface and I'll send it out 0:08:52.560000 --> 0:08:56.540000 here. These are my non -edge designated ports. 0:08:56.540000 --> 0:09:01.760000 Okay, according to Rapid Spanning Tree, any MAC addresses I learned on 0:09:01.760000 --> 0:09:06.460000 these two interfaces where I transmitted it, those are wiped out. 0:09:06.460000 --> 0:09:11.440000 So remember, my edge port, I did not send it there. 0:09:11.440000 --> 0:09:13.700000 I did not forward the topology change BPDU. 0:09:13.700000 --> 0:09:17.240000 So any MAC addresses I learned on that edge port, those are safe. 0:09:17.240000 --> 0:09:18.800000 I'm not going to delete those. 0:09:18.800000 --> 0:09:25.640000 Also, the port where I received the topology change BPDU, that's safe 0:09:25.640000 --> 0:09:29.160000 as well. Any MAC addresses I learned on that interface are not going to 0:09:29.160000 --> 0:09:33.440000 be touched. Only the MAC addresses on the interfaces where I transmitted 0:09:33.440000 --> 0:09:38.760000 or forwarded that topology change BPDU, only those MAC addresses are wiped 0:09:38.760000 --> 0:09:47.480000 out. And that's what this is talking about right here. 0:09:47.480000 --> 0:09:48.860000 So just one more thing. 0:09:48.860000 --> 0:09:50.640000 So let's take a look at this. 0:09:50.640000 --> 0:09:53.860000 Now let me ask you, I'm going to ask you a question and then I want you 0:09:53.860000 --> 0:09:56.760000 to pause the video and answer it. 0:09:56.760000 --> 0:09:58.760000 Here is your question. 0:09:58.760000 --> 0:10:04.760000 If I connect a link between switch 4 and switch 3, so right here on switch 0:10:04.760000 --> 0:10:14.500000 3, now we have a non-edge port going forwarding. 0:10:14.500000 --> 0:10:16.260000 Here's my question to you. 0:10:16.260000 --> 0:10:20.920000 How will that affect the MAC address tables that you see here? 0:10:20.920000 --> 0:10:24.620000 So go ahead and take maybe a screenshot of this video, this image right 0:10:24.620000 --> 0:10:28.260000 here, put the video on pause and what I want you to do is I want you to 0:10:28.260000 --> 0:10:33.140000 draw a line through any MAC addresses that will be deleted in these three 0:10:33.140000 --> 0:10:35.900000 tables as a result of this process. 0:10:35.900000 --> 0:10:37.940000 So go ahead and pause the video now and then press play when you think 0:10:37.940000 --> 0:10:44.520000 you've got the answer. 0:10:44.520000 --> 0:10:47.000000 Okay, so here is the answer. 0:10:47.000000 --> 0:10:51.200000 So number one, we know that with a non -edge port going forwarding, that 0:10:51.200000 --> 0:10:55.600000 means switch 3 is going to forward out, he's going to create a topology 0:10:55.600000 --> 0:11:01.080000 change BPDU and he's going to forward it out all non-edge ports he has, 0:11:01.080000 --> 0:11:02.920000 including his root port. 0:11:02.920000 --> 0:11:06.900000 So he's going to forward it out here. 0:11:06.900000 --> 0:11:09.640000 And he's also going to forward it out here. 0:11:09.640000 --> 0:11:14.800000 Okay, because after all, this is a non -edge port, it is a designated port. 0:11:14.800000 --> 0:11:19.900000 Now according to his MAC address table, okay, he did not send it out one 0:11:19.900000 --> 0:11:23.700000 four or one five, so those edge ports are safe. 0:11:23.700000 --> 0:11:28.520000 He did transmit it on one slash three, so these MAC addresses right here 0:11:28.520000 --> 0:11:32.880000 that he learned on one slash three, those are deleted. 0:11:32.880000 --> 0:11:37.560000 Now I guess the root bridge, he's going to forward it out his non-edge 0:11:37.560000 --> 0:11:40.060000 forwarding ports. 0:11:40.060000 --> 0:11:47.760000 So any MAC addresses that he learned on one slash one are deleted, gone. 0:11:47.760000 --> 0:11:49.780000 Gets to one slash two. 0:11:49.780000 --> 0:11:52.460000 I'm sorry, gets to switch number two. 0:11:52.460000 --> 0:11:56.000000 Switch two is going to forward it out this interface right here. 0:11:56.000000 --> 0:12:00.440000 Well because the other side of that interface is blocking, he didn't even 0:12:00.440000 --> 0:12:02.600000 learn any MAC addresses there. 0:12:02.600000 --> 0:12:07.680000 And, oh look at this, port one slash nine, we forgot to configure port 0:12:07.680000 --> 0:12:09.940000 fast on there. We forgot that. 0:12:09.940000 --> 0:12:14.160000 So from switch two's perspective, that is a non-edge port. 0:12:14.160000 --> 0:12:17.400000 He'll forward the topology change BPD out there. 0:12:17.400000 --> 0:12:21.920000 And so consequently any MAC addresses he learned on that interface will 0:12:21.920000 --> 0:12:28.700000 be deleted. So remember, the ports where you received the topology change 0:12:28.700000 --> 0:12:33.700000 BPDU, those MAC addresses that are learned on that port are safe. 0:12:33.700000 --> 0:12:38.700000 It's only the ports where you forward the topology change BPDU that those 0:12:38.700000 --> 0:12:44.340000 MAC addresses learned on those ports are deleted. 0:12:44.340000 --> 0:12:49.280000 So that concludes this video on the rapid spanning tree topology change 0:12:49.280000 --> 0:12:51.640000 process. Thank you for watching.