WO2021092760A1 - Procédé de transmission de données et dispositif ble - Google Patents
Procédé de transmission de données et dispositif ble Download PDFInfo
- Publication number
- WO2021092760A1 WO2021092760A1 PCT/CN2019/117534 CN2019117534W WO2021092760A1 WO 2021092760 A1 WO2021092760 A1 WO 2021092760A1 CN 2019117534 W CN2019117534 W CN 2019117534W WO 2021092760 A1 WO2021092760 A1 WO 2021092760A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- mesh network
- data packets
- data packet
- switching instruction
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W36/00—Hand-off or reselection arrangements
- H04W36/0005—Control or signalling for completing the hand-off
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing 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 data transmission method 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 received data packets based on unconditional forwarding. When there are a large number of data packets to be transmitted between nodes in the MESH network, the transmission efficiency of this method is very low.
- the embodiments of the present application provide a data transmission method and a BLE device, which can improve the efficiency of data packet transmission between nodes in a MESH network.
- a data transmission method 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 first in the MESH network A node sends a first switching instruction, the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, wherein the first transmission mode is only forwarding from the A data packet pattern from the first node to the second node in the MESH network; the first node sends the data packet to the second node through the MESH network.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet. Set the duration.
- the first handover instruction includes the address of the first node and the address of the second node.
- the first node sending the data packet to the second node through the MESH network includes: the first node splits the data packet to form multiple data packets. Sub-data packets; the first node cyclically sends the multiple sub-data packets to the second node through the MESH network according to the numbers of the multiple sub-data packets.
- the method further includes: the first node sends a transmission start instruction to the second node through the MESH network, and the transmission start instruction includes at least one of the following information Type: the number of the multiple sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the method further includes: the first node receives a response message sent by the second node through the MESH network, and the response message includes the successful reception by the second node.
- the number of the sub-data packet wherein the first node cyclically sends the multiple sub-data packets to the second node, including: the first node cyclically sends to the second node according to the response message Sub-packets that were not successfully received.
- the first node cyclically sends sub-data packets that are not successfully received according to the response message, including: if the number of sub-data packets that are not successfully received is less than a preset value, the first node A node sends multiple unsuccessfully received sub-data packets in one cycle; if the number of unsuccessfully received sub-data packets is greater than the preset value, the first node sends only one sub-data packet in one cycle. Share the unsuccessfully received sub-data packets.
- the method further includes: the first node removes the sub-data packet successfully received by the second node from the sending queue according to the response message.
- the method further includes: if all the multiple sub-data packets are removed, the first node sends a first indication message to the second node through the MESH network, The first indication message is used to indicate the completion of sending the multiple sub-data packets.
- the method further includes: the first node receives a second indication message sent by the second node through the MESH network, and the second indication message is used to indicate the Multiple sub-packets were successfully received.
- the method further includes: the first node sending a second switching instruction, the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode .
- the method further includes: the first node receives the data packet from other nodes The first switching instruction; the first node determines whether to send the data packet to the second node according to the serial number of the address of the first node and the serial number of the addresses of the other nodes.
- the first node determines whether to send the data packet to the second node according to the serial number of the address of the first node and the serial number of the addresses of the other nodes, including : If the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, the first node determines to send the data packet to the second node; or, if the address of the first node If the sequence number of is smaller than the sequence number of the address of the other node, the first node determines to send the data packet to the second node.
- a data transmission method is provided, which is applied to a MESH network of Bluetooth Low Energy BLE, and the method includes: a second node in the MESH network receives a first handover instruction, and The first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, wherein the first transmission mode is to only forward from the first node in the MESH network to the The mode of the data packet of the second node; the second node switches to the first transmission mode after the predetermined time period according to the first switching instruction; the second node receives all the data through the MESH network The data packet sent by the first node.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet. Set the duration.
- the first handover instruction includes the address of the first node and the address of the second node.
- the second node receiving the data packet sent by the first node through the third node includes: the second node receiving the data packet sent by the first node through the MESH network The multiple sub-data packets formed based on the data packet.
- the method further includes: the second node receives a transmission start instruction sent by the first node through the MESH network, and the transmission start instruction includes at least one of the following information One type: the number of the multiple sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the method further includes: the second node generates a response message, the response message includes the number of the successfully received sub-data packet; the second node passes through the MESH network, Sending the response message to the first node.
- the generation of the response message by the second node includes: each time the second node successfully receives K sub-data packets, generating one of the response messages, the response message includes the K Number of sub-packets.
- the method further includes: the second node receives a first indication message sent by the first node through the MESH network, and the first indication message is used to indicate the Multiple sub-data packets have been sent.
- the method further includes: the second node determines whether the multiple sub-data packets are successfully received according to the first indication message; if it is determined that the multiple sub-data packets are successfully received, The second node sends a second indication message to the first node through the MESH network, where the second indication message is used to indicate that the multiple sub-data packets are successfully received.
- the method further includes: the second node receives a second switching instruction, the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode ; The second node exits the first transmission mode according to the second switching instruction.
- the method before the second node switches to the first transmission mode after the predetermined period of time according to the first switching instruction, the method further includes: the second node Receiving the first handover instruction from another node; the second node determines whether according to the sequence number of the address of the first node and the sequence number of the address of the other node according to the The first switching instruction switches to the first transmission mode.
- the second node determines whether according to the first handover sent by the first node according to the sequence number of the address of the first node and the sequence number of the addresses of the other nodes. Instruction to switch to the first transmission mode, including: if the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, then the second node determines according to the The first switching instruction is to switch to the first transmission mode; or, if the sequence number of the address of the first node is less than the sequence number of the addresses of the other nodes, the second node determines to send according to the first node The first switching instruction to switch to the first transmission mode.
- a data transmission method including: 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: in the MESH network The third node receives a first switching instruction, the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, wherein the first transmission mode is forwarding only from The mode of data packets from the first node to the second node in the MESH network; the third node switches to the first transmission mode after the predetermined time period according to the first switching instruction; The three nodes forward the data packet from the first node to the second node.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet. Set the duration.
- the first handover instruction includes the address of the first node and the address of the second node.
- the method further includes: the third node forwards a transmission start instruction from the first node to the second node, and the transmission start instruction includes at least one of the following information One type: the number of the multiple sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the third node forwarding the data packet from the first node to the second node includes: the third node forwarding the data packet from the first node to the A plurality of sub-data packets of the second node formed based on the data packet.
- the method further includes: the third node forwards a response message from the second node to the first node, and the response message includes that the second node successfully received The number of the sub-packet.
- the method further includes: the third node receives a second switching instruction, the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode ; The third node exits the first transmission mode according to the second switching instruction.
- the method before the third node switches to the first transmission mode after the predetermined period of time according to the first switching instruction, the method further includes: the third node Receiving the first handover instruction from another node; the third node determines whether according to the sequence number of the address of the first node and the sequence number of the address of the other node according to the The first switching instruction switches to the first transmission mode.
- the third node determines whether according to the first handover sent by the first node according to the sequence number of the address of the first node and the sequence number of the addresses of the other nodes. Instruction to switch to the first transmission mode, including: if the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, the third node determines according to the The first switching instruction is to switch to the first transmission mode; or, if the sequence number of the address of the first node is less than the sequence number of the addresses of the other nodes, the third node determines to send according to the first node The first switching instruction to switch to the first transmission mode.
- 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 the method in any possible implementation manner of the second aspect.
- a computer program product including computer program instructions that cause a computer to execute the foregoing third aspect or the method in any possible implementation manner of the third aspect.
- each node in the network enters the first transmission mode by sending a switching instruction, that is, only forwards from the first node to the second node.
- the data packet of the node can thereby improve the transmission efficiency of the data packet between the nodes.
- FIG. 1 is a schematic diagram of the MESH network.
- Fig. 2 is a flow interaction diagram of a data transmission method according to an embodiment of the present application.
- Fig. 3 is a flow interaction diagram of a data transmission method according to another embodiment of the present application.
- Fig. 4 is a flow interaction diagram of a data transmission method according to another embodiment of the present application.
- Fig. 5 is a flow interaction diagram of a data transmission method according to another embodiment of the present application.
- FIGS. 6 to 8 are schematic block diagrams of BLE devices according to embodiments 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 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 Figure 1, only node A to node G are taken as an example.
- data packets are transmitted based on advertising. After each node receives a data packet sent by another node, it unconditionally forwards the data packet, thereby forwarding the data packet to other nearby nodes.
- a data packet from node A to node B can be relayed at least once.
- node C receives the data packet sent by node A, it can forward the data packet to node D and node G; after node D receives the data packet, it can forward the data packet to node G and node B respectively; After node G receives the data packet, it can forward the data packet to node B, node E, and node F. Since the data packet transmission is based on advertising, the data transmission is unreliable. Therefore, when the node A sends the data packet to the node B, the data packet can be repeatedly sent to ensure that the data packet is successfully received.
- node A When node A needs to send a large number of data packets to node B, the above-mentioned relaying node will unconditionally forward these data packets when receiving these data packets, which makes the transmission efficiency of data packets very low. Moreover, since all data packets have to be sent repeatedly, it also causes a waste of bandwidth.
- the embodiment of the present application provides a data transmission solution used in a MESH network, which can improve the data transmission efficiency between nodes, and is especially suitable for a situation where a large number of data packets need to be transmitted between two nodes.
- Fig. 2 is a flow interaction diagram of a data transmission method according to an embodiment of the present application.
- the method 200 shown in FIG. 2 may be executed by the first node, the second node, and the third node.
- the method is applied to the MESH network of BLE, and the MESH network may include multiple nodes.
- the first node may also be referred to as a source node
- the second node may also be referred to as a target node
- the third node may also be referred to as a relay node.
- the identities of the first node, the second node, and the third node can also be exchanged.
- the method that can be executed by any one of the nodes can also be executed by the other two nodes.
- the first node is the source node
- the second node is the target node
- the third node is the relay node as examples for description.
- only one relay node, that is, the third node is taken as an example for description.
- the method 200 may include some or all of the following steps.
- the first node sends a first switching instruction.
- the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time.
- the first transmission mode is a mode in which only data packets from the first node to the second node in the MESH network are forwarded.
- the predetermined duration may be a preset duration after the moment when the first node sends the data packet.
- the first switching instruction may carry the time T1 at which the first node sends the data packet. After receiving the first switching instruction, each node in the MESH network enters the first transmission mode at the end of the predetermined period after the time T1. .
- the predetermined duration may be a preset duration after the moment when each node receives the data packet.
- the third node enters the first transmission mode when the predetermined time period after the time T2 at which the first switching instruction is received ends.
- the first switching instruction may include, for example, the address of the first node and the address of the second node, so that each node that receives the first switching instruction stops forwarding data between nodes other than the first node and the second node package.
- the address of the first node is the source address of the first switching instruction, and the address of the second node may be carried in the payload field of the first switching instruction.
- the target address of the first switching instruction may be the group address of the group formed by the nodes in the MESH network that receive the first switching instruction.
- the third node receives the first switching instruction, and according to the first switching instruction, switches to the first transmission mode after the predetermined period of time.
- the second node receives the first switching instruction sent by the first node, and according to the first switching instruction, switches to the first transmission mode after the predetermined period of time.
- each node in the MESH network After each node in the MESH network receives the first handover instruction, it can continue to forward the data packet within a preset period of time to complete the transmission of the air data packet. However, these nodes will not send out new data packets, but will cache these data packets locally, and then send them out after exiting the first transmission mode. After the preset time period ends, each node enters the first transmission mode.
- the preset duration may not be set, and the first switching instruction instructs each node in the MESH network to switch to the first transmission mode.
- the first switching instruction instructs each node in the MESH network to switch to the first transmission mode.
- the MESH network After each node in the MESH network receives the first switching instruction, it caches the data packets to be sent and the data packets to be forwarded locally, and immediately switches to the first transmission mode, and then transfers these data packets after exiting the first transmission mode. The packet is sent out.
- the first node sends a data packet to the second node through the MESH network.
- the third node forwards the data packet from the first node to the second node.
- the second node receives the data packet sent by the first node through the MESH network.
- the first node when a large number of data packets need to be transmitted between the first node and the second node in the MESH network, the first node can send a first switching instruction in the MESH network to instruct each node to enter the first transmission mode , So that each node only forwards data packets from the first node to the second node, while suspending the transmission of other data packets.
- the data transmission efficiency and transmission quality between nodes are improved.
- the above method can also be used for transmission, so that these high-priority data packets can reach the target node as soon as possible.
- the first node may also send a second switching instruction.
- the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode.
- nodes such as the third node and the second node, after receiving the second switching instruction, will exit the first transmission mode according to the second switching instruction. After that, each node in the MESH network can return to the mode of unconditionally forwarding all data packets.
- Each node in the MESH network can send a first switching instruction to instruct other nodes to switch the transmission mode according to its own needs, so as to only forward the data packet sent by each node to its desired target node.
- the first node may also receive the first switching instruction from other nodes.
- the second node and the third node may also receive the first switching instruction sent from other nodes.
- a node receives multiple first switching instructions at the same time, the node needs to determine which node sent the first switching instruction from among the received multiple first switching instructions, while ignoring the first switching of other nodes Instructions, otherwise it will cause conflicts. For example, the node may determine which first switching instruction is valid according to the sequence number of the source node address of the first switching instruction; or, the node may also determine according to the sequence number of the destination address of a large number of data packets to be transmitted Which first switching command is valid.
- the first node may determine whether to send the data packet to the second node according to the sequence number of the address of the first node and the sequence numbers of the addresses of other nodes, and when determining to send the data packet to the second node, execute 240 . For example, if the sequence number of the address of the first node is greater than the sequence number of the addresses of other nodes, the first node determines to send the data packet to the second node; or, if the sequence number of the address of the first node is less than the sequence number of the addresses of other nodes, Then the first node determines to send the data packet to the second node.
- the second node and the third node can determine which node sends the first switching instruction to switch the transmission mode according to the serial number of the address of the first node and the serial number of the addresses of other nodes. If the second node and the third node determine to switch to the first transmission mode according to the first switching instruction sent by the first node, 230 and 240 are executed respectively.
- the second node and the third node determine to switch to the first transmission mode according to the first switching instruction; or, if the address of the first node is If the sequence number is smaller than the sequence number of the addresses of other nodes, the second node and the third node determine to switch to the first transmission mode according to the first switching instruction.
- node A, node C, and node D currently all have a large number of data packets to be sent, so node A, node C, and node D all send their respective first switching instructions.
- the sequence numbers of the addresses of node A, node C, and node D are ascending from small to large. It is assumed that the first switching command sent by the node with the smallest address sequence number is valid.
- the first switching instruction sent by node A instructs each node to only forward data packets from node A to node B.
- other nodes in the MESH network switch the transmission mode according to the first switching instruction sent by node A, thereby only forwarding data packets from node A to node B .
- node C and node D can also receive the first switching instruction sent by node A, and find that the sequence number of node A's address is less than its own sequence number, node C and node D only forward the data from node A to node B Packet, and after the data packet transmission from node A to node B is completed, try to send its first switching instruction.
- step 240 may include step 241 and step 242.
- step 250 can be replaced by step 251
- step 260 can be replaced by step 261.
- the first node splits the data packet to form multiple sub-data packets.
- the multiple sub-data packets may have respective numbers, or called sequence numbers (Sequence Number, SN).
- sequence Number Sequence Number
- the first node numbers multiple sub-data packets, and the multiple sub-data packets have numbers 1, number 2, ..., number N, respectively.
- the length of each sub-data packet can be the same, for example, the length is the maximum transmission unit (Maximum Transmission Unit, MTU)-2; or the length of these sub-data packets may not be exactly the same. Make a limit.
- MTU Maximum Transmission Unit
- the first node cyclically sends the multiple sub-data packets to the second node through the MESH network according to the numbers of the multiple sub-data packets.
- the third node forwards a plurality of sub-data packets formed based on the data packet.
- the second node receives the multiple sub-data packets sent by the first node through the MESH network.
- the first node may also send a transmission start instruction to the second node through the MESH network.
- the transmission start instruction includes, for example, at least one of the following information: the number of the multiple sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the second node receives the transmission start instruction sent by the first node through the MESH network. And get the data information from the transmission start instruction, and prepare to receive data.
- the method may further include step 271 to step 275.
- the second node generates a response message.
- the response message includes the number of the sub-data packet successfully received by the second node.
- the second node sends the response message to the first node through the MESH network.
- the third node forwards the response message from the second node to the first node.
- the first node receives the response message sent by the second node through the MESH network.
- the first node may cyclically send unsuccessfully received sub-data packets to the second node through the MESH network according to the received response message.
- the first node sends multiple unsuccessfully received sub-data packets in one cycle; and/or if the number of unsuccessfully received sub-data packets If the value is greater than the preset value, the first node sends only one sub-data packet that has not been successfully received in one cycle.
- the first node sends sub-data packets in cycles according to the number of the sub-data packets. In one cycle, the first node can send only one sub-data packet for each numbered sub-data packet according to the number of sub-data packets in the sending queue. One copy of the numbered sub-packet or multiple copies of the numbered sub-packet. The specific number of the multiple copies can be pre-configured.
- the sending queue of the first node is: data packet 6, data packet 7, data packet 8, Data packet 6, data packet 7, data packet 8,.... If the first node sends 2 copies of the numbered sub-data packet for each numbered sub-data packet in one cycle, the sending queue of the first node is: data packet 6, data packet 6, data packet 7, data Package 7, data package 8, data package 8, data package 6, data package 6, data package 7, data package 7, ....
- the first node can determine whether to send only one sub-data packet or repeat multiple sub-data packets according to the number of sub-data packets in the sending queue, instead of repeating multiple data packets each time.
- the first node can determine whether to send only one sub-data packet or repeat multiple sub-data packets according to the number of sub-data packets in the sending queue, instead of repeating multiple data packets each time.
- the second node after receiving the sub-data packet, the second node needs to send a response message to the first node to indicate that it has successfully received the sub-data packet.
- the second node can respond to each sub-data packet separately, but this will result in a large number of air packets, which affects the data transmission efficiency in the network.
- the second node may generate one response message every time K sub-data packets are successfully received.
- the response message includes the numbers of the K sub-data packets.
- K can be a pre-configured value.
- the number of the K sub-data packets may be continuous or discontinuous.
- the first node cyclically sends sub-data packets numbered 1 to N, and if the second node successfully receives sub-data packets numbered 1 to K, a response message is generated, and the response message carries numbers 1 to Number K.
- the number of response packets in the air can be reduced, thereby further improving the efficiency of data transmission between nodes. And can reduce equipment power consumption.
- the second node When responding, each time the second node receives K sub-data packets, the number of the K sub-data packets is carried in a response message and sent to the first node.
- the second node can calculate the number of sub-data packets that have not been received according to the total number of sub-data packets and the number of sub-data packets it has received. When the number of remaining unreceived sub-data packets is less than K, it is possible to respond to these sub-data packets individually or to respond to the remaining sub-data packets together.
- the method further includes: the first node removes the sub-data packet successfully received by the second node from the sending queue according to the response message.
- the dashed frame represents the removed sub-data packet.
- the first node splits the data packet to be sent to form N sub-data packets; the first node removes the sub-data packets numbered 1 to K from the sending queue after receiving the response message numbered 1 to K; After a node receives the response message with the number N-1, it removes the sub-data packet with the number N-1 from the queue; it continues to receive other response messages until all the sub-data packets in the sending queue are removed, indicating that it is sending All sub-packets have been sent.
- the first node can send a first indication message to the second node through the MESH network.
- the first indication message is used to indicate the completion of sending the multiple sub-data packets.
- the second node receives the first indication message sent by the first node.
- the second node can determine whether the multiple sub-data packets are successfully received according to the first indication message; if it is determined that the multiple sub-data packets are successfully received, the second node sends a second indication message to the first node through the MESH network . Wherein, the second indication message is used to indicate that the multiple sub-data packets are successfully received.
- the two-way verification between the first node and the second node is realized through the first indication message and the second indication message, which can further improve the reliability of data packet transmission between the two nodes.
- the first indication message may include at least one of the following information: the number of the multiple sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the second node can verify the received sub-data packet based on the information, and if the verification is successful, it will reply with a second indication message.
- 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 first node in the BLE MESH network
- the MESH network includes multiple nodes
- the first node includes:
- the transceiver unit 610 is configured to send a first switching instruction, where the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, where the first transmission mode is only A mode of forwarding data packets from the first node to the second node in the MESH network;
- the transceiver unit 610 is further configured to send the data packet to the second node through the MESH network.
- each node in the network When the first node in the MESH network needs to send a large number of data packets to the second node, each node in the network enters the first transmission mode by sending a switching instruction, that is, only forwarding data packets from the first node to the second node, Therefore, the transmission efficiency of the data packet between the first node and the second node can be improved.
- the first handover instruction includes the address of the first node and the address of the second node.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet.
- the node 600 further includes: a processing unit 620, configured to split the data packet to form a plurality of sub-data packets; wherein, the transceiver unit 610 is specifically configured to: use the MESH network according to the multiple sub-data packets. The number of the data packet, and the multiple sub-data packets are cyclically sent to the second node.
- the transceiver unit 610 is further configured to: send a transmission start instruction to the second node through the MESH network, where the transmission start instruction includes at least one of the following information: The number, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the transceiver unit 610 is specifically configured to: receive a response message sent by the second node through the MESH network, where the response message includes the number of the sub-data packet successfully received by the second node; The reply message is to send sub-data packets that are not successfully received cyclically.
- the transceiver unit 610 is specifically configured to: if the number of unsuccessfully received sub-data packets is less than a preset value, in one cycle, send multiple copies of the unsuccessfully received sub-data packets; The number of data packets is greater than the preset value, and in one cycle, only one copy of the unsuccessfully received sub-data packets is sent.
- processing unit 620 is further configured to: according to the response message, remove the sub-data packet successfully received by the second node from the sending queue.
- the transceiver unit 610 is further configured to: if all of the multiple sub-data packets are removed, send a first indication message to the second node through the MESH network, where the first indication message is used to indicate The transmission of the multiple sub-data packets is completed.
- the transceiver unit 610 is further configured to: receive a second indication message sent by the second node through the MESH network, where the second indication message is used to indicate that the multiple sub-data packets are successfully received.
- the transceiver unit 610 is further configured to send a second switching instruction, where the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode.
- the transceiver unit 610 is further configured to: receive the first handover instruction from other nodes; the processing unit 620 is further configured to: according to the serial number of the address of the first node and the serial number of the address of the other node To determine whether to send the data packet to the second node.
- the processing unit 620 is specifically configured to: if the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, determine to send the data packet to the second node; or, if the sequence number of the address of the first node is greater than the sequence number of the address of the other node; If the sequence number of the address of the first node is less than the sequence number of the addresses of the other nodes, it is determined to send the data packet to the second node.
- node 600 can perform the corresponding operations performed by the first node in the foregoing method embodiments, and for 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 second node in the BLE MESH network
- the MESH network includes multiple nodes
- the second node includes:
- the transceiver unit 710 is configured to receive a first switching instruction, where the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, wherein the first transmission mode is only A mode of forwarding data packets from the first node to the second node in the MESH network;
- the processing unit 720 is configured to switch to the first transmission mode after the predetermined period of time according to the first switching instruction
- the transceiver unit 710 is further configured to receive a data packet sent by the first node through the MESH network.
- the second node When the second node receives the first handover instruction from the first node, it enters the first transmission mode, that is, only receives data packets from the first node to the second node, and does not forward data packets between other nodes, so The transmission efficiency of data packets between the first node and the second node can be improved.
- the first handover instruction includes the address of the first node and the address of the second node.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet.
- the transceiver unit 710 is specifically configured to: receive multiple sub-data packets formed based on the data packet sent by the first node through the MESH network.
- the transceiver unit 710 is further configured to: receive a transmission start instruction sent by the first node through the MESH network, where the transmission start instruction includes at least one of the following information: the multiple sub-data packets The number of sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the processing unit 720 is further configured to: generate a response message, the response message including the number of the successfully received sub-data packet; the transceiver unit 710 is further configured to: send to the first node through the MESH network The reply message.
- the processing unit 720 is specifically configured to generate one response message every time K sub-data packets are successfully received, and the response message includes the numbers of the K sub-data packets.
- the transceiving unit 710 is further configured to receive a first indication message sent by the first node through the MESH network, where the first indication message is used to indicate that the multiple sub-data packets are sent.
- the processing unit 720 is further configured to: according to the first indication message, determine whether the multiple sub-data packets are successfully received; the transceiver unit 710 is further configured to: if it is determined that the multiple sub-data packets are successfully received, pass the The MESH network sends a second indication message to the first node, where the second indication message is used to indicate that the multiple sub-data packets are successfully received.
- the transceiver unit 710 is further configured to: receive a second switching instruction, where the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode; the processing unit 720 is further configured to: The second switching instruction exits the first transmission mode.
- the transceiver unit 710 is further configured to: receive the first handover instruction from other nodes; the processing unit 720 is further configured to: according to the serial number of the address of the first node and the serial number of the address of the other node , Determining whether to switch to the first transmission mode according to the first switching instruction sent by the first node.
- the processing unit 720 is specifically configured to: if the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, determine to switch to according to the first switching instruction sent by the first node The first transmission mode; or, if the sequence number of the address of the first node is less than the sequence number of the addresses of the other nodes, it is determined to switch to the first switching instruction sent by the first node The first transmission mode.
- the BLE device 700 can perform the corresponding operations performed by the second 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 third node in the BLE MESH network
- the MESH network includes multiple nodes
- the third node includes:
- the transceiver unit 810 is configured to receive a first switching instruction, where the first switching instruction is used to instruct each node in the MESH network to switch to the first transmission mode after a predetermined period of time, wherein the first transmission mode is only A mode of forwarding data packets from the first node to the second node in the MESH network;
- the processing unit 820 is configured to switch to the first transmission mode after the predetermined period of time according to the first switching instruction
- the transceiver unit 810 is further configured to forward the data packet from the first node to the second node.
- the third node When the third node receives the first switching instruction from the first node, it enters the first transmission mode, that is, only forwards data packets from the first node to the second node, and does not forward data packets between other nodes, so The transmission efficiency of data packets between the first node and the second node can be improved.
- the first handover instruction includes the address of the first node and the address of the second node.
- the predetermined duration is a preset duration after the moment when the first node sends the data packet, or is a preset duration after the moment when each node receives the data packet.
- the transceiver unit 810 is further configured to: forward a transmission start instruction from the first node to the second node, where the transmission start instruction includes at least one of the following information: the multiple sub-data packets The number of sub-data packets, the number of the multiple sub-data packets, and the total length of the multiple sub-data packets.
- the transceiving unit 810 is specifically configured to: forward multiple sub-data packets formed based on the data packet from the first node to the second node.
- the transceiver unit 810 is further configured to: forward a response message from the second node to the first node, where the response message includes the number of the sub-data packet successfully received by the second node.
- the transceiver unit 810 is further configured to: receive a second switching instruction, where the second switching instruction is used to instruct each node in the MESH network to exit the first transmission mode; the processing unit 820 is further configured to: The second switching instruction exits the first transmission mode.
- the transceiver unit 810 is further configured to: receive the first switching instruction from other nodes; the processing unit 820 is further configured to: according to the serial number of the address of the first node and the serial number of the address of the other node , Determining whether to switch to the first transmission mode according to the first switching instruction sent by the first node.
- the processing unit 820 is specifically configured to: if the sequence number of the address of the first node is greater than the sequence number of the addresses of the other nodes, the determination is based on the first switching instruction sent by the first node, Switch to the first transmission mode; or, if the sequence number of the address of the first node is less than the sequence number of the addresses of the other nodes, the node determines to switch according to the first switching instruction sent by the first node To the first transmission mode.
- the BLE device 800 can perform the corresponding operations performed by the third 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 includes 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 may 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 the sake of 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 invention concerne un procédé de transmission de données et un dispositif BLE, permettant d'améliorer l'efficacité de transmission de paquets de données entre des nœuds dans un réseau MESH. Le procédé est appliqué au réseau MESH ayant le BLE. Le réseau MESH comprend une pluralité de nœuds. Le procédé comprend les étapes suivantes : un premier nœud dans le réseau MESH envoie une première instruction de commutation, la première instruction de commutation étant utilisée pour ordonner à chaque nœud dans le réseau MESH de passer à un premier mode de transmission après une période de temps prédéfinie, et le premier mode de transmission étant un mode dans lequel est transmis seulement un paquet de données du premier nœud à un second nœud dans le réseau MESH ; et le premier nœud envoie le paquet de données au second nœud sur le réseau MESH.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2019/117534 WO2021092760A1 (fr) | 2019-11-12 | 2019-11-12 | Procédé de transmission de données et dispositif ble |
| CN201980005132.4A CN111279729A (zh) | 2019-11-12 | 2019-11-12 | 数据传输的方法和ble设备 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2019/117534 WO2021092760A1 (fr) | 2019-11-12 | 2019-11-12 | Procédé de transmission de données et dispositif ble |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021092760A1 true WO2021092760A1 (fr) | 2021-05-20 |
Family
ID=70998352
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2019/117534 Ceased WO2021092760A1 (fr) | 2019-11-12 | 2019-11-12 | Procédé de transmission de données et dispositif ble |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN111279729A (fr) |
| WO (1) | WO2021092760A1 (fr) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4016002B1 (fr) | 2020-12-17 | 2024-07-10 | Nxp B.V. | Contrôleur d'infrastructure pour une infrastructure |
| CN115297461B (zh) | 2022-09-30 | 2022-12-06 | 小米汽车科技有限公司 | 数据交互方法、装置、车辆、可读存储介质及芯片 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103414542A (zh) * | 2013-08-20 | 2013-11-27 | 清华大学 | 无线通信系统中同时同频全双工节点数据传送方法及装置 |
| CN103763751A (zh) * | 2014-01-24 | 2014-04-30 | 广州杰赛科技股份有限公司 | 无线传感器网络的数据传输方法和系统 |
| CN106304229A (zh) * | 2016-08-18 | 2017-01-04 | 南京邮电大学 | 一种基于内容存储的软件定义无线Mesh网络 |
| CN108156584A (zh) * | 2017-12-25 | 2018-06-12 | 深圳市闪联信息技术有限公司 | 一种蓝牙设备及其mesh网络的通信方法和系统 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101990269B (zh) * | 2009-08-05 | 2014-07-09 | 华为技术有限公司 | 一种数据转发的方法、网络节点及系统 |
| CN101945341B (zh) * | 2010-09-16 | 2013-01-23 | 西北大学 | 一种无线传感器网络点对点传输协议 |
| CN104580346B (zh) * | 2014-09-11 | 2018-06-08 | 奇点新源国际技术开发(北京)有限公司 | 数据传输方法及装置 |
| CN105681189B (zh) * | 2016-01-21 | 2019-05-17 | 上海芃矽半导体技术有限公司 | 用于网格网络的数据转发方法及节点设备 |
| CN109803244B (zh) * | 2017-11-17 | 2020-10-23 | 华为技术有限公司 | 数据传输的方法和装置 |
-
2019
- 2019-11-12 WO PCT/CN2019/117534 patent/WO2021092760A1/fr not_active Ceased
- 2019-11-12 CN CN201980005132.4A patent/CN111279729A/zh active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103414542A (zh) * | 2013-08-20 | 2013-11-27 | 清华大学 | 无线通信系统中同时同频全双工节点数据传送方法及装置 |
| CN103763751A (zh) * | 2014-01-24 | 2014-04-30 | 广州杰赛科技股份有限公司 | 无线传感器网络的数据传输方法和系统 |
| CN106304229A (zh) * | 2016-08-18 | 2017-01-04 | 南京邮电大学 | 一种基于内容存储的软件定义无线Mesh网络 |
| CN108156584A (zh) * | 2017-12-25 | 2018-06-12 | 深圳市闪联信息技术有限公司 | 一种蓝牙设备及其mesh网络的通信方法和系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111279729A (zh) | 2020-06-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110545241B (zh) | 一种报文处理方法和装置 | |
| US9450894B2 (en) | Integrated circuit device and method of performing cut-through forwarding of packet data | |
| CN110891026A (zh) | 一种流量调度方法、设备及系统 | |
| CN108270687B (zh) | 一种负载均衡处理方法及装置 | |
| JP2016005247A (ja) | ネットワーク伝送システム、そのマスタノード、スレーブノード | |
| US9515940B2 (en) | Method for transmitting data in a packet-oriented communications network and correspondingly configured user terminal in said communications network | |
| CN111837424A (zh) | 路由的建立方法及装置、电子设备以及计算机存储介质 | |
| WO2020073907A1 (fr) | Procédé et appareil de mise à jour d'entrée de transfert | |
| WO2021092760A1 (fr) | Procédé de transmission de données et dispositif ble | |
| CN117278639B (zh) | 基于确定性网络的通信时间调度的方法、设备和存储介质 | |
| WO2016045056A1 (fr) | Commutateur et procédé de traitement de paquet de demande de service | |
| WO2020147081A1 (fr) | Procédé de transmission de données, dispositif associé et support de stockage informatique | |
| US7889683B2 (en) | Non-destructive media access resolution for asynchronous traffic in a half-duplex braided-ring | |
| WO2018003117A1 (fr) | Système de communication et procédé de communication | |
| He | Kernel korner: Why and how to use netlink socket | |
| CN104919765B (zh) | 一种流表项的下发方法及装置 | |
| EP4604486A1 (fr) | Procédé et appareil de traitement de service déterministe | |
| CN117896041A (zh) | 基于工业互联网的报文传输方法、设备和可读存储介质 | |
| Ashjaei et al. | MTU configuration for real-time switched Ethernet networks | |
| WO2021097628A1 (fr) | Procédé de sélection de trajet et dispositif ble | |
| CN108737119A (zh) | 一种数据传输方法、装置及系统 | |
| CN109600431B (zh) | 面向移动通信网路的内容增量传输方法、移动通信系统 | |
| WO2021092724A1 (fr) | Procédé de gestion de dispositif et dispositif ble | |
| CN113645646B (zh) | 低功耗设备的通信优化方法、装置、设备、服务器及通信系统 | |
| CN105227451B (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: 19952562 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: 19952562 Country of ref document: EP Kind code of ref document: A1 |