Method, system, device and medium for allocating bandwidth resources of a latency-sensitive service network
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHANDONG NORMAL UNIV
- Filing Date
- 2026-04-28
- Publication Date
- 2026-08-07
AI Technical Summary
然而,在实际网络运行中,潜在时延敏感业务具有海量性和未知性的特点,网络运营者难以预先为所有未发生的业务逐一分配并预留充足的独占带宽资源——若采取全静态预留策略,将导致网络带宽利用率极低;若在新业务到达后再临时发起动态带宽预留请求,虽能提高资源利用率,但动态协商、路径计算及流表部署等过程所引入的固有迟滞(通常为数十至数百毫秒),将对时延敏感业务的服务质量产生不可忽略的负面影响
本发明提供的时延敏感业务网络带宽资源分配方法通过预先构建并预留共享带宽的时延敏感业务共享树,新到达业务无需等待动态计算和信令交互,即可沿共享树路径即时开始数据传输,实现了零等待接入;采用先共享后专属的两阶段机制,初期利用共享树保障连通即时性,后期通过计算将业务迁移至最优专属路径,不仅释放了共享树资源压力,又能确保业务获得最佳网络性能,实现了网络资源利用率与保障能力的动态平衡。
Smart Images

Figure CN122534015A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computing network technology, and in particular to a method, system, device and medium for allocating bandwidth resources for latency-sensitive service networks. Background Technology
[0002] Computing networks are a new type of information infrastructure that allocates and flexibly schedules computing, storage, and network resources on demand among the cloud, edge, and endpoints based on business needs. As computing services become more ubiquitous, a large number of latency-sensitive services (such as remote control for the industrial internet, collaborative perception for autonomous driving, and cloud-based virtual reality / augmented reality) pose a severe challenge to ensuring network bandwidth.
[0003] Latency-sensitive services require computing power networks to provide immediate network bandwidth resource guarantees upon their arrival. However, in actual network operation, potential latency-sensitive services are characterized by their massive volume and unpredictability. Network operators find it difficult to pre-allocate and reserve sufficient dedicated bandwidth resources for all unseen services. If a fully static reservation strategy is adopted, network bandwidth utilization will be extremely low. If a dynamic bandwidth reservation request is initiated temporarily after a new service arrives, although resource utilization can be improved, the inherent lag introduced by dynamic negotiation, path calculation, and flow table deployment (usually tens to hundreds of milliseconds) will have a significant negative impact on the service quality of latency-sensitive services. Summary of the Invention
[0004] This invention provides a method, system, device, and medium for allocating bandwidth resources for latency-sensitive services in a network, in order to overcome at least one of the aforementioned technical problems in the prior art.
[0005] To achieve the above objectives, the embodiments of the present invention adopt the following technical solutions: In a first aspect, the present invention provides a method for allocating bandwidth resources in a latency-sensitive service network, applied to a software-defined network, comprising: In response to the arrival of a new latency-sensitive service, the initial data of the new latency-sensitive service is transmitted in real time using a pre-built latency-sensitive service sharing tree; wherein, the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources. The calculation of a dynamic network resource allocation scheme for the new latency-sensitive service is initiated in parallel to obtain the dynamic allocation path for the new latency-sensitive service; The data transmission path of the new latency-sensitive service is seamlessly switched from the latency-sensitive service shared tree to the dynamically allocated path.
[0006] In one possible implementation of the first aspect, the method for constructing the latency-sensitive service shared tree includes: Using all the switching nodes in the computing power network that can connect to the terminal as the node set, and using link delay or hop count as the cost weight, a minimum cost tree covering the node set is constructed using the minimum cost spanning tree algorithm; On each link of the minimum cost tree, reserved shared bandwidth resources greater than the bandwidth required by a single latency-sensitive service are provided.
[0007] In one possible implementation of the first aspect, the minimum cost spanning tree algorithm is Kruskal's algorithm.
[0008] In one possible implementation of the first aspect, the step of initiating the calculation of a dynamic network resource allocation scheme for the new latency-sensitive service, and obtaining a dynamic allocation path for the new latency-sensitive service, includes: Copy the current network topology to obtain a replica topology. In the replica topology diagram, links with remaining available bandwidth lower than the bandwidth required by the new latency-sensitive service are deleted. In the replica topology graph after link deletion processing, the shortest path from the service terminal to the target computing node is calculated, and the shortest path is used as the dynamically allocated path.
[0009] In one possible implementation of the first aspect, seamlessly switching the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path includes: Identify the first intersection switch between the dynamically allocated path and the latency-sensitive service shared tree; wherein, the first intersection switch is the switching node where the dynamically allocated path and the latency-sensitive service shared tree first overlap in physical topology; The first flow table configuration command is issued to all relevant switches on the dynamic allocation path except for the first intersecting switch, in order to pre-deploy the corresponding forwarding flow entries and reserve bandwidth resources; After the first flow table configuration instruction is issued, a second flow table configuration instruction is issued to the first intersecting switch to modify the forwarding port of the first intersecting switch for the new latency-sensitive service from pointing to the next hop of the latency-sensitive service shared tree to pointing to the next hop of the dynamically allocated path, so as to realize the switching of data transmission path.
[0010] One possible implementation of the first aspect also includes: Periodically query the flow status information of the first intersecting switch; If no data packets are detected for the new latency-sensitive service within a preset time threshold, the new latency-sensitive service is determined to have entered an inactive state. Release all bandwidth resources reserved for the dynamically allocated path; A third flow table configuration command is issued to the first intersecting switch to revert the data transmission path for the new latency-sensitive service to the latency-sensitive service shared tree.
[0011] In one possible implementation of the first aspect, the preset time threshold is 10 minutes.
[0012] Compared with the prior art, the present invention has at least the following beneficial effects: The latency-sensitive service network bandwidth resource allocation method provided by this invention pre-constructs and reserves a shared tree for latency-sensitive services with shared bandwidth. Newly arriving services can start data transmission immediately along the shared tree path without waiting for dynamic calculation and signaling interaction, achieving zero-wait access. It adopts a two-stage mechanism of sharing first and then dedicated. In the initial stage, the shared tree is used to ensure the immediacy of connectivity. In the later stage, the service is migrated to the optimal dedicated path through calculation. This not only releases the pressure on the shared tree resources, but also ensures that the service obtains the best network performance, achieving a dynamic balance between network resource utilization and guarantee capability.
[0013] Secondly, the present invention provides a network bandwidth resource allocation system for latency-sensitive services, comprising: The instant transmission module is used to respond to the arrival of a new latency-sensitive service by instantly transmitting the initial data of the new latency-sensitive service using a pre-built latency-sensitive service sharing tree; wherein the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources. The dynamic path planning module is used to simultaneously initiate the calculation of a dynamic network resource allocation scheme for the new latency-sensitive service during the process of transmitting the initial data using the shared tree, and obtain the dynamic allocation path for the new latency-sensitive service. The path switching module is used to seamlessly switch the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path.
[0014] Thirdly, the present invention provides an electronic device comprising: at least one processor and at least one memory, wherein the memory stores computer-readable instructions; the computer-readable instructions are executed by one or more of the processors to cause the electronic device to implement the latency-sensitive service network bandwidth resource allocation method as described in any implementation of the first aspect.
[0015] Fourthly, the present invention provides a storage medium having a computer-executable program stored thereon, the computer-executable program being used to cause a computer to execute the latency-sensitive service network bandwidth resource allocation method as described in any implementation of the first aspect.
[0016] Understandably, the beneficial effects achieved by the system of the second aspect, the electronic device of the third aspect, and the storage medium of the fourth aspect provided above can be referred to in light of the beneficial effects of the first aspect and any of its possible design embodiments, which will not be repeated here. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention; Figure 2 A flowchart illustrating a method for allocating network bandwidth resources for latency-sensitive services, as provided in an embodiment of the present invention; Figure 3 This is a structural block diagram of a latency-sensitive service network bandwidth resource allocation system provided in an embodiment of the present invention. Detailed Implementation
[0019] The technical solutions of the embodiments of the present invention will be described below with reference to the accompanying drawings. In the description of the present invention, unless otherwise stated, " / " indicates that the objects before and after are in an "or" relationship. For example, A / B can represent A or B. The "or" in the present invention is merely a description of the relationship between the related objects, indicating that three relationships can exist. For example, A or B can represent: A alone, A and B simultaneously, and B alone. A and B can be singular or plural. Furthermore, in the description of the present invention, unless otherwise stated, "multiple" refers to two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items.
[0020] Furthermore, to facilitate a clear description of the technical solutions of the embodiments of the present invention, the terms "first" and "second" are used in the embodiments of the present invention to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" are not necessarily different.
[0021] In this embodiment of the invention, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" or "for example" in this embodiment of the invention should not be construed as superior or more advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner for ease of understanding.
[0022] Computing networks are a new type of information infrastructure that allocates and flexibly schedules computing, storage, and network resources on demand among the cloud, edge, and endpoints based on business needs. As computing services become more ubiquitous, a large number of latency-sensitive services (such as remote control for the industrial internet, collaborative perception for autonomous driving, and cloud-based virtual reality / augmented reality) pose a severe challenge to ensuring network bandwidth.
[0023] Latency-sensitive services require computing power networks to provide immediate network bandwidth resource guarantees upon their arrival. However, in actual network operation, potential latency-sensitive services are characterized by their massive volume and unpredictability. Network operators find it difficult to pre-allocate and reserve sufficient dedicated bandwidth resources for all unseen services. If a fully static reservation strategy is adopted, network bandwidth utilization will be extremely low. If a dynamic bandwidth reservation request is initiated temporarily after a new service arrives, although resource utilization can be improved, the inherent lag introduced by dynamic negotiation, path calculation, and flow table deployment (usually tens to hundreds of milliseconds) will have a significant negative impact on the service quality of latency-sensitive services.
[0024] In view of this, on the one hand, embodiments of the present invention provide a method for allocating network bandwidth resources for latency-sensitive services, applied to software-defined networks, comprising: responding to the arrival of a new latency-sensitive service, using a pre-constructed latency-sensitive service shared tree to transmit the initial data of the new latency-sensitive service in real time; wherein, the latency-sensitive service shared tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources; initiating the calculation of a dynamic network resource allocation scheme for the new latency-sensitive service in parallel to obtain a dynamic allocation path for the new latency-sensitive service; and seamlessly switching the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamic allocation path.
[0025] The present invention provides a method for allocating network bandwidth resources for latency-sensitive services. By pre-constructing and reserving a shared tree for latency-sensitive services with shared bandwidth, newly arriving services can immediately begin data transmission along the shared tree path without waiting for dynamic calculation and signaling interaction, achieving zero-wait access. It adopts a two-stage mechanism of sharing first and then dedicated, initially using the shared tree to ensure connectivity immediacy, and later using calculation to migrate services to the optimal dedicated path. This not only relieves the pressure on shared tree resources but also ensures that services obtain the best network performance, achieving a dynamic balance between network resource utilization and guarantee capability.
[0026] In some embodiments, the latency-sensitive service network bandwidth resource allocation method provided by the present invention can be executed by any electronic device 20 with data processing capabilities, such as a general-purpose computer, personal computer, laptop computer, switch, or tablet computer, etc. The specific implementation method of the electronic device 20 is not limited here.
[0027] Figure 1 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention is shown. The electronic device 20 includes a processor 210, a memory 220, and a communication interface 230.
[0028] Processor 210 may include one or more processing cores. Processor 210 connects to various parts within electronic device 200 using various interfaces and lines, and performs various functions and processes data of electronic device 200 by running or executing instructions, programs, code sets, or instruction sets stored in memory 220, and by calling data stored in memory 220. Optionally, processor 210 may be implemented using at least one of the following hardware forms: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA).
[0029] The memory 220 may include random access memory (RAM) or read-only memory (ROM). Optionally, the memory 220 may include a non-transitory computer-readable storage medium. The memory 220 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 220 may include a program storage area. This program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the various method embodiments described above, etc.
[0030] Communication interface 230 is used to communicate with other devices, equipment or communication networks, such as data storage devices, image processing devices or Ethernet, wireless access network (RAN), wireless local area network (WLAN), etc.
[0031] In terms of physical implementation, the aforementioned devices (such as processor 210, memory 220, and communication interface 230) can each be devices within the same device (such as a laptop computer). Alternatively, at least two of these devices can be located within the same device, i.e., as different devices within the same device, similar to the deployment of devices or components in a distributed system.
[0032] It is understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device 20. In other embodiments of the present invention, the electronic device 20 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0033] The following description, in conjunction with the accompanying drawings, illustrates a method for allocating bandwidth resources for latency-sensitive services in a network according to an embodiment of the present invention.
[0034] like Figure 2 As shown, this embodiment of the invention provides a method for allocating bandwidth resources for latency-sensitive services in a network, applicable to software-defined networks, and may include, but is not limited to: S1: In response to the arrival of a new latency-sensitive service, the initial data of the new latency-sensitive service is transmitted immediately using a pre-built latency-sensitive service sharing tree; wherein, the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources.
[0035] In specific implementation, the software-defined network controller (the core control plane entity in the software-defined network architecture, responsible for centrally managing the control logic and resource status of all network forwarding devices, and whose form can be OpenDaylight, ONOS, Ryu, etc.) in this embodiment of the invention typically constructs a latency-sensitive service sharing tree during the static pre-configuration phase. The method for constructing the latency-sensitive service sharing tree may include, but is not limited to, the following: Obtain the physical topology of the entire computing network and identify all edge or access switching nodes that can connect to user terminal devices.
[0036] Using these exchange nodes as the node set of the minimum spanning tree, and taking the transmission delay or hop count of each physical link as the cost weight, the minimum cost spanning tree algorithm is used to construct a minimum cost tree covering the node set, and the minimum cost tree is named the delay-sensitive service shared tree.
[0037] On each physical link included in the completed latency-sensitive service sharing tree, a designated shared bandwidth resource B is reserved. share .
[0038] In this embodiment of the invention, the shared bandwidth resource B share The principle for setting bandwidth values is: greater than the bandwidth requirement B typically required by a single latency-sensitive service. req For example, it could be the bandwidth required for 1.5 latency-sensitive services, or the bandwidth required for 2 latency-sensitive services, etc., and is not limited here. The shared bandwidth resource B... share The upper limit is much smaller than the sum of the total bandwidth requirements of all potential services in the network.
[0039] In specific implementation, the latency-sensitive service sharing tree in this embodiment of the invention serves as a common fast channel for all potential new latency-sensitive services. If the reserved bandwidth is less than B... req Service traffic may encounter congestion and packet loss on the path of the latency-sensitive service shared tree. Therefore, this embodiment of the invention addresses this by setting the shared bandwidth resource B... share The lower limit is set to ensure the immediate availability of the latency-sensitive service shared tree. In other words, it ensures that when any new service arrives, each link on the path of the latency-sensitive service shared tree has sufficient spare capacity to carry its first packet data transmission, and will not fail to transmit immediately due to insufficient bandwidth of the shared tree links.
[0040] Meanwhile, if the bandwidth of each link in the latency-sensitive service shared tree is reserved as the sum of all potential service demands, it is equivalent to making a dedicated static reservation for all network services. This will result in a significant amount of bandwidth being unusable by other non-latency-sensitive services or dynamically optimized paths, even if no service occurs, leading to a sharp drop in bandwidth utilization. However, the latency-sensitive service shared tree in this embodiment is essentially a reuse pool (shared pool), not a dedicated service line. The vast majority of latency-sensitive services only briefly use the latency-sensitive service shared tree in the initial stage of service arrival, and are then seamlessly switched to independent dynamic dedicated paths. Therefore, the latency-sensitive service shared tree only needs to handle a very small number of concurrent traffic flows that are in the "just arrived but not yet dynamically switched" stage. This embodiment of the invention uses the shared bandwidth resource B... share The upper limit is set much smaller than the total demand, which can satisfy the initial concurrent carrying capacity and free up a lot of bandwidth for dynamic path allocation.
[0041] In one feasible implementation, the present invention can use the Kruskal algorithm to construct a minimum cost tree covering the set of nodes, or it can use a minimum cost spanning tree algorithm such as the Prim algorithm, the Boruvka algorithm, or the Reverse-Delete algorithm to construct a minimum cost tree for the set of nodes, without limitation.
[0042] It should be noted that the Kruskal algorithm, Prim algorithm, Boruvka algorithm, or Reverse-Delete algorithm used in the embodiments of the present invention are all existing mature algorithms, and the specific calculation process will not be described in detail here.
[0043] In specific implementation, it should be noted that, in addition to using link latency or hop count as cost weights, the embodiments of the present invention can also use link load rate, packet loss rate, jitter, available bandwidth, link lease cost, and energy consumption as quantitative indicators of cost weights, without limitation. Furthermore, the quantitative indicators of cost weights in the embodiments of the present invention can be single-factor indicators or multi-factor indicators. When using multi-factor indicators, a weighted summation algorithm can be used for quantification, for example: ; Wherein, ω1, ω2, ω3 and ω4 are the weight coefficients of each dimension. The magnitude of each weight coefficient is configured according to actual needs. They can all be 1 or not 1. There is no limitation here.
[0044] In the specific implementation process, after the software-defined network controller (SDB) constructs the latency-sensitive service (LSS) shared tree, it waits for the arrival of new LSS. When a new LSS arrives at the computing network and a target computing node is allocated, the SSB determines the unique forwarding path from the access switch connected to the service terminal of the new LSS to the switch connected to the target computing node from the LSS shared tree. Then, it issues corresponding flow table entries to the relevant switches along the forwarding path, enabling the data packets of the new LSS to begin transmission immediately along the LSS shared tree. At this point, the data transmission start delay is only the physical delay of flow table matching and forwarding processing, eliminating the lengthy end-to-end signaling negotiation and path calculation waiting time in traditional dynamic bandwidth reservation schemes.
[0045] S2: Initiate the calculation of the dynamic network resource allocation scheme for the new latency-sensitive service, and obtain the dynamic allocation path for the new latency-sensitive service.
[0046] In one feasible implementation, the calculation of the dynamic network resource allocation scheme for the new latency-sensitive service, as described in this embodiment of the invention, to obtain the dynamic allocation path for the new latency-sensitive service, may include, but is not limited to: Copy the current network topology to obtain a replica topology. In the replica topology diagram, links with remaining available bandwidth lower than the bandwidth required by the new latency-sensitive service are deleted. In the replica topology graph after link deletion processing, the shortest path from the service terminal to the target computing node is calculated, and the shortest path is used as the dynamically allocated path.
[0047] In specific implementation, the network topology diagram in this embodiment of the invention is a logical view containing network status attributes, maintained in real time by the software-defined network controller. The data of this view is stored in the network information base (NIB) of the software-defined network controller. The construction and updating process of the network topology diagram is as follows: (1) Establishment of the basic topology framework When the software-defined network controller starts up or connects to a new network, it performs the following actions via a southbound protocol (such as OpenFlow): LLDP flooding: The software-defined network controller instructs all connected switches to send Link Layer Discovery Protocol (LLDP) messages to all their ports.
[0048] Packet-In Reporting: When a neighboring switch receives an LLDP packet from another switch, it will send the packet to the software-defined network controller in the form of a Packet-In message if there is no matching flow table.
[0049] Link calculation: The software-defined network controller analyzes the sender switch ID and receiver port information contained in the Packet-In message to deduce the physical interconnection link between "switch A-port X" and "port Y-switch B".
[0050] Node identification: The software-defined network controller identifies which are "network switch nodes that can connect to terminals" based on the connection characteristics of the switch (such as address resolution protocol messages triggered after connecting to a terminal host).
[0051] At this point, the topology graph has obtained nodes and edges (links), forming a basic physical connection skeleton.
[0052] (2) Link attribute acquisition, assigning "bandwidth" dimension Port feature query: The software-defined network controller requests port description information of the switch via the southbound protocol (such as the OFPMP_PORT_DESC multipart request in OpenFlow).
[0053] Data extraction: The controller parses the response message and extracts the key fields Curr_Speed (current negotiated rate) or Max_Speed (maximum supported rate).
[0054] Data association: The obtained bandwidth value (such as 10Gbps, 100Gbps) is attached as an attribute to the corresponding topology link edge and recorded as the total bandwidth capacity of the link.
[0055] (3) Resource status is synchronized in real time, and a "remaining" dimension is assigned. The "remaining available bandwidth" is dynamic, and the software-defined network controller can maintain its accuracy through the following two mechanisms: Active accounting: Once the software-defined network controller successfully reserves bandwidth for a shared tree or dynamic service, it immediately updates the total reserved bandwidth of the corresponding link in the NIB to ensure that the book resources are not over-allocated.
[0056] Passive status acquisition: The software-defined network controller periodically sends port statistics requests (such as OpenFlow's OFPMP_PORT_STATS) to the switch to obtain the actual byte count forwarded by the port, which helps to verify whether the link is congested.
[0057] By calculating the remaining available bandwidth, the software-defined network controller is able to maintain the real-time remaining capacity of each edge in the NIB.
[0058] (4) Copy generation When the calculation of the dynamic network resource allocation scheme for the new latency-sensitive service is initiated, the software-defined network controller reads the current node set, edge set, total bandwidth capacity of each edge, and total reserved bandwidth of each edge from the NIB, creates an independent replica topology graph data structure in memory, and copies the above data completely into it.
[0059] In practical implementation, dynamic path calculation (including pruning operations and shortest path search) is a time-consuming process, potentially lasting from several milliseconds to hundreds of milliseconds. During this period, the main network information base (NIB) of the software-defined network controller may be concurrently updated due to events such as resource release by other services or changes in link status. If pruning operations are performed directly on the original graph of the main database, the remaining bandwidth data of the links on which the calculation depends may be modified by other threads during the calculation, leading to dirty reads, i.e., invalid paths are calculated based on inconsistent data views or program exceptions. This embodiment of the invention obtains a consistent snapshot of the main database by acquiring a read lock at the moment of replication, and releases the lock immediately after replication is completed, ensuring that the entire calculation is based on a consistent topology state at a single point in time.
[0060] Furthermore, the deletion of links with remaining available bandwidth lower than the bandwidth required by the new latency-sensitive service, as described in this embodiment of the invention, is a destructive operation. If the deletion is performed directly on the original graph in the main database, the controller will lose the complete state information of these links, affecting the normal routing calculation and resource management of other parallel services. Therefore, this embodiment of the invention uses a replica topology graph as a sandbox to withstand all destructive modifications, while the complete topology view in the main database remains intact and can be queried and used normally by other services.
[0061] Furthermore, if the entire process of pruning, shortest path calculation, and result generation is performed directly on the primary database, write locks or read locks must be held throughout, with lock holding time comparable to the computation time. However, this embodiment of the invention employs offline computation after replication, requiring only a brief moment of read lock holding during data replication, which is immediately released upon completion. Subsequent computations are performed on independent replicas, without blocking other operations on the primary database. The dynamic path calculation process runs concurrently with the main control loop, ensuring that when new services arrive, the shared tree path can still be queried and flow tables issued immediately, without affecting the core effect of "zero-wait transmission." Simultaneously, the replica topology can be discarded and re-replicated from the primary database at any time, providing the algorithm with cost-free trial-and-error space and enhancing the system's robustness.
[0062] In specific implementation, embodiments of the present invention can calculate the "remaining available bandwidth" of each link in the replica topology graph by traversing it. This is the total bandwidth capacity of the link minus all reserved bandwidth already allocated to that link (including the bandwidth reserved for the latency-sensitive service shared tree). share The difference between the remaining available bandwidth of a link and the bandwidth reserved for other dynamic services that are already in effect. If the remaining available bandwidth of a link is less than the bandwidth B required by the new latency-sensitive service. req If so, then the link will be removed from the replica topology.
[0063] In specific implementation, embodiments of the present invention can run the Dijkstra algorithm on the pruned replica topology to calculate the shortest path from the service terminal access switch to the target computing node switch, and use the calculated shortest path as the dynamic allocation path for the new latency-sensitive service.
[0064] S3: Seamlessly switch the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path.
[0065] In one feasible implementation, the seamless switching of the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path, as described in this embodiment of the invention, may include, but is not limited to: Identify the first intersection switch between the dynamically allocated path and the latency-sensitive service shared tree; wherein, the first intersection switch is the switching node where the dynamically allocated path and the latency-sensitive service shared tree first overlap in physical topology; The first flow table configuration command is issued to all relevant switches on the dynamic allocation path except for the first intersecting switch, in order to pre-deploy the corresponding forwarding flow entries and reserve bandwidth resources; After the first flow table configuration instruction is issued, a second flow table configuration instruction is issued to the first intersecting switch to modify the forwarding port of the first intersecting switch for the new latency-sensitive service from pointing to the next hop of the latency-sensitive service shared tree to pointing to the next hop of the dynamically allocated path, so as to realize the switching of data transmission path.
[0066] In specific implementation, embodiments of the present invention can compare the dynamically allocated path with the currently used latency-sensitive service sharing tree to find the first exchange node where the two paths overlap in physical topology, denoted as the first S. intersect Then, the software-defined network controller allocates paths to dynamically selected paths, except for S. intersectFor all switches except S, flow table configuration commands are issued hop-by-hop. These commands include forwarding rules matching the characteristics of the service packet and corresponding outgoing port operations, and complete the bandwidth resource locking for the corresponding port. intersect After the flow table deployment of all switches except S is confirmed, the controller finally sends a message to S. intersect An update command is issued to change the outgoing port of the service message from the port that originally pointed to the next hop of the shared tree to the port that points to the next hop of the dynamically allocated path.
[0067] Because the data stream arrives at S intersect Previously, a shared tree path (or an overlapping section) was used, but in S... intersect After that, the new dynamic path is fully ready, so when S intersect The moment a flow table entry is modified, subsequent data packets will be smoothly switched to the dynamically allocated path without interruption or packet loss.
[0068] In one feasible implementation, after seamlessly switching the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path, the present invention further includes: Periodically query the flow status information of the first intersecting switch; If no data packets are detected for the new latency-sensitive service within a preset time threshold, the new latency-sensitive service is determined to have entered an inactive state. Release all bandwidth resources reserved for the dynamically allocated path; A third flow table configuration command is issued to the first intersecting switch to revert the data transmission path for the new latency-sensitive service to the latency-sensitive service shared tree.
[0069] In specific implementation, the preset time threshold in the embodiments of the present invention can be set according to actual needs, such as 10 minutes, 15 minutes, etc., and is not limited here.
[0070] This invention, through periodic querying of the flow status information of the first intersecting switch, detects no data packet transmission for the new latency-sensitive service within a preset time threshold. It then releases dedicated bandwidth resources reserved for this new latency-sensitive service for dynamic path allocation calculation in subsequent new services. This effectively avoids resource waste caused by "idled bandwidth" and significantly improves the overall bandwidth utilization of the computing network.
[0071] Furthermore, in this embodiment of the invention, after releasing dynamic bandwidth, the software-defined network controller issues a third flow table update instruction to the first intersecting switch, reverting its forwarding behavior to the state before the handover, i.e., redirecting it to the next hop of the shared tree path for latency-sensitive services. Although the new latency-sensitive service logically loses its exclusive high-speed channel, it is physically reattached to the always-on shared tree fast channel. Once the terminal generates new data packets, the packets will immediately begin transmission along the shared tree path without waiting for any dynamic signaling interaction. In other words, this embodiment of the invention utilizes the low-cost shared tree as a "suspended buffer" for silent services, releasing expensive dedicated resources without sacrificing the immediacy of future service reactivation.
[0072] Based on the aforementioned method for allocating bandwidth resources for latency-sensitive services in a network, this invention provides a system for allocating bandwidth resources for latency-sensitive services in a network, such as... Figure 3 As shown, the latency-sensitive service network bandwidth resource allocation system includes: The instant transmission module 110 is used to respond to the arrival of a new latency-sensitive service by instantly transmitting the initial data of the new latency-sensitive service using a pre-built latency-sensitive service sharing tree; wherein the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources. The dynamic path planning module 120 is used to, in the process of transmitting the initial data using the shared tree, simultaneously start the calculation of the dynamic network resource allocation scheme for the new latency-sensitive service, and obtain the dynamic allocation path for the new latency-sensitive service. The path switching module 130 is used to seamlessly switch the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path.
[0073] Based on the latency-sensitive service network bandwidth resource allocation method provided in the first aspect, this embodiment of the invention also provides a storage medium storing a computer-executable program. The computer-executable program is used to cause a computer to execute the latency-sensitive service network bandwidth resource allocation method as described in any implementation of the first aspect. Explanations of the relevant content and descriptions of the beneficial effects of any of the computer-readable storage media provided above can be found in the corresponding embodiments described above, and will not be repeated here.
[0074] Those skilled in the art will understand that the program for implementing all or part of the steps of the above embodiments, which can be executed by a program instructing related hardware, can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a random access memory, etc. The processing unit or processor mentioned above can be a central processing unit, a general-purpose processor, an application-specific integrated circuit (ASIC), a microprocessor (DSP), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
[0075] This invention also provides a computer program product containing instructions that, when executed on a computer, cause the computer to perform any of the methods described in the above embodiments. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this invention is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., SSD), etc.
[0076] It should be noted that the devices for storing computer instructions or computer programs provided in the embodiments of the present invention, such as, but not limited to, the aforementioned memory, computer-readable storage medium, and communication chip, are all non-transitory. Those skilled in the art should recognize that the functions described in the embodiments of the present invention in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable storage medium or transmitted as one or more instructions or code on a computer-readable storage medium. Computer-readable storage media include computer storage media and communication media, wherein communication media include any medium that facilitates the transmission of computer programs from one place to another. Storage media can be any available medium accessible to general-purpose or special-purpose computers.
[0077] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for allocating bandwidth resources in a latency-sensitive service network, applied to software-defined networks, characterized in that, include: In response to the arrival of a new latency-sensitive service, the initial data of the new latency-sensitive service is transmitted in real time using a pre-built latency-sensitive service sharing tree; wherein, the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources. The calculation of a dynamic network resource allocation scheme for the new latency-sensitive service is initiated in parallel to obtain the dynamic allocation path for the new latency-sensitive service; The data transmission path of the new latency-sensitive service is seamlessly switched from the latency-sensitive service shared tree to the dynamically allocated path.
2. The method for allocating bandwidth resources for time-sensitive services in a network according to claim 1, characterized in that, The method for constructing the latency-sensitive service shared tree includes: Using all the switching nodes in the computing power network that can connect to the terminal as the node set, and using link delay or hop count as the cost weight, a minimum cost tree covering the node set is constructed using the minimum cost spanning tree algorithm; On each link of the minimum cost tree, reserved shared bandwidth resources greater than the bandwidth required by a single latency-sensitive service are provided.
3. The method for allocating network bandwidth resources for time-sensitive services according to claim 2, characterized in that, The minimum cost spanning tree algorithm is Kruskal's algorithm.
4. The method for allocating bandwidth resources for time-sensitive services in a network according to claim 1, characterized in that, The step of initiating the calculation of the dynamic network resource allocation scheme for the new latency-sensitive service, and obtaining the dynamic allocation path for the new latency-sensitive service, includes: Copy the current network topology to obtain a replica topology. In the replica topology diagram, links with remaining available bandwidth lower than the bandwidth required by the new latency-sensitive service are deleted. In the replica topology graph after link deletion processing, the shortest path from the service terminal to the target computing node is calculated, and the shortest path is used as the dynamically allocated path.
5. The method for allocating network bandwidth resources for time-sensitive services according to claim 1, characterized in that, The step of seamlessly switching the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path includes: Identify the first intersection switch between the dynamically allocated path and the latency-sensitive service shared tree; wherein, the first intersection switch is the switching node where the dynamically allocated path and the latency-sensitive service shared tree first overlap in physical topology; The first flow table configuration command is issued to all relevant switches on the dynamic allocation path except for the first intersecting switch, in order to pre-deploy the corresponding forwarding flow entries and reserve bandwidth resources; After the first flow table configuration instruction is issued, a second flow table configuration instruction is issued to the first intersecting switch to modify the forwarding port of the first intersecting switch for the new latency-sensitive service from pointing to the next hop of the latency-sensitive service shared tree to pointing to the next hop of the dynamically allocated path, so as to realize the switching of data transmission path.
6. The method for allocating bandwidth resources for time-sensitive services in a network according to claim 5, characterized in that, Also includes: Periodically query the flow status information of the first intersecting switch; If no data packets are detected for the new latency-sensitive service within a preset time threshold, the new latency-sensitive service is determined to have entered an inactive state. Release all bandwidth resources reserved for the dynamically allocated path; A third flow table configuration command is issued to the first intersecting switch to revert the data transmission path for the new latency-sensitive service to the latency-sensitive service shared tree.
7. A method for allocating network bandwidth resources for time-sensitive services according to claim 6, characterized in that, The preset time threshold is 10 minutes.
8. A network bandwidth resource allocation system for time-sensitive services, characterized in that, include: The instant transmission module is used to respond to the arrival of new latency-sensitive services by instantly transmitting the initial data of the new latency-sensitive services using a pre-built latency-sensitive service sharing tree; wherein, the latency-sensitive service sharing tree is a minimum cost tree covering all switching nodes in the computing power network that can connect to terminals, and each link of the minimum cost tree reserves specified shared bandwidth resources. The dynamic path planning module is used to simultaneously initiate the calculation of a dynamic network resource allocation scheme for the new latency-sensitive service during the process of transmitting the initial data using the shared tree, and obtain the dynamic allocation path for the new latency-sensitive service. The path switching module is used to seamlessly switch the data transmission path of the new latency-sensitive service from the latency-sensitive service shared tree to the dynamically allocated path.
9. An electronic device, characterized in that, include: A memory, and one or more processors; the memory is coupled to the processors; wherein the memory stores computer program code, the computer program code including computer instructions, which, when executed by the processor, cause the electronic device to perform the latency-sensitive service network bandwidth resource allocation method as described in any one of claims 1 to 7.
10. A storage medium storing a computer-executable program, characterized in that, The computer-executable program is used to cause the computer to execute the latency-sensitive service network bandwidth resource allocation method as described in any one of claims 1 to 7.