Time On AIr

Interference is one of the most important factor defining performance and scalability of wireless networks. When a data packet is sent by a transmitter, it may or may not reach the intended receiver, depending whether it interferes (collides) with another packet or not.

I discussed this many times, pointing the compact nature of Bluetooth mesh packets helps these networks scale better. You have asked for precise numbers. Here they are. To make comparisons fair, I took a light dimming message in Bluetooth mesh and Zigbee. The one that is sent to set the dim level of a group of lights to certain value. The shortest form of such message would be 4 bytes (on air we call them octets): 2 octets for the message opcode (dim) and 2 octets for the value (assuming 16-bit resolution). In practice things are a little bit more complicated (Bluetooth mandates sending a transaction identifier and Zigbee mandates sending a transition time (Bluetooth has transition time as optional, as the light may have a default transition time defined).

Considering the details, in both cases the application payload is 5 octets. Then comes the overhead (addressing, security, media access control, CRC etc). In the end it is the total that matters.

To dim a light Bluetooth mesh needs to send 41 octets on air. Zigbee needs 69. 

You may say the structure of the Zigbee message is ~70% less efficient [(69-41)/41]. But we need to consider the data rate: 1Mbps for Bluetooth and 250kbps for Zigbee.

Overall - on air: Bluetooth mesh is 0.328 ms, Zigbee is 2.208 ms. That is almost 7x difference (6.73x to be more precise).

7x is a huge difference. It is the key reason why Bluetooth mesh networks scale so much better (the other one is distributed edge processing). And the bottom line is Bluetooth can fearlessly serve networks made of thousands of nodes, while the other technologies' recommendations are to keep the total well below 100).

Comments