CN113810279B - Data packet transmission method and system - Google Patents

Data packet transmission method and system Download PDF

Info

Publication number
CN113810279B
CN113810279B CN202010544093.XA CN202010544093A CN113810279B CN 113810279 B CN113810279 B CN 113810279B CN 202010544093 A CN202010544093 A CN 202010544093A CN 113810279 B CN113810279 B CN 113810279B
Authority
CN
China
Prior art keywords
transmitted
data packet
transmission
data
node
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
CN202010544093.XA
Other languages
Chinese (zh)
Other versions
CN113810279A (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.)
Beijing Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi 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 Beijing Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN202010544093.XA priority Critical patent/CN113810279B/en
Publication of CN113810279A publication Critical patent/CN113810279A/en
Application granted granted Critical
Publication of CN113810279B publication Critical patent/CN113810279B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

The invention discloses a data packet transmission method and a system, which are used for determining a common transmission path in a plurality of transmission paths according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted; and commonly transmitting a plurality of data packets to be transmitted on the common transmission path. The invention can improve the efficiency of data transmission and the utilization rate of path bit width.

Description

Data packet transmission method and system
Technical Field
The present invention relates to the field of data transmission technologies, and in particular, to a data packet transmission method and system.
Background
In the data transmission process, the prior art generally adopts a serial transmission mode to sequentially transmit the data packets, the transmission time is long, and the bit width of a transmission path is not fully utilized, so that the resource waste is caused.
Disclosure of Invention
In order to solve the above problems, an object of the present invention is to provide a data packet transmission method and system, which can improve the efficiency of data transmission and the utilization of the path bit width.
The invention provides a data packet transmission method, which comprises the following steps:
determining a common transmission path among a plurality of transmission paths according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted;
and transmitting the plurality of data packets to be transmitted together on the common transmission path.
As a further improvement of the present invention, the determining a common transmission path among a plurality of transmission paths according to a plurality of transmission paths corresponding to a plurality of data packets to be transmitted, includes:
acquiring a plurality of source nodes and destination nodes of the data packets to be transmitted;
respectively determining a plurality of transmission paths of the data packets to be transmitted according to the source nodes and the destination nodes of the data packets to be transmitted;
and determining the transmission paths in the same direction among the plurality of transmission paths as the common transmission path.
As a further improvement of the present invention, the transmitting the plurality of data packets to be transmitted together on the common transmission path includes:
the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
and when the transmission medium reaches the end point of the common transmission path, unpacking the plurality of data packets to be transmitted.
As a further improvement of the present invention, the method further comprises:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches a source node of any data packet to be transmitted, packaging any data packet to be transmitted, and transmitting the data packet to be transmitted by the transmission medium; the method comprises the steps of carrying out a first treatment on the surface of the
And unpacking the data packet to be transmitted when the transmission medium reaches any destination node of the data packet to be transmitted.
As a further improvement of the present invention, when the transmission medium arrives at any source node of the data packet to be transmitted, the data packet to be transmitted is packetized and transmitted by the transmission medium, including:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, and then packing the data packet to be transmitted; if not, directly packaging the data packet to be transmitted.
As a further improvement of the invention, the data packet to be transmitted comprises the address of the destination node;
when the transmission medium reaches any destination node of the data packet to be transmitted, unpacking the data packet to be transmitted, including:
analyzing the data packet to be transmitted, and determining the address of the destination node;
and unpacking the data packet to be transmitted when the transmission medium reaches the destination node.
As a further improvement of the present invention, the data packet to be transmitted includes data amount information;
when the transmission medium reaches any source node of a data packet to be transmitted, the data packet to be transmitted is packed and transmitted by the transmission medium, including:
judging whether the data quantity of the data packet to be transmitted is larger than the capacity allowance of the transmission medium,
if the data packet is larger than the data packet to be transmitted, delay packaging is carried out on the data packet to be transmitted;
and if the data packet is smaller than or equal to the data packet to be transmitted, packaging the data packet to be transmitted.
The invention also discloses a data packet transmission system, which comprises:
the common path determining module is used for determining a common transmission path in a plurality of transmission paths according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted;
and the data transmission module is used for commonly transmitting the plurality of data packets to be transmitted on the common transmission path.
As a further improvement of the present invention, the common path determination module is configured to:
acquiring a plurality of source nodes and destination nodes of the data packets to be transmitted;
respectively determining a plurality of transmission paths of the data packets to be transmitted according to the source nodes and the destination nodes of the data packets to be transmitted;
and determining the transmission paths in the same direction among the plurality of transmission paths as the common transmission path.
As a further improvement of the invention, the data transmission module is configured to:
the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
and when the transmission medium reaches the end point of the common transmission path, unpacking the plurality of data packets to be transmitted.
As a further improvement of the invention, the data transmission module is configured to:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches any source node of the data packet to be transmitted, unpacking the data packet to be transmitted, and packaging and transmitting the data packet to be transmitted by the transmission medium;
and unpacking the data packet to be transmitted when the transmission medium reaches any destination node of the data packet to be transmitted.
As a further improvement of the invention, the data transmission module is configured to:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, then packing the data packet to be transmitted, and if not, directly packing the data packet to be transmitted.
As a further improvement of the invention, the data packet to be transmitted comprises the address of the destination node;
the data transmission module is configured to:
analyzing the data packet to be transmitted, and determining the address of the destination node;
and unpacking the data packet to be transmitted when the transmission medium reaches the destination node.
As a further improvement of the present invention, the data packet to be transmitted includes data amount information;
the data transmission module is configured to:
judging whether the data volume of the data packet to be transmitted is larger than the capacity allowance of the transmission medium, and if so, delaying and packaging the data packet to be transmitted; and if the data packet is smaller than or equal to the data packet to be transmitted, packaging the data packet to be transmitted.
The invention also provides an inter-chip data transmission method, which comprises a transmission path, wherein each node in the transmission path is each chip, and the method is adopted to realize the data transmission among the chips.
The invention also provides an on-chip data transmission method, which comprises a transmission path, wherein each node in the transmission path is each computing core in the many-core chip, and the method is adopted to realize data transmission among the computing cores.
The invention also provides an electronic device comprising a memory for storing one or more computer instructions, and a processor, wherein the one or more computer instructions are executed by the processor to implement the method.
The invention also provides a computer readable storage medium having stored thereon a computer program, characterized in that the computer program is executed by a processor to implement the method.
The beneficial effects of the invention are as follows: the data packets with the common transmission path are packaged and transmitted together, so that the efficiency of data transmission and the utilization rate of the path bit width can be improved.
Drawings
In order to more clearly illustrate the embodiments of the present disclosure or the prior art, the drawings that are used in the description of the embodiments or the prior art will be briefly described below. It will be apparent to those of ordinary skill in the art that the drawings in the following description are merely examples of the disclosure and that other drawings may be derived from them without inventive faculty.
Fig. 1 is a flow chart of a data packet transmission method according to an exemplary embodiment of the disclosure;
FIG. 2 is a schematic flow chart of S1 in FIG. 1;
fig. 3 is a schematic diagram illustrating transmission of two data packets according to an exemplary embodiment of the present disclosure;
fig. 4 is a schematic diagram illustrating transmission of two data packets according to another exemplary embodiment of the present disclosure;
fig. 5 is a system block diagram of a data packet transmission system according to an exemplary embodiment of the present disclosure.
Detailed Description
The following description of the technical solutions in the embodiments of the present disclosure will be made clearly and completely with reference to the accompanying drawings in the embodiments of the present disclosure, and it is apparent that the described embodiments are only some embodiments of the present disclosure, not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art without inventive effort, based on the embodiments in this disclosure are intended to be within the scope of this disclosure.
It should be noted that, if directional indications (such as up, down, left, right, front, and rear … …) are included in the embodiments of the present disclosure, the directional indications are merely used to explain the relative positional relationship, movement conditions, etc. between the components in a specific posture (as shown in the drawings), and if the specific posture is changed, the directional indications are correspondingly changed.
In addition, in the description of the present disclosure, the terminology used is for the purpose of illustration only and is not intended to limit the scope of the present disclosure. The terms "comprises" and/or "comprising" are used to specify the presence of stated elements, steps, operations, and/or components, but do not preclude the presence or addition of one or more other elements, steps, operations, and/or components. The terms "first," "second," and the like may be used for describing various elements, do not represent a sequence, and are not intended to limit the elements. Furthermore, in the description of the present disclosure, unless otherwise indicated, the meaning of "a plurality" is two and more. These terms are only used to distinguish one element from another element. These and/or other aspects will become apparent to those of ordinary skill in the art from a review of the following drawings, and a description of the embodiments of the present disclosure will be more readily understood. The drawings are intended to depict the embodiments of the disclosure for purposes of illustration only. Those skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated in the present disclosure may be employed without departing from the principles of the present disclosure.
As shown in fig. 1, a data packet transmission method in an embodiment of the disclosure includes:
determining a common transmission path in a plurality of transmission paths according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted;
and transmitting the plurality of data packets to be transmitted together on a common transmission path.
In an alternative embodiment, according to each transmission path of each data packet to be transmitted, a common transmission path in each transmission path is determined, as shown in fig. 2, including:
acquiring a source node and a destination node of a plurality of data packets to be transmitted;
respectively determining a plurality of transmission paths of a plurality of data packets to be transmitted according to a source node and a destination node of the plurality of data packets to be transmitted;
the transmission paths in the same direction among the plurality of transmission paths are determined as a common transmission path.
In the multiple transmission paths, each node may receive respective data packets from different transmission directions, analyze the transmission directions of the respective data packets in the transmission nodes, and determine the transmission paths in the same transmission direction as a common transmission path.
For example, as shown in fig. 3, there are two data packets to be transmitted (data packet A1 and data packet b 1), wherein the data packet A1 is transmitted from the source node A1 to the destination node A2, and the transmission path of the data packet A1 is: node A1-node B1-node C2-node A2, packet B1 being transmitted from source node B1 to destination node B2, the transmission path of packet B1 being: the node B1-node C1-node B2 can determine that the common transmission path of the two data packets is: node B1-node C1.
In an alternative embodiment, the method for transmitting the plurality of data packets to be transmitted together on the common transmission path includes:
the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
when the transmission medium reaches the end of the common transmission path, the plurality of data packets to be transmitted are unpacked.
For example, as shown in fig. 3, during transmission of two data packets, there is a common transmission path (node B1-node C1). In the prior art, two data packets are generally transmitted in serial, so that the common transmission path cannot simultaneously transmit two data packets, the data packet a1 needs to be transmitted first, and the data packet b1 is transmitted after the data packet a1 is transmitted in the common path, so that the transmission time of a plurality of data packets is long when the data packets are transmitted. In addition, for example, the capacity of the transmission medium is 8 bits, and the data bit width of the data packet a1 and the data packet b1 is 4 bits, and if the data packet a1 is transmitted first and then the data packet b1 is transmitted through the common transmission path, this makes the path bit width not fully utilized, resulting in resource waste.
According to the method disclosed by the disclosure, the plurality of data packets to be transmitted on the common transmission path are transmitted together, so that the efficiency of data transmission and the utilization rate of the path bit width can be improved. For example, as shown in fig. 3, the common transmission path of two data packets is node B1-node C1, and node B1 and node C1 are the start point and the end point of the common transmission path, respectively. The transmission medium moves along each transmission path, at the node B1, two data packets (the data packet a1 and the data packet B1) are packed together, the packed data packets a1B1 are transmitted together, the data packets a1B1 are unpacked at the transmission node C1, and the transmission of the data packets a1 and B1 in the common transmission path is completed respectively.
When the transmission medium reaches other nodes except the start point and the end point of the common transmission path in the common transmission path, the plurality of data packets to be transmitted are unpacked and packed for common transmission until the transmission medium reaches the end point of the common transmission path.
According to different designs, the transmission paths of the data packets are different, and the common transmission path determined based on each transmission path may further include other nodes except the start point and the end point of the common transmission path, when the transmission medium reaches the nodes, the data packets packaged together need to be unpacked and packaged again for common transmission. For example, as shown in fig. 4, there are two data packets to be transmitted (data packet A1 and data packet b 1), wherein the data packet A1 is transmitted from the source node A1 to the destination node A2, and the transmission path of the data packet A1 is: node A1-node B1-node C2-node C3-node A2, the data packet B1 being transmitted from the source node B1 to the destination node B2, the transmission path of the data packet B1 being: node B1-node C2-node B2, the common transmission path of two data packets may be determined to be: node B1-node C2, node B1 and node C2 are the start point and end point of the common transmission path respectively, node C1 is the other nodes except the start point and end point in the common transmission path. As described above, the transmission medium moves along each transmission path, at the node B1, two data packets (the data packet a1 and the data packet B1) are packed together, the packed data packets a1B1 are transmitted simultaneously, the data packets a1B1 are unpacked and packed together at the node C1, the packed data packets a1B1 are transmitted together, the data packets a1B1 are unpacked at the node C2, and the transmission of the data packets a1 and B1 in the common transmission path is completed respectively.
In an alternative embodiment, the method further comprises:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches a source node of a data packet to be transmitted, any data packet to be transmitted is packed and transmitted by the transmission medium;
when the transmission medium reaches any destination node of the data packet to be transmitted, the data packet to be transmitted is unpacked.
In the transmission process of the data packet to be transmitted, the transmission path may include other nodes besides the common transmission path. For other nodes than the common transmission path, when the transmission medium reaches each node, the respective data packets to be transmitted may be parsed to determine what operation is performed on the data packets to be transmitted. When the transmission medium reaches the source node of the data packet to be transmitted, the data packet to be transmitted is packed, when the transmission medium reaches the destination node of the data packet to be transmitted, unpacking is carried out on the data packet to be transmitted to finish transmission, and when the transmission medium reaches other transmission nodes except the source node and the destination node of the data packet to be transmitted, unpacking and repacking are carried out on the data packet to be transmitted.
In an alternative embodiment, when the transmission medium reaches a source node of any data packet to be transmitted, the data packet to be transmitted is packed and transmitted by the transmission medium, including:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, and then packing the data packet to be transmitted; if not, directly packaging the data packet to be transmitted.
For example, as shown in fig. 3, the transmission medium moves along each transmission path, and when the transmission medium reaches the node A1, i.e., the source node of the data packet A1, the data packet A1 is packetized; when the transmission medium arrives at the node B1, i.e. the source node of the data packet B1, the data packet a1 is unpacked, and the data packet a1 and the data packet B1 are packed together and transmitted simultaneously; when the transmission medium reaches the node C1, unpacking the data packet a1b1, and packing the data packet a1 and the data packet b1 respectively; when the transmission medium reaches the node C2, unpacking and packing the data packet a 1; when the transmission medium reaches the node A2, namely the destination node of the data packet a1, the data packet a1 is unpacked, the transmission of the data packet a1 is completed, and when the transmission medium reaches the node B2, namely the destination node of the data packet B1, the data packet B1 is unpacked, and the transmission of the data packet B1 is completed.
In an alternative embodiment, the data packet to be transmitted includes the address of the destination node;
when the transmission medium reaches any destination node of the data packet to be transmitted, unpacking the data packet to be transmitted, including:
analyzing the data packet to be transmitted, and determining the address of the destination node of the data packet to be transmitted;
when the transmission medium reaches the own destination node, the data packet to be transmitted is unpacked.
For example, as shown in fig. 3, when the transmission medium arrives at the node C1 during the movement process from the start point to the end point of the transmission path, the data packet a1B1 is unpacked, and the data packet a1 contains the address of the destination node A2, so that the data packet B1 can be resolved to continue to be transmitted to the node C2, and the data packet B1 can continue to be transmitted to the node B2, because the data packet a1 contains the address of the destination node A2; when the transmission medium reaches the node C2, unpacking the data packet a1, and because the data packet a1 contains the address of the destination node A2, the data packet a1 can be analyzed to continue to be transmitted to the transmission node A2, and the data packet a1 is unpacked; when the transmission medium reaches the node A2, unpacking the data packet a1, and analyzing that the data packet a1 reaches the destination node because the data packet a1 contains the address of the destination node A2, so as to finish the transmission of the data packet a 1; when the transmission medium arrives at the node B2, the data packet B1 is unpacked, and the data packet B1 arrives at the destination node after the data packet B1 contains the destination node B2 address, so that the transmission of the data packet B1 is completed.
In an alternative embodiment, the data packets to be transmitted include data volume information;
when the transmission medium reaches any source node of the data packet to be transmitted, the data packet to be transmitted is packed and transmitted by the transmission medium, and the method comprises the following steps:
judging whether the data quantity of the data packet to be transmitted is larger than the capacity allowance of a transmission medium or not;
if the data quantity of the data packet to be transmitted is larger than the capacity allowance of the transmission medium, delay packaging the data packet to be transmitted;
and if the data quantity of the data packet to be transmitted is smaller than or equal to the capacity allowance of the transmission medium, packaging the data packet to be transmitted.
The bandwidth of the transmission medium refers to the amount of data that can be transmitted at a fixed time (e.g., every clock), and the capacity of the transmission medium is equal to or less than the bandwidth. Because the capacity of the transmission medium is fixed, for example, the data volume capable of being transmitted is fixed in one clock period, in the transmission process of a plurality of data packets, the data volume of each data packet to be transmitted needs to be judged at each transmission node, and the smooth transmission process of each data packet to be transmitted is ensured. For example, assuming that the data bit width of the data packet a1 is 4 bits, the data bit width of the data packet b1 is 4 bits, the data packet c1 is already packed at one node, and assuming that the data packet c1 is still required to be packed at the transmission node, the remaining capacity of the transmission medium is 2 bits, it is determined that the capacity of the transmission medium is insufficient, the data packet c1 cannot be packed, one clock cycle is delayed, and the data packet c1 is packed at the next clock cycle.
As shown in fig. 5, a data packet transmission system according to an embodiment of the present disclosure includes:
the common path determining module is used for determining a common transmission path in a plurality of transmission paths according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted;
and the data transmission module is used for commonly transmitting the plurality of data packets to be transmitted on a common transmission path.
In an alternative embodiment, the common path determination module is further configured to:
acquiring a source node and a destination node of a plurality of data packets to be transmitted;
respectively determining a plurality of transmission paths of a plurality of data packets to be transmitted according to a source node and a destination node of the plurality of data packets to be transmitted;
the transmission paths in the same direction among the plurality of transmission paths are determined as a common transmission path.
In the multiple transmission paths, each node may receive respective data packets from different transmission directions, analyze the transmission directions of the respective data packets in the transmission nodes, and determine the transmission paths in the same transmission direction as a common transmission path.
For example, as shown in fig. 3, there are two data packets to be transmitted (data packet A1 and data packet b 1), wherein the data packet A1 is transmitted from the source node A1 to the destination node A2, and the transmission path of the data packet A1 is: node A1-node B1-node C2-node A2, packet B1 being transmitted from source node B1 to destination node B2, the transmission path of packet B1 being: the node B1-node C1-node B2 can determine that the common transmission path of the two data packets is: node B1-node C1.
In an alternative embodiment, the data transmission module is further configured to:
the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
when the transmission medium reaches the end of the common transmission path, the plurality of data packets to be transmitted are unpacked.
For example, as shown in fig. 3, during transmission of two data packets, there is a common transmission path (node B1-node C1). In the prior art, two data packets are generally transmitted in serial, so that the common transmission path cannot simultaneously transmit two data packets, the data packet a1 needs to be transmitted first, and the data packet b1 is transmitted after the data packet a1 is transmitted in the common path, so that the transmission time of a plurality of data packets is long when the data packets are transmitted. In addition, for example, the capacity of the transmission medium is 8 bits, and the data bit width of the data packet a1 and the data packet b1 is 4 bits, and if the data packet a1 is transmitted first and then the data packet b1 is transmitted through the common transmission path, this makes the path bit width not fully utilized, resulting in resource waste.
According to the system disclosed by the disclosure, the plurality of data packets to be transmitted on the common transmission path are transmitted together, so that the efficiency of data transmission and the utilization rate of the path bit width can be improved. For example, as shown in fig. 3, the common transmission path of two data packets is node B1-node C1, and node B1 and node C1 are the start point and the end point of the common transmission path, respectively. The transmission medium moves along each transmission path, at the node B1, two data packets (the data packet a1 and the data packet B1) are packed together, the packed data packets a1B1 are transmitted together, the data packets a1B1 are unpacked at the transmission node C1, and the transmission of the data packets a1 and B1 in the common transmission path is completed respectively.
When the transmission medium reaches other nodes except the start point and the end point of the common transmission path in the common transmission path, the plurality of data packets to be transmitted are unpacked and packed for common transmission until the transmission medium reaches the end point of the common transmission path.
According to different designs, the transmission paths of the data packets are different, and the common transmission path determined based on each transmission path may further include other nodes except the start point and the end point of the common transmission path, when the transmission medium reaches the nodes, the data packets packaged together need to be unpacked and packaged again for common transmission. For example, as shown in fig. 4, there are two data packets to be transmitted (data packet A1 and data packet b 1), wherein the data packet A1 is transmitted from the source node A1 to the destination node A2, and the transmission path of the data packet A1 is: node A1-node B1-node C2-node C3-node A2, the data packet B1 being transmitted from the source node B1 to the destination node B2, the transmission path of the data packet B1 being: node B1-node C2-node B2, the common transmission path of two data packets may be determined to be: node B1-node C2, node B1 and node C2 are the start point and end point of the common transmission path respectively, node C1 is the other nodes except the start point and end point in the common transmission path. As described above, the transmission medium moves along each transmission path, at the node B1, two data packets (the data packet a1 and the data packet B1) are packed together, the packed data packets a1B1 are transmitted simultaneously, the data packets a1B1 are unpacked and packed together at the node C1, the packed data packets a1B1 are transmitted together, the data packets a1B1 are unpacked at the node C2, and the transmission of the data packets a1 and B1 in the common transmission path is completed respectively.
In an alternative embodiment, the data transmission module is further configured to:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches a source node of a data packet to be transmitted, any data packet to be transmitted is packed and transmitted by the transmission medium;
when the transmission medium reaches any destination node of the data packet to be transmitted, the data packet to be transmitted is unpacked.
In the transmission process of the data packet to be transmitted, the transmission path may include other nodes besides the common transmission path. For other nodes than the common transmission path, when the transmission medium reaches each node, the respective data packets to be transmitted may be parsed to determine what operation is performed on the data packets to be transmitted. When the transmission medium reaches the source node of the data packet to be transmitted, the data packet to be transmitted is packed, when the transmission medium reaches the destination node of the data packet to be transmitted, unpacking is carried out on the data packet to be transmitted to finish transmission, and when the transmission medium reaches other transmission nodes except the source node and the destination node of the data packet to be transmitted, unpacking and repacking are carried out on the data packet to be transmitted.
In an alternative embodiment, the data transmission module is further configured to:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, and then packing the data packet to be transmitted; if not, directly packaging the data packet to be transmitted.
For example, as shown in fig. 3, the transmission medium moves along each transmission path, and when the transmission medium reaches the node A1, i.e., the source node of the data packet A1, the data packet A1 is packetized; when the transmission medium arrives at the node B1, i.e. the source node of the data packet B1, the data packet a1 is unpacked, and the data packet a1 and the data packet B1 are packed together and transmitted simultaneously; when the transmission medium reaches the node C1, unpacking the data packet a1b1, and packing the data packet a1 and the data packet b1 respectively; when the transmission medium reaches the node C2, unpacking and packing the data packet a 1; when the transmission medium reaches the node A2, namely the destination node of the data packet a1, the data packet a1 is unpacked, the transmission of the data packet a1 is completed, and when the transmission medium reaches the node B2, namely the destination node of the data packet B1, the data packet B1 is unpacked, and the transmission of the data packet B1 is completed.
In an alternative embodiment, the data packet to be transmitted includes the address of the destination node;
the data transmission module is further configured to:
analyzing the data packet to be transmitted and determining the address of the destination node;
when the transmission medium reaches the destination node, the data packet to be transmitted is unpacked.
For example, as shown in fig. 3, when the transmission medium arrives at the node C1 during the movement from the start point to the end point of the transmission path, the data packet a1B1 is unpacked, and the data packet B1 contains the address of the destination node A2, so that the data packet a1 can be resolved to continue to be transmitted to the node C2, and the data packet B1 can continue to be transmitted to the node B2, because the data packet a1 contains the address of the destination node A2. When the transmission medium reaches the node C2, unpacking the data packet a1, and because the data packet a1 contains the address of the destination node A2, the data packet a1 can be analyzed to continue to be transmitted to the transmission node A2, and the data packet a1 is unpacked; when the transmission medium reaches the node A2, unpacking the data packet a1, and analyzing that the data packet a1 reaches the destination node because the data packet a1 contains the address of the destination node A2, so as to finish the transmission of the data packet a 1; when the transmission medium arrives at the node B2, the data packet B1 is unpacked, and the data packet B1 arrives at the destination node after the data packet B1 contains the destination node B2 address, so that the transmission of the data packet B1 is completed.
In an alternative embodiment, the data packets to be transmitted include data volume information;
the data transmission module is further configured to:
when the transmission medium reaches any source node of the data packet to be transmitted, the data packet to be transmitted is packed and transmitted by the transmission medium, and the method comprises the following steps:
judging whether the data quantity of the data packet to be transmitted is larger than the capacity allowance of a transmission medium or not;
if the data quantity of the data packet to be transmitted is larger than the capacity allowance of the transmission medium, delay packaging the data packet to be transmitted;
and if the data quantity of the data packet to be transmitted is smaller than or equal to the capacity allowance of the transmission medium, packaging the data packet to be transmitted.
The bandwidth of the transmission medium refers to the amount of data that can be transmitted at a fixed time (e.g., every clock), and the capacity of the transmission medium is equal to or less than the bandwidth. Because the capacity of the transmission medium is fixed, the data volume capable of being transmitted is fixed in one clock period, and in the transmission process of a plurality of data packets, the data volume of each data packet to be transmitted needs to be judged at each transmission node so as to enable the transmission process of each data packet to be transmitted to be smoothly carried out. For example, assuming that the data bit width of the data packet a1 is 4 bits, the data bit width of the data packet b1 is 4 bits, the data packet c1 is already packed at one node, and assuming that the data packet c1 is still required to be packed at the transmission node, the remaining capacity of the transmission medium is 2 bits, it is determined that the capacity of the transmission medium is insufficient, the data packet c1 cannot be packed, one clock cycle is delayed, and the data packet c1 is packed at the next clock cycle.
The disclosure also relates to an inter-chip data transmission method, which comprises a transmission path, wherein each node in the transmission path is a chip, and the data transmission method is adopted to realize data transmission among the chips. The nodes in the transmission paths may include, for example, a source node, a destination node, and each transmission node in each transmission path of each data packet to be transmitted in the data transmission method.
The present disclosure also relates to an on-chip data transmission method, which includes a transmission path, where each node in the transmission path is a computing core in a many-core chip, and the data transmission method is adopted to implement data transmission between computing cores of the many-core chip. The nodes in the transmission paths may include, for example, a source node, a destination node, and each transmission node in each transmission path of each data packet to be transmitted in the data transmission method.
The disclosure also relates to an electronic device, including a server, a terminal, and the like. The electronic device includes: at least one processor; a memory communicatively coupled to the at least one processor; and a communication component in communication with the storage medium, the communication component receiving and transmitting data under control of the processor; the memory stores instructions executable by the at least one processor to implement the data transmission method in the above embodiment.
In an alternative embodiment, the memory is implemented as a non-volatile computer-readable storage medium, and is used to store non-volatile software programs, non-volatile computer-executable programs, and modules. The processor executes various functional applications of the device and data processing, i.e., implements a data transmission method, by running non-volatile software programs, instructions, and modules stored in the memory.
The memory may include a memory program area and a memory data area, wherein the memory program area may store an operating system, at least one application program required for a function; the storage data area may store a list of options, etc. In addition, the memory may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory optionally includes memory remotely located from the processor, the remote memory being connectable to the external device through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
One or more modules are stored in memory that, when executed by one or more processors, perform the methods of any of the method embodiments described above.
The product may execute the data transmission method provided by the embodiment of the present application, and has the corresponding functional module and beneficial effect of the execution method, and technical details not described in detail in the embodiment of the present application may refer to the data transmission method provided by the embodiment of the present application.
The present disclosure also relates to a computer-readable storage medium storing a computer-readable program for causing a computer to execute some or all of the above-described data transmission method embodiments.
That is, it will be understood by those skilled in the art that all or part of the steps in implementing the methods of the embodiments described above may be implemented by a program stored in a storage medium, where the program includes several instructions for causing a device (which may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps in the methods of the embodiments described herein. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the disclosure may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Furthermore, one of ordinary skill in the art will appreciate that while some embodiments described herein include some features but not others included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the present disclosure and form different embodiments. For example, in the claims, any of the claimed embodiments may be used in any combination.
It will be understood by those skilled in the art that while the present disclosure has been described with reference to exemplary embodiments, various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the present disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the essential scope thereof. Therefore, it is intended that the disclosure not be limited to the particular embodiments disclosed, but that the disclosure will include all embodiments falling within the scope of the appended claims.

Claims (10)

1. A method of transmitting data packets, the method comprising:
according to a plurality of transmission paths respectively corresponding to a plurality of data packets to be transmitted, determining a common transmission path among the plurality of transmission paths comprises:
acquiring a plurality of source nodes and destination nodes of the data packets to be transmitted;
respectively determining a plurality of transmission paths of the data packets to be transmitted according to the source nodes and the destination nodes of the data packets to be transmitted;
determining a transmission path in the same direction among the plurality of transmission paths as the common transmission path;
and on the common transmission path, transmitting the plurality of data packets to be transmitted together, including:
the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
when the transmission medium reaches the end point of the common transmission path, unpacking the plurality of data packets to be transmitted:
the method further comprises the steps of:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches any source node of the data packet to be transmitted, packaging any data packet to be transmitted, and transmitting the data packet to be transmitted by the transmission medium, wherein the data packet to be transmitted comprises data volume information, judging whether the data volume of the data packet to be transmitted is larger than the capacity allowance of the transmission medium, if so, delaying and packaging the data packet to be transmitted, and if not, packaging the data packet to be transmitted;
and unpacking the data packet to be transmitted when the transmission medium reaches any destination node of the data packet to be transmitted.
2. The method of claim 1, wherein the packetizing the data packet to be transmitted and transmitting by the transmission medium when the transmission medium reaches a source node of any of the data packets to be transmitted, comprises:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, and then packing the data packet to be transmitted; if not, directly packaging the data packet to be transmitted.
3. The method of claim 1, wherein the data packet to be transmitted comprises an address of a destination node;
when the transmission medium reaches any destination node of the data packet to be transmitted, unpacking the data packet to be transmitted, including:
analyzing the data packet to be transmitted, and determining the address of the destination node;
and unpacking the data packet to be transmitted when the transmission medium reaches the destination node.
4. A data packet transmission system, the system comprising:
the common path determining module is configured to determine a common transmission path among a plurality of transmission paths according to a plurality of transmission paths corresponding to a plurality of data packets to be transmitted, and is configured to:
acquiring a plurality of source nodes and destination nodes of the data packets to be transmitted;
respectively determining a plurality of transmission paths of the data packets to be transmitted according to the source nodes and the destination nodes of the data packets to be transmitted;
determining a transmission path in the same direction among the plurality of transmission paths as the common transmission path;
a data transmission module, configured to transmit the plurality of data packets to be transmitted together on the common transmission path, where the data transmission module is configured to: the transmission medium moves along the common transmission path;
when the transmission medium reaches the starting point of the common transmission path, packaging a plurality of data packets to be transmitted, and transmitting the data packets by the transmission medium;
when the transmission medium reaches the end point of the common transmission path, unpacking the plurality of data packets to be transmitted
The data transmission module is further configured to:
the transmission medium moves along a plurality of the transmission paths;
when the transmission medium reaches any source node of the data packet to be transmitted, unpacking the data packet to be transmitted and transmitting the data packet to be transmitted by the transmission medium, wherein the data packet to be transmitted comprises data volume information, judging whether the data volume of the data packet to be transmitted is larger than the capacity allowance of the transmission medium, if so, delaying and packing the data packet to be transmitted, and if not, packing the data packet to be transmitted;
and unpacking the data packet to be transmitted when the transmission medium reaches any destination node of the data packet to be transmitted.
5. The system of claim 4, wherein the data transmission module is configured to:
judging whether the current node is a destination node of another data packet to be transmitted, if so, unpacking the other data packet to be transmitted, then packing the data packet to be transmitted, and if not, directly packing the data packet to be transmitted.
6. The system of claim 4, wherein the data packet to be transmitted comprises an address of a destination node;
the data transmission module is configured to:
analyzing the data packet to be transmitted, and determining the address of the destination node;
and unpacking the data packet to be transmitted when the transmission medium reaches the destination node.
7. An inter-chip data transmission method, comprising a transmission path, wherein each node in the transmission path is each chip, and the method according to any one of claims 1-3 is adopted to realize data transmission between the chips.
8. An on-chip data transmission method, comprising a transmission path, wherein each node in the transmission path is each computing core in a many-core chip, and the method according to any one of claims 1-3 is adopted to realize data transmission between the computing cores.
9. An electronic device comprising a memory and a processor, wherein the memory is configured to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method of any of claims 1-3.
10. A computer readable storage medium having stored thereon a computer program, wherein the computer program is executed by a processor to implement the method of any of claims 1-3.
CN202010544093.XA 2020-06-15 2020-06-15 Data packet transmission method and system Active CN113810279B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010544093.XA CN113810279B (en) 2020-06-15 2020-06-15 Data packet transmission method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010544093.XA CN113810279B (en) 2020-06-15 2020-06-15 Data packet transmission method and system

Publications (2)

Publication Number Publication Date
CN113810279A CN113810279A (en) 2021-12-17
CN113810279B true CN113810279B (en) 2023-06-27

Family

ID=78944103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010544093.XA Active CN113810279B (en) 2020-06-15 2020-06-15 Data packet transmission method and system

Country Status (1)

Country Link
CN (1) CN113810279B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499997A (en) * 2008-01-29 2009-08-05 中兴通讯股份有限公司 Apparatus for multi-path low speed service multiplexing and demultiplexing, and method therefor
CN106506398A (en) * 2016-09-28 2017-03-15 乐视控股(北京)有限公司 Data transmission method, transmission terminal, receiving terminal and data transmission system
WO2018014342A1 (en) * 2016-07-22 2018-01-25 华为技术有限公司 Multi-channel service transporting and receiving method and device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9014559B2 (en) * 2011-05-26 2015-04-21 Fujitsu Limited Methods for efficient transmission in OTN networks
CN102315951B (en) * 2011-09-19 2015-05-27 华为技术有限公司 Transmission method for multicast message, correlated equipment and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499997A (en) * 2008-01-29 2009-08-05 中兴通讯股份有限公司 Apparatus for multi-path low speed service multiplexing and demultiplexing, and method therefor
WO2018014342A1 (en) * 2016-07-22 2018-01-25 华为技术有限公司 Multi-channel service transporting and receiving method and device
CN106506398A (en) * 2016-09-28 2017-03-15 乐视控股(北京)有限公司 Data transmission method, transmission terminal, receiving terminal and data transmission system

Also Published As

Publication number Publication date
CN113810279A (en) 2021-12-17

Similar Documents

Publication Publication Date Title
CN104348677A (en) Deep packet inspection method and equipment and coprocessor
US20120159132A1 (en) Accelerating Data Packet Parsing
CN114584582B (en) In-vehicle message processing method and device, vehicle-mounted terminal and storage medium
CN104158627B (en) A kind of automatic recognition system and method for heterogeneous links multi-protocols
CN105791439A (en) Data processing method, data receiving apparatus and data processing system
CN111131159A (en) Message parser and design method thereof
CN102750249B (en) The method that host computer communicates with slave computer, Apparatus and system
CN112787902B (en) Message encapsulation method and device and message decapsulation method and device
CN111061735A (en) Capacity expansion method and device based on single-chain block chain
CN112202595A (en) Abstract model construction method based on time sensitive network system
CN113810279B (en) Data packet transmission method and system
CN105577480A (en) Monitoring method and device of network connection performances
CN109861916A (en) A kind of data processing method and relevant device
CN104283741B (en) The method and device of the accurate big stream aging of detection
CN101047620B (en) Device and method for quickly processing message
CN113810280A (en) Data packet transmission method and system
US10200296B2 (en) Packet transport apparatus, packet transport system and packet transport method
CN114301813A (en) Time delay measuring method and device for PING detection
CN113162906B (en) NoC transmission method
CN109495931A (en) The data transmission method and relevant apparatus of link aggregation
CN114490458A (en) Data transmission method, chip, server and storage medium
CN115378873A (en) Flow control method and system for improving Ethernet data transmission efficiency
CN114172895A (en) Routing method, routing device, computer equipment and storage medium
CN101494661A (en) Method and apparatus for reading data of protocol stack of transmission control protocol/internet protocol
CN104348821A (en) Method, equipment and system for managing services of IPv4/IPv6 (internet protocol version 4/internet protocol version 6)

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