What uses the MSTP bandwidth
- How many of the devices will be BACnet slaves?
Token passing and looking for new devices on the MSTP trunk consumes a fair amount of bandwidth.
A BACnet slave can be read/written but never gets the token. So it can’t initiate any messages because it never gets the token. The more slaves the fewer token passes. Typically you are not able to put a device in slave mode. Most vendors implement their devices as masters (ie token passing devices)
- How many Objects in each device are you interested in monitoring ?
The more you read and the greater the frequency the more bandwidth that will be consumed.
It takes approx 30 bytes to poll for a single property. It takes about 40 bytes to reply. A token is 8 bytes as is a Poll for master.
- How many properties from each of these objects ?
- What is the baud rate?
- What is Max Master Set to?
Every few cycles each (master) token passing device on the network must look to see if there are new devices. Max Master determines the biggest address that must be searched for. Each search involves sending a message and waiting for a response or a timeout (if the devices isn’t there). Timeouts cost time. The higher the number of Max Master (default is 127) the more potential devices must be searched for. If you use Max master to improve bandwidth then you must adjust it in each device.
- Do the devices support the “Read/Write Property Multiple” services or must each property be read in a separate message.
Find the answer to this question by reading the BIBs statement for each device or you could explore the device object of the device, find the property called BACnetServicesSupported and then look at the 14th item in the array to see if Read Property Multiple is supported and the 16th for Write Property Multiple. However, we have found that a large number of devices don’t display this information.
Obviously, if you can read a chunk of properties in one message you will be better off than if you can only read a single one.
- Can you use BACNet’s COV mechanism.
COV stands for Change of Value. When a device supports COV another device / application can subscribe to receive notifications when an object property changes. This means the data client doesn’t have to poll for data continuously but can wait passively to be notified of the change. This reduces the number of messages on a network dramatically.
- Some devices are slower than others.
BACnet allows up to 15 msec for a device to use the token. Since most messages on a MSTP network are token passes a device that uses the token in 5 msec will consume much less bandwidth than one that takes 15msec. (A number of vendors relax this requirement to allow for other vendors implementations. The more relaxed the more bandwidth is consumed doing nothing.)