Now, MST configuration is going to require a little bit more effort up front
than we would
require with RapidPVST+ which might be another barrier to deploying MST, but it
really comes
down to the configuration of what we refer to as the attributes of the
environment.
Unlike RapidPVST+ as well as common spanning tree, we are going to have
switches that are
going to be sending information inside of the BPDUs to make sure that we all WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
going to be sending information inside of the BPDUs to make sure that we all
agree on the
configuration of the spanning tree environment. So we didn't really have
attributes like that
with legacy or maybe RapidSpanningTree types of environments and yet with MST
we're going
to have some of those. The first attribute is known as the region name. This is
intended
to make sure that if we have, let's say, a network on the left and a network on
the right and we've
got maybe a merger or something along those lines or we just want to keep these WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
got maybe a merger or something along those lines or we just want to keep these
layer to network
separated from a spanning tree perspective, each one of these can have its own
region name.
And this will make it so that we don't have to align with all of the other
properties. We might
have different VLANs, for example, VLANs 10 through 20 in the environment on
the left and maybe VLANs
15 through 25 on the right. And so we're not in perfect alignment with each
other, but that's fine
be if it's intentional. Now in most organizations, especially enterprise and WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
be if it's intentional. Now in most organizations, especially enterprise and
campus networks,
we're not going to use this because we want to make sure that the entire
environment is one
seamless domain. But we could probably think of some scenarios, again, like
business mergers,
where maybe this wouldn't be the case. So this is a way we can differentiate
between MST domains
or maybe regions at this point is by giving each a separate region name. And
then we also have the
concept of the revision number. The revision number is a curious addition.
Because it's called a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
Because it's called a
revision number, it gives the sense that, hey, I'm going to maybe take this
switch right here,
and I'm going to update the configuration. And therefore, I'm going to take it
from revision one
to revision two. But given that this needs to match among all of the devices in
our domain,
I'm going to also have to do this for all of the switches, which is fine. If I
'm changing the
configuration on one, I probably want to change the configuration on all the
rest. Now in production,
do we go to the trouble of changing the configuration and revving the revision WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
do we go to the trouble of changing the configuration and revving the revision
number? Maybe, maybe not,
for the most part, this is just something that's going to need to match
everywhere. In my experience,
we typically set a revision number of one or something like that. And then we
just leave it.
And we're never going to change it. But it is something that we can include. We
just have to be
careful with it so that we don't accidentally fragment our domain by making one
side have a
revision idea of one and one have a two or something along those lines. Now the
third one,
this is the important one. I mean, all of them are important, of course. But WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
this is the important one. I mean, all of them are important, of course. But
this is the part,
this is the reason why we basically have these different domains is we need a V
LAN to instance
mapping that matches from one switch to the other. This is what we didn't have
to worry about with
Cisco. If I had a VLAN 10 on my side and you have a VLAN 10 on your side, we
know we both have
an instance for VLAN 10. Well, now we're talking about taking two different WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
an instance for VLAN 10. Well, now we're talking about taking two different
instances and saying,
hey, I've got VLANs 10 and 20 on one side and 30 and 40 in this other instance.
Maybe these
are instances zero and one. And so that's well and good except if you say, well
, I've got VLANs 10,
20 and 30 in instance zero and I've got instant or VLAN 40 going into instance
two. Well, that's a
very different topology or set of topologies. We can't do that. We can't
interface with one
another. And so it's going to fragment our domain. And so at this point, we're WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
another. And so it's going to fragment our domain. And so at this point, we're
going to require,
again, all of these must match. They absolutely have to match or they're not
going to be considered
to be part of the same MST region or MST domain. So we might ask the question,
well, what does it
mean if we fragment our domain? I mean, what if we have a bunch of switches
here and a bunch of
switches over here? And they have different properties. At this point, we would
create two
different MST regions. And maybe we've got connection among them this way. Well WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
different MST regions. And maybe we've got connection among them this way. Well
, what that means is
within each domain, we're going to have to make sure that it's loop free. So we
're going to form
our blocked ports internally. But then when we have connections between the two
, we're going to treat
each one of these almost like it's a giant switch, and make sure that we're
blocking one of these
links for all VLANs and all instances. So internally, we have to block within a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
links for all VLANs and all instances. So internally, we have to block within a
region externally,
we're blocking on everything on instance zero is technically how that's going
to be perceived.
But again, when we zoom out and look at it, we treat this whole region as a
switch, we treat this
whole region as a switch, I'll put air quotes around the switch icon, if that
makes sense,
to say it's not really a switch. But we know if we've got two switches
connected like this,
then we're going to need to decide which one to block. So we need loop free
between the regions
as well. So long story short, what we see here is that we are going to need WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
as well. So long story short, what we see here is that we are going to need
individual configurations,
individual blocked links, and then a coordinated blocks link between the two as
long as there is a
loop between the two regions. So it makes things a little bit more complex,
naturally again, in a
real world production network, we would ideally avoid this, but it does require
us matching on all
of these configuration parameters. And so that's exactly what we want to do. So WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
of these configuration parameters. And so that's exactly what we want to do. So
how exactly do we
negotiate this? We mentioned that the switches are going to be communicating
with these, and it's
going to be included within the BPDUs. So it's going to carry the attributes
inside of the BPDUs.
And we might say, well, wait a second, how are we carrying all of the VLANs and
all of the instances?
Well, we're technically not, we're going to carry the name and the number,
because those are fields
we can populate. But for the VLAN to instance mapping, we're going to carry a WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
we can populate. But for the VLAN to instance mapping, we're going to carry a
hash for the mapping.
So we're going to make sure essentially not so much that, hey, here's my exact
configuration.
But if I include a hash for that configuration, we can compare the hashes and
make sure that we at
least match configurations. If there is a difference in the configuration, we
're not going to know
what the difference is, we're just going to know that the hashes don't align,
and therefore there
must be a difference. And so if my two switches, if we agree on these WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
must be a difference. And so if my two switches, if we agree on these
parameters, then
we're good, and everything will carry on like a rapid per VLAN spanning tree
environment where
we're just looking for which links to block in the network. But if we disagree,
especially if we
don't agree on the mapping, because that's something that's pretty easy to
create a mistake around,
well, at that point, these two switches are going to decide that this is a
boundary connection WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
boundary connection
and that the other switch is part of a different MST region. So we don't need
to worry too much
about this again, because for the most part, we're going to try to just match
all of these together,
but just be aware that these attributes are carried inside the BP to use and
switches will
be able to tell if there's a problem. And those will show up as boundary links
in our show spanning
tree outputs. So this keyword will show up in our configurations. If we ever
see that,
now we know what it's saying. It's saying that we need to check these WEBVTT X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000
now we know what it's saying. It's saying that we need to check these
parameters and make sure
that the configurations match.