CN111526606B - Method and device for data transmission, smart home equipment and storage medium - Google Patents

Method and device for data transmission, smart home equipment and storage medium Download PDF

Info

Publication number
CN111526606B
CN111526606B CN202010328635.XA CN202010328635A CN111526606B CN 111526606 B CN111526606 B CN 111526606B CN 202010328635 A CN202010328635 A CN 202010328635A CN 111526606 B CN111526606 B CN 111526606B
Authority
CN
China
Prior art keywords
message
sub
data
messages
virtual transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010328635.XA
Other languages
Chinese (zh)
Other versions
CN111526606A (en
Inventor
孙立峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haier Uplus Intelligent Technology Beijing Co Ltd
Original Assignee
Haier Uplus Intelligent Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haier Uplus Intelligent Technology Beijing Co Ltd filed Critical Haier Uplus Intelligent Technology Beijing Co Ltd
Priority to CN202010328635.XA priority Critical patent/CN111526606B/en
Publication of CN111526606A publication Critical patent/CN111526606A/en
Application granted granted Critical
Publication of CN111526606B publication Critical patent/CN111526606B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

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

Abstract

The application relates to the technical field of data transmission, and discloses a method for data transmission, which comprises the following steps: when the data size of the message to be transmitted exceeds a preset value, splitting the message to be transmitted into N primary sub-messages according to the data size or the data structure of the message to be transmitted; the N primary sub-messages are sent to a network side in parallel through N virtual transmission channels; wherein, each virtual transmission channel transmits a primary sub-message. And establishing a plurality of virtual transmission channels in the data transmission module, splitting the message to be transmitted into a plurality of primary sub-messages, and respectively sending the plurality of primary sub-messages to a network side in parallel through the plurality of virtual transmission channels. Therefore, the data quantity of the data packets sent in unit time is improved, and the problem of data delay of long-term waiting of a receiving party caused by overlarge data packets can be well solved. The application also discloses a device, intelligent household equipment and a storage medium for data transmission.

Description

Method and device for data transmission, smart home equipment and storage medium
Technical Field
The present application relates to the field of data transmission technologies, and for example, to a method and an apparatus for data transmission, smart home devices, and a storage medium.
Background
The Smart Home (Smart Home) is characterized in that a house is used as a platform, various devices in the house are connected together through the Internet of things technology, and an intelligent living environment is achieved. The home equipment is accessed to the internet, and the home equipment is changed into intelligent home equipment. At present, the smart home devices access a network through a WiFi module, and upload data to a cloud through the WiFi module.
In the process of implementing the embodiments of the present disclosure, it is found that at least the following problems exist in the related art:
because the WiFi module only has one channel for data reporting/downloading interaction, when the smart home device uploads big data (such as video), real-time transmission cannot be realized, and a time delay phenomenon easily occurs.
Disclosure of Invention
The following presents a simplified summary in order to provide a basic understanding of some aspects of the disclosed embodiments. This summary is not an extensive overview nor is intended to identify key/critical elements or to delineate the scope of such embodiments but rather as a prelude to the more detailed description that is presented later.
The embodiment of the disclosure provides a method and a device for data transmission, smart home equipment and a storage medium, so as to solve the problems that real-time transmission cannot be realized and a time delay phenomenon is easy to occur when the current smart home equipment uploads large data.
In some embodiments, a method for data transmission includes:
when the data size of the message to be transmitted exceeds a preset value, splitting the message to be transmitted into N primary sub-messages according to the data size or the data structure of the message to be transmitted, wherein N is the number of virtual transmission channels of the data transmission module;
the N primary sub-messages are sent to a network side in parallel through N virtual transmission channels; wherein, each virtual transmission channel transmits a primary sub-message.
In some embodiments, an apparatus for data transmission includes a processor and a memory storing program instructions, the processor configured to, when executing the program instructions, perform the above-described method for data transmission.
In some embodiments, the smart home device includes the above apparatus for data transmission.
In some embodiments, a storage medium has stored thereon a program of instructions which, when executed, performs the above-described method for data transmission.
The method and the device for data transmission, the smart home device and the storage medium provided by the embodiment of the disclosure can achieve the following technical effects:
establishing a plurality of virtual transmission channels in the data transmission module, splitting the message to be transmitted into a plurality of primary sub-messages according to the data size or the data structure of the message to be transmitted, and respectively sending the plurality of primary sub-messages to a network side in parallel through the plurality of virtual transmission channels. Therefore, the data quantity of the data packets sent in unit time is improved, and the problem of data delay of long-term waiting of a receiving party caused by overlarge data packets can be well solved.
The foregoing general description and the following description are exemplary and explanatory only and are not restrictive of the application.
Drawings
One or more embodiments are illustrated by way of example in the accompanying drawings, which correspond to the accompanying drawings and not in limitation thereof, in which elements having the same reference numeral designations are shown as like elements and not in limitation thereof, and wherein:
fig. 1 is a schematic diagram of a method for data transmission according to an embodiment of the present disclosure;
fig. 2 is a schematic diagram of another method for data transmission provided by an embodiment of the present disclosure;
fig. 3 is a schematic diagram of another method for data transmission provided by an embodiment of the present disclosure;
fig. 4 is a schematic diagram of another method for data transmission provided by an embodiment of the present disclosure;
fig. 5 is a schematic diagram of an apparatus for data transmission according to an embodiment of the present disclosure.
Detailed Description
So that the manner in which the features and elements of the disclosed embodiments can be understood in detail, a more particular description of the disclosed embodiments, briefly summarized above, may be had by reference to the embodiments, some of which are illustrated in the appended drawings. In the following description of the technology, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the disclosed embodiments. However, one or more embodiments may be practiced without these details. In other instances, well-known structures and devices may be shown in simplified form in order to simplify the drawing.
The terms "first," "second," and the like in the description and in the claims, and the above-described drawings of embodiments of the present disclosure, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used may be interchanged as appropriate for the embodiments of the disclosure described herein. Furthermore, the terms "comprising" and "having," as well as any variations thereof, are intended to cover non-exclusive inclusions.
The term "plurality" means two or more unless otherwise specified. The character "/" indicates that the preceding and following objects are in an "or" relationship. For example, A/B represents: a or B. The term "and/or" is an associative relationship that describes objects, meaning that three relationships may exist. For example, a and/or B, represents: a or B, or A and B.
In the application, a physical transmission channel of a data transmission module is virtualized into a plurality of virtual transmission channels. The virtual transmission channel is a self-defined set of independent data formats associated with a Remote Display Protocol (RDP), and this technology makes it unnecessary to change the RDP and add new functions.
As shown in fig. 1, an embodiment of the present disclosure provides a method for data transmission, including the following steps:
s101: when the data size of the message to be transmitted exceeds a preset value, splitting the message to be transmitted into N primary sub-messages according to the data size or the data structure of the message to be transmitted.
And N is the number of virtual transmission channels of the data transmission module.
The size of the preset value can be customized by those skilled in the art according to actual situations, for example, the value of the preset value is 5000 bytes. When the data size of the message to be transmitted exceeds a preset value, the data size of the message to be transmitted is larger, and the message to be transmitted is split in order to improve the data transmission efficiency of the message to be transmitted, so that the split multiple first-level sub-messages can be transmitted in parallel and synchronously.
Splitting a message to be transmitted into N primary sub-messages according to the data size of the message to be transmitted, namely averagely splitting the message to be transmitted into N primary sub-messages according to the data size of the message to be transmitted; the method includes splitting a message to be transmitted into N primary sub-messages according to a data structure of the message to be transmitted, that is, splitting the message to be transmitted into N primary sub-messages according to relevance of data in the message to be transmitted (for example, splitting data including continuous numbers into the same data packet). Therefore, the splitting mode of the message to be transmitted is more flexible.
S102: and sending the N primary sub-messages to a network side in parallel through N virtual transmission channels.
Wherein, each virtual transmission channel transmits a primary sub-message.
After the message to be transmitted is split into N primary sub-messages, each virtual transmission channel transmits one primary sub-message, so that the message to be transmitted can be transmitted to a network side in parallel and synchronously.
Optionally, the data sizes of the first-level sub-packets are the same or a data size difference between any two first-level sub-packets is smaller than a preset data size difference. The preset data size difference may be preset (e.g., 50 bytes). Therefore, the transmission of each level of sub-message can be completed as synchronously as possible, and the waiting time is shortened.
Optionally, the data size of the first-level sub packet and the maximum transmission unit of the virtual transmission channel satisfy the following relationship:
di≤Di
wherein d isiData size, D, representing the ith primary sub-packetiRepresents the virtual transmission channel T corresponding to the ith primary sub-messageiI-1, …, N.
The Maximum Transmission Unit (MTU) of a virtual Transmission channel refers to the Maximum datagram size (in bytes, for example, 1500 bytes) that the virtual Transmission channel can pass through. This parameter of maximum transmission unit is usually related to the communication interface (network interface card, serial port, etc.). The data size of the first-level sub-message is smaller than or equal to the maximum transmission unit of the virtual transmission channel, so that the first-level sub-message can be smoothly transmitted through the virtual transmission channel.
Optionally, the maximum transmission units of the virtual transmission channels are the same, that is, the physical transmission channel of the data transmission module is virtualized into a plurality of identical virtual transmission channels. In this way, the division of the individual virtual transmission channels is simpler.
By adopting the method for data transmission provided by the embodiment of the disclosure, a plurality of virtual transmission channels are simultaneously established in the data transmission module, the message to be transmitted is split into a plurality of primary sub-messages, and the plurality of primary sub-messages are respectively sent to the network side in parallel through the plurality of virtual transmission channels. The data transmission module may be a WIFI module, and this embodiment may implement data transmission through a plurality of virtual transmission channels of only one WIFI module. Therefore, the number of the data packets sent in unit time is increased, and the problem of data delay caused by long-term waiting of a receiver due to overlarge data packets can be solved well.
In some embodiments, the method for data transmission further comprises: and when the data size of the message to be transmitted does not exceed the preset value, the message to be transmitted is sent to the network side through a preset virtual transmission channel.
When the data size of the message to be transmitted does not exceed the preset value, the data size of the message to be transmitted is small, the message can be directly transmitted through a preset virtual transmission channel (for example, the first virtual transmission channel with the number of 1) without unpacking the data, the splitting process of the message to be transmitted is omitted, and the transmission time of the data is shortened to a certain extent.
In some embodiments, when d is present, as shown in FIG. 2i>DiThe method for data transmission further comprises the steps of:
s201: and splitting the ith primary sub-message into a plurality of secondary sub-messages.
Wherein the data size of each secondary sub-message is less than or equal to Di
Optionally, splitting the ith primary sub-packet into a plurality of secondary sub-packets, including: determining the number M (M) of secondary sub-messages according to the data size of the ith primary sub-message and the maximum transmission unit of the ith virtual transmission channel1) (ii) a Splitting the ith primary sub-message into M1And each secondary sub-message has a data size equal to the maximum transmission unit of the ith virtual transmission channel.
The number of the secondary sub-messages can be calculated by the following formula:
Figure BDA0002464150940000051
wherein S isiFor the ith primary sub-message, S0Is the maximum transmission unit of the ith virtual transmission channel, SiCan be covered by S0And (4) trimming.
For example, the data size of the 1 st primary sub-packet is 3000 bytes, the maximum transmission unit of the 1 st virtual transmission channel is 1500 bytes, and the number of the secondary sub-packets is 2. And splitting the 1 st primary sub-message into 2 secondary sub-messages with the data size of 1500 bytes.
Optionally, splitting the ith primary sub-packet into a plurality of secondary sub-packets, including: determining the number M (M) of secondary sub-messages according to the data size of the ith primary sub-message and the maximum transmission unit of the ith virtual transmission channel2) (ii) a Splitting the ith primary sub-message into M2A second level sub-message, wherein (M)2-1) the data size of the second level sub-packet is the maximum transmission unit of the ith virtual transmission channel, and the data size of the 1 second level sub-packet is (S)i+S0-M2×S0)。
The number of the secondary sub-messages can be calculated by the following formula:
Figure BDA0002464150940000052
wherein S isiFor the ith primary sub-message, S0Is the maximum transmission unit of the ith virtual transmission channel, SiCan not be covered by S0And (4) trimming.
For example, the data size of the 1 st primary sub-packet is 3500 bytes, the maximum transmission unit of the 1 st virtual transmission channel is 1500 bytes, and the number of the secondary sub-packets is 3. The 1 st primary sub-message is split into 2 secondary sub-messages with the data size of 1500 bytes and 1 secondary sub-message with the data size of 500 bytes.
S202: and serially transmitting the split secondary sub-messages to a network side through the ith virtual transmission channel.
In the embodiment of the disclosure, when the data size of the ith primary sub-packet is larger than the maximum transmission unit of the virtual transmission channel, the ith primary sub-packet is split into a plurality of secondary sub-packets, and the split plurality of secondary sub-packets are transmitted in series through the i virtual transmission channels, so as to ensure the smooth transmission of the packet to be transmitted.
In some embodiments, when the maximum transmission units of the virtual transmission channels are different, the method for data transmission further includes: adjusting part of secondary sub-messages in a plurality of secondary sub-messages corresponding to an mth virtual transmission channel to an nth virtual transmission channel for transmission, so that the number of the secondary sub-messages corresponding to the mth virtual transmission channel is the same as the number of the secondary sub-messages corresponding to the nth virtual transmission channel or the number difference is smaller than a preset number difference, wherein m is 1, … or N, N is 1, … or N, and m is not equal to N; the initial number of the second-level sub-messages corresponding to the mth virtual transmission channel is greater than the initial number of the second-level sub-messages corresponding to the nth virtual transmission channel, and the data size of each second-level sub-message is smaller than or equal to the maximum transmission unit of the minimum virtual transmission channel. The preset number difference may be preset (e.g., 1).
For example, the maximum transfer unit of the first virtual transfer channel is 1000 bytes, the maximum transfer unit of the first virtual transfer channel is 1500 bytes, and the maximum transfer unit of the first virtual transfer channel is 2500 bytes. When the data size of the first-level sub-packet is 3500 bytes, the number of the second-level sub-packets corresponding to the first virtual transmission channel is 4, the number of the second-level sub-packets corresponding to the second virtual transmission channel is 3, and the number of the second-level sub-packets corresponding to the third virtual transmission channel is 2, then 1 of the second-level sub-packets corresponding to the first virtual transmission channel is adjusted to the third virtual transmission channel for transmission.
In the embodiment of the disclosure, the transmission quantity of the secondary sub-packets corresponding to each virtual transmission channel is adjusted, so that the secondary sub-packets can be transmitted in parallel and synchronously, and the data volume of the packet to be transmitted sent in unit time is further improved, thereby better solving the problem of data delay of long-term waiting of a receiver due to overlarge data packets.
In some embodiments, as shown in fig. 3, the method for data transmission further comprises the steps of:
s301: and carrying out primary numbering on the primary sub-message according to the number of the virtual transmission channel corresponding to the primary sub-message.
When a physical transmission channel of the data transmission module is virtualized into a plurality of virtual transmission channels, each virtual transmission channel is numbered in sequence, for example, a first virtual transmission channel, a second virtual transmission channel, and a third virtual transmission channel. Correspondingly, the first-level sub-message transmitted through the first virtual transmission channel is numbered as 1; the first-level sub-message transmitted through the second virtual transmission channel is numbered as 2; and performing primary numbering for the primary sub-message transmitted through the third virtual transmission channel to be 3.
S302: and if the primary sub-message is split into a plurality of secondary sub-messages, performing secondary numbering on each secondary sub-message on the basis of the primary numbering.
Splitting a primary sub-message transmitted through a first virtual transmission channel into a plurality of (for example, 3) secondary sub-messages, and sequentially numbering the plurality of secondary sub-messages into secondary numbers of 1-1, 1-2 and 1-3; splitting the primary sub-message transmitted through the second virtual transmission channel into a plurality of (for example, 4) secondary sub-messages, and sequentially numbering the plurality of secondary sub-messages into secondary numbers 2-1, 2-2, 2-3 and 2-4; after the first-level sub-packet transmitted through the third virtual transmission channel is split into a plurality of (for example, 2) second-level sub-packets, the second-level sub-packets are sequentially numbered as 3-1 and 3-2.
In the embodiment of the disclosure, each secondary sub-message is subjected to secondary numbering on the basis of the primary numbering, which is beneficial for a receiving party to quickly and accurately recombine a message to be transmitted by using the secondary numbering after receiving the secondary sub-message.
In practical applications, as shown in fig. 4, the method for data transmission includes the following steps:
s401: and judging whether the data size of the message to be transmitted exceeds a preset value.
S402: and when the data size of the message to be transmitted does not exceed the preset value, the message to be transmitted is sent to the network side through a preset virtual transmission channel.
S403: when the data size of the message to be transmitted exceeds a preset value, splitting the message to be transmitted into N primary sub-messages according to the data size or the data structure of the message to be transmitted.
S404: judging whether d existsi>Di
S405: when d is absenti>DiAnd simultaneously sending the N primary sub-messages to a network side through the N virtual transmission channels.
S406: when d is presenti>DiAnd splitting the ith primary sub-message into a plurality of secondary sub-messages.
S407: and judging whether the maximum transmission units of the virtual transmission channels are the same or not.
S408: and when the maximum transmission units of the virtual transmission channels are the same, serially transmitting the split secondary sub-messages to the network side through the ith virtual transmission channel.
S409: when the maximum transmission units of the virtual transmission channels are different, adjusting part of the secondary sub-messages in the plurality of secondary sub-messages corresponding to the mth virtual transmission channel to the nth virtual transmission channel for transmission.
By adopting the method for data transmission provided by the embodiment of the disclosure, a plurality of virtual transmission channels are simultaneously established in a data transmission module, whether the message to be transmitted is split into a plurality of primary sub-messages or not is judged according to the data size of the message to be transmitted so as to be transmitted through the plurality of virtual transmission channels, whether the primary sub-message is split into a plurality of secondary sub-messages or not is further judged according to the relation between the data size of the primary sub-message and the size of the maximum transmission unit of the virtual transmission channel so as to be transmitted, and the transmission quantity of the secondary sub-messages corresponding to each virtual transmission channel is adjusted. Therefore, the secondary sub-messages can be transmitted in parallel and synchronously, and the data volume of the message to be transmitted sent in unit time is improved better, so that the problem of data delay of long-term waiting of a receiver due to overlarge data packets is solved better.
The embodiment of the present disclosure shown in fig. 5 provides an apparatus for data transmission, which includes a processor (processor)50 and a memory (memory)51, and may further include a Communication Interface (Communication Interface)52 and a bus 53. The processor 50, the communication interface 52 and the memory 51 may communicate with each other via a bus 53. The communication interface 52 may be used for information transfer. The processor 50 may call logic instructions in the memory 51 to perform the method for data transfer of the above-described embodiment.
In addition, the logic instructions in the memory 51 may be implemented in the form of software functional units and may be stored in a computer readable storage medium when the logic instructions are sold or used as independent products.
The memory 51 is a computer-readable storage medium, and can be used for storing software programs, computer-executable programs, such as program instructions/modules corresponding to the methods in the embodiments of the present disclosure. The processor 50 executes the functional application and data processing by executing the program instructions/modules stored in the memory 51, that is, implements the method for data transmission in the above-described method embodiments.
The memory 51 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the terminal device, and the like. Further, the memory 51 may include a high-speed random access memory, and may also include a nonvolatile memory.
The embodiment of the disclosure provides intelligent household equipment, which comprises the device for data transmission.
Embodiments of the present disclosure provide a computer-readable storage medium storing computer-executable instructions configured to perform the above-described method for data transmission.
Embodiments of the present disclosure provide a computer program product comprising a computer program stored on a computer readable storage medium, the computer program comprising program instructions which, when executed by a computer, cause the computer to perform the above-described method for data transmission.
The computer-readable storage medium described above may be a transitory computer-readable storage medium or a non-transitory computer-readable storage medium.
The technical solution of the embodiments of the present disclosure may be embodied in the form of a software product, where the computer software product is stored in a storage medium and includes one or more instructions to enable a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method of the embodiments of the present disclosure. And the aforementioned storage medium may be a non-transitory storage medium comprising: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes, and may also be a transient storage medium.
The above description and drawings sufficiently illustrate embodiments of the disclosure to enable those skilled in the art to practice them. Other embodiments may incorporate structural, logical, electrical, process, and other changes. The examples merely typify possible variations. Individual components and functions are optional unless explicitly required, and the sequence of operations may vary. Portions and features of some embodiments may be included in or substituted for those of others. The scope of the disclosed embodiments includes the full ambit of the claims, as well as all available equivalents of the claims. As used in this application, although the terms "first," "second," etc. may be used in this application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, unless the meaning of the description changes, so long as all occurrences of the "first element" are renamed consistently and all occurrences of the "second element" are renamed consistently. The first and second elements are both elements, but may not be the same element. Furthermore, the words used in the specification are words of description only and are not intended to limit the claims. As used in the description of the embodiments and the claims, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. Similarly, the term "and/or" as used in this application is meant to encompass any and all possible combinations of one or more of the associated listed. Furthermore, the terms "comprises" and/or "comprising," when used in this application, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method or apparatus that comprises the element. In this document, each embodiment may be described with emphasis on differences from other embodiments, and the same and similar parts between the respective embodiments may be referred to each other. For methods, products, etc. of the embodiment disclosures, reference may be made to the description of the method section for relevance if it corresponds to the method section of the embodiment disclosure.
Those of skill in the art would 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 may depend upon the particular application and design constraints imposed on the solution. 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 disclosed embodiments. It can be clearly understood by the skilled person that, for convenience and brevity of description, the specific working processes of the system, the apparatus and the unit described above may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the embodiments disclosed herein, the disclosed methods, products (including but not limited to devices, apparatuses, etc.) may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units may be merely a logical division, and in actual implementation, there may be another division, for example, multiple units or components may be combined or 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 implement the present embodiment. In addition, functional units in the embodiments of the present disclosure 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 flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. In the description corresponding to the flowcharts and block diagrams in the figures, operations or steps corresponding to different blocks may also occur in different orders than disclosed in the description, and sometimes there is no specific order between the different operations or steps. For example, two sequential operations or steps may in fact be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved. Each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

Claims (9)

1. A method for data transmission, comprising:
when the data size of the message to be transmitted exceeds a preset value, splitting the message to be transmitted into N primary sub-messages according to the data size or the data structure of the message to be transmitted, wherein N is the number of virtual transmission channels of a data transmission module;
the N primary sub-messages are sent to a network side in parallel through N virtual transmission channels; each virtual transmission channel transmits a primary sub-message;
the data size of the first-level sub-message and the maximum transmission unit of the virtual transmission channel satisfy the following relationship:
di≤Di
wherein d isiData size, D, representing the ith primary sub-packetiRepresents the virtual transmission channel T corresponding to the ith primary sub-messagei1, …, N;
when d is presenti>DiWhen the message is received, splitting the ith primary sub-message into a plurality of secondary sub-messages; wherein the data size of each secondary sub-message is less than or equal to Di
Serially transmitting the split secondary sub-messages to a network side through an ith virtual transmission channel;
when the maximum transmission units of the virtual transmission channels are different, adjusting part of secondary sub-messages in a plurality of secondary sub-messages corresponding to the mth virtual transmission channel to the nth virtual transmission channel for transmission, so that the number of the secondary sub-messages corresponding to the mth virtual transmission channel is the same as the number of the secondary sub-messages corresponding to the nth virtual transmission channel or the number difference is smaller than the preset number difference, wherein m is 1, … or N, N is 1, … or N, and m is not equal to N;
the initial number of the second-level sub-messages corresponding to the mth virtual transmission channel is greater than the initial number of the second-level sub-messages corresponding to the nth virtual transmission channel, and the data size of each second-level sub-message is smaller than or equal to the maximum transmission unit of the minimum virtual transmission channel.
2. The method of claim 1, wherein the data sizes of the primary sub-packets are the same or the difference between any two primary sub-packets is smaller than a predetermined data size difference.
3. The method of claim 1, wherein the maximum transmission unit of each virtual transmission channel is the same.
4. The method of claim 1, wherein the splitting the ith primary sub-packet into a plurality of secondary sub-packets comprises:
determining the number M of secondary sub-messages according to the data size of the ith primary sub-message and the maximum transmission unit of the ith virtual transmission channel;
splitting the ith primary sub-message into M secondary sub-messages, wherein the data size of each secondary sub-message is equal to the maximum transmission unit of the ith virtual transmission channel.
5. The method of any of claims 1 to 4, further comprising:
performing first-level numbering on the first-level sub-message according to the number of the virtual transmission channel corresponding to the first-level sub-message;
and if the primary sub-message is split into a plurality of secondary sub-messages, performing secondary numbering on each secondary sub-message on the basis of the primary numbering.
6. The method of any of claims 1 to 4, further comprising:
and when the data size of the message to be transmitted does not exceed the preset value, sending the message to be transmitted to a network side through a preset virtual transmission channel.
7. An apparatus for data transmission comprising a processor and a memory storing program instructions, wherein the processor is configured to perform the method for data transmission of any one of claims 1 to 6 when executing the program instructions.
8. An intelligent household device, characterized by comprising the apparatus for data transmission according to claim 7.
9. A storage medium storing a program of instructions, characterized in that the program of instructions is executed to perform the method for data transmission according to any one of claims 1 to 6.
CN202010328635.XA 2020-04-23 2020-04-23 Method and device for data transmission, smart home equipment and storage medium Active CN111526606B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010328635.XA CN111526606B (en) 2020-04-23 2020-04-23 Method and device for data transmission, smart home equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010328635.XA CN111526606B (en) 2020-04-23 2020-04-23 Method and device for data transmission, smart home equipment and storage medium

Publications (2)

Publication Number Publication Date
CN111526606A CN111526606A (en) 2020-08-11
CN111526606B true CN111526606B (en) 2022-06-14

Family

ID=71904137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010328635.XA Active CN111526606B (en) 2020-04-23 2020-04-23 Method and device for data transmission, smart home equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111526606B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111555984B (en) * 2020-04-23 2022-08-26 海尔优家智能科技(北京)有限公司 Method and device for data transmission, smart home equipment and storage medium
CN113438324A (en) * 2021-08-25 2021-09-24 北京拙成科技发展有限公司 Digital information transmission method and system
CN114245181A (en) * 2021-12-16 2022-03-25 北京数码视讯技术有限公司 Multimedia data transmission method and device under mixed channel
CN116366141B (en) * 2023-05-16 2023-10-13 银河航天(西安)科技有限公司 Method, device and storage medium for transmitting telemetry application data to information sink process

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110048963A (en) * 2019-04-19 2019-07-23 杭州朗和科技有限公司 Message transmitting method, medium, device and calculating equipment in virtual network
CN110213170A (en) * 2018-02-28 2019-09-06 华为技术有限公司 A kind of method and device of message transmissions

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202604B (en) * 2007-08-14 2011-03-30 深圳市同洲电子股份有限公司 Method for transmitting network data
CN102404702B (en) * 2011-11-07 2015-04-01 中兴通讯股份有限公司 Method, device and system for wireless data transmission
CN108924059A (en) * 2018-07-05 2018-11-30 郑州云海信息技术有限公司 A method of message transmissions are realized based on dynamic regulation virtual logical channel
CN109688214B (en) * 2018-12-24 2021-11-23 杭州数梦工场科技有限公司 Data transmission method, device and storage medium
CN111555984B (en) * 2020-04-23 2022-08-26 海尔优家智能科技(北京)有限公司 Method and device for data transmission, smart home equipment and storage medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110213170A (en) * 2018-02-28 2019-09-06 华为技术有限公司 A kind of method and device of message transmissions
CN110048963A (en) * 2019-04-19 2019-07-23 杭州朗和科技有限公司 Message transmitting method, medium, device and calculating equipment in virtual network

Also Published As

Publication number Publication date
CN111526606A (en) 2020-08-11

Similar Documents

Publication Publication Date Title
CN111526606B (en) Method and device for data transmission, smart home equipment and storage medium
CN106850402B (en) Message transmission method and device
US20220394316A1 (en) Message sending method and device, readable medium and electronic device
CN110602156A (en) Load balancing scheduling method and device
CN111008075B (en) Load balancing system, method, device, equipment and medium
CN107395572B (en) Data processing method and Internet of things gateway
CN105376173B (en) Sending window flow control method and terminal
CN104796337A (en) Method and device for forwarding message
CN104935641B (en) A kind of method and apparatus for accelerating file transmission
CN111555984B (en) Method and device for data transmission, smart home equipment and storage medium
CN103795632A (en) Data message transmission method, related equipment and system
CN112152892A (en) Method for controlling gateway, intelligent gateway and intelligent home system
CN110213147B (en) Cloud network intercommunication method and device, storage medium and terminal equipment
CN110831039A (en) Data transmission method and transmission server in multi-path concurrent system
CN105743816B (en) A kind of link aggregation method and device
CN111209240B (en) Data transmission method, electronic equipment and storage medium
CN107968848B (en) A kind of method, terminal device and storage medium obtaining IP address
CN110213320B (en) Communication connection method and device, electronic equipment and computer readable storage medium
CN102315918B (en) Method and device for intercommunicating TCP (Transmission Control Protocol) connection with SCTP (Stream Control Transmission Protocol) connection
CN104158683A (en) Cross-device aggregation group rapid convergence method, and cross-device aggregation group rapid convergence device
CN111264079A (en) Data transmission method, electronic device, system and storage medium
CN110417687A (en) A kind of message sends and receives method and device
CN103731424B (en) A kind of transmission method of network data, apparatus and system
CN107995199A (en) The port speed constraint method and device of the network equipment
CN105656794A (en) Data distribution method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant