Data scheduling method, apparatus, device, and storage medium
Patent Information
- Application Number
- CN202210139235.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-02-15
- Publication Date
- 2026-10-30
- Estimated Expiration
- 2042-02-15
AI Technical Summary
然而,由于数据流的排队时延无法确定,也就无法确定发送路径上的时延,进而无法对时延进行控制
[0070]本申请提供的数据调度方法、装置、设备及存储介质,网络控制功能网元获取数据流的报文处理逻辑;并为目标转发设备配置报文处理逻辑,用于目标转发设备基于报文处理逻辑,转发相应的数据流。由于报文处理逻辑是基于转发设备的转发端口的队列配置规则获得的,而队列配置规则是根据转发设备的数据转发周期、转发设备的转发端口所支持的消息队列的队列数量确定的,因而,在转发数据流时,每个数据流都会在特定的队列、按照特定的转发时间进行转发,可以准确的确定数据传输过程的时延,进而实现对确定性网络中端到端时延的控制。
Smart Images

Figure CN116647894B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a data scheduling method, apparatus, device and storage medium. Background Technology
[0002] Deterministic Networking (DetNet) can determine the path of data transmission in the Layer 2 bridging and Layer 3 routing segments. Based on these paths, the worst-case limits of latency, packet loss and jitter can be determined, thereby controlling and reducing end-to-end latency.
[0003] In related technologies, there are multiple paths between the sender and receiver. The sender periodically measures the packet loss, latency, and jitter of each path and selects the corresponding transmission path for the data stream according to algorithms such as shortest latency, minimum packet loss, or minimum jitter. The transmission path includes at least one forwarding device.
[0004] Correspondingly, when forwarding data streams, the forwarding device inserts the data streams into the corresponding queues according to their priority, thereby minimizing the latency and jitter of high-priority data streams, while low-priority data streams either queue up or are discarded. However, since the queuing latency of the data streams is uncertain, the latency on the transmission path is also uncertain, making it impossible to control the latency. Summary of the Invention
[0005] This application provides a data scheduling method, apparatus, device, and storage medium to ensure the determinism of data transmission delay in a deterministic network, thereby enabling control over end-to-end delay in the deterministic network.
[0006] The data scheduling method includes: obtaining the message processing logic of the data stream, which is obtained based on the queue configuration rules of the forwarding port of the forwarding device. The queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; configuring message processing logic for the target forwarding device, so that the target forwarding device forwards the corresponding data stream based on the message processing logic.
[0007] Optionally, the message processing logic for obtaining the data stream includes: receiving a first data packet sent by the forwarding device; and obtaining message processing logic based on the first data packet and queue configuration rules.
[0008] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: parsing the first data packet to obtain data flow demand information; and obtaining message processing logic according to the demand information and queue configuration rules.
[0009] Optionally, based on the demand information and queue configuration rules, the packet processing logic is obtained, including: sending demand information to the policy management function network element; receiving routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining packet processing logic based on the routing and forwarding rules.
[0010] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: sending the first data packet to the policy management function network element, so that the policy management function network element can obtain data flow demand information according to the first data packet; receiving the routing and forwarding rules obtained by the policy management function network element according to the demand information and queue configuration rules; and obtaining message processing logic according to the routing and forwarding rules.
[0011] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: determining the queue information of the data stream according to the routing and forwarding rules, the queue information being used to indicate the queue used to send the data stream; and obtaining the packet processing logic according to the queue information and the routing and forwarding rules.
[0012] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: receiving queue information obtained by the policy management function network element according to the demand information; and obtaining the packet processing logic according to the routing and forwarding rules and the queue information.
[0013] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes: parsing the first data packet to obtain data flow demand information; sending the demand information to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the demand information.
[0014] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes: sending the first data packet to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the first data packet.
[0015] Optionally, before obtaining the message processing logic of the data stream, the method further includes: determining the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or receiving the queue configuration rules sent by the policy management function network element; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0016] Secondly, this application provides a data scheduling method applied to a policy management function network element. The data scheduling method includes: obtaining data flow demand information; determining routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; determining the packet processing logic of the data flow based on the routing and forwarding rules; and sending the packet processing logic to a network control function network element, which is used by the network control function network element to configure the packet processing logic for the target forwarding device, wherein the packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0017] Optionally, the packet processing logic is determined according to the routing and forwarding rules, including: determining the queue information for processing the data stream based on the demand information and queue configuration rules; and determining the packet processing logic based on the routing and forwarding rules and queue information.
[0018] Thirdly, this application provides a data scheduling method applied to a policy management function network element. The data scheduling method includes: obtaining data flow demand information; obtaining routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; and sending the routing and forwarding rules to a network control function network element, which uses the network control function network element to determine packet processing logic based on the routing and forwarding rules and configure packet processing logic for the target forwarding device, wherein the packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0019] Optionally, sending routing and forwarding rules to the network control function network element includes: determining queue information based on demand information and queue configuration rules; and sending queue information and routing and forwarding rules to the network control function network element for the network control function network element to determine packet processing logic based on the routing and forwarding rules and queue information.
[0020] Optionally, the data flow requirement information can be obtained, including: receiving the data flow requirement information from the first data packet sent by the network control function element.
[0021] Optionally, the data flow requirement information can be obtained by: receiving a first data packet sent by a network control function element; parsing the first data packet to obtain the data flow requirement information.
[0022] Optionally, before obtaining the data flow requirement information, the method further includes: determining the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or receiving the queue configuration rules sent by the network control function network element; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0023] Fourthly, embodiments of this application provide a data scheduling method applied to a forwarding device. The data scheduling method includes: in response to receiving a data stream to be processed, determining a target queue for forwarding the data stream to be processed based on message processing logic; determining the forwarding time of the data stream to be processed based on the queue configuration rules of the forwarding device, wherein the message processing logic is configured by the network control function network element for the forwarding device; and forwarding the data stream to be processed through the target queue at the forwarding time.
[0024] Optionally, the data scheduling method further includes: sending a first data packet to a network control function element; and receiving message processing logic obtained by the network control function element based on the first data packet.
[0025] Fifthly, this application provides a data scheduling device applied to a network control function network element. The data scheduling device includes: an acquisition module for acquiring the message processing logic of a data stream, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; and a configuration module for configuring the message processing logic for the target forwarding device, wherein the target forwarding device forwards the corresponding data stream based on the message processing logic.
[0026] Optionally, the acquisition module is specifically used to: receive the first data packet sent by the forwarding device; and obtain the message processing logic based on the first data packet and the queue configuration rules.
[0027] Optionally, the acquisition module is specifically used to: parse the first data packet to obtain the data flow requirement information; and obtain the message processing logic based on the requirement information and queue configuration rules.
[0028] Optionally, the acquisition module is specifically used for: sending demand information to the policy management function network element; receiving routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining packet processing logic based on the routing and forwarding rules.
[0029] Optionally, the acquisition module is specifically used for: sending a first data packet to the policy management function network element, so that the policy management function network element can obtain the data flow requirement information based on the first data packet; receiving the routing and forwarding rules obtained by the policy management function network element based on the requirement information and queue configuration rules; and obtaining the packet processing logic based on the routing and forwarding rules.
[0030] Optionally, the acquisition module is specifically used to: determine the queue information of the data stream according to the routing and forwarding rules, the queue information being used to indicate the queue used to send the data stream; and obtain the packet processing logic based on the queue information and the routing and forwarding rules.
[0031] Optionally, the acquisition module is specifically used to: receive queue information obtained by the policy management function network element based on the demand information; and obtain packet processing logic based on the routing forwarding rules and queue information.
[0032] Optionally, the acquisition module is specifically used for: parsing the first data packet to obtain the data flow requirement information; sending the requirement information to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the requirement information.
[0033] Optionally, the acquisition module is specifically used for: sending a first data packet to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the first data packet.
[0034] Optionally, the data scheduling device further includes: a determining module, used to determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, a receiving module, used to receive the queue configuration rules sent by the policy management function network element; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0035] Sixthly, embodiments of this application provide a data scheduling device applied to a policy management function network element. The data scheduling device includes:
[0036] The module is used to acquire data flow demand information; the module is used to determine routing and forwarding rules based on the demand information and queue configuration rules, and to determine the message processing logic of the data flow based on the routing and forwarding rules. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; the module is used to send message processing logic to the network control function network element, and to configure the message processing logic for the target forwarding device. The message processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0037] Optionally, the determination module is specifically used to: determine the queue information used to process the data stream based on the requirement information and queue configuration rules; and determine the packet processing logic based on the routing and forwarding rules and queue information.
[0038] In a seventh aspect, embodiments of this application provide a data scheduling device applied to a policy management function network element. The data scheduling device includes: an acquisition module, used to acquire data flow demand information, and obtain routing forwarding rules based on the demand information and queue configuration rules. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; and a sending module, used to send the routing forwarding rules to a network control function network element, for the network control function network element to determine packet processing logic based on the routing forwarding rules and configure packet processing logic for the target forwarding device. The packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0039] Optionally, the sending module is specifically used to: determine queue information based on demand information and queue configuration rules; and send queue information and routing forwarding rules to network control function network elements, so that network control function network elements can determine packet processing logic based on routing forwarding rules and queue information.
[0040] Optionally, the acquisition module is specifically used to: receive the data flow requirement information in the first data packet sent by the network control function network element.
[0041] Optionally, the acquisition module is specifically used to: receive the first data packet sent by the network control function network element; parse the first data packet to obtain the data flow requirement information.
[0042] Optionally, the data scheduling device further includes: a determining module, used to determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, to receive the queue configuration rules sent by the network control function element; wherein the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0043] Eighthly, this application provides a data scheduling device applied to a forwarding device. The data scheduling device includes: a determining module, configured to, in response to receiving a data stream to be processed, determine a target queue for forwarding the data stream to be processed based on message processing logic, and determine the forwarding time of the data stream to be processed based on the queue configuration rules of the forwarding device, wherein the message processing logic is configured by the network control function network element for the forwarding device; and a forwarding module, configured to forward the data stream to be processed through the target queue at the forwarding time.
[0044] Optionally, the data scheduling device further includes: a sending module for sending a first data packet to a network control function element; and a receiving module for receiving message processing logic obtained by the network control function element based on the first data packet.
[0045] Ninthly, embodiments of this application provide a network control function element, including: a memory for storing a computer program; a transceiver for transmitting and receiving data under the control of a processor; and a processor for reading the computer program from the memory and performing the following operations:
[0046] The message processing logic of the data stream is obtained based on the queue configuration rules of the forwarding port of the forwarding device. The queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The message processing logic is configured for the target forwarding device, so that the target forwarding device forwards the corresponding data stream based on the message processing logic.
[0047] Optionally, the message processing logic for obtaining the data stream includes: receiving a first data packet sent by the forwarding device; and obtaining message processing logic based on the first data packet and queue configuration rules.
[0048] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: parsing the first data packet to obtain data flow demand information; and obtaining message processing logic according to the demand information and queue configuration rules.
[0049] Optionally, based on the demand information and queue configuration rules, the packet processing logic is obtained, including: sending demand information to the policy management function network element; receiving routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining packet processing logic based on the routing and forwarding rules.
[0050] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: sending the first data packet to the policy management function network element, so that the policy management function network element can obtain data flow demand information according to the first data packet; receiving the routing and forwarding rules obtained by the policy management function network element according to the demand information and queue configuration rules; and obtaining message processing logic according to the routing and forwarding rules.
[0051] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: determining the queue information of the data stream according to the routing and forwarding rules, the queue information being used to indicate the queue used to send the data stream; and obtaining the packet processing logic according to the queue information and the routing and forwarding rules.
[0052] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: receiving queue information obtained by the policy management function network element according to the demand information; and obtaining the packet processing logic according to the routing and forwarding rules and the queue information.
[0053] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes:
[0054] The first data packet is parsed to obtain the data flow requirement information; the requirement information is sent to the policy management function network element; and the message processing logic obtained by the policy management function network element based on the requirement information is received.
[0055] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes: sending the first data packet to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the first data packet.
[0056] Optionally, before acquiring the message processing logic of the data stream, the processor is further configured to: determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, receive the queue configuration rules sent by the policy management function network element; the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0057] Tenthly, embodiments of this application provide a policy management function network element, including:
[0058] The memory stores computer programs; the transceiver, under the control of the processor, sends and receives data; the processor reads the computer programs from the memory and performs the following operations: obtaining data flow demand information; determining routing and forwarding rules based on the demand information and queue configuration rules (the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device); determining the message processing logic of the data flow based on the routing and forwarding rules; and sending the message processing logic to the network control function element (NCF) for the NCF to configure the message processing logic for the target forwarding device, which instructs the target forwarding device to forward the corresponding data flow.
[0059] Optionally, the packet processing logic is determined according to the routing and forwarding rules, including: determining the queue information for processing the data stream based on the demand information and queue configuration rules; and determining the packet processing logic based on the routing and forwarding rules and queue information.
[0060] Eleventhly, embodiments of this application provide a policy management function network element, including: a memory for storing a computer program; a transceiver for sending and receiving data under the control of a processor; and a processor for reading the computer program in the memory and performing the following operations: obtaining data flow demand information; obtaining routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; and sending the routing and forwarding rules to a network control function network element, wherein the network control function network element determines packet processing logic based on the routing and forwarding rules and configures packet processing logic for the target forwarding device, wherein the packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0061] Optionally, sending routing and forwarding rules to the network control function network element includes: determining queue information based on demand information and queue configuration rules; and sending queue information and routing and forwarding rules to the network control function network element for the network control function network element to determine packet processing logic based on the routing and forwarding rules and queue information.
[0062] Optionally, the data flow requirement information can be obtained, including: receiving the data flow requirement information from the first data packet sent by the network control function element.
[0063] Optionally, the data flow requirement information can be obtained by: receiving a first data packet sent by a network control function element; parsing the first data packet to obtain the data flow requirement information.
[0064] Optionally, before obtaining the data flow demand information, the processor is further configured to: determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, receive the queue configuration rules sent by the network control function element; wherein the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0065] In a twelfth aspect, embodiments of this application provide a forwarding device, comprising: a memory for storing a computer program; a transceiver for transmitting and receiving data under the control of a processor; and a processor for reading the computer program from the memory and performing the following operations:
[0066] In response to receiving a data stream to be processed, a target queue for forwarding the data stream is determined based on the message processing logic; the forwarding time of the data stream is determined based on the queue configuration rules of the forwarding device, and the message processing logic is configured by the network control function network element for the forwarding device; the data stream to be processed is forwarded through the target queue at the forwarding time.
[0067] Optionally, the processor is also configured to: send a first data packet to the network control function element; and receive message processing logic obtained by the network control function element based on the first data packet.
[0068] In a thirteenth aspect, embodiments of this application provide a processor-readable storage medium storing a computer program for causing a processor to execute a data scheduling method according to any one of the first, second, third, and fourth aspects.
[0069] In a fourteenth aspect, embodiments of this application provide a computer program product, including: a computer program, which, when executed by a processor, implements a data scheduling method as described in any one of the first, second, third, and fourth aspects.
[0070] This application provides a data scheduling method, apparatus, device, and storage medium. Network control function network elements acquire message processing logic for data streams and configure message processing logic for target forwarding devices, enabling the target forwarding devices to forward corresponding data streams based on this logic. Since the message processing logic is obtained based on the queue configuration rules of the forwarding device's forwarding port, and these rules are determined according to the forwarding device's data forwarding cycle and the number of message queues supported by the forwarding device's forwarding port, each data stream is forwarded in a specific queue at a specific forwarding time. This allows for accurate determination of the data transmission delay, thereby achieving end-to-end delay control in deterministic networks.
[0071] It should be understood that the content described in the foregoing summary section is not intended to limit the key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0072] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0073] Figure 1 This application provides an illustration of an application scenario.
[0074] Figure 2 A flowchart illustrating a data scheduling method provided in an embodiment of this application;
[0075] Figure 3 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 1 ;
[0076] Figure 4 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 2 ;
[0077] Figure 5 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 3 ;
[0078] Figure 6 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 4 ;
[0079] Figure 7 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 5 ;
[0080] Figure 8 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 6 ;
[0081] Figure 9 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 7 ;
[0082] Figure 10 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 8 ;
[0083] Figure 11 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 9 ;
[0084] Figure 12 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 1 ;
[0085] Figure 13 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 2 ;
[0086] Figure 14 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 3 ;
[0087] Figure 15 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 4 ;
[0088] Figure 16This is a schematic diagram of the structure of the network control function network element provided in the embodiments of this application;
[0089] Figure 17 This is a schematic diagram of the structure of the policy management function network element provided in the embodiments of this application;
[0090] Figure 18 A schematic diagram of the structure of the forwarding device provided in the embodiments of this application. Detailed Implementation
[0091] In this application, the term "and / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. In the embodiments of this application, the term "multiple" refers to two or more, and other quantifiers are similar.
[0092] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0093] First, the definitions of the terms used in this application are explained as follows:
[0094] Application Plane: The plane that defines the applications and services that perform network behavior.
[0095] Control Plane: Determines how one or more network devices forward data packets and issues these decisions to the network devices for execution in the form of flow tables.
[0096] Management Plane: Responsible for monitoring, configuring, and maintaining network devices, such as making decisions about the status of network devices. The management plane primarily interacts with the device's operational plane.
[0097] Forwarding Plane: This is the functional module responsible for processing data packets in the data path according to instructions received from the control plane. Operations in the forwarding plane include, but are not limited to, forwarding, dropping, and modifying data packets.
[0098] The Operational Plane is responsible for managing the operational status of the network devices it operates on. This includes determining whether a device is active or inactive, the number of available ports, and the status of each port. The Operational Plane also manages network device resources such as ports and memory.
[0099] Next, combined Figure 1 The application scenarios of the embodiments of this application are described as follows:
[0100] Figure 1 This application provides an illustrated scenario diagram for the embodiments of this application. For example... Figure 1 As shown, this scenario includes: network control function network elements, policy management function network elements, and forwarding devices.
[0101] Among them, network control function network elements are located in the control plane, policy management function network elements are located in the application plane, and forwarding devices are located in the forwarding plane.
[0102] In some embodiments, the type of forwarding device is not specifically limited. For example, the forwarding device can be a network device with data forwarding function, such as a base station. Specifically, it can be a base station and / or base station controller in Global System for Mobile Communications (GSM) or Code Division Multiple Access (CDMA), or a base station (NodeB, NB) and / or Radio Network Controller (RNC) in Wideband Code Division Multiple Access (WCDMA), or an evolved NodeB (4G base station or eNodeB) in Long Term Evolution (LTE), or a relay station or access point, or a base station (5G base station) in a future 5G network, etc.
[0103] It should be noted that, Figure 1 An exemplary communication scenario is shown, comprising a network control function element, a policy management function element, and a forwarding device. Optionally, other devices may also be included in this scenario, which is not limited in this application embodiment.
[0104] It should be understood that the goal of the DetNet network is to implement a technique that determines transmission paths through Layer 2 bridging and Layer 3 routing segments, which can provide worst-case limits for latency, packet loss, and jitter, thereby controlling and reducing end-to-end latency.
[0105] Although the current Internet Engineering Task Force (IETF) approach to processing DetNet data streams is to utilize methods from Time-Sensitive Networking (TSN), the IETF has not yet defined how these L2 data frame processing techniques should be used by DetNet nodes. If the existing IP forwarding mechanism is used, even with resource reservation and priority scheduling, the lack of control over the behavior of each data packet can lead to micro-bursts in queuing.
[0106] In related technologies, since there are usually multiple paths in an end-to-end transmission, the sending end measures each path when sending data, periodically measuring packet loss, delay, and jitter for each path. By accumulating these measurements periodically, a pre-estimation model of end-to-end delay and packet loss is established for each path. When each sending end transmits a packet, the scheduling module estimates the delay and packet loss according to the pre-estimation model and selects one of the paths as the transmission path for this packet based on algorithms such as shortest delay / minimum packet loss / minimum jitter.
[0107] Specifically, the sending end assigns a Quality of Service (QoS) level to each data stream. When receiving packets, the forwarding device checks the QoS level and inserts the packets into the corresponding queue according to the level. During forwarding, the forwarding device prioritizes high-priority packets; if priorities are the same, they are processed in the order they arrived. At this time, each packet occupies buffer resources according to its priority.
[0108] During this process, since the buffer resources in the forwarding device are limited, if the buffer is already full when a high-priority packet arrives, the switch will choose to discard the lowest priority packet and allocate the freed-up buffer to the newly arrived high-priority packet, so as to ensure that the high-priority packet has low latency and low jitter.
[0109] However, this method has the following problems:
[0110] If a deterministic data flow is using a link, and there are higher-level or same-level data flows in the traffic sharing the link and forwarding device node resources, then the queuing delay of packets in that deterministic data flow cannot be determined, and thus the end-to-end delay cannot be determined. Also, the delay jitter of the same packets will be relatively large.
[0111] Furthermore, by monitoring parameters such as end-to-end delay through the network, delay estimation is performed during path selection in the hope that the data will arrive at the receiving end with the expected end-to-end delay. However, the parameters measured by the network are cumulative parameters, representing the performance over a certain period of time in the past. Since network conditions are always changing instantaneously, such estimates are inaccurate. Moreover, due to the lack of control over the behavior of each data packet, queuing forms micro-bursts, or even micro-burst iterations, making it impossible to determine the delay in a deterministic network and thus impossible to control the delay.
[0112] In view of this, embodiments of this application provide a data scheduling method, apparatus, device, and storage medium. A network control function element obtains the message processing logic of a data stream; the message processing logic is configured for a target forwarding device, which then forwards the corresponding data stream based on the message processing logic. Since the message processing logic is obtained based on the queue configuration rules of the forwarding port of the forwarding device, and the queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device, each data stream is forwarded in a specific queue and according to a specific forwarding time when forwarding data streams. This allows for accurate determination of the data transmission delay, thereby achieving end-to-end delay control in a deterministic network.
[0113] It should be understood that the technical solutions provided in this application can be applied to various systems, especially 5G systems. For example, applicable systems may include Global System for Mobile Communication (GSM), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA) General Packet Radio Service (GPRS), Long Term Evolution (LTE), LTE Frequency Division Duplex (FDD), LTE Time Division Duplex (TDD), Long Term Evolution Advanced (LTE-A), Universal Mobile Telecommunication System (UMTS), Worldwide Interoperability for Microwave Access (WiMAX), and 5G New Radio (NR). All of these systems include terminals and network equipment. The systems also include a core network component, such as Evolved Packet System (EPS) and 5G systems (5GS).
[0114] It should be understood that the methods and apparatus provided in the embodiments of this application are based on the same application concept. Since the methods and apparatus solve problems in similar principles, the implementation of the apparatus and methods can refer to each other, and repeated parts will not be described again.
[0115] The technical solutions of the embodiments of this application and how the technical solutions of this application solve the above-mentioned technical problems are described in detail below with specific examples. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0116] Figure 2 This is a flowchart illustrating a data scheduling method provided in an embodiment of this application. Figure 2 As shown, the data scheduling method provided in this application includes the following steps:
[0117] S201, Message processing logic for network control function elements to acquire data streams.
[0118] The message processing logic is used to instruct the forwarding device to forward the data stream corresponding to the data stream.
[0119] In some embodiments, the message processing logic is obtained based on the queue configuration rules of the forwarding port of the forwarding device. The queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The method of obtaining the queue configuration rules will be shown in subsequent embodiments.
[0120] The message processing logic includes: a matching field (e.g., an IP-six-tuple or IP-five-tuple), the priority of the data stream, and an action field (e.g., a message queue and an egress point for forwarding the data stream). The method for obtaining the message processing logic will be shown in subsequent embodiments.
[0121] S202. The network control function network element configures the packet processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the packet processing logic.
[0122] Specifically, the network control function element sends a configuration request to the forwarding device. The configuration request carries the packet processing logic. Correspondingly, after receiving the configuration request, the forwarding device obtains the packet processing logic carried therein and configures each forwarding port according to the packet processing logic.
[0123] Optionally, after the forwarding device has completed configuring the packet processing logic, it can send a configuration response to the network control function element, wherein the configuration response is used to indicate that the packet processing logic configuration is complete.
[0124] S203. Upon receiving the data stream to be processed, the forwarding device determines the target queue for forwarding the data stream to be processed based on the message processing logic.
[0125] Specifically, when a forwarding device receives a data stream to be processed, it first performs packet matching according to the configured packet processing logic. That is, if the IP-six-tuple (or IP-five-tuple) of the received data stream to be processed is consistent with the matching field in a certain configured packet processing logic, then based on the priority and action field in the packet processing logic, the data stream to be processed is placed in the target queue indicated in the packet processing logic, and the target queue is used to forward the data stream to be processed.
[0126] Correspondingly, if no matching field in the message processing logic matches the data stream to be processed, the data stream to be processed is discarded, or the identification result is reported to the network control function element.
[0127] S204. The forwarding device determines the forwarding time of the data stream to be processed based on the queue configuration rules of the forwarding device.
[0128] Furthermore, based on the queue configuration rules, the forwarding time corresponding to the target queue is determined, so that the data stream to be processed is forwarded at that forwarding time.
[0129] S205. The forwarding device forwards the data stream to be processed through the target queue during the forwarding time.
[0130] It should be noted that for deterministic data streams that cannot be forwarded, they are cached. If it is determined later that the DetNet stream will be forwarded, the data packet will be processed based on the priority and action field in the packet processing logic.
[0131] In some embodiments, when a non-DetNet flow is received, it can also be processed according to the packet processing logic. However, the priority of the non-DetNet flow is lower than the priority of the DetNet flow on all forwarding ports. That is, when there is no DetNet flow in the queue, the non-DetNet flow is forwarded. For non-DetNet flows that cannot be forwarded, they are discarded.
[0132] In the data scheduling method provided in this application, since the message processing logic is obtained based on the queue configuration rules of the forwarding port of the forwarding device, and the queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device, each data stream will be forwarded in a specific queue and according to a specific forwarding time when forwarding data streams, so as to accurately determine the latency of the data transmission process and thus realize the control of end-to-end latency in deterministic networks.
[0133] In some embodiments, step S201 specifically includes the following steps:
[0134] (1) Receive the first data packet sent by the forwarding device.
[0135] (2) Obtain message processing logic based on the first data packet and queue configuration rules.
[0136] The first data packet is the first packet received by the forwarding device after the queue configuration rules are configured, and the first data packet includes the data flow requirement information.
[0137] It is understandable that by obtaining the first packet, the message can obtain the data flow requirement information contained in the first packet, and then configure the corresponding message processing logic for the data flow according to the requirement information. When subsequent data flows are received, the data flow can be processed accordingly according to the message processing logic.
[0138] It should be noted that there are multiple implementation methods when obtaining the message processing logic through the first data packet and queue configuration rules. The specific solutions for each implementation method will be described in detail below with reference to the accompanying drawings:
[0139] In the first embodiment, Figure 3 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 1 .like Figure 3 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0140] S301. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0141] It should be noted that this application embodiment does not specifically limit the network element device that obtains the queue configuration rules. Firstly, the network control function network element can obtain the queue configuration rules of the forwarding device; secondly, the policy management function network element can also obtain the queue configuration rules of the forwarding device.
[0142] It should be understood that after obtaining the queue configuration rule, any one of the network control function network element and the policy management function network element can report the queue configuration rule to another network element.
[0143] It should be noted that, Figure 3 The example shown is the queue configuration rules for obtaining forwarding devices by network control function network elements, but it is not a limitation.
[0144] Optionally, after obtaining the queue configuration rules, the queue configuration rules, forwarding cycle, and forwarding time of each message queue of each forwarding device can be sent to the corresponding forwarding device for the forwarding device to divide the forwarding time of each message queue.
[0145] Specifically, when the policy management function network element obtains the queue configuration rules, it can first send the queue configuration rules to the network management function network element, which will then distribute them to the forwarding devices for configuration.
[0146] Each forwarding device's forwarding port can include multiple message queues. The queue configuration rules are used to indicate the data transmission rate of each message queue (e.g., maximum transmission rate, minimum transmission rate, and average transmission rate), the priority of each message queue when forwarding data streams, and the corresponding forwarding time of each message queue in the forwarding cycle.
[0147] Specifically, when any of the above network elements obtains the queue configuration rules, it first determines the number of message queues supported by the forwarding port of the forwarding device and the forwarding period of the forwarding port based on the network topology, i.e. the location of the forwarding device. At the same time, it obtains the data transmission rate of each message queue of the forwarding port and the priority when forwarding data streams.
[0148] Furthermore, based on the length of the forwarding cycle and the number of queues, the forwarding cycle is evenly distributed to each message queue, thereby obtaining the forwarding time of each message queue in the forwarding cycle, wherein the forwarding time corresponding to each message queue is the same.
[0149] Furthermore, queue configuration rules are obtained based on the data transmission rate of each message queue, the priority when forwarding data streams, and the forwarding time in the forwarding cycle.
[0150] S302. The forwarding device sends the first data packet to the network control function element.
[0151] The first data packet is the first packet received by the forwarding device after the queue configuration rules are configured, and the first data packet includes the data flow requirement information.
[0152] S303, the network control function network element parses the first data packet to obtain the data flow requirement information.
[0153] In some embodiments, the data stream requirement information includes, but is not limited to, any one or more of the following: DetNet stream characteristics, DetNet stream service requirements, DetNet stream identifier, etc.
[0154] The DetNet flow identifier includes information such as DetNet flow, source and destination addresses, protocol type, and port number; the DetNet flow service requirements include information such as maximum end-to-end latency, jitter, minimum bandwidth, packet loss rate, and maximum number of out-of-order packets; and the DetNet flow characteristics include interval, maximum / minimum payload size, and the number of packets within the maximum / minimum time period.
[0155] S304. Network control function network elements send requirement information to policy management function network elements.
[0156] It should be noted that the embodiments of this application do not specifically limit the method of sending the demand information. For example, the network control function network element can send a user plane establishment request to the policy management function network element and carry the demand information in the user plane establishment request. As for other methods, this application will not elaborate on them one by one.
[0157] S305, the policy management function network element determines the routing and forwarding rules based on the demand information and queue configuration rules.
[0158] The routing and forwarding rules include: at least a portion of the DetNet flow identifier (used to identify the flow and generate subsequent matches), the message queues of each forwarding device on the forwarding path used to forward the data flow, the next hop, the priority, and the maximum and minimum rates corresponding to each message queue.
[0159] S306. Policy management function network elements send routing and forwarding rules to network control function network elements.
[0160] It should be noted that the method of sending routing and forwarding rules is not specifically limited in this application embodiment. For example, the policy management function network element can also send a user plane establishment request to the network control function network element and carry the routing and forwarding rules in the user plane establishment request.
[0161] S307. The network control function element determines the queue information according to the routing and forwarding rules, and obtains the packet processing logic based on the queue information and the routing and forwarding rules.
[0162] The queue information is used to indicate the message queue of the forwarding device that sent the data stream.
[0163] Specifically, the queue information of each forwarding device is obtained from the routing and forwarding rules, and then the packet processing logic is generated based on the queue information and the routing and forwarding rules.
[0164] S308, the network control function network element, configures the message processing logic for the target forwarding device, so that the target forwarding device can forward the corresponding data stream based on the message processing logic.
[0165] It should be noted that step S308 and the method by which the forwarding device forwards the data stream are different from those in step S308. Figure 2 The solutions in the illustrated embodiments are the same and will not be described again here.
[0166] In the second implementation, Figure 4 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 2 .like Figure 4 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0167] S401. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0168] S402, The forwarding device sends the first data packet to the network control function element.
[0169] S403, the network control function network element parses the first data packet to obtain the data flow requirement information.
[0170] S404. Network control function network elements send requirement information to policy management function network elements.
[0171] It should be noted that steps S401 to S404 are the same as... Figure 3 The methods and principles of steps S301 to S304 in the illustrated embodiment are similar. For detailed implementation, please refer to [reference needed]. Figure 3 The embodiments shown are not described in detail here.
[0172] S405, the policy management function network element determines the routing and forwarding rules and queue information based on the demand information and queue configuration rules.
[0173] In one alternative implementation, the policy management function network element can determine the queue information, and the method by which it determines the routing and forwarding rules, as well as the method by which it determines the queue information, is the same as... Figure 3 The network control function network elements in the illustrated embodiments perform similar functions, which will not be described in detail here.
[0174] S406. The policy management function network element sends the routing forwarding rule and queue information to the network control function network element.
[0175] It should be noted that the embodiments of this application do not specifically limit the method of sending routing and forwarding rules and queue information. For example, the policy management function network element can send a user plane establishment request to the network control function network element and carry the routing and forwarding rules and queue information in the user plane establishment request. As for other methods, this application will not elaborate on them one by one.
[0176] S407. The network control function element determines the packet processing logic based on the routing forwarding rules and queue information.
[0177] S408, the network control function network element, configures the packet processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the packet processing logic.
[0178] It should be noted that steps S407 to S408 are the same as... Figure 3 The method and principle of steps S307 to S308 in the illustrated embodiment are similar. For specific implementation details, please refer to [link / reference]. Figure 3 The embodiments shown are not described in detail here.
[0179] In the third implementation, the packet processing logic can also be obtained by the policy management function network element. Figure 5 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 3 .like Figure 5 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0180] S501. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0181] S502, The forwarding device sends the first data packet to the network control function element.
[0182] S503, the network control function network element parses the first data packet to obtain the data flow requirement information.
[0183] S504. Network control function network elements send requirement information to policy management function network elements.
[0184] It should be noted that steps S501 to S504 are the same as... Figure 3 The methods and principles of steps S301 to S304 in the illustrated embodiment are similar. For detailed implementation, please refer to [reference needed]. Figure 3 The embodiments shown are not described in detail here.
[0185] S505, the policy management function network element determines the routing and forwarding rules and queue information based on the demand information and queue configuration rules, and determines the packet processing logic based on the queue information and routing and forwarding rules.
[0186] It should be noted that the policy management function network element can determine queue information and packet processing logic, and its method of determining routing and forwarding rules, as well as the method of determining queue information and packet processing logic, is the same as... Figure 3 The network control function network elements in the illustrated embodiments perform similar functions, which will not be described in detail here.
[0187] S506, Policy Management Function Network Elements send message processing logic to Network Control Function Network Elements.
[0188] It should be noted that the embodiments of this application do not specifically limit the method of sending message processing logic. For example, the policy management function network element can send a user plane establishment request to the network control function network element and carry the message processing logic in the user plane establishment request. As for other methods, this application will not elaborate on them one by one.
[0189] S507, the network control function network element configures the packet processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the packet processing logic.
[0190] It should be noted that step S507 and Figure 3 The method and principle of step S308 in the illustrated embodiment are similar; for specific implementation details, please refer to [link / reference]. Figure 3 The embodiments shown are not described in detail here.
[0191] In the fourth embodiment, Figure 6A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 4 .like Figure 6 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0192] S601. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0193] S602, The forwarding device sends the first data packet to the network control function element.
[0194] It should be noted that steps S601 to S602 are the same as... Figure 3 The method and principle of steps S301 to S302 in the illustrated embodiment are similar. For specific implementation details, please refer to [link / reference]. Figure 3 The embodiments shown are not described in detail here.
[0195] S603, the network control function element sends the first data packet to the policy management function element.
[0196] In this embodiment of the application, the network control function does not parse the first data packet, but can send the first data packet to the policy management function network element through a user plane establishment request.
[0197] Optionally, if the queue configuration rules are obtained by the network control function network element, the user plane can also establish a request that carries the forwarding time, forwarding period and queue configuration rules of each message queue.
[0198] S604, the policy management function network element parses the first data packet to obtain the data flow demand information, and determines the routing and forwarding rules based on the demand information and queue configuration rules.
[0199] It should be noted that the method by which the policy management function network element parses the first data packet to obtain the demand information, and the method by which it obtains the routing and forwarding rules based on the demand information and queue configuration rules, are different from those used in other functions. Figure 3 The network control function elements in the illustrated embodiments execute the same scheme, which will not be described in detail here.
[0200] S605. Policy management function network elements send routing and forwarding rules to network control function network elements.
[0201] S606. The network control function element determines the queue information according to the routing and forwarding rules, and obtains the packet processing logic based on the queue information and the routing and forwarding rules.
[0202] S606, the network control function network element configures the message processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the message processing logic.
[0203] It should be noted that steps S605 to S606 are the same as... Figure 3 The method and principle of steps S306 to S308 in the illustrated embodiment are similar. For specific implementation details, please refer to [link / reference]. Figure 3 The embodiments shown are not described in detail here.
[0204] In the fifth embodiment, Figure 7 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 5 .like Figure 7 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0205] S701. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0206] S702, The forwarding device sends the first data packet to the network control function element.
[0207] S703, the network control function element sends the first data packet to the policy management function element.
[0208] S704, the policy management function network element parses the first data packet to obtain the data flow demand information, and determines the routing forwarding rules and queue information based on the demand information and queue configuration rules.
[0209] S705, the policy management function network element sends routing and forwarding rules and queue information to the network control function network element.
[0210] S706. Network control function elements obtain packet processing logic based on routing forwarding rules and queue information.
[0211] S707, the network control function network element configures the message processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the message processing logic.
[0212] It should be noted that, in the embodiments of this application, steps S701 to S702 are different from those in the present application. Figure 3 The method and principle of steps S301 to S302 in the illustrated embodiment are similar, and steps S703 to S705 are similar. Figure 4 The method and principle of steps S405 to S406 in the illustrated embodiment are similar, and steps S706 to S707 are similar. Figure 4 The methods and principles of steps S407 to S408 in the illustrated embodiment are similar. For specific implementation details, please refer to the above embodiments, which will not be repeated here.
[0213] In the sixth embodiment, Figure 8A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 6 .like Figure 8 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0214] S801. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0215] S802, The forwarding device sends the first data packet to the network control function element.
[0216] S803, the network control function element sends the first data packet to the policy management function element.
[0217] S804, the policy management function network element parses the first data packet to obtain the data flow requirement information.
[0218] S805, the policy management function network element determines the routing and forwarding rules and queue information based on the demand information and queue configuration rules, and obtains the packet processing logic based on the routing and forwarding rules and queue information.
[0219] S806, the logic for policy management function network elements to send message processing logic to network control function network elements.
[0220] S807, the network control function network element configures the message processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the message processing logic.
[0221] It should be noted that, in the embodiments of this application, steps S801 to S802 are different from those in the present application. Figure 3 The method and principle of steps S301 to S302 in the illustrated embodiment are similar, and steps S803 to S805 are similar. Figure 5 The method and principle of steps S505 to S506 in the illustrated embodiment are similar, and steps S806 to S807 are similar. Figure 5 The methods and principles of steps S506 to S507 in the illustrated embodiment are similar. For specific implementation details, please refer to the above embodiments, which will not be repeated here.
[0222] In this embodiment of the application, by providing multiple methods for obtaining message processing logic, it can be flexibly applied to various network architectures to solve the problem of uncertain latency in the forwarding process of deterministic data streams in different network architectures.
[0223] In other embodiments, the data stream requirement information can be obtained without the first data packet. Specifically, step S201 above includes the following scheme:
[0224] (1) The strategy management function network element obtains the data flow requirement information;
[0225] (2) The policy management function uses the root requirement information of network elements to determine routing and forwarding rules;
[0226] (3) At least one of the network elements in the policy management function or network control function determines the queue information according to the routing and forwarding rules, and obtains the message processing logic according to the queue information and the routing and forwarding rules.
[0227] Specifically, when the first data packet is not required to obtain the message processing logic, there are several implementation methods. The following sections, with reference to the accompanying drawings, will provide a detailed description of each implementation method:
[0228] In the first embodiment, Figure 9 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 7 .like Figure 9 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0229] S901. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0230] It should be noted that this application embodiment does not specifically limit the network element device that obtains the queue configuration rules. Firstly, the network control function network element can obtain the queue configuration rules of the forwarding device; secondly, the policy management function network element can also obtain the queue configuration rules of the forwarding device.
[0231] It should be understood that after obtaining the queue configuration rule, any one of the network control function network element and the policy management function network element can report the queue configuration rule to another network element.
[0232] Optionally, after obtaining the queue configuration rules, the queue configuration rules, forwarding cycle, and forwarding time of each message queue of each forwarding device can be sent to the corresponding forwarding device for the forwarding device to divide the forwarding time of each message queue.
[0233] Specifically, when the policy management function network element obtains the queue configuration rules, it can first send the queue configuration rules to the network management function network element, which will then distribute them to the forwarding devices for configuration.
[0234] Each forwarding device's forwarding port can include multiple message queues. The queue configuration rules are used to indicate the data transmission rate of each message queue (e.g., maximum transmission rate, minimum transmission rate, and average transmission rate), the priority of each message queue when forwarding data streams, and the corresponding forwarding time of each message queue in the forwarding cycle.
[0235] Specifically, when any of the above network elements obtains the queue configuration rules, it first determines the number of message queues supported by the forwarding port of the forwarding device and the forwarding period of the forwarding port based on the network topology, i.e. the location of the forwarding device. At the same time, it obtains the data transmission rate of each message queue of the forwarding port and the priority when forwarding data streams.
[0236] Furthermore, based on the length of the forwarding cycle and the number of queues, the forwarding cycle is evenly distributed to each message queue, thereby obtaining the forwarding time of each message queue in the forwarding cycle, wherein the forwarding time corresponding to each message queue is the same.
[0237] Furthermore, queue configuration rules are obtained based on the data transmission rate of each message queue, the priority when forwarding data streams, and the forwarding time in the forwarding cycle.
[0238] S902, the policy management function network element obtains the data flow demand information and determines the routing and forwarding rules based on the demand information.
[0239] Specifically, the policy management function network element can obtain data flow demand information through the business layer and / or application layer. As for the specific acquisition method, this application embodiment does not limit it.
[0240] S903, Policy Management Function Network Elements send routing and forwarding rules to Network Control Function Network Elements.
[0241] S904. The network control function element determines the queue information according to the routing and forwarding rules, and obtains the packet processing logic based on the queue information and the routing and forwarding rules.
[0242] It should be noted that steps S902 to S904 are the same as... Figure 3 The method and principle of steps S305 to S307 in the illustrated embodiment are similar. For specific implementation details, please refer to [link / reference]. Figure 3 The embodiments shown are not described in detail here.
[0243] S905, the network control function network element configures the message processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the message processing logic.
[0244] Specifically, the network control function element sends a configuration request to the forwarding device. The configuration request carries the packet processing logic. Correspondingly, after receiving the configuration request, the forwarding device obtains the packet processing logic carried therein and configures each forwarding port according to the packet processing logic.
[0245] Optionally, after the forwarding device has completed configuring the packet processing logic, it can send a configuration response to the network control function element, wherein the configuration response is used to indicate that the packet processing logic configuration is complete.
[0246] Optionally, after receiving the configuration response sent by the forwarding device, the network control function element can also send a user plane establishment response to the policy management function element. This user plane establishment response is used to indicate that the packet processing logic configuration of the forwarding device is complete.
[0247] In the second implementation, Figure 10 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 8 .like Figure 10 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0248] S1001. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0249] S1002, the policy management function network element obtains the data flow demand information and determines the routing and forwarding rules and queue information based on the demand information.
[0250] S1003. The policy management function network element sends routing and forwarding rules and queue information to the network control function network element.
[0251] S1004. The network control function element generates packet processing logic based on routing forwarding rules and queue information.
[0252] It should be noted that step S1001 and Figure 3 The method and principle of step S301 in the illustrated embodiment are similar, and steps S1002 to S1004 are similar. Figure 4 The methods and principles of steps S405 to S407 in the illustrated embodiment are similar, and can be referred to the above embodiment for details, which will not be repeated here.
[0253] S1005, the network control function network element configures the packet processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the packet processing logic.
[0254] Specifically, the network control function element sends a configuration request to the forwarding device. The configuration request carries the packet processing logic. Correspondingly, after receiving the configuration request, the forwarding device obtains the packet processing logic carried therein and configures each forwarding port according to the packet processing logic.
[0255] Optionally, after the forwarding device has completed configuring the packet processing logic, it can send a configuration response to the network control function element, wherein the configuration response is used to indicate that the packet processing logic configuration is complete.
[0256] Optionally, after receiving the configuration response sent by the forwarding device, the network control function element can also send a user plane establishment response to the policy management function element. This user plane establishment response is used to indicate that the packet processing logic configuration of the forwarding device is complete.
[0257] In the third implementation, Figure 11 A flowchart illustrating the message processing logic configuration method provided in an embodiment of this application. Figure 9 .like Figure 11 As shown, the message processing logic configuration method provided in this application embodiment includes the following steps:
[0258] S1101. Obtain queue configuration rules based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0259] S1102. The policy management function network element obtains the data flow demand information, determines the routing and forwarding rules and queue information based on the demand information, and generates packet processing logic based on the routing and forwarding rules and queue information.
[0260] S1103, Logic for processing messages sent from policy management function network elements to network control function network elements.
[0261] It should be noted that step S1101 and Figure 3 The method and principle of step S301 in the illustrated embodiment are similar, and steps S1102 to S1003 are similar. Figure 5 The methods and principles of steps S505 to S506 in the illustrated embodiment are similar, and can be referred to the above embodiment for details, which will not be repeated here.
[0262] S1104. The network control function network element configures the packet processing logic for the target forwarding device, which is used by the target forwarding device to forward the corresponding data stream based on the packet processing logic.
[0263] Specifically, the network control function element sends a configuration request to the forwarding device. The configuration request carries the packet processing logic. Correspondingly, after receiving the configuration request, the forwarding device obtains the packet processing logic carried therein and configures each forwarding port according to the packet processing logic.
[0264] Optionally, after the forwarding device has completed configuring the packet processing logic, it can send a configuration response to the network control function element, wherein the configuration response is used to indicate that the packet processing logic configuration is complete.
[0265] Optionally, after receiving the configuration response sent by the forwarding device, the network control function element can also send a user plane establishment response to the policy management function element. This user plane establishment response is used to indicate that the packet processing logic configuration of the forwarding device is complete.
[0266] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some of the steps in the figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.
[0267] One embodiment of this application provides a data scheduling device applied to a network control function network element. Figure 12 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 1 .like Figure 12 As shown, the data scheduling device 1200 includes:
[0268] The acquisition module 1201 is used to acquire the message processing logic of the data stream. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device.
[0269] Configuration module 1202 is used to configure message processing logic for the target forwarding device, and the target forwarding device forwards the corresponding data stream based on the message processing logic.
[0270] Optionally, the acquisition module 1201 is specifically used to: receive the first data packet sent by the forwarding device; and obtain the message processing logic based on the first data packet and the queue configuration rules.
[0271] Optionally, the acquisition module 1201 is specifically used to: parse the first data packet to obtain the data flow demand information; and obtain the message processing logic based on the demand information and queue configuration rules.
[0272] Optionally, the acquisition module 1201 is specifically used for: sending demand information to the policy management function network element; receiving routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining packet processing logic based on the routing and forwarding rules.
[0273] Optionally, the acquisition module 1201 is specifically used for: sending a first data packet to the policy management function network element, so that the policy management function network element can obtain the data flow demand information based on the first data packet; receiving the routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining the packet processing logic based on the routing and forwarding rules.
[0274] Optionally, the acquisition module 1201 is specifically used to: determine the queue information of the data stream according to the routing and forwarding rules, the queue information being used to indicate the queue used to send the data stream; and obtain the packet processing logic according to the queue information and the routing and forwarding rules.
[0275] Optionally, the acquisition module 1201 is specifically used to: receive queue information obtained by the policy management function network element based on the demand information; and obtain packet processing logic based on the routing forwarding rules and queue information.
[0276] Optionally, the acquisition module 1201 is specifically used for: parsing the first data packet to obtain the data flow demand information; sending the demand information to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the demand information.
[0277] Optionally, the acquisition module 1201 is specifically used for: sending a first data packet to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the first data packet.
[0278] Optionally, the data scheduling device 1200 further includes: a determining module 1203, used to determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, a receiving module 1204, used to receive the queue configuration rules sent by the policy management function network element; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0279] It should be noted that the data scheduling device 1200 provided in this application can implement the steps of the data scheduling method corresponding to the network control function network element in the above method embodiment, and can achieve the same technical effect. Here, the parts and beneficial effects that are the same as those in the method embodiment will not be described in detail.
[0280] One embodiment of this application provides a data scheduling device applied to a network element with a policy management function. Figure 13 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 2 .like Figure 13 As shown, the data scheduling device 1300 includes:
[0281] The acquisition module 1301 is used to acquire the data flow demand information; the determination module 1302 is used to determine the routing and forwarding rules based on the demand information and queue configuration rules, and to determine the message processing logic of the data flow based on the routing and forwarding rules. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; the sending module 1303 is used to send the message processing logic to the network control function network element, and the network control function network element configures the message processing logic for the target forwarding device. The message processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0282] Optionally, the determination module 1302 is specifically used to: determine the queue information for processing the data stream based on the demand information and queue configuration rules; and determine the packet processing logic based on the routing and forwarding rules and queue information.
[0283] It should be noted that the data scheduling device 1300 provided in this application can implement the steps of the data scheduling method corresponding to the strategy management function network element in the above method embodiment, and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0284] One embodiment of this application provides a data scheduling device applied to a network element with a policy management function. Figure 14 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 3 .like Figure 14 As shown, the data scheduling device 1400 includes:
[0285] The acquisition module 1401 is used to acquire the data flow demand information, and obtain the routing forwarding rules based on the demand information and queue configuration rules. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The sending module 1402 is used to send the routing forwarding rules to the network control function network element, so that the network control function network element can determine the packet processing logic based on the routing forwarding rules and configure the packet processing logic for the target forwarding device. The packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0286] Optionally, the sending module 1402 is specifically used to: determine queue information based on demand information and queue configuration rules; and send queue information and routing forwarding rules to the network control function network element, so that the network control function network element can determine the packet processing logic based on the routing forwarding rules and queue information.
[0287] Optionally, the acquisition module 1401 is specifically used to: receive the data flow requirement information in the first data packet sent by the network control function network element.
[0288] Optionally, the acquisition module 1401 is specifically used for: receiving the first data packet sent by the network control function network element; parsing the first data packet to obtain the data flow requirement information.
[0289] Optionally, the data scheduling device 1400 further includes: a determining module 1403, used to determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, to receive the queue configuration rules sent by the network control function element; wherein the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0290] It should be noted that the data scheduling device 1400 provided in this application can implement the steps of the data scheduling method corresponding to the strategy management function network element in the above method embodiment, and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0291] One embodiment of this application provides a data scheduling device applied to a forwarding device. Figure 15 Schematic diagram of the data scheduling device provided in the embodiments of this application Figure 4 .like Figure 15 As shown, the data scheduling device 1500 includes:
[0292] The determination module 1501 is used to determine the target queue for forwarding the data stream to be processed based on the message processing logic in response to receiving the data stream to be processed, and to determine the forwarding time of the data stream to be processed based on the queue configuration rules of the forwarding device. The message processing logic is configured by the network control function network element for the forwarding device. The forwarding module 1502 is used to forward the data stream to be processed through the target queue at the forwarding time.
[0293] Optionally, the data scheduling device 1500 further includes: a sending module 1503, used to send a first data packet to a network control function element;
[0294] The receiving module 1504 is used to receive the message processing logic obtained by the network control function element based on the first data packet.
[0295] It should be noted that the data scheduling device 1500 provided in this application can implement the steps of the data scheduling method corresponding to the forwarding device in the above method embodiment, and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0296] One embodiment of this application provides a network control function network element. Figure 16 This is a schematic diagram of the network control function network element provided in an embodiment of this application. (See attached diagram.) Figure 16 As shown, the network control function network element includes: transceiver 1601, processor 1602 and memory 1603.
[0297] Transceiver 1601 is used to receive and transmit data under the control of processor 1602. Specifically, in... Figure 16 In this context, the bus architecture can include any number of interconnected buses and bridges, specifically linking various circuits together, represented by one or more processors (processor 1602) and memory (memory 1603). The bus architecture can also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 1601 can be multiple elements, including a transmitter and a receiver, providing a unit for communicating with various other devices over a transmission medium, including wireless channels, wired channels, optical fibers, etc. The processor 1602 is responsible for managing the bus architecture and general processing, and the memory 1603 can store data used by the processor 1602 during operation.
[0298] Processor 1602 is responsible for managing the bus architecture and general processing, while memory 1603 can store the data used by processor 1602 when performing operations.
[0299] Optionally, the processor 1602 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a complex programmable logic device (CPLD). The processor may also employ a multi-core architecture. The processor 1602 executes any of the methods related to the terminal device provided in this application embodiment according to the obtained executable instructions by calling the computer program stored in the memory 1603. The processor and memory may also be physically separated.
[0300] Specifically, the processor 1602 is used to read the computer program in the memory and perform the following operations: obtain the message processing logic of the data stream, which is obtained based on the queue configuration rules of the forwarding port of the forwarding device. The queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; configure the message processing logic for the target forwarding device, so that the target forwarding device forwards the corresponding data stream based on the message processing logic.
[0301] Optionally, the message processing logic for obtaining the data stream includes: receiving a first data packet sent by the forwarding device; and obtaining message processing logic based on the first data packet and queue configuration rules.
[0302] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: parsing the first data packet to obtain data flow demand information; and obtaining message processing logic according to the demand information and queue configuration rules.
[0303] Optionally, based on the demand information and queue configuration rules, the packet processing logic is obtained, including: sending demand information to the policy management function network element; receiving routing and forwarding rules obtained by the policy management function network element based on the demand information and queue configuration rules; and obtaining packet processing logic based on the routing and forwarding rules.
[0304] Optionally, based on the first data packet and queue configuration rules, message processing logic is obtained, including: sending the first data packet to the policy management function network element, so that the policy management function network element can obtain data flow demand information according to the first data packet; receiving the routing and forwarding rules obtained by the policy management function network element according to the demand information and queue configuration rules; and obtaining message processing logic according to the routing and forwarding rules.
[0305] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: determining the queue information of the data stream according to the routing and forwarding rules, the queue information being used to indicate the queue used to send the data stream; and obtaining the packet processing logic according to the queue information and the routing and forwarding rules.
[0306] Optionally, according to the routing and forwarding rules, the packet processing logic is obtained, including: receiving queue information obtained by the policy management function network element according to the demand information; and obtaining the packet processing logic according to the routing and forwarding rules and the queue information.
[0307] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes:
[0308] The first data packet is parsed to obtain the data flow requirement information; the requirement information is sent to the policy management function network element; and the message processing logic obtained by the policy management function network element based on the requirement information is received.
[0309] Optionally, the message processing logic obtained based on the first data packet and queue configuration rules includes: sending the first data packet to the policy management function network element; and receiving the message processing logic obtained by the policy management function network element based on the first data packet.
[0310] Optionally, before acquiring the message processing logic of the data stream, the processor 1602 is further configured to: determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, receive the queue configuration rules sent by the policy management function network element; the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0311] It should be noted that the network control function network element provided in this application can implement all the method steps implemented by the network control function network element in the above method embodiment, and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0312] One embodiment of this application provides a network element with a policy management function. Figure 17 This is a schematic diagram of the structure of the policy management function network element provided in the embodiments of this application. Figure 17 As shown, the policy management function network element 1700 includes: transceiver 1701, processor 1702 and memory 1703.
[0313] Transceiver 1701 is used to receive and transmit data under the control of processor 1702. Specifically, in... Figure 17In this context, the bus architecture can include any number of interconnected buses and bridges, specifically linking various circuits together, represented by one or more processors (processor 1702) and memory (memory 1703). The bus architecture can also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 1701 can be multiple elements, including a transmitter and a receiver, providing a unit for communicating with various other devices over a transmission medium, including wireless channels, wired channels, optical fibers, etc. The processor 1702 is responsible for managing the bus architecture and general processing, and the memory 1703 can store data used by the processor 1702 during operation.
[0314] Processor 1702 is responsible for managing the bus architecture and general processing, while memory 1703 can store the data used by processor 1702 when performing operations.
[0315] Optionally, the processor 1702 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a complex programmable logic device (CPLD). The processor may also employ a multi-core architecture. The processor 1702 executes any of the methods related to the terminal device provided in the embodiments of this application according to the obtained executable instructions by calling the computer program stored in the memory 1703. The processor and the memory may also be physically separated.
[0316] In some embodiments, the processor 1702 is configured to read a computer program in memory and perform the following operations: obtain data flow demand information; determine routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; determine the packet processing logic of the data flow based on the routing and forwarding rules; and send the packet processing logic to the network control function element, wherein the network control function element configures the packet processing logic for the target forwarding device, and the packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0317] Optionally, the packet processing logic is determined according to the routing and forwarding rules, including: determining the queue information for processing the data stream based on the demand information and queue configuration rules; and determining the packet processing logic based on the routing and forwarding rules and queue information.
[0318] In other embodiments, the processor 1702 may also be used to read a computer program in memory and perform the following operations: obtain data flow demand information; obtain routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; send the routing and forwarding rules to the network control function element, which uses the network control function element to determine the packet processing logic based on the routing and forwarding rules and configure the packet processing logic for the target forwarding device, wherein the packet processing logic is used to instruct the target forwarding device to forward the corresponding data flow.
[0319] Optionally, sending routing and forwarding rules to the network control function network element includes: determining queue information based on demand information and queue configuration rules; and sending queue information and routing and forwarding rules to the network control function network element for the network control function network element to determine packet processing logic based on the routing and forwarding rules and queue information.
[0320] Optionally, the data flow requirement information can be obtained, including: receiving the data flow requirement information from the first data packet sent by the network control function element.
[0321] Optionally, the data flow requirement information can be obtained by: receiving a first data packet sent by a network control function element; parsing the first data packet to obtain the data flow requirement information.
[0322] Optionally, before obtaining the data flow demand information, the processor is further configured to: determine the queue configuration rules of the forwarding port based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, receive the queue configuration rules sent by the network control function element; wherein the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
[0323] It should be noted that the strategy management function network element provided in this application can implement all the method steps implemented by the strategy management function network element in the above method embodiment, and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0324] One embodiment of this application provides a forwarding device. Figure 18 This is a schematic diagram of the structure of a forwarding device provided in an embodiment of this application. Figure 18As shown, the forwarding device 1800 includes: a transceiver 1801, a processor 1802, and a memory 1803.
[0325] Transceiver 1801 is used to receive and transmit data under the control of processor 1802. Specifically, in... Figure 18 In this context, the bus architecture can include any number of interconnected buses and bridges, specifically linking various circuits together, represented by one or more processors (processor 1802) and memory (memory 1803). The bus architecture can also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 1801 can be multiple elements, including a transmitter and a receiver, providing a unit for communicating with various other devices over a transmission medium, including wireless channels, wired channels, optical fibers, etc. The processor 1802 is responsible for managing the bus architecture and general processing, and the memory 1803 can store data used by the processor 1802 during operation.
[0326] Processor 1802 is responsible for managing the bus architecture and general processing, while memory 1803 can store the data used by processor 1802 when performing operations.
[0327] Optionally, the processor 1802 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a complex programmable logic device (CPLD). The processor may also employ a multi-core architecture. The processor 1802 executes any of the methods related to the terminal device provided in this application embodiment according to the obtained executable instructions by calling a computer program stored in memory 1803. The processor and memory may also be physically separated.
[0328] In some embodiments, processor 1802 is configured to read a computer program from memory and perform the following operations:
[0329] In response to receiving a data stream to be processed, a target queue for forwarding the data stream is determined based on the message processing logic; the forwarding time of the data stream is determined based on the queue configuration rules of the forwarding device, and the message processing logic is configured by the network control function network element for the forwarding device; the data stream to be processed is forwarded through the target queue at the forwarding time.
[0330] Optionally, the processor is also configured to: send a first data packet to the network control function element; and receive message processing logic obtained by the network control function element based on the first data packet.
[0331] It should be noted that the forwarding network device provided in this application can implement all the method steps corresponding to the forwarding device in the above method embodiments and can achieve the same technical effect. Here, the parts that are the same as those in the method embodiments and the beneficial effects will not be described in detail.
[0332] It should be noted that the division of units in the embodiments of this application is illustrative and only represents one logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated units described above can be implemented in hardware or as software functional units.
[0333] If the aforementioned integrated units are implemented as software functional units and sold or used as independent products, they can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0334] This application provides a processor-readable storage medium storing a computer program. The computer program causes the processor to execute the network energy-saving method provided in this application, enabling the processor to implement all the steps of the network energy-saving methods implemented by the network device in the above method embodiments, and achieving the same technical effects. Therefore, the parts and beneficial effects identical to those in the method embodiments will not be described in detail here. The processor-readable storage medium can be any available medium or data storage device accessible to the processor, including but not limited to magnetic storage (e.g., floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical storage (e.g., CDs, DVDs, BDs, HVDs, etc.), and semiconductor storage (e.g., ROMs, EPROMs, EEPROMs, non-volatile memory (NAND flash), solid-state drives (SSDs), etc.).
[0335] An embodiment of this application also provides a computer program product containing instructions. The computer program is stored in a storage medium. At least one processor can read the computer program from the storage medium. When the at least one processor executes the computer program, it can implement all the steps of the network energy-saving methods implemented by the network device in the above method embodiment and achieve the same technical effect. Here, the parts that are the same as those in the method embodiment and the beneficial effects will not be described in detail.
[0336] This application also provides a communication system, including a network device and any one or more of the following: a terminal device, a core network, a centralized unit (CU), or a distributed unit (DU). The network device is capable of performing all the steps in the embodiments of the above-described network energy-saving method and achieving the same technical effects. The parts and beneficial effects that are the same as those in the method embodiments will not be described in detail here.
[0337] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Moreover, this application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage) containing computer-usable program code.
[0338] This application is described with reference to signaling interaction diagrams and / or block diagrams of methods, apparatus, and computer program products according to embodiments of this application. It should be understood that each block of the signaling interaction diagrams and / or block diagrams, and combinations of blocks in the signaling interaction diagrams and / or block diagrams, can be implemented by computer-executable instructions. These computer-executable instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the signaling interaction diagrams. Figure 1 One or more processes and / or boxes Figure 1 The means are devices that specify the functions specified in one or more boxes. These processor-executable instructions may also be stored in a processor-readable memory capable of directing a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the processor-readable memory produce an article of manufacture including instruction means implemented in a signaling interaction diagram. Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0339] These processors can execute instructions that can also be loaded onto a computer or other programmable data processing equipment, causing a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing signaling interaction diagrams. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0340] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A data scheduling method, characterized in that, The data scheduling method, applied to network control function network elements, includes: The system receives a first data packet sent by a forwarding device; the first data packet includes data stream demand information; the data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier. Based on the queue configuration rules of the first data packet and the forwarding port of the forwarding device, the packet processing logic is obtained; The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port; the message processing logic includes: a matching field, the priority of the data stream, and an action field; the action field is used to indicate the message queue and exit point of the forwarded data stream; Configure the packet processing logic for the target forwarding device, so that the target forwarding device forwards the corresponding data stream based on the packet processing logic.
2. The data scheduling method according to claim 1, characterized in that, The message processing logic obtained based on the queue configuration rules of the first data packet and the forwarding port of the forwarding device includes: The first data packet is parsed to obtain the data stream requirement information; Based on the required information and the queue configuration rules, the message processing logic is obtained.
3. The data scheduling method according to claim 1, characterized in that, The step of obtaining the message processing logic based on the demand information and the queue configuration rules includes: Send the requirement information to the policy management function network element; receive the routing and forwarding rules obtained by the policy management function network element based on the requirement information and the queue configuration rules; obtain the packet processing logic based on the routing and forwarding rules.
4. The data scheduling method according to claim 1, characterized in that, The message processing logic obtained based on the queue configuration rules of the first data packet and the forwarding port of the forwarding device includes: The first data packet is sent to the policy management function network element, which obtains the data flow demand information based on the first data packet; the policy management function network element receives the routing and forwarding rules obtained by the policy management function network element based on the demand information and the queue configuration rules; and the packet processing logic is obtained based on the routing and forwarding rules.
5. The data scheduling method according to claim 3 or 4, characterized in that, The step of obtaining the packet processing logic according to the routing and forwarding rules includes: Based on the routing and forwarding rules, the queue information of the data stream is determined, and the queue information is used to indicate the queue used to send the data stream; based on the queue information and the routing and forwarding rules, the packet processing logic is obtained.
6. The data scheduling method according to claim 3 or 4, characterized in that, The step of obtaining the packet processing logic according to the routing and forwarding rules includes: The system receives queue information obtained by the policy management function network element based on the requirement information; and obtains the packet processing logic based on the routing and forwarding rules and the queue information.
7. The data scheduling method according to claim 1, characterized in that, The packet processing logic obtained based on the queue configuration rules of the first data packet and the forwarding port of the forwarding device includes: The first data packet is parsed to obtain the data flow requirement information; the requirement information is sent to the policy management function network element; and the message processing logic obtained by the policy management function network element based on the requirement information is received.
8. The data scheduling method according to claim 1, characterized in that, The packet processing logic obtained based on the queue configuration rules of the first data packet and the forwarding port of the forwarding device includes: Send the first data packet to the policy management function network element; receive the message processing logic obtained by the policy management function network element based on the first data packet.
9. The data scheduling method according to claim 1, characterized in that, Before the message processing logic for obtaining the data stream, it also includes: The queue configuration rules of the forwarding port are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, the queue configuration rules are received from the policy management function network element; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
10. A data scheduling method, characterized in that, The data scheduling method, applied to network elements with policy management functions, includes: Obtain data stream requirement information; the data stream requirement information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; Based on the aforementioned demand information and queue configuration rules, routing and forwarding rules are determined. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The packet processing logic of the data stream is determined according to the routing and forwarding rules; the packet processing logic includes: a matching field, the priority of the data stream, and an action field; the action field is used to indicate the message queue and egress point for forwarding the data stream. The message processing logic is sent to the network control function element, which configures the message processing logic for the target forwarding device. The message processing logic is used to instruct the target forwarding device to forward the corresponding data stream.
11. The data scheduling method according to claim 10, characterized in that, The packet processing logic determined according to the routing and forwarding rules includes: Based on the demand information and queue configuration rules, determine the queue information used to process the data stream; based on the routing and forwarding rules and the queue information, determine the packet processing logic.
12. A data scheduling method, characterized in that, The data scheduling method, applied to network elements with policy management functions, includes: Obtain data flow requirement information; the data flow requirement information includes at least one of the following: DetNet flow characteristics, DetNet flow service requirements, and DetNet flow identifier; obtain routing and forwarding rules based on the requirement information and queue configuration rules, the queue configuration rules being determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; send the routing and forwarding rules to the network control function element, so that the network control function element can determine the packet processing logic based on the routing and forwarding rules and configure the packet processing logic for the target forwarding device, the packet processing logic being used to instruct the target forwarding device to forward the corresponding data flow; the packet processing logic includes: a matching field, a data flow priority, and an action field; the action field is used to indicate the message queue and exit point for forwarding the data flow.
13. The data scheduling method according to claim 12, characterized in that, Sending the routing and forwarding rules to the network control function element includes: Based on the demand information and queue configuration rules, queue information is determined; the queue information and routing rules are sent to the network control function element, so that the network control function element can determine the packet processing logic based on the routing rules and the queue information.
14. The data scheduling method according to any one of claims 10 to 13, characterized in that, The requirement information for obtaining data streams includes: receiving data stream requirement information from the first data packet sent by the network control function element.
15. The data scheduling method according to any one of claims 10 to 13, characterized in that, The process of obtaining the data flow requirement information includes: receiving a first data packet sent by the network control function element; parsing the first data packet to obtain the data flow requirement information.
16. The data scheduling method according to any one of claims 10 to 13, characterized in that, Before obtaining the data stream requirements, the following is also included: The queue configuration rules of the forwarding port are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; or, the queue configuration rules sent by the network control function element are received; wherein, the queue configuration rules are used to indicate the data forwarding time of each message queue within the forwarding cycle of the forwarding port, and the duration of the data forwarding time is the data forwarding cycle of the forwarding device.
17. A data scheduling method, characterized in that, The data scheduling method, applied to a forwarding device, includes: In response to receiving a data stream to be processed, a target queue for forwarding the data stream is determined based on message processing logic; the forwarding time of the data stream to be processed is determined based on the queue configuration rules of the forwarding device, wherein the message processing logic is configured by the network control function element for the forwarding device; the message processing logic is obtained by the network control function element based on a first data packet and the queue configuration rules; the first data packet includes data stream demand information; the data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; the data stream to be processed is forwarded through the target queue at the forwarding time; the message processing logic includes: a matching field, a data stream priority field, and an action field; the action field is used to indicate the message queue and egress point for forwarding the data stream.
18. The data scheduling method according to claim 17, characterized in that, Also includes: Send the first data packet to the network control function element; The network control function element receives the message processing logic obtained from the first data packet.
19. A data scheduling device, characterized in that, The data scheduling device, applied to network control function network elements, includes: The acquisition module is used to acquire the message processing logic of the data stream. The message processing logic is obtained based on the queue configuration rules of the forwarding port of the forwarding device. The queue configuration rules are determined according to the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The configuration module is used to configure the packet processing logic for the target forwarding device, and the target forwarding device forwards the corresponding data stream based on the packet processing logic; The acquisition module is specifically used to receive a first data packet sent by the forwarding device; the first data packet includes data stream demand information; the data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; Based on the first data packet and the queue configuration rules, the message processing logic is obtained; the message processing logic includes: a matching field, a data flow priority, and an action field; the action field is used to indicate the message queue and egress point for forwarding the data flow.
20. A data scheduling device, characterized in that, The data scheduling device, applied to network elements for policy management functions, includes: The acquisition module is used to acquire data stream demand information; the data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; The determination module is used to determine routing and forwarding rules based on the requirement information and queue configuration rules, and to determine the message processing logic of the data stream based on the routing and forwarding rules. The queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The message processing logic includes a matching field, the priority of the data stream, and an action field. The action field is used to indicate the message queue and exit point of the forwarded data stream. The sending module is used to send the message processing logic to the network control function network element, and the network control function network element configures the message processing logic for the target forwarding device. The message processing logic is used to instruct the target forwarding device to forward the corresponding data stream.
21. A data scheduling device, characterized in that, The data scheduling device, applied to network elements for policy management functions, includes: The acquisition module is used to acquire data stream demand information, which includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; and to obtain routing and forwarding rules based on the demand information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device. The sending module is used to send the routing and forwarding rules to the network control function network element, so that the network control function network element can determine the packet processing logic according to the routing and forwarding rules and configure the packet processing logic for the target forwarding device. The packet processing logic is used to instruct the target forwarding device to forward the corresponding data stream. The packet processing logic includes: a matching field, a data stream priority field, and an action field. The action field is used to indicate the message queue and egress point for forwarding the data stream.
22. A data scheduling device, characterized in that, The data scheduling device, applied to a forwarding device, includes: A determination module is used to, in response to receiving a data stream to be processed, determine a target queue for forwarding the data stream to be processed based on message processing logic, and determine the forwarding time of the data stream to be processed based on the queue configuration rules of the forwarding device. The message processing logic is configured by the network control function element for the forwarding device. The message processing logic is obtained by the network control function element based on a first data packet and the queue configuration rules. The first data packet includes data stream demand information. The data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier. The message processing logic includes a matching field, a data stream priority field, and an action field. The action field is used to indicate the message queue and egress point for forwarding the data stream. A forwarding module is used to forward the data stream to be processed through the target queue at the forwarding time.
23. A network control function element, characterized in that, include: Memory, used to store computer programs; A transceiver is used to send and receive data under the control of a processor. Processor, configured to read the computer program in the memory and perform the following operations: The system receives a first data packet sent by a forwarding device. The first data packet includes data flow demand information. The data flow demand information includes at least one of the following: DetNet flow characteristics, DetNet flow service requirements, and DetNet flow identifier. Based on the first data packet and the queue configuration rules of the forwarding device's forwarding port, message processing logic is obtained. The queue configuration rules are determined according to the forwarding device's data forwarding cycle and the number of message queues supported by the forwarding device's forwarding port. The message processing logic includes a matching field, a data flow priority field, and an action field. The action field is used to indicate the message queue and exit point of the forwarded data flow. Configure the packet processing logic for the target forwarding device, so that the target forwarding device forwards the corresponding data stream based on the packet processing logic.
24. A network element with a policy management function, characterized in that, include: Memory, used to store computer programs; A transceiver is used to send and receive data under the control of a processor. Processor, configured to read the computer program in the memory and perform the following operations: Obtain data stream requirement information; the data stream requirement information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier; determine routing and forwarding rules based on the requirement information and queue configuration rules, wherein the queue configuration rules are determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; determine the packet processing logic of the data stream based on the routing and forwarding rules; the packet processing logic includes: a matching field, the priority of the data stream, and an action field; the action field is used to indicate the message queue and egress point of the forwarded data stream; The message processing logic is sent to the network control function element, which configures the message processing logic for the target forwarding device. The message processing logic is used to instruct the target forwarding device to forward the corresponding data stream.
25. A network element with a policy management function, characterized in that, include: Memory, used to store computer programs; A transceiver is used to send and receive data under the control of a processor. Processor, configured to read the computer program in the memory and perform the following operations: Obtain data flow demand information; the data flow demand information includes at least one of the following: DetNet flow characteristics, DetNet flow service requirements, and DetNet flow identifier; based on the demand information and queue configuration rules, obtain routing and forwarding rules, the queue configuration rules being determined based on the data forwarding cycle of the forwarding device and the number of message queues supported by the forwarding port of the forwarding device; send the routing and forwarding rules to the network control function element, so that the network control function element can determine the packet processing logic based on the routing and forwarding rules and configure the packet processing logic for the target forwarding device, the packet processing logic being used to instruct the target forwarding device to forward the corresponding data flow; The message processing logic includes: a matching field, a data stream priority field, and an action field; the action field is used to indicate the message queue and exit point for forwarding the data stream.
26. A relay device, characterized in that, include: Memory, used to store computer programs; A transceiver is used to send and receive data under the control of a processor. The processor is configured to read a computer program from the memory and perform the following operations: in response to receiving a data stream to be processed, determining a target queue for forwarding the data stream to be processed based on message processing logic; Based on the queue configuration rules of the forwarding device, the forwarding time of the data stream to be processed is determined. The packet processing logic is configured by the network control function element for the forwarding device. The packet processing logic is obtained by the network control function element based on the first data packet and the queue configuration rules. The first data packet includes data stream demand information. The data stream demand information includes at least one of the following: DetNet stream characteristics, DetNet stream service requirements, and DetNet stream identifier. The data stream to be processed is forwarded through the target queue at the forwarding time. The message processing logic includes: a matching field, a data stream priority field, and an action field; the action field is used to indicate the message queue and exit point for forwarding the data stream.
27. A processor-readable storage medium, characterized in that, The processor-readable storage medium stores a computer program for causing the processor to execute the data scheduling method according to any one of claims 1 to 18.
28. A computer program product, characterized in that, include: A computer program that, when executed by a processor, implements the data scheduling method as described in any one of claims 1 to 18.
Citation Information
Patent Citations
Message forwarding method and device and electronic equipment
CN112585914A
Message transmission method and device
CN113711572A