Cisco CCNP SWITCH 642-813

STP: Foundation Per-VLAN Spanning Tree Concepts, Part 1

by Jeremy Cioara

Start your 7-day free trial today.

This video is only available to subscribers.

A free trial includes:

  • Unlimited 24/7 access to our entire IT training video library.
  • Ability to train on the go with our mobile website and iOS/Android apps.
  • Note-taking, bookmarking, speed control, and closed captioning features.

Welcome to Cisco Switch: Watch Me First!

The Switches Domain: Core Concepts and Design

VLANs: Configuration and Verification

VLANs: In-Depth Trunking

VLANs: VLAN Trunking Protocol

STP: Foundation Per-VLAN Spanning Tree Concepts, Part 1

00:00:00 - To start this video I have
00:00:02 - two random Christmas tree facts for you.
00:00:06 - Number one, in the year 2005, 32.8
00:00:10 - million Christmas trees were purchased. Number two, an acre of
00:00:16 - Christmas trees provides for the daily oxygen of 18 people. Truly
00:00:21 - random facts and that leads into the foundation concepts. Somehow
00:00:25 - it leads us into the foundation concepts of the spanning tree
00:00:29 - protocol. Part one, there's a lot to it. Spanning tree, dropping
00:00:35 - trees around the world, we're going to talk about why that statement
00:00:37 - is true and what spanning tree does, then we'll look at the original
00:00:41 - and start enhancing that as we go. 802.1D Spanning Tree and the
00:00:46 - details behind it, there is a lot to spanning tree. It is one
00:00:50 - of the huge concepts in modern switch networks. Finally,
00:00:54 - when we get to part two of the per VLAN Spanning Tree, we'll
00:00:58 - start getting into the STP port states, we'll get into the configuration,
00:01:01 - and finally the optimization steps.
00:01:06 - Work is over. You walk out the door. It's Friday afternoon. You
00:01:10 - hop in the car and drive home. You fight the rush hour and get
00:01:14 - through the door, flop on the couch and, ah, it's good to be
00:01:18 - home for the weekend. You know that feeling. You're watching
00:01:21 - that ceiling fan, kind of turn circles around. And you think
00:01:25 - now what am I going to do? Glad you asked because now is the
00:01:29 - time for a little Friday night fun. Here's what you do on that
00:01:32 - Friday night, you grab a couple switches, now these are generic
00:01:36 - switches, no expensive Cisco gear needed here, Linksys, D-link,
00:01:40 - whatever you want, go ahead and take those switches and plug
00:01:43 - the computer into each side, could be a laptop, could be a desktop,
00:01:46 - just one computer into each switch, then take a crossover cable
00:01:51 - and connect the two switches like so. Now turn off all the lights
00:01:57 - in the room, go ahead and kick in a Pink Floyd CD and
00:02:02 - grab a second crossover cable, may need a little light for this
00:02:06 - and connect the two generic switches like so. Within seconds
00:02:12 - you will have a dance party. The switches will start blinking
00:02:15 - like mad, lights going every which way, strangely to the tune
00:02:19 - of the Pink Floyd song and you're sitting there going what on
00:02:22 - earth is going on? You look at the computers and open the task
00:02:25 - manager and you find out the processor utilization is somewhere
00:02:29 - near 100%.
00:02:31 - The reason this happened is because the two switches that you
00:02:35 - hooked up are generic switches, meaning low end switches. They
00:02:39 - don't have spanning tree protocol installed, Which means the
00:02:43 - very first broadcast packet that's sent by a computer and it
00:02:47 - will be sent, computers do send broadcasts, will come into that
00:02:51 - switch, get sent down here and then begin looping endlessly around
00:02:55 - the network, loop, loop, loop, loop, loop hitting every computer
00:02:59 - every single time it loops around. Somebody will call this a
00:03:01 - broadcast storm. Now I've heard it said, people go, well, what
00:03:06 - about the TTL field? I've heard that comment a lot, the time
00:03:10 - to live won't that packet die? Well, remember TTL is in the layer
00:03:15 - 3 header of the packet. The only thing that decrements the TTL
00:03:19 - and makes it less is the packet going through a router and in
00:03:22 - this picture I'm not seeing any routers. So what you have is
00:03:25 - an immortal packet that is like the highlander. It's running
00:03:28 - around with its little sword chopping up all the computers on
00:03:31 - your network because the computers can't stop it and neither
00:03:34 - can the switches. Now let me walk through the foundations of
00:03:39 - spanning tree protocol. Switches will forward broadcast packets
00:03:44 - all out all ports by design that's the way they work. And in
00:03:49 - enterprise networks redundant connections are good; they're necessary.
00:03:53 - You want redundancy. Okay, maybe not basic connections like two
00:03:57 - connections to every single switch, but I mean you want switches
00:04:00 - to where you can have the ability to you know have a switch connected
00:04:03 - to another switch and another and you know some sort of redundancy
00:04:06 - like this. So if any one switch fails, you still have a redundant
00:04:09 - path around the network. So redundancy is good but as we saw
00:04:14 - from this little scenario right here redundancy can also be very
00:04:17 - bad. So the place of the spanning tree protocol is to drop trees
00:04:25 - on redundant links until they are needed. That's my little homonym,
00:04:30 - if you will, to help people remember what spanning tree is all
00:04:33 - about. Spanning tree will look at your switch network and say,
00:04:37 - oh, there's a redundant link, let's go ahead and drop a tree
00:04:41 - on that line and disable it. It's really what spanning tree does.
00:04:45 - It looks more like a big cauliflower. The only the active link
00:04:49 - will forward traffic, the single link. Now anybody can unplug
00:04:54 - a network connection so spanning tree will always be watching
00:04:57 - that primary link and if it ever goes down it will erect the
00:05:01 - tree off the line and allow the back up link to go active and
00:05:06 - all the traffic to forward across that one. So spanning tree
00:05:09 - is a good thing to allow you to have redundancy in the network
00:05:13 - but not cause broadcast storms because broadcasts go over all
00:05:18 - of the redundant links. I
00:05:20 - have to confess this spanning tree protocol is one of the most
00:05:24 - difficult concepts for me to talk about. The reason why is because
00:05:29 - what I just showed you is it that's all there is to spanning
00:05:33 - tree protocol. It is designed to drop trees on the redundant
00:05:36 - links, disable them until they are needed. The reason it's so
00:05:40 - complex and the reason there's entire books written on spanning
00:05:43 - tree is because our networks don't look like our Friday night
00:05:47 - scenario. Our networks look like this in a smaller size network
00:05:52 - where we have all kinds of layers of switches. We have core switches
00:05:56 - in the middle tied to distribution layer switches in the major
00:05:59 - VLAN's, we have access layer switches up here that connect to
00:06:02 - our end user PC's. Now let me ask you looking at this picture:
00:06:06 - Would you say there is redundancy?
00:06:09 - Huh, yeah, lots of it. Every single switch has a redundant up
00:06:14 - link to every upper layer switch. The access layer has redundant
00:06:17 - links to the distribution layer. The distribution layer has redundant
00:06:21 - links to the core. Servers even have redundant links to their
00:06:25 - own switches so if any one switch fails we always have a back
00:06:29 - up path that can reroute around it for critical devices. But
00:06:34 - if we didn't have spanning tree imagine what one broadcast would
00:06:38 - do. Within the VLAN it would spin around non stop wiping out
00:06:43 - all of the different devices that are connected to the network
00:06:46 - within each layer two domain. Now remember the broadcast does
00:06:49 - stop at the boundary so every single VLAN has its own little
00:06:52 - storm going on and there's no way to stop that without spanning
00:06:57 - tree. So the reason spanning tree gets complex is because you
00:07:01 - look at this picture right here and you go, okay, redundancy
00:07:05 - is good. But now where do you drop the trees? What would be the
00:07:11 - most efficient links to block in order to for us to get the best
00:07:15 - performance out of the links that we have? Now this is where
00:07:18 - we start moving into some of the concepts behind spanning tree. Now
00:07:24 - let me restate that these are the core concepts of spanning tree
00:07:28 - as in everything will build on these 4 statements right here.
00:07:32 - Number 1 Original Spanning Tree which is 802.1D it's an industry
00:07:36 - standard not developed by Cisco was created to prevent loops
00:07:40 - and I should add to that, a long time ago. This protocol has
00:07:43 - been around for a good decade since switches have been in existence.
00:07:48 - Switches in order to work with spanning tree will send probes
00:07:52 - into the network called bridge protocol data units, you'll hear
00:07:56 - it abbreviated BPDU's that discover loops. Now what these probes
00:08:02 - will do, let me expound on that a little, is they will search
00:08:05 - through the network and they will find all the redundant links
00:08:08 - and all the switches will get their own probes back. It's like
00:08:12 - picture a boomerang, right, if you could chuck a boomerang the
00:08:15 - boomerang kind of flies through the air and flies around and
00:08:18 - flies its way back. Now imagine that concept with the switches,
00:08:22 - they've got these BPDU's that kind of goes with boomerang, boomerang
00:08:27 - protocol data units. It chucks this packet into the network,
00:08:31 - it goes choo, choo, choo, choo, choo kind of flipping through
00:08:33 - out the switch, you know what boomerangs are right? I hope I'm
00:08:36 - talking to a boomerang fan club here, and it's going through
00:08:39 - all the switches checking out every single link swarming the
00:08:42 - network it's actually a multicast packet. So that boomerang will
00:08:46 - fly through and if there is redundancy in the network the switch
00:08:50 - will get its own boomerang or BPDU back and it's gonna go, oh,
00:08:55 - hey, I wasn't supposed to get that back, I was I expected to
00:08:59 - send that boomerang out and never returned so there must be redundancy
00:09:03 - in the network. Now let's find out where it is. That's the goal
00:09:06 - of these BPDU's. Now these BPDU's also help elect the core switch
00:09:12 - of the network called the root bridge. Essentially that's where
00:09:16 - all the boomerangs point to, ha, they're all trying to find their
00:09:19 - way to the core of the network and here's the big item to note,
00:09:25 - the root bridge of the network, or I should state it this way,
00:09:28 - spanning trees election will pick the oldest switch in your network
00:09:35 - as the root bridge by default. Now you might be thinking oh,
00:09:38 - well, that's good, right? You know, the one that's been up the
00:09:41 - longest, wow, no, no, no, not's saying that's been up the longest,
00:09:45 - I mean literally the oldest switch in your network. You know
00:09:50 - the one that's sitting in some wiring closet that people have
00:09:52 - forgot about that was bought in 1989,
00:09:56 - you know that's gonna end up becoming the root bridge if it supports
00:09:59 - spanning tree because the way it decides the election, I'm getting
00:10:04 - a little ahead of myself. Let's just put it this way, you don't
00:10:08 - want to leave at the default or your network will be optimized
00:10:12 - in the worst possible way and I'll talk about some of the consequences
00:10:16 - when we get into some bigger pictures. So the simplistic view
00:10:20 - of STP you can see at the bottom, all switches will find the
00:10:23 - best way to reach the root bridge then block all the other redundant
00:10:28 - links. Get that concept? That's the core concept all the switches
00:10:33 - will chuck their boomerangs and they all want to find the path
00:10:37 - that is fastest, the best possible path to reach whoever get
00:10:42 - elected as the root bridge, then all the other paths the ones
00:10:45 - that aren't as fast to have reached the root will end up getting
00:10:48 - blocked which disables all the redundancy in your network. Lets
00:10:53 - look at some examples of spanning tree protocol using the classic
00:10:58 - spanning tree diagram. Ha, anytime you want to learn about spanning
00:11:01 - tree you'll see this picture come up because it's one of the
00:11:03 - easiest ways to talk about it. First thing is that those boomerangs,
00:11:08 - the BPDU's are sent once every two seconds out every single port,
00:11:12 - now your might be thinking, wow, that's a lot of stuff. I mean,
00:11:16 - you think about rip and that's once every 30 seconds but you're
00:11:19 - at once every two. Well, remember what kind of port these are,
00:11:22 - we're looking at gig links, 10 gig links, even 100 meg links
00:11:25 - to send a little ping out once every two seconds, no worries
00:11:29 - that not gonna bog down your traffic or kill the processors because
00:11:33 - their just little ping packets, little boomerangs just making
00:11:35 - sure that there is no loop and the more frequent you send them
00:11:38 - like once every two seconds the faster the switch is going to
00:11:41 - be able to determine if one of the primary links is gone down
00:11:45 - and start trying to find a back up. So here's the idea, let before
00:11:49 - we get into the two fields right here, let me just take this
00:11:53 - switch C over here in the lower right hand corner. It's going
00:11:56 - to send a boomerang a little BPDU out every single active port
00:12:00 - once every two seconds. Now let's follow the trail of this little
00:12:03 - boomerang right here. It's gonna go choo, choo, choo, choo, choo.
00:12:06 - It makes this noise, over to switch A, switch A is gonna get
00:12:10 - that and go, wow, I see the boomerang, I see this priority which
00:12:16 - we'll talk about in a second of 32768
00:12:19 - and I see this MAC address of all c's so that just kind of goes
00:12:22 - into switch A's brain up here, it's gonna go, okay, I see that.
00:12:26 - But it's gonna pass that boomerang right along, choo, choo, choo,
00:12:29 - choo, it follows along, switch B gets it and goes, oh, I see
00:12:33 - there is a switch C out there that says 32768
00:12:42 - same thing and it's gonna
00:12:46 - forward it out all ports, choo, choo, choo, choo, switch C gets
00:12:48 - it back and it goes, ah, I see me, you know, panic, wait a sec,
00:12:51 - I'm not suppose to see me. This boomerang is supposed to go out
00:12:58 - and never come back, immediately switch C knows there is a loop
00:13:00 - in the network. Now the good news is that when it sent that little
00:13:03 - boomerang out every switch got it and every switch saw it so
00:13:05 - it actually went through an election process while it was discovering
00:13:09 - loops and in every single BPDU packet there are two major fields,
00:13:15 - the priority and the MAC address. Now the priority is some value
00:13:21 - between zero and 61,440,
00:13:24 - the default is 32,768.
00:13:28 - Can you say random on that one? That is some developer going
00:13:32 - let's just pick this one and threw a dart on the dartboard, so
00:13:36 - that one right in the middle is the default value. Now unfortunately
00:13:41 - or fortunately you cannot set the priority to 1 or 2 or 9, it
00:13:47 - has to go in increments of 4,096 because there's only 4 bits
00:13:52 - that are reserved for the priority. So using 4 bits you definitely
00:13:57 - cannot get 61,000 values. So that's why every single one of those
00:14:02 - bit increments represents a chunk of 4,096.
00:14:06 - Now by default we said it was 32768.
00:14:10 - So by default every switch ties on the priority there, it doesn't
00:14:15 - there's no way to break the tie. So every single switch has to
00:14:18 - rely on its MAC address. Now it didn't say a MAC address, I said
00:14:23 - its MAC address because we all know switches learn MAC address.
00:14:28 - That's their major function. But the switch also has its own
00:14:31 - MAC address that it uses to communicate and that will be the
00:14:35 - one that breaks the tie. And
00:14:38 - here's a big point, lower is better. So when you're talking about
00:14:43 - switch A, C, and B over here I just made up these MAC address
00:14:46 - because there real simple, A is lower than B, B is lower than
00:14:50 - C, and C is lower than D. This is hexadecimal world over here.
00:14:54 - So the lowest MAC address wins the election, thus let's go back
00:15:00 - to the statement I mentioned on the previous screen, the lower
00:15:04 - the MAC address typically the older the switch because every
00:15:09 - single vendor start, you know got these blocks of MAC addresses
00:15:12 - that they were allocated. And when they first started producing
00:15:15 - switches they started from the first numbers of MAC address.
00:15:19 - And as they produced more and more and more switches they kept
00:15:22 - going up and up, higher and higher in MAC address. And so the
00:15:26 - newer switches will have higher MAC addresses which you usually
00:15:30 - want the newer switch to become the root bridge. So all of that
00:15:33 - aside, let's talk a little bit about what then happens between
00:15:37 - switch A, B, and C. Remember these three switches saw the BPDU's
00:15:43 - flying around the network so they all know about each other,
00:15:46 - they all know that they all have the priority of 32,768
00:15:50 - and they know that switch A up here has the lowest MAC address,
00:15:55 - A lower than B, B lower than C. So A ends up becoming the root
00:16:00 - bridge the core of the network, the other two lost the election.
00:16:04 - So now as its reward for being the root bridge switch A will
00:16:10 - never ever block a port. All of its ports will be considered
00:16:15 - forwarding or what Cisco likes to call a designated port, one
00:16:21 - port per link will be considered a forwarding port and switch
00:16:24 - A became the root. So congratulations switch A, all your ports
00:16:27 - will be forwarding. Now all the other switches in the network
00:16:31 - will find the best way to get to that root bridge, the best way
00:16:35 - to get to the core of the network. They all look at their links.
00:16:38 - Now notice right in the middle here I have a link cost of 19
00:16:42 - we'll talk about the cost in a moment but 19 happens to be the
00:16:45 - cost for a fast Ethernet 100 megabit per second link. So the
00:16:50 - BPDU's traveled through all these links, they know how fast they
00:16:53 - are, so they added them up, switch C flew around and said, well,
00:16:57 - it's 19 to reach the root bridge by going up or I can go this
00:17:02 - way. It's 19 plus I saw my BPDU fly across here. That's 38 to
00:17:06 - reach the root bridge. So this will be my root port. Same thing
00:17:12 - for switch B, they both designate their own root port. The best
00:17:15 - way to get to the root. Now that's a tip for you. If you're ever
00:17:18 - doing some show commands on a switch and you see that a switch
00:17:22 - has a root port, don't be fooled. That is not a root bridge.
00:17:27 - If a switch has a root port it is, it can't be the root bridge
00:17:32 - because it's going out that port to reach the root bridge. I've
00:17:36 - gotten confused myself many times in doing show spanning tree
00:17:38 - commands real quick and I see, oh, root port this must be the
00:17:41 - root but it's not. So we've now found the best way to get to
00:17:47 - the root we can kind of assume what's gonna happen here right,
00:17:50 - you're eyeing that bottom link right now and going, uh, that
00:17:54 - one's not looking so good because both of them found their own
00:17:58 - little root bridge here, or the root port so looking at this
00:18:02 - link here's what happens. This side sees that it's redundant
00:18:07 - and so does this side but this side marks it as a designated
00:18:12 - port, what you might be thinking why, whoa, why did that happen?
00:18:17 - I thought that was gonna be blocked. A designated port is a forwarding
00:18:21 - port. But notice what I have after the comma, one per link. This
00:18:27 - is a link, there due to spanning tree standard, the way they
00:18:31 - have it there is always one designated port per link. This side
00:18:35 - blocks. This becomes the blocking port. That's the final type.
00:18:41 - Where the, ha, notice I put where the tree. Fell, so by one side
00:18:46 - of the connection disabling its link both sides are down. But
00:18:50 - the pain about spanning tree is if your sitting on this switch
00:18:53 - right here doing show commands, it'll be like, oh, yeah, oh,
00:18:56 - yeah, this port right here, that one's totally fine, it's forwarding
00:18:59 - traffic, life is good, green light on the switch. You're gonna
00:19:02 - be thinking, man, I thought I understood spanning tree, I thought
00:19:05 - that one would be the blocked. Well, the truth is it is, it is,
00:19:08 - but only one side blocks the link. Now as a side note, why do
00:19:13 - think this guy did it? Why did switch C block his link and not
00:19:17 - switch B? Any guesses? That's because switch C probably forgot
00:19:22 - it has the higher MAC address. The higher MAC addresses are not
00:19:26 - only used for electing the root bridge or the lower ones but
00:19:30 - also used to determine who will end up blocking the link. When
00:19:33 - it's trying to figure out the best link, best switch to block
00:19:37 - its link, it's gonna say the one that has the higher MAC address.
00:19:40 - So the worst effect is going to end its connection.
00:19:45 - So I'd like to wrap things up in this spanning tree video by
00:19:47 - talking about how spanning tree finds the best path. Now you
00:19:51 - saw in that previous graphic that spanning tree will look for
00:19:55 - the lowest cost link and that's you can see step two, step one,
00:19:58 - figure out who the root is. Step two, find the lowest cost path
00:20:03 - to the root. Now you can see a list of link bandwidths and STP
00:20:07 - costs over here to the right hand side. Believe it or not, that
00:20:10 - is ratified list because the previous STP standard maxed out
00:20:15 - at 1 gig, mean that was the end of the cost. You couldn't go
00:20:19 - any lower than a 1 gig link. So they revised it. And now you
00:20:23 - can see they're gonna have to revise it again probably when we
00:20:25 - get to maybe 1000 gig because the 100 gig will probably be a
00:20:31 - cost of 1. Once we reach a 1000 gig will extend beyond what normal
00:20:35 - standard spanning tree can do. Now you don't need to commit all
00:20:38 - these values to memory by any means, but I would keep in mind
00:20:41 - that 100 meg link is the cost of 19. 10 meg is the cost of 100.
00:20:46 - So when it's comparing, if you have these switch ports that are
00:20:50 - uplinked, if it's looking and trying to find the best one to
00:20:53 - get to a location and this is a 10 and maybe you got your root
00:20:57 - up here, a 10 meg and this is a 100 meg link, it can tell the
00:21:01 - difference, it can look and say au this is 19 and this is 100.
00:21:05 - So if this is 19 a cost of 38 is by far better to get to the
00:21:09 - root going that direction than to use the 10 meg link. This one
00:21:12 - will end up getting blocked. What
00:21:16 - we didn't talk about on our little example was what if the costs
00:21:19 - were tied, meaning what if we had a scenario like this underneath
00:21:24 - step three where the one up top got elected the root. We've got
00:21:28 - 100 meg links everywhere, so we've got cost of 19 going for every
00:21:33 - switch and this one's looking and saying, well, I've got two
00:21:36 - paths where if I go to reach the root out either one it's gonna
00:21:40 - be a cost of 38. Well, that case it's gonna use the lower bridge
00:21:44 - ID unequal cost path. The bridge ID is that combination of the
00:21:49 - priority plus the MAC address. Remember the two fields in that
00:21:53 - packet that I was showing you before. Priority plus the MAC address.
00:21:57 - That is known as the bridge ID. So it's gonna look and say, okay,
00:22:00 - do you have the lower bridge ID or do you? This one says I do.
00:22:04 - I do. You know if that happens to have the lower MAC address
00:22:07 - or priority and it's gonna say, well, then you are my preferred
00:22:11 - path to get there, this will end up being the blocked link. Now
00:22:14 - if all else fails, meaning it can't find a tie between the lower
00:22:19 - port costs, you can't find a lower bridge ID, then you probably
00:22:22 - have a scenario like our Friday night party where you have two
00:22:26 - switches connected with two crossover cables just like so. So
00:22:30 - in that case it's gonna use the lower port, it's gonna look here
00:22:33 - and say, okay, well, this a lower port, maybe port fast Ethernet
00:22:37 - 0/1, this is 0/2 so you were the lower port, I will choose this
00:22:42 - one and end up blocking that. all
00:22:46 - right. Well, that's where we'll stop climbing our spanning tree
00:22:48 - for now. To hit the high points: We talked about spanning tree
00:22:52 - dropping trees around the world, meaning it is the feature in
00:22:57 - any managed switch, any mainline upper end switch that can block
00:23:02 - the redundant links and keep loops from happening. We looked
00:23:06 - at the original 802.1D spanning tree. It is an industry standard,
00:23:10 - not just a Cisco thing. And then I would say we can color half
00:23:14 - of this bullet right here. We understand a little bit about oh,
00:23:17 - I colored the whole thing. Well, you get the idea. We understand
00:23:20 - a little bit about the BPDU's, the boomerangs that detect the
00:23:24 - loops in the network. We understand how the elections work based
00:23:27 - on the priority and MAC address in the BPDU. And we started getting
00:23:32 - into some of the other STP details. That's where part two is
00:23:35 - gonna pick up. So we'll end right there and then pick up with
00:23:38 - a very large example of spanning tree as we begin part two. I
00:23:43 - hope this has been informative for you, and I'd like to thank
00:23:45 - you for viewing.
00:00:00 - To start this video I have
00:00:02 - two random Christmas tree facts for you.
00:00:06 - Number one, in the year 2005, 32.8
00:00:10 - million Christmas trees were purchased. Number two, an acre of
00:00:16 - Christmas trees provides for the daily oxygen of 18 people. Truly
00:00:21 - random facts and that leads into the foundation concepts. Somehow
00:00:25 - it leads us into the foundation concepts of the spanning tree
00:00:29 - protocol. Part one, there's a lot to it. Spanning tree, dropping
00:00:35 - trees around the world, we're going to talk about why that statement
00:00:37 - is true and what spanning tree does, then we'll look at the original
00:00:41 - and start enhancing that as we go. 802.1D Spanning Tree and the
00:00:46 - details behind it, there is a lot to spanning tree. It is one
00:00:50 - of the huge concepts in modern switch networks. Finally,
00:00:54 - when we get to part two of the per VLAN Spanning Tree, we'll
00:00:58 - start getting into the STP port states, we'll get into the configuration,
00:01:01 - and finally the optimization steps.
00:01:06 - Work is over. You walk out the door. It's Friday afternoon. You
00:01:10 - hop in the car and drive home. You fight the rush hour and get
00:01:14 - through the door, flop on the couch and, ah, it's good to be
00:01:18 - home for the weekend. You know that feeling. You're watching
00:01:21 - that ceiling fan, kind of turn circles around. And you think
00:01:25 - now what am I going to do? Glad you asked because now is the
00:01:29 - time for a little Friday night fun. Here's what you do on that
00:01:32 - Friday night, you grab a couple switches, now these are generic
00:01:36 - switches, no expensive Cisco gear needed here, Linksys, D-link,
00:01:40 - whatever you want, go ahead and take those switches and plug
00:01:43 - the computer into each side, could be a laptop, could be a desktop,
00:01:46 - just one computer into each switch, then take a crossover cable
00:01:51 - and connect the two switches like so. Now turn off all the lights
00:01:57 - in the room, go ahead and kick in a Pink Floyd CD and
00:02:02 - grab a second crossover cable, may need a little light for this
00:02:06 - and connect the two generic switches like so. Within seconds
00:02:12 - you will have a dance party. The switches will start blinking
00:02:15 - like mad, lights going every which way, strangely to the tune
00:02:19 - of the Pink Floyd song and you're sitting there going what on
00:02:22 - earth is going on? You look at the computers and open the task
00:02:25 - manager and you find out the processor utilization is somewhere
00:02:29 - near 100%.
00:02:31 - The reason this happened is because the two switches that you
00:02:35 - hooked up are generic switches, meaning low end switches. They
00:02:39 - don't have spanning tree protocol installed, Which means the
00:02:43 - very first broadcast packet that's sent by a computer and it
00:02:47 - will be sent, computers do send broadcasts, will come into that
00:02:51 - switch, get sent down here and then begin looping endlessly around
00:02:55 - the network, loop, loop, loop, loop, loop hitting every computer
00:02:59 - every single time it loops around. Somebody will call this a
00:03:01 - broadcast storm. Now I've heard it said, people go, well, what
00:03:06 - about the TTL field? I've heard that comment a lot, the time
00:03:10 - to live won't that packet die? Well, remember TTL is in the layer
00:03:15 - 3 header of the packet. The only thing that decrements the TTL
00:03:19 - and makes it less is the packet going through a router and in
00:03:22 - this picture I'm not seeing any routers. So what you have is
00:03:25 - an immortal packet that is like the highlander. It's running
00:03:28 - around with its little sword chopping up all the computers on
00:03:31 - your network because the computers can't stop it and neither
00:03:34 - can the switches. Now let me walk through the foundations of
00:03:39 - spanning tree protocol. Switches will forward broadcast packets
00:03:44 - all out all ports by design that's the way they work. And in
00:03:49 - enterprise networks redundant connections are good; they're necessary.
00:03:53 - You want redundancy. Okay, maybe not basic connections like two
00:03:57 - connections to every single switch, but I mean you want switches
00:04:00 - to where you can have the ability to you know have a switch connected
00:04:03 - to another switch and another and you know some sort of redundancy
00:04:06 - like this. So if any one switch fails, you still have a redundant
00:04:09 - path around the network. So redundancy is good but as we saw
00:04:14 - from this little scenario right here redundancy can also be very
00:04:17 - bad. So the place of the spanning tree protocol is to drop trees
00:04:25 - on redundant links until they are needed. That's my little homonym,
00:04:30 - if you will, to help people remember what spanning tree is all
00:04:33 - about. Spanning tree will look at your switch network and say,
00:04:37 - oh, there's a redundant link, let's go ahead and drop a tree
00:04:41 - on that line and disable it. It's really what spanning tree does.
00:04:45 - It looks more like a big cauliflower. The only the active link
00:04:49 - will forward traffic, the single link. Now anybody can unplug
00:04:54 - a network connection so spanning tree will always be watching
00:04:57 - that primary link and if it ever goes down it will erect the
00:05:01 - tree off the line and allow the back up link to go active and
00:05:06 - all the traffic to forward across that one. So spanning tree
00:05:09 - is a good thing to allow you to have redundancy in the network
00:05:13 - but not cause broadcast storms because broadcasts go over all
00:05:18 - of the redundant links. I
00:05:20 - have to confess this spanning tree protocol is one of the most
00:05:24 - difficult concepts for me to talk about. The reason why is because
00:05:29 - what I just showed you is it that's all there is to spanning
00:05:33 - tree protocol. It is designed to drop trees on the redundant
00:05:36 - links, disable them until they are needed. The reason it's so
00:05:40 - complex and the reason there's entire books written on spanning
00:05:43 - tree is because our networks don't look like our Friday night
00:05:47 - scenario. Our networks look like this in a smaller size network
00:05:52 - where we have all kinds of layers of switches. We have core switches
00:05:56 - in the middle tied to distribution layer switches in the major
00:05:59 - VLAN's, we have access layer switches up here that connect to
00:06:02 - our end user PC's. Now let me ask you looking at this picture:
00:06:06 - Would you say there is redundancy?
00:06:09 - Huh, yeah, lots of it. Every single switch has a redundant up
00:06:14 - link to every upper layer switch. The access layer has redundant
00:06:17 - links to the distribution layer. The distribution layer has redundant
00:06:21 - links to the core. Servers even have redundant links to their
00:06:25 - own switches so if any one switch fails we always have a back
00:06:29 - up path that can reroute around it for critical devices. But
00:06:34 - if we didn't have spanning tree imagine what one broadcast would
00:06:38 - do. Within the VLAN it would spin around non stop wiping out
00:06:43 - all of the different devices that are connected to the network
00:06:46 - within each layer two domain. Now remember the broadcast does
00:06:49 - stop at the boundary so every single VLAN has its own little
00:06:52 - storm going on and there's no way to stop that without spanning
00:06:57 - tree. So the reason spanning tree gets complex is because you
00:07:01 - look at this picture right here and you go, okay, redundancy
00:07:05 - is good. But now where do you drop the trees? What would be the
00:07:11 - most efficient links to block in order to for us to get the best
00:07:15 - performance out of the links that we have? Now this is where
00:07:18 - we start moving into some of the concepts behind spanning tree. Now
00:07:24 - let me restate that these are the core concepts of spanning tree
00:07:28 - as in everything will build on these 4 statements right here.
00:07:32 - Number 1 Original Spanning Tree which is 802.1D it's an industry
00:07:36 - standard not developed by Cisco was created to prevent loops
00:07:40 - and I should add to that, a long time ago. This protocol has
00:07:43 - been around for a good decade since switches have been in existence.
00:07:48 - Switches in order to work with spanning tree will send probes
00:07:52 - into the network called bridge protocol data units, you'll hear
00:07:56 - it abbreviated BPDU's that discover loops. Now what these probes
00:08:02 - will do, let me expound on that a little, is they will search
00:08:05 - through the network and they will find all the redundant links
00:08:08 - and all the switches will get their own probes back. It's like
00:08:12 - picture a boomerang, right, if you could chuck a boomerang the
00:08:15 - boomerang kind of flies through the air and flies around and
00:08:18 - flies its way back. Now imagine that concept with the switches,
00:08:22 - they've got these BPDU's that kind of goes with boomerang, boomerang
00:08:27 - protocol data units. It chucks this packet into the network,
00:08:31 - it goes choo, choo, choo, choo, choo kind of flipping through
00:08:33 - out the switch, you know what boomerangs are right? I hope I'm
00:08:36 - talking to a boomerang fan club here, and it's going through
00:08:39 - all the switches checking out every single link swarming the
00:08:42 - network it's actually a multicast packet. So that boomerang will
00:08:46 - fly through and if there is redundancy in the network the switch
00:08:50 - will get its own boomerang or BPDU back and it's gonna go, oh,
00:08:55 - hey, I wasn't supposed to get that back, I was I expected to
00:08:59 - send that boomerang out and never returned so there must be redundancy
00:09:03 - in the network. Now let's find out where it is. That's the goal
00:09:06 - of these BPDU's. Now these BPDU's also help elect the core switch
00:09:12 - of the network called the root bridge. Essentially that's where
00:09:16 - all the boomerangs point to, ha, they're all trying to find their
00:09:19 - way to the core of the network and here's the big item to note,
00:09:25 - the root bridge of the network, or I should state it this way,
00:09:28 - spanning trees election will pick the oldest switch in your network
00:09:35 - as the root bridge by default. Now you might be thinking oh,
00:09:38 - well, that's good, right? You know, the one that's been up the
00:09:41 - longest, wow, no, no, no, not's saying that's been up the longest,
00:09:45 - I mean literally the oldest switch in your network. You know
00:09:50 - the one that's sitting in some wiring closet that people have
00:09:52 - forgot about that was bought in 1989,
00:09:56 - you know that's gonna end up becoming the root bridge if it supports
00:09:59 - spanning tree because the way it decides the election, I'm getting
00:10:04 - a little ahead of myself. Let's just put it this way, you don't
00:10:08 - want to leave at the default or your network will be optimized
00:10:12 - in the worst possible way and I'll talk about some of the consequences
00:10:16 - when we get into some bigger pictures. So the simplistic view
00:10:20 - of STP you can see at the bottom, all switches will find the
00:10:23 - best way to reach the root bridge then block all the other redundant
00:10:28 - links. Get that concept? That's the core concept all the switches
00:10:33 - will chuck their boomerangs and they all want to find the path
00:10:37 - that is fastest, the best possible path to reach whoever get
00:10:42 - elected as the root bridge, then all the other paths the ones
00:10:45 - that aren't as fast to have reached the root will end up getting
00:10:48 - blocked which disables all the redundancy in your network. Lets
00:10:53 - look at some examples of spanning tree protocol using the classic
00:10:58 - spanning tree diagram. Ha, anytime you want to learn about spanning
00:11:01 - tree you'll see this picture come up because it's one of the
00:11:03 - easiest ways to talk about it. First thing is that those boomerangs,
00:11:08 - the BPDU's are sent once every two seconds out every single port,
00:11:12 - now your might be thinking, wow, that's a lot of stuff. I mean,
00:11:16 - you think about rip and that's once every 30 seconds but you're
00:11:19 - at once every two. Well, remember what kind of port these are,
00:11:22 - we're looking at gig links, 10 gig links, even 100 meg links
00:11:25 - to send a little ping out once every two seconds, no worries
00:11:29 - that not gonna bog down your traffic or kill the processors because
00:11:33 - their just little ping packets, little boomerangs just making
00:11:35 - sure that there is no loop and the more frequent you send them
00:11:38 - like once every two seconds the faster the switch is going to
00:11:41 - be able to determine if one of the primary links is gone down
00:11:45 - and start trying to find a back up. So here's the idea, let before
00:11:49 - we get into the two fields right here, let me just take this
00:11:53 - switch C over here in the lower right hand corner. It's going
00:11:56 - to send a boomerang a little BPDU out every single active port
00:12:00 - once every two seconds. Now let's follow the trail of this little
00:12:03 - boomerang right here. It's gonna go choo, choo, choo, choo, choo.
00:12:06 - It makes this noise, over to switch A, switch A is gonna get
00:12:10 - that and go, wow, I see the boomerang, I see this priority which
00:12:16 - we'll talk about in a second of 32768
00:12:19 - and I see this MAC address of all c's so that just kind of goes
00:12:22 - into switch A's brain up here, it's gonna go, okay, I see that.
00:12:26 - But it's gonna pass that boomerang right along, choo, choo, choo,
00:12:29 - choo, it follows along, switch B gets it and goes, oh, I see
00:12:33 - there is a switch C out there that says 32768
00:12:42 - same thing and it's gonna
00:12:46 - forward it out all ports, choo, choo, choo, choo, switch C gets
00:12:48 - it back and it goes, ah, I see me, you know, panic, wait a sec,
00:12:51 - I'm not suppose to see me. This boomerang is supposed to go out
00:12:58 - and never come back, immediately switch C knows there is a loop
00:13:00 - in the network. Now the good news is that when it sent that little
00:13:03 - boomerang out every switch got it and every switch saw it so
00:13:05 - it actually went through an election process while it was discovering
00:13:09 - loops and in every single BPDU packet there are two major fields,
00:13:15 - the priority and the MAC address. Now the priority is some value
00:13:21 - between zero and 61,440,
00:13:24 - the default is 32,768.
00:13:28 - Can you say random on that one? That is some developer going
00:13:32 - let's just pick this one and threw a dart on the dartboard, so
00:13:36 - that one right in the middle is the default value. Now unfortunately
00:13:41 - or fortunately you cannot set the priority to 1 or 2 or 9, it
00:13:47 - has to go in increments of 4,096 because there's only 4 bits
00:13:52 - that are reserved for the priority. So using 4 bits you definitely
00:13:57 - cannot get 61,000 values. So that's why every single one of those
00:14:02 - bit increments represents a chunk of 4,096.
00:14:06 - Now by default we said it was 32768.
00:14:10 - So by default every switch ties on the priority there, it doesn't
00:14:15 - there's no way to break the tie. So every single switch has to
00:14:18 - rely on its MAC address. Now it didn't say a MAC address, I said
00:14:23 - its MAC address because we all know switches learn MAC address.
00:14:28 - That's their major function. But the switch also has its own
00:14:31 - MAC address that it uses to communicate and that will be the
00:14:35 - one that breaks the tie. And
00:14:38 - here's a big point, lower is better. So when you're talking about
00:14:43 - switch A, C, and B over here I just made up these MAC address
00:14:46 - because there real simple, A is lower than B, B is lower than
00:14:50 - C, and C is lower than D. This is hexadecimal world over here.
00:14:54 - So the lowest MAC address wins the election, thus let's go back
00:15:00 - to the statement I mentioned on the previous screen, the lower
00:15:04 - the MAC address typically the older the switch because every
00:15:09 - single vendor start, you know got these blocks of MAC addresses
00:15:12 - that they were allocated. And when they first started producing
00:15:15 - switches they started from the first numbers of MAC address.
00:15:19 - And as they produced more and more and more switches they kept
00:15:22 - going up and up, higher and higher in MAC address. And so the
00:15:26 - newer switches will have higher MAC addresses which you usually
00:15:30 - want the newer switch to become the root bridge. So all of that
00:15:33 - aside, let's talk a little bit about what then happens between
00:15:37 - switch A, B, and C. Remember these three switches saw the BPDU's
00:15:43 - flying around the network so they all know about each other,
00:15:46 - they all know that they all have the priority of 32,768
00:15:50 - and they know that switch A up here has the lowest MAC address,
00:15:55 - A lower than B, B lower than C. So A ends up becoming the root
00:16:00 - bridge the core of the network, the other two lost the election.
00:16:04 - So now as its reward for being the root bridge switch A will
00:16:10 - never ever block a port. All of its ports will be considered
00:16:15 - forwarding or what Cisco likes to call a designated port, one
00:16:21 - port per link will be considered a forwarding port and switch
00:16:24 - A became the root. So congratulations switch A, all your ports
00:16:27 - will be forwarding. Now all the other switches in the network
00:16:31 - will find the best way to get to that root bridge, the best way
00:16:35 - to get to the core of the network. They all look at their links.
00:16:38 - Now notice right in the middle here I have a link cost of 19
00:16:42 - we'll talk about the cost in a moment but 19 happens to be the
00:16:45 - cost for a fast Ethernet 100 megabit per second link. So the
00:16:50 - BPDU's traveled through all these links, they know how fast they
00:16:53 - are, so they added them up, switch C flew around and said, well,
00:16:57 - it's 19 to reach the root bridge by going up or I can go this
00:17:02 - way. It's 19 plus I saw my BPDU fly across here. That's 38 to
00:17:06 - reach the root bridge. So this will be my root port. Same thing
00:17:12 - for switch B, they both designate their own root port. The best
00:17:15 - way to get to the root. Now that's a tip for you. If you're ever
00:17:18 - doing some show commands on a switch and you see that a switch
00:17:22 - has a root port, don't be fooled. That is not a root bridge.
00:17:27 - If a switch has a root port it is, it can't be the root bridge
00:17:32 - because it's going out that port to reach the root bridge. I've
00:17:36 - gotten confused myself many times in doing show spanning tree
00:17:38 - commands real quick and I see, oh, root port this must be the
00:17:41 - root but it's not. So we've now found the best way to get to
00:17:47 - the root we can kind of assume what's gonna happen here right,
00:17:50 - you're eyeing that bottom link right now and going, uh, that
00:17:54 - one's not looking so good because both of them found their own
00:17:58 - little root bridge here, or the root port so looking at this
00:18:02 - link here's what happens. This side sees that it's redundant
00:18:07 - and so does this side but this side marks it as a designated
00:18:12 - port, what you might be thinking why, whoa, why did that happen?
00:18:17 - I thought that was gonna be blocked. A designated port is a forwarding
00:18:21 - port. But notice what I have after the comma, one per link. This
00:18:27 - is a link, there due to spanning tree standard, the way they
00:18:31 - have it there is always one designated port per link. This side
00:18:35 - blocks. This becomes the blocking port. That's the final type.
00:18:41 - Where the, ha, notice I put where the tree. Fell, so by one side
00:18:46 - of the connection disabling its link both sides are down. But
00:18:50 - the pain about spanning tree is if your sitting on this switch
00:18:53 - right here doing show commands, it'll be like, oh, yeah, oh,
00:18:56 - yeah, this port right here, that one's totally fine, it's forwarding
00:18:59 - traffic, life is good, green light on the switch. You're gonna
00:19:02 - be thinking, man, I thought I understood spanning tree, I thought
00:19:05 - that one would be the blocked. Well, the truth is it is, it is,
00:19:08 - but only one side blocks the link. Now as a side note, why do
00:19:13 - think this guy did it? Why did switch C block his link and not
00:19:17 - switch B? Any guesses? That's because switch C probably forgot
00:19:22 - it has the higher MAC address. The higher MAC addresses are not
00:19:26 - only used for electing the root bridge or the lower ones but
00:19:30 - also used to determine who will end up blocking the link. When
00:19:33 - it's trying to figure out the best link, best switch to block
00:19:37 - its link, it's gonna say the one that has the higher MAC address.
00:19:40 - So the worst effect is going to end its connection.
00:19:45 - So I'd like to wrap things up in this spanning tree video by
00:19:47 - talking about how spanning tree finds the best path. Now you
00:19:51 - saw in that previous graphic that spanning tree will look for
00:19:55 - the lowest cost link and that's you can see step two, step one,
00:19:58 - figure out who the root is. Step two, find the lowest cost path
00:20:03 - to the root. Now you can see a list of link bandwidths and STP
00:20:07 - costs over here to the right hand side. Believe it or not, that
00:20:10 - is ratified list because the previous STP standard maxed out
00:20:15 - at 1 gig, mean that was the end of the cost. You couldn't go
00:20:19 - any lower than a 1 gig link. So they revised it. And now you
00:20:23 - can see they're gonna have to revise it again probably when we
00:20:25 - get to maybe 1000 gig because the 100 gig will probably be a
00:20:31 - cost of 1. Once we reach a 1000 gig will extend beyond what normal
00:20:35 - standard spanning tree can do. Now you don't need to commit all
00:20:38 - these values to memory by any means, but I would keep in mind
00:20:41 - that 100 meg link is the cost of 19. 10 meg is the cost of 100.
00:20:46 - So when it's comparing, if you have these switch ports that are
00:20:50 - uplinked, if it's looking and trying to find the best one to
00:20:53 - get to a location and this is a 10 and maybe you got your root
00:20:57 - up here, a 10 meg and this is a 100 meg link, it can tell the
00:21:01 - difference, it can look and say au this is 19 and this is 100.
00:21:05 - So if this is 19 a cost of 38 is by far better to get to the
00:21:09 - root going that direction than to use the 10 meg link. This one
00:21:12 - will end up getting blocked. What
00:21:16 - we didn't talk about on our little example was what if the costs
00:21:19 - were tied, meaning what if we had a scenario like this underneath
00:21:24 - step three where the one up top got elected the root. We've got
00:21:28 - 100 meg links everywhere, so we've got cost of 19 going for every
00:21:33 - switch and this one's looking and saying, well, I've got two
00:21:36 - paths where if I go to reach the root out either one it's gonna
00:21:40 - be a cost of 38. Well, that case it's gonna use the lower bridge
00:21:44 - ID unequal cost path. The bridge ID is that combination of the
00:21:49 - priority plus the MAC address. Remember the two fields in that
00:21:53 - packet that I was showing you before. Priority plus the MAC address.
00:21:57 - That is known as the bridge ID. So it's gonna look and say, okay,
00:22:00 - do you have the lower bridge ID or do you? This one says I do.
00:22:04 - I do. You know if that happens to have the lower MAC address
00:22:07 - or priority and it's gonna say, well, then you are my preferred
00:22:11 - path to get there, this will end up being the blocked link. Now
00:22:14 - if all else fails, meaning it can't find a tie between the lower
00:22:19 - port costs, you can't find a lower bridge ID, then you probably
00:22:22 - have a scenario like our Friday night party where you have two
00:22:26 - switches connected with two crossover cables just like so. So
00:22:30 - in that case it's gonna use the lower port, it's gonna look here
00:22:33 - and say, okay, well, this a lower port, maybe port fast Ethernet
00:22:37 - 0/1, this is 0/2 so you were the lower port, I will choose this
00:22:42 - one and end up blocking that. all
00:22:46 - right. Well, that's where we'll stop climbing our spanning tree
00:22:48 - for now. To hit the high points: We talked about spanning tree
00:22:52 - dropping trees around the world, meaning it is the feature in
00:22:57 - any managed switch, any mainline upper end switch that can block
00:23:02 - the redundant links and keep loops from happening. We looked
00:23:06 - at the original 802.1D spanning tree. It is an industry standard,
00:23:10 - not just a Cisco thing. And then I would say we can color half
00:23:14 - of this bullet right here. We understand a little bit about oh,
00:23:17 - I colored the whole thing. Well, you get the idea. We understand
00:23:20 - a little bit about the BPDU's, the boomerangs that detect the
00:23:24 - loops in the network. We understand how the elections work based
00:23:27 - on the priority and MAC address in the BPDU. And we started getting
00:23:32 - into some of the other STP details. That's where part two is
00:23:35 - gonna pick up. So we'll end right there and then pick up with
00:23:38 - a very large example of spanning tree as we begin part two. I
00:23:43 - hope this has been informative for you, and I'd like to thank
00:23:45 - you for viewing.

STP: Foundation Per-VLAN Spanning Tree Concepts, Part 2

STP: Rapid Spanning Tree Concepts and Configuration

EtherChannel: Aggregating Redundant Links

L3 Switching: InterVLAN Routing Extraordinaire

L3 Switching: Understanding CEF Optimization

Redundancy in the Campus: HSRP, VRRP, and GLBP Part 1

Redundancy in the Campus: HSRP, VRRP, and GLBP Part 2

Campus Security: Basic Port Security and 802.1x

Campus Security: VLAN and Spoofing Attacks

Campus Security: STP Attacks and Other Security Considerations

Campus VoIP: Overview, Considerations, and AutoQoS

Wireless LAN: Foundation Concepts and Design Part 1

Wireless LAN: Foundation Concepts and Design Part 2

Wireless LAN: Frequencies and 802.11 Standards

Wireless LAN: Understanding the Hardware

The Switches Domain: Additional Life-Saving Technology

Monitoring: Your Pulse on the Network

Campus Security: VACLs

Please help us improve by sharing your feedback on training courses and videos. For customer service questions, please contact our support team. The views expressed in comments reflect those of the author and not of CBT Nuggets. We reserve the right to remove comments that do not adhere to our community standards.

comments powered by Disqus

Course Features

Speed Control

Play videos at a faster or slower pace.

Bookmarks

Pick up where you left off watching a video.

Notes

Jot down information to refer back to at a later time.

Premium Features

Transcender® Practice Exams

These practice tests help you review your knowledge and prepare you for exams.

Offline Training

Our mobile apps offer the ability to download videos and train anytime, anywhere offline.

Accountability Coaching

Develop and maintain a study plan with assistance from coaches.
Jeremy Cioara

Jeremy Cioara

CBT Nuggets Trainer

Certifications:
Cisco CCNA, CCDA, CCNA Security, CCNA Voice, CCNP, CCSP, CCVP, CCDP, CCIE R&S; Amazon Web Services CSA; Microsoft MCP, MCSE, Novell CNA, CNE; CompTIA A+, Network+, iNet+

Area Of Expertise:
Cisco network administration and development. Author or coauthor of numerous books, including: CCNA Voice 640-461 Official Cert Guide; CCNA Voice Official Exam Certification Guide (640-460 IIUC); CCENT Exam Prep (Exam 640-822); CCNA Exam Cram (Exam 640-802) 3rd Edition; and CCNA Voice 640-461 Official Cert Guide.


Stay Connected

Get the latest updates on the subjects you choose.


  © 2014 CBT Nuggets. All rights reserved. Licensing Agreement | Billing Agreement | Privacy Policy | RSS