CN114599018A - Bluetooth Mesh network routing method based on automatic channel scheduling - Google Patents

Bluetooth Mesh network routing method based on automatic channel scheduling Download PDF

Info

Publication number
CN114599018A
CN114599018A CN202011396744.1A CN202011396744A CN114599018A CN 114599018 A CN114599018 A CN 114599018A CN 202011396744 A CN202011396744 A CN 202011396744A CN 114599018 A CN114599018 A CN 114599018A
Authority
CN
China
Prior art keywords
node
data packet
neighbor
address
channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011396744.1A
Other languages
Chinese (zh)
Inventor
乔成
刘佰强
董玮
高艺
王敏玥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Simon Electric China Co Ltd
Original Assignee
Zhejiang University ZJU
Simon Electric China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU, Simon Electric China Co Ltd filed Critical Zhejiang University ZJU
Priority to CN202011396744.1A priority Critical patent/CN114599018A/en
Publication of CN114599018A publication Critical patent/CN114599018A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/32Flooding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The invention discloses a Bluetooth Mesh network routing method based on automatic channel scheduling. The method comprises the following steps: all nodes firstly establish an empty neighbor table and an empty routing table, and then periodically send a broadcast packet with a destination address as a broadcast address; the node updates a neighbor table and a routing table according to the received broadcast packet, calculates the neighbor node and the monitoring channel of the node by using the MAC address, and monitors the corresponding channel after the initialization stage is finished; when the node has data packet transmission, searching whether the routing table has the routing table item of the destination node, if yes, transmitting the packet on the monitoring channel where the next hop is located, otherwise, transmitting the packet once on the monitoring channel where each neighbor is located. When the node receives the data packet, checking whether the destination address of the data packet is the node, if so, transmitting the data packet to an upper layer for processing, otherwise, checking whether the TTL value in the data packet is less than or equal to 1, if so, discarding the data packet, otherwise, entering a packet sending process.

Description

Bluetooth Mesh network routing method based on automatic channel scheduling
Technical Field
The invention relates to a Bluetooth Mesh network routing method based on automatic channel scheduling.
Background
With the increasing popularity of the internet of things (IoT), people put higher demands on lightweight and secure communication technologies, and although smart homes, smart offices and smart cities are developing increasingly, good interoperability among internet of things devices is still a challenge. People need to perform tasks such as various room lighting, sensing and temperature control by interconnecting hundreds of internet of things devices, but since most of the devices are resource-limited and are powered by button cells, wireless communication technologies such as Wi-Fi, which have high overhead and high power consumption, are not suitable for being used in the internet of things scene.
Bluetooth, and in particular Bluetooth Low Energy (BLE), has become one of the most common internet of things solutions in the last decade. BLE is designed to cope with the limitation of large resource overhead and power consumption, but initially only a star topology is considered, and a smartphone is used as a main central control entity, so that the topology is not suitable for covering a large-scale network such as an intelligent building. Many researchers and vendors have proposed academic or proprietary solutions to such problems, overcoming these limitations through multi-hop networks based on Bluetooth mesh, but there has been no official standard for Bluetooth mesh. Until 19/7/2017, the core specification of the official Bluetooth Mesh was proposed by the Bluetooth Special Interest Group (SIG), which provided a generally accepted standard for Bluetooth Mesh networks.
The protocol proposed by the core specification of Bluetooth Mesh uses the same underlying protocol stack as BLE, thus making Bluetooth Mesh backward compatible with Bluetooth 4.0. According to the specification, a Bluetooth Mesh network can support 32767 nodes, and can have a maximum 127-hop network. Except that the low-power-consumption nodes defined in the specification have the low-power-consumption characteristic, all other nodes need to be continuously powered, namely, the nodes continuously monitor the broadcast channel of the Bluetooth, all monitored data packets need to be forwarded or transmitted to an upper layer for further processing, and the nodes do not have the low-power-consumption characteristic. The nodes in the Bluetooth Mesh communicate with each other by using a Managed flooding (Managed flooding) mode, when a node in the network needs to send a data packet, the data packet is only broadcast once on the Bluetooth broadcast channels 37, 38 and 39 in sequence without any routing strategy, and all other nodes in the radio range of the node receive the data packet. And the nodes monitoring the data packet transmit to an upper layer for processing if the destination address in the packet is the address of the nodes per se, otherwise, whether the TTL field is less than or equal to 1 needs to be judged, if so, the data packet is directly discarded, and otherwise, the TTL field is reduced by one and then the data packet is continuously forwarded.
Because the Bluetooth Mesh defined by the core specification uses a managed flooding mode to perform mutual communication between nodes, when a plurality of nodes in the network need to send data packets, all relay nodes in the network participate in forwarding the data packets, so that a large number of repeated data packets exist in the network, and the probability of data packet collision on the Bluetooth broadcast channels 37, 38 and 39 is increased. Under the situation, the bluetooth broadcast channel resource waste is serious, the communication reliability is reduced, the end-to-end delay is invisibly increased due to retransmission caused by collision problems, and the collision problem of data packets is aggravated when the bluetooth broadcast channel is deployed in a large-scale dense network, so that the expandability is insufficient.
Disclosure of Invention
The invention provides a Bluetooth Mesh network routing method based on automatic channel scheduling, aiming at overcoming the defects in the prior art.
The invention aims to improve the defects of the existing Bluetooth Mesh protocol, and change the communication mode of the Bluetooth Mesh from the purposeful management routing into the purposeful routing based on the automatic channel scheduling strategy among nodes.
In order to realize the purpose, the technical scheme adopted by the invention is as follows: a Bluetooth Mesh network routing method based on automatic channel scheduling comprises the following steps:
(1) the network topology establishment initialization process comprises the following steps:
(1.1) all nodes in the network establish an empty neighbor table and an empty routing table;
(1.2) periodically sending broadcast packets with the destination address of the broadcast address by all nodes in the network, wherein the TTL field is set to be the maximum value 127;
(1.3) all nodes in the network judge whether a packet sending node is a neighbor node according to the TTL field of a received broadcast packet, and if so, the MAC address and the mesh address of the neighbor node are recorded in a neighbor table and a routing table;
(1.4) for a data packet sent by a non-neighbor node, calculating the hop count experienced by the data packet through a TTL field in the packet, recording the address of a previous hop node for forwarding the data packet when the hop count experienced by the data packet sent by the same node is the shortest hop count, taking the address of the next hop node as the address of a destination node as the address of a source node of the currently received data packet, and updating the address of the next hop node of the destination node address and hop count information in a routing table;
(1.5) neighbor nodes of nodes in the network monitor channel calculation: the node performs Hash operation on the MAC address of the neighbor item according to the neighbor table item in the neighbor table, and performs modulus operation on the Hash operation result to obtain a monitoring channel corresponding to each neighbor, and records the monitoring channel in the neighbor table;
(1.6) each node in the network monitors the channel calculation: the node calculates the channel to be monitored by the node according to the MAC address of the node through the same Hash operation as the step (1.5), and monitors the channel after the initialization stage is finished;
(2) a transmit data packet process comprising:
(2.1) when the node has the data packet to send, searching a routing table according to the mesh address of the destination node, if the mesh address of the destination node is in the routing table, searching a channel monitored by the node with the MAC address in a neighbor table according to the MAC address field of the next hop in the routing table, and sending the data packet on the channel, otherwise, executing the step (2.2);
(2.2) according to the monitored channel where the neighbor node is located recorded in the neighbor table, sending the data packet once on the monitored channel of each neighbor;
(3) a receive data packet process comprising:
(3.1) after receiving the data packet, the node in the network checks whether the destination address in the data packet is the mesh address of the node, if so, the node transmits the data packet to the upper layer of the protocol stack for processing, and if not, the node executes the step (3.2);
and (3.2) checking whether the TTL value in the data packet is less than or equal to 1, if so, directly discarding the data packet, and otherwise, executing the packet sending process in the step (2).
Furthermore, the destination address of the routing table in the invention is the Mesh address of the node defined according to the bluetooth Mesh specification.
In the step (1.4), the address of the previous hop node forwarding the data packet is the MAC address of the previous hop node.
In step (1.4), the hash operation is modulo by 40, i.e. the number of all channels used by BLE.
The invention has the beneficial effects that: by improving the managed flooding communication mode in the existing Bluetooth Mesh network and introducing a routing strategy, the channel resources of Bluetooth are fully utilized, most redundant data packets in the network are eliminated, the collision probability of the data packets in the network is reduced, and the utilization rate of the channel resources is improved; particularly, in a scene of intensive deployment of large-scale nodes, the network performance can be obviously improved, which is specifically embodied as follows: the packet receiving rate is improved, the end-to-end time delay is reduced, and the expansibility of the network is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained based on these drawings without creative efforts.
FIG. 1 is a work overview of a method embodying the present invention.
FIG. 2 is a detailed workflow diagram of the method of the present invention.
Detailed Description
The invention is further described below with reference to the accompanying drawings. The method comprises the following specific steps:
(1) the network topology establishment initialization process comprises the following steps:
(1.1) all nodes in the network establish an empty neighbor table and an empty routing table, wherein the neighbor table comprises the following fields: the MAC address of the neighbor node, the monitoring channel of the neighbor node and a pointer pointing to the next table entry; the routing table contains fields including: mesh address of destination node, MAC address of next hop node, hop count needed to be experienced by data packet sent to destination node, pointer pointing to next table entry;
(1.2) periodically sending broadcast packets with the destination address of broadcast address (0 xffff) by all nodes in the network, wherein TTL field is set to maximum value 127;
(1.3) all nodes in the network judge whether a packet sending node is a neighbor node according to TTL fields in received broadcast packets; specifically, when the initial TTL value minus the in-packet TTL value is 1, the packet TTL value is a neighbor node, and then MAC addresses and mesh address information of the neighbor node are respectively recorded in a neighbor table and a routing table;
(1.4) for a data packet sent by a non-neighbor node, calculating the hop count of the data packet through a TTL field in the packet; specifically, subtracting a packet-internal TTL value from an initial TTL value, recording an MAC address of a previous hop node for forwarding a data packet when the hop count of the data packet is the shortest hop count, taking the MAC address as a next hop node with a destination node address being a source node address of the currently received data packet, and updating the next hop node address and hop count information of the destination node address in a routing table;
(1.5) neighbor nodes of the nodes in the network monitor channel calculation: the node performs hash operation of a 32-bit mixing function on the MAC address of the neighbor item according to the neighbor table item in the neighbor table, and performs modulus operation with divisor being BLE available channel number 40 on the hash operation result to obtain a monitoring channel corresponding to each neighbor and record the monitoring channel in the neighbor table;
(1.6) each node in the network monitors the channel calculation: the node calculates the channel to be monitored by the node according to the MAC address of the node through the same Hash operation as the step (1.5), and monitors the channel after the initialization stage is finished;
(2) a transmit data packet process comprising:
(2.1) when the node has the data packet to send, searching a routing table according to the mesh address of the destination node, if the mesh address of the destination node is in the routing table, searching a channel monitored by the node with the MAC address in a neighbor table according to the MAC address field of the next hop in the routing table, and sending the data packet on the channel, otherwise, executing the step (2.2);
(2.2) according to the monitored channel where the neighbor node is located recorded in the neighbor table, sending the data packet once on the monitored channel of each neighbor;
(3) a receive data packet process comprising:
(3.1) after receiving the data packet, the node in the network checks whether the destination address in the data packet is the mesh address of the node, if so, the node transfers the data packet to the upper layer of the protocol stack for processing, and if not, the node executes the step (3.2);
and (3.2) checking whether the TTL value in the data packet is less than or equal to 1, if so, directly discarding the data packet, and otherwise, executing the packet sending process in the step (2).
The embodiments described in this specification are merely illustrative of implementations of the inventive concept and the scope of the present invention should not be considered limited to the specific forms set forth in the embodiments but rather by the equivalents thereof as may occur to those skilled in the art upon consideration of the present inventive concept.

Claims (1)

1. A Bluetooth Mesh network routing method based on automatic channel scheduling is characterized by comprising the following steps:
(1) the initialization process for establishing the network topology comprises the following steps:
(1.1) all nodes in the network establish an empty neighbor table and an empty routing table, wherein the neighbor table comprises the following fields: the MAC address of the neighbor node, the monitoring channel of the neighbor node and a pointer pointing to the next table entry; the routing table contains fields including: mesh address of destination node, MAC address of next hop node, hop count needed to be experienced by data packet sent to destination node, pointer pointing to next table entry;
(1.2) periodically sending broadcast packets with the destination address of broadcast address (0 xffff) by all nodes in the network, wherein TTL field is set to maximum value 127;
(1.3) all nodes in the network judge whether a packet sending node is a neighbor node according to TTL fields in received broadcast packets; specifically, when the initial TTL value minus the in-packet TTL value is 1, the packet TTL value is a neighbor node, and then MAC addresses and mesh address information of the neighbor node are respectively recorded in a neighbor table and a routing table;
(1.4) for a data packet sent by a non-neighbor node, calculating the hop count of the data packet through a TTL field in the packet; specifically, subtracting a packet-internal TTL value from an initial TTL value, recording an MAC address of a previous hop node for forwarding a data packet when the hop count of the data packet is the shortest hop count, taking the MAC address as a next hop node with a destination node address being a source node address of the currently received data packet, and updating the next hop node address and hop count information of the destination node address in a routing table;
(1.5) neighbor nodes of nodes in the network monitor channel calculation: the node performs hash operation of a 32-bit mixing function on the MAC address of the neighbor item according to the neighbor table item in the neighbor table, and performs modulus operation with divisor being BLE available channel number 40 on the hash operation result to obtain a monitoring channel corresponding to each neighbor and record the monitoring channel in the neighbor table;
(1.6) each node in the network monitors the channel calculation: the node calculates the channel to be monitored by the node according to the MAC address of the node through the same Hash operation as the step (1.5), and monitors the channel after the initialization stage is finished;
(2) a transmit data packet process comprising:
(2.1) when the node has the data packet to send, searching a routing table according to the mesh address of the destination node, if the mesh address of the destination node is in the routing table, searching a channel monitored by the node with the MAC address in a neighbor table according to the MAC address field of the next hop in the routing table, and sending the data packet on the channel, otherwise, executing the step (2.2);
(2.2) according to the monitored channel where the neighbor node is located recorded in the neighbor table, sending the data packet once on the monitored channel of each neighbor;
(3) a receive data packet process comprising:
(3.1) after receiving the data packet, the node in the network checks whether the destination address in the data packet is the mesh address of the node, if so, the node transfers the data packet to the upper layer of the protocol stack for processing, and if not, the node executes the step (3.2);
and (3.2) checking whether the TTL value in the data packet is less than or equal to 1, if so, directly discarding the data packet, and otherwise, executing the packet sending process in the step (2).
CN202011396744.1A 2020-12-04 2020-12-04 Bluetooth Mesh network routing method based on automatic channel scheduling Pending CN114599018A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011396744.1A CN114599018A (en) 2020-12-04 2020-12-04 Bluetooth Mesh network routing method based on automatic channel scheduling

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011396744.1A CN114599018A (en) 2020-12-04 2020-12-04 Bluetooth Mesh network routing method based on automatic channel scheduling

Publications (1)

Publication Number Publication Date
CN114599018A true CN114599018A (en) 2022-06-07

Family

ID=81811983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011396744.1A Pending CN114599018A (en) 2020-12-04 2020-12-04 Bluetooth Mesh network routing method based on automatic channel scheduling

Country Status (1)

Country Link
CN (1) CN114599018A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361670A (en) * 2022-08-16 2022-11-18 重庆邮电大学 Dynamic ad hoc network communication method for Internet of vehicles

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361670A (en) * 2022-08-16 2022-11-18 重庆邮电大学 Dynamic ad hoc network communication method for Internet of vehicles
CN115361670B (en) * 2022-08-16 2024-04-16 重庆邮电大学 Dynamic ad hoc network communication method for Internet of vehicles

Similar Documents

Publication Publication Date Title
US8050196B2 (en) Method and apparatus for controlling packet transmissions within wireless networks to enhance network formation
US6928061B1 (en) Transmission-scheduling coordination among collocated internet radios
US7502354B1 (en) Mesh networking using point coordination function
US7522540B1 (en) Extended service set mesh topology discovery
US7920887B2 (en) System and method for setting up P2P communication group in cellular system, and P2P communication system and method using P2P communication group
WO2009069018A1 (en) Optimized ad hoc networking
US20030069988A1 (en) In-band signaling
US8605596B2 (en) Medium access for de-centralized wireless network
CN102612110A (en) Distributive self-organized routing method in electric carrier wave illumination control system
WO2009107962A2 (en) Path selection procedure in mesh network and format of path request frame therefor
JP2023551375A (en) Wireless communication method and system for node equipment in the Internet of Things for power transmission and substation equipment
US20140219168A1 (en) Routing device and method
JP4903080B2 (en) Wireless communication device
CN101820661A (en) Random walk routing method combining opportunistic forwarding in mobile wireless multi-hop network
EP3672358A1 (en) Method of communication through ble protocol in broadcast and filtered by mac
CN114599018A (en) Bluetooth Mesh network routing method based on automatic channel scheduling
WO2009014278A1 (en) System and method for setting up p2p communication group in cellular system, and p2p communication system and method using p2p communication group
Rabarijaona et al. Enabling Layer 2 Routing in IEEE std 802.15. 4 Networks with IEEE std 802.15. 10
Trelsmo et al. Evaluating IPv6 connectivity for IEEE 802.15. 4 and Bluetooth low energy
CN105657774A (en) Building method and system for self-adaptive core forwarding network in wireless self-organized network
US20040105414A1 (en) Multi-hop wireless network data forwarding
CN102075864A (en) MCDS (minimum connected dominating set)-based method for constructing delay limit multicast forwarding structure
Zhao et al. Age-energy tradeoff in random-access Poisson networks
CN105553854A (en) Mobile ad hoc network and multicast routing method thereof
CN205545958U (en) System that establishs of network is forwardded to self -adaptation core among wireless ad hoc networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination