[go: up one dir, main page]

WO2021097628A1 - Procédé de sélection de trajet et dispositif ble - Google Patents

Procédé de sélection de trajet et dispositif ble Download PDF

Info

Publication number
WO2021097628A1
WO2021097628A1 PCT/CN2019/119259 CN2019119259W WO2021097628A1 WO 2021097628 A1 WO2021097628 A1 WO 2021097628A1 CN 2019119259 W CN2019119259 W CN 2019119259W WO 2021097628 A1 WO2021097628 A1 WO 2021097628A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
path
packet
mesh network
detection
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.)
Ceased
Application number
PCT/CN2019/119259
Other languages
English (en)
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.)
Shenzhen Goodix Technology Co Ltd
Original Assignee
Shenzhen Goodix Technology 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 Shenzhen Goodix Technology Co Ltd filed Critical Shenzhen Goodix Technology Co Ltd
Priority to PCT/CN2019/119259 priority Critical patent/WO2021097628A1/fr
Priority to CN201980005133.9A priority patent/CN111247818A/zh
Publication of WO2021097628A1 publication Critical patent/WO2021097628A1/fr
Anticipated expiration legal-status Critical
Ceased 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
    • 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
    • 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

Definitions

  • the embodiments of the present application relate to the field of information technology, and more specifically, to a method for path selection and a BLE device.
  • the Bluetooth Low Energy (BLE) MESH network includes a large number of nodes. During data transmission, all nodes in the network forward the data, and the data between the nodes is transmitted to the entire MESH network. This may lead to a situation where the data transmission between the source node and the target node has been completed, but the data is still being transmitted between other nodes in the MESH network. These unnecessary transmissions not only make the network environment more complicated, but also waste node resources.
  • the embodiments of the present application provide a path selection method and a BLE device, which can reduce unnecessary data transmission between nodes in a MESH network.
  • a method for path selection is provided.
  • the method is applied to a MESH network of BLE.
  • the MESH network includes multiple nodes.
  • the method includes: a second node in the MESH network receives At least one detection packet of the first node in the MESH network, wherein each detection packet reaches the second node through at least one path, and the detection packet transmitted on each path in the at least one path Includes the address of the node on each path; the second node determines the optimal path according to the at least one detection packet; the second node sends a first response packet in response to the first node , Wherein, the first response packet includes the address of each node on the optimal path.
  • the first response packet is used for nodes in the MESH network that receive the first response packet to establish their respective whitelists and/or blacklists.
  • the blacklist is used to determine whether to forward the data packet between the first node and the second node.
  • the second node determining the optimal path according to the at least one detection packet includes: the second node transmits each detection packet from the at least one path to the The transmission time and/or the number of nodes passed by the second node determine the candidate path corresponding to each detection packet in the at least one path; the second node corresponds to the at least one detection packet Among at least one candidate path, the optimal path is determined.
  • the second node determining, in the at least one path, the candidate path corresponding to each detection packet includes: the second node selecting from the at least one path M detection packets with the shortest transmission time; among the M detection packets, the second node selects K detection packets with the least number of nodes passing through, where M and K are positive integers and K ⁇ M; The second node uses the path taken by the K detection packets as the candidate path corresponding to each detection packet.
  • determining the optimal path by the second node among at least one candidate path corresponding to the at least one detection packet includes: the second node is in the at least one detection packet. Among at least one candidate path corresponding to the test packet, the candidate path with the highest occurrence probability is selected as the optimal path.
  • the method further includes: in at least one candidate path corresponding to the at least one detection packet, determining a candidate path of the optimal path, wherein the candidate path is The path with the least number of overlapping nodes between the at least one candidate path and the optimal path.
  • the first response packet further includes the address of each node on the candidate path.
  • the method further includes: the second node receives a plurality of update packages from the first node; in response to the plurality of update packages, the second node passes all the update packages.
  • the optimal path sends a plurality of second response packets to the first node, wherein the receiving time and/or the number of the second response packets are used by the first node to determine whether to update the optimal path.
  • a method for path selection is provided.
  • the method is applied to a MESH network of Bluetooth Low Energy BLE.
  • the MESH network includes a plurality of nodes, and the method includes: The three nodes receive at least one detection packet from the first node in the MESH network to the second node in the MESH network; the third node adds the third node to the at least one detection packet The address of the node; the third node forwards the at least one detection packet, and the at least one detection packet is used by the second node to select the optimal path between the first node and the second node .
  • the method further includes: the third node receives a first response packet from the second node to the first node, and the first response packet includes the most The address of each node on the optimal path; if the first response packet includes the address of the third node, the third node uses the addresses of the first node and the second node as an address pair, Added to the whitelist of the third node; and/or, if the first response packet does not include the address of the third node, the third node adds the address pair to the In the blacklist of the third node; the third node forwards the first response packet.
  • the method further includes: the third node receives a data packet from the first node to the second node; the third node according to the white list and/or The blacklist determines whether to forward the data packet.
  • the third node determines whether to forward the data packet according to the white list and/or the black list, including: if the address pair is in the white list, The third node forwards the data packet; and/or, if the address pair is in the blacklist, the third node does not forward the data packet.
  • a method for path selection is provided.
  • the method is applied to a MESH network of BLE.
  • the MESH network includes multiple nodes.
  • the method includes: the first node in the MESH network passes all the nodes.
  • the MESH network sends at least one detection packet to a second node in the MESH network, wherein the at least one detection packet is used to record the addresses of the nodes on the paths that they pass through for the second node
  • the node selects the optimal path between the first node and the second node; the first node receives a first response packet from the second node, and the first response packet includes the optimal path The address of each node on the path.
  • the first response packet is used for nodes in the MESH network that receive the first response packet to establish their respective whitelists and/or blacklists.
  • the blacklist is used to determine whether to forward the data packet between the first node and the second node.
  • the method further includes: when the first node does not detect a heartbeat packet sent by a node on the optimal path within a predetermined period of time, passing the optimal path to the The second node sends a plurality of update packets; the first node receives a plurality of second response packets from the second node in response to the plurality of update packets; the first node according to the second The receiving time and/or the receiving quantity of the response packet determine whether to update the optimal path.
  • the method further includes: the first node determines whether to update the optimal path according to a change in the number of nodes in the MESH network.
  • a BLE device which includes a functional module for executing the method in the first aspect or any possible implementation of the first aspect.
  • a BLE device which includes a functional module for executing the second aspect or any possible implementation of the second aspect.
  • a BLE device including a functional module for executing the third aspect or any possible implementation of the third aspect.
  • a BLE chip in a seventh aspect, includes a processor and a memory, the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the first A method in one aspect or any possible implementation of the first aspect.
  • a BLE chip in an eighth aspect, includes a processor and a memory, the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the first The second aspect or any possible implementation of the second aspect.
  • a BLE chip in a ninth aspect, includes a processor and a memory, the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the first
  • the BLE chip includes a processor and a memory, the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the first
  • a computer-readable storage medium is provided, and the computer-readable storage medium is used to store a computer program.
  • the processor when the computer program is executed by the processor, the processor is caused to execute the method in the first aspect or any possible implementation manner of the first aspect.
  • a computer-readable storage medium is provided, and the computer-readable storage medium is used to store a computer program.
  • the processor when the computer program is executed by the processor, the processor is caused to execute the second aspect or the method in any possible implementation manner of the second aspect.
  • a computer-readable storage medium is provided, and the computer-readable storage medium is used to store a computer program.
  • the processor when the computer program is executed by the processor, the processor is caused to execute the third aspect or the method in any possible implementation manner of the third aspect.
  • a computer program product including computer program instructions that cause a computer to execute the foregoing first aspect or the method in any possible implementation manner of the first aspect.
  • a computer program product including computer program instructions that cause a computer to execute the foregoing second aspect or any possible implementation of the second aspect.
  • a computer program product including computer program instructions that cause a computer to execute the above-mentioned third aspect or the method in any possible implementation manner of the third aspect.
  • the detection packet from the first node to the second node is used to record the addresses of the nodes on each path that the detection packet passes, so that the second node selects the optimal path among these paths.
  • the subsequent data packet transmission is performed between the first node and the second node, the data packet may be transmitted only through the node on the optimal path, and the other nodes do not transmit the data packet. Therefore, this method can reduce unnecessary data transmission between nodes in the MESH network and save node resources.
  • FIG. 1 is a schematic diagram of the MESH network.
  • Fig. 2 is a flow interaction diagram of a path selection method according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of the processing procedure of the detection packet by the third node.
  • Figure 4 is a schematic flow chart of the third node establishing the white list and the black list.
  • Fig. 5 is a schematic diagram of a possible implementation based on the method shown in Fig. 2.
  • Fig. 6 is a schematic block diagram of a BLE device according to an embodiment of the present application.
  • Fig. 7 is a schematic block diagram of a BLE device according to an embodiment of the present application.
  • Fig. 8 is a schematic block diagram of a BLE device according to an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of a BLE chip according to an embodiment of the present application.
  • FIG. 1 is a schematic diagram of a possible MESH network.
  • the MESH network can be considered as a wireless communication system based on the network topology.
  • the MESH network includes multiple devices, and each device may be called a node.
  • Each node can carry out data transmission. Data packets can be relayed between various nodes, so that the data packets can be transmitted to more distant locations. In practical applications, these nodes can be distributed in manufacturing plants, office buildings, shopping centers, business parks, homes, and other environments.
  • the MESH network can include any number of nodes. In FIG. 1, only nodes A to H, and node Z are taken as examples.
  • data packets are transmitted based on advertising. After each node receives a data packet sent by another node, it forwards the data packet, thereby forwarding the data packet to other nearby nodes.
  • the data packet sent by node A to node Z can reach node Z through at least one relay.
  • node B receives the data packet sent by node A, it can forward the data packet to node C and node D; after node E receives the data packet, it can forward the data packet to node D, node F, and node D respectively.
  • the data packet sent by node A to node Z can reach node Z through at least one path, and the nodes included in each path are not exactly the same. Therefore, when the data packet is transmitted from node A to node Z through different paths, the node that it passes through The amount is different, the required transmission time may also be different. In this way, when the data transmission between node A and node B has been completed through a certain path, the data may still be transmitted between other nodes in the MESH network. These unnecessary transmissions not only make the network environment more complicated, but also waste node resources.
  • node A may be called a source node
  • node Z may be called a target node
  • other nodes used for relay are called relay nodes.
  • Fig. 2 is a flow interaction diagram of a path selection method according to an embodiment of the present application.
  • the method 200 is applied to a BLE MESH network, and the MESH network may include multiple nodes.
  • the method 200 shown in FIG. 2 may be executed by the first node, the second node, and the third node in the MESH network.
  • the first node is the source node
  • the second node is the target node
  • the third node is the relay node.
  • only one relay node, that is, the third node is used as an example for description.
  • the related operations of other relay nodes in the MESH network are the same as those of the third node. You can refer to the following related descriptions for the third node.
  • the method 200 may include some or all of the following steps.
  • the first node sends at least one detection packet to the second node through the MESH network.
  • the at least one detection packet is used to record the address of the node on the path that each passes through.
  • the third node receives at least one detection packet from the first node to the second node.
  • the third node adds the address of the third node to the at least one detection packet.
  • the third node forwards the at least one detection packet.
  • the second node receives at least one detection packet from the first node.
  • each detection packet reaches the second node through at least one path, and the detection packet transmitted on each path in the at least one path includes the address of the node on each path.
  • the second node determines the optimal path according to the at least one detection packet.
  • the second node sends a first response packet in response to the first node.
  • the first response packet includes the address of each node on the optimal path.
  • the first node receives the first response packet from the second node.
  • the first node may send at least one detection packet to the second node, and the third node that receives the detection packet will add its own address to the detection packet before forwarding it.
  • Each detection packet can reach the second node through at least one path, and the detection packet on each path will carry the address of the node on the path it passes.
  • the second node can determine the possible path between the first node and the second node based on the detection packets transmitted from different paths, so as to select the optimal path among these paths for subsequent data transmission.
  • the second node can inform other nodes in the MESH network of the optimal path it chooses through the first response packet.
  • the aforementioned at least one detection packet may be one detection packet or may include multiple detection packets. When there are multiple detection packets, each detection packet has its own sequence number.
  • a detection packet When a detection packet is forwarded in the MESH network, it may reach the third node many times. However, the third node only needs to add its own address to the detection packet once. The third node may add its own address to the detection packet when receiving the detection packet for the first time, and no longer add its address when receiving the detection packet subsequently. For example, as shown in Figure 3, after the third node receives a detection packet, it determines whether the detection packet already includes the address of the third node. If the detection packet includes the address of the third node, the third node No need to add its address again, but directly forward the detection packet. If the detection packet does not include the address of the third node, it means that the detection packet reaches the third node for the first time, and the third node adds its own address to the detection packet before forwarding it.
  • the first node may also send a path optimization message to each node in the MESH network, and the path optimization message is used to instruct each node in the MESH network to enter the path optimization mode.
  • the path optimization message is used to instruct each node in the MESH network to enter the path optimization mode.
  • each node does not actively forward other messages, but only forwards detection packets.
  • the detection packet can have a specific format for each node to identify the detection packet.
  • the first response packet is used for the nodes in the MESH network that received the first response packet to establish their respective whitelists and/or blacklists, and the whitelists and blacklists are used to determine whether to forward the first node and Data packets between the second node.
  • the following takes the third node as an example to describe the whitelist and the process of establishing the blacklist in detail.
  • step 270 the third node may specifically execute step 271 to step 274.
  • the third node receives the first response packet from the second node to the first node.
  • the first response packet includes the address of each node on the optimal path.
  • the third node adds the addresses of the first node and the second node as an address pair to the white list of the third node.
  • the third node adds the addresses of the first node and the second node as an address pair to the blacklist of the third node.
  • the third node forwards the first response packet.
  • the third node After establishing its own blacklist and whitelist, if the third node subsequently receives a data packet from the first node to the second node, it can determine whether to forward the data packet according to its own whitelist and/or blacklist .
  • the third node forwards the data packet; if the address pair is in the blacklist, the third node does not Forward the packet.
  • the first response packet sent by the second node only includes the address of each node on the optimal path. Therefore, the address pair consisting of the address of the first node and the address of the second node will only be used by the address on the optimal path.
  • Each node is added to its whitelist, and each node on the non-optimal path is added to its blacklist. In this way, when the first node sends a data packet to the second node through the MESH, only those nodes on the optimal path will forward the data packet, and nodes that are not on the optimal path will not forward the data packet.
  • those nodes that are not on the optimal path will filter out the data packet without forwarding, which not only saves power consumption, but also reduces unnecessary data forwarding between nodes in the MESH network and reduces broadcast storms. Make the transmission between the first node and the second node more stable and efficient, and save node resources in the MESH network.
  • steps 272 and 273 may exist at the same time, that is, the nodes that receive the first response packet may establish a blacklist and a whitelist at the same time; or, these nodes may only establish a blacklist or only a whitelist.
  • the third node uses the addresses of the first node and the second node as an address pair and adds it to the third node.
  • the node's whitelist If the first response packet does not include the address of the third node, the third node directly forwards the first response packet without any related processing.
  • the third node receives a data packet from the first node to the second node, it will judge whether the data packet is in its white list, if it is in the white list, then forward the data packet, if it is not in the white list , The packet is not forwarded.
  • the third node uses the addresses of the first node and the second node as an address pair and adds it to The third node is in the blacklist. If the first response packet includes the address of the third node, the third node directly forwards the first response packet without any related processing. After that, if the third node receives a data packet from the first node to the second node, it will determine whether the data packet is in its blacklist, if it is in the blacklist, it will not forward the data packet, if it is not in the blacklist In, the data packet is forwarded.
  • the whitelist and blacklist of the third node can be used for data packet transmission between the first node and the second node.
  • the third node can use the whitelist and blacklist to determine whether to The packet is forwarded.
  • the optimal path determined when the first node sends the detection packet to the second node may be different from the optimal path determined when the second node sends the detection packet to the first node.
  • the whitelist and blacklist of the third node are only used for data packets from the first node to the second node.
  • the third node can use the addresses of the first node and the second node as an address pair, and add them to the appropriate list according to the corresponding transmission direction. For example, if the transmission direction corresponding to the address pair is from the first node to the second node, it may be added to the whitelist, and the transmission direction corresponding to the address pair is from the second node to the first node, it may be added To the blacklist. Then, the third node only forwards the data packet sent from the first node to the second node, and does not forward the data packet sent from the second node to the first node.
  • step 260 may include step 261 and step 262.
  • the second node determines a candidate path corresponding to each detection packet in at least one path traversed by each detection packet.
  • the second node determines the candidate corresponding to each detection packet in the at least one path according to the transmission time and/or the number of nodes that each detection packet is transmitted from the at least one path to the second node. path.
  • the second node determines the optimal path among at least one candidate path corresponding to the at least one detection packet.
  • each detection packet sent by the first node can be transmitted to the second node through at least one path.
  • the second node judges the optimal path, it considers the transmission time of the detection packet on different paths and/or the number of nodes on different paths.
  • the second node may use one or more paths with a short transmission time and/or a small number of nodes as candidate paths corresponding to the detection packet.
  • the first node sends multiple detection packets, such as N detection packets numbered from 1 to N
  • the second node can determine the corresponding candidate path according to each detection packet, so these N detection packets are all Have their respective candidate paths.
  • the second node selects the optimal path among the candidate paths corresponding to the N detection packets.
  • the second node may according to the transmission time on the at least one path that the detection packet traverses, or according to the number of nodes on the at least one path, in the at least one path, Select the candidate path corresponding to the detection packet.
  • the second node may also comprehensively consider the transmission time and the number of nodes, and select the candidate path corresponding to each detection packet.
  • the second node may first select the M detection packets with the shortest transmission time in the at least one path, and then select the K detection packets with the least number of nodes passing through the M detection packets, and then combine the K detection packets with the least number of nodes.
  • the path that the detection packet traverses is used as the candidate path corresponding to each detection packet.
  • the second node may first select the M detection packets with the least number of nodes passing through the at least one path, and then select the K detection packets with the shortest transmission time among the M detection packets, and combine the K detection packets with the shortest transmission time.
  • the path traversed by each detection packet is used as the candidate path corresponding to each detection packet.
  • M and K are positive integers, and K ⁇ M.
  • the transmission time of a path may be affected by many factors. Generally, a path with a smaller number of nodes has a shorter transmission time. However, in some cases, the transmission time of the path is also affected by the performance of each node on the path. For example, if a node on the path scans or processes detection packets very slowly, then the node may cause the transmission time of the path to increase. At this time, even if the number of nodes on the path is small, it may cause The transmission time is longer; if a node on the path scans or processes detection packets at a significantly higher speed than the nodes on other paths, then the node can significantly shorten the transmission time of the path. At this time, even if the path is The larger number of nodes may also make the transmission time very short.
  • the number of the at least one detection packet and the number of the at least one candidate path may be equal or not equal.
  • the second node may select only one candidate path from each path it passes, or may select multiple candidate paths. Therefore, the number of at least one candidate path corresponding to the at least one detection packet may be greater than or equal to the number of the at least one detection packet.
  • the optimal path determined by the second node may be one or multiple.
  • the first response packet sent by the second node to each node in the MESH network includes the address of each node in the optimal path.
  • the first response packet includes a node on each of the multiple optimal paths.
  • the optimal path is determined among the candidate paths corresponding to the detection packets.
  • the second node may select the candidate path with the highest occurrence probability as the optimal path among the at least one candidate path corresponding to the at least one detection packet.
  • the candidate path corresponding to the detection packet is the optimal path.
  • the optimal path selected based on a detection packet may be unreliable. Therefore, the first node can send multiple detection packets, such as N detection packets numbered from 1 to N.
  • the second node can determine the candidate path corresponding to the detection packet according to each detection packet, so as to Among the candidate paths corresponding to each of the multiple detection packets, the candidate path with the highest occurrence probability is selected as the optimal path.
  • the candidate path with the higher the probability of occurrence is more reliable. This can greatly improve the reliability of the selected optimal path.
  • the second node may also determine a candidate path of the optimal path among at least one candidate path corresponding to the at least one detection packet.
  • the candidate path may be, for example, the path with the least number of overlapping nodes between the at least one candidate path and the optimal path.
  • the number of overlapping nodes with the optimal path is 0, which means that there are no overlapping nodes with the optimal path.
  • the first response packet also includes the address of each node on the alternative path.
  • the optimal path cannot be used.
  • the data packet between the first node and the second node can be transmitted through the alternative path, thereby improving the reliability of the data packet transmission between the first node and the second node.
  • FIG. 5 takes FIG. 5 as an example to describe in detail a possible implementation manner of the path selection method described in the embodiment of the present application.
  • the MESH network includes nodes A to H and node Z. Now we need to determine the optimal path from node A to node Z. Node A is the aforementioned first node, node Z is the aforementioned second node, and node B to node H are the aforementioned third node.
  • Node A sends a path selection message to instruct other nodes to enter path selection mode.
  • Node A sends N detection packets of sequence number 1 to sequence number N to node Z in sequence.
  • the node B to the node H judge whether the detection packet of the sequence number includes its own address.
  • the detection packet of the serial number includes its own address, the detection packet of the serial number is directly forwarded; if the detection packet of the serial number does not include its own address, then add your own address to the detection packet of the serial number Then forward it out.
  • Node Z receives N detection packets from sequence number 1 to sequence number N.
  • the detection packet of each sequence number can reach node Z through at least one path.
  • Node Z determines the candidate path corresponding to each detection packet of the sequence number.
  • detection packet No. 1 As an example, suppose that detection packet No. 1 goes from node A to node Z through 8 paths. These 8 paths are shown in Table 1 for example. Paths 1 to 8 in Table 1 are arranged in order from top to bottom according to the order of arrival of detection packets.
  • node Z After node Z receives the detection packet No. 1 through the above 8 paths, it selects the candidate path corresponding to the detection packet No. 1 among them. Specifically, the node Z may first select the 6 paths with the shortest transmission time among the 8 paths, that is, the 6 paths received first, which are path 1 to path 6 here. Secondly, among the 6 paths, node Z selects the 2 paths with the least number of nodes from top to bottom, here is path 1 and path 2. Therefore, the candidate paths corresponding to detection packet No. 1 are path 1 and path 2.
  • node Z uses the same method to determine its corresponding candidate path.
  • a candidate path For the detection packets of sequence number 2 to sequence number N, node Z uses the same method to determine its corresponding candidate path.
  • two candidate paths corresponding to each serial number detection packet In practical applications, other numbers of candidates can be selected for each serial number detection packet according to the number of nodes and node characteristics in the MESH network. path.
  • Detection package Candidate path Detection package No. 1 Path 1, path 2 Detection package 2 Path 2, Path 4 No. 3 detection package Path 1, path 2 ... ... N-1 detection package Path 2, path 9 N detection package Path 1, path 5
  • Node Z selects the optimal path among the candidate paths corresponding to the N detection packets.
  • node Z can choose two optimal paths, then node Z can select the two candidate paths with the highest occurrence probability in Table 2 as the optimal path.
  • the two candidate paths with the highest occurrence probability in Table 2 are path 1.
  • path 2 then the optimal path from node A to node Z finally selected by node Z is path 1 and path 2, as shown in Figure 5.
  • Node Z can also select an alternative path from the candidate paths shown in Table 2.
  • the alternative path and path 1 and path 2 preferably include different nodes to avoid node failure in path 1 and path 2, and at the same time Affect the use of optimal paths and alternative paths.
  • node Z selects path 5 as the candidate path.
  • Node E and node H in path 5 do not overlap with node B, node C, and node D in path 1 and path 2.
  • the way of using the alternative path can refer to the way of using the optimal path.
  • Node Z generates a first response packet, and sends the first response packet to each node in the MESH network.
  • the first response packet includes the addresses of nodes on the optimal path, that is, the addresses of node B, node C, and node D.
  • Node B to Node H After receiving the first response packet, Node B to Node H establish their respective whitelists and blacklists, and forward the first response packet.
  • node C Take node C as an example. After node C receives the first response packet, it finds that the first response packet includes its own address. Then, node C can use the addresses of node A and node Z as an address pair and add it to its own white address. In the list.
  • node G Take node G as an example. After node G receives the first response packet, it finds that the first response packet does not include its own address. Then, node G can use the addresses of node A and node Z as an address pair and add it to its own address. In the blacklist.
  • the address pair composed of the addresses of node A and node Z will be added to the white list by node B, node C, and node D, and added to the black list by other nodes.
  • node A After node A receives the first response packet, it sends a confirmation message to node Z.
  • Node Z receives the confirmation message, and the path selection process ends.
  • Node A sends a path selection completion message to each node in the MESH network to instruct these nodes to exit the path selection mode.
  • these nodes can perform the forwarding of data packets between node A and node Z according to their respective white lists and black lists.
  • node A sends a data packet to node Z
  • node B node B
  • node C node D
  • node D will forward the data packet
  • other nodes will not forward the data packet. This avoids unnecessary data transmission between nodes, significantly reduces network storms, and saves node resources.
  • the optimal path can be updated.
  • the first node can determine whether the optimal path needs to be updated based on factors such as whether the optimal path is reliable, whether the path transmission delay is increased, and whether nodes are added or removed in the MESH network.
  • the first node can detect the heartbeat packets sent by each node on the optimal path. If the heartbeat packets sent by one or some nodes on the optimal path are not detected within a predetermined period of time, the first node It is possible to send multiple update packets to the second node through the optimal path. After receiving the multiple update packets from the first node, the second node sends multiple second response packets that respond to the multiple update packets to the first node through the optimal path. The first node receives the second response packet from the second node, and determines whether to update the optimal path according to the receiving time and/or the received quantity of the second response packet.
  • the first node sends P update packets.
  • the first node receives the second response packet, which indicates that the optimal path is still valid. If the first node does not receive any second response packets, or the number of second response packets received by the first node is lower than the predetermined ratio, it means that a certain degree of packet loss has occurred, and the reliability of the path is reduced. , The optimal path can be updated. On the contrary, if the first node has received all P second response packets, or the number of second response packets received by the first node is higher than a predetermined ratio, it indicates that the optimal path is still reliable and does not need to be updated.
  • the first node can also consider the transmission delay of the optimal path. If the first node does not receive the second response packet within the delay requirement, or does not receive a predetermined proportion of the second response packet within the delay requirement, it will The optimal path is updated.
  • the first node may also determine whether to update the optimal path according to a change in the number of nodes in the MESH network.
  • the first node can determine whether to update the optimal path. For example, when a new node joins the MESH network, the first node may consider updating the optimal path. For another example, after the number of nodes changes, the foregoing method is used to determine whether the reliability and delay of the optimal path are affected, and if affected, the optimal path is updated.
  • the first node may also update the optimal path in other ways, for example, update the optimal path according to a certain time period.
  • the first node After the first node determines to update the optimal path, it can send a path release message to each node in the MESH network to instruct each node that receives the path release message to delete the first node and the second node from its whitelist and blacklist. An address pair composed of nodes. After that, the new optimal path can be selected again according to the method described in the embodiment of the present application.
  • the size of the sequence numbers of the above-mentioned processes does not mean the order of execution.
  • the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation to the implementation process of the embodiments of this application. .
  • Fig. 6 is a schematic block diagram of a BLE device 600 according to an embodiment of the present application.
  • the BLE device 600 is the second node in the BLE MESH network
  • the MESH network includes multiple nodes
  • the BLE device 600 includes:
  • the transceiver unit 610 is configured to receive at least one detection packet from the first node in the MESH network, wherein each detection packet reaches the second node through at least one path, and each of the at least one path
  • the detection packet transmitted on each path includes the address of the node on each path;
  • the processing unit 620 is configured to determine an optimal path according to the at least one detection packet
  • the transceiving unit 610 is further configured to send a first response packet in response to the first node, wherein the first response packet includes the address of each node on the optimal path.
  • the second node when the second node receives the detection packet from the first node, since the detection packet includes the address of the node on the path through which the detection packet passes, the second node can be based on the detection packet transmitted from a different path. Test the packet, determine the possible path between the first node and the second node, and select the optimal path among these paths for subsequent data transmission. During subsequent data transmission between the first node and the second node, the data packet may be transmitted only through the node on the optimal path, and the other nodes may not transmit the data packet. This can reduce unnecessary data transmission between nodes in the MESH network and save node resources.
  • the first response packet is used for a node in the MESH network that receives the first response packet to establish a respective whitelist and/or blacklist, and the whitelist and the blacklist are used for Determining whether to forward the data packet between the first node and the second node.
  • the processing unit 620 is specifically configured to: determine in the at least one path according to the transmission time and/or the number of nodes that each detection packet has been transmitted from the at least one path to the second node.
  • the candidate path corresponding to each detection packet; among at least one candidate path corresponding to the at least one detection packet, the optimal path is determined.
  • the processing unit 620 is specifically configured to: in the at least one path, select M detection packets with the shortest transmission time; among the M detection packets, select K detection packets with the least number of nodes. Packet, M and K are positive integers and K ⁇ M; the path taken by the K detection packets is taken as the candidate path corresponding to each detection packet.
  • the processing unit 620 is specifically configured to: among the at least one candidate path corresponding to the at least one detection packet, select the candidate path with the highest occurrence probability as the optimal path.
  • the processing unit 620 is further configured to determine, among at least one candidate path corresponding to the at least one detection packet, a candidate path of the optimal path, wherein the candidate path is the at least one candidate path.
  • the candidate path is the at least one candidate path.
  • the first response packet also includes the address of each node on the candidate path.
  • the transceiving unit 610 is further configured to: receive multiple update packets from the first node; respectively, in response to the multiple update packets, send multiple first nodes to the first node through the optimal path.
  • a second response packet wherein the receiving time and/or the received quantity of the second response packet are used by the first node to determine whether to update the optimal path.
  • node 600 may perform the corresponding operations performed by the second node in the foregoing method embodiments, and for the sake of brevity, details are not described herein again.
  • Fig. 7 is a schematic block diagram of a BLE device 700 according to an embodiment of the present application.
  • the BLE device 700 is the third node in the BLE MESH network
  • the MESH network includes multiple nodes
  • the BLE device 700 includes:
  • the transceiver unit 710 is configured to receive at least one detection packet from a first node in the MESH network to a second node in the MESH network;
  • the processing unit 720 is configured to add the address of the third node to the at least one detection packet
  • the transceiver unit 710 is further configured to forward the at least one detection packet, and the at least one detection packet is used by the second node to select the optimal path between the first node and the second node.
  • the third node when the third node receives a detection packet from the first node to the second node, it adds its own address to the detection packet, so that the second node can follow the detection packets transmitted from different paths. , Determine the possible path between the first node and the second node, so as to select the optimal path among these paths for subsequent data transmission. This can reduce unnecessary data transmission between nodes in the MESH network and save node resources.
  • the transceiver unit 710 is further configured to: receive a first response packet from the second node to the first node, where the first response packet includes the address of each node on the optimal path;
  • the processing unit 720 is further configured to: if the first response packet includes the address of the third node, add the addresses of the first node and the second node as an address pair to the third node And/or, if the address of the third node is not included in the first response packet, add the address pair to the blacklist of the third node; the transceiver unit 710 also Used for: forwarding the first response packet.
  • the transceiving unit 710 is further configured to: receive a data packet from the first node to the second node; the processing unit 720 is further configured to: determine whether or not according to the whitelist and/or the blacklist Forward the data packet.
  • the transceiver unit 710 is specifically configured to: if the address pair is in the whitelist, forward the data packet; and/or, if the address pair is in the blacklist, not forward the data package.
  • the BLE device 700 can perform the corresponding operations performed by the third node in the foregoing method embodiments, which are not repeated here for brevity.
  • FIG. 8 is a schematic block diagram of a BLE device 800 according to an embodiment of the present application.
  • the BLE device 800 is the first node in the BLE MESH network
  • the MESH network includes multiple nodes
  • the BLE device 800 includes:
  • the transceiver unit 810 is configured to send at least one detection packet to a second node in the MESH network through the MESH network, wherein the at least one detection packet is used to record the addresses of the nodes on the respective paths , For the second node to select the optimal path between the first node and the second node;
  • the transceiver unit 810 is further configured to receive a first response packet from the second node, where the first response packet includes the address of each node on the optimal path.
  • the first node sends a detection packet to the second node, and the detection packet is used to record the addresses of nodes on each path from the first node to the second node, so that the second node can According to the received detection packets transmitted from different paths, a possible path between the first node and the second node is determined, and the optimal path is selected among these paths for subsequent data transmission.
  • the data packet may be transmitted only through the node on the optimal path, and the other nodes may not transmit the data packet. This can reduce unnecessary data transmission between nodes in the MESH network and save node resources.
  • the first response packet is used for a node in the MESH network that receives the first response packet to establish a respective whitelist and/or blacklist, and the whitelist and the blacklist are used for Determining whether to forward the data packet between the first node and the second node.
  • the BLE device 800 further includes a processing unit 820, wherein the transceiving unit 810 is further configured to: when a heartbeat packet sent by a node on the optimal path is not detected within a predetermined period of time, pass the optimal path to the The second node sends multiple update packets; receives multiple second response packets from the second node in response to the multiple update packets; the processing unit 820 is configured to, according to the second response The time and/or number of packets received determines whether to update the optimal path.
  • the transceiving unit 810 is further configured to: when a heartbeat packet sent by a node on the optimal path is not detected within a predetermined period of time, pass the optimal path to the The second node sends multiple update packets; receives multiple second response packets from the second node in response to the multiple update packets; the processing unit 820 is configured to, according to the second response The time and/or number of packets received determines whether to update the optimal path.
  • the BLE device 800 further includes a processing unit 820 configured to determine whether to update the optimal path according to a change in the number of nodes in the MESH network.
  • the BLE device 800 can perform the corresponding operations performed by the first node in the foregoing method embodiments, which are not repeated here for brevity.
  • FIG. 9 is a schematic structural diagram of a BLE chip 900 according to an embodiment of the present application.
  • the BLE chip 900 shown in FIG. 9 includes a processor 910, a memory 920, and a transceiver 930.
  • the processor 910 can call and run a computer program from the memory 920 to implement the method in the embodiment of the present application.
  • the processor 910 may control the transceiver 930 to communicate with other nodes. Specifically, it may send data to other nodes or receive information or data sent by other nodes.
  • the transceiver 930 may include an input interface 931 and an output interface 932.
  • the processor 910 may control the input interface 931 and the output interface 932 to communicate with other devices or BLE chips, thereby obtaining information or data sent by other devices or chips, or outputting information or data to other devices or chips.
  • the BLE chip 900 may specifically be the first node of the embodiment of the present application, and the BLE chip 900 may implement the corresponding process implemented by the first node in each method of the embodiment of the present application. For the sake of brevity, details are not repeated here. .
  • the BLE chip 900 may specifically be the second node of the embodiment of the present application, and the BLE chip 900 may implement the corresponding procedures implemented by the second node in the various methods of the embodiments of the present application. For the sake of brevity, details are not repeated here. .
  • the BLE chip 900 may specifically be the third node of the embodiment of the present application, and the BLE chip 900 may implement the corresponding processes implemented by the third node in the various methods of the embodiments of the present application. For the sake of brevity, details are not repeated here. .
  • the above-mentioned processor may be an integrated circuit chip with signal processing capability.
  • the steps of the foregoing method embodiments can be completed by hardware integrated logic circuits in the processor or instructions in the form of software.
  • the above-mentioned processor can be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (ASIC), a ready-made programmable gate array (Field Programmable Gate Array, FPGA) or other Programming logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • DSP Digital Signal Processor
  • ASIC application specific integrated circuit
  • FPGA ready-made programmable gate array
  • the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the steps of the method disclosed in the embodiments of the present application can be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
  • the software module can be located in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, registers.
  • the storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
  • the aforementioned memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory can be read-only memory (Read-Only Memory, ROM), programmable read-only memory (Programmable ROM, PROM), erasable programmable read-only memory (Erasable PROM, EPROM), and electrically available Erase programmable read-only memory (Electrically EPROM, EEPROM) or flash memory.
  • the volatile memory may be random access memory (Random Access Memory, RAM), which is used as an external cache.
  • RAM static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory
  • DDR SDRAM Double Data Rate Synchronous Dynamic Random Access Memory
  • Enhanced SDRAM, ESDRAM Enhanced Synchronous Dynamic Random Access Memory
  • Synchronous Link Dynamic Random Access Memory Synchronous Link Dynamic Random Access Memory
  • DR RAM Direct Rambus RAM
  • the embodiment of the present application also provides a computer-readable storage medium for storing computer programs.
  • the computer-readable storage medium can be applied to the BLE device in the embodiment of the present application, and the computer program causes the computer to execute the corresponding process implemented by the first node, the second node, or the third node in each method of the embodiment of the present application, For brevity, I won't repeat it.
  • the embodiments of the present application also provide a computer program product, including computer program instructions.
  • the computer program product can be applied to the BLE device in the embodiment of the present application, and the computer program instructions cause the computer to execute the corresponding process implemented by the first node, the second node, or the third node in each method of the embodiment of the present application, in order to It's concise, so I won't repeat it here.
  • system and “network” in the embodiments of the present invention are often used interchangeably herein.
  • the term “and/or” in this article is only an association relationship describing the associated objects, which means that there can be three relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, exist alone B these three situations.
  • the character "/" in this text generally indicates that the associated objects before and after are in an "or” relationship.
  • B corresponding (corresponding) to A means that B is associated with A, and B can be determined according to A.
  • determining B based on A does not mean that B is determined only based on A, and B can also be determined based on A and/or other information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

La présente demande concerne un procédé de sélection de trajet qui peut réduire la transmission de données inutile entre des nœuds dans un réseau MESH. Le procédé est appliqué au réseau MESH de Bluetooth à basse consommation (BLE) et le réseau MESH comprend une pluralité de nœuds. Le procédé comprend les étapes suivantes : un deuxième nœud dans le réseau MESH reçoit au moins un paquet de détection provenant d'un premier nœud dans le réseau MESH, chaque paquet de détection arrivant au deuxième nœud par l'intermédiaire d'au moins un trajet, le paquet de détection transmis dans chaque trajet d'au moins un trajet comprenant l'adresse du nœud dans chaque trajet ; le deuxième nœud détermine un trajet optimal en fonction d'au moins un paquet de détection ; le deuxième nœud transmet un premier paquet de réponses en réponse au premier nœud, le premier paquet de réponses comprenant l'adresse de chaque nœud dans le trajet optimal.
PCT/CN2019/119259 2019-11-18 2019-11-18 Procédé de sélection de trajet et dispositif ble Ceased WO2021097628A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2019/119259 WO2021097628A1 (fr) 2019-11-18 2019-11-18 Procédé de sélection de trajet et dispositif ble
CN201980005133.9A CN111247818A (zh) 2019-11-18 2019-11-18 路径选择的方法和ble设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/119259 WO2021097628A1 (fr) 2019-11-18 2019-11-18 Procédé de sélection de trajet et dispositif ble

Publications (1)

Publication Number Publication Date
WO2021097628A1 true WO2021097628A1 (fr) 2021-05-27

Family

ID=70866322

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/119259 Ceased WO2021097628A1 (fr) 2019-11-18 2019-11-18 Procédé de sélection de trajet et dispositif ble

Country Status (2)

Country Link
CN (1) CN111247818A (fr)
WO (1) WO2021097628A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112396814B (zh) * 2020-11-26 2022-04-01 深圳市安室智能有限公司 报警器拓扑传输方法及相关产品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056240A (zh) * 2007-05-22 2007-10-17 杭州华三通信技术有限公司 一种mesh点之间路由维护方法及设备
CN104244359A (zh) * 2013-06-09 2014-12-24 浙江瑞瀛网络科技有限公司 一种用于无线网络路由路径优化的方法
US20180254972A1 (en) * 2015-02-20 2018-09-06 Cisco Technology, Inc. Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment
CN109511091A (zh) * 2018-11-26 2019-03-22 广州鲁邦通物联网科技有限公司 一种基于定位信息的ble mesh网络路由算法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105429933A (zh) * 2014-09-19 2016-03-23 中国电信股份有限公司 一种局域网中网络设备的访问方法、接入设备及系统
CN105592459B (zh) * 2015-07-09 2019-06-18 中国银联股份有限公司 基于无线通信的安全认证装置
CN107431968B (zh) * 2015-12-30 2020-10-09 华为技术有限公司 一种建立路由表的方法、电子设备及网络
CN106658482B (zh) * 2016-10-08 2020-04-07 西安电子科技大学 路由发现中的黑洞攻击防御方法
CN109510832A (zh) * 2018-11-29 2019-03-22 北京天元特通信息技术股份有限公司 一种基于动态黑名单机制的通信方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056240A (zh) * 2007-05-22 2007-10-17 杭州华三通信技术有限公司 一种mesh点之间路由维护方法及设备
CN104244359A (zh) * 2013-06-09 2014-12-24 浙江瑞瀛网络科技有限公司 一种用于无线网络路由路径优化的方法
US20180254972A1 (en) * 2015-02-20 2018-09-06 Cisco Technology, Inc. Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment
CN109511091A (zh) * 2018-11-26 2019-03-22 广州鲁邦通物联网科技有限公司 一种基于定位信息的ble mesh网络路由算法

Also Published As

Publication number Publication date
CN111247818A (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
US10965584B1 (en) Zero-overhead data initiated AnyCasting
JP5276220B2 (ja) バス制御装置およびバス制御装置に指示を出力する制御装置
CN111479295B (zh) 数据传输方法、系统、装置、设备及存储介质
CN113259916B (zh) 一种基于蓝牙网络的通信方法、及其节点和通信系统
CN107124363B (zh) 报文广播方法及设备
CN112261702A (zh) 基于位置的无线Mesh网络路由选路方法、装置和电子设备
US20080159358A1 (en) Unknown Destination Traffic Repetition
CN107852367A (zh) 网状网络中的路径建立
WO2021097628A1 (fr) Procédé de sélection de trajet et dispositif ble
CN116419363B (zh) 数据传输方法、通信设备和计算机可读存储介质
WO2020147081A1 (fr) Procédé de transmission de données, dispositif associé et support de stockage informatique
CN108347377B (zh) 数据转发方法及装置
CN113838463B (zh) 信息传输方法、装置、电子设备及存储介质
CN115884304A (zh) 基于无线Mesh网络的路由修复方法及相关设备
WO2021092760A1 (fr) Procédé de transmission de données et dispositif ble
CN109005115B (zh) 一种分布式传感器网络的智能拓扑方法及装置
CN116321210B (zh) 自组网通信装置的控制方法、装置、存储介质和电子设备
CN115714998A (zh) 基于无线Mesh网络的中心节点路由发现方法及相关设备
JP4613967B2 (ja) 通信経路設定方法、通信経路設定プログラム、通信端末、無線ネットワークシステム
CN104205940B (zh) 自组织网络系统以及路径选择方法
WO2021092724A1 (fr) Procédé de gestion de dispositif et dispositif ble
Gujral et al. Impact of scalability with respect to mobility and zone size on zone routing protocol over MANETs
Habbal et al. A Model for Congestion control of Transmission control Protocol in Mobile Wireless Ad Hoc Networks.
KR102873409B1 (ko) 뉴로모픽 인터페이스 회로 및 이의 동작 방법 및 뉴로모픽 인터페이스 시스템
CN103685039B (zh) 无线通信中广播消息的传输方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19953568

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19953568

Country of ref document: EP

Kind code of ref document: A1