Resource allocation method and device and readable storage medium

By obtaining business requirements and path reserved resource information and determining business configuration information, the problem of resource reservation complexity in deterministic network is solved, efficient resource allocation for multiple levels of services is achieved, and the resource orchestration process is simplified.

CN119232675APending Publication Date: 2024-12-31ZTE CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202310781977.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-28
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

In deterministic networks, existing resource reservation schemes need to reserve, recycle and update resources hop-by-hop along the business path, resulting in complex orchestration of control plane resources and difficulty in supporting the deployment and maintenance of large-scale deterministic services.

Method used

By obtaining the path reserved resource information corresponding to the business requirements of the target business and the target business level, determining the business configuration information, indicating the path used by the target business and the reserved resources in each cycle, simplifying the resource orchestration process.

Benefits of technology

This method simplifies the complexity of resource orchestration in deterministic networks, provides resource allocation for deterministic services of multiple levels, and improves the efficiency and manageability of resource reservations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119232675A_ABST
    Figure CN119232675A_ABST
Patent Text Reader

Abstract

The invention provides a resource allocation method and device and a readable storage medium, relates to the technical field of communication, and can realize resource reservation of deterministic services in a deterministic network so as to support large-scale application of a deterministic technology. The method comprises the following steps: acquiring a service demand of a target service; determining service configuration information of the target service according to the service demand and reserved resource information of at least one first path corresponding to the target service level of the target service; wherein the first path is a path from a head node of the target service to a tail node of the target service; the service configuration information is used for configuring a second path used by the target service and reserved resource information of the target service, and the second path is one of the at least one first path.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communications, and in particular to a resource allocation method, device and readable storage medium. Background Art

[0002] Deterministic service is the ability to provide service level agreement (SLA) guarantees such as deterministic low packet loss rate, deterministic forwarding delay boundary and deterministic jitter upper limit in communication networks. Regarding the implementation of deterministic services, the Internet Engineering Task Force (IETF) standard organization proposed deterministic networking (DetNet). In DetNet, deterministic networks use resource reservation, explicit routing, service protection and other means to achieve bounded delay and jitter, extremely low packet loss rate, and upper limit of out-of-order message delivery.

[0003] Regarding the resource reservation mentioned above, the current industry solutions are all based on a hop-by-hop approach for each service flow, that is, when creating, updating, and deleting services, the required resources are reserved, recovered, and updated hop by hop along the service path. Therefore, the current industry solutions require the control plane to maintain resource information for each node and each service. Especially in large-scale network scenarios, due to the need to support a large number of deterministic services, it will further lead to complex control plane resource orchestration and a large amount of state information for each flow at each node, which is not conducive to the deployment and maintenance of deterministic services. Summary of the invention

[0004] The present disclosure provides a resource allocation method, device and readable storage medium, which can solve the problem of how to reserve resources for deterministic services in a deterministic network at this stage to support large-scale application of deterministic technology.

[0005] In order to achieve the above objectives, the present disclosure adopts the following technical solutions:

[0006] In one aspect, an embodiment of the present disclosure provides a resource allocation method, including: obtaining a service demand of a target service;

[0007] Determine the service configuration information of the target service based on service requirements and reserved resource information of at least one first path corresponding to the target service level of the target service; wherein the first path is a path from the head node of the target service to the tail node of the target service; the service configuration information is used to configure a second path used by the target service, as well as reserved resource information of the target service, the second path being one of the at least one first path.

[0008] On the other hand, an embodiment of the present disclosure provides a resource allocation device, including: an acquisition unit and a processing unit;

[0009] An acquisition unit, used to acquire business requirements of a target business;

[0010] A processing unit is used to determine the service configuration information of the target service according to the service demand and the reserved resource information of at least one first path corresponding to the target service level of the target service; wherein the first path is the path from the head node of the target service to the tail node of the target service; the service configuration information is used to configure the second path used by the target service and the reserved resource information of the target service, and the second path is one of the at least one first path.

[0011] On the other hand, an embodiment of the present disclosure provides a communication device, including: a memory and a processor; the memory and the processor are coupled; the memory is used to store a computer program; and the processor implements the resource allocation method of any of the above embodiments when executing the computer program.

[0012] On the other hand, a computer-readable storage medium is provided, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the resource allocation method of any of the above embodiments is implemented.

[0013] On the other hand, a computer program product is provided. The computer program product includes computer program instructions. When the computer program instructions are executed by a processor, the resource allocation method of any of the above embodiments is implemented.

[0014] The technical solution provided by the present disclosure can determine the service configuration information in a deterministic network according to the service requirements of the target service and the reserved resource information on the first path of the service level corresponding to the target service; the service configuration information can indicate the first path used by the target service and the resources reserved for it in each cycle on the first path used by the target service. Therefore, the solution can simplify the complexity of resource arrangement in the deterministic network and provide resource allocation for deterministic services of various levels. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solutions in the present disclosure, the following briefly introduces the drawings required to be used in some embodiments of the present disclosure. Obviously, the drawings described below are only drawings of some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can also be obtained based on these drawings. In addition, the drawings described below can be regarded as schematic diagrams, and are not limitations on the actual size of the product involved in the embodiments of the present disclosure, the actual process of the method, the actual timing of the signal, etc.

[0016] Figure 1A schematic diagram of the architecture of a deterministic network system provided for some embodiments of the present disclosure;

[0017] Figure 2 A schematic diagram of a flow chart of a resource allocation method provided in some embodiments of the present disclosure;

[0018] Figure 3 A flowchart of another resource allocation method provided for some embodiments of the present disclosure;

[0019] Figure 4 A flowchart of another resource allocation method provided for some embodiments of the present disclosure;

[0020] Figure 5 A schematic diagram of a topological relationship of a deterministic network provided in some embodiments of the present disclosure;

[0021] Figure 6 A schematic diagram of resource allocation on an egress port provided in some embodiments of the present disclosure;

[0022] Figure 7 A schematic diagram of the structure of a resource allocation device provided in some embodiments of the present disclosure;

[0023] Figure 8 A schematic diagram of the structure of another resource allocation device provided in some embodiments of the present disclosure. DETAILED DESCRIPTION

[0024] The following will be combined with the accompanying drawings to clearly and completely describe the technical solutions in some embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments provided by the present disclosure, all other embodiments obtained by ordinary technicians in this field belong to the scope of protection of the present disclosure.

[0025] Unless the context requires otherwise, throughout the specification and claims, the term "comprise" and other forms thereof, such as the third person singular form "comprises" and the present participle form "comprising", are to be interpreted as open, inclusive, that is, "including, but not limited to". In the description of the specification, the terms "one embodiment", "some embodiments", "exemplary embodiments", "example", "specific example" or "some examples" and the like are intended to indicate that specific features, structures, materials or characteristics associated with the embodiment or example are included in at least one embodiment or example of the present disclosure. The schematic representation of the above terms does not necessarily refer to the same embodiment or example. In addition, the specific features, structures, materials or characteristics may be included in any one or more embodiments or examples in any appropriate manner.

[0026] In the following, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the embodiments of the present disclosure, unless otherwise specified, "plurality" means two or more.

[0027] “At least one of A, B, and C” has the same meaning as “at least one of A, B, or C” and both include the following combinations of A, B, and C: A only, B only, C only, the combination of A and B, the combination of A and C, the combination of B and C, and the combination of A, B, and C.

[0028] “A and / or B” includes the following three combinations: A only, B only, and a combination of A and B.

[0029] The use of "adapted to" or "configured to" herein is meant to be open and inclusive language that does not exclude devices adapted or configured to perform additional tasks or steps.

[0030] Additionally, the use of “based on” is meant to be open and inclusive, as a process, step, calculation, or other action “based on” one or more stated conditions or values ​​may, in practice, be based on additional conditions or values ​​beyond those stated.

[0031] Deterministic service is the ability to provide service level agreement (SLA) guarantees such as deterministic low packet loss rate, deterministic forwarding delay boundary and deterministic jitter upper limit in communication networks.

[0032] Regarding the implementation of deterministic service technology at the L3 layer, the Internet Engineering Task Force (IETF) standard organization proposed deterministic networking (DetNet). Among them, RFC8655 describes the architecture of deterministic networks and defines the quality of service (QoS) goals of deterministic forwarding. In order to achieve the above goals, deterministic networks use resource reservation, explicit routing, service protection and other means.

[0033] In response to the resource reservation mentioned above, DetNet proposes that each DetNet node on the path from source to destination needs to ensure sufficient cache resources and strictly regulate its output so that it does not exceed the data rate of any DetNet flow. This is because any packets that are not sent in advance as planned may increase the cache space required by the next-hop DetNet node, which may exceed the resources allocated for the specified DetNet flow.

[0034] In the IETF DetNet working group's personal draft draft-guo-detnet-vpfc-planning, a detailed resource reservation scheme based on the periodic scheduling queue mechanism is given, which is called the VPFP / VPFC planning scheme. When reserving resources for each deterministic service, this scheme needs to determine the resource conflict situation within the corresponding cycle of each aggregation node along the service path. If there is a resource conflict, it is necessary to reselect the appropriate specified cycle at the head node. Another scheme, draft-peng-detnet-packet-timeslot-me chanism, proposes a packet time slot scheme that enables the control plane to allocate deterministic resources more flexibly and create flexible time slot mapping relationships in the data plane.

[0035] In general, the current resource reservation scheme in the industry is based on a hop-by-hop approach for each service flow, that is, when creating, updating, and deleting services, the required resources are reserved, recovered, and updated hop by hop along the service path. Therefore, the control plane needs to maintain resource information for each node and each service. Especially in large-scale network scenarios, due to the need to support a large number of deterministic services, the control plane resource arrangement will be further complicated, and the state information of each node and each flow will be numerous, which is not conducive to the deployment and maintenance of deterministic services.

[0036] In addition, RFC8655 mentions that in order to support more DetNet flows, the DetNet data plane needs to support the aggregation of DetNet flows. For example, IP DiffServ code points (DSCP) can be used for aggregation. The draft-ietf-detnet-scaling-requirements draft also mentions in the description of requirements for supporting large business volumes and supporting flow aggregation that deterministic services may provide different deterministic QoS capabilities based on different levels of application requirements. Therefore, supporting service-level-based aggregation in resource reservation solutions is a feasible idea that can better support the large-scale application of deterministic technologies. However, at this stage, the DetNet working group has not given a specific solution for the aforementioned ideas.

[0037] In view of the current problem of how to reserve resources for deterministic services in deterministic networks to support large-scale application of deterministic technologies, the present disclosure provides a resource allocation method. In a deterministic network, the resource allocation method provided by the present disclosure can determine service configuration information based on the service requirements of the target service and the reserved resource information on the first path corresponding to the service level of the target service; the service configuration information can indicate the first path used by the target service and the resources reserved for it in each cycle on the first path used by the target service. Therefore, the present solution can simplify the complexity of resource scheduling in a deterministic network and provide resource allocation for deterministic services of various levels.

[0038] It should be noted that the resource allocation method provided in the present disclosure is mainly applicable to the forwarding plane mechanism of cyclic scheduling of equal time slices. In different documents, equal time slices are described in different terms, such as cycles or time slots. For the convenience of description, the present disclosure uniformly describes them as cycles.

[0039] The resource allocation method and device provided by the present disclosure are described in detail below in conjunction with the accompanying drawings. It should be noted that the various embodiments of the present disclosure can refer to each other, for example, the same or similar steps, method embodiments, system embodiments and device embodiments can refer to each other without limitation.

[0040] The technical solution provided by the embodiments of the present disclosure can be applied to a deterministic network system. Figure 1 As shown, Figure 1 A schematic diagram of an architecture of a deterministic network system provided in some embodiments of the present disclosure. The deterministic network system may include a controller 101 and a node 102.

[0041] The controller 101 is a module for maintaining resource information of each node and each service in a deterministic network. The creation, update, and deletion of deterministic services all involve resource conflict judgment, update, and recycling of each node along the service path. The controller 101 is used to arrange the resources involved in the above content.

[0042] Among them, the controller 101 is used to obtain the business needs of the target business; determine the business configuration information of the target business according to the business needs and the reserved resource information of at least one first path corresponding to the target business level of the target business; wherein the first path is the path from the head node of the target business to the tail node of the target business; the business configuration information is used to configure the second path used by the target business, and the reserved resource information of the target business, the second path being one of the at least one first path.

[0043] It should be noted that the resource allocation device provided by the present disclosure can be implemented as a controller 101, or a head node device with controller functions, or the resource allocation device has a module with controller 101 and head node functions built in. In some embodiments, the resource allocation device can also have the functions that can be implemented by the head node on the path in a deterministic network.

[0044] Node 102 is a node in a deterministic network, and only three nodes 102 are shown in the figure.

[0045] In some embodiments, when the node 102 is a head node, the node 102 may be used to maintain the orchestration period resource status of each service level. The orchestration period resource status of each service level may be referred to in Table 3 below.

[0046] In some other embodiments, when the node 102 is a head node and is configured with a controller function, the node 102 can also execute the resource allocation method provided by the present disclosure.

[0047] It should be noted that Figure 1 This is just an exemplary framework diagram. Figure 1 The number and names of nodes included in the Figure 1 In addition to the functional nodes shown, the deterministic network system may also include other nodes, such as core network equipment, and the present disclosure does not impose any limitations on this.

[0048] The application scenarios of the embodiments of the present disclosure are not limited. The system architecture and business scenarios described in the embodiments of the present disclosure are intended to more clearly illustrate the technical solutions of the embodiments of the present disclosure, and do not constitute a limitation on the technical solutions provided by the embodiments of the present disclosure. It is known to those skilled in the art that with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided by the embodiments of the present disclosure are also applicable to similar technical problems.

[0049] For example, Figure 2 As shown, the embodiment of the present disclosure provides a resource allocation method, comprising the following steps:

[0050] S201. Obtain business requirements of the target business.

[0051] Exemplarily, the target business is a deterministic business.

[0052] In some embodiments, the service demand of the target service indicates the resource demand of each cycle of the target service in at least one cycle. For example, the service cycle of the target service is 80us, and the resource demand is 10000bit.

[0053] S202: Determine service configuration information of the target service according to service requirements and reserved resource information of at least one first path corresponding to a target service level of the target service.

[0054] The first path is a path from the head node of the target service to the tail node of the target service. The reserved resource information of the first path is used to indicate the reserved resource amount and the maximum reservable resource amount of each cycle of the first path in at least one cycle.

[0055] Furthermore, the service configuration information is used to configure a second path used by the target service and reserved resource information of the target service, and the second path is one of the at least one first path.

[0056] It can be understood that the first path is an explicit path for each service level established in advance between a group of head nodes and tail nodes in the deterministic network. In each node of the first path, the resource allocation device will allocate reserved resources for it. Generally speaking, the reserved resources allocated by the resource allocation device to each node in the first path are not less than the lower limit of the reserved resources. For example, the lower limit of the reserved resources can be the maximum transmission unit (MTU).

[0057] In some embodiments, the first path is determined based on the reserved resource information of the egress ports of each node in the deterministic network for different service levels and the network topology information of the deterministic network. After at least one first path is determined, the configuration information of the first path can be obtained. The configuration information of the first path includes the reserved resource information of the first path.

[0058] In some embodiments, the configuration information of the path also includes at least one of the following: an identifier of the path, an identifier of the target service level, an identifier of the head node of the path, an identifier of the tail node of the path, and path information, where the path information is used to indicate the forwarding operation of each hop of the path.

[0059] Exemplarily, the parameters specifically included in the configuration information of the path are shown in Table 1 below:

[0060] Table 1 Path configuration information parameter introduction table

[0061]

[0062]

[0063] It should be noted that the maximum reservable resource amount of the second path in a cycle is greater than or equal to the resource demand amount of the target service in the same cycle. In some embodiments, the second path is determined based on the service demand of the target service and the configuration information of the first path.

[0064] In some embodiments, after the second path is determined, the service configuration information of the target service can be obtained. It should be noted that the process of determining the service configuration information of the target service by the resource allocation device according to the service demand and the reserved resource information of at least one first path corresponding to the target service level of the target service is referred to in S301-S303 below, which will not be repeated here. In some embodiments, the service configuration information of the target service includes an identifier of the target service, an identifier of the second path, and reserved resource information of the target service. The reserved resource information of the target service is used to indicate the amount of reserved resources allocated by the second path to the target service in each period in the scheduling cycle, and the scheduling cycle includes the period corresponding to the target service level of the target service.

[0065] It should be noted that the scheduling cycle includes all cycles involved in the target service. Exemplarily, the scheduling cycle can be a cycle corresponding to the service level supported by the egress port, or a super cycle (the super cycle is usually N times the cycle corresponding to the service level, N≥2).

[0066] Exemplarily, after the second path is determined, the service configuration information of the target service is obtained as shown in Table 2 below:

[0067] Table 2 Service configuration information parameter introduction table

[0068]

[0069]

[0070] It should be noted that the service configuration information of the target service will be sent to the head node of the second path. Exemplarily, the yang model can be defined to send the service configuration information of the target service to the head node through NETCONF, which is not specifically limited in the present disclosure.

[0071] In some embodiments, the head node transmits the service data of the target service based on the service configuration information of the target service. That is, after receiving the service data, the head node identifies the target service corresponding to the service data, and supervises the forwarding of the service data according to the configuration information of the target service determined in S202 and the amount of resources allocated in the configuration information, so as to ensure that the amount of service data forwarded in each cycle does not exceed the amount of reserved resources.

[0072] Based on the above technical solution, in a deterministic network, the disclosed embodiment determines service configuration information for each deterministic service in different levels of deterministic services according to the service requirements of each deterministic service and the reserved resource information on the deterministic path of its corresponding service level; the service configuration information can indicate the deterministic path used by the deterministic service and the resources reserved for it in each cycle on the deterministic path used by the deterministic service. Thus, the solution can simplify the complexity of resource orchestration in a deterministic network and provide resource allocation for multiple levels of deterministic services.

[0073] For example, in combination Figure 2 ,like Figure 3 As shown, Figure 3 A flowchart of another resource allocation method provided for some embodiments of the present disclosure. In the resource allocation method provided by the present disclosure, determining the service configuration information of the target service according to the service demand and the reserved resource information of at least one first path corresponding to the target service level of the target service specifically includes the following steps:

[0074] S301. Obtain resource allocation information of at least one first path.

[0075] The resource allocation information of the first path is used to indicate the amount of allocated resources of the first path in each cycle in at least one cycle.

[0076] In some embodiments, resource allocation information of the first path can be obtained from configuration information of the first path.

[0077] S302: Determine available resource information of at least one first path according to reserved resource information of at least one first path and resource allocation information of at least one first path.

[0078] The available resource information of the first path is used to indicate the available resource amount of the first path in each cycle in at least one cycle. It can be understood that the reserved resource amount of the first path in each cycle minus the allocated resource amount in the cycle is the available resource amount of the first path in the current cycle.

[0079] S303: Determine service configuration information of the target service according to service requirements and available resource information of at least one first path.

[0080] In some embodiments, the second path corresponding to the target service is first determined according to service requirements and available resource information of at least one first path.

[0081] Exemplarily, the second path may be determined by the following steps:

[0082] (a) The head node initializes the maximum reservable resources and available resources of each period in the corresponding orchestration period according to the reserved resource information of each first path.

[0083] In this step, the scheduling cycle includes all cycles involved in the target service. Exemplarily, the scheduling cycle can be a cycle corresponding to the service level supported by the egress port, or a super cycle (the super cycle is usually N times the cycle corresponding to the service level, N≥2).

[0084] The maximum reservable resource is the maximum reserved bandwidth allocated to the service level corresponding to the first path at the node of the current first path, where the egress port of the node is.

[0085] (b) After receiving the target service request, the resource allocation device queries the first path corresponding to the target service level on the service head node according to the service requirements of the target service.

[0086] In the case where the first path corresponding to the target service level is not found, the first path of the target service level is established according to steps (1) to (5) described above.

[0087] (c) Allocate one or more periods within the orchestration period to the target service according to the traffic-specification (T-Spec) of the target service.

[0088] (d) Determine whether the amount of resources allocated in each period within one or more periods allocated to the target service meets the resource requirements of all nodes on the path.

[0089] When the amount of resources allocated in each cycle meets the resource demands of all nodes on the path, it is determined that the resource allocation is completed, and the current first path is determined as the second path.

[0090] When the amount of resources allocated in each cycle fails to meet the resource requirements of all nodes on the path, the above step (c) is repeated to select another cycle within the orchestration cycle for the target service.

[0091] (e) If the resource requirements of the nodes on the path are still not met after traversing each cycle in the orchestration cycle of at least one first path, the resource allocation fails. That is, the second path cannot be determined in at least one first path.

[0092] At this time, the resources of at least one first path may be expanded, and the above step (b) may be repeated.

[0093] It should be noted that the head node can maintain the scheduling cycle resource information of each service level. The scheduling cycle resource information includes at least one of the following: the number of cycles included in the scheduling cycle corresponding to the target service level, the rounds of scheduling of each cycle in the scheduling cycle, and the maximum reservable resource amount and available resource amount of each cycle in the scheduling cycle.

[0094] In some embodiments, the head node may maintain the orchestration period resource information of each service level through the following Table 3.

[0095] Table 3: Schedule cycle resource information table for each service level

[0096]

[0097] In Table 3, each column represents a cycle, which corresponds to the cycle of the first path one by one, and M represents the number of cycles. Each row represents the round in which the cycle is scheduled, and there will be multiple rows in the case of a super cycle. Each cycle is represented by S[n][m], where n represents the round and m represents the cycle. In the case of a super cycle, n≥2. The resource information maintained in each cycle includes: the maximum amount of reservable resources and the amount of available resources. The amount of available resources is subsequently updated according to the resource allocation and scheduling of the target business.

[0098] The above describes the steps of determining the second path. After determining the second path, the service configuration information of the target service can be determined according to the second path corresponding to the target service. For example, the content of the service configuration information can be found in Table 3 above.

[0099] Based on the above technical solution, the embodiment of the present disclosure can determine the path available for the target service based on the resource allocation and resource reservation status of each deterministic path in the deterministic network, and determine the service configuration information of the target service accordingly.

[0100] For example, in combination Figure 2 ,like Figure 4 As shown, Figure 4 A flowchart of another resource allocation method provided in some embodiments of the present disclosure. The resource allocation method provided in the present disclosure further includes the following steps:

[0101] S401: Acquire network topology information of the communication network and reserved resource information of the outbound port of each node for a target service level.

[0102] Among them, the reserved resource information of the egress port of each node for the target service level includes at least one of the following: the identifier of the egress port, the identifier of the target service level, the amount of reserved resources configured by the egress port for the target service level, and the amount of available resources configured by the egress port for the target service level in each period in at least one period.

[0103] In some embodiments, the reserved resource information of the egress port of each node for the target service level further includes at least one of the following: the length of the cycle corresponding to the target service level, the number of cycles corresponding to the target service level, and the maximum reserved bandwidth allocated by the egress port to the target service level.

[0104] In some embodiments, the amount of reserved resources configured by the egress port for the target service level is determined based on the maximum reserved bandwidth allocated by the egress port to the target service level, the length of the cycle corresponding to the target service level, and the number of cycles corresponding to the target service level. Exemplarily, the amount of reserved resources configured by the egress port for the target service level satisfies the following formula 1:

[0105]

[0106] Among them, i represents the cycle number, res i Represents the maximum amount of reservable resources allocated for period i, resRate j Indicates the maximum reservable bandwidth specified for service level j on the port. T indicates the duration of each cycle in seconds. Rate indicates the port transmission rate.

[0107] It should be understood that the sum of the bandwidths reserved for all service levels on the outbound port is less than the total bandwidth of the port. For example, the total bandwidth of the port is 100Gps, and the bandwidths reserved for the three service levels are 20Gps, 15Gps, and 30Gps respectively. The remaining 35Gps of bandwidth can be provided to other services. At the same time, the unused bandwidth of the above three service levels can also be provided to other services, such as best-effort (BE) services.

[0108] In other embodiments, the amount of reserved resources configured by the egress port for the target service level is determined based on the maximum reserved bandwidth allocated by the egress port to the target service level and the length of the cycle corresponding to the target service level. In this case, the amount of reserved resources configured by the egress port for the target service level satisfies the following formula 2:

[0109] res=resRate j *T Formula 2

[0110] Among them, res represents the maximum amount of reservable resources allocated in each cycle, and resRate jIndicates the maximum reservable bandwidth specified for service level j on the port. T indicates the length of each cycle in seconds.

[0111] It should be understood that configuring the reserved resource amount for the target service level based on Formula 2 can adapt to the characteristics of multiple service flow cycles based on the service level and simplify the allocation strategy. At this time, all cycles corresponding to a service level are allocated the same resource amount.

[0112] Exemplarily, the reserved resource information of the egress port for the target service level is shown in Table 4 below:

[0113] Table 4 Introduction to the reserved resource information parameters of the outbound port for the target service level

[0114]

[0115]

[0116] S402: Determine configuration information of at least one path corresponding to the target service level based on the reserved resource information of the egress port of each node for the target service level and the network topology information.

[0117] In some embodiments, the configuration information of the path includes reserved resource information of the path.

[0118] In some embodiments, the configuration information of the path also includes at least one of the following: an identifier of the path, an identifier of the target service level, an identifier of the head node of the path, an identifier of the tail node of the path, and path information, where the path information is used to indicate the forwarding operation of each hop of the path.

[0119] Exemplarily, the first path may be determined by the following steps:

[0120] (1) For each service level, starting from the head node, each node along the path determines whether the amount of reservable resources for each cycle of the service level is greater than or equal to the amount of resources requested to be reserved for this path in one or more specified cycles or all cycles, until the tail node.

[0121] (2) If the reservable resource amounts of all nodes on a path satisfy the resource requirements of the nodes, it is determined that the resource allocation of the path is successful, and the path is determined as the first path.

[0122] Furthermore, the amount of resources required by the deterministic path is deducted from the reserved resource information maintained at each node egress port along the first path, and the amount of available resources in the corresponding period is updated.

[0123] (3) If there are resources on the nodes included in the path that do not meet its resource requirements, switch to another path at the current node and repeat step (1).

[0124] It should be noted that when changing the path, the end-to-end delay and jitter still need to meet the requirements of the current service level.

[0125] (4) If in step (3), all possible paths cannot satisfy the node's demand for resources, reduce the amount of resources requested to be reserved for the path corresponding to the current service level in one or more specified periods or all periods, and repeat step (1).

[0126] It should be noted that when reducing the amount of resources applied for reservation in one or more specified periods or all periods for the path corresponding to the current service level, the reduced amount of resources applied for shall not be less than the lower limit of the reserved resources.

[0127] (5) If there is still no path that can satisfy the resource requirements of all nodes in step 4, it is determined that the first path determination of the current service level has failed.

[0128] It should be noted that in order to avoid the occurrence of the situation where the first path determination fails in step (5), the resources of the deterministic path can be expanded. For the resource expansion of the deterministic path, since the path between the head node and the tail node of the corresponding service level has been formed, it is only necessary to determine along the path whether the amount of resources applied for expansion is less than or equal to the amount of available resources for the service level on the egress port. In the case where the amount of expanded resources is less than or equal to the amount of available resources for the service level on the egress port, the expansion is determined to be successful, and the available resources for the service level on the egress port of each node along the path are updated, and the periodic reserved resources corresponding to the path are updated. At the same time, it is also necessary to update the available resources for each period in the scheduling period resource table maintained by the head node.

[0129] The above is an explanation of the steps for determining the first path. It should be noted that in the process of determining the first path, the period selection and the amount of reserved resources for each deterministic path can be determined based on the service aggregation characteristics expected to use this deterministic path, or the user's specific planning requirements. Among them, the service aggregation characteristics are used to characterize the aggregated traffic characteristics or delay and jitter requirements of the deterministic path.

[0130] For example, the user plans a deterministic path to carry only a service with certain traffic characteristics, such as a video service with a traffic cycle of 125us. Then, according to the transmission cycle of the aggregated flow, one or more cycles that meet the traffic characteristics can be selected on each outbound port along the path and the resources required for the service can be reserved.

[0131] Alternatively, a deterministic path can be planned to carry services with specified end-to-end delay or jitter indicators, such as services with an end-to-end delay of 20ms and a jitter of 30us. In this case, a path that meets the delay and jitter requirements needs to be planned, and the resources required for the service are evenly reserved in each cycle of the path.

[0132] It is understandable that after the first path is determined, the configuration information of the first path may be determined synchronously. For example, the parameters specifically included in the configuration information of the path may be referred to in Table 1 above.

[0133] Based on the above technical solution, the present invention can determine the configuration information of deterministic paths for different service levels through the network topology information of the communication network and the reserved resource information of the output port of each node for the target service level, so as to allocate resources to the target service according to the configuration information of the deterministic paths for different service levels.

[0134] For example, the following is combined Figure 5 , Figure 6 And specific examples are used to illustrate the resource allocation method provided by the present disclosure:

[0135] It should be noted that in Figure 5 In the example, four nodes are shown: R1, R2, R3, and R4. Each outbound port of these four nodes supports three types of deterministic service levels: A, B, and C. Except for the R4 node which has two outbound ports if4 and if5, the other three nodes each have one outbound port. The following example uses the if3 outbound port of the R3 node as the entry point to allocate resources for the target service with service level A.

[0136] S1. Acquire topology information of the communication network and reserved resource information of the egress port if3 of the R3 node for the target service level.

[0137] It should be understood that the topology information of the communication network can be obtained by Figure 5 get.

[0138] Taking the R3 node as an example, the outbound port bandwidth of its outbound port if3 is 100Gbps, and it provides bandwidth resources for the above three types of deterministic service levels, all of which use the periodic scheduling mechanism. Figure 6 As shown, service level A supports 16 10us cycles and is allocated 30Gbps of bandwidth, service level B supports 8 20us cycles and is allocated 20Gbps of bandwidth, service level C supports 4 40us cycles and is allocated 30Gbps of bandwidth, and the remaining 20Gbps of bandwidth is available for BE services.

[0139] Exemplarily, the reserved resource information for each service level on the egress port if3 is shown in Table 5 below:

[0140] Table 5: Information table of reserved resources for each service level on the outbound port if3

[0141]

[0142]

[0143] It can be understood that in Table 5, the "available resources per cycle" parameter of each service level is updated according to the demand for resources of the subsequent deterministic path. If the bandwidth allocated to the deterministic service level is not fully used, it can be provided to other services.

[0144] S2. Determine the configuration information of the path corresponding to service level A.

[0145] First, a deterministic path Path1 from R1 to R4 with service level A is established, with R1 as the head node and R4 as the tail node. The end-to-end delay or jitter of the deterministic path Path1 meets the service level A requirement.

[0146] The deterministic path Path1 is used to carry services with specified end-to-end delay and jitter requirements. Therefore, all cycles are selected and 60,000 bits of reserved resources are allocated per cycle.

[0147] After that, starting from the R1 node, the available resources of service level A are determined at the egress port of each node along the path. Combined with the example of Table 5 in S1 above, the available resources of service level A per cycle of 300,000 bits is greater than 60,000 bits, so 60,000 bits of resources are allocated to each cycle of Path1 on if1. Similarly, the resource judgment of the egress ports of other nodes is similar. The available resources of service level A per cycle on the egress ports of each node can meet the resource requirements of Path1. The resource allocation of the deterministic path Path1 is successful, and the resource information on the egress ports along the path is updated.

[0148] In some embodiments, taking the egress port if3 of the R3 node as an example, the reserved resource information related to the service level A is shown in the following Table 6:

[0149] Table 6: Reserved resource information table for service level A

[0150]

[0151]

[0152] Therefore, the configuration information of the deterministic path Path1 determined in this step is shown in Table 7 below:

[0153] Table 7 Configuration information table of Path1

[0154]

[0155] Similarly, the deterministic path Path2 with service level A from R2 node to R4 node is established in the same way as the resource allocation process of the deterministic path Path1. The deterministic path Path2 chooses to use all cycles and allocates a reserved resource amount of 24000 bits. Since both the deterministic paths Path1 and Path2 pass through the egress port if1 of the R3 node, the updated reserved resource information of service level A of the egress port if3 of the R3 node is shown in Table 8 below:

[0156] Table 8 Updated reserved resource information table for service level A

[0157]

[0158] And, the configuration information of the path of the deterministic path Path2 is shown in the following Table 9:

[0159] Table 9 Configuration information table of Path2

[0160]

[0161]

[0162] It should be noted that the present disclosure does not specifically limit the calculation of the explicit path information of the deterministic paths Path1 and Path2 in this step and the manner of forming the periodic mapping relationship.

[0163] S3. Allocate resources to the target business and determine the business configuration information of the target business.

[0164] Exemplarily, the target business includes business 1 and business 2.

[0165] Among them, the service level of service 1 is A, and the service requirement is: request a path from the R1 node to the R4 node, the requested resource amount is 20000 bits, and the service cycle is 800us.

[0166] And, the service level of service 2 is A, and the service requirement is: request a path from the R1 node to the R4 node, the requested resource amount is 10000 bits, and the service cycle is 80us.

[0167] In the above steps, the deterministic path Path1 of service level A from R1 node to R4 node has been established. The deterministic path Path1 supports the scheduling of 16 10us cycles, and the maximum available resource amount per cycle is 60000 bits. Taking the example of using 4 times of the device cycle as the orchestration cycle for service orchestration on the head node R1, the orchestration cycle resource situation of service level A initialized on the R1 node is shown in the following Table 10:

[0168] Table 10 Initialized service level A scheduling cycle resource information table

[0169]

[0170]

[0171] Combined with Table 10 and the service requirements of service 1, the deterministic path Path1 is found at the R1 node, and the available resources of the deterministic path Path1 in the orchestration cycle are determined. Combined with the service cycle characteristics, 10,000 bits of resources for 8 cycles, S[1][1], S[1][9], S[2][1], S[2][9], S[3][1], S[3][9], S[4][1], and S[4][9], are finally allocated to service 1. Finally, the service configuration information of service 1 is shown in Table 11 below:

[0172] Table 11 Service configuration information for service 1

[0173]

[0174]

[0175] And, combined with Table 10 above and the service requirements of service 2, the deterministic path Path1 is found at the R1 node, and the available resources of the deterministic path Path1 in the orchestration cycle are determined. Combined with the service cycle characteristics, 20,000 bits of resources in the four cycles of S[1][0], S[2][0], S[3][0], and S[4][0] are finally allocated to service 2. Finally, the service configuration information of service 2 is shown in Table 12 below:

[0176] Table 12 Service configuration information of service 2

[0177]

[0178]

[0179] It should be noted that since the period 800us of service 2 and the scheduling period 640us of head node R1 are not a multiple relationship, the 20000bit bandwidth resources of the above four periods reserved for service 2 may not be used by service 2. At this time, the unused resources can be used by other services.

[0180] For example, after the resources of services 1 and 2 are allocated, the orchestration cycle resources for service level A on the head node R1 are shown in the following Table 13:

[0181] Table 13: Service level A scheduling cycle resource information table

[0182]

[0183]

[0184] It should be understood that after the service configuration information of the service 1 and the service 2 is determined, the service data of the service 1 and the service 2 can be transmitted based on the service configuration information of the service 1 and the service 2.

[0185] Combination of the above Figure 5 , Figure 6 , as well as examples of business 1 and business 2 with business level A, illustrate the resource allocation method provided by the present disclosure.

[0186] The embodiment of the present disclosure can divide the functional modules or functional units according to the resource allocation device generated by the above method example. For example, each functional module or functional unit can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules or functional units. Among them, the division of modules or units in the embodiment of the present disclosure is schematic, which is only a logical function division, and there may be other division methods in actual implementation.

[0187] For example, Figure 7 FIG. 7 is a schematic diagram of a possible structure of a resource allocation device provided in some embodiments of the present disclosure. The resource allocation device 700 includes: an acquisition unit 701 and a processing unit 702 .

[0188] The acquisition unit 701 is used to acquire the business requirements of the target business.

[0189] Processing unit 702 is used to determine the service configuration information of the target service based on the service demand and the reserved resource information of at least one first path corresponding to the target service level of the target service; wherein the first path is the path from the head node of the target service to the tail node of the target service; the service configuration information is used to configure the second path used by the target service, and the reserved resource information of the target service, and the second path is one of the at least one first path.

[0190] In some embodiments, the acquiring unit 701 is further configured to acquire resource allocation information of at least one first path.

[0191] In some embodiments, the processing unit 702 is further configured to determine available resource information of at least one first path according to reserved resource information of at least one first path and resource allocation information of at least one first path.

[0192] In some embodiments, the processing unit 702 is further configured to determine service configuration information of the target service according to service requirements and available resource information of at least one first path.

[0193] In some embodiments, the processing unit 702 is further configured to transmit the service data of the target service based on the service configuration information of the target service.

[0194] In some embodiments, the acquisition unit 701 is further used to acquire network topology information of the communication network and reserved resource information of the outbound port of each node for the target service level;

[0195] In some embodiments, the processing unit 702 is further used to determine configuration information of at least one path corresponding to the target service level based on the reserved resource information of the egress port of each node for the target service level and the network topology information, and the configuration information of the path includes the reserved resource information of the path.

[0196] In some embodiments, the resource allocation device 700 may further include a storage unit ( Figure 7 The storage unit stores a program or instruction. When the acquisition unit 701 and the processing unit 702 execute the program or instruction, the resource allocation device can execute the resource allocation method described in the above method embodiment.

[0197] also, Figure 7 The technical effects of the resource allocation device can refer to the technical effects of the resource allocation method described in the above embodiment, which will not be repeated here.

[0198] For example, Figure 8 FIG. 2 is another possible structural diagram of the resource allocation device involved in the above embodiment. Figure 8As shown, the resource allocation device 800 includes: a processor 802 .

[0199] The processor 802 is used to control and manage the actions of the resource allocation device, for example, to execute the steps executed by the above-mentioned acquisition unit 701 and processing unit 702, and / or to execute other processes of the technical solution described in this document.

[0200] The processor 802 may be a processor that implements or executes various exemplary logic blocks, modules, and circuits described in conjunction with the present disclosure. The processor may be a central processing unit, a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array, or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute various exemplary logic blocks, modules, and circuits described in conjunction with the present disclosure. The processor may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0201] In some embodiments, the resource allocation device 800 may further include a resource allocation interface 803, a memory 801 and a bus 804. The resource allocation interface 803 is used to support resource allocation between the resource allocation device 800 and other network entities. The memory 801 is used to store program codes and data of the resource allocation device.

[0202] Among them, the memory 801 can be a memory in the resource allocation device, which can include a volatile memory, such as a random access memory; the memory can also include a non-volatile memory, such as a read-only memory, a flash memory, a hard disk or a solid-state drive; the memory can also include a combination of the above types of memory.

[0203] The bus 804 may be an Extended Industry Standard Architecture (EISA) bus, etc. The bus 804 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 8 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0204] Through the description of the above implementation methods, those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and module described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0205] An embodiment of the present disclosure provides a computer program product including instructions. When the computer program product is run on an electronic device of the present disclosure, the computer is enabled to execute the resource allocation method described in the above method embodiment.

[0206] The embodiment of the present disclosure further provides a computer-readable storage medium, in which instructions are stored. When a computer executes the instructions, the electronic device of the present disclosure executes each step executed by the resource allocation device in the method flow shown in the above method embodiment.

[0207] Among them, the computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media (a non-exhaustive list) include: an electrical connection with one or more wires, a portable computer disk, and a hard disk. Random Access Memory (RAM), Read-Only Memory (ROM), Erasable Programmable Read Only Memory (EPROM), registers, hard disks, optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any other form of computer-readable storage medium in a suitable combination of the above, or numerical values ​​in the art. An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an Application Specific Integrated Circuit (ASIC). In the embodiments of the present disclosure, computer-readable storage media may be any tangible media that contains or stores a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.

[0208] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A resource allocation method, characterized in that: The method comprises: Obtain the business needs of the target business; Determine the service configuration information of the target service based on the service demand and the reserved resource information of at least one first path corresponding to the target service level of the target service; wherein the first path is the path from the head node of the target service to the tail node of the target service; the service configuration information is used to configure the second path used by the target service and the reserved resource information of the target service, and the second path is one of the at least one first path.

2. The method according to claim 1, characterized in that The reserved resource information of the first path is used to indicate a maximum amount of reservable resources of the first path in each cycle in at least one cycle.

3. The method according to claim 1, characterized in that The service configuration information includes an identifier of the target service, an identifier of the second path, and reserved resource information of the target service.

4. The method according to claim 3, characterized in that The reserved resource information of the target service is used to indicate the amount of reserved resources allocated by the second path to the target service in each period in an orchestration period, and the orchestration period includes a period corresponding to a target service level of the target service.

5. The method according to claim 4, characterized in that The reserved resource information of the target service is determined based on the scheduling cycle resource information maintained by the head node; the scheduling cycle resource information includes at least one of the following: the number of cycles included in the scheduling cycle corresponding to the target service level, the rounds in which each cycle in the scheduling cycle is scheduled, and the maximum reservable resource amount and available resource amount for each cycle in the scheduling cycle.

6. The method according to claim 1, characterized in that The service demand is used to indicate the resource demand of the target service in each period of the scheduling period.

7. The method according to claim 4, characterized in that The maximum amount of reservable resources of the second path in a period is greater than or equal to the resource demand of the target service in the same period.

8. The method according to claim 2, characterized in that: The determining, according to the service demand and reserved resource information of at least one first path corresponding to the target service level of the target service, service configuration information of the target service includes: Acquire resource allocation information of the at least one first path; Determine available resource information of the at least one first path respectively according to the reserved resource information of the at least one first path and the resource allocation information of the at least one first path; The service configuration information of the target service is determined according to the service demand and the available resource information of the at least one first path.

9. The method according to claim 8, characterized in that The resource allocation information of the first path is used to indicate the amount of resources allocated to the first path in each cycle in the at least one cycle.

10. The method according to claim 9, characterized in that The available resource information of the first path is used to indicate the available resource amount of the first path in each cycle of the at least one cycle.

11. The method according to claim 1, characterized in that The method further comprises: Based on the service configuration information of the target service, the service data of the target service is transmitted.

12. The method according to claim 1, characterized in that The method further comprises: Obtain network topology information of the communication network and reserved resource information of the outbound ports of each node for the target service level; Based on the reserved resource information of the egress ports of each node for the target service level and the network topology information, configuration information of at least one path corresponding to the target service level is determined, wherein the configuration information of the path includes the reserved resource information of the path.

13. The method according to claim 12, characterized in that The reserved resource information of the egress port for the target service level includes at least one of the following: an identifier of the egress port, an identifier of the target service level, an amount of reserved resources configured by the egress port for the target service level, and an amount of available resources configured by the egress port for the target service level in each cycle in at least one cycle.

14. The method according to claim 13, characterized in that The reserved resource information of the egress port for the target service level also includes at least one of the following: the length of the cycle corresponding to the target service level, the number of cycles corresponding to the target service level, and the maximum reserved bandwidth allocated by the egress port to the target service level.

15. The method according to claim 14, characterized in that The amount of reserved resources configured by the egress port for the target service level is determined according to the maximum reserved bandwidth allocated by the egress port to the target service level and the length of the cycle corresponding to the target service level; or, The amount of reserved resources configured by the egress port for the target service level is determined according to the maximum reserved bandwidth allocated by the egress port to the target service level, the length of the cycle corresponding to the target service level, and the number of cycles corresponding to the target service level.

16. The method according to claim 12, characterized in that The configuration information of the path also includes at least one of the following: an identifier of the path, an identifier of the target service level, an identifier of a head node of the path, an identifier of a tail node of the path, and path information, wherein the path information is used to indicate a forwarding operation of each hop of the path.

17. A communication device, characterized in that: include: a processor and a memory for storing instructions executable by the processor; The processor is configured to execute the instruction so that the communication device performs the resource allocation method according to any one of claims 1 to 16.

18. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and when the computer instructions are executed on a computer, the computer is enabled to execute the resource allocation method according to any one of claims 1 to 16.

Citation Information

Patent Citations

  • Routing resource allocation method and device

    CN114205284A

  • Deterministic network system and transmission method of deterministic service

    CN114363182A

  • Electric power CBR service small particle channel configuration method and equipment

    CN115361342A

  • Resource allocation method and device and storage medium

    CN115396514A