I have some gear that only supports RSTP (version 2 BPDUs), and other gear that supports MSTP (version 3 BPDUs). I understand how a structured network can be designed with MSTP domains and external RSTP switches; however, that is not possible with my scenario. Ideally I would like to just connect these two types of gear together and run xSTP. Would this work? I realize that the MSTP switches use hop count, whereas the RSTP switches use max-age and current-age, and that each switch type ignores the other's counter. Would this essentially enlarge the network diameter? How would the behavior of the network be affected?
MST and RSTP were designed from the ground up to interact together. You can see MST as being a simple extension over RSTP. The MST BPDU is in fact and RSTP BPDU + some few additional things required to support several instance. So basically, from the perspective of an MST bridge, an RSTP peer looks like a different MST bridge in a different region. You will have no problem running RSTP and MST together, except of course that you will only be able to run a single instance (instance 0, the CIST) at the boundary between RSTP/MST (no load-balancing).
The hop count MST uses is only within a region. Between regions, MST uses the message age, just like RSTP.
As you have seen, Cisco does not support a real RSTP as defined in the IEEE. We only have Rapid-PVST, which is a proprietary version running one instance of RSTP per VLAN. The trick is that we don't need to support IEEE RSTP because MST is a superset of RSTP. Running MST with no region configuraiton is basically equivalent to running RSTP;-)
Hope this helps,
My situation is a bit more complicated. I have some ciscos and some non-ciscos (used
that I picked up). Some support MSTP with version 3 BPDUs and some support RSTP with version 2 BPDUs. I do not have the ability to partition the different types into separate regions. I plan to run MSTP with no region configuration (effectively, as you say, RSTP using version 3 BPDUs).
To get to the crux of my question, here are some scenarios.
Suppose I put these in a ring, with alternating version 3 BPDU and version 2 BPDU switches. Will this work? As BPDUs go around the ring, a version 3 switch's BPDU will get converted to a version 2 BPDU, which will then get converted into a version 3 BPDU, etc. In this case I think the max age piece of the version 2 BPDU will get incremented at each step, but the version 3 hop count will be meaningless, being restarted at its max by each version 3 switch and discraded at each version 2 switch. My gut says this will work - the age counter on the v2 BPDU piece will correctly measure the size of the ring.
Suppose its more random, with some (1 to n) adjacent version 3 BPDU switches, and some (1 to m) adjacent version 2 BPDU switches, and then more version3's and then more version2's, etc. Here both the max age piece of the v2 BPDU and the hopcount piece of the v3 BPDU would undercount the number of actual switches in the ring, because each sequqnce of v3 switches would only increment the max age once on entry and the v2 switches would discard the v3 information. So the BPDUs would survive for a much longer time than (i.e. around a much bigger ring would be the case in the alternating case above for the same max_age and max hopcount settings - which I think would result in (at least) longer convergence time? MAybe other problems as well?
As a worst? case, suppose I had a ring with two version 2 switches and 30 version 3 switches between them (a 62 node ring running one big spanning tree). The v2 switches would think the ring was 4 nodes in diameter based on the age counter. Each version 3 span hopcount would measure up to 30 switches before its v3 info was discarded by a v2 switch. Neither would know the actual case and I would be running a pretty huge ring topology without the switches correctly measuring the network diameter.
Would I be in trouble? Isit just long convergence time? How about response to a link/node failure?
This is somewhat theoretical and somewhat practical description. I am not running a classic MSTP/RSTP mixed network, but am stuck with different switches using different versions of BPDUs and need to understand my exposure to problems. Thanks in advance for your expertise!
You are right on all your points. Basically, RSTP is run between MST region, and an RSTP bridge is considered as a region by itself. So the BPDU age is incremented each time a BPDU goes from a region to another. When BPDUs are travelling inside a region, its BPDU age is frozen (tunneled if you prefer) and the hop count is used instead. The hop count does not survive a change of region (it is ignored at the boundary of a region by a switch in a different region) so indeed, you could indeed create a ring of max_age * max_hop_count. In term of convergence time, max age is not used as long as your network is adapted for RSTP/MST (i.e. all switches are connected p2p by ports running RSTP/MST and edge ports are properly identified).