Packet transmission method and packet transmission device

By buffering and reordering the received data packets in the network device, the problem of uncertain packet transmission delay and jitter in complex WAN is solved, and deterministic data transmission is realized, which is suitable for a variety of application scenarios.

JP7667879B2Active Publication Date: 2025-04-23NEW H3C TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2023571943
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-07-15
Publication Date
2025-04-23
Estimated Expiration
2041-07-15

AI Technical Summary

Technical Problem

The prior art is difficult to realize deterministic data transmission in complex wide area networks (WANs), especially on data packet transmission paths with high device density, and it is impossible to effectively ensure the certainty of delay and jitter.

Method used

By introducing a buffering mechanism in the network device, the received data packets are buffered within a preset time period and then forwarded, and the data packets are reordered and forwarded according to the stream mapping rules to reduce the jitter of the same-stream packets.

Benefits of technology

It realizes deterministic transmission of data packets in complex WAN environments, reduces jitter of data packets in the same current, improves the reliability and consistency of transmission, and is suitable for application scenarios such as smart grids and remote control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007667879000001
    Figure 0007667879000001
  • Figure 0007667879000002
    Figure 0007667879000002
  • Figure 0007667879000003
    Figure 0007667879000003
Patent Text Reader

Abstract

The embodiments of the present application provide a packet transmission method and a packet transmission device, which relate to the field of network technology and are applied to a first network device, and the method includes: receiving a packet sent from a second network device; buffering the received packet for a preset period and then forwarding the received packet. When the technical solution of the embodiments of the present application is applied, the adaptability of deterministic transmission to WAN is improved.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present application relates to the field of network technology, and in particular to a packet transmission method and a packet transmission device. [Background technology]

[0002] In network application scenarios such as "Smart Grid", "Telemedicine", "Audio / Video Entertainment", and "Industrial Remote Control", it is necessary to perform deterministic transmission for packets to achieve deterministic time delay and jitter. However, the current deterministic transmission has high requirements for the equipment on the packet transmission path, and is not well suited for complex wide area networks (WANs). Summary of the Invention

[0003] The present invention provides a packet transmission method and a packet transmission device for improving the adaptability of deterministic transmission to WAN. Specific technical solutions are as follows:

[0004] In a first aspect, an embodiment of the present application provides a packet transmission method applied to a first network device, the method comprising: receiving a packet transmitted from a second network device; and buffering the received packet for a preset period of time and then forwarding the received packet.

[0005] Optionally, the method further comprises: The method further includes reassembling the received packets, and after reassembly, packets belonging to the same flow are arranged in order.

[0006] Optionally, reconstructing the received packets further comprises: Reconstructing the received packets according to the first mapping rule.

[0007] Optionally, the first mapping rule includes a scheduling queue for buffering packets of the same flow.

[0008] Optionally, the first mapping rule includes a scheduling cycle for indicating a period for forwarding a packet; forwarding the received packet after buffering the received packet for a preset period of time The scheduling cycle for the received packet is completed, including buffering the received packet for a preset period of time and then forwarding the received packet.

[0009] Optionally, for the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is greater than or equal to a target time delay, and the target time delay is the time delay between the first network device and the second network device.

[0010] Optionally, the first mapping rule includes the preset time period.

[0011] Optionally, the first mapping rule is added to a header of the packet.

[0012] Optionally, a 5-tuple is added to the header of the packet to determine the flow to which the packet belongs; or A flow identifier is added to the header of the packet to determine the flow to which the packet belongs.

[0013] Optionally, the first network device and the second network device have the same scheduling frequency, and the scheduling frequency is a frequency that divides a scheduling cycle.

[0014] Optionally, the method further comprises: receiving a telemetry packet sent from a second network device to detect a quality of service of each path between the second network device and the first network device; and transmitting the telemetry packet to a controller.

[0015] Optionally, the quality of service includes time delay and jitter; The telemetry packet is suffixed with a timestamp from each network device along the path.

[0016] As a second aspect, an embodiment of the present application provides a packet transmission method applied to a controller, the method including: Sending a first mapping rule to a first network device, the first mapping rule being for instructing the first network device to buffer packets from a second network device for a preset period of time and then forward the received packets.

[0017] Optionally, the method further comprises: sending a second mapping rule to a second network device; the first mapping rule and the second mapping rule include a scheduling cycle for indicating a period for forwarding a packet; For the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is equal to or greater than a target time delay, and the target time delay is the time delay between the first network device and the second network device.

[0018] Optionally, the method further comprises: receiving a telemetry packet sent from a first network device to detect a quality of service of each path between the second network device and the first network device; determining a quality of service of each of the paths according to information added to the telemetry packets.

[0019] Optionally, the quality of service includes time delay and jitter; The telemetry packet is suffixed with a timestamp from each network device along the path.

[0020] Optionally, before transmitting the first mapping rule to the first network device, the method further comprises: receiving a request packet transmitted from a second network device for requesting a mapping rule for transmitting packets between the second network device and the first network device; The method further includes determining the first mapping rule according to the request packet.

[0021] Optionally, target transmission parameters are added to the request packet; determining the first mapping rule according to the request packet, determining, according to a quality of service of each path between the first network device and the second network device, a path whose quality of service satisfies the target transmission parameter and the first mapping rule;

[0022] As a third aspect, an embodiment of the present application provides a packet transmission device applied to a first network device, the device comprising: a first receiving means for receiving a packet transmitted from a second network device; and forwarding means for forwarding the received packets after buffering the received packets for a preset period of time.

[0023] As a fourth aspect, an embodiment of the present application provides a packet transmission device applied to a controller, the device comprising: The method includes: first transmitting means for transmitting a first mapping rule to a first network device, the first mapping rule being for instructing the first network device to buffer packets from a second network device for a preset period of time and then forward the received packets.

[0024] In a fifth aspect, an embodiment of the present application provides a network device, the network device comprising a processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions executable by the processor, the machine-executable instructions causing the processor to perform steps of the method according to any one of the first aspects above.

[0025] In a sixth aspect, an embodiment of the present application provides a controller, the controller comprising a processor and a machine-readable storage medium, the machine-readable storage medium storing machine-executable instructions executable by the processor, the machine-executable instructions causing the processor to perform steps of the method according to any one of the second aspects above.

[0026] In a seventh aspect, an embodiment of the present application provides a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the method according to any one of the first or second aspects above.

[0027] In an eighth aspect, embodiments of the present application provide a computer program which, when executed on a computer, causes the computer to perform the steps of the method according to any one of the first or second aspects above.

[0028] The embodiments of the present application have the following beneficial effects: In the technical solution according to the embodiment of the present application, the first network device buffers the received packet for a preset period. During the preset period during which the first network device buffers the received packet, the first network device can receive other packets belonging to the same flow as the received packet. In this way, when the first network device buffers the received packet for the preset period and then forwards the packet, the jitter caused by forwarding packets of the same flow can be reduced and deterministic transmission can be realized. As can be seen from this, in the technical solution according to the embodiment of the present application, the network device at the packet receiving side buffers the packet, thereby realizing deterministic transmission. The deterministic transmission method does not require other network devices on the transmission path. As a result, the technical solution according to the embodiment of the present application can be better adapted to complex WANs and can improve the adaptability of deterministic transmission to WANs.

[0029] Of course, any product or method embodying the present disclosure need not necessarily achieve all of the above advantages simultaneously. [Brief description of the drawings]

[0030] In order to more clearly explain the technical solutions of the embodiments of the present application and the prior art, the drawings used in the embodiments and the prior art will be briefly described below. The drawings described below are merely according to some embodiments of the present application, and it is obvious that those skilled in the art can obtain other embodiments based on these drawings.

[0031] [Figure 1] FIG. 1 is a schematic diagram of an example of a WAN according to an embodiment of the present application. [Diagram 2] FIG. 2 is a first flowchart of a packet transmission method according to an embodiment of the present application. [Diagram 3] FIG. 3 is a second flowchart of the packet transmission method according to an embodiment of the present application. [Figure 4] FIG. 4 is a schematic diagram of an example of a received packet according to an embodiment of the present application. [Diagram 5] FIG. 5 is a third flowchart of a packet transmission method according to an embodiment of the present application. [Figure 6] FIG. 6 is a fourth flowchart of the packet transmission method according to the embodiment of the present application. [Figure 7] FIG. 7 is a fifth flowchart of the packet transmission method according to the embodiment of the present application. [Figure 8] FIG. 8 is a sixth flowchart of the packet transmission method according to the embodiment of the present application. [Figure 9] FIG. 9 is a schematic diagram of another example of a WAN in accordance with an embodiment of the present application. [Figure 10] FIG. 10 is a seventh flowchart of the packet transmission method according to the embodiment of the present application. [Figure 11] FIG. 11 is an eighth flowchart of the packet transmission method according to the embodiment of the present application. [Figure 12] FIG. 12 is a schematic diagram of an example of transfer of an INT packet according to an embodiment of the present application. [Figure 13] FIG. 13 is a ninth flowchart of the packet transmission method according to an embodiment of the present application. [Figure 14] FIG. 14 is a tenth flowchart of the packet transmission method according to an embodiment of the present application. [Figure 15] FIG. 15 is a schematic diagram of a first structure of a packet transmission device according to an embodiment of the present application. [Figure 16] FIG. 16 is a schematic diagram of a second structure of a packet transmission device according to an embodiment of the present application. [Figure 17] FIG. 17 is a structural schematic diagram of a network device according to an embodiment of the present application. [Figure 18] FIG. 18 is a structural schematic diagram of a controller according to an embodiment of the present application. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0032] Hereinafter, the technical solutions of the embodiments of the present application will be described clearly and completely with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, not all of the embodiments. According to the embodiments of the present application, all other embodiments that a person skilled in the art can obtain based on the present application are all within the scope of protection of the present application.

[0033] The terms used in the examples of the present application will be explained below. Time Sensitive Network (TSN): A family of Ethernet standards that uses core technologies such as precise time synchronization and timing scheduling to realize time-synchronized, low-latency flow services and provide the basis for the integration of control, measurement, configuration, user interfaces (UIs), and file exchange infrastructure by providing low-latency, isochronous standard data to each unit in the system.

[0034] Time slot: A time slot is an equal division of time and is the smallest scheduling unit in TSN.

[0035] Deterministic network: A network that guarantees the deterministic bandwidth, time delay, jitter, and packet loss rate of a service. Deterministic network technology is a new Quality of Service (QoS) guarantee technology.

[0036] In network application scenarios such as "Smart Grid", "Telemedicine", "Audio / Video Entertainment", and "Industrial Remote Control", it is necessary to perform deterministic transmission for packets to achieve deterministic time delay and jitter, and then these networks can be called deterministic networks.

[0037] The demand for deterministic networks comes from two main aspects. First, compatibility with Ethernet standards: In traditional scenarios such as industrial automation and intelligent manufacturing, it is necessary to replace dozens of fieldbuses and real-time Ethernet standards with Ethernet, and to integrate information technology (IT) networks and operational technology (OT) networks, in order to realize shared network transmission of best-effort flows and time-delay-sensitive flows and reduce costs.

[0038] Second, providing deterministic services: With the rapid increase in communication traffic between machines, in new network application scenarios such as autonomous driving, remote surgery and holographic communication, it is necessary to build a hyperloop in the network in combination with technologies such as 5th Generation Mobile Communication Technology (5G) to realize end-to-end transmission of deterministic services, simply called deterministic transmission.

[0039] Traditional Internet and industrial networks mainly use the following four methods to guarantee QoS:

[0040] a) Capacity expansion / light load: Capacity expansion means expanding the bandwidth and allowing the network to be lightly loaded. Currently, Ethernet can achieve a single port bandwidth of 400Gbps.

[0041] b) Traffic Shaping: Using techniques such as token bucket and credit-based shaper to limit the rate of traffic on a specific port or traffic. For example, if the bandwidth of the output port of the upstream node is 8Gbps and the available bandwidth of the downstream node is only 2Gbps, the upstream node's transmission bandwidth must be limited to less than 2Gbps to avoid congestion on the downstream node.

[0042] c) Queue Scheduling: It means scheduling the traffic at the output ports of the switch by firstly assigning different priorities to the packets, then adding the packets to the corresponding priority queues, and finally processing the packets using different queue scheduling algorithms, e.g., Strict Priority (SP) algorithm and Weighted Round Robin (WRR) algorithm.

[0043] Here, the SP algorithm strictly schedules according to queue priority: packets in low priority queues are scheduled only after all packets in high priority queues have been scheduled.

[0044] The WRR algorithm assigns a weight to each queue and transmits traffic in order according to the weighted ratio, thereby preventing low-priority traffic from waiting for a long time.

[0045] d) Congestion control: When there is too much traffic and the buffer space in the buffer queue is insufficient, congestion and packet loss occur in the network, so congestion control is necessary. Currently, congestion is detected using congestion control methods based on explicit congestion marking such as Explicit Congestion Notification (ECN) and Data Center Transmission Control Protocol (DTCP), or congestion control methods based on Round-Trip Time (RTT) such as Timely and Swift, and the upstream node up to the sender can reduce the packet sending speed.

[0046] The above-mentioned technical proposals for guaranteeing QoS have the following problems. 1) Lack of guarantee for finite time delay jitter: Since the bandwidth resources of multiplexed output ports are statistically collected, there is no QoS guarantee mechanism in the time delay dimension. In best-effort transmission, queuing and congestion always occur, and the service time delay is on the order of 50 ms to 1 s, with a long tail of time delay.

[0047] 2) Difficulty in dealing with multicast and burst traffic: Because it is not possible to control the traffic on the sender side and the transmission time of packets, phenomena occur in which multiple data flows are concentrated at downstream nodes within the network (i.e., multicast) or traffic suddenly increases at a certain point (i.e., traffic bursts), causing congestion and packet loss within the network.

[0048] In order to solve the two problems mentioned above, the concept of Time Division Multiplexing (TDM) is introduced into related technologies, for example, TNS, which realizes clock synchronization and time slot planning. In short, the whole network realizes deterministic time delay and jitter by scheduling and forwarding packets with a unified beat.

[0049] (1) Clock synchronization: That is, the clocks in the entire network are synchronized, the clocks in the terminals and switches are the same, and the network cards also need to attach hard time stamps to packets.

[0050] Currently, there are two ways to synchronize clocks. One is the master-slave mode, where one most accurate clock is selected as the master clock, and all other slave clocks are synchronized with the master clock. The other is the voting mode, where, for example, there are nine devices in a domain, and the current clocks of five devices are expressed as 1:00 and the current clocks of four devices are expressed as 1:01, the clocks of all nine devices will be adjusted to 1:00 according to the principle of majority rule.

[0051] (2) Time slot planning: A time slot usually means a transmission resource in the time dimension of an output port of a switch.

[0052] For example, if the bandwidth of an output port of a switch is 1 Gbps and a single packet is 1,500 bytes, or 12,000 bits, the transmission of this packet will occupy a fixed time slot resource of 12 microseconds (μs) of that output port, but the fixed time slot resource that is occupied is determined by the transmission start time of the packet.

[0053] Since most industrial traffic consists of packets smaller than the Maximum Transmission Unit (MTU) that are sent periodically, the start time of sending packets from the terminal can be controlled, and global time slot planning (i.e., time division multiplexing) ensures that each packet is "triggered" and sent only at a pre-calculated time, and the time slots occupied when transmitted at the output port of each hop do not conflict with each other, thereby avoiding the occurrence of multicast and burst traffic and realizing "punctual" transmission.

[0054] The above-mentioned deterministic transmission based on TSN has the following disadvantages. 1. The network span is relatively small: The above-mentioned deterministic transmission based on TSN is only suitable for forwarding in Layer 2 networks, and the deterministic network is equivalent to a small local area network.

[0055] 2. Strict requirements for network devices: When it comes to clock synchronization, each network device must maintain the same frequency and time.

[0056] 3. All network devices on the path must support TSN. If even one of the network devices does not support TSN, the effect of end-to-end deterministic transmission cannot be achieved.

[0057] To solve the above problems, a Cyclic Specific Queuing and Forwarding (CSQF) mechanism based on segment routing is also introduced in the related art.

[0058] The controller assigns a segmented identification (SID) to each network device, and specifies an output port and a transmission cycle corresponding to the SID. The network device analyzes the packet header to obtain the SID attached to the packet, and further determines a specific output port and transmission cycle, and transmits the packet through the determined output port according to the determined transmission cycle.

[0059] The above packet transmission method based on the CSQF mechanism can solve the problem of small network span, but it also has the disadvantage that all network devices on the path must support the CSQF mechanism.

[0060] The real network is very complex. Between the source terminal and the destination terminal is a WAN, and there are many network devices between the source terminal and the destination terminal. It is difficult for all of these network devices to support the CSQF mechanism. This makes the related technology less adaptable to WANs for deterministic transmission.

[0061] In order to improve the adaptability of deterministic transmission to WAN, an embodiment of the present application provides a packet transmission method applied to the WAN shown in Fig. 1, where the WAN includes a controller and network devices R1 to R9. In Fig. 1, only nine network devices are illustrated as an example, but the present invention is not limited thereto.

[0062] Here, the network device may be a router, a switch, etc. The controller may be, but is not limited to, a Software Defined Network (SDN) controller or a collector, etc. The controller is used to manage the network devices in the entire WAN, perform path planning for deterministic transmission, and perform bandwidth reservation for deterministic transmission.

[0063] In the WAN shown in FIG. 1, terminal A is connected to network device R1, terminal B is connected to network device R9, and the WAN must be crossed between terminal A and terminal B. When terminal A needs to perform end-to-end deterministic transmission with terminal B, terminal A is the source terminal and terminal B is the destination terminal, network device R1 connected to terminal A and network device R9 connected to terminal B can be understood as gateway devices, network device R1 and network device R9 are key nodes of end-to-end deterministic transmission, and both have the same scheduling and forwarding frequency.

[0064] Based on the WAN shown in Fig. 1, an embodiment of the present application provides a packet transmission method applied to a first network device, as shown in Fig. 2. Here, the first network device may be any network device in the WAN. The above packet transmission method includes the following steps:

[0065] Step S21: Receive a packet transmitted from the second network device.

[0066] Step S22: After buffering the received packet for a preset period, the received packet is forwarded.

[0067] In the technical solution according to the embodiment of the present application, the first network device buffers the received packet for a preset period. During the preset period during which the first network device buffers the received packet, the first network device can receive other packets belonging to the same flow as the received packet. In this way, when the first network device buffers the received packet for the preset period and then forwards the packet, the jitter caused by forwarding packets of the same flow can be reduced and deterministic transmission can be realized. As can be seen from this, in the technical solution according to the embodiment of the present application, the network device at the packet receiving side buffers the packet, thereby realizing deterministic transmission. The deterministic transmission method does not require other network devices on the transmission path. As a result, the technical solution according to the embodiment of the present application can be better adapted to complex WANs and can improve the adaptability of deterministic transmission to WANs.

[0068] In the above step S21, the second network device may be any network device in a WAN. The second network device transmits a packet to another network device. The packet may be transmitted from a terminal to the second network device, or may be generated by the second network device itself.

[0069] In the above step S22, after receiving a packet, the first network device buffers the received packet, and after buffering for a preset period, forwards the received packet.

[0070] Here, the preset period can be set according to actual needs, for example, the preset period is 10 microseconds (μs), 20 μs, or 30 μs, etc.

[0071] In one embodiment of the present application, in order to reduce jitter caused by transmission of packets of the same flow, the embodiment of the present application further provides a packet transmission method, as shown in Figure 3, the method further includes step S220.

[0072] Step S220: The received packets are reconstructed, and after the reconstruction, packets belonging to the same flow are arranged in order.

[0073] In the present embodiment, the flow may be a data flow or a control flow.

[0074] In one alternative embodiment, to easily distinguish between different flows, a 5-tuple is added to the packet's header to determine which flow the packet belongs to.

[0075] In another alternative embodiment, to more precisely distinguish between different flows, a flow identifier is added to the packet header to determine which flow the packet belongs to.

[0076] The first network device receives packets, reassembles the received packets, and after the assembly, packets belonging to the same flow are arranged in order, i.e., recovery from disorder is realized.

[0077] For example, FIG. 4 shows a schematic diagram of received packets. In FIG. 4, rectangular frames represent packets, and packets with the same number are packets of the same flow. Packets of the same flow are not received in order by the first network device. As shown on the left side of FIG. 4, the first network device first receives one packet of flow 1, then one packet of flow 2, one packet of flow 3, and finally one packet of flow 1. The first network device reconstructs the received packets, so that packets of the same flow are arranged in order, as shown on the right side of FIG. 4.

[0078] Since packets of multiple flows may be transmitted between different network devices, the order in which the network devices receive packets of different flows is not fixed. The first network device receives packets and reconstructs the received packets, and after reconstruction, packets belonging to the same flow are arranged in order, so that the jitter of packet forwarding of the same flow can be further reduced.

[0079] In one embodiment of the present application, the first network device pre-stores a first mapping rule, and reconstructs a received packet according to the first mapping rule.

[0080] For example, after receiving a packet, the first network device determines a first mapping rule corresponding to the flow to which the received packet belongs, and further reconstructs the received packet according to the first mapping rule.

[0081] In one alternative embodiment, the first mapping rule includes a scheduling queue for buffering packets of the same flow.

[0082] In this case, the first network device can achieve recovery from the disorder by buffering packets of the same flow in the same scheduling queue.

[0083] In one alternative embodiment, the first mapping rule includes a scheduling cycle to indicate a period for forwarding the packet.

[0084] In this case, the above step S22 may be to forward the received packet after the schedule cycle of the received packet ends and buffer the received packet for a preset period of time.

[0085] For example, the preset period is one scheduling cycle, and if the scheduling cycle of a packet is the Xth scheduling cycle, the packet is transferred in the Xth to X+1th scheduling cycles.

[0086] By setting a scheduling cycle, packet transfers are controlled periodically, packet synchronization is easily achieved, and jitter in packet transmission is reduced.

[0087] In one embodiment of the present application, for the same flow, a time difference between a scheduling cycle of a first network device and a scheduling cycle of a second network device may be equal to or greater than a target time delay, and the target time delay is a time delay between the first network device and the second network device, thereby ensuring that the first network device can process packets more quickly after receiving packets from the second network device, and reducing the time delay between the first network device and the second network device.

[0088] In one optional embodiment, in order to easily control the received packets to reduce jitter, the first mapping rule includes a preset period.

[0089] A first mapping rule is added to the header of a packet sent from the second network device to the first network device to more easily control the received packets to reduce jitter.

[0090] In one alternative embodiment, the first network device and the second network device have the same scheduling frequency, and the scheduling frequency is a frequency that divides a scheduling cycle, which can further ensure end-to-end jitter.

[0091] In an embodiment of the present application, a packet transmission method is further provided, as shown in FIG. 5, the method includes the following steps:

[0092] Step S51: Receive a remote measurement packet sent from a second network device for detecting the service quality of each path between the second network device and the first network device.

[0093] Here, quality of service includes, but is not limited to, time delay, jitter, etc. The telemetry packets may be In-band Network Telemetry (INT) packets. The telemetry packets are suffixed with a timestamp from each network device on the path.

[0094] Step S52: Send a telemetry packet to the controller.

[0095] The embodiment of the present application facilitates the controller to determine the maximum time delay, specific encapsulation and processing operations, etc. of each path, and ensures that the deterministic transmission service is available within the QoS constraints.

[0096] Based on the above packet transmission method applied to the first network device, an embodiment of the present application further provides a packet transmission method applied to a controller, as shown in FIG. 6, which includes the following steps:

[0097] Step S61: Send a first mapping rule to a first network device, the first mapping rule being used to instruct the first network device to buffer a packet from a second network device for a preset period of time and then forward the received packet.

[0098] The controller can monitor the WAN. In one optional embodiment, when it is determined that the mapping rule of the first network device cannot meet the requirement of packet transmission between the first network device and the second network device, the controller can determine a new mapping rule, i.e., a first mapping rule, and send the first mapping rule to the first network device.

[0099] In another optional embodiment, as shown in FIG. 7, the controller determines the first mapping rule in the following manner.

[0100] Step S71: Receive a request packet sent from a second network device to request a mapping rule for transmitting packets between the second network device and the first network device.

[0101] Step S72: Determine a first mapping rule according to the request packet.

[0102] In an embodiment of the present application, when the controller receives a request packet sent from the second network device, it determines a first mapping rule, and further executes step S61 to send the first mapping rule to the first network device, thereby realizing deterministic transmission between the second network device and the first network device.

[0103] According to the embodiment of the present application, the controller can issue mapping rules according to actual needs and save network resources.

[0104] In one alternative embodiment, a target transmission parameter is added to the request packet, and a path whose service quality meets the target transmission parameter and a first mapping rule are determined according to the service quality of each path between the first network device and the second network device. Then, the second network device forwards the packet to the first network device along the determined path, and the first network device forwards according to the first mapping rule, so as to realize the deterministic transmission required by the user.

[0105] Here, the target transmission parameters may be the bandwidth required for packet transmission, the time delay of packet transmission, and so on.

[0106] In one optional embodiment, the embodiment of the present application further provides a packet transmission method, as shown in FIG. 8, including the following steps.

[0107] Step S81: Receive a remote measurement packet sent from a first network device for detecting the service quality of each path between a second network device and the first network device.

[0108] Step S82: Determine the service quality of each path according to the information added to the telemetry packet.

[0109] According to the embodiment of the present application, the controller can determine the maximum time delay, specific encapsulation and processing operations, etc. of each path, and ensure that the deterministic transmission service is available within the QoS constraints.

[0110] In an embodiment of the present application, the controller further includes sending a second mapping rule to the second network device, where the first mapping rule and the second mapping rule include a scheduling cycle for indicating a period for forwarding the packet. For the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is equal to or greater than a target time delay, where the target time delay is the time delay between the first network device and the second network device.

[0111] This can ensure that the first network device processes the packet more quickly after receiving the packet from the second network device, and reduce the time delay between the first network device and the second network device.

[0112] In the following, a packet transmission method according to an embodiment of the present application is described in combination with the WAN shown in Figure 1. The end-to-end deterministic transmission between terminal A and terminal B includes:

[0113] Terminal A transmits packet 1 with flow identifier (Flow Identity, FlowID) 9 added to network device R1.

[0114] After receiving packet 1, network device R1 determines path 1 (such as a path indicated by network devices R1→R3→R7→R9 in FIG. 1) corresponding to flow identifier 1 and mapping rule 1 according to the correspondence relationship between flow identifiers, paths, and mapping rules stored in advance. In FIG. 1, SA represents a source address, DA represents a destination address, and a dashed line with an arrow represents a transmission path of a packet. F9, Q7, T3, etc. in the packet represent mapping rules.

[0115] Here, the mapping rule indicates a packet forwarding rule, and may be set according to actual needs. The mapping rule includes, but is not limited to, information such as a scheduling queue corresponding to a flow identifier, a scheduling cycle, and a buffering time.

[0116] For example, the mapping rule includes FX1, QX2, and TX3. FX1 is a FlowID. QX2 is an identifier of a scheduling queue, and represents the X2 queue, that is, a packet with FlowID X1 is mapped to the X2 queue. TX3 is a scheduling cycle, and represents the X3 scheduling cycle, that is, a packet with FlowID X1 is transferred in the X3 scheduling cycle. The mapping rule also includes a buffering time (i.e., the above preset period) to facilitate packet synchronization and reducing jitter in packet transmission, etc. For example, the buffering time is one scheduling cycle, and at this time, the above mapping rule indicates that a packet with FlowID X1 is mapped to the X2 queue, and the packet buffered in the X2 queue is transferred in the X3 to X3+1 scheduling cycles.

[0117] It is assumed that mapping rule 1 includes F9, Q7, and T3, the buffering time is one schedule cycle, and path 1 is a path indicated by network devices R1 → R3 → R7 → R9 in Fig. 1. Network device R1 transfers packet 1 to network device R9 along path 1 in accordance with mapping rule 1, i.e., packet 1 with FlowID 9 added is mapped to the seventh queue, and packet 1 buffered in the seventh queue is transferred to network device R9 in the third to fourth scheduling cycles.

[0118] As an example, as shown in FIG. 1, network device R1 encapsulates the above mapping rule 1 in the header of packet 1, so that network device R9 can forward packet 1 accurately in accordance with mapping rule 1 and achieve deterministic transmission.

[0119] In Fig. 1, the mapping rules in the packet header only include F9, Q7, and T3 as an example, but are not limited to this. When a packet needs to be forwarded based on SRv6 technology, the packet header shown in Fig. 1 also includes information such as the SID of each network device on the path.

[0120] As another example, in order to reduce the pressure of packet transmission, the network device R1 may not encapsulate the above mapping rule 1 in the header of the packet 1. In the WAN shown in FIG. 9, SA represents the source address, DA represents the destination address, the dashed line with an arrow represents the transmission path of the packet, R9 added to the header of the packet represents the SID of the network device R9, R7 added to the header of the packet represents the SID of the network device R7, and R3 added to the header of the packet represents the SID of the network device R3. The network device R9 determines the corresponding mapping rule 1 according to the correspondence between the locally stored flow identifier and the mapping rule. FIG. 9 only illustrates the example of forwarding packets based on the SRv6 technology. When forwarding packets using other technologies, it is not necessary to add the SID to the packet header.

[0121] After receiving packet 1, network device R9 buffers packet 1 for a preset period in accordance with mapping rule 1, and then transmits packet 1 to terminal B, thereby achieving deterministic transmission.

[0122] In the above embodiment, only the case where a flow identifier is added to a packet is described as an example. If a flow identifier is not used, different flows can be distinguished, and a flow identifier may not be added to a packet.

[0123] As shown in Fig. 10, Fig. 10 is a seventh flowchart of a packet transmission method according to an embodiment of the present application. The method is applied to a second network device connected to a source terminal, and includes the following steps:

[0124] Step S101: Obtain a target packet with a target flow identifier added thereto, which is sent from a source terminal.

[0125] In an embodiment of the present application, the source terminal transmits a packet, ie, a target packet, to a second network device, and the flow identifier added to the target packet is the target flow identifier.

[0126] Step S102: Determine a target path and a target mapping rule corresponding to the target flow identifier according to the correspondence relationship between the flow identifier, the path, and the mapping rule stored in advance.

[0127] In an embodiment of the present application, a correspondence relationship between a flow identifier, a path, and a mapping rule is pre-stored in the second network device. After acquiring a target packet, the second network device searches for a correspondence relationship including a target flow identifier from among the pre-stored correspondence relationships between flow identifiers, paths, and mapping rules. After searching for the correspondence relationship, the second network device sets a path included in the searched correspondence relationship as a target path corresponding to the target flow identifier, and sets a mapping rule included in the searched correspondence relationship as a target mapping rule.

[0128] Step S103: forward the target packet to the first network device along the target path with the same frequency of scheduling forwarding of the second network device according to the target mapping rule, so that the first network device sends the target packet to a destination terminal connected to the first network device according to the target mapping rule.

[0129] In an embodiment of the present application, the first network device and the second network device have the same frequency of packet scheduling and forwarding. For example, the first network device and the second network device both support the CSQF mechanism, and the first network device and the second network device divide a number of scheduling cycles according to the same scheduling frequency. In this way, the end-to-end network jitter can be ensured, and the time delay can be determined by bandwidth reservation and INT measurement. After obtaining the target path and the target mapping rule, the second network device forwards the target packet to the first network device along the target path according to the target mapping rule.

[0130] In one embodiment of the present application, the WAN determines paths based on Segment Routing (SR). For example, the controller uses a technology based on Segment Routing Internet Protocol Version 6 (SRv6) to set a segment identifier (SID) for each network device, and completes end-to-end visualization, path planning, bandwidth reservation, etc. based on the SID of each network device. Each network device forwards received packets using the SID.

[0131] In the embodiment of the present application, in addition to the first network device and the second network device, the target path may include one or more network devices. After receiving the target packet, the one or more network devices can directly forward the target packet without determining a specific forwarding cycle of the target packet. After receiving the target packet, the first network device sends the target packet to the destination terminal according to the target mapping rule based on the CSQF mechanism.

[0132] In the technical solution according to the embodiment of the present application, there is only a requirement for the second network device connected to the source terminal and the first network device connected to the destination terminal, that is, the frequency of the scheduling transmission of both needs to be the same, for example, only the first network device and the second network device need to support the CSQF mechanism, but there is no requirement for other network devices between the first network device and the second network device, so that deterministic time delay and jitter can be realized, and deterministic transmission can be realized. Therefore, the technical solution according to the embodiment of the present application can better adapt to complex WANs, and can improve the adaptability of deterministic transmission to WANs.

[0133] In an embodiment of the present application, the embodiment of the present application further provides a packet transmission method, as shown in FIG. 11, before step S101, the method further includes the following steps:

[0134] Step S1010: Send a transmission request packet from a source terminal to a controller, and add the target transmission parameters to the transmission request packet, so that the controller determines a target path and a target mapping rule that satisfy the target transmission parameters according to the service quality of each path between the first network device and the second network device pre-stored.

[0135] In an embodiment of the present application, when a source terminal needs to perform deterministic transmission of a packet to a destination terminal, the source terminal sends a transmission request packet to a second network device, and the second network device further sends a transmission request packet to a controller, and adds target transmission parameters to the transmission request packet, where the target transmission parameters include, but are not limited to, a Flow ID, a bandwidth required for packet transmission, a time delay of packet transmission, etc.

[0136] The controller pre-stores the quality of service of each path between the first network device and the second network device, where the quality of service of a path includes the remaining bandwidth of the path, the time delay of the path, and the queue resource of the path, etc.

[0137] After receiving a transmission request packet, the controller obtains target transmission parameters from the transmission request packet, and determines a target path whose service quality satisfies the target transmission parameters according to the pre-stored service quality of each path between the first network device and the second network device, and determines a target mapping rule.

[0138] Step S1011: Receive the target path and the target mapping rule issued by the controller, and store the correspondence between the target flow identifier, the target path, and the target mapping rule.

[0139] In an embodiment of the present application, after the controller determines the target path and the target mapping rule, it issues the target path and the target mapping rule to the second network device. The second network device receives the target path and the target mapping rule issued by the controller, and further stores the corresponding relationship between the target flow identifier, the target path, and the target mapping rule.

[0140] Thereafter, the second network device forwards the packet with the target flow identifier added based on the stored correspondence relationship between the target flow identifier, the target path, and the target mapping rule.

[0141] In an embodiment of the present application, the controller collects the service qualities of multiple paths between the first network device and the second network device, and performs joint planning for the paths, thereby further realizing deterministic transmission.

[0142] In one embodiment of the present application, after the controller determines the target path and the target mapping rule, it issues the corresponding target mapping rule to the first network device. In this way, the first network device stores the corresponding relationship between the target flow identifier and the target mapping rule, thereby realizing accurate deterministic transmission. Here, the target mapping rule stored in the first network device is different from the target mapping rule stored in the second network device only in the target time delay. The target time delay is the time delay between the first network device and the second network device.

[0143] In one embodiment of the present application, to achieve deterministic transmission, the second network device periodically sends telemetry packets to the first network device along each path between the first network device and the second network device, where the telemetry packets are used to detect the service quality of each path between the first network device and the second network device.

[0144] The first network device sends the received telemetry packet to the controller. After receiving the telemetry packet sent from the first network device, the controller obtains the service quality of each path between the first network device and the second network device from the telemetry packet, and further stores the service quality of each path between the first network device and the second network device.

[0145] In an embodiment of the present application, the telemetry packet may be an In-band Network Telemetry (INT) packet. When forwarding an INT packet along a path between a first network device and a second network device, a network device on the path inserts device information of the network device, a timestamp at which the network device receives the INT packet, and a timestamp at which the network device transmits the INT packet into the INT packet. Here, the timestamp at which the network device receives the INT packet and the timestamp at which the network device transmits the INT packet are collectively called a timestamp, and this timestamp is located at the end of the INT packet, and the device information of the network device is located in the header of the INT packet.

[0146] For example, Fig. 12 shows a schematic diagram of the transfer of an INT packet, in which SA represents a source address, DA represents a destination address, and a dashed line with an arrow represents a transmission path of the INT packet. When an INT packet is transferred along network devices R1 → R3 → R7 → R9, network device R1 inserts a timestamp TS1 at the end of the INT packet when transferring the INT packet, network device R3 inserts a timestamp TS3 at the end of the INT packet when transferring the INT packet, network device R7 inserts a timestamp TS7 at the end of the INT packet when transferring the INT packet, and network device R9 inserts a timestamp TS9 at the end of the INT packet when transmitting the INT packet to the controller. Fig. 12 shows only the INT packets transferred by network devices R1, R7, and R9.

[0147] Here, network devices R1, R3, R7, and R9 support INT and add timestamps to INT packets. On the other hand, network devices R2 and R8 are also on the path, but they do not support INT and therefore do not add timestamps to INT packets.

[0148] After receiving an INT packet sent from network device R9, the controller analyzes the timestamp added to the INT packet to determine the time delay and jitter of the path of network devices R1→R3→R7→R9, and further completes end-to-end QoS detection, which facilitates the controller to determine the maximum time delay, specific encapsulation and processing operations, etc. of each path, and ensures that the deterministic transmission service is effective within the QoS constraint range.

[0149] In the embodiment of the present application, when forwarding an INT packet along the path between the second network device and the first network device, in order to detect the end-to-end QoS more accurately, the network devices on the path send INT packets to the controller while forwarding the network devices to the next hop device. If one network device on the path does not send an INT packet to the controller, it is determined that the network device has a fault. Based on this, the controller can timely issue an alarm to indicate that the network device has a fault, and can also timely repair the network device.

[0150] Based on the packet transmission method applied to the second network device above, an embodiment of the present application further provides a packet transmission method applied to a first network device connected to a destination terminal, which includes the following steps, as shown in FIG. 13 :

[0151] Step S131: Receive a target packet with a target flow identifier attached, sent from a second network device with the same frequency as the scheduled forwarding frequency of the first network device, where the target packet is a packet from a source terminal connected to the second network device, sent from the second network device along a target path according to a target mapping rule corresponding to the target flow identifier.

[0152] Step S132: Send the target packet to the destination terminal according to the target mapping rule.

[0153] In one embodiment of the present application, if a target mapping rule is added to the target packet, the above step S132 may specifically be to send the target packet to the destination terminal according to the target mapping rule added to the target packet.

[0154] In another embodiment of the present application, when no target mapping rule is added to the target packet, the above step S132 specifically determines a target mapping rule corresponding to the target flow identifier according to the correspondence relationship between the flow identifier and the mapping rule stored in advance, and sends the target packet to the destination terminal according to the determined target mapping rule.

[0155] In one embodiment of the present application, in order to realize end-to-end deterministic transmission, the first network device receives a target mapping rule issued by the controller, which is a mapping rule that satisfies the target transmission parameters added to the transmission request packet, which are determined according to the service quality of each path between the second network device and the first network device that are pre-stored after the controller receives a transmission request packet from a source terminal, and stores a correspondence relationship between the target flow identifier and the target mapping rule.

[0156] In the embodiment of the present application, in order to accurately store the correspondence between the target flow identifier and the target mapping rule, the controller can also issue the target mapping rule to the first network device and issue the target flow identifier to the first network device.

[0157] In one embodiment of the present application, the first network device receives a remote measurement packet from the second network device and sends the remote measurement packet to the controller, where the remote measurement packet is for detecting the service quality of each path between the second network device and the first network device.

[0158] Here, the telemetry packet may be an INT packet or another type of telemetry packet.

[0159] In the technical solution according to the embodiment of the present application, there is only a requirement for the second network device connected to the source terminal and the first network device connected to the destination terminal, that is, the frequency of the scheduling transmission of both needs to be the same, for example, only the first network device and the second network device need to support the CSQF mechanism, but there is no requirement for other network devices between the first network device and the second network device, so that deterministic time delay and jitter can be realized, and deterministic transmission can be realized. Therefore, the technical solution according to the embodiment of the present application can better adapt to complex WANs, and can improve the adaptability of deterministic transmission to WANs.

[0160] In one embodiment of the present application, the embodiment of the present application further provides a packet transmission method, in which step S132 is subdivided into steps S1321 and S1322, as shown in FIG.

[0161] Step S1321: Rearrange the target packet according to the target flow identifier, so that the target packet is adjacent to other packets corresponding to the target flow identifier.

[0162] Step S1322: Send the relocated target packet to the destination terminal according to the target mapping rule.

[0163] In the technical solution of the embodiment of the present application, the first network device uses a flow identifier to rearrange packets, i.e., reconstruct packets, to realize recovery from disorder, to ensure that packets belonging to the same data flow are sent in order, to reduce jitter, and to realize end-to-end deterministic transmission.

[0164] Corresponding to the above packet transmission method, an embodiment of the present application further provides a packet transmission device applied to a first network device, as shown in FIG. 15, the device comprises: a first receiving means 151 for receiving a packet transmitted from a second network device; and forwarding means 152 for forwarding the received packet after buffering the received packet for a preset period.

[0165] Optionally, the device further comprises a reassembly means for reassembling received packets and for, after reassembly, packets belonging to the same flow being arranged in order.

[0166] Optionally, the reconstruction means specifically comprises: It is used to reconstruct the received packets according to the first mapping rule.

[0167] Optionally, the first mapping rule includes a scheduling queue for buffering packets of the same flow.

[0168] Optionally, the first mapping rule includes a scheduling cycle for indicating a period for forwarding a packet; Specifically, the transfer means is The schedule cycle of the received packet is completed and the received packet is buffered for a preset period of time, after which the received packet is used for forwarding.

[0169] Optionally, for the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is greater than or equal to a target time delay, and the target time delay is the time delay between the first network device and the second network device.

[0170] Optionally, the first mapping rule includes the preset time period.

[0171] Optionally, the first mapping rule is added to a header of the packet.

[0172] Optionally, a 5-tuple is added to the header of the packet to determine the flow to which the packet belongs; or A flow identifier is added to the header of the packet to determine the flow to which the packet belongs.

[0173] Optionally, the first network device and the second network device have the same scheduling frequency, and the scheduling frequency is a frequency that divides a scheduling cycle.

[0174] Optionally, the apparatus further comprises: The network further includes a second receiving means for receiving a remote measurement packet transmitted from a second network device for detecting the service quality of each path between the second network device and the first network device, and for transmitting the remote measurement packet to a controller.

[0175] Optionally, the quality of service includes time delay and jitter; The telemetry packet is suffixed with a timestamp from each network device along the path.

[0176] In the technical solution according to the embodiment of the present application, the first network device buffers a received packet for a preset period. During the preset period during which the first network device buffers the received packet, the first network device receives other packets belonging to the same flow as the received packet. In this way, when the first network device buffers the received packet for the preset period and then forwards the packet, it is possible to reduce jitter caused by forwarding packets of the same flow and realize deterministic transmission. As can be seen from this, in the technical solution according to the embodiment of the present application, the network device at the packet receiving side buffers the packet, thereby realizing deterministic transmission. The deterministic transmission method does not require other network devices on the transmission path. As a result, the technical solution according to the embodiment of the present application can be better adapted to complex WANs and can improve the adaptability of deterministic transmission to WANs.

[0177] Corresponding to the above packet transmission method, an embodiment of the present application further provides a packet transmission device applied to a controller, as shown in FIG. 16, the device comprises: The network device further comprises a first sending means 161 for sending a first mapping rule to a first network device, the first mapping rule being for instructing the first network device to buffer packets from a second network device for a preset period of time and then forward the received packets.

[0178] Optionally, the apparatus further comprises: further comprising a second transmitting means for transmitting a second mapping rule to a second network device; the first mapping rule and the second mapping rule include a scheduling cycle for indicating a period for forwarding a packet; For the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is equal to or greater than a target time delay, and the target time delay is the time delay between the first network device and the second network device.

[0179] Optionally, the apparatus further comprises: a first receiving means for receiving a remote measurement packet transmitted from a first network device for detecting a service quality of each path between the second network device and the first network device; The network further comprises a first determining means for determining the quality of service of each of the paths according to information added to the telemetry packets.

[0180] Optionally, the quality of service includes time delay and jitter, and the telemetry packets are suffixed with a timestamp from each network device along the path.

[0181] Optionally, the apparatus further comprises: a second receiving means for receiving a request packet for requesting a mapping rule for transmitting packets between the second network device and the first network device, the request packet being transmitted from the second network device before transmitting a first mapping rule to the first network device; The method further comprises: determining the first mapping rule according to the request packet.

[0182] Optionally, target transmission parameters are added to the request packet; Specifically, the second determination means According to the service quality of each path between the first network device and the second network device, a path whose service quality meets the target transmission parameter and a first mapping rule are used.

[0183] In the technical solution according to the embodiment of the present application, the first network device buffers the received packet for a preset period. During the preset period during which the first network device buffers the received packet, the first network device can receive other packets belonging to the same flow as the received packet. In this way, when the first network device buffers the received packet for a preset period and then forwards the packet, the jitter caused by forwarding packets of the same flow can be reduced and deterministic transmission can be realized. As can be seen from this, in the technical solution according to the embodiment of the present application, the network device at the receiving side of the packet buffers the packet, thereby realizing deterministic transmission. The deterministic transmission method does not require other network devices on the transmission path. As a result, the technical solution according to the embodiment of the present application can be better adapted to complex WANs and can improve the adaptability of deterministic transmission to WANs.

[0184] Corresponding to the above packet transmission method, an embodiment of the present application further provides a network device, and as shown in FIG. 17, the network device includes a processor 171 and a machine-readable storage medium 172, and machine-executable instructions executable by the processor 171 are stored in the machine-readable storage medium 172, and the machine-executable instructions cause the processor 171 to realize steps of any of the above packet transmission methods applied to the first network device.

[0185] Corresponding to the above packet transmission method, an embodiment of the present application further provides a network device, and as shown in FIG. 18, the network device includes a processor 181 and a machine-readable storage medium 182, and machine-executable instructions executable by the processor 181 are stored in the machine-readable storage medium 182, and the machine-executable instructions cause the processor 181 to realize any of the steps of the above packet transmission method applied to the controller.

[0186] The machine-readable storage medium may include a Random Access Memory (RM) and may include a Non-Volatile Memory (NVM), for example, at least one disk memory. Optionally, the machine-readable storage medium may be at least one storage device remote from the processor.

[0187] The processor may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc., or may be a Digital Signal Processing (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component.

[0188] In another embodiment of the present application, a computer-readable storage medium is further provided, having a computer program stored therein, which, when executed by a processor, performs steps of any of the above packet transmission methods applied to a first network device, or performs steps of any of the above packet transmission methods applied to a controller.

[0189] In another embodiment of the present application, a computer program is further provided, which, when executed on a computer, causes the computer to perform steps of any of the above packet transmission methods applied to a first network device, or to perform steps of any of the above packet transmission methods applied to a controller.

[0190] In the above embodiment, the whole or part may be realized by software, hardware, firmware, or any combination thereof. When realized by software, the whole or part may be realized in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or may be transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium accessible by a computer, or a data storage device including a server, a data center, etc., that integrates one or more available media. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state disk, SSD), etc.

[0191] In this specification, relational terms such as "first" and "second" are merely used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. In addition, the terms "comprise", "include", and other variations are intended to cover non-exclusive inclusions, such that a process, method, article, or device that includes a set of elements not only includes those elements, but also includes other elements not expressly listed, or includes elements inherent to such process, method, article, or device. Unless otherwise limited, an element defined by the phrase "including a ..." does not exclude the process, method, article, or device that includes the above element from having other identical elements.

[0192] In addition, although the embodiments in this specification are described so as to be mutually related, the same or similar parts between the embodiments may be referred to each other, and the important explanation of each embodiment is the difference from other embodiments. In particular, the embodiments of the device, the network device, the controller, the computer-readable storage medium, and the computer program are almost similar to the embodiments of the method, so that the explanation is simple, and the relevant parts may be referred to the explanation of the embodiments of the method.

[0193] The above description is merely a preferred embodiment of the present application, and does not limit the scope of protection of the present application. Any amendments, equivalent replacements, improvements, etc. made within the spirit and principle of the present application are all included in the scope of protection of the present application.

Claims

1. A packet transmission method for deterministic transmission applied to a wide area communication network, the packet transmission method being used in a first network device, The packet transmission method includes: receiving a packet transmitted from a second network device; and buffering the received packet for a preset period of time and then forwarding the received packet; The packet transmission method further includes reconstructing received packets according to a first mapping rule, and arranging packets belonging to the same flow in order after the reconstruction; The first mapping rule includes information of a scheduling cycle for indicating a period for transmitting a packet; forwarding the received packet after buffering the received packet for a preset period of time forwarding the received packet after a schedule cycle for the received packet has ended and buffering the received packet for a preset period of time; A packet transmission method comprising:

2. the first mapping rule includes information of a scheduling queue for buffering packets of the same flow; 2. The method of claim 1 .

3. For the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is equal to or greater than a target time delay, the target time delay being a time delay between the first network device and the second network device.

2. The method of claim 1 .

4. The first mapping rule includes information of the preset period.

2. The method of claim 1 .

5. The first mapping rule is added to a header of the packet. The method according to any one of claims 1 to 4.

6. A 5-tuple is added to the header of the packet to determine the flow to which the packet belongs, or A flow identifier is added to the header of the packet to determine the flow to which the packet belongs. The method according to any one of claims 1 to 4.

7. The first network device and the second network device have the same scheduling frequency, and the scheduling frequency is a frequency for dividing a scheduling cycle. The method according to any one of claims 1 to 4.

8. receiving a telemetry packet sent from the second network device to detect a quality of service of each path between the second network device and the first network device; transmitting the telemetry packet to a controller; The method according to any one of claims 1 to 4, further comprising:

9. The quality of service includes time delay and jitter; The telemetry packets are suffixed with a timestamp from each network device along the path.

9. The method of claim 8.

10. A packet transmission method for deterministic transmission in a wide area network, the packet transmission method being used by a controller, comprising: The packet transmission method includes: sending a first mapping rule to a first network device, the first mapping rule being for instructing the first network device to buffer a received packet from a second network device for a preset period of time and then forward the received packet; the first mapping rule is used to further instruct the first network device to reassemble received packets and, after reassembly, arrange packets belonging to the same flow in order; The first mapping rule includes information of a scheduling cycle for indicating a period for transmitting a packet; the first mapping rule is further used for instructing the first network device to forward the received packet after a schedule cycle of the received packet ends and buffering the received packet for a preset period of time; A packet transmission method comprising:

11. sending a second mapping rule to the second network device; the second mapping rule includes information of a scheduling cycle for indicating a period for transmitting a packet; For the same flow, a time difference between the scheduling cycle of the first network device and the scheduling cycle of the second network device is equal to or greater than a target time delay, the target time delay being a time delay between the first network device and the second network device.

11. The method of claim 10.

12. receiving a telemetry packet sent from a first network device to detect a quality of service of each path between the second network device and the first network device; determining a quality of service of each of the paths according to information added to the telemetry packets; 11. The method of claim 10, further comprising:

13. The quality of service includes time delay and jitter; The telemetry packets are suffixed with a timestamp from each network device along the path.

13. The method of claim 12.

14. Prior to transmitting the first mapping rule to the first network device, the method further comprises: receiving a request packet transmitted from the second network device for requesting a mapping rule for transmitting packets between the second network device and the first network device; determining the first mapping rule according to the request packet; 11. The method of claim 10, further comprising:

15. Target transmission parameters are added to the request packet; determining the first mapping rule according to the request packet, determining a path whose quality of service satisfies the target transmission parameter and the first mapping rule according to a quality of service of each path between the first network device and the second network device; 15. The method of claim 14.

16. A packet transmission device for deterministic transmission, applied to a wide area communication network, the packet transmission device being used in a first network device, The packet transmission device includes: a first receiving means for receiving a packet transmitted from a second network device; a forwarding means for forwarding the received packet after buffering the received packet for a preset period of time; the packet transmission device further comprises a reconstructing means for reconstructing received packets in accordance with a first mapping rule and for arranging packets belonging to the same flow in order after the reconstructing; The first mapping rule includes information of a scheduling cycle for indicating a period for transmitting a packet; the forwarding means is further used for forwarding the received packet after a schedule cycle of the received packet is completed and the received packet is buffered for a preset period of time; A packet transmission device comprising:

17. A packet transmission device for deterministic transmission, applied to a wide area communication network, the packet transmission device being used in a controller, The packet transmission device includes: a first sending means for sending a first mapping rule to a first network device, the first mapping rule being for instructing the first network device to buffer a received packet from a second network device for a preset period and then forward the received packet; the first mapping rule is used to further instruct the first network device to reassemble received packets and, after reassembly, arrange packets belonging to the same flow in order; The first mapping rule includes information of a scheduling cycle for indicating a period for transmitting a packet; the first mapping rule is further used for instructing the first network device to forward the received packet after a schedule cycle of the received packet ends and buffering the received packet for a preset period of time; A packet transmission device comprising:

18. A network device, A processor and a machine-readable storage medium, the machine-readable storage medium stores machine-executable instructions executable by the processor; The machine executable instructions cause the processor to perform the steps of the method of any one of claims 1 to 9. A network device comprising:

19. A controller, a processor and a machine-readable storage medium; the machine-readable storage medium stores machine-executable instructions executable by the processor; The machine executable instructions cause the processor to perform the steps of the method of any one of claims 10 to 15. A controller comprising:

20. 1. A computer-readable storage medium, comprising: A computer program is stored on the computer-readable storage medium, The computer program, when executed by a processor, implements the steps of the method according to any one of claims 1 to 9 or 10 to 15. A computer-readable storage medium comprising:

Citation Information

Patent Citations

  • Fluctuation absorbing method and apparatus, and computer-readable recording medium

    JP2004088390A

  • Relay device

    JP2015115704A

  • Switch device and switch device control method

    JP2017038226A

  • Packet Forwarding Method, Forwarding Device, and Network Device

    US20200259755A1

  • Network verification system

    WO2008126179A1