Search

US-12621249-B2 - Data processing method, apparatus, network device and storage medium

US12621249B2US 12621249 B2US12621249 B2US 12621249B2US-12621249-B2

Abstract

A data processing method, apparatus, network device and storage medium are disclosed. The method is applied to a network device in a WAN, wherein the network device is located on a specified path from a gateway of a first data center to a gateway of a second data center. The method comprises: storing the acquired first packet of a target service type in a first scheduling queue corresponding to a deterministic flow to which the packet belongs, the source address of the packet is the address of the first host in the first data center, the destination address of the first packet is the address of the second host in the second data center, and the forwarding path of the deterministic flow to which the first packet belongs is the specified path; forwarding the packet in the first scheduling queue when the scheduling period of the first scheduling queue is reached.

Inventors

  • Feng Liu
  • Shiyin ZHU
  • Yujun Zhang
  • Zuopin CHENG

Assignees

  • NEW H3C TECHNOLOGIES CO., LTD.

Dates

Publication Date
20260505
Application Date
20220929

Claims (20)

  1. 1 . A data processing method, which is applied to a network device in a WAN, wherein the network device is located on a specified path from a gateway of a first data center to a gateway of a second data center, the network device is the gateway of the first data center; the method comprises: storing an acquired first packet of a target service type in a first scheduling queue corresponding to a deterministic flow to which the first packet belongs, wherein a source address of the first packet is an address of a first host in the first data center, a destination address of the first packet is an address of a second host in the second data center, and a forwarding path of the deterministic flow to which the first packet belongs is the specified path; wherein storing the acquired first packet of the target service type in the first scheduling queue corresponding to the deterministic flow to which the first packet belongs, comprises: receiving a second packet, wherein a source address of the second packet is the address of the first host in the first data center, and a destination address of the second packet is the address of the second host in the second data center; generating the first packet forwarded along the specified path based on the second packet if a characteristic of the second packet matches a pre-configured packet characteristic for the target service type; and storing the first packet in the first scheduling queue, which is a scheduling queue corresponding to the deterministic flow to which the first packet belongs; forwarding the packet in the first scheduling queue when a scheduling period of the first scheduling queue is reached; determining a second scheduling queue according to whether a packet of the target service type is received within a preset duration before a current moment, if the characteristic of the second packet does not match the pre-configured packet characteristic for the target service type; storing the second packet in the second scheduling queue; and forwarding the packet in the second scheduling queue according to a forwarding strategy corresponding to the second scheduling queue.
  2. 2 . The method of claim 1 , wherein generating the first packet forwarded along the specified path based on the second packet, comprises: obtaining a target segment list corresponding to the specified path, wherein a segment identifier of the network device in the target segment list corresponds to the first scheduling queue; encapsulating the second packet as the first packet based on the target segment list, wherein the first packet is an SRv6 packet.
  3. 3 . A data processing method, which is applied to a network device in a WAN, wherein the network device is located on a specified path from a gateway of a first data center to a gateway of a second data center, the method comprises: storing an acquired first packet of a target service type in a first scheduling queue corresponding to a deterministic flow to which the first packet belongs, wherein a source address of the first packet is an address of a first host in the first data center, a destination address of the first packet is an address of a second host in the second data center, and a forwarding path of the deterministic flow to which the first packet belongs is the specified path; and forwarding the packet in the first scheduling queue when a scheduling period of the first scheduling queue is reached, wherein the network device is an intermediate device on the specified path or the gateway of the second data center, and the packet of the target service type is an SRv6 packet; storing the acquired first packet of the target service type in the first scheduling queue corresponding to the deterministic flow to which the first packet belongs, comprises: receiving a second packet, wherein a source address of the second packet is the address of the first host in the first data center, and a destination address of the second packet is the address of the second host in the second data center; obtaining a target segment list from the second packet if the second packet is an SRv6 packet and the network device supports SRv6; if a segment identifier of the network device in the target segment list corresponds to the first scheduling queue, taking the second packet as the first packet of the target service type, and storing the first packet in the first scheduling queue, which is a scheduling queue corresponding to the deterministic flow to which the first packet belongs.
  4. 4 . The method of claim 3 , further comprising: determining a second scheduling queue according to whether a packet of the target service type is received within a preset duration before a current moment, if the second packet is not the SRv6 packet, or the network device does not support SRv6, or the target segment list is not obtained, or there is no scheduling queue corresponding to the segment identifier of the network device in the target segment list; storing the second packet in the second scheduling queue; forwarding the packet in the second scheduling queue according to a forwarding strategy corresponding to the second scheduling queue.
  5. 5 . The method of claim 4 , wherein when the network device is the gateway of the second data center, forwarding the packet in the second scheduling queue according to the forwarding strategy corresponding to the second scheduling queue, comprises: obtaining an original packet corresponding to the packet in the second scheduling queue; forwarding the original packet to the second host in the second data center according to the forwarding strategy corresponding to the second scheduling queue.
  6. 6 . The method of claim 4 , wherein when the network device is the gateway of the second data center, forwarding the packet in the first scheduling queue comprises: removing SRv6 encapsulation of the packet in the first scheduling queue to obtain the original packet; forwarding the original packet to the second host in the second data center.
  7. 7 . The method of claim 1 , wherein determining the second scheduling queue according to whether the packet of the target service type is received within the preset duration before the current moment, comprises: determining the second scheduling queue from all scheduling queues in the network device if the packet of the target service type is not received within the preset duration before the current moment; determining the second scheduling queue from all scheduling queues in the network device except the first scheduling queue, if the packet of the target service type is received within the preset duration before the current moment.
  8. 8 . The method of claim 1 , wherein forwarding the packet in the second scheduling queue according to the forwarding strategy corresponding to the second scheduling queue, comprises: forwarding the packet(s) in the second scheduling queue in a first-in-first-out mode; or, forwarding the packet in the second scheduling queue when a scheduling period of the second scheduling queue is reached.
  9. 9 . The method of claim 1 , wherein storing the first packet in the first scheduling queue, comprises: emptying the first scheduling queue if a packet of any other service type is stored in the first scheduling queue; storing the first packet in the emptied first scheduling queue.
  10. 10 . The method of claim 1 , further comprising: receiving first path information issued by a controller, wherein the first path information comprises scheduling information and the scheduling period of the first scheduling queue, and the scheduling information indicates that the deterministic flow to which the packet of the target service type belongs corresponds to the first scheduling queue; associating the deterministic flow to which the packet of the target service type belongs with the first scheduling queue in the network device, and configuring the scheduling period of the first scheduling queue in the network device according to the scheduling period comprised in the first path information.
  11. 11 . The method of claim 10 , further comprising: receiving second path information issued by the controller, wherein the second path information comprises one or more of: a target segment list corresponding to the specified path, a packet characteristic for the target service type, and a correspondence between the first scheduling queue and a segment identifier of the network device in the target segment list; performing at least one of following operations according to the second path information: associating the specified path with the target segment list; associating the packet characteristic for the target service type with the deterministic flow to which the packet of the target service type belongs; establishing the correspondence between the first scheduling queue and the segment identifier of the network device in the target segment list.
  12. 12 . The method of claim 11 , wherein the first path information and the second path information are determined by the controller according to specified network resource information of the WAN and a transmission indicator of the deterministic flow of the target service type.
  13. 13 . The method of claim 12 , wherein the specified network resource information is obtained by detecting, by the controller, the WAN through an in-band network telemetry.
  14. 14 . The method of claim 12 , wherein the specified network resource information comprises one or more of: network topology information, network bandwidth, network time delay and network jitter.
  15. 15 . A network device, which comprises a processor and a machine-readable, non-transitory, storage medium having stored therein a computer program that can be executed by the processor to cause the processor to perform the method of claim 1 .
  16. 16 . A non-transitory machine-readable storage medium having stored therein a computer program which, when executed by a processor, cause the processor to perform the method of claim 1 .
  17. 17 . The method of claim 3 , further comprising: receiving first path information issued by a controller, wherein the first path information comprises scheduling information and the scheduling period of the first scheduling queue, and the scheduling information indicates that the deterministic flow to which the packet of the target service type belongs corresponds to the first scheduling queue; and associating the deterministic flow to which the packet of the target service type belongs with the first scheduling queue in the network device, and configuring the scheduling period of the first scheduling queue in the network device according to the scheduling period comprised in the first path information.
  18. 18 . The method of claim 17 , further comprising: receiving second path information issued by the controller, wherein the second path information comprises one or more of: a target segment list corresponding to the specified path, a packet characteristic for the target service type, and a correspondence between the first scheduling queue and a segment identifier of the network device in the target segment list; performing at least one of following operations according to the second path information: associating the specified path with the target segment list; associating the packet characteristic for the target service type with the deterministic flow to which the packet of the target service type belongs; and establishing the correspondence between the first scheduling queue and the segment identifier of the network device in the target segment list.
  19. 19 . The method of claim 18 , wherein the first path information and the second path information are determined by the controller according to specified network resource information of the WAN and a transmission indicator of the deterministic flow of the target service type.
  20. 20 . The method of claim 19 , wherein the specified network resource information is obtained by detecting, by the controller, the WAN through an in-band network telemetry.

Description

CROSS REFERENCE TO RELATED APPLICATION The present application is a national phase application under 35 U.S.C. § 371 of International Application No. PCT/CN2022/122841, filed Sep. 29, 2022, the entire contents of which are incorporated herein by reference in their entirety. TECHNICAL FIELD The application relates to the field of communications, and more particularly to a data processing method, apparatus, a network device and a storage medium. BACKGROUND To solve the delay of server-side data processing in network transmission, RDMA (Remote Direct Memory Access) services are developed. RDMA service requires high reliability of network transmission, which is mainly manifested in packet loss and time delay. However, there are many reasons for packet loss in a WAN (wide area network), and its reliability is poor, which leads to the sharp decline in RDMA service performance when transmitting RDMA services based on the WAN. SUMMARY The examples of the present disclosure aim to provide a data processing method, apparatus, a network device and a storage medium, so as to reduce the packet loss caused by uncertain time delay and jitter, and to improve the performance of services with high requirements on network transmission reliability, such as RDMA services, when applied to a WAN. Specifically, the technical solutions are as follows. In a first aspect, an example of the present disclosure provides a data processing method, which is applied to a network device in a WAN, wherein the network device is located on a specified path from a gateway of a first data center to a gateway of a second data center, and the method comprises: storing an acquired first packet of a target service type in a first scheduling queue corresponding to a deterministic flow to which the first packet belongs, wherein a source address of the first packet is an address of a first host in the first data center, a destination address of the first packet is an address of a second host in the second data center, and a forwarding path of the deterministic flow to which the first packet belongs is the specified path;forwarding the packet in the first scheduling queue when a scheduling period of the first scheduling queue is reached. In a second aspect, an example of the present disclosure provides a data processing apparatus, which is applied to a network device in a WAN, wherein the network device is located on a specified path from a gateway of a first data center to a gateway of a second data center, the apparatus comprises: a first storage unit, to store an acquired first packet of a target service type in a first scheduling queue corresponding to a deterministic flow to which the first packet belongs, wherein a source address of the first packet is an address of a first host in the first data center, a destination address of the first packet is an address of a second host in the second data center, and a forwarding path of the deterministic flow to which the first packet belongs is the specified path;a forwarding unit, to forward the packet in the first scheduling queue when a scheduling period of the first scheduling queue is reached. In a third aspect, an example of the present disclosure provides a network device, which comprises a processor and a machine-readable storage medium having stored therein a computer program that can be executed by the processor to cause the processor to perform any of the above data processing methods. In a fourth aspect, an example of the present disclosure provides a machine-readable storage medium having stored therein a computer program which, when executed by a processor, cause the processor to perform any of the above data processing methods. In a fifth aspect, an example of the present disclosure provides a computer program which, when executed by a processor, causes the processor to perform any of the above data processing methods. In the technical solution provided by the example of the present disclosure, a network device in a WAN stores a packet of a target service type with high requirements on network transmission reliability, such as RDMA services, in a specified scheduling queue, and forwards the packet in the scheduling queue when the scheduling period of the scheduling queue is reached. Because the scheduling period of the specified scheduling queue is determined, forwarding the packet of the target service type with high requirements on network transmission reliability in the scheduling period of the specified scheduling queue can ensure that the transmission delay and jitter of the packet of the target service type are limited, realize the deterministic and bounded time delay transmission of the packet of the target service type, reduce the packet loss caused by uncertain time delay and jitter, and improve the performance of RDMA services and other services with high requirements on network transmission reliability when applied to the WAN. It should be understood that any product or method for