Quality of Service Policy Configuration Method, Device, and Equipment
By using the TC-TB policy pair of flow classifier TC and flow behavior TB in the SDN network, the flexibility and adaptability issues of the QoS configuration model are solved, more efficient QoS policy configuration and deployment are achieved, and the needs of multiple service flows are met.
Patent Information
- Application Number
- CN202410446621.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-15
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2044-04-15
AI Technical Summary
The existing QoS configuration model has problems with poor flexibility and adaptability in SDN networks, including a limited number of interface binding policies, inability to match subsequent actions when processing traffic with inclusion relationships, and excessive policy encapsulation granularity.
The TC-TB policy pair, which consists of a traffic classifier (TC) and a traffic behavior (TB), is used. The controller creates traffic classifier matching conditions and configures QoS actions. The TC-TB policy pair is then delivered to the device interface. The TC-TB policy pair supports inclusion matching of multiple policy pairs, setting policy pair priorities and subsequent control flags, and adding time policy configuration to control the policy's effective time.
It improves the flexibility and adaptability of QoS policy configuration, reduces configuration complexity and impact scope, supports incremental deployment and time period policy matching, aligns logic with user needs, and simplifies the QoS policy configuration process.
Smart Images

Figure CN118433054B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communication and network technology, and in particular to a method, device and equipment for configuring a quality of service policy. Background Art
[0002] For network services, factors affecting Quality of Service (QoS) include transmission bandwidth, transmission latency, and packet loss rate. QoS can be improved by ensuring transmission bandwidth, reducing transmission latency, packet loss rate, and delay jitter. Network resources are always limited. Ensuring the quality of service for one type of service may compromise the quality of other services. Therefore, network administrators need to rationally plan and allocate network resources based on the characteristics of various services to ensure efficient utilization of network resources.
[0003] Devices from mainstream vendors all support Modular QoS Configuration (MQC) to deploy QoS policies. However, the existing QoS configuration model has technical issues such as a limit on the number of policies that can be bound to interfaces, inability to match subsequent actions when processing traffic with inclusion relationships, and excessive granularity in QoS policy encapsulation. Summary of the Invention
[0004] In view of this, the present invention provides a method, apparatus and device for configuring a quality of service policy, which are used to solve the technical problems of poor flexibility in QoS policy configuration and poor adaptability of SDN networks.
[0005] According to one aspect of an embodiment of the present invention, the present invention provides a method for configuring a quality of service policy, which is applied to a software-defined network (SDN) controller. The method includes:
[0006] Creating a traffic classifier TC, in which a traffic classifier matching condition is configured;
[0007] Create a traffic behavior TB, in which a quality of service (QoS) action to be executed for the paired traffic classifier is configured;
[0008] Send a traffic classifier and traffic behavior policy pair, namely a TC-TB policy pair, to the device interface so that the device applies and executes the TC-TB policy pair. The TC-TB policy pair includes at least the following configurations: paired traffic classifiers TC and traffic behaviors TB, inbound and outbound directions, policy pair priority, and subsequent control flags.
[0009] The inflow and outflow directions are used to control the traffic direction affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting the traffic; and the subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair.
[0010] Furthermore, the flow classification matching conditions in the flow classification include one or more of the following matching conditions: access control rule ACL matching conditions, application group matching conditions, and layer 2 feature matching conditions;
[0011] The QoS action includes one or more of the following actions: traffic statistics, traffic rate limiting, traffic filtering, traffic bandwidth management, traffic control, traffic redirection, and traffic marking.
[0012] Furthermore, the method further comprises:
[0013] Sending multiple TC-TB policy pairs to the device interface, where matching conditions of the multiple TC-TB policy pairs have or do not have an inclusion relationship;
[0014] When the subsequent control flag of the TC-TB policy pair is set to allow continuation, the matching execution of multiple TC-TB policy pairs with inclusion relationship in the matching conditions is supported.
[0015] Furthermore, the method further comprises:
[0016] Before delivering the TC-TB policy pair to the device interface, create a time policy (time-range);
[0017] The TC-TB policy pair also includes time policy configuration;
[0018] The time policy is used to control the effective time of the TC-TB policy pair.
[0019] According to another aspect of an embodiment of the present invention, the present invention further provides a method for configuring a quality of service policy, which is applied to a device controlled by a controller in a software-defined network (SDN). The method includes:
[0020] Receive a TC-TB policy pair issued by a controller, wherein the TC-TB policy pair includes at least the following configurations: a paired flow classifier TC and flow behavior TB, flow inflow and outflow directions, a policy pair priority, and a subsequent control flag; the flow inflow and outflow directions are used to control the direction of traffic affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting traffic; and the subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair;
[0021] Apply the TC-TB policy pair to the specified interface.
[0022] Furthermore, the method further comprises:
[0023] The TC-TB policy pair also includes a time policy configuration; the time policy is used to control the effective time of the TC-TB policy pair.
[0024] Furthermore, the method further comprises:
[0025] Receive the management request from the controller and upload the locally configured QoS policy pair to the controller so that the controller can centrally manage the QoS policy pair configured on the device side and the QoS policy pair configured on the controller side.
[0026] According to another aspect of an embodiment of the present invention, the present invention further provides a device for configuring a quality of service policy, which is applied to a software-defined network (SDN) controller, and includes:
[0027] A flow classifier creation module, configured to create a flow classifier TC, wherein the flow classifier is configured with a flow classifier matching condition;
[0028] A traffic behavior creation module creates a traffic behavior TB, wherein the traffic behavior is configured with a quality of service (QoS) action executed for the paired traffic classifier;
[0029] The policy pair sending module is used to send the flow classification and flow behavior policy pair, namely the TC-TB policy pair, to the device interface, so that the device applies and executes the TC-TB policy pair. The TC-TB policy pair includes at least the following configurations: paired flow classification TC and flow behavior TB, flow inflow and outflow directions, policy pair priority, and subsequent control mark; the flow inflow and outflow directions are used to control the flow direction affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting the flow; and the subsequent control mark is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair.
[0030] Furthermore, the device further comprises:
[0031] The time policy creation module is used to create a time policy before issuing the TC-TB policy pair to the device interface;
[0032] The TC-TB policy pair also includes a time policy configuration, and the time policy is used to control the effective time of the TC-TB policy pair.
[0033] According to another aspect of an embodiment of the present invention, the present invention further provides a device for configuring a quality of service policy, which is applied to a device controlled by a controller in a software-defined network (SDN). The device includes:
[0034] A policy pair receiving module is configured to receive a TC-TB policy pair issued by a controller. The TC-TB policy pair includes at least the following configurations: a paired flow classifier TC and flow behavior TB, flow inflow and outflow directions, a policy pair priority, and a subsequent control flag. The flow inflow and outflow directions are used to control the direction of traffic affected by the TC-TB policy pair. The policy pair priority is used to control the priority order of the TC-TB policy pair in affecting traffic. The subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair.
[0035] The policy pair application module is used to apply the TC-TB policy pair to the specified interface.
[0036] Furthermore, the device further comprises:
[0037] The local policy pair upload module is used to receive the management request from the controller and upload the locally configured QoS policy pair to the controller so that the controller can centrally manage the QoS policy pair configured on the device side and the QoS policy pair configured on the controller side.
[0038] In this invention, the control layer configures and issues policies based on a single TC-TB policy pair. There's no need to create a policy object and bind it to an interface beforehand. Instead, the TC-TB policy pair issued to the device interface includes the flow classification TC and flow behavior TB, along with the flow inbound and outbound directions, the policy pair priority, and subsequent control flags. This invention simplifies the QoS policy configuration process, refines the granularity of policy deployment, aligns QoS configuration logic with user needs, reduces the impact of each policy adjustment, and reduces the complexity and impact of QoS policy configuration. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments of the present invention or the description of the prior art. Obviously, the drawings described below are only some embodiments recorded in the present invention. For ordinary technicians in this field, other drawings can also be obtained based on these drawings of the embodiments of the present invention.
[0040] Figure 1 This is a diagram of a scenario where a new traffic policy cannot be incrementally configured in an existing traffic policy.
[0041] Figure 2 This figure shows the inclusion relationship among the flow rules ACL1, ACL2, and ACL3 in the QoS policy.
[0042] Figure 3A flowchart illustrating the steps of a method for implementing QoS policy configuration on the controller side according to an embodiment of the present invention;
[0043] Figure 4 A schematic flow chart of the steps of a method for QoS configuration issued by a device-side application controller according to an embodiment of the present invention;
[0044] Figure 5 A schematic diagram of the structure of an electronic device provided in one embodiment of the present invention for implementing the quality of service policy configuration method provided in the present invention. DETAILED DESCRIPTION
[0045] The terms used in the embodiments of the present invention are intended solely to describe specific embodiments and are not intended to limit the embodiments. The singular forms "a," "the," and "the" used in the embodiments of the present invention are intended to include the plural forms, unless the context clearly indicates otherwise. Although the embodiments of the present invention may be described using terms such as first, second, and third, such terms are intended solely to distinguish similar information, entities, or steps, and are not intended to describe a specific order or precedence. For example, without departing from the scope of the embodiments of the present invention, first information may be referred to as second information, and similarly, second information may be referred to as first information. For another example, in some scenarios, first information may refer to a single piece of information or to multiple pieces of information of the same type. Furthermore, the term "if" may be interpreted as "when," "when," or "in response to a determination." "And / or" in the present invention is merely a term used to describe an association between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. A and B may be singular or plural. Furthermore, in the description of the present invention, unless otherwise specified, "plurality" refers to two or more than two. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or plural.
[0046] Currently, devices from mainstream vendors all support Modular QoS Configuration (MQC) to deploy QoS policies. This is generally done in four steps:
[0047] Step 1: Create a traffic classifier and differentiate service flows by setting classification matching conditions. Define the service flows that meet the classification matching conditions as a traffic classifier. The classification matching conditions may include: access control rule ACL (IPv4 or IPv6 ACL rule) matching conditions, application group (corresponding to deep packet inspection DPI application group) matching conditions, and Layer 2 feature matching conditions (such as MAC, VLAN, 802.1P, etc.).
[0048] The command format for creating a traffic classifier is as follows:
[0049] traffic classifier classifier-name[operator{and|or}]
[0050] if-match[not]match-criteria
[0051] Step 2: Create a traffic behavior. Traffic behavior configuration is used to define QoS processing actions for service flows. QoS processing actions can include traffic policing, traffic filtering, re-marking, and traffic statistics. Multiple forwarding actions can be configured under the same traffic behavior.
[0052] The command format for creating a traffic behavior is as follows:
[0053] traffic behavior behavior-name
[0054] accounting……
[0055] car……
[0056] filter……
[0057] gts……
[0058] nest top-most……
[0059] packet-rate……
[0060] redirect……
[0061] remark……
[0062] Step 3: Define a QoS policy. The QoS policy is used to associate traffic classifiers with traffic behaviors (one policy can be configured with multiple traffic classifiers and traffic behaviors).
[0063] qos policy policy-name
[0064] classifier classifier-name1 behavior behavior-name1
[0065] classifier classifier-name2 behavior behavior-name2
[0066] Step 4: Apply QoS policy in the inbound and outbound directions of the interface or globally.
[0067] interface interface-type interface-number
[0068] qos apply policy policy-name{inbound|outbound}
[0069] The deployment process for QoS policies in traditional network management software is basically the same as the implementation process on devices, which also requires four steps:
[0070] STEP 1: Create a traffic classification template.
[0071] STEP 2: Create a traffic behavior template.
[0072] STEP 3: Create a QoS policy template;
[0073] STEP 4: Apply the QoS policy template to the device or its interface.
[0074] After analysis and research, the inventors found that the existing MQC configuration method for devices and the QoS policy deployment model of traditional network management software are not conducive to the use of SDN scenarios, mainly for the following reasons:
[0075] Reason 1: By default, only one QoS policy can be bound to the inbound or outbound direction of an interface, making configuration difficult.
[0076] Scenario 1: When a QoS policy is already configured on a device interface, the QoS policy template defined on the SDN controller cannot be applied to the device or device interface controlled by the controller.
[0077] Scenario 2: A controller-defined QoS policy is already bound to a device interface, and a new controller-defined QoS policy cannot be bound to it. This prevents users from planning incremental services and requires a global perspective to complete planning all at once. If user requirements change, even slightly, users will need to re-plan QoS policies for the entire network. Furthermore, because the policies deployed previously may be for different users and target different traffic, requiring all policy configuration users to have a global view of all network traffic is nearly impossible.
[0078] Figure 1 This diagram shows a scenario where a new traffic policy cannot be incrementally configured when an existing traffic policy already exists.
[0079] a. The user first plans QoS Policy 1 for zone 1, which mainly processes traffic policies for traffic class 1.
[0080] b. The user plans QoS Policy 2 for zone 2, which mainly processes traffic policies for traffic class 2.
[0081] c. At this time, the user discovers that traffic of flow category 1 and flow category 2 exists simultaneously in the interconnection network between area 1 and area 2. At this time, the current configuration model cannot be directly modified in the existing QoS Policy1 or QoS Policy2. Instead, it is necessary to unbind the policies of R3, R6, R7, and R10, and then redefine a traffic policy QoSPolicy3 for flow category 1 and flow category 2, and bind this policy to R3, R6, R7, and R10. The operation is extremely cumbersome.
[0082] Cause 2: Once a service flow successfully matches the Traffic Classifier (TC) and Traffic Behavior (TB) pair configured in the QoS policy, the QoS policy processing process terminates and no further TC-TB pairs are matched or processed. If the matching flows contain an inclusion relationship, subsequent TC-TB pairs cannot be executed.
[0083] Scenario 3: The user wants to perform TB1 (car traffic policing) based on TC1 (ACL1), perform TB2 (remark DSCP1 packet marking) based on TC2 (ACL2), and perform TB3 (remark DSCP2 packet marking) based on TC3 (ACL3).
[0084] Figure 2This diagram shows the inclusion relationship between flow rules ACL1, ACL2, and ACL3 in the QoS policy for scenario three. Because of the inclusion relationship between ACL1 and ACL2, and between ACL1 and ACL3, the existing QoS policy deployment method in this scenario cannot meet the QoS policy processing requirements for multiple service flows.
[0085] Reason three: QoS policy templates are based on the entire QoS, including matching relationships and corresponding actions for all flows on an interface. This encapsulation granularity is too large, inconsistent with the flow-based configuration logic from the user's perspective. However, for users operating the controller, the QoS policy configuration object is a pair of TCs and TBs (referred to as TC-TB pairs), that is, a set of actions for a specific flow.
[0086] Based on the above analysis, in order to overcome the many technical defects of traditional QoS policy configuration, the present invention provides a new QoS policy configuration solution suitable for controller docking in SDN scenarios, so as to solve the technical problems such as the limitation on the number of interface binding policies in the existing QoS policy configuration, the inability of subsequent actions to match and take effect when there is a matching rule inclusion relationship in the processing traffic, and the excessive granularity of QoS policy encapsulation.
[0087] The specific implementation process of the present invention is described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that the steps shown in the processes of the accompanying drawings and embodiments can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0088] Figure 3 This is a flowchart of the steps of implementing a QoS policy configuration method on the controller side according to an embodiment of the present invention. The following describes an example of the controller side MQC configuration and QoS configuration delivery process:
[0089] Step 301. Create a flow classification TC, in which the flow classification matching conditions include but are not limited to one or more of the following matching conditions: access control rule ACL (IPv4 or IPv6 ACL rule) matching conditions, application group (application group corresponding to deep packet inspection DPI) matching conditions, and layer 2 feature matching conditions (such as MAC, VLAN, 802.1P, etc.).
[0090] The command format for creating a traffic classifier is as follows:
[0091] traffic classifier classifier-name[operator{and|or}]
[0092] if-match[not]match-criteria
[0093] classifier-name is the name of the traffic classifier, and match-criteria is used to configure the classifier matching criteria.
[0094] The controller can trigger the creation of a traffic classifier by instructing the controller to do so through a network management protocol (such as NETCONF). In intelligent scenarios, users can also specify intent through natural language, and the controller automatically generates the corresponding traffic classifier based on the user's intent. For example, if a user sends a message saying, "Please block the application service flow from 1.1.1.1 to 2.2.2.2," the controller uses artificial intelligence technology to analyze the user's intent, convert it into a command line instruction to create the corresponding traffic classifier, and then execute the instruction to create the corresponding traffic classifier.
[0095] Step 302. Create a flow behavior TB, in which the flow behavior TB is configured with QoS actions to be performed on the flow classifier TC paired with the flow behavior TB; the QoS actions include but are not limited to one or more of the following actions: traffic statistics, traffic rate limiting, traffic filtering, traffic bandwidth management, traffic control, traffic redirection, traffic marking, etc. Multiple forwarding actions can be configured under the same flow behavior.
[0096] The command format definition example for creating a traffic behavior is as follows:
[0097] traffic behavior behavior-name
[0098] accounting……
[0099] car……
[0100] filter……
[0101] gts……
[0102] nest top-most……
[0103] packet-rate……
[0104] redirect……
[0105] remark……
[0106] The behavior-name command specifies the name of the traffic behavior. Configuring different traffic behaviors using the traffic behavior command enables a device (such as a switch or router) to perform corresponding QoS actions on traffic belonging to the corresponding traffic classifier. The accounting command configures traffic statistics, which collects statistics about specific traffic behaviors, such as the number of packets and bytes. The car command configures rate limits for traffic, enabling implementation of traffic control policies that restrict the rate of specific traffic behaviors. The filter command associates an ACL (Access Control List) with traffic behaviors to allow or block specific types of traffic. The git-ss command configures generalized token bucket services (GTS) for traffic, enabling bandwidth management. nest-top-most configures the top-level behavior of nested traffic behaviors, allowing for the creation of complex traffic control policies. packet-rate configures packet rate-based traffic control policies, enabling the restriction or guidance of specific data flows. redirect redirects traffic to a specific interface, next hop, or service channel. remark configures marking, adding specific tags to packet headers so that subsequent gateways or routers can process them as needed. Through the combination of different QoS actions, fine-grained traffic control and policy definition can be achieved to meet different network operation requirements.
[0107] Step 303: A traffic classifier-behavior policy pair (TC-TB policy pair) is issued to the device interface, so that the device applies and executes the TC-TB policy pair. The traffic classifier-behavior policy pair includes at least: a paired traffic classifier TC and traffic behavior TB, inbound and outbound directions, a policy pair priority, and a subsequent control flag. The inbound and outbound directions control the direction of traffic affected by the TC-TB policy pair; the policy pair priority controls the order in which the TC-TB policy pair acts on traffic; and the subsequent control flag controls whether to continue matching and executing subsequent TC-TB policy pairs after the matching and execution of the TC-TB policy pair is completed.
[0108] The following is an example of the command format for issuing a TC-TB policy pair on a device interface:
[0109] interface interface-type interface-number
[0110] qos apply classifier-name behavior-name{inbound|outbound}[precedentnumber][time-range time-range-name][continue|break]
[0111] Among them, interface-type is the interface type, interface-number is the interface number, "classifier-name behavior-name" is used to specify the paired traffic classifier TC and traffic behavior TB, "inbound / outbound" is used to control the inbound / outbound direction of traffic, "precedent number" is used to control the application priority of the TC-TB policy pair, and "continue / break" is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the execution of the current TC-TB policy pair. The above configuration parameters can be set with default values. When the parameters are not explicitly specified, the default values set by the system are used. For example, if the continue / break parameter is not set, the preset default value of continue is used. In addition, the time-range parameter is optional. When the time-range parameter is not specified, it means that the policy pair is effective at all times.
[0112] After adopting the QoS configuration solution provided by the present invention, users no longer need to create QoS policy objects. It is equivalent to replacing the QoS policy objects with TC-TB policy pairs. It supports directly binding TC-TB policy pairs in the outbound / inbound directions of the corresponding interface or global view. The QoS policy at the control layer supports configuration and issuance based on a single TC-TB policy pair, and supports control of traffic direction, matching priority, etc. based on TC-TB policy pairs. It can reduce the impact range of policy changes and improve the flexibility of QoS policy issuance.
[0113] After adopting the QoS configuration solution provided by the present invention, the controller only needs to configure the corresponding flow behavior based on the flow classification, which is an atomic operation. The configuration logic is consistent with the user's needs. The amount of modification of the QoS configuration after each demand adjustment is relatively small, and the control layer is simpler and more efficient.
[0114] The QoS configuration solution provided by the present invention supports configuring priority preorder parameters based on policy pairs. When users configure or modify policies, they do not need to consider the order of policies as usual. The controller does not need to process complex insertbefore operation logic. It only needs to define the priority parameters of the policy pairs. The device executes the policy based on the priority. The deletion of a policy pair will not affect the execution order of other TC-TB policy pairs, thereby reducing the complexity of QoS policy configuration.
[0115] The QoS configuration solution provided by this invention supports subsequent control marking for policy pairs. This marking enables incremental deployment of QoS policies, allowing the addition of TC-TB policy pairs to the integration of existing policies on device interfaces. It also supports the use of the continue keyword to continue matching subsequent policy pairs, and the configuration of a break if subsequent service flows do not need to continue matching. This invention supports incremental configuration of QoS policies in scenarios where inclusion relationships exist between flow classification matching conditions.
[0116] In one embodiment of the present invention, before the TC-TB policy pair is issued to the device interface, a step of creating a time policy may be optionally included. The time policy may be used to control the effective time of the TC-TB policy pair.
[0117] The command format for creating a time policy is as follows:
[0118] time-range time-range-name{{monthly|weekly}start-day start-time toend-day end-time[from time1 date1][to time2 date2]|start-time to end-timedays[from time1 date1][to time2 date2]|from time1 date1[to time2 date2]|totime2date2}
[0119] The time-range parameter can be used to set the effective time of the TC-TB policy pair. The policy can be effective periodically or within a specified time period.
[0120] If a time policy has been created, you can specify the effective time for the TC-TB policy pair using the time-range keyword when delivering the policy pair. Adding the time-range parameter provides time-based policy matching capabilities.
[0121] In order to more clearly illustrate the technical effects of the technical solution of the present invention, a detailed description is given below in conjunction with a specific embodiment.
[0122] Example of creating a time policy time-range for a controller:
[0123] Define the t1 and t2 time policy templates:
[0124] t1: 8:00-18:00 on weekdays; t2: during the 2024 Spring Festival;
[0125] Example of time policy configuration on the corresponding delivery device side:
[0126] time-range t1 time-range t1 08:00to 18:00working-day
[0127] time-range t2 from 00:00 2 / 10 / 2024to 24:00 2 / 18 / 2024
[0128] Example of creating a traffic classification template on a controller:
[0129] TC1: matches 102.168.0.3; TC2: matches 102.168.0.4;
[0130] Example of traffic classification configuration on the corresponding delivery device:
[0131] acl advanced 3002
[0132] rule permit ip destination 192.168.0.3 0
[0133] traffic classifier TC1
[0134] if-match acl 3002
[0135] acl advanced 3003
[0136] rule permit ip destination 192.168.0.4 0
[0137] traffic classifier TC2
[0138] if-match acl 3003
[0139] Example of creating a traffic behavior template for a controller:
[0140] TB1: rate limit 100 messages; TB2: blocking action;
[0141] Corresponding device side configuration:
[0142] traffic behavior TB1
[0143] packet-rate 100
[0144] traffic behavior TB2
[0145] filter deny
[0146] Example of configuring QoS policy on the controller side at the control plane:
[0147] Input parameters: Policy name (control plane information, for display only), TC-TB policy pair, traffic direction, matching priority, time period policy, and policy UUID (automatically generated in the background after the policy is created).
[0148] For example:
[0149] User A configures: Policy name (weekday rate limit policy 1), TC & TB pair (TC1-TB1), traffic direction (inbound), match priority (5000), time period (t1), and continue matching (continue).
[0150] User B configures: policy name (2024 Spring Festival blocking policy 1), TC & TB pair (TC1-TB2), traffic direction (inbound), matching priority (5001), time period (t2), and continue matching (continue).
[0151] User A configures: Policy name (weekday rate limit policy 2), TC & TB pair (TC2-TB1), traffic direction (inbound), match priority (5002), time period (t1), and continue matching (continue).
[0152] User B configures: Policy name (2024 Spring Festival blocking policy 2), TC & TB pair (TC2-TB2), traffic direction (inbound), matching priority (5003), time period (t2), and continue matching (continue).
[0153] The controller issues the QoS policy configuration and applies it to the device. Input parameters include the policy UUID, the list of network devices, and the list of interfaces corresponding to the network devices (or global).
[0154] a. User A first applies "weekday rate limit policy 1" to interface GigabitEthernet1 / 0 / 1 on device 1 through the controller.
[0155] The following example shows how to apply "weekday speed limit policy 1" to device 1:
[0156] interface gigabitethernet 1 / 0 / 1
[0157] qos apply TC1 TB1 inbound preorder 5000time-range t1 continue
[0158] b. User B then uses the controller to apply "2024 Spring Festival Blocking Policy 1" to the gigabitethernet 1 / 0 / 1 interface of device 1. This only requires adding a new policy based on the existing policy configuration on the interface:
[0159] The following example shows how to apply "Weekday Speed Limit Policy 1" and "2024 Spring Festival Blocking Policy 1" to device 1:
[0160] interface gigabitethernet 1 / 0 / 1
[0161] qos apply TC1 TB1 inbound preorder 5000time-range t1 continue
[0162] qos apply TC1 TB2 inbound preorder 5001 time-range t2 continue
[0163] c. User A then uses the controller to apply "weekday rate limit policy 2" to the gigabitethernet 1 / 0 / 1 interface of device 1. In this case, you only need to add a new policy based on the existing policy configuration of the interface:
[0164] The following example shows how to apply "Weekday Speed Limit Policy 1," "2024 Spring Festival Blocking Policy 1," and "Weekday Speed Limit Policy 2" to device 1:
[0165] interface gigabitethernet 1 / 0 / 1
[0166] qos apply TC1 TB1 inbound preorder 5000time-range t1 continue
[0167] qos apply TC1 TB2 inbound preorder 5001 time-range t2 continue
[0168] qos apply TC2 TB1 inbound preorder 5002 time-range t1 continue
[0169] d. User B then uses the controller to apply "2024 Spring Festival Blocking Policy 2" to the gigabitethernet 1 / 0 / 1 interface of device 1. This only requires adding a new policy based on the existing policy configuration on the interface:
[0170] The following example shows how to apply "Weekday Speed Limit Policy 1," "2024 Spring Festival Blocking Policy 1," "Weekday Speed Limit Policy 2," and "2024 Spring Festival Blocking Policy 2" to device 1:
[0171] interface gigabitethernet 1 / 0 / 1
[0172] qos apply TC1 TB1 inbound preorder 5000time-range t1 continue
[0173] qos apply TC1 TB2 inbound preorder 5001 time-range t2 continue
[0174] qos apply TC2 TB1 inbound preorder 5002 time-range t1 continue
[0175] qos apply TC2 TB2 inbound preorder 5003 time-range t2 continue
[0176] After adopting the QoS policy configuration method provided by the present invention, the control-layer QoS policy is configured and issued based on a single TC-TB pair, and there is no need to create a policy object in advance and bind the policy object to the interface. The policy definition in the present invention does not need to be deployed to the device itself. The TC-TB policy pairs will be deployed to the device in batches only when the user specifies the device list to which the policy is applied and the interface list of each device. The present invention can simplify the QoS policy configuration process, refine the policy deployment granularity, make the QoS configuration logic more consistent with user needs, and the amount and scope of each configuration adjustment are relatively small, thereby reducing the complexity and impact of the configuration.
[0177] In addition, the present invention also provides configuration of the effective time period of the TC-TB policy pair, configuration of the matching priority, and configuration of the capability of subsequent actions, thereby reducing the granularity of the QoS policy configuration and improving the configuration flexibility.
[0178] Figure 4 A flowchart of the steps of a method for applying a QoS configuration issued by a controller on a device side according to an embodiment of the present invention is provided. The method of issuing a QoS configuration from the controller side to a device so that the device applies the QoS policy configuration includes:
[0179] Step 401: The device receives the TC-TB policy pair configuration sent by the controller. The content of the policy pair configuration is described in the controller step description and will not be repeated here.
[0180] Step 402: The device applies the TC-TB policy pair to the specified interface.
[0181] In one embodiment of the present invention, before the controller manages the device, the user has configured a QoS policy pair for the device. In this scenario, the QoS policy configuration delivery method provided by the present invention further includes:
[0182] After receiving the management request from the controller, the device uploads the locally configured QoS policy to the controller.
[0183] The controller stores the QoS policy configurations configured on the device side and centrally manages the QoS policy pairs configured on the device side and the QoS policy pairs configured on the controller side.
[0184] Through the above steps, the controller can automatically discover the TC-TB policy pairs configured on the device side and centrally manage the TC-TB policy pairs configured on the device side, making QoS policy configuration more user-friendly and intelligent.
[0185] Figure 5 This is a schematic diagram of the structure of an electronic device for implementing the quality of service policy configuration method provided by the present invention, provided in accordance with an embodiment of the present invention. The device 500 includes a processor 510, such as a central processing unit (CPU), a communication bus 520, a communication interface 540, and a memory 530. The processor 510 and the memory 530 can communicate with each other via the communication bus 520. The memory 530 stores a computer program that, when executed by the processor 510, implements the functions of one or more steps in the quality of service policy configuration method provided by the present invention.
[0186] Memory refers to a device based on a storage medium used to store computer programs and / or data. It can be either volatile memory (VM, often referred to as RAM) or non-volatile memory (NVM). RAM refers to internal storage that exchanges data directly with the processor. It can read and write data quickly and at any time, serving as a temporary data storage medium for the operating system and other running programs. RAM can be synchronous dynamic random access memory (SDRAM) or dynamic random access memory (DRAM). Non-volatile memory refers to storage that uses persistent storage media, boasting large capacity and the ability to persist data. Examples include storage-class memory (SCM), solid-state drives (SSDs), NAND flash memory, and magnetic disks. SCM is the industry's general term for new storage media between RAM and flash memory. It is a hybrid storage technology that combines the characteristics of persistent storage and RAM, with access speeds slower than DRAM but faster than SSDs.
[0187] The processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component.
[0188] It should be appreciated that embodiments of the present invention can be implemented or implemented by computer hardware, a combination of hardware and software, or by computer instructions stored in non-transitory (or non-persistent) memory. The methods can be implemented in a computer program using standard programming techniques, including a non-transitory storage medium configured with a computer program, wherein the storage medium configured in this manner causes the computer to operate in a specific and predefined manner. Each program can be implemented in a high-level procedural or object-oriented programming language to communicate with the computer system. However, if desired, the program can be implemented in assembly or machine language. In any case, the language can be a compiled or interpreted language. In addition, the program can be run on a programmed application-specific integrated circuit for this purpose. In addition, the operations of the processes described in the present invention can be performed in any suitable order, unless otherwise indicated by the present invention or otherwise clearly contradicted by the context. The processes described in the present invention (or variations and / or combinations thereof) can be executed under the control of one or more computer systems configured with executable instructions and can be implemented as code (e.g., executable instructions, one or more computer programs, or one or more applications) that is executed collectively on one or more processors, by hardware, or a combination thereof. The computer program includes multiple instructions that can be executed by one or more processors.
[0189] Furthermore, the methods can be implemented in any type of computing platform that is operably connected to a suitable computer, including but not limited to a personal computer, a minicomputer, a mainframe, a workstation, a network or distributed computing environment, a separate or integrated computer platform, or in communication with a charged particle tool or other imaging device, etc. Various aspects of the present invention can be implemented as machine-readable code stored on a non-transitory storage medium or device, whether removable or integrated into a computing platform, such as a hard disk, an optical read and / or write storage medium, RAM, ROM, etc., so that it can be read by a programmable computer, and when the storage medium or device is read by the computer, it can be used to configure and operate the computer to perform the processes described herein. In addition, the machine-readable code, or portions thereof, can be transmitted over a wired or wireless network. When such media includes instructions or programs that implement the steps described above in conjunction with a microprocessor or other data processor, the invention described herein includes these and other different types of non-transitory computer-readable storage media. When programmed according to the methods and techniques of the present invention, the present invention also includes the computer itself.
[0190] The foregoing is merely an embodiment of the present invention and is not intended to limit the present invention. It will be apparent to those skilled in the art that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention are intended to be included within the scope of protection of the present invention.
Claims
1. A method for configuring a quality of service policy, characterized in that: The method is applied to a software defined network (SDN) controller and includes: Creating a traffic classifier TC, in which a traffic classifier matching condition is configured; Create a traffic behavior TB, in which a quality of service (QoS) action to be executed for the paired traffic classifier is configured; Send a traffic classifier and traffic behavior policy pair, namely a TC-TB policy pair, to the device interface so that the device applies and executes the TC-TB policy pair. The TC-TB policy pair includes at least the following configurations: paired traffic classifiers TC and traffic behaviors TB, inbound and outbound directions, policy pair priority, and subsequent control flags. The inflow and outflow directions are used to control the traffic direction affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting the traffic; and the subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair.
2. The method according to claim 1, characterized in that The flow classification matching conditions in the flow classification include one or more of the following matching conditions: access control rule ACL matching conditions, application group matching conditions, and layer 2 feature matching conditions; The QoS action includes one or more of the following actions: traffic statistics, traffic rate limiting, traffic filtering, traffic bandwidth management, traffic control, traffic redirection, and traffic marking.
3. The method according to claim 1, characterized in that The method further comprises: Sending multiple TC-TB policy pairs to the device interface, where matching conditions of the multiple TC-TB policy pairs have or do not have an inclusion relationship; When the subsequent control flag of the TC-TB policy pair is set to allow continuation, the matching execution of multiple TC-TB policy pairs with inclusion relationship in the matching conditions is supported.
4. The method according to claim 1, wherein The method further comprises: Before delivering the TC-TB policy pair to the device interface, create a time policy (time-range); The TC-TB policy pair also includes time policy configuration; The time policy is used to control the effective time of the TC-TB policy pair.
5. A method for configuring a quality of service policy, characterized in that: The method is applied to a device controlled by a controller in a software-defined network (SDN), and includes: Receive a TC-TB policy pair issued by a controller, wherein the TC-TB policy pair includes at least the following configurations: a paired flow classifier TC and flow behavior TB, flow inflow and outflow directions, a policy pair priority, and a subsequent control flag; the flow inflow and outflow directions are used to control the direction of traffic affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting traffic; and the subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair; Apply the TC-TB policy pair to the specified interface.
6. The method according to claim 5, characterized in that The method further comprises: The TC-TB policy pair also includes a time policy configuration; the time policy is used to control the effective time of the TC-TB policy pair.
7. The method according to claim 5, characterized in that The method further comprises: Receive the management request from the controller and upload the locally configured QoS policy pair to the controller so that the controller can centrally manage the QoS policy pair configured on the device side and the QoS policy pair configured on the controller side.
8. A device for configuring quality of service policy, characterized in that: The device is applied to a software-defined network (SDN) controller and includes: A flow classifier creation module, configured to create a flow classifier TC, wherein the flow classifier is configured with a flow classifier matching condition; A traffic behavior creation module creates a traffic behavior TB, wherein the traffic behavior is configured with a quality of service (QoS) action executed for the paired traffic classifier; The policy pair sending module is used to send the flow classification and flow behavior policy pair, namely the TC-TB policy pair, to the device interface, so that the device applies and executes the TC-TB policy pair. The TC-TB policy pair includes at least the following configurations: paired flow classification TC and flow behavior TB, flow inflow and outflow directions, policy pair priority, and subsequent control mark; the flow inflow and outflow directions are used to control the flow direction affected by the TC-TB policy pair; the policy pair priority is used to control the priority order of the TC-TB policy pair in affecting the flow; and the subsequent control mark is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair.
9. The device according to claim 8, characterized in that The device further comprises: The time policy creation module is used to create a time policy before issuing the TC-TB policy pair to the device interface; The TC-TB policy pair also includes a time policy configuration, and the time policy is used to control the effective time of the TC-TB policy pair.
10. A device for configuring quality of service policy, characterized in that: The device is applied to a device controlled by a controller in a software-defined network (SDN). The device includes: A policy pair receiving module is configured to receive a TC-TB policy pair issued by a controller. The TC-TB policy pair includes at least the following configurations: a paired flow classifier TC and flow behavior TB, flow inflow and outflow directions, a policy pair priority, and a subsequent control flag. The flow inflow and outflow directions are used to control the direction of traffic affected by the TC-TB policy pair. The policy pair priority is used to control the priority order of the TC-TB policy pair in affecting traffic. The subsequent control flag is used to control whether to continue matching and executing subsequent TC-TB policy pairs after completing the matching and execution of the TC-TB policy pair. The policy pair application module is used to apply the TC-TB policy pair to the specified interface.
11. The device according to claim 10, characterized in that The device further comprises: The local policy pair upload module is used to receive the management request from the controller and upload the locally configured QoS policy pair to the controller so that the controller can centrally manage the QoS policy pair configured on the device side and the QoS policy pair configured on the controller side.
12. An electronic device, characterized in that: It includes a processor, a communication interface, a storage medium and a communication bus, wherein the processor, the communication interface and the storage medium communicate with each other via the communication bus; Storage medium for storing computer programs; A processor, configured to implement the method according to any one of claims 1 to 7 when executing a computer program stored on a storage medium.
Citation Information
Patent Citations
Terminal device, QoS implementation method and flow classifier thereof
CN101924781A
Method, device and system for propagating QoS (Quality of Service) strategy
CN106921572A