CN114337921B - Data transmission method, data transmission device and related equipment - Google Patents

Data transmission method, data transmission device and related equipment Download PDF

Info

Publication number
CN114337921B
CN114337921B CN202111604674.9A CN202111604674A CN114337921B CN 114337921 B CN114337921 B CN 114337921B CN 202111604674 A CN202111604674 A CN 202111604674A CN 114337921 B CN114337921 B CN 114337921B
Authority
CN
China
Prior art keywords
data packet
data
transmission
packet
module
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
CN202111604674.9A
Other languages
Chinese (zh)
Other versions
CN114337921A (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.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202111604674.9A priority Critical patent/CN114337921B/en
Publication of CN114337921A publication Critical patent/CN114337921A/en
Application granted granted Critical
Publication of CN114337921B publication Critical patent/CN114337921B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a data transmission method, a data transmission device and related equipment, wherein the data transmission method comprises the following steps: acquiring a first data packet to be transmitted; judging whether the length of the first data packet is larger than a preset length; if not, transmitting the first data packet to a receiving end; if so, the first data packet is split into a plurality of second data packets, the length of the second data packets is smaller than or equal to the preset length, and the plurality of second data packets are sequentially transmitted to the receiving end, so that the transmission mode of the first data packet can be divided into two modes of split transmission and non-split transmission according to the length of the first data packet, the receiving interruption probability of the data packet can be reduced, the data receiving delay of the receiving end can be reduced, the flexible and efficient transmission of the data packet can be realized, and the data transmission efficiency can be improved.

Description

Data transmission method, data transmission device and related equipment
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a data transmission method, a data transmission device and related equipment.
Background
In the current Network On Chip (NOC) data transmission mechanism, a fixed-length packet transmission control method is generally adopted, that is, a packet in a Network layer of the Network On Chip is directly split into micro packets (hereinafter referred to as micro packets) with specific length, and then the micro packets are used as a transmission control unit to transmit at a data link layer. When a data transmission error occurs, retransmission is also performed in units of the micro packet. However, the current manner of implementing data retransmission in the network on chip may not only cause interruption of reception of the packet to which the micro packet with transmission error belongs, but also cause a larger delay of data reception at the receiving end.
Disclosure of Invention
In view of this, embodiments of the present invention provide a data transmission method, a data transmission device, and related devices, so as to reduce the probability of interruption of data packet reception and reduce the data reception delay of a receiving end.
In order to solve the above problems, the embodiment of the present invention provides the following technical solutions:
the first aspect of the present invention provides a data transmission method, applied to a transmitting end, where the data transmission method includes:
acquiring a first data packet to be transmitted;
judging whether the length of the first data packet is larger than a preset length;
if not, transmitting the first data packet to a receiving end;
if yes, the first data packet is segmented into a plurality of second data packets, the length of the second data packets is smaller than or equal to the preset length, and the plurality of second data packets are sequentially transmitted to the receiving end.
The second aspect of the present invention provides a data transmission method, applied to a receiving end, where the data transmission method includes:
receiving a data packet transmitted by a transmitting end;
judging whether the data packet is a first data packet or not;
if the data packet is a first data packet, uploading the first data packet;
if the data packet is a second data packet, the second data packet and other second data packets are recombined into a first data packet, and the recombined first data packet is uploaded;
The first data packet is a data packet which is not segmented; the second data packet is a data packet split into the first data packet, and the second data packet and the other second data packets are split into the same first data packet.
A third aspect of the present invention provides a data transmission apparatus, applied to a transmitting end, including:
the first transmission module is used for acquiring a first data packet to be transmitted;
the first processing module is used for judging whether the length of the first data packet is larger than a preset length; if not, a first instruction is sent to a second transmission module, if yes, the first data packet is split into a plurality of second data packets, the length of the second data packets is smaller than or equal to the preset length, and a second instruction is sent to the second transmission module;
the second transmission module is used for transmitting the first data packet to a receiving end according to the first instruction, and sequentially transmitting the plurality of second data packets to the receiving end according to the second instruction.
A fourth aspect of the present invention provides a data transmission apparatus, for application to a receiving end, the data transmission apparatus comprising:
The third transmission module is used for receiving the data packet transmitted by the transmitting end;
the second processing module is used for judging whether the data packet is a first data packet, if the data packet is the first data packet, sending a third instruction to the fourth transmission module, and if the data packet is a second data packet, recombining the second data packet and other second data packets into the first data packet and sending a fourth instruction to the fourth transmission module;
the fourth transmission module is configured to upload the first data packet according to the third instruction, and upload the reassembled first data packet according to the fourth instruction;
the first data packet is a data packet which is not segmented; the second data packet is a data packet split into the first data packet, and the second data packet and the other second data packets are split into the same first data packet.
A fifth aspect of the present invention provides a computer apparatus comprising:
a memory storing at least one set of instructions;
a processor executing the at least one set of instructions to perform the data transmission method of any one of the preceding claims, or the data transmission method of any one of the preceding claims.
A sixth aspect of the invention provides a readable storage medium storing at least one set of instructions for causing a processor to perform the data transmission method according to any one of the preceding claims, or the data transmission method according to any one of the preceding claims.
According to the data transmission method, the data transmission device and the related equipment, the first data packet with the length smaller than or equal to the preset length cannot be split, so that the problems of interruption of first data packet reception and larger data reception delay caused by retransmission due to transmission errors in the process of transmitting the first data packet to the receiving end are avoided. In addition, the first data packet with the length larger than the preset length is segmented into a plurality of second data packets, and the length of the second data packets is smaller than or equal to the preset length, so that the problem of overlarge data retransmission delay caused by overlarge length of the first data packets can be avoided.
It can be seen that, in the embodiment of the present invention, according to the length of the first data packet, the transmission mode of the first data packet is divided into two modes of split transmission and non-split transmission, which not only can reduce the probability of interruption of data packet reception and reduce the data reception delay of the receiving end, but also can realize flexible and efficient transmission of the data packet and improve the data transmission efficiency.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required to be used in the embodiments or the description of the prior art will be briefly described below, and it is obvious that the drawings in the following description are only embodiments of the present application, and that other drawings may be obtained according to the provided drawings without inventive effort to a person skilled in the art.
Fig. 1 is a schematic diagram schematically illustrating a transmission process of a micro packet;
FIG. 2 is a flow chart illustrating a method of data transmission;
FIG. 3 is a flow chart illustrating another data transmission method;
FIG. 4 is a schematic diagram illustrating a packet transmission process;
FIG. 5 is a flow chart illustrating another data transmission method;
FIG. 6 schematically illustrates a schematic structure of a micro-pack;
FIG. 7 is a schematic diagram schematically illustrating a first packet configuration;
FIG. 8 is a flow chart illustrating a method of data transmission;
fig. 9 is a schematic diagram exemplarily showing a structure of a data transmission apparatus;
fig. 10 exemplarily shows a schematic structural diagram of a data transmission apparatus.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
The network On Chip is a communication mode of a System On Chip (SOC for short). Because the performance of the system-on-chip that uses the network-on-chip for interconnect communication is significantly better than that of the system-on-chip that uses the bus for interconnect communication, the network-on-chip has become the most widely used interconnect structure for implementing multi-core processor communication at present.
In the current network-on-chip data transmission mechanism, micro packets are commonly used as transmission control units. Wherein, the transmission of the micro packet adopts a sliding window protocol, and the retransmission adopts a window protocol of a back N (go-back-N). After the transmitting end transmits one micro packet, the transmitting end does not stop to wait for an acknowledgement (Ack) instruction, but continuously transmits a plurality of micro packets, and even if the acknowledgement instruction transmitted by the receiving end is received in the continuous transmission process, the acknowledgement instruction is continuously transmitted. However, if the transmitting end receives an error command (Nak) indicating that a transmission error occurs in a certain micro packet, the transmitting end will retransmit from the micro packet with the transmission error.
Fig. 1 is a schematic diagram illustrating a transmission process of a micro packet, as shown in fig. 1, when a micro packet with a sequence number of 2 is transmitted in error, although the micro packets with sequence numbers of 3, 4, 5 and 6 transmitted later are transmitted correctly and received successfully, a receiving end discards or deletes all subsequent micro packets before receiving the correct number 2 micro packet, that is, discards or deletes the micro packet with sequence numbers of 3, 4, 5 and 6 received successfully.
If the packet number 0, the packet number 1, the packet number 2 and the packet number 3 belong to one data packet, after the packet number 2 has transmission errors, the reception of the data packet is interrupted, and after the packet number 1 is received, the receiving end needs to wait for a longer delay time to receive the retransmitted packet number 2 and packet number 3, and then the reception of the data packet including the packet number 1, the packet number 2 and the packet number 3 can be completed, so that the data reception delay of the data packet is larger. Where E in the figure represents an error and D represents a wait.
Based on this, the embodiment of the invention provides a data transmission scheme, after the data packet to be transmitted is acquired, whether the data packet is segmented or not is determined according to the length of the data packet, that is, whether the data packet is segmented or not is determined, so that the probability of interruption of data packet reception is reduced and the data reception delay of a receiving end is reduced by not segmenting at least part of the data packet.
As an optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention provides a data transmission method, which is applied to a transmitting end, and in particular, to a transmitting end device. The transmitting-end device may be a chip or the like. And, the chip is a chip to which the system-on-chip is applied. The chip may be a packaged chip or an unpackaged Die (Die). Fig. 2 is a flowchart exemplarily showing a data transmission method, which includes, as shown in fig. 2:
S201: acquiring a first data packet to be transmitted;
in the embodiment of the invention, when the transmitting end and the receiving end perform data interaction, the data link layer of the transmitting end can acquire the first data packet to be transmitted, and the first data packet can be a data packet circulated by the network layer of the network on chip. The data packet of the network layer flow may be a data packet from a sending module, and the sending module may be each functional module of the system on a chip, such as a processor core, etc.
S202: judging whether the length of the first data packet is larger than a preset length; if not, enter S203; if yes, go to S204;
s203: transmitting the first data packet to a receiving end;
s204: the first data packet is segmented into a plurality of second data packets, the length of each second data packet is smaller than or equal to the preset length, and the plurality of second data packets are sequentially transmitted to the receiving end.
The packets of the network layer flow of the network on chip typically include control class packets and data class packets. The control type data packet only contains control information such as request, no data response, probe request and the like, and has small information quantity, and can be completed within 1 frame of the data bus generally, namely the length of the control type data packet is less than or equal to the length of 1 frame of data. The data-class data packet generally includes data access related indication information and a cache (cache) data content, and in a general sense, the data packet may also be packaged by a limited number of bus frames, i.e., the length of the data-class data packet is within a limited number of frame data lengths.
Based on this, in some embodiments of the present invention, the preset length may be a length of 1 frame of data. After the first data packet to be transmitted is obtained, judging whether the length of the first data packet is greater than the length of 1 frame of data, if so, dividing the first data packet into a plurality of second data packets, wherein the length of each second data packet is smaller than or equal to the length of 1 frame of data, and transmitting the plurality of second data packets to a receiving end in sequence; if the first data packet is smaller than or equal to the control type data packet, the first data packet is directly transmitted to the receiving end without cutting the first data packet.
Of course, the present invention is not limited thereto, and in other embodiments, the preset length may be determined according to the bandwidth of the data transmission link between the transmitting end and the receiving end, that is, the preset length may be determined by the bandwidth of the data transmission link between the transmitting end and the receiving end. Optionally, l=m/n+p, where L is a preset length, M is a line bit width of a cache (cache) corresponding to the data link layer, N is a bit width of a high-speed transmission interface between the sending end and the receiving end, and P is 1 clock period, i.e., p=1. The bandwidth of the data transmission link between the transmitting end and the receiving end is equal to the bit width of the high-speed transmission interface between the transmitting end and the receiving end multiplied by the frequency and divided by 8. For example, if m=512 bits and n=128 bits, l=5, i.e. the preset length may be set to a length of 5 frames of data; if m=256 bits and n=128 bits, l=3, i.e., the preset length may be set to a length of 3 frames of data.
Based on the foregoing embodiments, in some embodiments of the present invention, splitting the first data packet into a plurality of second data packets includes:
splitting the first data packet into a plurality of second data packets with equal lengths; or,
the first data packet is segmented into a plurality of second data packets, and the lengths of at least two second data packets are unequal.
For example, a first packet of length 9 frames is split into 3 second packets, each of length 3 frames, or a first packet of length 9 frames is split into a second packet of length 1 frame, a second packet of length 2 frames, and two second packets of length 3 frames. It should be noted that, in the embodiment of the present invention, the splitting manner of the first data packet may be set according to the length, the type, etc. of the first data packet, which is not described herein. Typically, the length type of data packets transmitted in the data transmission link is 2-3, such as a 1 frame data length, a 2 frame data length, and a 3 frame data length.
Fig. 3 is a flowchart illustrating another data transmission method, in which, in step S301, a data link layer of a transmitting end obtains a first data packet to be transmitted, in step S302, the data link layer of the transmitting end determines whether the length of the first data packet is greater than a preset length, if the length is less than or equal to the preset length, in step S303, the first data packet is transmitted to a receiving end, if the length is greater than the preset length, in step S304, the first data packet is split into a plurality of second data packets, and the length of the second data packet is less than or equal to the preset length, and then, in step S305, the plurality of second data packets are sequentially transmitted to the receiving end.
After receiving the data packet transmitted by the data link layer of the transmitting end, the data link layer of the receiving end determines in step S306 whether the received data packet is the first data packet. If the data packet is the first data packet, in step S307, the first data packet is uploaded, for example, to the network layer of the network-on-chip for transmission to the receiving module through the network layer. If the data packet is a second data packet, in step S308, the second data packet and other second data packets are reassembled into a first data packet, and the reassembled first data packet is uploaded, for example, the reassembled first data packet is uploaded to a network layer of the network-on-chip to be transmitted to the receiving module through the network layer.
The other second data packets and the second data packet are split by the same first data packet. The receiving modules may be individual functional modules of the system on chip, such as processor cores, etc. The sending module and the receiving module can be different functional modules of the system on chip, and the different functional modules of the system on chip are interconnected and communicated through the network on chip, namely, the sending module and the receiving module perform data transmission through the network on chip.
It should be noted that, the network layer of the network on chip includes a plurality of data transmission links, one end of one data transmission link is connected with the sending module, and the other end is connected with the data link layer of the sending end, so that the data packet to be transmitted output by the sending module is sent to the data link layer of the sending end through the data transmission link. The data link layer of the transmitting end is connected with the data link layer of the receiving end through an interface allowed by a Physical Coding Sublayer (PCS) so as to realize data transmission between the transmitting end and the receiving end. The data link layer of the receiving end is connected with one end of another data transmission link, and the other end of the data transmission link is connected with the receiving module so as to upload the data packet received by the data link layer of the receiving end to the receiving module through the data transmission link.
Fig. 4 is a schematic diagram illustrating a transmission process of a data packet, as shown in fig. 4, if lengths of first data packets with sequence numbers of 0, 1, 3, 4, 5, 6, and 7 are less than or equal to a preset length, the first data packets with sequence numbers of 0, 1, 3, 4, 5, 6, and 7 are not split, and the first data packets with sequence numbers of 0, 1, 3, 4, 5, 6, and 7 are directly transmitted to a receiving end; if the length of the first data packet with the sequence number of 2 is greater than the preset length, the first data packet with the sequence number of 2 is split into a plurality of second data packets, such as three second data packets 20, 21 and 22, and then the second data packets with the sequence numbers of 20, 21 and 22 are sequentially transmitted to the receiving end.
If the first data packet with the sequence number of 3 has transmission errors and is not successfully received, retransmitting the first data packet with the sequence number of 3, namely retransmitting the first data packets with the sequence numbers of 3, 4, 5, 6 and 7 respectively.
Because the first data packets with the sequence numbers of 0, 1, 3, 4, 5, 6 and 7 are not split, the problem that the first data packets with the sequence numbers of 0, 1, 3, 4, 5, 6 and 7 are interrupted and the data receiving delay is larger because retransmission is required due to transmission errors in the process of transmitting the first data packets with the sequence numbers of 0, 1, 3, 4, 5, 6 and 7 to the receiving end is avoided. In addition, since the first data packet with the length larger than the preset length, such as the first data packet with the sequence number of 2, is split into a plurality of second data packets, and the length of the second data packet is smaller than or equal to the preset length, the problem of overlarge data retransmission delay caused by overlarge length of the first data packet can be avoided.
It can be seen that, in the embodiment of the present invention, according to the length of the first data packet, the transmission mode of the first data packet is divided into two modes of split transmission and non-split transmission, so that the probability of interruption of data packet reception can be reduced, the data reception delay of the receiving end can be reduced, flexible and efficient transmission of the data packet can be realized, and the data transmission efficiency can be improved.
It should be noted that, as long as the length of the first data packet is less than or equal to the preset length, the first data packet is not split, whether it is first transmitted or retransmitted. It should be noted that, because the sequence numbers in the micro packets are in one-to-one correspondence with the data packets, the sending end can distinguish different data packets according to the sequence numbers, control the transmission sequence of the data packets, and the receiving end can distinguish different data packets according to the sequence numbers in the data packets after receiving the data packets. Of course, in other embodiments of the present invention, different data packets may be distinguished according to other identifiers of the data packets, which will not be described herein.
Based on any of the foregoing embodiments, in some embodiments of the present invention, before transmitting the first data packet to the receiving end, the method further includes: adding at least the corresponding control information and error check code to the first data packet;
Before transmitting the second data packet to the receiving end, the method further includes: adding at least the corresponding control information, segmentation identification information and error check code to the second data packet;
the control information is at least used for controlling the transmission time sequence of the first data packet or the second data packet, the error check code is used for checking whether the first data packet or the second data packet is transmitted in error, and the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
Based on the foregoing embodiments, in some embodiments of the present invention, before transmitting the first data packet or the second data packet to the receiving end, the method further includes:
the first data packet or the second data packet is buffered in a retransmission buffer.
In some embodiments of the present invention, as shown in fig. 5, fig. 5 is a flowchart illustrating another data transmission method, after step S502, that is, after determining whether the length of the first data packet is greater than the preset length, if the length of the first data packet is less than or equal to the preset length, step S503 is further included: buffering the first data packet in a retransmission Buffer (Replay Buffer), and step S504: adding corresponding control information such as Sequence Number (Sequence Number) and error check code (Cyclic Redundancy Check, CRC for short) to the first data packet; if the length of the first data packet is greater than the preset length, after the first data packet is split into a plurality of second data packets, step S507 is further included: buffering the second data packet in the retransmission buffer, and step S508: corresponding control information such as sequence numbers and error check codes are added to the second data packet.
Of course, the present invention is not limited to this, and in other embodiments, after the corresponding control information, the error check code, etc. are added to the first data packet or the second data packet, the first data packet or the second data packet may be buffered in the retransmission buffer, which is not described herein. It should be noted that, in the embodiment of the present invention, the segmentation identification information is further added to the second data packet, so that the receiving end reorganizes the second data packet according to the segmentation identification information.
After the first data packet or the second data packet is cached in a retransmission buffer zone of a transmitting end, when the first data packet or the second data packet needs to be transmitted, the first data packet or the second data packet is acquired from the retransmission buffer zone, the type of the first data packet or the second data packet is analyzed, if the first data packet or the second data packet is the data packet which needs to be transmitted to the receiving end, control information, error check codes and the like are added in the first data packet or the second data packet, then the first data packet or the second data packet is converted into an interface type allowed by a Physical Coding Sublayer (PCS) according to a transmission control time sequence, and the interface type is downloaded to the physical coding sublayer so as to be transmitted to the receiving end through the physical coding sublayer.
The data link layer of the receiving end receives the data packet sent by the sending end through the physical coding sublayer, and then checks the data packet, as in step S510, to determine whether the data packet is successfully received. Wherein determining whether the data packet was successfully received comprises: judging whether the error check code in the data packet is the same as the regenerated error check code, if so, indicating that the data packet is correctly transmitted and successfully received; if the data packet is different, the data packet transmission error is indicated, and the data packet is not successfully received.
If the packet is successfully received, in step S511, an acknowledgement command Ack is returned to the sender, informing the sender that it has successfully received the micro packet. After receiving the acknowledgement command Ack, the transmitting end deletes the corresponding first data packet in the retransmission buffer area to release the buffer space. In step S512, it is determined whether the data packet is a first data packet, and if so, the first data packet is uploaded.
If the data packet is not successfully received, generating an error command Nak, and returning the error command Nak to the transmitting end in step S515; the error command Nak is used to indicate a packet transmission error so that the sender retransmits the packet. The receiving end checks the retransmitted data packet and judges whether the retransmitted data packet is successfully received.
If the error check code in the retransmitted data packet is different from the regenerated error check code, indicating that the retransmitted data packet is transmitted in error, and the retransmitted data packet is not successfully received, returning an error command Nak to the transmitting end again so that the transmitting end retransmits the data packet until the retransmitted data packet is successfully received.
If the error check code in the retransmitted data packet is the same as the regenerated error check code, the retransmitted data packet is correctly transmitted, and the retransmitted data packet is successfully received. And then judging whether the retransmitted data packet is a first data packet, if so, uploading the first data packet, and returning a confirmation command Ack to the transmitting end to inform the transmitting end that the retransmitted data packet is successfully received, so that the transmitting end deletes the corresponding data packet in the retransmission buffer zone.
It should be noted that, the data packet transmitted from the transmitting end to the receiving end may be a first transmitted data packet or a retransmitted data packet. The retransmitted data packet may be a data packet retransmitted according to an error instruction, or may be a data packet retransmitted according to a timeout instruction.
Based on this, the data transmission method in some embodiments of the present invention further includes:
acquiring a retransmission instruction, wherein the retransmission instruction comprises an error instruction and a timeout instruction;
determining a data packet with transmission errors according to the retransmission instruction, wherein the data packet is a first data packet or a second data packet;
and retransmitting the data packet and the data packet transmitted after the data packet to a receiving end.
The transmitting end obtains an error command Nak returned by the receiving end, wherein the error command Nak carries the sequence number of the last data packet which is transmitted successfully, the transmitting end can determine the sequence number of the data packet with transmission errors according to the sequence number, then obtains the data packet with transmission errors and the data packet transmitted after the data packet with transmission errors from the retransmission buffer zone according to the sequence number of the data packet with transmission errors, and retransmits the data packet with transmission errors and the data packet transmitted after the data packet with transmission errors to the receiving end.
It should be noted that, the sending end sets a timeout timer after each data packet is sent. If the confirmation instruction of the data packet is not received within the set timeout time, the timeout timer generates a timeout instruction, the timeout instruction carries the sequence number of the data packet which is not received by the timeout instruction, and the transmitting end determines the retransmitted data packet according to the sequence number carried by the timeout instruction. For example, if the packet with the sequence number of 7 still does not receive the confirmation instruction after the timeout timer expires, the packet with the sequence number of 7 is judged as error or loss. The sender retransmits the data packet with sequence number 7 and the data packets transmitted thereafter to the receiver.
It should be noted that, the proportion of the information bits occupied by the redundant control information such as the control information and the error check code in the data packet is fixed. As shown in fig. 6, fig. 6 is an exemplary schematic diagram illustrating a micro packet structure, since a data packet is divided into a plurality of micro packets, the data in the micro packets is smaller, the redundancy control information is relatively larger, and the bandwidth utilization rate is lower in the process of transmitting the micro packets by the data transmission link.
As shown in fig. 7, fig. 7 illustrates an exemplary structure diagram of a first data packet, because in the embodiment of the present invention, the first data packet with a length smaller than or equal to a preset length is not segmented, under the condition that the proportion of information bits occupied by redundant control information is fixed, the proportion of data in the data packet is increased, so that the proportion of the redundant control information is relatively smaller, and the average value of extra bandwidth overhead caused by the redundant control information is reduced, and therefore, the bandwidth utilization rate can be improved.
As another optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention provides a data transmission method, which is applied to a receiving end, and in particular, to a receiving end device. The receiving end device may be a chip or the like. And, the chip is a chip to which the system-on-chip is applied. The chip may be a packaged chip or an unpackaged die. Fig. 8 is a flowchart exemplarily showing a data transmission method, and as shown in fig. 8, the data retransmission method includes:
S801: receiving a data packet transmitted by a transmitting end;
s802: judging whether the data packet is a first data packet or not; if the data packet is the first data packet, step S803 is performed; if the data packet is the second data packet, go to step S804;
s803: uploading a first data packet;
s804: and recombining the second data packet and other second data packets into a first data packet, and uploading the recombined first data packet.
The first data packet is a data packet which is not segmented; the second data packet is a data packet cut into the first data packet, and the second data packet and other second data packets are cut into the same first data packet.
Referring to fig. 3, after the receiving end data link layer receives the data packet transmitted by the transmitting end data link layer, in step S306, it is determined whether the received data packet is the first data packet. If the data packet is the first data packet, in step S307, the first data packet is uploaded, for example, to the network layer of the network-on-chip for transmission to the receiving module through the network layer. If the data packet is a second data packet, in step S308, the second data packet and other second data packets are reassembled into a first data packet, and the reassembled first data packet is uploaded, for example, the reassembled first data packet is uploaded to a network layer of the network-on-chip to be transmitted to the receiving module through the network layer.
Because the first data packet with the length smaller than or equal to the preset length is not segmented, the problems of interruption of the first data packet reception and larger data reception delay caused by retransmission due to transmission errors in the process of transmitting the first data packet to the receiving end are avoided. In addition, the first data packet with the length larger than the preset length is segmented into a plurality of second data packets, and the length of the second data packets is smaller than or equal to the preset length, so that the problem of overlarge data retransmission delay caused by overlarge length of the first data packets can be avoided.
It can be seen that, in the embodiment of the present invention, according to the length of the first data packet, the transmission mode of the first data packet is divided into two modes of split transmission and non-split transmission, so that the probability of interruption of data packet reception can be reduced, the data reception delay of the receiving end can be reduced, flexible and efficient transmission of the data packet can be realized, and the data transmission efficiency can be improved.
Based on the foregoing embodiments, in some embodiments of the present invention, before determining whether the data packet is the first data packet, the method further includes:
checking the data packet to determine whether the data packet is successfully received;
If the data packet is successfully received, returning a confirmation instruction to the transmitting end, and judging whether the data packet is a first data packet or not; the confirmation instruction is used for indicating that the data packet is successfully received;
if the data packet is not successfully received, returning an error instruction to the transmitting end so that the transmitting end retransmits the data packet and the data packet transmitted after the data packet; the error command is used for indicating that the data packet is transmitted in error and is not successfully received.
Referring to fig. 5, the data link layer of the receiving end receives the data packet transmitted by the transmitting end through the physical coding sublayer, and then checks the data packet, as in step S510, to determine whether the data packet is successfully received. Wherein determining whether the data packet was successfully received comprises: judging whether the error check code in the data packet is the same as the regenerated error check code, if so, indicating that the data packet is correctly transmitted and successfully received; if the data packet is different, the data packet transmission error is indicated, and the data packet is not successfully received.
If the packet is successfully received, in step S511, an acknowledgement command Ack is returned to the sender, informing the sender that it has successfully received the micro packet. After receiving the acknowledgement command Ack, the transmitting end deletes the corresponding first data packet in the retransmission buffer area to release the buffer space. In step S512, it is determined whether the data packet is a first data packet, and if so, the first data packet is uploaded.
If the data packet is not successfully received, generating an error command Nak, and returning the error command Nak to the transmitting end in step S515; the error command Nak is used to indicate a packet transmission error so that the sender retransmits the packet. The receiving end checks the retransmitted data packet and judges whether the retransmitted data packet is successfully received.
If the error check code in the retransmitted data packet is different from the regenerated error check code, indicating that the retransmitted data packet is transmitted in error, and the retransmitted data packet is not successfully received, returning an error command Nak to the transmitting end again so that the transmitting end retransmits the data packet until the retransmitted data packet is successfully received.
If the error check code in the retransmitted data packet is the same as the regenerated error check code, the retransmitted data packet is correctly transmitted, and the retransmitted data packet is successfully received. And then judging whether the retransmitted data packet is a first data packet, if so, uploading the first data packet, and returning a confirmation command Ack to the transmitting end to inform the transmitting end that the retransmitted data packet is successfully received, so that the transmitting end deletes the corresponding data packet in the retransmission buffer zone.
Based on the foregoing embodiments, in some embodiments of the present invention, the reconstructing the second data packet and other second data packets into the first data packet includes:
judging whether the second data packet and other second data packets are segmented by the same first data packet according to the segmentation identification information; if yes, reorganizing the second data packet and other second data packets into a first data packet; the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
In the embodiment of the invention, when the transmitting end transmits the data packet to the receiving end, if the first data packet is split into a plurality of second data packets, the splitting identification information is added in the second data packets, and the splitting identification information is used for identifying the plurality of second data packets split into the same first data packet. Based on this, after receiving the second data packet, the receiving end identifies other second data packets belonging to the same first data packet as the second data packet according to the segmentation identification information in the second data packet, so as to reconstruct the second data packets belonging to the same first data packet.
In some embodiments of the present invention, the second data packet may be reassembled into the first data packet before uploading, or the second data packet may be reassembled into the first data packet after uploading. Based on this, in some embodiments of the present invention, before recombining the second data packet with other second data packets into the first data packet, the method further includes:
Determining whether to reassemble the first data packet;
if yes, the second data packet and other second data packets are recombined into a first data packet, and the recombined first data packet is uploaded;
if not, uploading the second data packet.
As another optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention provides a data transmission device, which is applied to a transmitting end, and in particular, to a transmitting end device. The transmitting-end device may be a chip or the like. And, the chip is a chip to which the system-on-chip is applied. The chip may be a packaged chip or an unpackaged die. Fig. 9 exemplarily shows a schematic structural diagram of a data transmission apparatus, as shown in fig. 9, which includes:
a first transmission module 91, configured to obtain a first data packet to be transmitted;
a first processing module 92, configured to determine whether the length of the first data packet is greater than a preset length; if not, sending the first instruction to the second transmission module 93, if yes, splitting the first data packet into a plurality of second data packets, wherein the length of the second data packets is smaller than or equal to the preset length, and sending the second instruction to the second transmission module 93;
the second transmission module 93 is configured to transmit the first data packet to the receiving end according to the first instruction, and sequentially transmit the plurality of second data packets to the receiving end according to the second instruction.
Based on the above embodiments, in some embodiments of the present invention, the first processing module 92 dividing the first data packet into a plurality of second data packets includes:
splitting the first data packet into a plurality of second data packets with equal lengths; or,
the first data packet is segmented into a plurality of second data packets, and the lengths of at least two second data packets are unequal.
Based on any of the foregoing embodiments, in some embodiments of the present invention, the preset length is determined by a bandwidth of a data transmission link between the transmitting end and the receiving end.
Based on any of the above embodiments, in some embodiments of the present invention, the first processing module 92 is further configured to, before transmitting the first data packet to the receiving end, at least add corresponding control information and an error check code to the first data packet;
the first processing module 92 is further configured to add at least corresponding control information, segmentation identification information, and an error check code to the second data packet before transmitting the second data packet to the receiving end;
the control information is at least used for controlling the transmission time sequence of the first data packet or the second data packet, the error check code is used for checking whether the first data packet or the second data packet is transmitted in error, and the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
Based on the above embodiments, in some embodiments of the present invention, the first processing module 92 is further configured to buffer the first data packet or the second data packet in the retransmission buffer before transmitting the first data packet or the second data packet to the receiving end.
Based on the above embodiments, in some embodiments of the present invention, the first processing module 92 is further configured to obtain a retransmission instruction, where the retransmission instruction includes an error instruction and a timeout instruction; determining a data packet with transmission errors according to the retransmission instruction, wherein the data packet is a first data packet or a second data packet; and retransmitting the data packet and the data packet transmitted after the data packet to a receiving end.
As another optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention provides a data retransmission apparatus, which is applied to a receiving end, and in particular, to a receiving end device. The receiving end device may be a chip or the like. And, the chip is a chip to which the system-on-chip is applied. The chip may be a packaged chip or an unpackaged die. Fig. 10 exemplarily shows a schematic structural diagram of a data transmission apparatus, as shown in fig. 10, which includes:
a third transmission module 101, configured to receive a data packet transmitted by a transmitting end;
The second processing module 102 is configured to determine whether the data packet is a first data packet, send a third instruction to the fourth transmission module 103 if the data packet is the first data packet, reassemble the second data packet and other second data packets into the first data packet if the data packet is the second data packet, and send a fourth instruction to the fourth transmission module 103;
the fourth transmission module 103 is configured to upload the first data packet according to the third instruction, and upload the reassembled first data packet according to the fourth instruction;
the first data packet is a data packet which is not segmented; the second data packet is a data packet cut into the first data packet, and the second data packet and other second data packets are cut into the same first data packet.
Based on the above embodiments, in some embodiments of the present invention, the second processing module 102 is further configured to check the data packet before determining whether the data packet is the first data packet, so as to determine whether the data packet is successfully received; if the data packet is successfully received, a confirmation instruction is returned to the transmitting end through the third transmission module 101, and whether the data packet is a first data packet is judged; the confirmation instruction is used for indicating that the data packet is successfully received; if the data packet is not successfully received, returning an error command to the transmitting end through the third transmission module 101 so that the transmitting end retransmits the data packet and the data packet transmitted thereafter; the error command is used for indicating that the data packet is transmitted in error and is not successfully received.
Based on the foregoing embodiments, in some embodiments of the present invention, the second processing module 102 reassembles the second data packet with other second data packets into the first data packet, including:
judging whether the second data packet and other second data packets are segmented by the same first data packet according to the segmentation identification information; if yes, reorganizing the second data packet and other second data packets into a first data packet; the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
Based on the foregoing embodiments, in some embodiments of the present invention, the second processing module 102 is further configured to determine whether to reassemble the second data packet with other second data packets into the first data packet; if yes, the second data packet and other second data packets are recombined into a first data packet, and a fourth instruction is sent to the fourth transmission module 103; if not, the fifth instruction is sent to the fourth transmission module 103, so that the fourth transmission module 103 uploads the second data packet according to the fifth instruction.
As another optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention further provides a computer device, including:
A memory storing at least one set of instructions;
and a processor executing at least one set of instructions to perform the data transmission method applied to the transmitting end as provided in any one of the embodiments above, or the data transmission method applied to the receiving end as provided in any one of the embodiments above.
The computer device of the embodiment of the invention comprises, but is not limited to, a chip and the like. The chip may be a chip employing a system-on-chip. The chip may be a packaged chip or an unpackaged die, and will not be described here again.
As another optional implementation of the disclosure of the embodiment of the present invention, the embodiment of the present invention provides a readable storage medium, where the readable storage medium stores at least one set of instructions, where the at least one set of instructions is configured to cause a processor to execute a data transmission method applied to a transmitting end as provided in any one of the embodiments above, or a data transmission method applied to a receiving end as provided in any one of the embodiments above.
The readable storage media of embodiments of the present invention, including both permanent and non-permanent, removable and non-removable media, may be used to implement information storage by any method or technology. The information may be host readable instructions, data structures, modules of a program, or other data. Examples of storage media for a host include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, read only compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device.
The foregoing describes several embodiments of the present invention, and the various alternatives presented by the various embodiments may be combined, cross-referenced, with each other without conflict, extending beyond what is possible embodiments, all of which are considered to be embodiments of the present invention disclosed and disclosed. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (14)

1. A data transmission method, which is applied to a transmitting end, the data transmission method comprising:
The method comprises the steps that a data link layer of a sending end obtains a first data packet to be transmitted, wherein the first data packet is a data packet transmitted by a network layer of a network-on-chip from a sending module; the network layer comprises a plurality of data transmission links, one end of one data transmission link is connected with the sending module, and the other end of the one data transmission link is connected with the data link layer of the sending end;
judging whether the length of the first data packet is larger than a preset length or not, wherein the preset length is determined by the sum of the bit width of a cache line corresponding to a data link layer, the bit width ratio of a high-speed transmission interface between a transmitting end and a receiving end and a clock period;
if not, the first data packet is a control data packet, and the first data packet is transmitted to a data link layer of a receiving end; the data link layer of the receiving end is connected with one end of another data transmission link, and the other end of the data transmission link is connected with the receiving module; the transmitting module and the receiving module are different functional modules of the system on chip, and the transmitting module and the receiving module perform data transmission through the network on chip;
if so, the first data packet is a data packet, the first data packet is split into a plurality of second data packets, the length of the second data packets is smaller than or equal to the preset length, and the plurality of second data packets are sequentially transmitted to the data link layer of the receiving end.
2. The data transmission method according to claim 1, wherein the splitting the first data packet into a plurality of second data packets comprises:
splitting the first data packet into a plurality of second data packets with equal lengths; or,
and dividing the first data packet into a plurality of second data packets, wherein the lengths of at least two second data packets are unequal.
3. The data transmission method according to claim 1, further comprising, before transmitting the first data packet to the data link layer of the receiving end: adding at least corresponding control information and error check code to the first data packet;
before the plurality of second data packets are sequentially transmitted to the data link layer of the receiving end, the method further comprises: adding at least corresponding control information, segmentation identification information and error check code to the second data packet;
the control information is at least used for controlling the transmission time sequence of the first data packet or the second data packet, the error check code is used for checking whether the first data packet or the second data packet is transmitted in error, and the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
4. The data transmission method according to claim 3, further comprising, before transmitting the first data packet or the second data packet to the data link layer of the receiving end:
caching the first data packet or the second data packet in a retransmission buffer area;
when the first data packet or the second data packet needs to be sent, the type of the first data packet or the second data packet is analyzed, if the first data packet or the second data packet is the data packet of the data link layer which needs to be sent to the receiving end, the first data packet or the second data packet in the retransmission buffer zone is converted into the interface type allowed by the physical coding sublayer according to the transmission time sequence, and the interface type is downloaded to the physical coding sublayer.
5. The data transmission method according to claim 4, further comprising:
acquiring a retransmission instruction, wherein the retransmission instruction comprises an error instruction returned by the receiving end and a timeout instruction generated by the sending end;
determining a data packet with transmission errors according to the retransmission instruction, wherein the data packet is a first data packet or a second data packet;
and retransmitting the data packet and the data packet transmitted after the data packet to the receiving end.
6. A data transmission method, characterized in that it is applied to a receiving end, the data transmission method comprising:
The data link layer of the receiving end receives a data packet transmitted by the data link layer of the transmitting end, wherein the data packet is a data packet transmitted by the network layer of the network-on-chip from a transmitting module; the network layer comprises a plurality of data transmission links, one end of one data transmission link is connected with the sending module, and the other end of the one data transmission link is connected with the data link layer of the sending end; the data link layer of the receiving end is connected with one end of another data transmission link, and the other end of the data transmission link is connected with the receiving module; the transmitting module and the receiving module are different functional modules of the system on chip, and the transmitting module and the receiving module perform data transmission through the network on chip;
judging whether the data packet is a first data packet or not;
if the data packet is a first data packet, uploading the first data packet;
if the data packet is a second data packet, the second data packet and other second data packets are recombined into a first data packet, and the recombined first data packet is uploaded;
the first data packet is a data packet which is not segmented; the second data packet is a data packet which is cut into the first data packet according to a preset length, and the second data packet and the other second data packets are cut into the same first data packet according to the preset length, wherein the preset length is determined by the sum of the bit width of a cache corresponding to a data link layer, the bit width of a high-speed transmission interface between a transmitting end and a receiving end, and a clock period.
7. The method of claim 6, wherein before determining whether the data packet is the first data packet, further comprising:
checking the data packet to determine whether the data packet was successfully received;
if the data packet is successfully received, returning a confirmation instruction to the data link layer of the transmitting end, and judging whether the data packet is a first data packet or not; the confirmation instruction is used for indicating that the data packet is successfully received;
if the data packet is not successfully received, returning an error command to the data link layer of the transmitting end so that the data link layer of the transmitting end retransmits the data packet and the data packet transmitted after the data packet; the error instruction is used for indicating that the data packet is transmitted in error and is not successfully received.
8. The method of claim 6, wherein the step of recombining the second data packet with other second data packets into a first data packet comprises:
judging whether the second data packet and other second data packets are segmented by the same first data packet or not according to segmentation identification information; if yes, the second data packet and the other second data packets are recombined into the first data packet; the segmentation identification information is used for identifying a plurality of second data packets segmented by the same first data packet.
9. The method of claim 6, wherein prior to reassembling the second data packet with other second data packets into a first data packet, further comprising:
determining whether to reassemble the first data packet;
if yes, the second data packet and other second data packets are recombined into a first data packet, and the recombined first data packet is uploaded;
if not, uploading the second data packet.
10. A data transmission apparatus, applied to a transmitting end, comprising:
the first transmission module is used for acquiring a first data packet to be transmitted by a data link layer of the transmitting end, wherein the first data packet is a data packet transmitted by a network layer of the network-on-chip from the transmitting module; the network layer comprises a plurality of data transmission links, one end of one data transmission link is connected with the sending module, and the other end of the one data transmission link is connected with the data link layer of the sending end;
the first processing module is used for judging whether the length of the first data packet is larger than a preset length or not, wherein the preset length is determined by the sum of the bit width of a cache line corresponding to the data link layer, the bit width ratio of a high-speed transmission interface between a sending end and a receiving end and a clock period; if not, the first data packet is a control data packet, and a first instruction is sent to the second transmission module; if yes, the first data packet is a data packet, the first data packet is segmented into a plurality of second data packets, the length of the second data packets is smaller than or equal to the preset length, and a second instruction is sent to the second transmission module;
The second transmission module is used for transmitting the first data packet to a data link layer of a receiving end according to the first instruction; according to the second instruction, sequentially transmitting the plurality of second data packets to a data link layer of the receiving end; the data link layer of the receiving end is connected with one end of another data transmission link, and the other end of the data transmission link is connected with the receiving module; the sending module and the receiving module are different functional modules of the system on chip, and the sending module and the receiving module perform data transmission through the network on chip.
11. The data transmission device of claim 10, wherein the first processing module splits the first data packet into a plurality of second data packets, comprising:
splitting the first data packet into a plurality of second data packets with equal lengths; or,
and dividing the first data packet into a plurality of second data packets, wherein the lengths of at least two second data packets are unequal.
12. A data transmission apparatus, applied to a receiving end, comprising:
the third transmission module is used for receiving the data packet transmitted by the data link layer of the transmitting end by the data link layer of the receiving end, wherein the data packet is the data packet transmitted by the network layer of the network-on-chip from the transmitting module; the network layer comprises a plurality of data transmission links, one end of one data transmission link is connected with the sending module, and the other end of the one data transmission link is connected with the data link layer of the sending end; the data link layer of the receiving end is connected with one end of another data transmission link, and the other end of the data transmission link is connected with the receiving module; the transmitting module and the receiving module are different functional modules of the system on chip, and the transmitting module and the receiving module perform data transmission through the network on chip;
The second processing module is used for judging whether the data packet is a first data packet, if the data packet is the first data packet, sending a third instruction to the fourth transmission module, and if the data packet is a second data packet, recombining the second data packet and other second data packets into the first data packet and sending a fourth instruction to the fourth transmission module;
the fourth transmission module is configured to upload the first data packet according to the third instruction, and upload the reassembled first data packet according to the fourth instruction;
the first data packet is a data packet which is not segmented; the second data packet is a data packet which is cut into the first data packet according to a preset length, and the second data packet and the other second data packets are cut into the same first data packet according to the preset length, wherein the preset length is determined by the sum of the bit width of a cache corresponding to a data link layer, the bit width of a high-speed transmission interface between a transmitting end and a receiving end, and a clock period.
13. A computer device, comprising:
a memory storing at least one set of instructions;
a processor executing the at least one set of instructions to perform the data transmission method of any one of claims 1 to 5 or the data transmission method of any one of claims 6 to 9.
14. A readable storage medium storing at least one set of instructions for causing a processor to perform the data transmission method of any one of claims 1 to 5 or the data transmission method of any one of claims 6 to 9.
CN202111604674.9A 2021-12-24 2021-12-24 Data transmission method, data transmission device and related equipment Active CN114337921B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111604674.9A CN114337921B (en) 2021-12-24 2021-12-24 Data transmission method, data transmission device and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111604674.9A CN114337921B (en) 2021-12-24 2021-12-24 Data transmission method, data transmission device and related equipment

Publications (2)

Publication Number Publication Date
CN114337921A CN114337921A (en) 2022-04-12
CN114337921B true CN114337921B (en) 2024-01-19

Family

ID=81012580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111604674.9A Active CN114337921B (en) 2021-12-24 2021-12-24 Data transmission method, data transmission device and related equipment

Country Status (1)

Country Link
CN (1) CN114337921B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101002443A (en) * 2004-08-12 2007-07-18 皇家飞利浦电子股份有限公司 A method for allocating data to at least one packet in an integrated circuit
CN110299969A (en) * 2018-03-23 2019-10-01 天地融科技股份有限公司 A kind of sending method and device of data scrolling transmission
CN110677200A (en) * 2019-09-17 2020-01-10 深圳市智慧海洋科技有限公司 Data transmission method and device
CN111641638A (en) * 2020-05-28 2020-09-08 浪潮(北京)电子信息产业有限公司 Data transmission method and related device
CN113259490A (en) * 2021-06-29 2021-08-13 北京华云安信息技术有限公司 Multi-level node network data transmission method based on UDP transmission protocol
CN113300817A (en) * 2020-09-22 2021-08-24 阿里巴巴集团控股有限公司 Data transmission method and device
CN113489575A (en) * 2021-06-25 2021-10-08 阿波罗智联(北京)科技有限公司 Data transmission method and device and electronic equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101002443A (en) * 2004-08-12 2007-07-18 皇家飞利浦电子股份有限公司 A method for allocating data to at least one packet in an integrated circuit
CN110299969A (en) * 2018-03-23 2019-10-01 天地融科技股份有限公司 A kind of sending method and device of data scrolling transmission
CN110677200A (en) * 2019-09-17 2020-01-10 深圳市智慧海洋科技有限公司 Data transmission method and device
CN111641638A (en) * 2020-05-28 2020-09-08 浪潮(北京)电子信息产业有限公司 Data transmission method and related device
CN113300817A (en) * 2020-09-22 2021-08-24 阿里巴巴集团控股有限公司 Data transmission method and device
CN113489575A (en) * 2021-06-25 2021-10-08 阿波罗智联(北京)科技有限公司 Data transmission method and device and electronic equipment
CN113259490A (en) * 2021-06-29 2021-08-13 北京华云安信息技术有限公司 Multi-level node network data transmission method based on UDP transmission protocol

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种高效自适应的CICQ交换机数据包切分机制;王晓婷;王忆文;李平;;电子技术应用(02);全文 *

Also Published As

Publication number Publication date
CN114337921A (en) 2022-04-12

Similar Documents

Publication Publication Date Title
KR100779753B1 (en) Method and apparatus for polling transmission status in a wireless communication system
US8341485B2 (en) Increasing hybrid automatic repeat request (HARQ) throughput
US10430374B2 (en) Selective acknowledgement of RDMA packets
US7580406B2 (en) Remote direct memory access segment generation by a network controller
TWI387256B (en) Method and apparatus for improving transmission time interval bundling
CN111327603B (en) Data transmission method, device and system
KR100750170B1 (en) Method and apparatus for transmitting data frame efficiently in communication network
CN101809953A (en) Millimeter-wave communications for peripheral devices
JP2015525506A (en) Method, device, and system for efficient retransmission communication
US9197373B2 (en) Method, apparatus, and system for retransmitting data packet in quick path interconnect system
CN111770428B (en) Monitoring method of wireless equipment
CN111132358B (en) Data packet transmission method, terminal and storage medium
US20100189112A1 (en) Communication system, communication node, and packet scheduling method
CN114244780B (en) Data transmission method, data transmission device and related equipment
CN104980257B (en) Internet of things communication method and device
KR100714675B1 (en) Method for frame retransmission and network apparatus employing the method
CN108173851B (en) High-efficiency multimedia transmission method for spatial information network
JP7282895B2 (en) Data retransmission decoding method, device, system and communication device
WO2022083371A1 (en) Data transmission method and device
KR101769133B1 (en) Electronic device adaptively selecting tcp/r-udp and packet transmitting/receiving method thereof
CN111181698A (en) Data processing method, device, equipment and medium
CN112261142B (en) RDMA network data retransmission method, device and FPGA
CN114337921B (en) Data transmission method, data transmission device and related equipment
CN114337938B (en) Data transmission method, data retransmission method, device and related equipment
US8522104B2 (en) Smart aging retry buffer

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