All About BBMDs, Pt 3! Your OT Network Questions, Answered: Ep. 9

This week is short and sweet. 4 more BBMD issues, 4 simple answers from Ping!

Thanks for sending in all your questions! If you’d like us to tackle a particular topic—maybe about broadcast behavior, MS/TP chain length, or network segmentation—send them our way. We love digging deep to help make your BACnet/OT networks more reliable.

Send us a message on LinkedIn, Reddit, or Bluesky, or email us at marketing[at]optigo.net .

Want to get the latest episodes the moment they get published? Subscribe to our YouTube channel, and you get access to videos days before we post them here!

Here’s What Ping Covers in Episode 9:

Ping explains how duplicate or overlapping BBMD configurations amplify BACnet broadcasts across subnets, turning each broadcast into multiple unicasts that can snowball into storms. He clarifies what a BBMD does (forwarding broadcasts based on its BDT) and when multiple BBMDs on the same subnet are valid—split-horizon or hub-and-spoke designs where BDTs don’t overlap.

For troubleshooting, he recommends pulling each BBMD’s distribution table to compare entries, running short packet captures on the BBMD subnets, and watching discovery traffic for repeated Who-Is/I-Am replies.

He also notes that BACnet/SC eliminates the need for BBMDs by routing through an SC hub, and closes with practical design advice: avoid stacking roles on a single device and recognize there’s no hard device-count threshold—risk grows with system size.


Transcript

Ping
Yeah, that’s what we call a duplicate BBMD configuration. And what will happen is that you will multiply the number of BACnet broadcast messages unnecessarily. So let me explain a little bit more. BBMD’s function is to catch BACnet broadcast messages that have not yet been forwarded and to forward them to its peers.

Peers defined as entries inside its BBMD table.

It will send a unicast copy of every BACnet broadcast message to every entry in the distribution table. So if two BBMDs on the same subnet have the same BDT, it will take every BACnet broadcast packet

And send a copy to its peers and so that peer will receive two unicast copy of that message and will convert both of those unicast messages back into broadcast. That’s how it duplicates that BACnet broadcast message That’s very bad. You’ve been following our shorts, our videos, you know we talk a lot about how broadcast messages

Is the noise, is problematic on systems. So if you are duplicating, multiplying the BACnet broadcast messages because you have these duplicate BBMD, it will very, very quickly create massive broadcast storms. So that absolutely needs to be fixed. I should just point out one quick note is that we talked about topic in different videos called the BBMD split horizon architecture,

Or the asymmetric configuration, or the hub and spoke, all the same terminologies. In those cases, it is possible to have multiple BBMD in the same subnet, but as long as their BDTs do not overlap.

To detect duplicate BBMDs, or to verify that you don’t have to duplicate BBMD, it’s not the easiest thing in the world. mean, if you’re comfortable with Wireshark, you could run Wireshark on all of its target subnets. So look at the BDT and it points to a BBMD, go to the subnet to each BBMD, run Wireshark there and look for duplication of IAM messages, Whois messages, all those type of broadcast messages.

But you really have to kind of dig down. Really probably the easiest way is to go and open up the BDT of each BBMD, write down the BDT on a piece of paper and see if there’s any overlap. It’s tedious but you know that’s probably the next best thing other than using Optigo Visual Networks of course.

I am not an expert of BACnet/SC, but BACnet Secure Connect will replace BBMDs or BBMDs will not be required in BACnet/SC networks because BACnet/SC already takes all those messages and sends them to a hub, which then will forward to another place and that forwarding occurs whether it’s unicast or broadcast. Therefore, it’s not necessary to have a BBMD to go from one summit to another summit.

So again, in short, BACnet/SC, BBMDs will not be required.

That’s a great question. There’s no hard rule on how many devices. I often use the thousand device count as kind of when you should start keeping an eye on the BBMD. However, I should point out that you could have a system with 40 devices and the BBMD can cause massive problems that can create performance issue on a 40 device system. So I think the better advice in this case is you always should keep a close eye on your BBMD configuration. It is

The Achilles Heel of BACnet/IP, you can quickly make a mistake in the configuration of 2, 3 BBMDs and create multiplication of BACnet broadcast messages. So I think always keep an eye on what BBMD is pointing to which BBMD. If you are interested and you are in a system that’s a little bit bigger, so thousand device-ish,

You should consider looking at this hub and spoke with this split horizon architecture, which we’ll cover in a different video. And then one big advice I often say is if you do have a system that, you know, it’s a fair size, split those functions. So don’t have a device that’s also a BACnet controller that controls something very sensitive and also is doing BACnet routing between MS/TP and BACnet/IP, for example, and also is the BBMD of that subnet.

It’s creating multiple functions on one device and causing it to likely run into an oversubscription, oversaturation situation. So if you can, use a device that you don’t need as much as a BBMD ⁓ same as BACnet routing functions.

Besides Optigo Visual Networks? If you have an application that allows you to read the distribution table from a BBMD, go ahead and issue that. Look at all the BBMDs you expect to have in each subnet and go get the distribution table from it. There’s a BACnet message called “read-distribution-table” There’s different applications that can allow you to do that and verify that. Make sure there’s no overlaps between them.

Second go into each subnet where you have a BBMD run a quick capture Run a discovery while you are doing a capture and see if there’s more who-is than you expected if you one Discovery you should get one who-is if you get more than one make sure that you understand why perhaps there’s a device that’s sending out some who-is on its own, but if you see that

You send it from your laptop and you see a laptop have three or four or even two who-is when we expected one then you should consider you should look into it a little bit more carefully. It should not be disruptive unless you’re in a very very large system. Again discovery, device discovery sometimes can cause some issues in large systems but you could do a target who-is or who-is to one device and again do that wire shark and make sure that you only got one who-is and one I-am back.

An image of a laptop with OptigoVM Diagnostic results displayed, showing BACnet MSTP troubleshooting issues

How many issues will you solve today?

Share This Post

Don't want to wait?

Sign up now to get posts delivered right to your inbox the moment they go live.