Bluetooth Mesh under the Microscope: How much ICN is Inside? Hauke Petersen, Peter Kietzmann, Cenk G¨ undo˘ gan, Thomas C. Schmidt and Matthias W¨ ahlisch peter.kietzmann@haw-hamburg.de 6th ACM Conference on Information-Centric Networking (ICN 2019) September 26, 2019
Starting Point The Bluetooth mesh standard adopted last year is a wireless technology based on the ICN principles. [. . . ] It implements all of the major paradigms of information-centric networking in order to enable simplicity, scalability and reliability [. . . ]. SILVAIR. Information-centric networking – a revolutionary approach to wireless lighting control, 2018. http: // silvair. com/ resources/ information-centric-networking/ 1
Starting Point The Bluetooth mesh standard adopted last year is a wireless technology based on the ICN principles. [. . . ] It implements all of the major paradigms of information-centric networking in order to enable simplicity, scalability and reliability [. . . ]. SILVAIR. Information-centric networking – a revolutionary approach to wireless lighting control, 2018. http: // silvair. com/ resources/ information-centric-networking/ What is BT mesh? How does it compare to ICN? 1
Related Work BT mesh ICN [SILVAIR’18] BT mesh standard based on ICN principles ✓ ✓ No technical detail NDNoT Framework for IoT [ICN’18] ✘ ✓ No technical evaluation BLE and BT mesh performance analysis ✓ ✘ [SenSys’17] No ICN at all [SoftCOM’15] Service mediation in multi-hop BLE/NDN ✘ ✓ No comparison in ICN Bluetooth convergence layer for NetInf [Theses’14] ✘ ✓ No low-power BT 2
Outline Motivation why we started this work BT mesh overview and comparison to ICN principles Experimental evaluation in the FIT IoT-LAB testbed Outlook how ICN can benefit from BT mesh concepts 3
BT mesh overview and comparison to ICN principles 4
Bluetooth (BT) Evolution ◮ BT (since 1.0) → BLE (since 4.0) → BT mesh (independent) & BT 5.0++ 5
Bluetooth (BT) Evolution ◮ BT (since 1.0) → BLE (since 4.0) → BT mesh (independent) & BT 5.0++ ◮ Uses BLE hardware ◮ Enables multi-hop ◮ Adds many-to-one Adds many-to-many 5
Stack Organization BT mesh ICN BT mesh ◮ Full vertical stack Application Data ◮ Data model per device type Application Model Layer Access Layer ◮ Publish-subscribe data exchange ◮ Segmentation on transport layer Upper Transport Layer Networking Lower Transport Layer NDN/CCNx ◮ Tied to single interface BLE radio Network Layer ICNLoWPAN Bearer Layer MAC-to-Face Map Link Layer Hw Physical Layer 6
Stack Organization BT mesh ICN BT mesh ◮ Full vertical stack Application Data ◮ Data model per device type Application Model Layer Access Layer ◮ Publish-subscribe data exchange ◮ Segmentation on transport layer Upper Transport Layer Networking NDN/CCNx Lower Transport Layer ◮ Tied to single interface BLE radio Network Layer ICN ICNLoWPAN Bearer Layer ◮ Relies on supporting protocols MAC-to-Face Map ◮ No requirement on format of names Link Layer Hw ◮ Convergence layer implements Physical Layer compression and segmentation ◮ Allows multi-interface of different types 6
MAC and Reliability BT mesh ◮ TX on 3 broadcast channels ◮ Replicate packets up to 7x a priori → Multiple transmissions / packet → Tweaked according to roles ◮ RX scans on 3 channels consecutively 7
Routing and Forwarding BT mesh ◮ Multi-hop & multi-path by forwarding all packets over broadcast ◮ Managed flooding : ◮ Hop-limit counter ◮ Message cache list known packets ◮ Prevents redundant forwarding ◮ Does not cache content ◮ Native support of group requests Source: https://www.beaconzone.co.uk/BluetoothMeshBeacons 8
Names and Addresses BT mesh ◮ Group addresses to label data streams ◮ Unassigned ◮ Unicast ◮ Group: map to fixed roles ( all relays , all nodes , ...) ◮ Virtual: configurable groups ◮ Setup usually static during deployment ◮ Data is addressed not endpoint → Content centric 9
Publish-Subscribe BT mesh ◮ Publish-subscribe w/o broker ◮ Enabled by broadcasting on link layer ◮ Advertise items to groups ( publish ) ◮ Filter items on receive ( subscribe ) ◮ Publish can be solicited for reliability → similar to ICN request/response (Standard advises against) 10
BT mesh vs ICN Comparison BT mesh ICN MAC Broadcast Unspecified Reliability Replication Retransmits on demand Routing No routing FIB based routing Forwarding Managed flooding FIB & PIT based forwarding Names Group addresses for data streams Hierarchical tokenized names for data items Addresses Numeric representation Semantic representation Publish-Subscribe Enabled without broker Workarounds needed to avoid push 11
Experimental evaluation in the FIT IoT-LAB testbed 12
Testbed Deployment ◮ ARM Cortex-M4F @ 64 MHz ◮ ARM Cortex-M3 @ 72 MHz ◮ 64 kB RAM, 512 kB ROM ◮ 64 kB RAM, 512 kB ROM ◮ BLE radio on SoC (1 Mbps) ◮ IEEE 802.15.4 radio (250 kbps) ◮ RIOT 2019.04 + NimBLE ◮ RIOT 2019.04 + CCN-lite 13
Single-hop Topology w/ 10 Nodes Many-to-one One-to-many 9 publishers; 100 items/node; 5 s interval 1 publisher; 100 items; 1 s interval C 1 P 1 P 2 C 2 C P . . . . . . Data flow n : 9 nodes P n C n C : Consumer P : Producer 14
Multi-hop Line Topology w/ 10 Nodes Many-to-one 9 publishers; 100 items/node; 5 s interval C P 1 P 2 P n One-to-many Data flow 1 publisher; 100 items; 1 s interval n : 9 nodes C : Consumer P C 1 C 2 C n P : Producer 15
Time to Content Arrival Single-hop 1.0 NDN one-to-many 0.8 BT mesh one-to-many 0.6 CDF 0.4 0.2 0.0 0.00 0.01 0.02 0.03 0.04 0.0 0.1 0.2 0.3 0.4 Time to Completion [s] 16
Time to Content Arrival Single-hop 1.0 NDN one-to-many NDN many-to-one 0.8 BT mesh one-to-many BT mesh many-to-one 0.6 CDF 0.4 0.2 0.0 0.00 0.01 0.02 0.03 0.04 0.0 0.1 0.2 0.3 0.4 Time to Completion [s] 16
Time to Content Arrival Single-hop 1.0 NDN one-to-many NDN many-to-one 0.8 BT mesh one-to-many Retries BT mesh many-to-one 0.6 CDF 0.4 0.2 0.0 0.00 0.01 0.02 0.03 0.04 0.0 0.1 0.2 0.3 0.4 Time to Completion [s] 16
Time to Content Arrival Single-hop Multi-hop 1.0 1.0 NDN one-to-many NDN many-to-one 0.8 0.8 BT mesh one-to-many BT mesh many-to-one 0.6 0.6 CDF CDF 0.4 0.4 0.2 0.2 0.0 0.0 0.00 0.01 0.02 0.03 0.04 0.0 0.1 0.2 0.3 0.4 0.0 0.1 0.2 0.3 0.4 0 1 2 3 4 Time to Completion [s] Time to Completion [s] 16
Time to Content Arrival Single-hop Multi-hop 1.0 1.0 NDN one-to-many NDN many-to-one 0.8 0.8 Dummy Caching benefit BT mesh one-to-many BT mesh many-to-one 0.6 0.6 CDF CDF 0.4 0.4 0.2 0.2 0.0 0.0 0.00 0.01 0.02 0.03 0.04 0.0 0.1 0.2 0.3 0.4 0.0 0.1 0.2 0.3 0.4 0 1 2 3 4 Time to Completion [s] Time to Completion [s] 16
Time to Content Arrival Single-hop Multi-hop 1.0 1.0 1.0 NDN one-to-many NDN one-to-many NDN many-to-one NDN many-to-one 0.8 0.8 0.8 Dummy Caching benefit BT mesh one-to-many BT mesh one-to-many BT mesh many-to-one BT mesh many-to-one 0.6 0.6 0.6 CDF CDF CDF 0.4 0.4 0.4 0.2 0.2 0.2 0.0 0.0 0.0 0.00 0.00 0.01 0.01 0.02 0.02 0.03 0.03 0.04 0.04 0.0 0.1 0.2 0.3 0.4 0.0 0.0 0.1 0.1 0.2 0.2 0.3 0.3 0.4 0.4 0 1 2 3 4 Time to Completion [s] Time to Completion [s] Time to Completion [s] 16
Traffic Load: One-to-Many Single-hop 2 NDN TX NDN RX Retransmission 1.5 Packets [#/10 3 ] 1 0.5 0 1 2 3 4 5 6 7 8 9 10 Node ID 17
Traffic Load: One-to-Many Single-hop 2 NDN TX NDN RX Retransmission 1.5 Packets [#/10 3 ] 1 Retransmissions 0.5 0 1 2 3 4 5 6 7 8 9 10 Node ID 17
Traffic Load: One-to-Many Single-hop Multi-hop 2 2 NDN TX NDN RX Retransmission 1.5 1.5 Packets [#/10 3 ] Packets [#/10 3 ] 1 1 Retransmissions 0.5 0.5 0 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Node ID Node ID 17
Traffic Load: One-to-Many Single-hop Multi-hop 2 2 NDN TX NDN RX Retransmission 1.5 1.5 Packets [#/10 3 ] Packets [#/10 3 ] 1 1 Retransmissions 0.5 0.5 Caching benefit 0 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Node ID Node ID 17
Traffic Load: One-to-Many Single-hop Multi-hop 2 2 NDN TX BT mesh TX NDN RX BT mesh RX Retransmission 1.5 1.5 Packets [#/10 3 ] Packets [#/10 3 ] 1 1 0.5 0.5 0 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Node ID Node ID 17
Traffic Load: One-to-Many 10 Single-hop NDN TX BT mesh TX NDN RX BT mesh RX Retransmission L2 drop 8 2 Packets [#/10 3 ] 2 NDN TX BT mesh TX NDN RX BT mesh RX Retransmission 6 1.5 1.5 Packets [#/10 3 ] Packets [#/10 3 ] 4 1 1 0.5 0.5 2 0 0 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Node ID Node ID Node ID 17
Traffic Load: One-to-Many Single-hop Multi-hop 2 2 NDN TX BT mesh TX NDN RX BT mesh RX Retransmission 1.5 1.5 Packets [#/10 3 ] Packets [#/10 3 ] 1 1 0.5 0.5 0 0 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 Node ID Node ID 17
Traffic Load: Many-to-One Redundant replications in BT mesh flood the medium with packets 18
Outlook how ICN can benefit from BT mesh concepts 19
Recommend
More recommend