CN111417165B - Bluetooth Mesh energy efficiency routing method based on awakening time prediction - Google Patents

Bluetooth Mesh energy efficiency routing method based on awakening time prediction Download PDF

Info

Publication number
CN111417165B
CN111417165B CN202010248785.XA CN202010248785A CN111417165B CN 111417165 B CN111417165 B CN 111417165B CN 202010248785 A CN202010248785 A CN 202010248785A CN 111417165 B CN111417165 B CN 111417165B
Authority
CN
China
Prior art keywords
data packet
node
routing
relay node
length
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.)
Active
Application number
CN202010248785.XA
Other languages
Chinese (zh)
Other versions
CN111417165A (en
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.)
Nantong University
Original Assignee
Nantong University
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 Nantong University filed Critical Nantong University
Priority to CN202010248785.XA priority Critical patent/CN111417165B/en
Publication of CN111417165A publication Critical patent/CN111417165A/en
Application granted granted Critical
Publication of CN111417165B publication Critical patent/CN111417165B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • H04W40/10Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention discloses a Bluetooth Mesh energy efficiency routing method based on wake-up time prediction, which comprises the following steps: the agent node retrieves all routing information from a source node to a target node according to the client instruction, collects comprehensive evaluation values and energy information of routing paths by sending routing request data packets, and selects an optimal routing path; the relay node sequentially predicts the awakening time of the next relay node and relays the routing request data packet to the next node; and the target node analyzes the routing request data packet, comprehensively evaluates the hop count, energy and delay information of each path, and feeds back the obtained comprehensive evaluation value to the source node. The invention has the characteristics of low response delay, high fault-tolerant rate and capability of enabling the whole Mesh network to be convenient for a user to use for a longer time under the condition of limited energy.

Description

Bluetooth Mesh energy efficiency routing method based on awakening time prediction
Technical Field
The invention relates to the technical field of Bluetooth, in particular to a Bluetooth Mesh energy efficiency routing method based on awakening time prediction.
Background
The Bluetooth Mesh technology is mainly applied to a Mesh network and a scene of data bidirectional transmission. The Mesh network and the traditional Bluetooth are improved to the greatest extent that one-to-one communication is expanded to one-to-many communication, and the communication range is expanded through a multi-hop data transmission mode. The Bluetooth Mesh can carry out connection and communication of multiple devices indoors without a base station and is mainly divided into a proxy node, a relay node, a friend node and a low-power-consumption node.
However, the current Mesh scheme, such as the Mesh protocol specification proposed by CSR Mesh or SIG, adopts a broadcast Flooding (Flooding) manner for communication. Under the application environment with more BLE equipment, the message forwarding scale of the current Mesh scheme is overlarge, so that the BLE equipment frequently monitors and forwards data, and the endurance of the BLE equipment is reduced. In addition, in the process of mutual interaction of all nodes in the Mesh network, some nodes are always or frequently in a working state, so that the endurance of the battery-powered BLE equipment in the Mesh network is too short, and the user experience is influenced by frequently replacing the battery.
Therefore, it is important to reduce the power consumption of the Mesh network as much as possible, so as to facilitate the use of the Mesh network for a longer time. It becomes more practical to process the relationship between the node sleep mode and the node working mode and reduce the information delay.
Disclosure of Invention
The invention aims to provide a Bluetooth Mesh energy efficiency routing method based on wake-up time prediction, so as to solve the problems in the background technology.
In order to achieve the purpose, the invention provides the following technical scheme: a bluetooth Mesh energy efficiency routing method based on wake-up time prediction is disclosed, in the method, after Mesh networking is completed, under the premise that basic routing information of all nodes is stored by proxy nodes and all relay nodes in a network, the proxy nodes can send routing request data packets, after receiving the routing request data packets, the relay nodes call a grey prediction algorithm to predict the wake-up time of the next relay node, and relay the routing request data packets to the next relay node in sequence; after receiving routing request data packets from different paths, the target node analyzes the data packet contents and calculates a comprehensive evaluation value, and feeds back a routing reply data packet to the source node; after receiving the route reply data packet, the source node selects the route path with the higher comprehensive evaluation value as an optimal transmission path;
the proxy node may send a route request packet including the steps of:
step 101: a user sends related instruction data to a corresponding proxy node in the Mesh network through a client such as a mobile phone;
step 102: the proxy node of the mobile phone receives the instruction data packet, and the proxy node extracts a target node address in the data packet;
step 103: the agent node searches the routing information reaching the target node and the related node address information on all routing paths in a routing list stored by the agent node according to the information such as the addresses of the source node and the target node;
step 104: judging whether complete routing information reaching the target node is stored in the agent node, if the complete routing information is stored, turning to step 105, and if the complete routing information is not stored, turning to step 106;
step 105: whether the delay and the energy information corresponding to the routing path reaching the target node exceed the storage time of 24 hours or not, if so, turning to a step 106, otherwise, turning to a step 118;
step 106: the proxy node sends a routing request data packet to the relay node;
after receiving the routing request data packet, the relay node calls a grey prediction algorithm to predict the wake-up time of the next relay node, and the method comprises the following steps:
step 107: judging whether the relay node can find the routing information reaching the target node, if so, turning to step 109, otherwise, turning to step 108;
step 108: when the relay node relays to the identical routing request data packet again, the relay node judges that no target node routing information exists in the loop, and discards the routing request data packet;
step 109: the relay node capable of finding the routing information of the target node calls a grey prediction algorithm to predict the awakening time of the next relay node;
step 110: the relay node writes self energy information, a wake-up time prediction result and a transmission delay into a routing request data packet and relays the routing request data packet to a next node;
step 111: the target node receives i routing request data packets (i is more than or equal to 3) finally;
step 112: the target node analyzes the i routing request data packets to obtain a comprehensive evaluation value f of each routing request data packet i
Step 113: the target node selects two routing request data packets with larger comprehensive evaluation values, and feeds back routing reply data packets to the proxy node;
step 114: if the proxy node receives the route reply data packet within n seconds after sending the route request, the step 118 is carried out, and if not, the step 115 is carried out;
step 115: the times c = c +1 that the proxy node sends the routing request data packet (the initial value of c is set to 1);
step 116: judging whether the times c of sending the routing request data packet by the proxy node is less than or equal to 2, if so, repeating 106, otherwise, turning to step 117;
step 117: the target node feeds back alarm information to the agent node, and the agent node excludes the path;
the source node selects a route path with a higher comprehensive evaluation value as an optimal transmission path, and the method comprises the following steps:
step 118: the agent node selects the path with the highest comprehensive evaluation value as an optimal path, and the other path is a standby path;
step 119: the source node starts to send an instruction data packet to the target node;
step 120: after all the target nodes receive the instruction data packets, feeding back a receiving completion signal to the source node;
step 121: judging whether the source node receives a completion signal, if so, turning to step 122, otherwise, repeating step 119;
step 122: and after the instruction data packet is transmitted, the relay node enters the sleep mode again.
The relay node sequentially relays the routing request data packet to the next relay node, and the method comprises the following steps:
step 201: the relay node wakes up in an active period;
step 202: judging whether the self-awakened relay node receives a routing request data packet, if so, turning to 204, and if not, turning to 203;
step 203: the relay node enters the sleep mode again, and step 201 is repeated;
step 204: the relay node calls a grey prediction algorithm to predict the awakening time of the next-hop node;
step 205: the relay node writes the next hop awakening time and the self electric quantity information into a routing request data packet and relays the data packet to the next relay node;
step 206: the next relay node wakes up in the active period;
step 207: judging whether the next relay node receives the routing request data packet, if so, turning to 208, and if not, turning to 203;
step 208: comparing the wake-up time with the predicted wake-up time of the previous node, and calibrating the clock;
step 209: if the information delay is larger than a preset threshold value t, if so, turning to 210, otherwise, turning to 211;
step 210: writing the real wake-up time into a feedback data packet, and feeding back the feedback data packet to the previous node to correct the prediction result;
step 211: the predicted result is better, the relay node informs the last relay node in the form of a feedback data packet to indicate that the routing request data packet is confirmed to be received;
step 212: judging whether the last relay node receives a feedback data packet after sending out the routing request data packet, if so, turning to a step 219, otherwise, turning to a step 213;
step 213: setting a sleep period of a relay node as a time interval T, and setting the sleep period as K time intervals T, namely KT, and enabling n =1;
step 214: the last relay node delays nT again to send a route request data packet on the basis of the predicted time;
step 215: judging whether the previous relay node receives the feedback data packet again, if so, turning to the step 219, otherwise, turning to the step 216;
step 216: n = n +1;
step 217: judging whether n is larger than K, if so, turning to step 218, otherwise, repeating step 214;
step 218: informing the proxy node that the relay node is out of operation;
step 219: the activity between the single relay nodes ends.
And transmitting a clock calibration data packet to the next relay node once every 1 hour according to the established routing list among the relay nodes in the Mesh network, feeding back delay information to the previous node by the relay node receiving the clock calibration data packet in a feedback data packet mode, and updating the stored effective awakening time by the previous relay node so as to improve the accuracy of next prediction.
Preferably, the relay node invokes a gray prediction algorithm, which specifically includes the following steps:
s11, performing necessary checking processing on the stored awakening time:
let the stored time series be: x is the number of (0) =(x (0) (1),x (0) (2),...,x (0) (n)) calculating the step ratio of the time series
Figure GDA0003738086060000051
Obtaining a sequence of level ratios λ (k) = (λ (2), λ (3),.., λ (n)) of the time series;
if the sequence of level ratios λ (k) all fall within the tolerable coverage
Figure GDA0003738086060000052
Inner, then time series x (0) A grey prediction can be made. Otherwise, the time sequence x needs to be processed (0) The necessary transformation is done so that it falls within the containment coverage.
S12, converting the stored time sequence, namely accumulating to generate a sequence:
Figure GDA0003738086060000053
x (0) =(x (0) (1)x (0) (2),...,x (0) (n))
x (1) =x (0) (1),x (0) (1)+x (0) (2),...,x (0) (1)+...+x (0) (n)
s13, order
Figure GDA0003738086060000061
Constructing a data matrix B and a data vector Y, comprising:
Y=[x (0) (2),x (0) (3),...,x (0) (n)] T
Figure GDA0003738086060000062
s14, calculating the following algebraic expression:
Figure GDA0003738086060000063
s15, substituting the result into an equation:
Figure GDA0003738086060000064
solving the above equation yields:
Figure GDA0003738086060000065
s16: from a known primary generation sequence
Figure GDA0003738086060000066
Calculating a predicted value
Figure GDA0003738086060000067
Then the
Figure GDA0003738086060000068
I.e. the next node wake-up time.
Preferably, the target node calculates a comprehensive evaluation value f of each route request packet i The method comprises the following specific steps:
s21: it is not assumed that m route request packets are received, and the route request data includes the following main evaluation data: path hop count, path energy and message time delay, and constructing a decision matrix A = (a) ij ) i×3 ,a ij Indicating jth data in the ith routing request packet;
s22: normalizing the matrix A to obtain a matrix B,
Figure GDA0003738086060000071
s23: the weights for defining the path hop count, the path energy and the message delay are respectively
ω=[ω 1 ,ω 2 ,ω 3 ] T =[0.2,0.4,0.4] T Constructing a weighted norm matrix C, wherein C ij =ω j ×b ij (j=1,2,3;i=1,2,...,m);
S24: in the weighting specification matrix C, a first column minimum value, a second column maximum value and a third column minimum value are respectively taken to construct a positive ideal solution
Figure GDA0003738086060000072
On the contrary, construct a negative ideal solution
Figure GDA0003738086060000073
S25: calculating the distance from each route request data packet to the positive ideal solution and the negative ideal solution;
the distance to the positive ideal solution is:
Figure GDA0003738086060000074
its distance to the negative ideal solution is:
Figure GDA0003738086060000075
the distance from each sample to the positive ideal solution can be obtained
Figure GDA0003738086060000076
And distance of each sample to the negative ideal solution
Figure GDA0003738086060000077
S26: calculating a comprehensive evaluation value of each route request packet, i.e.
Figure GDA0003738086060000078
Preferably, in step 213, the sleep period is K time intervals T, that is, the sleep period is K times of the active period, and generally K is 3 to 5.
Preferably, the routing request packet mainly includes information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting the length to be 127 bits;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the address of the Bluetooth equipment for sending the data packet is 16bits in length;
target address: finally, the address of the Bluetooth equipment for receiving the data packet is 16bits in length;
transmission protocol data unit: the method comprises the steps of recording the hop count (4 bits) of a message in a network, accumulating the time delay (4 bits) of the message in a path, storing the self energy information (8 bits) of a node, writing a prediction result of the wakeup moment of a next node and the wakeup moment of the next node when a previous relay node relays a routing request data packet (mainly used for clock proofreading and delay feedback between nodes, 8 bits), and recording the node address (13 bytes) through which the routing request data packet reaches a target node;
network integrity message check value: the data packet for authentication is sent by a node conforming to the network key, and the length of the data packet is 32bits.
Preferably, the route reply packet mainly includes information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
network ID: the Mesh network ID is used for distinguishing different networks, and the length is 7bits;
a control field: determining whether the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting the data packet to be 127, wherein the length of the data packet is 7bits;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the Bluetooth equipment address of the current sending or forwarding route reply data packet is 16bits in length;
target address: the next hop receives the address of the Bluetooth equipment of the route reply data packet, and the length of the address is 16bits;
transmission protocol data unit: the route reply packet stores the node energy and the comprehensive evaluation value (3 bytes) of the path in the two paths with the highest comprehensive evaluation value, and the node address through which the route request packet reaches the target node (the route reply packet is transmitted back to the source node according to the path when the route request packet comes, 13 bytes).
Network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
Preferably, the feedback data packet mainly includes information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining whether the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting 127 to indicate that the data packet can be relayed, wherein the length of the data packet is 7bits;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: receiving the Bluetooth equipment address of the routing request data packet, wherein the length of the Bluetooth equipment address is 16bits;
the target address is as follows: the Bluetooth equipment address of the relay routing request data packet has the length of 16bits;
transmission protocol data unit: ACK position 1, which indicates the receiving is confirmed, 0 is set, which indicates the receiving is not received, if the delay of the data packet is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
Preferably, the clock calibration data packet mainly includes information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining whether the message in the data packet is an access message or a control message, wherein the handling is 1 and the length is 1bit;
survival time: the clock calibration data packet is used for indicating whether the data packet can be relayed or not, 127 indicates that the data packet can be relayed, the length is 7bits, and the clock calibration data packet is used for communication between two points;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the node address of the clock calibration data packet is sent, and the length of the node address is 16bits;
the target address is as follows: receiving the clock calibration data packet and the address of the node which has a routing relation with the previous node, wherein the length of the node is 16bits;
transmission protocol data unit: ACK position 1, which indicates the receiving is confirmed, 0 is set, which indicates the receiving is not received, if the delay of the data packet is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by a node conforming to the network key, and the length of the data packet is 32bits.
Preferably, the specific transmission process of the route reply data packet is as follows:
step 901: the target node starts to transmit a route reply data packet;
step 902: transmitting route reply data packets in reverse direction among the relay nodes according to the route request data packet transmission path;
step 903: after receiving the routing request data packet, the next relay node updates a routing list stored in the next relay node according to routing information in the data packet, feeds back the data packet in a unicast mode to inform the last relay node that the routing reply data packet is successfully received, and changes a source address and a target address of the routing reply data packet according to the stored routing path;
step 904: judging whether the last relay node receives a feedback data packet after sending the routing request data packet, if so, turning to the step 911, otherwise, turning to the step 905;
step 905: setting a sleep period of a relay node as a time interval T, and setting the sleep period as K time intervals T, namely KT, and letting n =1;
step 906: the last relay node delays nT to send a routing request data packet on the basis of the original sending time;
step 907: judging whether the last relay node receives the feedback data packet again, if so, turning to step 911, otherwise, turning to step 908;
step 908: n = n +1;
step 909: judging whether n is larger than K, if so, turning to step 910, otherwise, repeating step 906;
step 910: if the ns after the agent node sends the routing request does not receive the routing response, the agent node feeds back alarm information to the client;
step 911: the activity between the single relay nodes ends.
Preferably, in step 209, whether the information delay is greater than the preset threshold t, if so, it indicates that the prediction is inaccurate, and the prediction data needs to be fed back to the previous relay node to adjust until the predicted value and the true value are within the acceptable range.
Compared with the prior art, the invention has the beneficial effects that:
(1) In the invention, the relay node predicts the wake-up time of the next node, and the next node reasonably feeds back according to the prediction result, thereby continuously improving the prediction accuracy and reasonably scheduling resources, avoiding the high delay phenomenon caused by non-uniform working rhythm among nodes in the traditional situation as far as possible, simultaneously reducing unnecessary power consumption of the nodes to the maximum extent, facilitating the use of a user for a longer time under the condition of limited energy and improving the user experience;
(2) The nodes can write the self energy residual information into the route feedback data packet, so that the proxy nodes can conveniently and gradually collect the energy information of each node in the whole Mesh network and feed the energy information back to the client in time, and a user can conveniently master the electric quantity condition and change a battery in time;
(3) The target node comprehensively evaluates three items of data such as path hop count, path energy, message time delay and the like in the collected routing request data packet, and scientifically and reasonably selects a path with better performance as an optimal path;
(4) The proxy node finally selects the path with the highest comprehensive evaluation value as a data transmission path and the path with the second comprehensive evaluation value as a standby path, so that the transmission reliability is high, the fault tolerance rate is good, and the user experience is optimized.
Drawings
Fig. 1 is a flowchart illustrating interaction between an agent node and other nodes according to an embodiment of the present invention;
fig. 2 is a flowchart of interaction between relay nodes according to an embodiment of the present invention;
FIG. 3 is a layout diagram of nodes of a Bluetooth Mesh network;
FIG. 4 is a diagram illustrating a packet structure in a Bluetooth Mesh network;
fig. 5 is a schematic diagram illustrating a relationship between a sleep period and an active period of a relay node in a bluetooth Mesh network.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Referring to fig. 1-5, the present invention provides a technical solution: the invention provides the following technical scheme: a bluetooth Mesh energy efficiency routing method based on wake-up time prediction is disclosed, in the method, after Mesh networking is completed, under the premise that basic routing information of all nodes is stored by proxy nodes and all relay nodes in a network, the proxy nodes can send routing request data packets, after receiving the routing request data packets, the relay nodes call a grey prediction algorithm to predict the wake-up time of the next relay node, and relay the routing request data packets to the next relay node in sequence; after receiving routing request data packets from different paths, the target node analyzes the data packet contents and calculates a comprehensive evaluation value, and feeds back a routing reply data packet to the source node; after receiving the route reply data packet, the source node selects the route path with the higher comprehensive evaluation value as an optimal transmission path;
the proxy node can send the routing request data packet comprises the following steps:
step 101: a user sends related instruction data to a corresponding proxy node in the Mesh network through a client such as a mobile phone;
step 102: an agent node of the mobile phone receives the instruction data packet, and the agent node extracts a target node address in the data packet;
step 103: the agent node searches the routing information reaching the target node and the related node address information on all routing paths in a routing list stored by the agent node according to the information such as the addresses of the source node and the target node;
step 104: judging whether complete routing information reaching the target node is stored in the agent node, if the complete routing information is stored, turning to step 105, and if the complete routing information is not stored, turning to step 106;
step 105: whether the delay and the energy information corresponding to the routing path reaching the target node exceed the storage time of 24 hours or not, if yes, turning to a step 106, and if not, turning to a step 118;
step 106: the proxy node sends a routing request data packet to the relay node;
after receiving the routing request data packet, the relay node calls a grey prediction algorithm to predict the wake-up time of the next relay node, and the method comprises the following steps:
step 107: judging whether the relay node can find the routing information reaching the target node, if so, turning to step 109, otherwise, turning to step 108;
step 108: when the relay node relays to the identical routing request data packet again, the relay node judges that no target node routing information exists in the loop, and discards the routing request data packet;
step 109: the relay node which can find the routing information of the target node calls a grey prediction algorithm to predict the awakening time of the next relay node;
step 110: the relay node writes self energy information, a wake-up time prediction result and a transmission delay into a routing request data packet and relays the routing request data packet to a next node;
step 111: the target node receives i routing request data packets (i is more than or equal to 3) finally;
step 112: the target node analyzes the i routing request data packets to obtain a comprehensive evaluation value f of each routing request data packet i
And step 113: the target node selects two routing request data packets with larger comprehensive evaluation values, and feeds back routing reply data packets to the proxy node;
step 114: if the proxy node receives the route reply data packet within n seconds after sending the route request, the step 118 is carried out, and if not, the step 115 is carried out;
step 115: the times c = c +1 that the proxy node sends the routing request data packet (the initial value of c is set to 1);
step 116: judging whether the times c of sending the routing request data packet by the proxy node is less than or equal to 2, if so, repeating 106, otherwise, turning to step 117;
step 117: the target node feeds back alarm information to the agent node, and the agent node excludes the path;
the source node selects a routing path with a higher comprehensive evaluation value as an optimal transmission path, and the method comprises the following steps:
step 118: the agent node selects the path with the highest comprehensive evaluation value as an optimal path, and the other path is a standby path;
step 119: the source node starts to send an instruction data packet to the target node;
step 120: after all the target nodes receive the instruction data packets, feeding back a receiving completion signal to the source node;
step 121: judging whether the source node receives a completion signal, if so, turning to step 122, otherwise, repeating step 119;
step 122: and after the instruction data packet is transmitted, the relay node enters the sleep mode again.
The relay node sequentially relays the route request data packet to the next relay node, and the method comprises the following steps:
step 201: the relay node wakes up in an active period;
step 202: judging whether the self-awakened relay node receives a routing request data packet, if so, turning to 204, and if not, turning to 203;
step 203: the relay node enters the sleep mode again, and step 201 is repeated;
step 204: the relay node calls a grey prediction algorithm to predict the awakening time of the next-hop node;
step 205: the relay node writes the next hop awakening time and the self electric quantity information into a routing request data packet and relays the data packet to the next relay node;
step 206: the next relay node wakes up in the active period;
step 207: judging whether the next relay node receives the routing request data packet, if so, turning to 208, and if not, turning to 203;
step 208: comparing the awakening time with the predicted awakening time of the previous node, and calibrating the clock;
step 209: if the information delay is larger than a preset threshold value t, if so, turning to 210, otherwise, turning to 211;
step 210: writing the real wake-up time into a feedback data packet, and feeding back the feedback data packet to the previous node to correct the prediction result;
step 211: the prediction result is better, the relay node informs the previous relay node in the form of a feedback data packet to show that the receiving of the routing request data packet is confirmed;
step 212: judging whether the last relay node receives a feedback data packet after sending the routing request data packet, if so, turning to step 219, otherwise, turning to step 213;
step 213: setting a sleep period of a relay node as a time interval T, and setting the sleep period as K time intervals T, namely KT, and enabling n =1;
step 214: the last relay node delays nT again to send a route request data packet on the basis of the predicted time;
step 215: judging whether the previous relay node receives the feedback data packet again, if so, turning to the step 219, otherwise, turning to the step 216;
step 216: n = n +1;
step 217: judging whether n is greater than K, if yes, turning to step 218, otherwise, repeating step 214;
step 218: informing the proxy node that the relay node is out of operation;
step 219: the activity between the single relay nodes ends.
And transmitting a clock calibration data packet to the next relay node once every 1 hour according to the established routing list among the relay nodes in the Mesh network, feeding back delay information to the previous node by the relay node receiving the clock calibration data packet in a feedback data packet mode, and updating the stored effective awakening time by the previous relay node so as to improve the accuracy of next prediction.
In the invention, the relay node calls a grey prediction algorithm, and the specific steps are as follows:
s11, performing necessary checking processing on the stored awakening time:
let the stored time series be: x is a radical of a fluorine atom (0) =(x (0) (1),x (0) (2),...,x (0) (n)), calculating the step ratio of the time series
Figure GDA0003738086060000161
Obtaining a level ratio sequence λ (k) = (λ 2), λ (3),.., λ (n)) of the time sequence;
if the order ratio sequences lambda (k) all fall within the tolerable coverage
Figure GDA0003738086060000162
Inner, then time series x (0) Grey predictions can be made. Otherwise, the time sequence x needs to be aligned (0) The necessary transformation is done so that it falls within the containment coverage.
S12, converting the stored time sequence, namely accumulating to generate a sequence:
Figure GDA0003738086060000163
x (0) =(x (0) (1)x (0) (2),...,x (0) (n))
x (1) =x (0) (1),x (0) (1)+x (0) (2),...,x (0) (1)+...+x (0) (n)
s13, order
Figure GDA0003738086060000171
Constructing a data matrix B and a data vector Y, comprising:
Y=[x (0) (2),x (0) (3),...,x (0) (n)] T
Figure GDA0003738086060000172
s14, calculating the following algebraic expression:
Figure GDA0003738086060000173
s15, substituting the result into an equation:
Figure GDA0003738086060000174
solving the above equation yields:
Figure GDA0003738086060000175
s16: from a known derived primary generation sequence
Figure GDA0003738086060000176
Calculating a predicted value
Figure GDA0003738086060000177
Then
Figure GDA0003738086060000178
I.e. the next node wake-up time.
In the invention, the target node calculates the comprehensive evaluation value f of each route request data packet i The method comprises the following specific steps:
s21: it is not assumed that m route request packets are received, and the route request packets include main evaluation data: path hop count, path energy and message time delay, and constructing a decision matrix A = (a) ij ) i×3 ,a ij Indicating jth data in the ith route request data packet;
s22: normalizing the matrix A to obtain a matrix B,
Figure GDA0003738086060000181
s23: weights for specifying the number of path hops, the path energy, and the message delay are ω = [ ], respectively 1 ,ω 2 ,ω 3 ] T =[0.2,0.4,0.4] T Constructing a weighted norm matrix C, wherein C ij =ω j ×b ij (j=1,2,3;i=1,2,,m);
S24: in the weighting specification matrix C, a positive ideal solution is constructed by respectively taking a first row of minimum values, a second row of maximum values and a third row of minimum values
Figure GDA0003738086060000182
Vice versaIdeal solution for making burden
Figure GDA0003738086060000183
S25: calculating the distance from each route request data packet to the positive ideal solution and the negative ideal solution;
the distance to the positive ideal solution is:
Figure GDA0003738086060000184
its distance to the negative ideal solution is:
Figure GDA0003738086060000185
the distance from each sample to the ideal solution can be obtained
Figure GDA0003738086060000186
And distance of each sample to the negative ideal solution
Figure GDA0003738086060000187
S26: calculating a comprehensive evaluation value of each route request packet, i.e.
Figure GDA0003738086060000188
In the present invention, in step 213, the sleep period is K time intervals T, that is, the sleep period is K times of the active period, and generally K takes a value of 3 to 5.
In the invention, the routing request data packet mainly comprises the following information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining whether the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting the length to be 127 bits;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial numbers of different Mesh messages are different, and the length of the Mesh messages is 24bits;
source address: the address of the Bluetooth equipment for sending the data packet is 16bits in length;
the target address is as follows: finally, the address of the Bluetooth equipment for receiving the data packet is 16bits in length;
transmission protocol data unit: the method comprises the steps of recording the hop count (4 bits) of a message in a network, accumulating the time delay (4 bits) of the message in a path, storing the self energy information (8 bits) of a node, writing a prediction result of the awakening time of a next node and the awakening time of the next node when a previous relay node relays a routing request data packet (8 bits are mainly used for clock proofreading and delay feedback between nodes), and simultaneously recording the node address (13 bytes) through which the routing request data packet reaches a target node;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
In the present invention, the route reply packet mainly contains the following information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting the data packet to be 127, wherein the length of the data packet is 7bits;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the Bluetooth equipment address of the current sending or forwarding route reply data packet is 16bits in length;
target address: the next hop receives the address of the Bluetooth equipment of the route reply data packet, and the length of the address is 16bits;
transmission protocol data unit: the route reply packet stores the node energy and the comprehensive evaluation value (3 bytes) of the path in the two paths with the highest comprehensive evaluation value, and the node address through which the route request packet reaches the target node (the route reply packet is transmitted back to the source node according to the path when the route request packet comes, 13 bytes).
Network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
In the invention, the feedback data packet mainly comprises the following information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length is 7bits;
a control field: determining whether the message in the data packet is an access message or a control message, wherein the access message or the control message is set to be 0 and the length of the access message is 1bit;
survival time: indicating whether the data packet can be relayed or not, setting the data packet to be 127, indicating that the data packet can be relayed, wherein the length of the data packet is 7bits;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial numbers of different Mesh messages are different, and the length of the Mesh messages is 24bits;
source address: receiving the Bluetooth equipment address of the routing request data packet, wherein the length of the Bluetooth equipment address is 16bits;
the target address is as follows: the Bluetooth equipment address of the relay routing request data packet has the length of 16bits;
transmission protocol data unit: ACK position 1, which represents the receiving confirmation, 0, which represents the non-receiving, if the data packet delay is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
In the invention, the clock calibration data packet mainly comprises the following information:
initializing vector indexes: generally storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the handling is 1 and the length is 1bit;
survival time: the clock calibration data packet is used for indicating whether the data packet can be relayed or not, 127 indicates that the data packet can be relayed, the length is 7bits, and the clock calibration data packet is used for communication between two points;
the sequence number is as follows: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: sending the node address of the clock calibration data packet, wherein the length of the node address is 16bits;
target address: receiving the clock calibration data packet and the address of the node which has a routing relation with the previous node, wherein the length of the node is 16bits;
transmission protocol data unit: ACK position 1, which indicates the receiving is confirmed, 0 is set, which indicates the receiving is not received, if the delay of the data packet is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
In the invention, the specific transmission process of the route reply data packet is as follows:
step 901: the target node starts to transmit a route reply data packet;
step 902: reversely transmitting route reply data packets among the relay nodes according to the route request data packet transmission path;
step 903: after receiving the routing request data packet, the next relay node updates a routing list stored in the next relay node according to routing information in the data packet, feeds back the data packet in a unicast mode to inform the last relay node that the routing reply data packet is successfully received, and changes a source address and a target address of the routing reply data packet according to the stored routing path;
step 904: judging whether the last relay node receives a feedback data packet after sending the routing request data packet, if so, turning to the step 911, otherwise, turning to the step 905;
step 905: setting a sleep period of a relay node as a time interval T, and setting the sleep period as K time intervals T, namely KT, and enabling n =1;
step 906: the last relay node delays nT to send a route request data packet on the basis of the original sending time;
step 907: judging whether the previous relay node receives the feedback data packet again, if so, turning to the step 911, otherwise, turning to the step 908;
step 908: n = n +1;
step 909: judging whether n is larger than K, if so, turning to step 910, otherwise, repeating step 906;
step 910: if the ns after the agent node sends the routing request does not receive the routing response, the agent node feeds back alarm information to the client;
step 911: the activity between the single relay nodes ends.
In the present invention, in step 209, whether the information delay is greater than the preset threshold t, if so, it indicates that the prediction is inaccurate, and the prediction data needs to be fed back to the previous relay node to adjust until the predicted value and the true value are within the acceptable range.
In the present invention, in step 118, the second-order routing path of the comprehensive evaluation value is saved to prevent abnormal situations such as failure of data transmission in the optimal path.
In summary, in the present invention, the relay node predicts the next node wake-up time, and the next node performs reasonable feedback according to the prediction result, thereby continuously improving the prediction accuracy and reasonably scheduling resources, avoiding the high delay phenomenon caused by the non-uniform working rhythm among nodes in the traditional situation as much as possible, reducing unnecessary power consumption of the nodes to the maximum extent, facilitating the use of the user for a longer time under the condition of limited energy, and improving the user experience; the nodes can write the self energy residual information into the route feedback data packet, so that the proxy nodes can conveniently and gradually collect the energy information of each node in the whole Mesh network and feed the energy information back to the client in time, and a user can conveniently master the electric quantity condition and change a battery in time; the target node comprehensively evaluates three items of data such as path hop count, path energy, message time delay and the like in the collected routing request data packet, and scientifically and reasonably selects a path with better performance as an optimal path; the proxy node finally selects the path with the highest comprehensive evaluation value as a data transmission path and the path with the second comprehensive evaluation value as a standby path, so that the transmission reliability is high, the fault tolerance rate is good, and the user experience is optimized.
Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that changes, modifications, substitutions and alterations can be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the appended claims and their equivalents.

Claims (10)

1. A Bluetooth Mesh energy efficiency routing method based on wake-up time prediction is characterized by comprising the following steps: in the method, after Mesh networking is completed, under the premise that basic routing information of all nodes is stored in a proxy node and all relay nodes in a network, the proxy node can send a routing request data packet, and after receiving the routing request data packet, the relay nodes call a grey prediction algorithm to predict the wake-up time of the next relay node and relay the routing request data packet to the next relay node in sequence; after receiving the routing request data packets from different paths, the target node analyzes the data packet contents, calculates a comprehensive evaluation value and feeds back a routing reply data packet to the source node; after receiving the route reply data packet, the source node selects the route path with the higher comprehensive evaluation value as an optimal transmission path;
the proxy node may send a route request packet including the steps of:
step 101: a user sends related instruction data to a corresponding proxy node in the Mesh network through a mobile phone client;
step 102: the proxy node of the mobile phone receives the instruction data packet, and the proxy node extracts a target node address in the data packet;
step 103: the agent node searches the routing information reaching the target node and the related node address information on all routing paths in a routing list stored by the agent node according to the address information of the source node and the target node;
step 104: judging whether complete routing information reaching the target node is stored in the agent node, if the complete routing information is stored, turning to step 105, and if the complete routing information is not stored, turning to step 106;
step 105: whether the delay and the energy information corresponding to the routing path reaching the target node exceed the storage time of 24 hours or not, if yes, turning to a step 106, and if not, turning to a step 118;
step 106: the proxy node sends a routing request data packet to the relay node;
after receiving the routing request data packet, the relay node calls a grey prediction algorithm to predict the wake-up time of the next relay node, and the method comprises the following steps:
step 107: judging whether the relay node can find the routing information reaching the target node, if so, turning to step 109, otherwise, turning to step 108;
step 108: when the relay node relays to the identical routing request data packet again, the relay node judges that no target node routing information exists in the loop, and discards the routing request data packet;
step 109: the relay node which can find the routing information of the target node calls a grey prediction algorithm to predict the awakening time of the next relay node;
step 110: the relay node writes self energy information, a wake-up time prediction result and a transmission delay into a routing request data packet and relays the routing request data packet to a next node;
step 111: the target node receives i routing request data packets finally, wherein i is more than or equal to 3;
step 112: the target node analyzes the i routing request data packets to obtain a comprehensive evaluation value f of each routing request data packet i
And step 113: the target node selects two routing request data packets with larger comprehensive evaluation values, and feeds back routing reply data packets to the proxy node;
step 114: if the proxy node receives the route reply data packet within n seconds after sending the route request, the step 118 is carried out, and if not, the step 115 is carried out;
step 115: the initial value of the times c = c +1, c that the agent node sends the routing request data packet is set as 1;
step 116: judging whether the times c of sending the routing request data packet by the proxy node is less than or equal to 2, if so, repeating 106, otherwise, turning to step 117;
step 117: the target node feeds back alarm information to the agent node, and the agent node excludes the path;
the source node selects a route path with a higher comprehensive evaluation value as an optimal transmission path, and the method comprises the following steps:
step 118: the agent node selects the path with the highest comprehensive evaluation value as an optimal path, and the other path is a standby path;
step 119: the source node starts to send an instruction data packet to the target node;
step 120: after all the target nodes receive the instruction data packets, feeding back a receiving completion signal to the source node;
step 121: judging whether the source node receives a completion signal, if so, turning to step 122, otherwise, repeating step 119;
step 122: after the instruction data packet is transmitted, the relay node enters the sleep mode again;
the relay node sequentially relays the route request data packet to the next relay node, and the method comprises the following steps:
step 201: the relay node wakes up in an active period;
step 202: judging whether the self-awakened relay node receives a routing request data packet, if so, turning to 204, and if not, turning to 203;
step 203: the relay node enters the sleep mode again, and step 201 is repeated;
step 204: the relay node calls a grey prediction algorithm to predict the awakening time of the next-hop node;
step 205: the relay node writes the next hop awakening time and the self electric quantity information into a routing request data packet and relays the data packet to the next relay node;
step 206: the next relay node wakes up in the active period;
step 207: judging whether the next relay node receives the routing request data packet, if so, turning to 208, and if not, turning to 203;
step 208: comparing the awakening time with the predicted awakening time of the previous node, and calibrating the clock;
step 209: if the information delay is larger than a preset threshold t, if so, turning to 210, otherwise, turning to 211;
step 210: writing the real wake-up time into a feedback data packet, and feeding back the feedback data packet to the previous node to correct the prediction result;
step 211: the predicted result is better, the relay node informs the last relay node in the form of a feedback data packet to indicate that the routing request data packet is confirmed to be received;
step 212: judging whether the last relay node receives a feedback data packet after sending the routing request data packet, if so, turning to step 219, otherwise, turning to step 213;
step 213: setting a sleep period of a relay node as a time interval T, setting the sleep period as K time intervals T as KT, and letting n =1;
step 214: the last relay node delays nT again to send a route request data packet on the basis of the predicted time;
step 215: judging whether the previous relay node receives the feedback data packet again, if so, turning to the step 219, otherwise, turning to the step 216;
step 216: n = n +1;
step 217: judging whether n is larger than K, if so, turning to step 218, otherwise, repeating step 214;
step 218: informing the agent node that the relay node is out of work;
step 219: ending the activity among the relay nodes in a single time;
and sending a clock calibration data packet to the next relay node according to the established routing list once every 1 hour, feeding back delay information to the previous node by the relay node receiving the clock calibration data packet in a feedback data packet mode, and updating the stored effective awakening time by the previous relay node so as to improve the accuracy of next prediction.
2. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: the relay node calls a grey prediction algorithm, and the method specifically comprises the following steps:
s11, checking the stored awakening time:
let the stored time series be: x is the number of (0) =(x (0) (1),x (0) (2),...,x (0) (n)), calculating a step ratio of the time series
Figure FDA0003791292280000041
Obtaining a sequence of step ratios of the time series λ (k) = (λ (2), λ (3),. Lamda., λ (n));
if the order ratio sequences lambda (k) all fall within the tolerable coverage
Figure FDA0003791292280000042
Inner, then time series x (0) Performing grey prediction; otherwise, the time sequence x needs to be aligned (0) Carrying out transformation processing to enable the data to fall into the capacity coverage;
s12, transforming the stored time sequence, accumulating to generate a sequence:
Figure FDA0003791292280000051
x (0) =(x (0) (1),x (0) (2),...,x (0) (n))
x (1) =x (0) (1),x (0) (1)+x (0) (2),...,x (0) (1)+...+x (0) (n)
s13, order
Figure FDA0003791292280000052
Constructing a data matrix B and a data vector Y, comprising:
Y=[x (0) (2),x (0) (3),...,x (0) (n)] T
Figure FDA0003791292280000053
s14, calculating the following algebraic expression:
Figure FDA0003791292280000054
s15, substituting the result into an equation:
Figure FDA0003791292280000055
solving the above equation yields:
Figure FDA0003791292280000056
s16: from a known derived primary generation sequence
Figure FDA0003791292280000057
Calculating a predicted value
Figure FDA0003791292280000058
Figure FDA0003791292280000059
Then
Figure FDA00037912922800000510
The next node wakeup time.
3. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: the target node evaluates the comprehensive evaluation of each routing request data packetValue f i The method comprises the following specific steps:
s21: it is not assumed that m route request packets are received, and the route request data includes the following main evaluation data: path hop count, path energy, message delay, and constructing decision matrix A = (a) ij ) i×3 ,a ij Indicating jth data in the ith routing request packet;
s22: normalizing the matrix A to obtain a matrix B,
Figure FDA0003791292280000061
s23: weights for specifying the number of path hops, the path energy, and the message delay are ω = [ ], respectively 1 ,ω 2 ,ω 3 ] T =[0.2,0.4,0.4] T Constructing a weighted norm matrix C, wherein C ij =ω j ×b ij ,j=1,2,3;i=1,2,...,m;
S24: in the weighting specification matrix C, a positive ideal solution is constructed by respectively taking a first row of minimum values, a second row of maximum values and a third row of minimum values
Figure FDA0003791292280000062
Conversely, construct a negative ideal solution
Figure FDA0003791292280000063
S25: calculating the distance from each route request data packet to the positive ideal solution and the negative ideal solution;
its distance to the positive ideal solution is:
Figure FDA0003791292280000064
its distance to the negative ideal solution is:
Figure FDA0003791292280000065
the distance from each sample to the positive ideal solution can be obtained
Figure FDA0003791292280000071
And distance of each sample to the negative ideal solution
Figure FDA0003791292280000072
S26: calculating the comprehensive evaluation value of each routing request data packet as follows:
Figure FDA0003791292280000073
4. the Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: in step 213, the sleep period is K time intervals T, which is K times as long as the active period, and K takes a value of 3 to 5.
5. The bluetooth Mesh energy-efficiency routing method based on wakeup time prediction according to claim 1, wherein: the routing request data packet mainly comprises the following information:
initializing vector indexes: storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the length of the message is 1bit;
survival time: the length of the data packet is 7bits;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the address of the Bluetooth equipment for sending the data packet is 16bits in length;
target address: finally, the address of the Bluetooth equipment for receiving the data packet is 16bits in length;
transmission protocol data unit: recording the hop count of the message in the network, accumulating the time delay of the message in the path, storing the energy information of the node, writing the prediction result of the awakening time of the next node and the awakening time of the next node when the previous relay node relays the route request data packet, and simultaneously recording the node address through which the route request data packet reaches the target node;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
6. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: the routing reply data packet mainly comprises the following information:
initializing vector indexes: storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the length of the message is 1bit;
survival time: the length is 7bits, which indicates whether the data packet can be relayed or not;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: the current Bluetooth equipment address for sending or forwarding the route reply data packet has the length of 16bits;
the target address is as follows: the next hop receives the address of the Bluetooth equipment of the route reply data packet, and the length of the Bluetooth equipment is 16bits;
transmission protocol data unit: the routing reply data packet stores the node energy and the comprehensive evaluation value of the path in the two paths with the highest comprehensive evaluation value, and the node address through which the routing request data packet reaches the target node;
network integrity message check value: the data packet for authentication is sent by a node conforming to the network key, and the length of the data packet is 32bits.
7. The bluetooth Mesh energy-efficiency routing method based on wakeup time prediction according to claim 1, wherein: the feedback data packet mainly contains the following information:
initializing vector indexes: storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
a network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the length of the message is 1bit;
survival time: whether the data packet can be relayed or not is indicated, the data packet can be relayed is indicated, and the length is 7bits;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: receiving the Bluetooth equipment address of the routing request data packet, wherein the length of the Bluetooth equipment address is 16bits;
target address: the Bluetooth equipment address of the relay routing request data packet has the length of 16bits;
transmission protocol data unit: ACK position 1, which indicates the receiving is confirmed, 0 is set, which indicates the receiving is not received, if the delay of the data packet is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
8. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: the clock calibration data packet mainly contains the following information:
initializing vector indexes: storing the minimum bit of the IV index value, wherein the length of the minimum bit is 1bit;
network ID: the Mesh network ID is used for distinguishing different networks, and the length of the Mesh network ID is 7bits;
a control field: determining that the message in the data packet is an access message or a control message, wherein the length of the message is 1bit;
survival time: whether the data packet can be relayed or not is indicated, the data packet can be relayed, the length is 7bits, and the clock calibration data packet is communication between two points;
sequence number: distinguishing the identity of the Mesh message, wherein the serial number of different Mesh messages is different, and the length of the Mesh messages is 24bits;
source address: sending the node address of the clock calibration data packet, wherein the length of the node address is 16bits;
target address: receiving the clock calibration data packet and the address of the node which has a routing relation with the previous node, wherein the length of the node is 16bits;
transmission protocol data unit: ACK position 1, which indicates the receiving is confirmed, 0 is set, which indicates the receiving is not received, if the delay of the data packet is higher, the delay is written into the data unit, otherwise, the data unit is not written;
network integrity message check value: the data packet for authentication is sent by the node conforming to the network key and has the length of 32bits.
9. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: the specific transmission process of the route reply data packet is as follows:
step 901: the target node starts to transmit a route reply data packet;
step 902: transmitting route reply data packets in reverse direction among the relay nodes according to the route request data packet transmission path;
step 903: after receiving the routing request data packet, the next relay node updates a routing list stored in the next relay node according to routing information in the data packet, feeds back the data packet in a unicast mode to inform the last relay node that the routing reply data packet is successfully received, and changes a source address and a target address of the routing reply data packet according to the stored routing path;
step 904: judging whether the last relay node receives a feedback data packet after sending the routing request data packet, if so, turning to the step 911, otherwise, turning to the step 905;
step 905: setting a sleep period of a relay node as a time interval T, setting the sleep period as K time intervals T as KT, and letting n =1;
step 906: the last relay node delays nT to send a route request data packet on the basis of the original sending time;
step 907: judging whether the previous relay node receives the feedback data packet again, if so, turning to the step 911, otherwise, turning to the step 908;
step 908: n = n +1;
step 909: judging whether n is larger than K, if so, turning to step 910, otherwise, repeating step 906;
step 910: if the proxy node does not receive the routing response after sending the routing request, feeding back alarm information to the client;
step 911: the activity between the single relay nodes ends.
10. The Bluetooth Mesh energy-efficient routing method based on wakeup time prediction according to claim 1, wherein: in step 209, whether the information delay is greater than the preset threshold t, if so, it indicates that the prediction is not accurate, and the predicted data needs to be fed back to the previous relay node to adjust the predicted data until the predicted value and the true value are within the acceptable range.
CN202010248785.XA 2020-04-01 2020-04-01 Bluetooth Mesh energy efficiency routing method based on awakening time prediction Active CN111417165B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010248785.XA CN111417165B (en) 2020-04-01 2020-04-01 Bluetooth Mesh energy efficiency routing method based on awakening time prediction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010248785.XA CN111417165B (en) 2020-04-01 2020-04-01 Bluetooth Mesh energy efficiency routing method based on awakening time prediction

Publications (2)

Publication Number Publication Date
CN111417165A CN111417165A (en) 2020-07-14
CN111417165B true CN111417165B (en) 2023-01-24

Family

ID=71493412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010248785.XA Active CN111417165B (en) 2020-04-01 2020-04-01 Bluetooth Mesh energy efficiency routing method based on awakening time prediction

Country Status (1)

Country Link
CN (1) CN111417165B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115297192B (en) * 2022-06-17 2024-03-12 浙江大华技术股份有限公司 Mesh network data transmission method, mesh network node and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101827413A (en) * 2009-03-05 2010-09-08 赵欣 Dynamic multipath routing algorithm based on mobility prediction
CN107393069A (en) * 2017-07-17 2017-11-24 曹迪 Access control management method and system based on bluetooth MESH networking core technologies
CN108173966A (en) * 2018-01-23 2018-06-15 南京邮电大学 BLEMesh automatic network-building methods based on user collaboration
CN109618321A (en) * 2019-01-30 2019-04-12 深圳众享互联科技有限公司 A kind of bluetooth Mesh network Transmission system and method realized based on routing table

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101827413A (en) * 2009-03-05 2010-09-08 赵欣 Dynamic multipath routing algorithm based on mobility prediction
CN107393069A (en) * 2017-07-17 2017-11-24 曹迪 Access control management method and system based on bluetooth MESH networking core technologies
CN108173966A (en) * 2018-01-23 2018-06-15 南京邮电大学 BLEMesh automatic network-building methods based on user collaboration
CN109618321A (en) * 2019-01-30 2019-04-12 深圳众享互联科技有限公司 A kind of bluetooth Mesh network Transmission system and method realized based on routing table

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BLE Mesh网络中的机会路由协议优化;孙吉武,江凌云;《南京邮电大学学报(自然科学版)》;20181231;全文 *

Also Published As

Publication number Publication date
CN111417165A (en) 2020-07-14

Similar Documents

Publication Publication Date Title
So et al. Load-balanced opportunistic routing for duty-cycled wireless sensor networks
CN102651898B (en) Delay Constraint in asynchronous sensor network and the online method for routing of energy efficient
Altman et al. Optimal activation and transmission control in delay tolerant networks
Wu et al. Dynamic coding control in social intermittent connectivity wireless networks
US20050135309A1 (en) Wireless network with improved sharing of high power consumption tasks
CN103260264B (en) Based on the wireless sensor network data fusion method of two aggregators ant group optimization
Zheng et al. Bulk data dissemination in wireless sensor networks: analysis, implications and improvement
CN102271380B (en) Ad hoc ondemand distance vector routing establishment method based on game theory of Ad hoc network
Zhu et al. Latency aware IPv6 packet delivery scheme over IEEE 802.15. 4 based battery-free wireless sensor networks
Zhang et al. An opportunistic packet forwarding for energy-harvesting wireless sensor networks with dynamic and heterogeneous duty cycle
CN111417165B (en) Bluetooth Mesh energy efficiency routing method based on awakening time prediction
US20100142422A1 (en) Cooperative packet routing for wireless sensor networks
Noh et al. QoS-aware geographic routing for solar-powered wireless sensor networks
Zhang et al. Energy efficient switch-based packet forwarding for low duty-cycle wireless sensor networks
Daabaj et al. Reliable routing scheme for indoor sensor networks
ul Hasan et al. Adaptive error control framework for a multihop cognitive radio based UAVs for disaster management
Amdouni et al. Experiments with ODYSSE: Opportunistic Duty cYcle based routing for wirelesS Sensor nEtworks
CN113141270A (en) LoRa gateway configuration method, device and storage medium based on SAGA technology
Aboud et al. Power saving extension for the NDN-based GIF protocol for the Internet of Things
Sheshashayee et al. On the Effectiveness of Semantic Addressing for Wake-up Radio-enabled Wireless Sensor Networks
Sharma et al. On distributed power control for uncoordinated dual energy harvesting links: Performance bounds and near-optimal policies
Jaiswal et al. Energy efficient and improved network lifetime multipath routing using FF-AOMDV and dragonfly topology
Rajib et al. Delay performance of intermittently connected wireless sensor networks with cooperative relays
Chen et al. Power control policies for a wireless link with energy harvesting transmitter and receiver
Garg et al. Cooja based approach for estimation and enhancement of lifetime of 6LoWPAN environment

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
GR01 Patent grant
GR01 Patent grant