WO2024065481A1 - 一种数据处理方法、装置、网络设备及存储介质 - Google Patents
一种数据处理方法、装置、网络设备及存储介质 Download PDFInfo
- Publication number
- WO2024065481A1 WO2024065481A1 PCT/CN2022/122841 CN2022122841W WO2024065481A1 WO 2024065481 A1 WO2024065481 A1 WO 2024065481A1 CN 2022122841 W CN2022122841 W CN 2022122841W WO 2024065481 A1 WO2024065481 A1 WO 2024065481A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- scheduling queue
- scheduling
- data center
- network device
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000012545 processing Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 19
- 238000005538 encapsulation Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 238000012360 testing method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 2
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/72—Routing based on the source address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2408—Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
Definitions
- the present application relates to the field of communication technology, and in particular to a data processing method, apparatus, network equipment and storage medium.
- RDMA Remote Direct Memory Access
- the purpose of the embodiments of the present application is to provide a data processing method, apparatus, network device and storage medium to reduce the packet loss problem caused by delay and jitter uncertainty, and improve the performance of RDMA services and other services that require high network transmission reliability when applied to wide area networks.
- the specific technical solutions are as follows:
- an embodiment of the present application provides a data processing method, which is applied to a network device in a wide area network, wherein the network device is located on a designated path from a gateway of a first data center to a gateway of a second data center, and the method includes:
- the first message of the target service type obtained is stored in a first scheduling queue corresponding to the deterministic flow to which the first message belongs, the source address of the first message is the address of the first host in the first data center, the destination address of the first message is the address of the second host in the second data center, and the forwarding path of the deterministic flow to which the first message belongs is the designated path;
- the message in the first scheduling queue is forwarded.
- an embodiment of the present application provides a data processing device, which is applied to a network device in a wide area network, wherein the network device is located on a designated path from a gateway of a first data center to a gateway of a second data center, and the device includes:
- a first storage unit used to store the acquired first message of the target service type into a first scheduling queue corresponding to the deterministic flow to which the first message belongs, the source address of the first message is the address of the first host in the first data center, the destination address of the first message is the address of the second host in the second data center, and the forwarding path of the deterministic flow to which the first message belongs is the designated path;
- a forwarding unit is used to forward the message in the first scheduling queue when the scheduling period of the first scheduling queue is reached.
- an embodiment of the present application provides a network device, comprising a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores a computer program that can be executed by the processor, and the processor is prompted by the computer program to implement any of the above-mentioned steps of the data processing method.
- an embodiment of the present application provides a machine-readable storage medium, wherein the machine-readable storage medium stores a computer program, and when the computer program is executed by a processor, any of the above-mentioned steps of the data processing method is implemented.
- an embodiment of the present application provides a computer program, which, when executed by a processor, implements any of the above-mentioned data processing method steps.
- the network device in the wide area network stores the target service type messages that require high network transmission reliability, such as RDMA services, in the designated scheduling queue, and forwards the messages in the scheduling queue when the scheduling period of the scheduling queue is reached. Because the scheduling period of the designated scheduling queue is determined, forwarding the target service type messages that require high network transmission reliability in the scheduling period of the designated scheduling queue can ensure that the transmission delay and jitter of the target service type messages are determined, and the transmission of the target service type messages with a deterministic bounded delay is achieved, which reduces the packet loss problem caused by the uncertainty of delay and jitter, and improves the performance of services that require high network transmission reliability, such as RDMA services, when applied to the wide area network.
- RDMA services network transmission reliability
- FIG1 is a schematic diagram showing the throughput of RDMA service read and write operations
- FIG2 is a schematic diagram of RDMA service transmission within a data center
- FIG3 is a schematic diagram of RDMA service transmission between data centers
- FIG4 is a schematic diagram of a network architecture provided in an embodiment of the present application.
- FIG5 is a schematic diagram of a first flow chart of a data processing method provided in an embodiment of the present application.
- FIG6 is a schematic diagram of a second flow chart of a data processing method provided in an embodiment of the present application.
- FIG. 7 is a detailed schematic diagram of step S62 in FIG. 6 ;
- FIG8 is a schematic diagram of a third flow chart of a data processing method provided in an embodiment of the present application.
- FIG9 is a detailed schematic diagram of step S63 in FIG6 and step S83 in FIG8;
- FIG10 is a schematic diagram of a fourth flow chart of a data processing method provided in an embodiment of the present application.
- FIG11 is a detailed schematic diagram of step S104 in FIG10 ;
- FIG12 is a schematic diagram of a network topology for actual testing provided by an embodiment of the present application.
- FIG13 is a schematic diagram of a structure of a data processing device provided in an embodiment of the present application.
- FIG. 14 is a schematic diagram of the structure of a network device provided in an embodiment of the present application.
- RDMA Remote Direct Memory Access
- RDMA service allows user-mode applications to directly read or write remote memory without kernel intervention and memory copying.
- RoCE RDMA over Converged Ethernet
- SRv6 Segment Routing IPv6, segment routing based on IPv6 forwarding plane: is a new generation of IP (Internet Protocol) bearer protocol. SRv6 adopts the existing IPv6 forwarding technology and realizes network programmability through flexible IPv6 extension headers.
- RDMA services place very high demands on network transmission, which is mainly reflected in the packet loss of the network.
- the performance of the throughput of RDMA service read and write operations under different packet loss rates is shown in Figure 1.
- the short dashed line represents the performance of the throughput of the read operation
- the long dashed line represents the performance of the throughput of the write operation.
- RDMA services are extremely sensitive to Ethernet packet loss. When the packet loss rate in Ethernet exceeds >10 -3 , the effective throughput of the network will drop sharply (the effective throughput is only about 75%). When the packet loss rate in Ethernet is reduced to 1%, the throughput of the RDMA service drops to 0. Based on Figure 1, if the throughput of the RDMA service is to be unaffected, the packet loss rate needs to be guaranteed to be less than one in 100,000, and it is best to have no packet loss.
- the main application of RDMA services is within the data center, and is transmitted through a lossless network combined with RoCE technology.
- the lossless network includes multiple spine nodes, such as spine1 and spine2 in Figure 2, and multiple leaf nodes, such as leaf1 and leaf2 in Figure 2.
- RDMA network cards are respectively provided on the sender and the receiver. After the sender copies the message data of the RDMA service of the application from the buffer to the RDMA network card, the network card driver drives the DMA network card to complete the sending of the message data of the RDMA service through the lossless network. The network card driver drives the DMA network card at the receiver to complete the reception of the message data of the RDMA service through the lossless network and copy the message data of the RDMA service to the buffer of the application.
- RDMA services also put forward the same requirements for the WAN interconnected between data centers and edge computing, mainly in terms of packet loss and latency.
- packet loss in the WAN There are many reasons for packet loss in the WAN. One of them is that the jitter is too large due to congestion, and the RDMA service message is misjudged as lost, which leads to the retransmission of the entire RDMA service message data.
- latency if the latency fluctuates, it will also cause a sharp drop in RDMA service performance.
- the WAN carries a large number of various types of services, including video, voice, file transfer, etc. When the WAN provides the best-effort network capability, different services affect each other.
- the RDMA service message is very easy to be affected by various large-bandwidth transmission services, resulting in large jitter and even packet loss, resulting in a sharp drop in RDMA service performance.
- an embodiment of the present application provides a data processing method, which is applied to a network device in a wide area network, and the network device is located on a designated path from the gateway of a first data center to the gateway of a second data center.
- the specific network architecture can be seen in Figure 4.
- the wide area network includes PE (Provider Edge, network side edge device) 1-2 and P (Provider, network side device) 1-6, PE1 is the gateway of data center 1, and PE2 is the gateway of data center 2.
- the first data center and the second data center are any two data centers connected by a wide area network, that is, the first data center and the second data center are located in different regions, such as data center 1 and data center 2 shown in Figure 4.
- the designated path is a pre-designated path for transmitting messages from the gateway of the first data center to the gateway of the second data center, such as the thick solid line with double arrows in Figure 4.
- the network device can be the gateway of the first data center, the gateway of the second data center, or an intermediate device, and the intermediate device is a network device other than the gateway of the first data center and the gateway of the second data center on the designated path, such as P1, P2, P5 and P6 in Figure 4.
- the network device can be a router, a switch, a firewall device, and other devices with communication functions.
- the network device in the wide area network stores the target service type messages that require high network transmission reliability, such as RDMA services, in the designated scheduling queue, and forwards the messages in the scheduling queue when the scheduling period of the scheduling queue is reached. Because the scheduling period of the designated scheduling queue is determined, forwarding the target service type messages that require high network transmission reliability in the scheduling period of the designated scheduling queue can ensure that the transmission delay and jitter of the target service type messages are determined, and the transmission of the target service type messages with a deterministic bounded delay is achieved, which reduces the packet loss problem caused by the uncertainty of delay and jitter, and improves the performance of services that require high network transmission reliability, such as RDMA services, when applied to the wide area network.
- RDMA services network transmission reliability
- Figure 5 is a first flow chart of a data processing method provided by an embodiment of the present application. The method is applied to a network device in a wide area network, and the network device is located on a designated path from a gateway of a first data center to a gateway of a second data center, and includes the following steps:
- Step S51 storing the acquired first message of the target service type into the first scheduling queue corresponding to the deterministic flow to which the first message belongs, the source address of the first message is the address of the first host in the first data center, the destination address of the first message is the address of the second host in the second data center, and the forwarding path of the deterministic flow to which the first message belongs is the designated path;
- Step S52 when the scheduling period of the first scheduling queue is reached, forward the message in the first scheduling queue.
- the network device in the wide area network stores the target service type messages that require high network transmission reliability, such as RDMA services, in the designated scheduling queue, and forwards the messages in the scheduling queue when the scheduling period of the scheduling queue is reached. Because the scheduling period of the designated scheduling queue is determined, forwarding the target service type messages that require high network transmission reliability in the scheduling period of the designated scheduling queue can ensure that the transmission delay and jitter of the target service type messages are determined, and the transmission of the target service type messages with a deterministic bounded delay is achieved, which reduces the packet loss problem caused by the uncertainty of delay and jitter, and improves the performance of services that require high network transmission reliability, such as RDMA services, when applied to the wide area network.
- RDMA services network transmission reliability
- the technical solution provided in the embodiment of the present application reduces the requirements for network devices and saves network deployment costs.
- the business flow of the target business type can be a business flow of the RDMA business, or a business flow of other business types that require high network transmission reliability.
- the business flow of the target business type can be one or more.
- a business flow of the target business type corresponds to a scheduling queue, and a scheduling queue can correspond to one or more business flows of the target business type.
- the scheduling queue is used to cache the received message.
- the first message is a message of the business flow of the target business type.
- the first message can be a message of the target business type sent by any host in the first data center to any host in the second data center.
- the business flow to which the first message belongs is a deterministic flow
- the forwarding path of the deterministic flow to which the first message belongs is the above-mentioned specified path, that is, the first message is forwarded along the above-mentioned specified path.
- any host in the first data center is the first host
- any host in the second data center is the second host.
- the forwarding path of this deterministic flow can be the same or different, and the scheduling queues corresponding to this deterministic flow can be the same or different.
- a lossless network can be used to transmit messages within the data center.
- the host in the first data center transmits messages to the gateway of the first data center through a lossless network.
- the gateway of the second data center transmits messages to the host in the second data center through a lossless network.
- the structure of the lossless network can refer to the lossless network structure in Figures 2 and 3 above.
- the lossless network can be configured using technologies such as ECN (Explicit Congestion Notification), PFC (Priority Flow Control), and DCBX (Data Center Bridging Exchange), without limitation.
- the network device After acquiring the first message of the target service type, the network device performs mapping and deterministic processing scheduling, that is, determining the scheduling queue corresponding to the service to which the first message belongs, that is, determining the scheduling queue corresponding to the deterministic flow to which the first message belongs.
- mapping and deterministic processing scheduling that is, determining the scheduling queue corresponding to the service to which the first message belongs, that is, determining the scheduling queue corresponding to the deterministic flow to which the first message belongs.
- the scheduling queue corresponding to the deterministic flow to which the message of the target service type belongs is referred to as the first scheduling queue, which does not serve as a limitation.
- the network device stores the first message in the first scheduling queue.
- each scheduling queue corresponding to the deterministic flow of the target service type is configured with a scheduling period, and the scheduling period represents the period for forwarding the messages in the corresponding scheduling queue.
- the scheduling period of the scheduling queue can be set by the controller according to the demand for transmitting messages, or can be configured by the network device itself according to the initial time of starting the scheduling queue, link delay and other information.
- the network device performs smooth shaping on the message according to the period, such as monitoring the scheduling period of each scheduling queue in real time, and forwarding the message stored in the first scheduling queue, such as the first message mentioned above, when monitoring the scheduling period reaching the first scheduling queue.
- the forwarding path of the deterministic flow to which the first message belongs is the specified path, therefore, when forwarding the first message stored in the first scheduling queue, the first message is actually forwarded along the specified path.
- the network device may be a gateway of the first data center, an intermediate device or a gateway of the second data center.
- the data processing method thereof is different.
- the embodiment of the present application when the network device is a gateway of the first data center, based on the embodiment shown in FIG. 5 , the embodiment of the present application further provides a data processing method, as shown in FIG. 6 , which may include the following steps:
- Step S61 receiving a second message
- the source address of the second message is the address of the first host in the first data center
- the destination address of the second message is the address of the second host in the second data center.
- Step S62 If the feature of the second message matches the message feature of the preconfigured target service type, a first message to be forwarded along a designated path is generated based on the second message.
- Step S63 store the first message into a first scheduling queue, where the first scheduling queue is a scheduling queue corresponding to the deterministic flow to which the first message belongs.
- Step S64 when the scheduling period of the first scheduling queue is reached, forward the message in the first scheduling queue. This is the same as the above step S52.
- the network device i.e., the gateway of the first data center, identifies the messages of the target business type and only transmits the messages of the target business type deterministically, and does not transmit the messages of other business types deterministically, thereby reducing the requirements of the network device and saving the bandwidth resources of the network device.
- the second message may be a message sent by any host in the first data center to any host in the second data center. That is, any host in the first data center may use lossless network technology to send the original message to the gateway of the first data center.
- the gateway of the first data center receives the original message sent by any host in the first data center, and the original message received by the gateway of the first data center is the second message.
- any host in the first data center is taken as the first host
- any host in the second data center is taken as the second host for illustration, which does not serve as a limitation.
- the message features may include but are not limited to port numbers, quintuples, and other information.
- the gateway of the first data center extracts the features of the second message and identifies the message of the target business type, that is, matches the features of the second message with the pre-configured message features of the target business type; if the features of the second message match the pre-configured message features of the target business type, that is, the features of the second message are the same as the pre-configured message features of the target business type, it means that the second message is a message of the target business type, and a first message is generated based on the second message, and the first message is forwarded along the above-mentioned specified path.
- the gateway of the first data center can determine the first scheduling queue corresponding to the deterministic flow to which the first message belongs, that is, determine the first scheduling queue corresponding to the first message, and then store the first message in the first scheduling queue.
- the step of generating a first message to be forwarded along a designated path based on the second message in the above step S62 may include steps S71 - S72 .
- Step S71 obtaining a target segment routing list corresponding to a specified path, wherein the segment identifier of the network device in the target segment routing list corresponds to a first scheduling queue.
- the gateway of the first data center can preset and store a segment routing list (Segment List) corresponding to the deterministic flow to which the message of the target service type belongs, that is, a SID (Segment Identifier) list, and the SID list corresponds to the specified path.
- a segment routing list (Segment List) corresponding to the deterministic flow to which the message of the target service type belongs, that is, a SID (Segment Identifier) list
- the SID list corresponds to the specified path.
- the SID information of the gateway of the first data center indicates the scheduling queue corresponding to the corresponding deterministic flow.
- the gateway of the first data center After receiving the second message and determining that the second message is a message of the target service type, the gateway of the first data center obtains the segment routing list corresponding to the deterministic flow to which the second message belongs from the pre-stored segment routing list, that is, the target segment routing list corresponding to the specified path.
- the gateway of the first data center pre-stores the correspondence between the message features and the segment routing list.
- the gateway of the first data center extracts the features of the second message, and then obtains the segment routing list corresponding to the features of the second message from the pre-stored correspondence between the message features and the segment routing list as the target segment routing list.
- Step S72 based on the target segment routing list, encapsulate the second message into a first message, where the first message is an SRv6 message.
- the gateway of the first data center After obtaining the target segment routing list, the gateway of the first data center encapsulates the second message into the first message, for example, encapsulates the second message with an SRv6 header, the SRv6 header includes the target segment routing list, and the second message encapsulated with the SRv6 header is the first message.
- the gateway of the first data center encapsulates the message from the first data center into an SRv6 message.
- the header of the SRv6 message includes a segment routing list, and the segment routing list can uniquely indicate a path, namely the above-mentioned specified path, thereby ensuring the deterministic transmission of the first message.
- the controller can pre-calculate the latency and jitter of each path from the gateway of the first data center to the gateway of the second data center, determine a path that meets the transmission indicators of the deterministic flow to which the first message belongs, that is, the designated path, and then configure the routing in each intermediate device on the designated path, so that when the intermediate device queries the route to forward the first message after receiving the first message, it can forward the first message along the designated path.
- the gateway of the first data center can obtain the first SID of the gateway of the first data center and the second SID of the gateway of the second data center, and encapsulate the second message into the first message based on the first SID and the second SID, and the first message is an SRv6 message.
- the SRv6 header of the first message may include SRH (Segment Routing Header), or may not include SRH.
- the SRv6 header of the first message includes SRH
- the SRH in the SRv6 header of the first message includes the first SID and the second SID
- the source IP address of the IPv6 basic header in the SRv6 header of the first message is the first SID
- the destination IP address is the second SID
- the SRv6 header of the first message includes SRH
- the source IP address of the IPv6 basic header in the SRv6 header of the first message is the first SID
- the destination IP address is the second SID.
- the gateway of the first data center can determine the first scheduling queue based on the source IP address of the IPv6 basic header, and then store the first message in the first scheduling queue.
- the gateway of the second data center can determine the first scheduling queue based on the destination IP address of the IPv6 basic header, and then store the first message in the first scheduling queue.
- the gateway of the first data center may also use other methods to generate the first message to be forwarded along the specified path, which is not limited to this.
- the embodiment of the present application further provides a data processing method, as shown in FIG. 8 , which may include the following steps:
- Step S81 receiving a second message
- the source address of the second message is the address of the first host in the first data center
- the destination address of the second message is the address of the second host in the second data center.
- Step S82 If the feature of the second message matches the message feature of the preconfigured target service type, a first message to be forwarded along a designated path is generated based on the second message.
- Step S83 store the first message into a first scheduling queue, where the first scheduling queue is a scheduling queue corresponding to the deterministic flow to which the first message belongs.
- Step S84 when the scheduling period of the first scheduling queue is reached, forward the message in the first scheduling queue.
- Steps S81-S84 are the same as the above-mentioned steps S61-S64.
- Step S85 If the feature of the second message does not match the pre-configured message feature of the target service type, a second scheduling queue is determined according to the reception status of messages of the target service type within a preset time period before the current moment.
- Step S86 storing the second message in the second scheduling queue.
- the gateway of the first data center can determine a scheduling queue in the scheduling queue of the network device as the second scheduling queue based on the reception of messages of the target business type within a preset time before the current moment, and store the second message in the second scheduling queue.
- the gateway of the first data center can also determine the second scheduling queue corresponding to the characteristics of the second message based on the correspondence between the pre-stored message characteristics and the scheduling cycle, and then store the second message in the second scheduling queue.
- the gateway of the first data center can also determine the second scheduling queue corresponding to the time slot for receiving the second message based on the pre-stored correspondence between the time slot and the scheduling cycle, and then store the second message in the second scheduling queue.
- the gateway of the first data center may also determine the second scheduling queue in other ways, such as randomly selecting a scheduling queue as the second scheduling queue, and this is not limited.
- the scheduling queue range of the second scheduling queue can be adjusted according to the actual situation.
- the gateway of the first data center can detect whether a message of the target business type is received within the preset time before the current moment; if the message of the target business type is not received within the preset time before the current moment, it means that there is a message of the target business type in the current wide area network, and the scheduling queue range of the second scheduling queue is determined to be all scheduling queues in the network device, that is, the second scheduling queue is determined from all scheduling queues in the network device; if the message of the target business type is received within the preset time before the current moment, it means that there is no message of the target business type in the current wide area network, and the scheduling queue range of the second scheduling queue is determined to be all scheduling queues in the network device except the first scheduling queue, that is, the second scheduling queue is determined from all scheduling queues in the network device except the first scheduling queue.
- the gateway of the first data center gives priority
- a message forwarding mode of a non-target service type may be pre-configured in the gateway of the first data center.
- the gateway of the first data center may process the second message according to the pre-configured message forwarding mode of the non-target service type, and store the processed second message in the second scheduling queue.
- the above message forwarding mode can be set according to the actual needs of the non-target service type.
- the message forwarding mode may be to forward the original message.
- the gateway of the first data center directly stores the received second message into the second scheduling queue.
- the message forwarding mode may be forwarding an SRv6 message.
- the gateway of the first data center encapsulates the received second message into an SRv6 message, and stores the encapsulated second message in the second scheduling queue.
- the SRv6 header of the encapsulated second message may include an SRH or may not include an SRH.
- the encapsulated second message is an SRv6 message
- the first message is also an SRv6 message
- the information carried in the SRv6 header of the encapsulated second message and the first message will be different.
- the segment identifier of the gateway of the first data center in the segment routing list of the first message corresponds to a scheduling queue
- the segment identifier of the gateway of the first data center in the segment routing list of the second message does not have a corresponding scheduling queue. Based on this, it is convenient for the intermediate devices on the specified path and the gateway of the second data center to distinguish between messages of the target business type and messages of non-target business types.
- Step S87 forward the message in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the forwarding strategy corresponding to the second scheduling queue can be first-in-first-out, that is, the gateway of the first data center can extract the message in the second scheduling queue in a first-in-first-out manner, and then query the routing table, and forward the message in the second scheduling queue according to the query result.
- the gateway of the first data center stores two scheduling queues, namely queue 1 and queue 2.
- the gateway of the first data center first stores the message of the non-target business type in queue 1, and then stores the message of the non-target business type in queue 2.
- the gateway of the first data center first forwards the message stored in queue 1, and then converts the message stored in queue 2.
- the forwarding strategy corresponding to the second scheduling queue can also be forwarding according to the scheduling period of the scheduling queue, that is, the gateway of the first data center can extract the message in the second scheduling queue when the scheduling period of the second scheduling queue is reached, and then query the routing table, and forward the message in the second scheduling queue according to the query result.
- the forwarding strategy corresponding to the second scheduling queue may also be in other forms, which is not limited to this.
- the gateway of the first data center queries the routing table according to the corresponding forwarding strategy to realize the forwarding of the message of the non-target business type without occupying fixed time and space resources, thereby ensuring the deterministic forwarding of the message of the target business type.
- step S63 and step S83 may include steps S91 - S93 .
- Step S91 detect whether there are messages of other service types stored in the first scheduling queue. If yes, execute step S92; if no, it means that the first scheduling queue is the cleared first scheduling queue, execute step S93.
- Step S92 clear the first scheduling queue.
- the first scheduling queue is a scheduling queue reserved for the target service type's message.
- the gateway of the first data center can store other service types' messages in the first scheduling queue, as described in the relevant description of steps S85-S86.
- the gateway of the first data center clears the first scheduling queue, such as discarding messages of other business types stored in the first scheduling queue, or transferring messages of other business types stored in the first scheduling queue to other scheduling queues.
- Step S93 store the first message in the cleared first scheduling queue.
- the gateway of the first data center clears the first scheduling queue
- the first message is stored in the first scheduling queue, thereby avoiding messages of other business types occupying resources for deterministic transmission and ensuring deterministic transmission of messages of the target business type.
- an embodiment of the present application further provides a data processing method, as shown in FIG. 10 , which may include the following steps:
- Step S101 receiving a second message
- the source address of the second message is the address of the first host in the first data center
- the destination address of the second message is the address of the second host in the second data center.
- Step S102 If the second message is an SRv6 message and the network device supports SRv6, a target segment routing list is obtained from the second message.
- Step S103 if the segment identifier of the network device in the target segment routing list corresponds to the first scheduling queue, the second message is used as the first message of the target service type, and the first message is stored in the first scheduling queue, which is the scheduling queue corresponding to the deterministic flow to which the first message belongs.
- Step S104 when the scheduling period of the first scheduling queue is reached, forward the message in the first scheduling queue. This is the same as the above step S52.
- the gateway of the first data center encapsulates the message from the first data center into an SRv6 message.
- the header of the SRv6 message includes a segment routing list, and the segment routing list can uniquely indicate a path, namely the above-mentioned specified path, thereby ensuring the deterministic transmission of the message of the target business type.
- the operations performed by the intermediate device and the gateway of the second data center are similar.
- the following description takes the intermediate device as the execution subject, which does not serve as a limitation.
- the second message received by the intermediate device or the gateway of the second data center is a message forwarded by the host in the first data center through the gateway of the first data center.
- the second message received by the intermediate device or the gateway of the second data center may be an original message of a non-target service type forwarded by the gateway of the first data center, or may be a first message of a target service type processed by the gateway of the first data center, or a message after encapsulation and processing of a message of a non-target service type.
- the message of the target service type is an SRv6 message.
- the intermediate device detects that the second message is an SRv6 message and the intermediate device supports SRv6, it parses the second message and obtains the target segment routing list carried by the second message.
- the gateway of the first data center encapsulates the message of the target service type into an SRv6 message, and then transmits the SRv6 message.
- the way in which the gateway of the first data center obtains the SRv6 message of the target service type can be seen in the embodiment shown in Figure 7 above.
- the second message can be considered as a message of a non-target service type.
- the intermediate device determines the second scheduling queue based on the reception of messages of the target service type within the preset time before the current moment, and stores the second message in the second scheduling queue; forwards the message in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the specific implementation of storing the second message in the second scheduling queue and forwarding the message in the second scheduling queue can be found in the relevant description of the above steps S85-S87, which will not be repeated here.
- the intermediate device can preset and store the SID list corresponding to the deterministic flow to which the message of the target business type belongs.
- the SID information of the intermediate device indicates the scheduling queue corresponding to the corresponding deterministic flow.
- the intermediate device obtains the target segment routing list, it determines the scheduling queue corresponding to the segment identifier of the intermediate device in the target segment routing list based on the pre-stored SID list, that is, the first scheduling queue corresponding to the deterministic flow to which the first message belongs. If the first scheduling queue is determined, it can be explained that the second message is the first message of the target business type, and then the first message is stored in the first scheduling queue.
- the SRv6 message of the target service type may also carry indication information, which indicates that the segment identifier of the intermediate device in the target segment routing list corresponds to the first scheduling queue.
- the indication information can be added in the SID list or in any position of the payload of the message. In this case, after the intermediate device obtains the target segment routing list, it determines whether the first message carries the above indication information. If it does, the first message can be stored in the first scheduling queue indicated by the indication information.
- the second message is an SRv6 message
- the intermediate device supports SRv6, but the target segment routing list is not obtained from the second message, or the first scheduling queue corresponding to the segment identifier of the intermediate device in the target segment routing list is not determined, that is, the segment identifier of the intermediate device in the target segment routing list does not have a corresponding scheduling queue
- the second message can be considered as a message of a non-target service type.
- the intermediate device determines the second scheduling queue based on the reception of messages of the target service type within a preset time before the current moment, and stores the second message in the second scheduling queue; forwards the message in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the specific implementation of storing the second message in the second scheduling queue and forwarding the message in the second scheduling queue can be found in the relevant description of the above steps S85-S87, which will not be repeated here.
- the intermediate device if the intermediate device does not support SRv6, the intermediate device does not need to determine whether the second message is a message of the target business type. It can directly determine the second scheduling queue based on the reception status of messages of the target business type within a preset time period before the current moment, and store the second message in the second scheduling queue; forward the message in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the gateway of the second data center can directly forward the original messages in the second scheduling queue when forwarding the messages in the second scheduling queue.
- the gateway of the second data center can obtain the original message corresponding to the message in the second scheduling queue; then, forward the original message to the second data center.
- the gateway of the second data center can strip the SRv6 encapsulation of the message in the second scheduling queue to obtain the original message, and then forward the original message to the second data center.
- step S103 storing the first message in the first scheduling queue may include: if the first scheduling queue stores messages of other service types, the intermediate device clears the first scheduling queue; and storing the first message in the cleared first scheduling queue.
- the intermediate device clears the first scheduling queue.
- step S104 in FIG. 10 may include steps S111 - S112 .
- Step S111 strip the SRv6 encapsulation of the message in the first scheduling queue to obtain the original message.
- the message of the target business type is an SRv6 message
- the message in the first scheduling queue is a message of the target business type
- the gateway of the second data center forwards the message in the first scheduling queue, it strips the SRv6 encapsulation of the message in the first scheduling queue to obtain the original message.
- Step S112 forwarding the original message to the second host in the second data center.
- the gateway of the second data center strips the SRv6 encapsulation of the first message, obtains the original message, and then forwards the original message to the second host in the second data center, so as to facilitate the processing of the original message by the second host in the data center.
- a controller can be deployed in a wide area network, such as the controller in Figure 4, and the controller can be an SDN (Software Defined Network) controller or other types of controllers.
- SDN Software Defined Network
- the controller sends the first path information to each network device, the first path information includes: scheduling information and a scheduling period of a first scheduling queue, the scheduling information indicates that the deterministic flow to which the message of the target business type belongs corresponds to the first scheduling queue; the network device stores the received first path information, and based on the first path information, associates the deterministic flow to which the message of the target business type belongs with the first scheduling queue in the network device, and configures the scheduling period of the first scheduling queue in the network device according to the scheduling period included in the first path information.
- the controller sends the second path information to each network device, the second path information including: a target segment routing list corresponding to the specified path, a message feature of the target service type, and a correspondence between the first scheduling queue and the segment identifier of the network device in the target segment routing list; the network device stores the received second path information, and performs at least one of the following operations based on the first path information:
- the message characteristics of the target service type are associated with the deterministic flow to which the message of the target service type belongs;
- a correspondence between the first scheduling queue and the segment identifier of the network device in the target segment routing list is established.
- all information included in the above-mentioned first path information and second path information can be issued by the controller; part of the information included in the first path information and the second path information is issued by the controller, and the information not issued by the controller is replaced by the information locally stored in the network device.
- the network device when the network device forwards the message of the target service type, based on the first path information sent by the controller and the second path information pre-stored by the network device, the network device configures the relevant information in the network device to assist the network device in forwarding the message.
- the configuration of the path information in each network device is completed through the above controller, which facilitates the unified management of each network device in the wide area network and ensures the deterministic transmission of the message of the target business type.
- the controller can collect designated network resource information of the wide area network and establish a resource model for the entire network.
- the designated network resource information may include one or more of network topology information, network bandwidth, network delay, and network jitter.
- the controller collects transmission indicators of deterministic flows of the target service type, and calculates the deterministic path that meets the transmission indicators and the encapsulation information of the SRv6 message based on the collected designated network resource information and the transmission indicators of the deterministic flow, combined with the message characteristics of the target service type, to obtain the first path information and the second path information.
- the controller may use an in-band network telemetry method to detect the wide area network and obtain designated network resource information. Based on the designated network resource information detected by the in-band network telemetry method, the delay and jitter required for each path can be accurately estimated, and then the deterministic path that meets the transmission index is determined, and the first path information and the second path information corresponding to the deterministic path are sent to each network device. In this embodiment, the delay and jitter required for each path can be accurately estimated by the in-band network telemetry method.
- the intermediate device does not execute the above data processing method, it can ensure that the selected deterministic path is valid within the QoS (Quality of Service) constraint range, and achieve deterministic transmission, which reduces the requirements for the intermediate device and further saves the network deployment cost.
- QoS Quality of Service
- the controller can flexibly schedule the resources of the wide area network according to specific business needs without occupying fixed network resources such as bandwidth, thereby improving network utilization efficiency.
- the data processing method provided by the embodiment of the present application has high network utilization efficiency and low network equipment requirements, realizes deterministic transmission with bounded delay, and can support more application scenarios in the future that require lossless wide area networks.
- Step 1 The RDMA service host in data center 1 sends the original message to gateway PE1 through the lossless network technology inside data center 1.
- PE1 starts processing WAN data after receiving the original message, see step 2.
- Step 2 PE1 identifies the RDMA service message according to the message characteristics of the RDMA service configured by the controller, maps it, performs deterministic processing and scheduling, and performs smooth shaping on the message in a periodic manner, encapsulates it into the corresponding SRv6 message, and sends it to the intermediate device P.
- the controller maps it, performs deterministic processing and scheduling, and performs smooth shaping on the message in a periodic manner, encapsulates it into the corresponding SRv6 message, and sends it to the intermediate device P.
- Step 3 The P device parses the SID information carried in the SRv6 message, performs deterministic related processing scheduling, and sends the SRv6 message to the gateway PE2 of the data center 2.
- the P device parses the SID information carried in the SRv6 message, performs deterministic related processing scheduling, and sends the SRv6 message to the gateway PE2 of the data center 2.
- the P device here may be P1, P2, P5 or P6 in FIG. 4 above.
- Step 4 PE2 performs deterministic processing and scheduling based on the SID information carried in the SRv6 message, removes the SRv6 encapsulation, and sends the original message to the device inside data center 2. At this point, the data processing in the WAN is completed.
- PE2 performs deterministic processing and scheduling based on the SID information carried in the SRv6 message, removes the SRv6 encapsulation, and sends the original message to the device inside data center 2.
- the data processing in the WAN is completed.
- Figures 5 and 10-11 above please refer to the description of Figures 5 and 10-11 above.
- Step 5 The device inside the data center 2 sends the original message to the RDMA service host through the internal lossless network technology.
- the deterministic solution of the wide area network is combined with the lossless network technology in the data center, so that the packet loss rate of the RoCE service message transmission process can be reduced and the deterministic bounded delay can be achieved.
- the lossless network technology is extended from within the data center to the wide area network, and the effect of an end-to-end lossless network across data centers can be achieved.
- the network equipment supports the scheduling queue reservation function, that is, when there are no messages of the target service type in the wide area network, messages of other service types can be stored in the scheduling queue corresponding to the deterministic flow to which the messages of the RDMA service belong.
- the data processing method provided by the embodiment of the present application is actually tested using a laboratory environment.
- the messages of the RoCE service are run on server 1 and server 2.
- Server 1 and server 2 are connected to switches SW1 and SW2 respectively, and a damage meter is inserted between SW1 and SW2 to simulate the delay and jitter of the wide area network.
- the port rates of the devices connected are 10G respectively.
- Server 1 and Server 2 send RoCE service packets, and simulate delay and jitter parameters on the damage instrument to observe and record the throughput of the RoCE service.
- the data processing method provided in the embodiment of the present application can achieve zero packet loss and deterministic bounded latency for RoCE services in wide-area transmission, thereby achieving RDMA service availability across data centers.
- an embodiment of the present application provides a data processing device, as shown in FIG13, which is applied to a network device in a wide area network, and the network device is located on a designated path from a gateway of a first data center to a gateway of a second data center, and the device includes:
- the first storage unit 131 is used to store the acquired first message of the target service type into a first scheduling queue corresponding to the deterministic flow to which the first message belongs, the source address of the first message is the address of the first host in the first data center, the destination address of the first message is the address of the second host in the second data center, and the forwarding path of the deterministic flow to which the first message belongs is the designated path;
- the forwarding unit 132 is configured to forward the message in the first scheduling queue when the scheduling period of the first scheduling queue is reached.
- the network device is a gateway of the first data center; the first storage unit 131 can be specifically used for:
- the source address of the second message is the address of the first host in the first data center
- the destination address of the second message is the address of the second host in the second data center
- the first message is stored in a first scheduling queue, where the first scheduling queue is a scheduling queue corresponding to the deterministic flow to which the first message belongs.
- the first storage unit 131 may be specifically used for:
- the second message is encapsulated into the first message, where the first message is an SRv6 message.
- the first storage unit 131 may also be used to determine a second scheduling queue according to the reception of messages of the target service type within a preset time period before the current moment if the feature of the second message does not match the message feature of the preconfigured target service type; store the second message in the second scheduling queue;
- the forwarding unit 132 may also be configured to forward the messages in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the network device is an intermediate device on the specified path or a gateway of the second data center, and the message of the target service type is an SRv6 message;
- the first storage unit 131 may be specifically used for:
- the source address of the second message is the address of the first host in the first data center
- the destination address of the second message is the address of the second host in the second data center
- the second message is an SRv6 message and the network device supports SRv6, obtaining a target segment routing list from the second message;
- the second message is used as the first message of the target service type, and the first message is stored in the first scheduling queue, which is the scheduling queue corresponding to the deterministic flow to which the first message belongs.
- the first storage unit 131 may also be used for:
- the second message is not an SRv6 message, or the network device does not support SRv6, or the target segment routing list is not obtained, or the segment identifier of the network device in the target segment routing list does not have a corresponding scheduling queue, then determine the second scheduling queue according to the reception of messages of the target service type within a preset time period before the current moment; store the second message in the second scheduling queue;
- the forwarding unit 132 may also be configured to forward the messages in the second scheduling queue according to the forwarding policy corresponding to the second scheduling queue.
- the forwarding unit 132 may be specifically configured to:
- the original message is forwarded to the second host in the second data center according to the forwarding policy corresponding to the second scheduling queue.
- the forwarding unit 132 may be specifically configured to:
- the original message is forwarded to the second host in the second data center.
- the first storage unit 131 may be specifically used for:
- a second scheduling queue is determined from all scheduling queues in the network device except the first scheduling queue.
- the forwarding unit 132 may be specifically configured to:
- the message in the second scheduling queue is forwarded.
- the first storage unit 131 may be specifically used for:
- the first message is stored in the cleared first scheduling queue.
- the data processing device may further include:
- a first receiving unit is used to receive first path information sent by the controller, the first path information includes scheduling information and a scheduling period of a first scheduling queue, and the scheduling information indicates that a deterministic flow to which a message of a target service type belongs corresponds to the first scheduling queue;
- the first configuration unit is used to associate the deterministic flow to which the message of the target service type belongs with the first scheduling queue in the network device, and configure the scheduling period of the first scheduling queue in the network device according to the scheduling period included in the first path information.
- the data processing device may further include:
- a second receiving unit is used to receive second path information sent by the controller, where the second path information includes: a target segment routing list corresponding to the specified path, a message feature of the target service type, and a correspondence between the first scheduling queue and the segment identifier of the network device in the target segment routing list.
- the second configuration unit is configured to perform at least one of the following operations according to the second path information:
- the message characteristics of the target service type are associated with the deterministic flow to which the message of the target service type belongs;
- a correspondence between the first scheduling queue and the segment identifier of the network device in the target segment routing list is established.
- the first path information and the second path information may be determined by the controller according to designated network resource information of the wide area network and transmission indicators of deterministic flows of the target service type.
- the specified network resource information may be obtained by the controller detecting the wide area network using an in-band network telemetry method.
- the specified network resource information may include one or more of network topology information, network bandwidth, network delay, and network jitter.
- the network device in the wide area network stores the target service type messages that require high network transmission reliability, such as RDMA services, in the designated scheduling queue, and forwards the messages in the scheduling queue when the scheduling period of the scheduling queue is reached. Because the scheduling period of the designated scheduling queue is determined, forwarding the target service type messages that require high network transmission reliability in the scheduling period of the designated scheduling queue can ensure that the transmission delay and jitter of the target service type messages are determined, and the transmission of the target service type messages with a deterministic bounded delay is achieved, which reduces the packet loss problem caused by the uncertainty of delay and jitter, and improves the performance of services that require high network transmission reliability, such as RDMA services, when applied to the wide area network.
- RDMA services network transmission reliability
- the technical solution provided in the embodiment of the present application reduces the requirements for network devices and saves the network deployment cost.
- An embodiment of the present application also provides a network device, as shown in FIG14 , comprising a processor 141 and a machine-readable storage medium 142, wherein the machine-readable storage medium 142 stores machine-executable instructions that can be executed by the processor 141, and the processor 141 is prompted by the machine-executable instructions to implement the method steps described in any of the embodiments of FIG4 to FIG12 above.
- the network device may be a gateway of the first data center, an intermediate device, or a gateway of the second data center.
- the machine-readable storage medium may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk storage.
- the machine-readable storage medium may also be at least one storage device located away from the aforementioned processor.
- the processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
- CPU central processing unit
- NP network processor
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- a machine-readable storage medium in which a computer program is stored.
- the computer program is executed by a processor, the method steps described in any of the embodiments of Figures 2 to 12 are implemented.
- a computer program is also provided.
- the computer program is executed by a processor, the method steps described in any of the embodiments of FIG. 2 to FIG. 12 are implemented.
- the computer program product includes one or more computer instructions.
- 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 transmitted from one computer-readable storage medium to another computer-readable storage medium.
- the computer instructions may be transmitted from one website, computer, server or data center to another website, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means.
- the computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated.
- the available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive Solid State Disk (SSD)), etc.
- SSD Solid State Disk
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (35)
- 一种数据处理方法,其特征在于,应用于广域网中的网络设备,所述网络设备位于第一数据中心的网关到第二数据中心的网关的指定路径上,所述方法包括:将获取到的目标业务类型的第一报文存储至所述第一报文所属确定性流对应的第一调度队列,所述第一报文的源地址为所述第一数据中心中的第一主机的地址,所述第一报文的目的地址为所述第二数据中心中的第二主机的地址,所述第一报文所属确定性流的转发路径为所述指定路径;当到达所述第一调度队列的调度周期时,转发所述第一调度队列中的报文。
- 根据权利要求1所述的方法,其特征在于,所述网络设备为所述第一数据中心的网关;所述将获取到的目标业务类型的第一报文存储至所述第一报文所属确定性流对应的第一调度队列的步骤,包括:接收第二报文,所述第二报文的源地址为所述第一数据中心中的第一主机的地址,所述第二报文的目的地址为所述第二数据中心中的第二主机的地址;若所述第二报文的特征与预配置的目标业务类型的报文特征匹配,则基于所述第二报文,生成沿所述指定路径转发的第一报文;将所述第一报文存储至第一调度队列,所述第一调度队列为所述第一报文所属确定性流对应的调度队列。
- 根据权利要求2所述的方法,其特征在于,所述基于所述第二报文,生成沿所述指定路径转发的第一报文的步骤,包括:获取所述指定路径对应的目标分段路由列表,所述目标分段路由列表中的所述网络设备的分段标识对应第一调度队列;基于所述目标分段路由列表,将所述第二报文封装为第一报文,所述第一报文为SRv6报文。
- 根据权利要求2所述的方法,其特征在于,所述方法还包括:若所述第二报文的特征与预配置的目标业务类型的报文特征不匹配,则根据在当前时刻之前的预设时长内所述目标业务类型的报文的接收情况,确定第二调度队列;将所述第二报文存储至所述第二调度队列;按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文。
- 根据权利要求1所述的方法,其特征在于,所述网络设备为所述指定路径上的中间设备或所述第二数据中心的网关,所述目标业务类型的报文为SRv6报文;所述将获取到的目标业务类型的第一报文存储至所述第一报文所属确定性流对应的第一调度队列的步骤,包括:接收第二报文,所述第二报文的源地址为所述第一数据中心中的第一主机的地址,所述第二报文的目的地址为所述第二数据中心中的第二主机的地址;若所述第二报文为SRv6报文,且所述网络设备支持SRv6,则从所述第二报文中,获取目标分段路由列表;若所述目标分段路由列表中的所述网络设备的分段标识对应第一调度队列,则将所述第二报文作为目标业务类型的第一报文,并将所述第一报文存储至第一调度队列,所述第一调度队列为所述第一报文所属确定性流对应的调度队列。
- 根据权利要求5所述的方法,其特征在于,所述方法还包括:若所述第二报文不是SRv6报文,或者,所述网络设备不支持SRv6,或者,未获取到所述目标分段路由列,或者,所述目标分段路由列表中的所述网络设备的分段标识没有对应的调度队列,则根据在当前时刻之前的预设时长内所述目标业务类型的报文的接收情况,确定第二调度队列;将所述第二报文存储至所述第二调度队列;按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文。
- 根据权利要求6所述的方法,其特征在于,当所述网络设备为所述第二数据中心的网关时,所述按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文的步骤,包括:获得所述第二调度队列中的报文对应的原始报文;按照所述第二调度队列对应的转发策略,向所述第二数据中心内的第二主机转发所述原始报文。
- 根据权利要求6或7所述的方法,其特征在于,当所述网络设备为所述第二数据中心的网关时,所述转发所述第一调度队列中的报文的步骤,包括:剥离所述第一调度队列中的报文的SRv6封装,得到原始报文;向所述第二数据中心内的第二主机转发所述原始报文。
- 根据权利要求4或6所述的方法,其特征在于,所述根据在当前时刻之前的预设时长内所述目标业务类型的报文的接收情况,确定第二调度队列的步骤,包括:若在当前时刻之前的预设时长内未接收到所述目标业务类型的报文,则从所述网络设备中的所有调度队列中,确定第二调度队列;若在当前时刻之前的所述预设时长内接收到所述目标业务类型的报文,则从所述网络设备中除所述第一调度队列外的所有调度队列中,确定第二调度队列。
- 根据权利要求4或6所述的方法,其特征在于,所述按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文的步骤,包括:按照先进先出的方式,转发所述第二调度队列中的报文;或者,当到达第二调度队列的调度周期时,转发所述第二调度队列中的报文。
- 根据权利要求2-7任一项所述的方法,其特征在于,所述将所述第一报文存储至第一调度队列的步骤,包括:若第一调度队列中存储有其他业务类型的报文,则清空所述第一调度队列;将所述第一报文存储至清空后的第一调度队列。
- 根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:接收控制器下发的第一路径信息,所述第一路径信息包括调度信息和所述第一调度队列的调度周期,所述调度信息指示所述目标业务类型的报文所属确定性流对应所述第一调度队列;将所述目标业务类型的报文所属确定性流与所述网络设备中的第一调度队列关联,并按照所述第一路径信息包括的调度周期,配置所述网络设备中的第一调度队列的调度周期。
- 根据权利要求12所述的方法,其特征在于,所述方法还包括:接收所述控制器下发的第二路径信息,所述第二路径信息包括:所述指定路径对应的目标分段路由列表、所述目标业务类型的报文特征、以及所述第一调度队列与所述目标分段路由列表中所述网络设备的分段标识的对应关系中的一种或多种;根据所述第二路径信息,执行以下至少一项操作:将所述指定路径与所述目标分段路由列表关联;所述目标业务类型的报文特征与所述目标业务类型的报文所属确定性流关联;建立所述第一调度队列与所述目标分段路由列表中所述网络设备的分段标识的对应关系。
- 根据权利要求13所述的方法,其特征在于,所述第一路径信息和第二路径信息为所述控制器根据所述广域网的指定网络资源信息和所述目标业务类型的确定性流的传输指标确定。
- 根据权利要求14所述的方法,其特征在于,所述指定网络资源信息为所述控制器采用带内网络遥测方式对所述广域网进行探测得到的。
- 根据权利要求14所述的方法,其特征在于,所述指定网络资源信息包括网络拓扑信息、网络带宽、网络时延、网络抖动中的一种或多种。
- 一种数据处理装置,其特征在于,应用于广域网中的网络设备,所述网络设备位于第一数据中心的网关到第二数据中心的网关的指定路径上,所述装置包括:第一存储单元,用于将获取到的目标业务类型的第一报文存储至所述第一报文所属确定性流对应的第一调度队列,所述第一报文的源地址为所述第一数据中心中的第一主机的地址,所述第一报文的目的地址为所述第二数据中心中的第二主机的地址,所述第一报文所属确定性流的转发路径为所述指定路径;转发单元,用于当到达所述第一调度队列的调度周期时,转发所述第一调度队列中的报文。
- 根据权利要求17所述的装置,其特征在于,所述网络设备为所述第一数据中心的网关;所述第一存储单元,具体用于:接收第二报文,所述第二报文的源地址为所述第一数据中心中的第一主机的地址,所述第二报文的目的地址为所述第二数据中心中的第二主机的地址;若所述第二报文的特征与预配置的目标业务类型的报文特征匹配,则基于所述第二报文,生成沿所述指定路径转发的第一报文;将所述第一报文存储至第一调度队列,所述第一调度队列为所述第一报文所属确定性流对应的调度队列。
- 根据权利要求18所述的装置,其特征在于,所述第一存储单元,具体用于:获取所述指定路径对应的目标分段路由列表,所述目标分段路由列表中的所述网络设备的分段标识对应第一调度队列;基于所述目标分段路由列表,将所述第二报文封装为第一报文,所述第一报文为SRv6报文。
- 根据权利要求18所述的装置,其特征在于,所述第一存储单元,还用于若所述第二报文的特征与预配置的目标业务类型的报文特征不匹配,则根据在当前时刻之前的预设时长内所述目标业务类型的报文的接收情况,确定第二调度队列;将所述第二报文存储至所述第二调度队列;所述转发单元,还用于按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文。
- 根据权利要求17所述的装置,其特征在于,所述网络设备为所述指定路径上的中间设备或所述第二数据中心的网关,所述目标业务类型的报文为SRv6报文;所述第一存储单元,具体用于:接收第二报文,所述第二报文的源地址为所述第一数据中心中的第一主机的地址,所述第二报文的 目的地址为所述第二数据中心中的第二主机的地址;若所述第二报文为SRv6报文,且所述网络设备支持SRv6,则从所述第二报文中,获取目标分段路由列表;若所述目标分段路由列表中的所述网络设备的分段标识对应第一调度队列,则将所述第二报文作为目标业务类型的第一报文,并将所述第一报文存储至第一调度队列,所述第一调度队列为所述第一报文所属确定性流对应的调度队列。
- 根据权利要求21所述的装置,其特征在于,所述第一存储单元,还用于:若所述第二报文不是SRv6报文,或者,所述网络设备不支持SRv6,或者,未获取到所述目标分段路由列,或者,所述目标分段路由列表中的所述网络设备的分段标识没有对应的调度队列,则根据在当前时刻之前的预设时长内所述目标业务类型的报文的接收情况,确定第二调度队列;将所述第二报文存储至第二调度队列;所述转发单元,还用于按照所述第二调度队列对应的转发策略,转发所述第二调度队列中的报文。
- 根据权利要求22所述的装置,其特征在于,当所述网络设备为所述第二数据中心的网关时,所述转发单元,具体用于:获得所述第二调度队列中的报文对应的原始报文;按照所述第二调度队列对应的转发策略,向所述第二数据中心内的第二主机转发所述原始报文。
- 根据权利要求22或23所述的装置,其特征在于,当所述网络设备为所述第二数据中心的网关时,所述转发单元,具体用于:剥离所述第一调度队列中的报文的SRv6封装,得到原始报文;向所述第二数据中心内的第二主机转发所述原始报文。
- 根据权利要求20或22所述的装置,其特征在于,所述第一存储单元,具体用于:若在当前时刻之前的预设时长内未接收到所述目标业务类型的报文,则从所述网络设备中的所有调度队列中,确定第二调度队列;若在当前时刻之前的所述预设时长内接收到所述目标业务类型的报文,则从所述网络设备中除所述第一调度队列外的所有调度队列中。
- 根据权利要求20或22所述的装置,其特征在于,所述转发单元,具体用于:按照先进先出的方式,转发所述第二调度队列中的报文;或者,当到达所述第二调度队列的调度周期时,转发所述第二调度队列中的报文。
- 根据权利要求18-23任一项所述的装置,其特征在于,所述第一存储单元,具体用于:若第一调度队列中存储有其他业务类型的报文,则清空所述第一调度队列;将所述第一报文存储至清空后的第一调度队列。
- 根据权利要求17-23任一项所述的装置,其特征在于,所述装置还包括:第一接收单元,用于接收控制器下发的第一路径信息,所述第一路径信息包括调度信息和所述第一调度队列的调度周期,所述调度信息指示所述目标业务类型的报文所属确定性流对应所述第一调度队列;第一配置单元,用于将所述目标业务类型的报文所属确定性流与所述网络设备中的第一调度队列关联,并按照所述第一路径信息包括的调度周期,配置所述网络设备中的第一调度队列的调度周期。
- 根据权利要求28所述的装置,其特征在于,所述装置还包括:第二接收单元,用于接收所述控制器下发的第二路径信息,所述第二路径信息包括:所述指定路径对应的目标分段路由列表、所述目标业务类型的报文特征、以及所述第一调度队列与所述目标分段路由列表中所述网络设备的分段标识的对应关系中的一种或多种;第二配置单元,用于根据所述第二路径信息,执行以下至少一项操作:将所述指定路径与所述目标分段路由列表关联;所述目标业务类型的报文特征与所述目标业务类型的报文所属确定性流关联;建立所述第一调度队列与所述目标分段路由列表中所述网络设备的分段标识的对应关系。
- 根据权利要求29所述的装置,其特征在于,所述第一路径信息和第二路径信息为所述控制器根据所述广域网的指定网络资源信息和所述目标业务类型的确定性流的传输指标确定。
- 根据权利要求30所述的装置,其特征在于,所述指定网络资源信息为所述控制器采用带内网络遥测方式对所述广域网进行探测得到的。
- 根据权利要求30所述的装置,其特征在于,所述指定网络资源信息包括网络拓扑信息、网络带宽、网络时延、网络抖动中的一种或多种。
- 一种网络设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的计算机程序,所述处理器被所述计算机程序促使:实现权利要求1-16任一所述的方法步骤。
- 一种机器可读存储介质,其特征在于,所述机器可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1-16任一所述的方法步骤。
- 一种计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1-16任一所述的方法步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/122841 WO2024065481A1 (zh) | 2022-09-29 | 2022-09-29 | 一种数据处理方法、装置、网络设备及存储介质 |
US18/714,736 US20250039106A1 (en) | 2022-09-29 | 2022-09-29 | Data processing method, apparatus, network device and storage medium |
EP22960117.4A EP4425876A4 (en) | 2022-09-29 | 2022-09-29 | DATA PROCESSING METHOD AND APPARATUS, AND NETWORK DEVICE AND RECORDING MEDIUM |
CN202280003396.8A CN118120209A (zh) | 2022-09-29 | 2022-09-29 | 一种数据处理方法、装置、网络设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/122841 WO2024065481A1 (zh) | 2022-09-29 | 2022-09-29 | 一种数据处理方法、装置、网络设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024065481A1 true WO2024065481A1 (zh) | 2024-04-04 |
Family
ID=90475391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/122841 WO2024065481A1 (zh) | 2022-09-29 | 2022-09-29 | 一种数据处理方法、装置、网络设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20250039106A1 (zh) |
EP (1) | EP4425876A4 (zh) |
CN (1) | CN118120209A (zh) |
WO (1) | WO2024065481A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160380886A1 (en) * | 2015-06-25 | 2016-12-29 | Ciena Corporation | Distributed data center architecture |
US20170063674A1 (en) * | 2015-08-29 | 2017-03-02 | Vmware, Inc. | Routing optimization for inter-cloud connectivity |
CN110336759A (zh) * | 2018-12-26 | 2019-10-15 | 锐捷网络股份有限公司 | 基于rdma的协议报文转发方法及装置 |
CN112448885A (zh) * | 2019-08-27 | 2021-03-05 | 华为技术有限公司 | 一种业务报文传输的方法及设备 |
CN113472646A (zh) * | 2021-05-31 | 2021-10-01 | 华为技术有限公司 | 一种数据传输方法、节点、网络管理器及系统 |
CN114080789A (zh) * | 2020-03-18 | 2022-02-22 | 环球互连及数据中心公司 | 用于应用工作负载的网络定义的边缘路由 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022146466A1 (en) * | 2020-12-30 | 2022-07-07 | Oracle International Corporation | Class-based queueing for scalable multi-tenant rdma traffic |
US20240214323A1 (en) * | 2021-07-15 | 2024-06-27 | New H3C Technologies Co., Ltd. | Packet transmission method and apparatus |
-
2022
- 2022-09-29 CN CN202280003396.8A patent/CN118120209A/zh active Pending
- 2022-09-29 WO PCT/CN2022/122841 patent/WO2024065481A1/zh active Application Filing
- 2022-09-29 US US18/714,736 patent/US20250039106A1/en active Pending
- 2022-09-29 EP EP22960117.4A patent/EP4425876A4/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160380886A1 (en) * | 2015-06-25 | 2016-12-29 | Ciena Corporation | Distributed data center architecture |
US20170063674A1 (en) * | 2015-08-29 | 2017-03-02 | Vmware, Inc. | Routing optimization for inter-cloud connectivity |
CN110336759A (zh) * | 2018-12-26 | 2019-10-15 | 锐捷网络股份有限公司 | 基于rdma的协议报文转发方法及装置 |
CN112448885A (zh) * | 2019-08-27 | 2021-03-05 | 华为技术有限公司 | 一种业务报文传输的方法及设备 |
CN114080789A (zh) * | 2020-03-18 | 2022-02-22 | 环球互连及数据中心公司 | 用于应用工作负载的网络定义的边缘路由 |
CN113472646A (zh) * | 2021-05-31 | 2021-10-01 | 华为技术有限公司 | 一种数据传输方法、节点、网络管理器及系统 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4425876A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP4425876A1 (en) | 2024-09-04 |
EP4425876A4 (en) | 2025-01-15 |
US20250039106A1 (en) | 2025-01-30 |
CN118120209A (zh) | 2024-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7668107B2 (en) | Hardware implementation of network testing and performance monitoring in a network device | |
TWI643477B (zh) | 軟體定義網路控制器、服務功能鏈系統及路徑追蹤方法 | |
CN113676361A (zh) | 针对体验质量度量的按需探测 | |
CN112910773B (zh) | 下发oam配置信息的方法及控制节点 | |
CN108206753B (zh) | 一种检测时延的方法、装置及系统 | |
JP2020508004A (ja) | パケット処理方法および装置 | |
US11165716B2 (en) | Data flow processing method and device | |
WO2019134383A1 (zh) | 控制网络拥塞的方法、接入设备和计算机可读存储介质 | |
CN112825510A (zh) | 一种更新映射关系的方法以及装置 | |
WO2018036173A1 (zh) | 一种网络负载均衡方法、设备及系统 | |
CN111371634B (zh) | 一种通信方法、装置及系统 | |
JP7623039B2 (ja) | パケット処理方法及び装置 | |
CN111026324B (zh) | 转发表项的更新方法及装置 | |
CN106464670A (zh) | 网络实体及服务策略管理方法 | |
WO2024065481A1 (zh) | 一种数据处理方法、装置、网络设备及存储介质 | |
WO2022152230A1 (zh) | 信息流识别方法、网络芯片及网络设备 | |
US7855967B1 (en) | Method and apparatus for providing line rate netflow statistics gathering | |
CN112217740B (zh) | 一种基于边缘计算网络的请求处理方法及装置 | |
CN107483334B (zh) | 一种报文转发的方法及装置 | |
US12231295B2 (en) | Method, device, and system for determining required bandwidth for data stream transmission | |
US20240333824A1 (en) | Service Processing Method, Apparatus, and System | |
CN111614471B (zh) | 一种基于sdn的dcqcn数据传输系统及传输方法 | |
CN118804121A (zh) | 数据传输方法、装置、ees、网络功能、存储介质及计算机程序产品 | |
WO2024234750A1 (zh) | 拥塞控制方法、装置及系统 | |
CN117597887A (zh) | 报文处理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 202280003396.8 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22960117 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022960117 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18714736 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2022960117 Country of ref document: EP Effective date: 20240529 |