Disclosure of Invention
The embodiment of the invention provides a data transmission method and device, which are used for improving the data transmission speed and optimizing the data transmission process.
In a first aspect, an embodiment of the present invention provides a data transmission method, which is applied to a first network node, and the method includes: acquiring communication quality of a plurality of communication links connected with a first network node; according to the communication quality of the communication links, determining a first link in the communication links, wherein the first link is a link in the communication links, and the communication quality of the first link meets a first preset condition; sending first information to a second network node corresponding to a first link through the first link, wherein the first information is used for indicating the second network node to send data to be transmitted to the first network node through the first link; data to be transmitted is received from the second network node over the first link.
According to the data transmission method provided by the invention, the link with the communication quality meeting the first preset condition is selected from the plurality of communication links connected with the first network node for data transmission, and the data to be transmitted is received, so that the first network node can realize the optimized selection of the communication quality when receiving the data, the transmission speed in the data transmission process is improved, and the data transmission process is optimized.
In a possible implementation manner, the data to be transmitted is non-transmitted data in a data packet corresponding to the data to be transmitted; prior to receiving data to be transmitted from the second network node over the first link, the method further comprises: receiving second information sent by a second network node through a first link, wherein the second information is used for indicating the transmission progress of a data packet corresponding to data to be transmitted determined by a first network node; sending a second response to the second network node over the first link, the second response including a transmission schedule. Therefore, the first network node can send the transmission progress of the data package corresponding to the data to be transmitted to the second network node before the data to be transmitted is transmitted, so that the second network node can only send the untransmitted data in the data package corresponding to the data to be transmitted to the first network node, the repeated transmission of the data is avoided, the data transmission speed is improved, and the data transmission process is more accurate.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In one possible implementation, before obtaining the communication quality of the plurality of communication links connected to the first network node, the method further includes: and receiving third information, wherein the third information is used for indicating that the communication quality of a second link meets a second preset condition when the first network node receives a data packet corresponding to the data to be transmitted through the second link, and the second link is one of the communication links. Therefore, the first network node can measure the communication quality of the communication link connected with the first network node again when the second link fails or the communication quality is low in the data transmission process, optimally select the communication link based on the communication quality, and restart the data transmission process. The process does not need maintenance personnel to maintain, the switching of the communication links is automatically completed, the link switching time is reduced, and the data transmission speed is improved.
In a possible implementation manner, sending, by a first link, first information to a second network node corresponding to the first link includes: and sending first information to a second network node through the first link under the condition that the first link and/or the second link meet a third preset condition, wherein the second link is a communication link used when the first network node receives a data packet corresponding to the data to be transmitted.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
In a second aspect, the present invention further provides a data transmission method, applied to a second network node, where the method includes: receiving first information sent by a first network node through a first link, wherein the first information is used for indicating a second network node to send data to be transmitted to the first network node through the first link; the first link is a link, the communication quality of which meets a first preset condition, of a plurality of communication links connected with the first network node; and sending the data to be transmitted to the first network node through the first link.
According to the data transmission method provided by the invention, the second network node can send the data to be transmitted to the first network node through the link with the communication quality meeting the first preset condition in the plurality of communication links connected with the first network node, so that the optimal selection of the communication quality in the data transmission process is realized, the transmission speed in the data transmission process is improved, and the data transmission process is optimized.
In a possible implementation manner, before sending the data to be transmitted to the first network node through the first link, the method further includes: sending second information to the first network node through the first link, wherein the second information is used for indicating the first network node to determine the transmission progress of a data packet corresponding to the data to be transmitted; receiving a second response sent by the first network node through the first link, wherein the second response comprises a transmission progress; and determining data to be transmitted according to the second response, wherein the data to be transmitted is the data which is not transmitted in the data packet. Therefore, the second network node can determine the data to be transmitted according to the transmission progress of the data packet corresponding to the data to be transmitted, and determines the data which is not transmitted in the data packet as the data to be transmitted, so that repeated transmission of the data is avoided, the data transmission speed is increased, and the data transmission process is more accurate.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In one possible implementation manner, determining data to be transmitted according to the second response includes: determining the initial address of the data which is not transmitted in the data packet according to the transmission progress of the data packet in the second response; and determining data to be transmitted according to the data packet and the initial address of the data not to be transmitted, wherein the initial address of the data to be transmitted is the initial address of the data not to be transmitted, and the end address of the data to be transmitted is the end address of the data packet.
In one possible implementation, before receiving the first information sent by the first network node through the first link, the method further includes: and sending third information to the first network node, wherein the third information is used for indicating that the communication quality of the second link meets a second preset condition when the second network node sends a data packet corresponding to the data to be transmitted to the first network node through the second link, and the second link is one of the communication links.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
In a third aspect, an embodiment of the present invention provides a first network node, including: a communication module and a processing module; the communication module is used for acquiring the communication quality of a plurality of communication links connected with the first network node; the processing module is used for determining a first link in the plurality of communication links according to the communication quality of the plurality of communication links, wherein the first link is a link of which the communication quality meets a first preset condition in the plurality of communication links; the communication module is further configured to send first information to a second network node corresponding to the first link through the first link, where the first information is used to instruct the second network node to send data to be transmitted to the first network node through the first link; data to be transmitted is received from the second network node over the first link.
In a possible implementation manner, the data to be transmitted is non-transmitted data in a data packet corresponding to the data to be transmitted; the communication module is further configured to receive second information sent by a second network node through the first link, where the second information is used to instruct the first network node to determine a transmission progress of a data packet corresponding to the data to be transmitted; sending a second response to the second network node over the first link, the second response including a transmission schedule.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In a possible implementation manner, the communication module is further configured to receive third information, where the third information is used to indicate that, when the first network node receives a data packet corresponding to the data to be transmitted through the second link, the communication quality of the second link meets a second preset condition, and the second link is one of the multiple communication links.
In a possible implementation manner, the communication module is specifically configured to send the first information to the second network node through the first link when the first link and/or the second link meet a third preset condition, where the second link is a communication link used when the first network node receives a data packet corresponding to the data to be transmitted.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
In a fourth aspect, the present invention provides a second network node, comprising: a communication module and a processing module; the communication module is used for receiving first information sent by a first network node through a first link, wherein the first information is used for indicating a second network node to send data to be transmitted to the first network node through the first link; the first link is a link, the communication quality of which meets a first preset condition, of a plurality of communication links connected with the first network node; and sending the data to be transmitted to the first network node through the first link.
In a possible implementation manner, the communication module is further configured to send second information to the first network node through the first link, where the second information is used to instruct the first network node to determine a transmission progress of a data packet corresponding to the data to be transmitted; receiving a second response sent by the first network node through the first link, wherein the second response comprises a transmission progress; and the processing module is used for determining data to be transmitted according to the second response, wherein the data to be transmitted is the data which is not transmitted in the data packet.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In a possible implementation manner, the processing module is specifically configured to determine, according to a transmission progress of the data packet in the second response, a start address of untransmitted data in the data packet; and determining data to be transmitted according to the data packet and the initial address of the data not to be transmitted, wherein the initial address of the data to be transmitted is the initial address of the data not to be transmitted, and the end address of the data to be transmitted is the end address of the data packet.
In a possible implementation manner, the communication module is further configured to send third information to the first network node, where the third information is used to indicate that, when the second network node sends a data packet corresponding to data to be transmitted to the first network node through the second link, the communication quality of the second link meets a second preset condition, and the second link is one of the multiple communication links.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
In a fifth aspect, the present invention also provides a first network node, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the steps of the method according to the first aspect or any of the possible implementations of the first aspect.
In a sixth aspect, an embodiment of the present invention provides a second network node, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the computer program to implement the steps of the method in the second aspect or any possible implementation manner of the second aspect.
In a seventh aspect, the present invention provides a computer-readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the computer program implements the steps of the method described in the first aspect or the second aspect, and any possible implementation manner of the first aspect or the second aspect.
For technical effects brought by any one implementation manner of the third aspect to the seventh aspect, reference may be made to technical effects brought by a corresponding implementation manner of the first aspect or the second aspect, and details are not described here again.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.
In the description of the present invention, "/" means "or" unless otherwise specified, for example, a/B may mean a or B. "and/or" herein is merely an association describing an associated object, and means that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. Further, "at least one" or "a plurality" means two or more. The terms "first", "second", and the like do not necessarily limit the number and execution order, and the terms "first", "second", and the like do not necessarily limit the difference.
In the embodiments of the present application, words such as "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g.," is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word "exemplary" or "such as" is intended to present relevant concepts in a concrete fashion for ease of understanding.
Furthermore, the terms "including" and "having," and any variations thereof, as referred to in the description of the present application, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or modules is not limited to the listed steps or modules, but may alternatively include other steps or modules not listed or inherent to such process, method, article, or apparatus.
In order to make the objects, technical solutions and advantages of the present invention more apparent, some concepts related to the embodiments of the present invention will be briefly described below.
1. Distributed power control system (BMS)
The distributed BMS is used to implement intelligent management of a plurality of battery cells, maintain each battery cell, prevent overcharge and overdischarge of a battery, extend the life span of the battery, and monitor the state of the battery.
Fig. 1 is a schematic diagram of a distributed BMS. The distributed BMS includes a Main Battery Management Unit (MBMU), an auxiliary battery management unit (SBMU), and a Battery Management Unit (BMU). Wherein, an MBMU corresponds to a plurality of SBMUs, and an SBMU corresponds to a plurality of BMUs. The BMU is responsible for data acquisition and monitoring of one or more single-core batteries; the SBMU is responsible for data aggregation and forwarding of a plurality of BMUs and plays a role of a relay, so that data interaction between the BMUs and the MBMU is realized; the MBMU is responsible for data acquisition, monitoring, control and other functions of the distributed BMS.
2. Universal calibration protocol (XCP)
XCP is a bus protocol proposed by the association for standardization of automation and measurement systems (ASAM), and has the advantage of supporting multiple communication methods. The XCP-format data packet supports various communication types such as Ethernet communication, serial communication, control area network communication and the like. And the terminal can generate the data packet in the XCP format only by simply processing the original content of the data packet, that is, the data packet is set to the XCP format, so that the XCP format can adapt to various communication types, and the processing is simple.
The data packets in the XCP format can be transmitted between the terminals. For example, the packet transmission process between the MBMU and the SBMU in fig. 1. A data packet in XCP format may carry a variety of different instructions. As shown in Table 1, different instructions have different effects.
Illustratively, the instruction 003 corresponds to an instruction FDH, which is used to acquire an operating state of the SBMU or the BMU, where the operating state of the SBMU may include a normal state, an upgrade state, a relay state, and the like. The operating state of the BMU may include a normal state, an upgrade state, and the like.
TABLE 1
Instruction identification
|
Instructions
|
Function of
|
001
|
FFH
|
Positive response
|
002
|
FEH
|
Negative response
|
003
|
FDH
|
Obtaining the working state of SBMU or BMU
|
004
|
F8H
|
Obtaining seeds for data packets
|
005
|
F7H
|
Key unlocking
|
006
|
F6H
|
Setting a transport address
|
007
|
D2H
|
Start of upgrade
|
008
|
D1H
|
Erasing flash memory regions
|
009
|
D0H
|
Transmitting data
|
010
|
CFH
|
Reduction of position
|
011
|
F3H
|
CRC checking
|
012
|
FAH
|
Obtaining breakpoint addresses |
2. Cyclic redundancy check code (CRC)
CRC is a highly capable error detection, error correction code, and the circuitry to implement the encoding and code detection is relatively simple and can be used for data communication and data verification in computer networks.
For example, during the data transmission process of the MBMU and the SBMU shown in fig. 1, the MBMU and the SBMU need to perform CPC check on the received data packet. For example, assuming that the MBMU sends an instruction to the SBMU to instruct the SBMU to reset, the SBMU needs to perform CPC check on the instruction, and after the SBMU determines that the CPC check is successful, the reset procedure is entered.
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following description will be made by way of specific embodiments in conjunction with other drawings of the present invention.
As described in the background art, the current data transmission process has the technical problem of low data transmission efficiency due to large data volume and long-time transmission.
For example, as shown in fig. 1, in a distributed BMS, the SBMU and the BMU need to be upgraded frequently to continuously update the operation programs in the SBMU and the BMU, so as to ensure the operation effects of the SBMU and the BMU. On the one hand, the MBMU needs to transmit the data packet for upgrading the SBMU directly to the SBMU. On the other hand, the MBMU can transmit the data packet for upgrading the BMU to the SBMU firstly, and then the SBMU transmits the data packet to the BMU, so that the transmission of the upgrading data packet is realized. However, the data volume of the upgrade data packet is large, resulting in a long time required for the data transmission process in the upgrade process of the distributed BMS.
First, for data transmission during the upgrade process of the distributed BMS, a low-rate communication link may extend the transmission time of data. Secondly, there may be a case of transmission interruption due to long-time transmission in the upgrade process of the distributed BMS, which requires a maintenance person to reestablish a connection, resulting in retransmission of a data packet. However, since the distributed BMS is located in different areas or regions, maintenance personnel need to spend a lot of time to repair the distributed BMS, so that the upgrading efficiency of the distributed BMS is low.
In order to solve the above technical problem, an embodiment of the present invention provides a data transmission method. The data transmission method provided by the embodiment of the invention can be applied to various data transmission scenes, such as a data transmission scene in the upgrading process of a distributed BMS, a data transmission scene of a plurality of nodes in a local area network or a wide area network, a data transmission scene of a plurality of nodes in a factory area or an enterprise, and the like. As can be known by those skilled in the art, with the development of scientific technology and the emergence of new service scenarios, the technical solution provided in the embodiments of the present application is also applicable to similar technical problems.
The following describes in detail a data transmission method provided by an embodiment of the present application, with reference to other drawings in the present application and taking the distributed BMS shown in fig. 1 in the present application as an example.
As shown in fig. 2, an embodiment of the present invention provides a data transmission method, where an execution subject of the method is a first network node, and the method includes steps S201 to S204.
S201, the first network node acquires communication quality of a plurality of communication links connected with the first network node.
The first network node is any node in a data transmission network and has the capacity of receiving and sending data. Illustratively, the first network node may be an MBMU, or an SBMU, or a BMU in the distributed BMS shown in fig. 1.
In some embodiments, the communication link is a link between the first network node and another network node except the first network node, and is used for implementing communication between the first network node and the other network node for data transmission.
In some embodiments, the communication link may be represented by a type of communication or interface between the first network node and the other network node. Illustratively, the communication link may comprise at least one of: an Ethernet communication link, a serial communication link and a control area network communication link.
It is understood that the first network node may establish an ethernet communication link with other network nodes through the ethernet interface, so as to implement ethernet communication. The first network node can also establish a serial communication link with other network nodes through the serial interface to realize serial communication. The first network node CAN also establish a control area network communication link with other network nodes through the CAN bus interface to realize control area network communication.
In some embodiments, the communication quality is used to indicate the transmission speed of the data transmission. Illustratively, the communication quality may be a signal strength of the communication link. As another example, the communication quality may also be a transmission delay corresponding to the communication link.
As a possible implementation manner, the first network node may send, to the other network nodes, indication information for instructing the other network nodes to measure the communication quality through the plurality of communication links. The first network node receives response information sent by other network nodes through a plurality of links, and the response information may include signal strength of the communication link or transmission delay corresponding to the communication link. Thus, the first network node can acquire the communication quality of a plurality of communication links connected with the first network node.
S202, the first network node determines a first link in the plurality of communication links according to the communication quality of the plurality of communication links.
The first link is a link, of which the communication quality satisfies a first preset condition, among the plurality of communication links.
As a possible implementation manner, the first network node may directly determine, as the first link, a link with the highest signal strength among the plurality of communication links.
As another possible implementation manner, the first network node may directly determine, as the first link, a link with the smallest transmission delay among the plurality of communication links.
As another possible implementation manner, the first network node may determine the transmission speeds of the plurality of communication links according to the communication qualities of the plurality of communication links, and determine a link with the highest transmission speed among the plurality of communication links as the first link.
S203, the first network node sends the first information to the second network node corresponding to the first link through the first link.
In this embodiment of the application, the first information is used to instruct the second network node to send data to be transmitted to the first network node through the first link.
And the second network node is a network node corresponding to the first link. Illustratively, a first end of the first link is connected to the first network node and a second end of the first link is connected to the second network node. For example, assuming that the first network node may be SBMU2 in the distributed BMS shown in fig. 1, the second network node may be MBMU or SBMU 1. The MBMU is a superior device of the SBMU2, and the SBMU1 is a peer device of the SBMU 2.
In some embodiments, the first information may comprise an identification of the data to be transmitted. The second network node can determine the data to be transmitted according to the identifier of the data to be transmitted.
In some embodiments, the first information may also include other information. E.g. an identification of the first link, an identification of the first network node, an identification of the second network node, etc.
In some embodiments, the data to be transmitted may be a complete data package, such as an upgrade data package in the distributed BMS shown in fig. 1.
In other embodiments, the data packet to be transmitted may also be a part of the data in the data packet. For example, a portion of the upgrade data package in the distributed BMS shown in fig. 1. E.g., to upgrade untransmitted data in the data packet.
In some embodiments, the data format of the data to be transmitted is an XCP format. The XCP format data packet supports various communication types such as Ethernet communication, serial communication, control area network communication and the like. And the data packet in the XCP format can be generated only by simply processing the original content of the data to be transmitted. Therefore, the data to be transmitted is set to be in the XCP format, so that the XCP format can adapt to various communication types and communication links, and the processing is simple.
Compared with the method and the device for converting the format of the data to be transmitted after the communication link is converted, the method and the device for converting the format of the data to be transmitted do not need to convert the format of the data to be transmitted, processing procedures in the data transmission process are simplified, and operation procedures are simpler.
S204, the first network node receives the data to be transmitted from the second network node through the first link.
For example, as shown in fig. 1, assuming that the first network node is SBMU2 and the second network node is MBMU, SBMU2 may receive data to be transmitted from the MBMU through the link between SBMU2 and the MBMU.
According to the data transmission method provided by the invention, the link with the communication quality meeting the first preset condition is selected from the plurality of communication links connected with the first network node for data transmission, and the data to be transmitted is received, so that the first network node can realize the optimized selection of the communication quality when receiving the data, the transmission speed in the data transmission process is improved, and the data transmission process is optimized.
Optionally, as shown in fig. 3, the data transmission method provided by the present invention further includes, before step 204, steps S301 to S302.
S301, the first network node receives second information sent by the second network node through the first link.
The second information is used for indicating the first network node to determine the transmission progress of the data packet corresponding to the data to be transmitted.
In some embodiments, the transmission schedule is used to indicate schedule information of transmitted data in the data packet.
Illustratively, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
As a possible implementation manner, the first network node may determine, according to log information stored in the first network node, a transmission progress of a data packet corresponding to the data to be transmitted. For example, the log information of the first network node stores the progress information of the transmitted data in the data packet corresponding to the data to be transmitted, so that the first network node can determine the transmission progress of the data packet corresponding to the data to be transmitted according to the progress information of the transmitted data.
As another possible implementation manner, the first network node may further query a data packet corresponding to the received data to be transmitted, which is stored in the first network node, and determine a transmission progress of the data packet corresponding to the data to be transmitted.
In some embodiments, the first network node does not start receiving the data packet corresponding to the data to be transmitted, and the transmission progress of the data packet corresponding to the data to be transmitted is zero.
In another embodiment, a first network node has received a data packet corresponding to data to be transmitted, and the first network node stores therein transmitted data of the data packet corresponding to the data to be transmitted.
It can be understood that, in the case that the first network node stores transmitted data of a data packet corresponding to the data to be transmitted, the data to be transmitted may be untransmitted data in the data packet corresponding to the data to be transmitted.
It should be noted that the data to be transmitted is only the data that is not transmitted in the data packet corresponding to the data to be transmitted, which can reduce the data amount of data transmission after the communication link is switched, reduce the data transmission time, improve the data transmission speed, and optimize the data transmission process.
S302, the first network node sends a second response to the second network node through the first link.
Wherein the second response comprises a transmission schedule.
For example, as shown in fig. 1, assuming that the first network node is SBMU2 and the second network node is MBMU, SBMU2 sends first information to the MBMU via the first link, where the first information is used to instruct the MBMU to send data to be transmitted to SBMU2 via the first link.
The MBMU, after receiving the first information, sends a second information to SBMU2 over the first link. The SBMU2 receives second information sent by the MBMU, where the second information is used to instruct the SBMU2 to determine a transmission schedule of a data packet corresponding to the data to be transmitted. After SBMU2 determines the transmission schedule, SBMU2 sends a second response to the MBMU over the first link that includes the transmission schedule. Therefore, the SBMU can send the transmission progress of the data packet corresponding to the data to be transmitted to the MBMU through the first link.
Based on the embodiment shown in fig. 3, the first network node may send the transmission progress of the data packet corresponding to the data to be transmitted to the second network node before the data to be transmitted is transmitted, so that the second network node may send only the non-transmitted data in the data packet corresponding to the data to be transmitted to the first network node, thereby avoiding repeated transmission of the data, improving the speed of data transmission, and making the data transmission process more accurate.
Optionally, as shown in fig. 4, before step 201, the data transmission method provided by the present invention further includes step S401.
S401, the first network node receives the third information.
The third information is used for indicating that the communication quality of the second link meets a second preset condition when the first network node receives the data packet through the second link.
In some embodiments, the second link is one of a plurality of communication links. The second link is used by the second network node to transmit data packets to the first network node before the communication link is switched.
Illustratively, the type of the second link may be the same as the type of the first link. For example, the first link and the second link are both of the type of ethernet communication link. For example, the first link is an ethernet communication link between the MBMU and the SBMU2 shown in fig. 1, and the second link is an ethernet communication link between the SBMU1 and the SBMU2 shown in fig. 1.
For example, the type of the first link may be different from the type of the second link. For example, the first link is of the type controlling a lan communication link. The second link is of the type of an ethernet communication link. For example, the first link is a control area network communication link between the MBMU and the SBMU2 shown in fig. 1, and the second link is an ethernet communication link between the MBMU and the SBMU2 shown in fig. 1.
In some embodiments, the communication quality of the second link satisfying the second preset condition may be that the communication quality of the second link is less than the first threshold. For example, the second preset condition may be that the transmission speed of the data is less than the first threshold. The first threshold is used to represent a minimum threshold for communication quality during transmission of the data packet.
It can be understood that, during the process of transmitting the data packet to the first network node by the second network node, the second network node may detect the communication quality of the second link, and when the communication quality of the second link satisfies a second preset condition, the second network node may send third information to the first network node to instruct the first network node to perform switching of the communication link, so as to optimize the data transmission process.
In other embodiments, the communication quality of the second link satisfying the second predetermined condition may further be a failure of the second link.
Illustratively, the failure of the second link may be a break in the second link. For example, if the second link is a control area network communication link, the failure of the second link may be a CAN bus interface failure, or a line failure between CAN bus interfaces in the second link.
It should be noted that, the first network node receives the third information, which may be understood as event-triggered switching of the communication link by the first network node. For example, if the third information is used to indicate that the communication quality of the second link is less than the first threshold, the first network node determines that the communication quality of the second link is poor after receiving the third information, and needs to switch the communication link. For another example, if the third information is used to indicate that the second link fails, the first network node determines that data transmission cannot be performed through the second link after receiving the third information, and needs to switch the communication link. Therefore, after the first network node receives the third information, the communication link is switched, and the transmission process of the data is optimized.
Based on the embodiment shown in fig. 4, the first network node may, during data transmission, when the second link fails or has low communication quality, re-measure the communication quality of the communication link connected to the first network node, and select the first link whose communication quality meets the first preset condition to restart the data transmission process. The process does not need maintenance personnel to maintain, the switching of the communication links is automatically completed, the link switching time is reduced, and the data transmission speed is improved.
Optionally, as shown in fig. 5, step 203 of the data transmission method provided by the present invention may also be specifically implemented as steps S501 to S502.
S501, the first network node judges the communication quality of the first link and the second link.
And S502, under the condition that the first link and/or the second link meet a third preset condition, the first network node sends first information to the second network node through the first link.
The second link is a communication link used when the first network node receives a data packet corresponding to the data to be transmitted.
In some embodiments, the third preset condition may include the communication quality of the first link being greater than a second threshold. The second threshold is used to represent a maximum threshold for communication quality during transmission of the data packet.
In other embodiments, the third predetermined condition may include the communication quality of the second link being less than the first threshold.
It can be understood that, in addition to the first network node receiving the third information to enter the handover process of the communication link, the first network node may further detect the communication quality of the second link, and in a case that the first network node determines that the communication quality of the second link is smaller than the first threshold, the first network node may directly switch the second link used for data transmission to the first link, so as to optimize the data transmission process.
In other embodiments, the third preset condition may further include that a difference between the communication quality of the first link and the communication quality of the second link is greater than a third threshold.
For example, the first network node may compare the transmission speed of untransmitted data in a transmitted data packet over the first link or over the second link, respectively. For example, if the difference between the transmission speed of the data not transmitted in the data packet transmitted through the first link and the transmission speed of the data not transmitted in the data packet transmitted through the second link is greater than the third threshold, the first network node may switch the second link to the first link, thereby reducing the data transmission time and optimizing the data transmission process.
For another example, the first network node may further determine whether the first link and the second link satisfy a third preset condition according to a remaining transmission time of data not transmitted in the data packet. For example, for data not transmitted in the data packet, if a difference between the remaining transmission time through the second link and the remaining transmission time through the first link is greater than a fourth threshold, the first network node determines that the first link and the second link satisfy a third preset condition.
It should be noted that frequent switching between communication links may cause the processing load of the first network node to increase, and reduce the processing speed of the first network node. Therefore, the value of the third threshold may be preset and may be determined by the first network node according to the actual situation. This application is not repeated.
Based on the embodiment shown in fig. 5, the first network node may perform real-time determination on the communication quality of the multiple communication links, and switch the data transmission link from the second link to the first link when detecting that the first link and/or the second link satisfy the third preset condition, so as to select the first link with better communication quality to restart the data transmission process, improve the data transmission speed, and optimize the data transmission process.
As shown in fig. 6, an embodiment of the present invention provides a data transmission method, where an execution subject of the method is a second network node, and the method includes steps S601 to S604.
S601, the second network node receives the first information sent by the first network node through the first link.
The first information is used for indicating the second network node to send data to be transmitted to the first network node through the first link.
In this embodiment, the first link is a link, of a plurality of communication links connected to the first network node, whose communication quality satisfies a first preset condition.
In some embodiments, the communication link comprises at least one of: an Ethernet communication link, a serial communication link and a control area network communication link.
In some embodiments, the data format of the data to be transmitted is an XCP format.
S602, the second network node sends the data to be transmitted to the first network node through the first link.
S601-S602 can refer to the descriptions of S203-S204 in FIG. 2, and are not described herein again.
Based on the embodiment shown in fig. 6, the second network node may send the data to be transmitted to the first network node through a link whose communication quality meets a first preset condition, among the multiple communication links connected to the first network node, so as to implement optimal selection of communication quality in a data transmission process, improve a transmission speed in the data transmission process, and optimize the data transmission process.
Optionally, as shown in fig. 7, the data transmission method provided by the present invention further includes, before step 602, steps S701 to S703.
S701, the second network node sends second information to the first network node through the first link.
The second information is used for indicating the first network node to determine the transmission progress of the data packet corresponding to the data to be transmitted.
In some embodiments, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
S702, the second network node receives a second response sent by the first network node through the first link.
Wherein the second response comprises a transmission schedule;
and S703, the second network node determines the data to be transmitted according to the second response.
The data to be transmitted is data which is not transmitted in the data packet.
As a possible implementation manner, the data to be transmitted may be determined according to the following manner, where the second network node determines, according to the transmission progress of the data packet in the second response, a start address of data that is not transmitted in the data packet; and determining data to be transmitted according to the data packet and the initial address of the data not to be transmitted, wherein the initial address of the data to be transmitted is the initial address of the data not to be transmitted, and the end address of the data to be transmitted is the end address of the data packet.
For example, the second network node may determine a starting address of untransmitted data in the data packet according to a percentage of transmission progress in the data packet.
For another example, the second network node may further determine a start address of data that is not transmitted in the data packet according to an end address of data that is transmitted in the data packet.
For another example, the second network node may further determine a starting address of untransmitted data in the data packet according to a file size of the transmitted data in the data packet.
Other descriptions in S701-S703 may refer to the descriptions in S301-S302 in fig. 3, and are not described herein again.
Based on the embodiment shown in fig. 7, the second network node may determine the data to be transmitted according to the transmission progress of the data packet corresponding to the data to be transmitted, and determine the data that is not transmitted in the data packet as the data to be transmitted, thereby avoiding repeated transmission of the data, improving the speed of data transmission, and making the data transmission process more accurate.
It can be seen that the above embodiments describe the technical solutions of the present invention in detail from the perspective of the first network node and the second network node, respectively. The relationship of the first network node and the second network node will now be described in detail in connection with fig. 1.
Optionally, the second network node is a superior device of the first network node. For example, taking the distributed BMS shown in fig. 1 as an example, the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU.
The first SBMU may be any one of SBMUs 1-SBMUn. The second SBMU may be another node of the SBMU1-SBMUn other than the first SBMU. The first BMU may be any node in BMU 11-BMUnn. The second BMU may be another node in the BMU11-BMUnn than the first BMU.
As shown in fig. 8, when the first network node is a first SBMU and the second network node is an MBMU, the data transmission method of the present invention may include steps S801 to S808.
S801 (optional), the MBMU sends the third information to the first SBMU.
S802, the first SBMU acquires the communication quality of a plurality of communication links connected with the first SBMU.
And S803, the first SBMU determines the first link in the plurality of communication links according to the communication quality of the plurality of communication links.
S804, the first SBMU sends first information to the MBMU through the first link. Correspondingly, the MBMU receives the first information sent by the first SBMU through the first link.
And S805, the MBMU sends the second information to the first SBMU through the first link, and correspondingly, the first SBMU receives the second information sent by the MBMU through the first link.
And S806, the first SBMU sends a second response to the MBMU through the first link. Correspondingly, the MBMU receives the second response sent by the first SBMU through the first link.
And S807, determining the data to be transmitted by the MBMU according to the second response.
And S808, the MBMU sends the data to be transmitted to the first SBMU through the first link. Correspondingly, the first SBMU receives the data to be transmitted from the MBMU through the first link.
Therefore, after the first SBMU receives the third information sent by the MBMU, the second link between the MBMU and the first SBMU is switched to the first link, the data transmission process is optimized, and the data transmission speed is improved.
Alternatively, as shown in fig. 9, step S801 may be replaced with step S901.
And S901, the second SBMU sends third information to the first SBMU.
It is understood that the second link is a communication link between the first SBMU and the second SBMU. And under the condition that the second link fails or the communication quality is lower, the second SBMU sends third information to the first SBMU. Therefore, after the first SBMU receives the third information, the second link for receiving the data packet is switched to the first link between the MBMU and the first SBMU, the data transmission process is optimized, and the data transmission speed is improved.
As shown in fig. 10, when the first network node is the first BMU and the second network node is the MBMU, the data transmission method of the present invention may include steps S1001 to S1008.
S1001 (optional), the MBMU sends the third information to the first BMU.
S1002, the first BMU obtains communication quality of a plurality of communication links connected with the first BMU.
S1003, the first BMU determines a first link in the plurality of communication links according to the communication quality of the plurality of communication links.
S1004, the first BMU sends first information to the MBMU through the first link. Correspondingly, the MBMU receives the first information sent by the first BMU through the first link.
S1005, the MBMU sends the second information to the first BMU through the first link, and correspondingly, the first BMU receives the second information sent by the MBMU through the first link.
And S1006, the first BMU sends a second response to the MBMU through the first link. Correspondingly, the MBMU receives a second response sent by the first BMU through the first link.
And S1007, the MBMU determines the data to be transmitted according to the second response.
And S1008, the MBMU sends the data to be transmitted to the first BMU through the first link. Correspondingly, the first BMU receives data to be transmitted from the MBMU through the first link.
Therefore, after receiving the third information sent by the MBMU, the first BMU switches the second link between the MBMU and the first BMU to the first link, so that the data transmission process is optimized, and the data transmission speed is increased.
Optionally, the second network node is a peer device of the first network node. For example, taking the distributed BMS shown in fig. 1 as an example, the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
The first SBMU may be any one of SBMUs 1-SBMUn. The second SBMU may be another node of the SBMU1-SBMUn other than the first SBMU. The first BMU may be any node in BMU 11-BMUnn. The second BMU may be another node in the BMU11-BMUnn than the first BMU.
As shown in fig. 11, when the first network node is a first SBMU and the second network node is a second SBMU, the data transmission method of the present invention may include steps S1101-S1108.
S1101 (optional), the second SBMU sends the third information to the first SBMU.
S1102, the first SBMU acquires the communication quality of a plurality of communication links connected with the first SBMU.
S1103, the first SBMU determines a first link among the plurality of communication links according to the communication quality of the plurality of communication links.
S1104, the first SBMU sends the first information to the second SBMU through the first link. Correspondingly, the second SBMU receives the first information sent by the first SBMU through the first link.
S1105, the second SBMU sends the second information to the first SBMU through the first link, and correspondingly, the first SBMU receives the second information sent by the second SBMU through the first link.
S1106, the first SBMU sends a second response to the second SBMU via the first link. Correspondingly, the second SBMU receives the second response sent by the first SBMU through the first link.
And S1107, the second SBMU determines data to be transmitted according to the second response.
And S1108, the second SBMU sends the data to be transmitted to the first SBMU through the first link. Correspondingly, the first SBMU receives the data to be transmitted from the second SBMU through the first link.
Therefore, after receiving the third information sent by the second SBMU, the first SBMU switches the second link between the second SBMU and the first SBMU to the first link, thereby optimizing the data transmission process and increasing the data transmission speed.
Alternatively, as shown in fig. 12, step S1101 may be replaced with step S1201.
And S1201, the MBMU sends third information to the first SBMU.
It is understood that the second link is a communication link between the MBMU and the first SBMU. And the MBMU sends third information to the second SBMU under the condition that the second link fails or the communication quality is low. Therefore, after the first SBMU receives the third information, the second link for receiving the data packet is switched to the first link between the first SBMU and the second SBMU, the transmission process of the data is optimized, and the data transmission speed is improved.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
The following are embodiments of the apparatus of the invention, reference being made to the corresponding method embodiments described above for details which are not described in detail therein.
Fig. 13 is a schematic structural diagram of a first network node according to an embodiment of the present invention, where the first network node 1300 is configured to implement the data transmission method described in the foregoing embodiment, and may optimize a data transmission process. The first network node 1300 comprises: a communication module 1301 and a processing module 1302.
A communication module 1301, configured to obtain communication qualities of a plurality of communication links connected to a first network node;
a processing module 1302, configured to determine, according to communication qualities of a plurality of communication links, a first link among the plurality of communication links, where the first link is a link whose communication quality satisfies a first preset condition among the plurality of communication links;
the communication module 1301 is further configured to send first information to a second network node corresponding to the first link through the first link, where the first information is used to instruct the second network node to send data to be transmitted to the first network node through the first link; data to be transmitted is received from the second network node over the first link.
In a possible implementation manner, the data to be transmitted is non-transmitted data in a data packet corresponding to the data to be transmitted; the communication module 1301 is further configured to receive, through the first link, second information sent by a second network node, where the second information is used to instruct the first network node to determine a transmission progress of a data packet corresponding to the data to be transmitted; sending a second response to the second network node over the first link, the second response including a transmission schedule.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In a possible implementation manner, the communication module 1301 is further configured to receive third information, where the third information is used to indicate that, when the first network node receives a data packet corresponding to the data to be transmitted through a second link, the communication quality of the second link meets a second preset condition, and the second link is one of the multiple communication links.
In a possible implementation manner, the communication module 1301 is specifically configured to send the first information to the second network node through the first link when the first link and/or the second link meet a third preset condition, where the second link is a communication link used when the first network node receives a data packet corresponding to the data to be transmitted.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
Fig. 14 is a schematic structural diagram of a second network node according to an embodiment of the present invention, where the second network node 1400 is configured to implement the data transmission method described in the foregoing embodiment, and may optimize a data transmission process. The second network node 1400 comprises: a communication module 1401 and a processing module 1402.
A communication module 1401, configured to receive, through a first link, first information sent by a first network node, where the first information is used to instruct a second network node to send data to be transmitted to the first network node through the first link; the first link is a link, the communication quality of which meets a first preset condition, of a plurality of communication links connected with the first network node; and sending the data to be transmitted to the first network node through the first link.
In a possible implementation manner, the communication module 1401 is further configured to send, through the first link, second information to the first network node, where the second information is used to instruct the first network node to determine a transmission progress of a data packet corresponding to the data to be transmitted; receiving a second response sent by the first network node through the first link, wherein the second response comprises a transmission progress; the processing module 1402 is configured to determine, according to the second response, to-be-transmitted data, where the to-be-transmitted data is untransmitted data in the data packet.
In one possible implementation, the transmission schedule includes at least one of: the percentage of transmission progress in the data packet, the end address of the transmitted data in the data packet, and the file size of the transmitted data in the data packet.
In a possible implementation manner, the processing module 1402 is specifically configured to determine, according to a transmission progress of the data packet in the second response, a start address of untransmitted data in the data packet; and determining data to be transmitted according to the data packet and the initial address of the data not to be transmitted, wherein the initial address of the data to be transmitted is the initial address of the data not to be transmitted, and the end address of the data to be transmitted is the end address of the data packet.
In a possible implementation manner, the communication module 1401 is further configured to send third information to the first network node, where the third information is used to indicate that, when the second network node sends a data packet corresponding to data to be transmitted to the first network node through a second link, the communication quality of the second link meets a second preset condition, and the second link is one of the multiple communication links.
In one possible implementation, the communication link includes at least one of: an Ethernet communication link, a serial communication link and a control area network communication link;
in one possible implementation, the data format of the data to be transmitted is the XCP format.
In a possible implementation manner, the second network node is a superior device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is an MBMU; or the first network node is a first BMU, and the second network node is a first SBMU; or, the second network node is a peer device of the first network node, and specifically includes: the first network node is a first SBMU, and the second network node is a second SBMU; or, the first network node is a first BMU, and the second network node is a second BMU.
Fig. 15 is a schematic structural diagram of another first network node according to an embodiment of the present invention. As shown in fig. 15, the first network node 1300 of this embodiment comprises: a processor 1501, a memory 1502, and a computer program 1503 stored in the memory 1502 and executable on the processor 1501. The processor 1501, when executing the computer program 1503, implements the steps in the various embodiments of the data transmission method described above, such as the steps 201 to 204 shown in fig. 2. Alternatively, the processor 1501, when executing the computer program 1503, implements the functions of the modules/units in the device embodiments described above, such as the functions of the communication module 1301 and the processing module 1302 shown in fig. 13.
Illustratively, the computer program 1503 may be partitioned into one or more modules/units that are stored in the memory 1502 and executed by the processor 1501 to implement the present invention. The one or more modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution of the computer program 1503 in the first network node 1300. For example, the computer program 1503 may be divided into a communication module 1301 and a processing module 1302 shown in fig. 13.
The Processor 1501 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The memory 1502 may be an internal storage unit of the first network node 1300, such as a hard disk or a memory of the first network node 1300. The memory 1502 may also be an external storage device of the first network node 1300, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), or the like, provided on the first network node 1300. Further, the memory 1502 may also comprise both an internal storage unit of the first network node 1300 and an external storage device. The memory 1502 is used for storing the computer programs and other programs and data required by the first network node 1300. The memory 1502 may also be used to temporarily store data that has been output or is to be output.
Fig. 16 is a schematic structural diagram of another second network node according to an embodiment of the present invention. As shown in fig. 16, the second network node 1400 of this embodiment comprises: a processor 1601, a memory 1602, and a computer program 1603 stored in the memory 1602 and operable on the processor 1601. The processor 1601, when executing the computer program 1603, implements the steps in various embodiments of the data transmission method described above, such as the data transmission method in the embodiment shown in fig. 6. Alternatively, the processor 1601 may implement the functions of each module/unit in each device embodiment described above when executing the computer program 1603, for example, the functions of the communication module 1401 and the processing module 1402 shown in fig. 14.
Illustratively, the computer programs 1603 may be divided into one or more modules/units, which are stored in the memory 1602 and executed by the processor 1601 to implement the present invention. The one or more modules/units may be a series of computer program instruction segments capable of performing certain functions, which are used to describe the execution of the computer program 1603 in the second network node 1400. For example, the computer program 1603 may be divided into a communication module 1401 and a processing module 1402 shown in fig. 14.
The Processor 1601 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage 1602 may be an internal storage unit of the second network node 1400, such as a hard disk or a memory of the second network node 1400. The memory 1602 may also be an external storage device of the second network node 1400, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), or the like, provided on the second network node 1400. Further, the memory 1602 may also comprise both an internal storage unit of the second network node 1400 and an external storage device. The memory 1602 is used for storing the computer programs and other programs and data required by the second network node 1400. The memory 1602 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned function distribution may be performed by different functional units and modules according to needs, that is, the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-mentioned functions. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the system may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus/terminal and method may be implemented in other ways. For example, the above-described apparatus/terminal embodiments are merely illustrative, and for example, the division of the modules or units is only one logical division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow in the method according to the above embodiments may also be implemented by a computer program, which may be stored in a computer readable storage medium, and when the computer program is executed by a processor, the steps of the embodiments of the data transmission method may be implemented. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain other components which may be suitably increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media which may not include electrical carrier signals and telecommunications signals in accordance with legislation and patent practice.
The above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.