4 ms·
All the details in the spec: https://www.bluetooth.com/specifications/mesh-specifications https://www.bluetooth.com/specifications/mesh-specifications I'm n
by yaantc 9y ago
All the details in the spec:
https://www.bluetooth.com/specifications/mesh-specifications https://www.bluetooth.com/specifications/mesh-specifications
I'm not following this too closely, but here's the summary as I understand it: it's a software evolution based on existing BLE hardware. It's not a new profile, they're above the connectivity layer. Most important "detail" IMHO: it's just the first step of BT mesh. This version 1.0 is based on flooding, so not super efficient. Take all the pictures with a gazillion devices with a big grain of salt ;) But an extension with routing, allowing better scaling, will follow soon. Then it will have the potential to scale better. But this first version is enough to get started, and sufficient for limited scale deployments like consumer applications at home for example.
- oflannabhra 9y agoThis is correct. Several private companies built their own mesh networking protocols on top of Bluetooth, and multiple silicon vendors also offered their own mesh technology built into their stacks. If I recall correctly, one company essentially donated their mesh networking protocol to the BT SIG, and this became the basis for the official BT mesh. Within the SIG, there are multiple efforts to bring mesh networking to the standard, through various workgroups. I think most of this is a response to 802.15.4 meshes, which have been around for a long time, but are officially getting formalized into specifications or product offerings. Thread, Zigbee, Z-Wave are all gaining momentum, and the BT SIG is trying to not lose marketshare to these products. Interestingly, Thread is the only mesh network of those I mentioned that supports IP, through 6LoWPAN.
- anonymousDan 9y agoInteresting. I'm in the middle of running some experiments on top of an ad-hoc network of raspberry pis connected over WiFi. I next wanted to evaluate the Java-based distributed system I've created on top of some kind of other mesh networking technology (e.g. ZigBee, Bluetooth, Thread, Z-wave). I was hoping to simply treat these as layer 2 technologies for which I could buy a corresponding dongle for my Pis and use OLSR on the Pis to control the routing. Do you mean to say they all define their own network and transport layers? Ideally I'd just like to be able to open a TCP socket without having to worry about the underlying mesh network implementation.
- oflannabhra 9y agoYes, ZigBee, Bluetooth, Thread, and Z-Wave all define their own network and transport layers. ZigBee and Thread are built on top of the 802.15.4 PHY and MAC standard, Bluetooth operates in the 2.4MHz frequency band and operates on the 802.15.1 PHY and MAC (or did at one time), and Z-Wave operates in subGig frequencies and implements its own PHY and MAC layer (plus all other OSI layers). Opening a TCP socket across any of these is essentially impossible because of the miniscule frames all of these support. Thread is the only one that is even capable of supporting IP, but it does so over UDP, using 6LoWPAN (basically IPv6 header compression and packet fragmentation). Z-Wave, Bluetooth and Zigbee are full-stack, meaning they implement their own application layers as well, so unless you implemented TCP on top of the application layer, you probably won't get what you are looking for. Thread just provides the networking layer, so you could potentially use it to carry whatever traffic you like.
- anonymousDan 9y agoGreat info, thanks. Tallies with what I've read over the last few days. If I understand correctly, Bluetooth provides RFCOMM as a reliable transport protocol. Could I just use this in place of TCP for point to point connections or does it have major limitations? I guess I'd have to change my endpoint addressing given there is no IP obviously.