Data transmission method and device

By establishing two independent transmission subnets in IoT devices, the problem of limited data transmission efficiency in the existing technology is solved, efficient transmission of small data and large data packets is achieved, and diversified needs of IoT devices are met. .

CN119172823APending Publication Date: 2024-12-20LENOVO (BEIJING) LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411218285.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-31
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In the deployment of large-scale IoT devices, the existing low-speed LAN solutions have limited support efficiency for data transmission scenarios with different data volumes and cannot meet the usage needs.

Method used

By establishing two independently operating transmission subnets in the gateway, the first subnet is responsible for the uplink and downlink transmission of small data, and the second subnet is responsible for the downlink transmission of large data packets. Each node can choose to join it as needed. 1. To achieve daily functions and functions upgrades of node-corresponding networked devices.

Benefits of technology

It effectively improves the support capabilities for different data volume scenarios, ensures efficient transmission of small data and large data packets, and meets the diversified needs of IoT devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172823A_ABST
    Figure CN119172823A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method and device, and the method comprises the steps: responding to a condition that a first node satisfies a switching condition, switching the first node from a first subnet to a second subnet, and receiving first data issued by the second subnet; wherein the size of the data issued by the second subnet is greater than that of the data issued by the first subnet.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of communication technology, and in particular to a data transmission method and device. Background Art

[0002] Currently, there are many low-speed LAN solutions applied to large-scale Internet of Things (IoT) device deployment, such as Long Range Radio (LoRa) based on sub-GHz (sub-G) frequency bands. These solutions use lower frequency radio technology to increase the distance between the gateway and the node, thereby increasing the gateway's coverage area and network capacity.

[0003] However, in the current network deployment of such equipment, the support efficiency for data transmission scenarios with different data volumes is limited and cannot meet usage requirements. Summary of the invention

[0004] The present disclosure provides a data transmission method and device to at least solve the above technical problems existing in the prior art.

[0005] According to a first aspect of the present disclosure, a data transmission method is provided, which is applied to a node, comprising:

[0006] In response to the first node satisfying the switching condition, the first node switches from the first subnet to the second subnet, and receives the first data sent by the second subnet;

[0007] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0008] In the above solution, the receiving the first data sent by the second subnet includes:

[0009] Receive at least two data fragments obtained by splitting the first data; each of the at least two data fragments has a unique identifier;

[0010] The at least two data segments are cached in a memory of the first node.

[0011] In the above scheme, the method further comprises:

[0012] In response to the first node receiving the first task, the first node switches from the second subnet to the first subnet, and performs the first task based on the first subnet;

[0013] In response to the completion of the execution of the first task, the first node switches from the first subnet to the second subnet and receives the data fragments sent by the second subnet.

[0014] In the above solution, after receiving the first data sent by the second subnet, the method further includes:

[0015] The first node confirms whether the data fragments corresponding to the received first data can constitute the first data;

[0016] In response to the data fragments being able to constitute the first data, the first node sends first feedback information to the second subnet, and based on the identifier of each data fragment, restores all received data fragments into the first data; the first feedback information is used to instruct the first node to receive all data fragments;

[0017] In response to the data fragments being unable to constitute the first data, second feedback information is sent to the second subnet, where the second feedback information is used to indicate an identifier of the data fragment that the first node lacks.

[0018] In the above solution, after sending the identifier of the missing data fragment to the second subnet, the method further includes:

[0019] The first node receives the second broadcast information through the first subnet, and determines a second time when the second subnet sends the first data based on the second broadcast information;

[0020] In response to reaching the second moment, the first node switches from the first subnet to the second subnet, and receives the first data sent by the second subnet.

[0021] According to a second aspect of the present disclosure, a data transmission method is provided, which is applied to a subnet, comprising:

[0022] In response to the first node switching from the first subnet to the second subnet, the second subnet sends the first data to at least one node;

[0023] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0024] In the above solution, after the second subnet sends the first data to at least one node, the method further includes:

[0025] receiving feedback information sent by at least one node, where the feedback information includes first feedback information and second feedback information;

[0026] If the feedback information includes second feedback information, the second subnet sends second broadcast information to at least one node through the first subnet, and the second broadcast information includes a second time when the second subnet sends the first data to the at least one node;

[0027] The first feedback information is used to instruct the first node to receive all data segments; and the second feedback information is used to indicate the identifiers of the data segments that the first node lacks.

[0028] According to a third aspect of the present disclosure, a data transmission device is provided, applied to a node, the device comprising:

[0029] A first receiving unit, configured to, in response to the first node satisfying a switching condition, switch the first node from the first subnet to the second subnet and receive first data sent by the second subnet;

[0030] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0031] According to a fourth aspect of the present disclosure, there is provided a data transmission device, which is applied to a subnet, and the device includes:

[0032] A first sending unit, configured to respond to the first node switching from the first subnet to the second subnet, and the second subnet sending the first data to at least one node;

[0033] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0034] According to a fifth aspect of the present disclosure, a data transmission method is provided, including:

[0035] In response to the first node satisfying a switching condition, the first node switches from the first subnet to the second subnet;

[0036] The second subnet sends the first data to at least one node;

[0037] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0038] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] The above and other objects, features and advantages of the exemplary embodiments of the present disclosure will become readily understood by reading the detailed description below with reference to the accompanying drawings. In the accompanying drawings, several embodiments of the present disclosure are shown in an exemplary and non-limiting manner, in which:

[0040] In the drawings, the same or corresponding reference numerals represent the same or corresponding parts.

[0041] Figure 1A first optional flow chart of the data transmission method provided by the embodiment of the present disclosure is shown;

[0042] Figure 2 A second optional flow chart of the data transmission method provided by the embodiment of the present disclosure is shown;

[0043] Figure 3 A third optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown;

[0044] Figure 4 A fourth optional flow chart of the data transmission method provided by the embodiment of the present disclosure is shown;

[0045] Figure 5 A fifth optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown;

[0046] Figure 6 A sixth optional flow chart of the data transmission method provided by the embodiment of the present disclosure is shown;

[0047] Figure 7 A seventh optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown;

[0048] Figure 8 A first optional structural diagram of a data transmission device provided by an embodiment of the present disclosure is shown;

[0049] Fig. 9 A second optional structural diagram of the data transmission device provided by the embodiment of the present disclosure is shown;

[0050] Fig.10 A schematic diagram of the structure of an electronic device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0051] In order to make the purpose, features, and advantages of the present disclosure more obvious and easy to understand, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present disclosure.

[0052] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it can be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0053] In the following description, the terms "first\second" involved are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first\second" can be interchanged with a specific order or sequence where permitted, so that the embodiments of the present disclosure described herein can be implemented in an order other than that illustrated or described herein.

[0054] Unless otherwise defined, all technical and scientific terms used in this disclosure have the same meaning as those commonly understood by those skilled in the art to which this disclosure belongs. The terms used in this disclosure are only for the purpose of describing the embodiments of this disclosure and are not intended to limit this disclosure.

[0055] It should be understood that in the various embodiments of the present disclosure, the size of the serial number of each implementation process 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 on the implementation process of the embodiments of the present disclosure.

[0056] In the related art, in the IoT scenarios of office buildings and factories, each networked device corresponds to a node, and transmits instruction data to the node through a subnet. The instruction data is used to adjust the working state of the node or perform related operations corresponding to the instruction data; the instruction data is usually a small data packet. Optionally, the networked device may encounter a firmware upgrade scenario, and the estimated package is usually a large data packet (for example, about 1MB). At this time, it is somewhat difficult to transmit the data packet through the subnet that transmits the instruction data.

[0057] In view of the defects existing in the related art, the embodiment of the present disclosure provides a data transmission method, which establishes two sets of independently operated transmissions through a gateway: the first subnet is responsible for the uplink and downlink transmission of small data, and the second subnet is responsible for the downlink transmission of large data packets. Each node can choose to join the first subnet or the second subnet. After joining the first subnet, the node can receive or upload small data, and after joining the second subnet, the node can receive large data packets, wherein each node corresponds to two communication paths, that is, one communication path after joining the first subnet, and another communication path after joining the second subnet.

[0058] Figure 1 A first optional flow chart of the data transmission method provided by an embodiment of the present disclosure is shown, and will be explained according to each step.

[0059] Step S101: In response to a first node satisfying a switching condition, the first node switches from a first subnet to a second subnet, and receives first data sent from the second subnet.

[0060] In some embodiments, the switching condition includes reaching a preset time or the networking device corresponding to the first node being idle. The first subnet and the second subnet correspond to the same gateway or different gateways.

[0061] During specific implementation, the preset time may be a fixed time, or a time carried in the broadcast information sent by the first subnet.

[0062] Further, in response to the preset time being a fixed time, the fixed time can be any agreed time, that is, after reaching the fixed time, the first node switches from the first subnet to the second subnet; the fixed time can be set to a time when the device corresponding to the first node is in an idle state (not transmitting data, not working or not connected to one of the host devices), such as non-working hours, a certain time on the weekend, such as for an office building scenario, weekends or 10 pm to 6 am the next day are non-working hours.

[0063] Optionally, if the preset time is the time carried in the broadcast information sent by the first subnet, then the preset time is the time when the second subnet sends the first data, that is, the second subnet sends the first data to the first subnet, and the first subnet sends the time when the second subnet sends the first data to at least one node connected to the first subnet in the form of broadcast, so that the at least one node accesses the second subnet at the time when the second subnet sends the first data, and receives the data sent by the second subnet. Wherein, the at least one node includes a first node, and the first node is any node connected to the first subnet.

[0064] In a specific implementation, if the switching condition is that the networked device corresponding to the first node is idle, it may include one of: the networked device corresponding to the first node is not transmitting data, is not in a working state, or is not connected to a host device. The switching condition may also include: at least one node including the first node is in an idle state, or, among the nodes connected to the first subnet, more than a first percentage of the nodes are idle. The first percentage may be set according to actual needs.

[0065] Optionally, if the switching condition is that at least one node including the first node is idle, or more than a first percentage of the nodes connected to the first subnet are idle; then the first subnet sends an instruction to the second subnet, instructing the second subnet to send the first data. Optionally, the first subnet can also send a switching instruction to the node connected to the first subnet, instructing the node to switch from the first subnet to the second subnet.

[0066] In some embodiments, in response to the first node satisfying the switching condition, the first node can also determine whether to switch to the second subnet. If it is determined to switch to the second subnet, the first node switches to the second subnet and receives the first data sent by the second subnet; or, if it is determined not to switch to the second subnet, it remains connected to the first subnet.

[0067] In specific implementation, if the device corresponding to the first node determines that it does not need to receive the first data, or needs to connect to the first subnet and transmit data with the first subnet to execute a preset task within a first time interval in the future, the first node determines that it cannot switch to the second subnet.

[0068] In some embodiments, the size of the data sent by the second subnet is larger than the size of the data sent by the first subnet; for example, the data sent or received by the first subnet includes instruction data, and the instruction data is used to adjust the working state of the first node, or instruct the networked device to perform corresponding operations. The networked device may include switches, printers, water dispensers, computers and other office scene devices, and the instruction data may include instructions such as power on, power off, receiving data, uploading data, and turning on the switch; the first data sent by the second subnet includes update data, such as firmware upgrade data, which is used to support the upgrade function of each node.

[0069] In this way, through the data transmission method provided by the embodiment of the present disclosure, the gateway establishes two sets of independently operated communication channels, the first subnet is responsible for the uplink and downlink transmission of small data (indicative data), and the second subnet is responsible for the offline transmission of large data packets (update data); each node can choose to join the first subnet or the second subnet based on whether it meets the preset conditions or whether it is necessary. When joining the first subnet, it can receive or upload small data to realize the daily functions of the node corresponding to the networked device. When joining the second subnet, it can receive large data and upgrade the functions of the node corresponding to the networked device.

[0070] Figure 2 A second optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown, and will be explained according to each step.

[0071] Step S201: The first node determines whether a switching condition is met.

[0072] In some embodiments, the switching condition is reaching a fixed time, and the first node determines whether the fixed time has been reached. If the fixed time has been reached, step S202 is executed; if the fixed time has not been reached, step S201 is executed.

[0073] In some embodiments, the switching condition is reaching a preset time, and the preset time is the time carried in the first broadcast information sent by the first subnet to the first node. The first node then determines whether the preset time has been reached. If the preset time has been reached, step S202 is executed; if the preset time has not been reached, step S201 is executed.

[0074] In some embodiments, the switching condition is that the first node is in an idle state, then if the first node is not transmitting data, not working and not connected to the host device, execute step S202; if the first node is in one of the states of transmitting data, working or connected to the host device, execute step S201.

[0075] In some embodiments, the switching condition is receiving a switching indication sent by the first subnet; the first subnet determines that more than a first percentage of the connected nodes are in an idle state, then the first subnet sends a switching indication to the nodes in the idle state or all nodes; if the first node receives the switching indication, step S202 is executed; if the first node does not receive the switching indication, step S201 is executed.

[0076] In some optional embodiments, if the first node determines that the switching conditions are met, it can also determine whether to switch to the second subnet. For example, the networked device corresponding to the first node does not need to perform a firmware upgrade based on the first data sent by the second subnet, or the networked device corresponding to the first node needs to perform a preset task within a first time interval in the future, and switching to the second subnet may affect the completion of the preset task. In this case, even if the first node determines that the switching conditions are met, it may not switch to the second subnet.

[0077] Step S202: Switch from the first subnet to the second subnet, and receive first data sent from the second subnet.

[0078] In some embodiments, the first node switches to the second subnet to receive the first data. In some optional embodiments, the second subnet divides the first data into a plurality of data segments, each of which includes a unique identifier, and the unique identifier is used by the first node to restore the data segment to the first data. The size of each data segment is greater than the size of the data uploaded or sent in the first subnet.

[0079] In some embodiments, the second subnet splits the first data into at least two data fragments, each data fragment has a unique identifier, the second subnet sends the only one data fragment to the first node, the first node receives the at least one data fragment, and caches the received data fragment into the memory of the first node.

[0080] Step S203: in response to the first node receiving the first task, the first node switches from the second subnet to the first subnet, and executes the first task based on the first subnet.

[0081] In some embodiments, if the first node determines that the switching conditions are met, but the first task needs to be executed in a first time interval in the future, the first node can switch from the second subnet to the first subnet after the time to execute the first task is reached, and execute the first task based on the first subnet.

[0082] In other embodiments, in response to the first node receiving an instruction to execute a first task, the first node switches from the second subnet to the first subnet, and executes the first task based on the first subnet.

[0083] In some further embodiments, in response to reaching a time when the first node executes the first task, the first node switches from the second subnet to the first subnet, and executes the first task based on the first subnet.

[0084] Step S204: in response to the completion of the execution of the first task, the first node switches from the first subnet to the second subnet to receive the data fragments sent by the second subnet.

[0085] In some embodiments, in response to completion of execution of the first task, the first node switches from the first subnet to the second subnet and continues to receive data segments sent by the second subnet.

[0086] Step S205 , the first node confirms whether the data fragments corresponding to the received first data can constitute the first data.

[0087] In some embodiments, the first node determines whether the received data fragments can constitute the first data based on the unique identifier of the received data fragments, and if so, executes step S206; or if not, executes step S207.

[0088] Step S206: The first node sends first feedback information to the second subnet.

[0089] In some embodiments, in response to the data fragments being able to constitute the first data, the first node sends first feedback information to the second subnet, and based on the unique identifier of each data fragment, restores all received data fragments to the first data; the first feedback information is used to indicate that the first node receives all data fragments.

[0090] Step S207: The first node sends second feedback information to the second subnet.

[0091] In some embodiments, in response to the data fragments being unable to constitute the first data, based on the unique identifier of the received data fragments, the unique identifier of the unreceived data fragments is confirmed, and second feedback information is sent to the second subnet, wherein the second feedback information is used to indicate the unique identifier of the data fragment that is missing from the first node.

[0092] Step S208: The first node determines whether a switching condition is met.

[0093] In some embodiments, a first node receives a second broadcast message through a first subnet, and determines a second time when the second subnet sends the first data based on the second broadcast message; in response to reaching the second time, the first node switches from the first subnet to the second subnet, and receives data fragments of the first data sent by the second subnet; and restores the first data based on the data fragments resent by the second subnet and the data fragments already received.

[0094] In this way, through the data transmission method provided by the embodiment of the present disclosure, in the process of sending the first data to the second subnet, any node can interrupt the reception of data fragments of the first data, switch back to the first subnet to perform the task, and after the task is completed, switch back to the second subnet to continue to receive the data fragments of the first data, and after the transmission to the second subnet is completed, send second feedback information to the second subnet, indicating that the data fragments of the first data were not fully received, and the second subnet will subsequently resend the data fragments of the first data; during the resending process of the second subnet, any node can still interrupt the reception of data fragments of the first data, that is, repeat steps S203 to S208 until the complete first data is received.

[0095] Figure 3 A third optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown and will be explained according to each step.

[0096] Step S301: The first node determines whether a switching condition is met.

[0097] In some embodiments, the first node is any node connected to the first subnet.

[0098] The specific step flow of step S301 is the same as that of step S201 and will not be repeated here.

[0099] Step S302: In response to the first node confirming that the switching condition is met, the first node switches from the first subnet to the second subnet and receives the first data sent by the second subnet.

[0100] The specific step flow of step S302 is the same as that of step S202 and will not be repeated here.

[0101] Step S303: The first node confirms whether the data fragments corresponding to the received first data can constitute the first data.

[0102] In some embodiments, even if the first node remains connected to the second subnet, in the process of receiving the first data, the data fragments received by the first node may not constitute the first data due to network reasons. Therefore, the first node needs to confirm whether the data fragments corresponding to the received first data can constitute the first data. If the received data fragments can constitute the first data, execute step S304; if the received data fragments cannot constitute the first data, execute step S305.

[0103] Step S304: The first node sends first feedback information to the second subnet.

[0104] The specific step flow of step S304 is the same as that of step S206 and will not be repeated here.

[0105] Step S305: The first node sends second feedback information to the second subnet.

[0106] The specific step flow of step S305 is the same as that of step S207 and will not be repeated here.

[0107] Step S306: The first node determines whether a switching condition is met.

[0108] The specific step flow of step S306 is the same as that of step S208 and will not be repeated here.

[0109] In this way, through the data transmission method provided by the embodiment of the present disclosure, after the transmission on the second subnet is completed, the first node confirms whether the received data fragments can constitute the first data. If so, they constitute the first data and perform firmware upgrade based on the first data. If not, second feedback information is sent to the second subnet, indicating that it is not fully received. Subsequently, the second subnet resends the data fragments of the first data to ensure that the first node can receive the complete first data.

[0110] Figure 4 A fourth optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown and will be explained according to each step.

[0111] Step S401: In response to a first node switching from a first subnet to a second subnet, the second subnet sends first data to at least one node.

[0112] In some embodiments, in response to reaching a fixed time, the second subnet sends the first data to at least one node. The fixed time can be set to a time when the device corresponding to the first node is in an idle state (not transmitting data, not working or not connected to one of the host devices), such as non-working hours or a certain time on the weekend. For example, for an office building scenario, weekends or 22:00 to 6:00 the next day are non-working hours. After reaching the fixed time, at least one node switches from the first subnet to the second subnet, and the second subnet sends the first data to the first node.

[0113] In some other embodiments, in response to reaching a preset time, the second subnet sends the first data to at least one node. The preset time may be the time when the second subnet sends the first data, that is, the time when the second subnet sends the first data to the first subnet, and the first subnet sends the time when the second subnet sends the first data to at least one node connected to the first subnet in the form of broadcast, so that the at least one node accesses the second subnet at the time when the second subnet sends the first data and receives the data sent by the second subnet.

[0114] In some further embodiments, in response to the first node switching from the first subnet to the second subnet, ie, the second subnet detects access to the first subnet, the second subnet sends the first data to at least one node.

[0115] In some further embodiments, in response to the first node switching from the first subnet to the second subnet, and the proportion of nodes accessing the second subnet exceeds a first percentage, the second subnet sends the first data to at least one node.

[0116] In some embodiments, the size of the data sent by the second subnet is larger than the size of the data sent by the first subnet; for example, the data sent or received by the first subnet includes instruction data, and the instruction data is used to adjust the working state of the first node, or instruct the networked device to perform corresponding operations. The networked device may include switches, printers, water dispensers, computers and other office scene devices, and the instruction data may include instructions such as power on, power off, receiving data, uploading data, and turning on the switch; the first data sent by the second subnet includes update data, such as firmware upgrade data, which is used to support the upgrade function of each node.

[0117] In this way, through the data transmission method provided by the embodiment of the present disclosure, the gateway establishes two sets of independently operated communication channels, the first subnet is responsible for the uplink and downlink transmission of small data (indicative data), and the second subnet is responsible for the offline transmission of large data packets (update data); each node can choose to join the first subnet or the second subnet based on whether it meets the preset conditions or whether it is necessary. When joining the first subnet, it can receive or upload small data to realize the daily functions of the node corresponding to the networked device. When joining the second subnet, it can receive large data and upgrade the functions of the node corresponding to the networked device.

[0118] Figure 5 A fifth optional flow chart of the data transmission method provided in the embodiment of the present disclosure is shown, and will be explained according to each step.

[0119] Step S501: In response to a first node switching from a first subnet to a second subnet, the second subnet sends first data to at least one node.

[0120] The specific steps of step S501 are the same as those of step S401, and will not be repeated here. The first node is any node connected to the first subnet.

[0121] Step S502: receiving feedback information sent by at least one node. If the feedback information includes second feedback information, the second subnet sends second broadcast information to at least one node through the first subnet.

[0122] In some embodiments, the second broadcast information includes a second time when the second subnet sends the first data to the at least one node.

[0123] In some embodiments, the first feedback information is used to indicate that the first node receives all data fragments; the second feedback information is used to indicate the identifier of the data fragment that the first node lacks. If the first node does not receive all data fragments, it is unable to restore the first data based on the received data fragments, and therefore sends the second feedback information to the second subnet to instruct the second subnet to send the first data again.

[0124] Step S503: In response to reaching the second time, the second subnet sends the first data.

[0125] In some embodiments, the second moment may be a fixed moment. For example, according to step S501, the second node sends the first data at a fixed moment, and the second moment may be a moment 1 hour, 2 hours, 4 hours, or 24 hours, 3 days, or 7 days apart from the moment sent in step S501. The second moment may also be a preset moment, that is, the second subnet sends the second broadcast information to at least one node through the first subnet, and the second broadcast information includes the second moment when the second subnet sends the first data to the at least one node; the second moment may also be the moment when more than or equal to the second percentage of nodes connect to the second subnet; the second subnet determines the percentage of the currently connected subnet according to the number of nodes connected to the second subnet and the number of received second feedback information, and compares it with the second percentage. The second percentage can be set according to actual needs; the second moment may also be the moment when the node sending the second feedback information accesses the second subnet, that is, the second subnet determines that the nodes sending the second feedback information are all connected to the second subnet, and then determines that the second moment has arrived.

[0126] In some embodiments, after the second subnet sends the first data at the second moment, step S502 to step S503 are repeated until all the received feedback information is the first feedback information, that is, all nodes receive the complete first data, and then the process ends.

[0127] In this way, through the data transmission method provided by the embodiment of the present disclosure, when the first node fails to receive, the second node sends the first data again at the second moment, ensuring that the first node receives all the first data and can perform firmware upgrades based on the first data.

[0128] Figure 6 A sixth optional flow chart of the data transmission method provided in an embodiment of the present disclosure is shown and will be explained according to each step.

[0129] Step S601: In response to a first node satisfying a switching condition, the first node switches from the first subnet to the second subnet.

[0130] The specific step flow of step S601 is the same as that of step S101 and will not be repeated here.

[0131] Step S602: the second subnet sends first data to at least one node.

[0132] The specific step flow of step S602 is the same as that of step S402 and will not be repeated here.

[0133] Figure 7 A seventh optional flow chart of the data transmission method provided in an embodiment of the present disclosure is shown.

[0134] In normal situations, all nodes are connected to the first subnet to send and receive small data packets. When the gateways corresponding to the first subnet and the second subnet download the large data packet (i.e., the first data, such as the firmware package for upgrading the node), the gateway begins to prepare to distribute the large data packet to the node. The first step is to send a message to all nodes through the first subnet: the big data broadcast is expected to start at the first moment.

[0135] After receiving the broadcast, each node decides whether to receive the large data packet. When the first predetermined moment arrives, the node that decides to receive the large data packet switches its channel to the second subnet and starts receiving the large data packet. The large data packet is divided into data fragments of equal size, and each data fragment has a fixed format number (i.e., a unique identifier). After receiving each data fragment, each node caches it in its own memory. Any node can exit the second subnet at any time to end receiving the large data packet, for example, if they have to process an urgent upload information operation. At this time, they will switch the channel to the first subnet and complete the operation. After completing the operation, they can return to the second subnet and continue to receive large data packets.

[0136] When the second subnet of the gateway completes the distribution of the large data packet, it will send an end data fragment to inform all nodes of the end of the process and close the second subnet. For any node, when it receives the large data packet completely (it can be determined by whether there are unreceived data fragments), it will send a message to the gateway (first feedback information) to indicate that it has completely received the large data packet. Otherwise, it will send a message to the gateway to inform the unique identifier of the data fragment it missed (i.e., the second feedback information). The gateway will count all nodes. If it is found that there is a node that has not replied that it has completely received the large data packet, that is, it has replied with the unique identifier of the unreceived data fragment, it will plan the next broadcast. Otherwise, the next broadcast will not be planned. And the gateway will record all the missed data fragment numbers. The gateway will repeat the broadcast, and each broadcast will only transmit the omitted data fragment numbers. When all nodes inform that they have completely received the large data packet, the process ends.

[0137] Thus, through the data transmission method provided by the embodiment of the present disclosure, the gateway can establish two sets of independently operated transmissions: the first subnet is responsible for the uplink and downlink transmission of small data, and the second subnet is responsible for the downlink transmission of large data packets. Each node can choose to join the first subnet or the second subnet by itself. In the first subnet, the node can receive or upload small data, and in the second subnet, it can receive large data packets, thus realizing the scheme of transmitting large data packets in a low-end local area network.

[0138] Figure 8 A first optional structural diagram of a data transmission device provided in an embodiment of the present disclosure is shown, and will be explained according to each step.

[0139] In some embodiments, the data transmission device 700 is arranged at each node, and includes a first receiving unit 701 .

[0140] The first receiving unit 701 is configured to switch from the first subnet to the second subnet in response to satisfying the switching condition, and receive the first data sent by the second subnet;

[0141] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0142] The first receiving unit 701 is specifically configured to receive at least two data fragments obtained by splitting the first data; each of the at least two data fragments has a unique identifier;

[0143] The at least two data segments are cached in a memory of the first node.

[0144] In some optional embodiments, the data transmission device further includes a switching unit 702 .

[0145] The switching unit 702 is configured to switch from the second subnet to the first subnet in response to receiving the first task, and execute the first task based on the first subnet;

[0146] In response to the completion of the execution of the first task, the first subnet is switched to the second subnet to receive the data fragments sent by the second subnet.

[0147] In some optional embodiments, the data transmission device further includes an uploading unit 703 .

[0148] The uploading unit 703 is used to confirm whether the data segments corresponding to the received first data can constitute the first data after receiving the first data sent by the second subnet;

[0149] In response to the data fragments being able to constitute the first data, first feedback information is sent to the second subnet, and based on the unique identifier of each data fragment, all received data fragments are restored to the first data; the first feedback information is used to instruct the first node to receive all data fragments;

[0150] In response to the data fragments being unable to constitute the first data, second feedback information is sent to the second subnet, where the second feedback information is used to indicate an identifier of the data fragment that the first node lacks.

[0151] After sending an identifier of the missing data fragment to the second subnet, the first receiving unit 701 is also used to: receive the second broadcast information through the first subnet, and determine the second time when the second subnet sends the first data based on the second broadcast information; in response to reaching the second time, switch from the first subnet to the second subnet and receive the first data sent by the second subnet.

[0152] Fig. 9 A second optional structural diagram of the data transmission device provided in an embodiment of the present disclosure is shown, and will be explained according to each step.

[0153] In some embodiments, the data transmission device 900 includes a first sending unit 901 .

[0154] The first sending unit 901 is configured to send first data to at least one node in response to the first node switching from the first subnet to the second subnet;

[0155] The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

[0156] In some embodiments, the data transmission device 900 further includes a second receiving unit 902 .

[0157] The second receiving unit 902 is configured to receive feedback information sent by at least one node, where the feedback information includes first feedback information and second feedback information;

[0158] If the feedback information includes second feedback information, the second subnet sends second broadcast information to at least one node through the first subnet, and the second broadcast information includes a second time when the second subnet sends the first data to the at least one node;

[0159] The first feedback information is used to instruct the first node to receive all data fragments; and the second feedback information is used to indicate the unique identifier of the data fragment missing from the first node.

[0160] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device and a readable storage medium.

[0161] Fig.10A schematic block diagram of an example electronic device 800 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0162] like Fig.10 As shown, the electronic device 800 includes a computing unit 801, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 802 or a computer program loaded from a storage unit 808 into a random access memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the electronic device 800 can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.

[0163] Multiple components in the electronic device 800 are connected to the I / O interface 805, including: an input unit 806, such as a keyboard, a mouse, etc.; an output unit 807, such as various types of displays, speakers, etc.; a storage unit 808, such as a disk, an optical disk, etc.; and a communication unit 809, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 809 allows the electronic device 800 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0164] The computing unit 801 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 801 performs the various methods and processes described above, such as data transmission methods. For example, in some embodiments, the data transmission method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 808. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 800 via ROM 802 and / or communication unit 809. When the computer program is loaded into RAM 803 and executed by the computing unit 801, one or more steps of the data transmission method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the data transmission method in any other appropriate manner (e.g., by means of firmware).

[0165] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0166] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0167] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0168] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0169] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0170] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

[0171] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0172] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of the present disclosure, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0173] The above is only a specific embodiment of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.

Claims

1. A data transmission method, the method comprising: In response to the first node satisfying the switching condition, the first node switches from the first subnet to the second subnet, and receives the first data sent by the second subnet; The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

2. According to the method of claim 1, the receiving the first data sent by the second subnet comprises: Receiving at least two data fragments obtained by splitting the first data; Each of the at least two data fragments has a unique identifier; The at least two data segments are cached in a memory of the first node.

3. The method according to claim 1 or 2, further comprising: In response to the first node receiving the first task, the first node switches from the second subnet to the first subnet, and performs the first task based on the first subnet; In response to the completion of the execution of the first task, the first node switches from the first subnet to the second subnet and receives the data fragments sent by the second subnet.

4. The method according to claim 1, after receiving the first data sent by the second subnet, the method further comprises: The first node confirms whether the data fragments corresponding to the received first data can constitute the first data; In response to the data fragments being able to constitute the first data, the first node sends first feedback information to the second subnet, and based on the unique identifier of each data fragment, restores all received data fragments into the first data; the first feedback information is used to instruct the first node to receive all data fragments; In response to the data fragments being unable to constitute the first data, second feedback information is sent to the second subnet, where the second feedback information is used to indicate an identifier of the data fragment that the first node lacks.

5. The method according to claim 4, after sending the identifier of the missing data fragment to the second subnet, the method further comprises: The first node receives the second broadcast information through the first subnet, and determines a second time when the second subnet sends the first data based on the second broadcast information; In response to reaching the second moment, the first node switches from the first subnet to the second subnet, and receives the first data sent by the second subnet.

6. A data transmission method, the method comprising: In response to the first node switching from the first subnet to the second subnet, the second subnet sends the first data to at least one node; The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

7. The method according to claim 6, after the second subnet sends the first data to at least one node, the method further comprises: receiving feedback information sent by at least one node, where the feedback information includes first feedback information and second feedback information; If the feedback information includes second feedback information, the second subnet sends second broadcast information to at least one node through the first subnet, and the second broadcast information includes a second time when the second subnet sends the first data to the at least one node; The first feedback information is used to instruct the first node to receive all data fragments; and the second feedback information is used to indicate the unique identifier of the data fragment missing from the first node.

8. A data transmission device, comprising: A first receiving unit, configured to switch from the first subnet to the second subnet in response to the first node satisfying a switching condition, and receive first data sent by the second subnet; The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

9. A data processing device, comprising: A first sending unit, configured to send first data to at least one node in response to the first node switching from the first subnet to the second subnet; The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

10. A data transmission method, comprising: In response to the first node satisfying a switching condition, the first node switches from the first subnet to the second subnet; The second subnet sends the first data to at least one node; The size of the data sent from the second subnet is greater than the size of the data sent from the first subnet.

Citation Information

Cited By

  • Terminal residence method and apparatus

    WO2025228198A1