Automatic channel allocation method, device, equipment and storage medium for optical transmission network
By constructing a topology map in the optical transmission network and optimizing channel number allocation, the problem of poor channel resource utilization in traditional algorithms is solved, the use of channels and relay resources is minimized, the network carrying capacity is improved, and costs are saved.
Patent Information
- Application Number
- CN202410803738.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-20
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2044-06-20
AI Technical Summary
In backbone optical networks, traditional channel resource allocation algorithms lead to a large amount of channel fragmentation, poor resource utilization, and the inability to achieve an optimal solution for network channel resources. Furthermore, they require relaying, which increases costs.
Based on the topological resources of the optical transmission network, service routes are calculated and a network topology is constructed. Dimensions are arranged according to the number of connections between nodes, channel numbers are automatically assigned to minimize the use of channel numbers and relay resources, and path calculations are optimized using the Dijkstra algorithm and the insertion point algorithm.
When resources are sufficient, the minimum channel number resources and the minimum relay resources are used, which improves the network's ability to undertake business and saves costs.
Smart Images

Figure CN118828277B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of transmission network routing algorithms, and in particular to a method, device, equipment and storage medium for automatic channel allocation in an optical transmission network. Background Art
[0002] Channel resource allocation is widely used in transport network routing algorithms, typically in scenarios such as service route planning during the initial phase of network construction, capacity expansion routing planning during network operation and maintenance, and service route switchover after network failures. In network planning scenarios, users provide the algorithm module with the network physical and logical resources to be calculated, along with the associated routing matrix. The routing planning algorithm then outputs the corresponding routing results and performs resource allocation.
[0003] In backbone optical network construction, channel resources are the most valuable and core assets due to physical transmission limitations. Traditional resource allocation algorithms often leave a large amount of channel fragmentation, resulting in resource unavailability or the need to use them through relays (increasing costs). Traditional methods cannot achieve optimal network channel resource utilization in some scenarios.
[0004] Therefore, how to achieve the optimal solution for network channel resource utilization is a technical problem that urgently needs to be solved. Summary of the Invention
[0005] The main purpose of the present invention is to provide a method, device, equipment and storage medium for automatic channel allocation in an optical transmission network, which can ensure the use of the least channel number resources and the least relay resources when resources are sufficient, so that the network can undertake more services while saving costs.
[0006] In a first aspect, the present application provides a method for automatic channel allocation in an optical transmission network, wherein the method comprises the steps of:
[0007] Calculate the routes of all services based on the topological resources of the optical transmission network;
[0008] Construct a network topology diagram based on the intersection between service routes, and arrange all nodes in the network topology diagram in a dimension, where the dimension arrangement is the number of connections between nodes;
[0009] A channel number is automatically assigned to the node that is not assigned first in the dimensional arrangement, and the same channel number is assigned to a node that is not adjacent to the currently assigned node, and this continues until all nodes in the arrangement are assigned a channel number, so that the least channel number is used while the number of relays required for service routing is the least.
[0010] In combination with the first aspect above, as an optional implementation method, the number of connections between each node and the remaining nodes in the network topology graph is calculated;
[0011] Arrange all nodes in the network topology diagram from high to low according to the dimension of the number of connections between them and the remaining nodes.
[0012] In combination with the first aspect above, as an optional implementation manner, when it is determined that the dimensions of the number of connections between multiple nodes and the remaining nodes are the same, the multiple nodes are randomly arranged.
[0013] In combination with the first aspect above, as an optional implementation method, a node list is generated based on the nodes that have been dimensionally arranged;
[0014] A channel number is automatically assigned to the node that has not been assigned a channel number and is ranked first in the node list according to the dimensional arrangement from high to low.
[0015] In combination with the first aspect above, as an optional implementation method, the nodes that have been assigned channel numbers are deleted from the node list, and the remaining channel numbers are automatically assigned to the unassigned nodes in descending dimensional order.
[0016] In combination with the first aspect above, as an optional implementation method, the path of each business is taken as a node. When the paths of any two businesses overlap, a line is drawn between the nodes corresponding to the two businesses to construct a network topology diagram.
[0017] In combination with the first aspect above, as an optional implementation method, based on importing the topology resources of the optical transmission network to be solved, the path of each service is calculated using the Djkstra algorithm or the Floyd interpolation algorithm;
[0018] The topology resources include: OADM sites, local groups under each OADM site, wavelength space of each local group, direct links between adjacent OADM sites and a service matrix, and the service matrix includes: source and destination sites of each service.
[0019] In a second aspect, the present application provides an automatic channel allocation device for an optical transmission network, the device comprising:
[0020] A calculation module, which is used to calculate the routes of all services based on the topological resources of the optical transmission network;
[0021] A processing module, configured to construct a network topology diagram based on the intersections between service routes, and perform a dimensional arrangement of all nodes in the network topology diagram, wherein the dimensional arrangement is the number of connections between nodes;
[0022] The allocation module is used to automatically assign a channel number to the node that has not been assigned in the first arrangement in the dimension arrangement, and to assign the same channel number to a node that is not adjacent to the currently assigned node, until all nodes in the arrangement are assigned a channel number, so as to use the least channel number while requiring the least number of relays for service routing.
[0023] In a third aspect, the present application further provides an electronic device comprising: a processor; and a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the method described in any one of the first aspects is implemented.
[0024] In a fourth aspect, the present application further provides a computer-readable storage medium storing computer program instructions, which, when executed by a computer, enables the computer to execute any one of the methods described in the first aspect.
[0025] The present application provides a method, apparatus, device, and storage medium for automatic channel allocation in an optical transmission network, wherein the method includes the following steps: calculating the routes of all services based on the topological resources of the optical transmission network; constructing a network topology diagram according to the intersection between service routes, and dimensionally arranging all nodes in the network topology diagram, wherein the dimensional arrangement is the number of connections between nodes; automatically assigning a channel number to the node that has not yet been assigned and is ranked first in the dimensional arrangement, and assigning the same channel number to a node that is not adjacent to the currently assigned node, and the process ends after all nodes in the arrangement are assigned a channel number, so as to use the least channel number while requiring the least number of relays for service routing. The present application can ensure the use of the least channel number resources and the least relay resources when resources are sufficient, so that the network can undertake more services while also saving costs.
[0026] It should be understood that the foregoing general description and the following detailed description are exemplary only and are not restrictive of the invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0028] Figure 1 A flow chart of a method for automatic channel allocation in an optical transmission network provided in an embodiment of the present application;
[0029] Figure 2 A schematic diagram of a method for automatic channel allocation in an optical transmission network provided in an embodiment of the present application;
[0030] Figure 3 A network topology diagram provided in an embodiment of the present application;
[0031] Figure 4 A schematic diagram of an electronic device provided in an embodiment of the present application;
[0032] Figure 5 A schematic diagram of a computer-readable program medium provided in an embodiment of the present application. DETAILED DESCRIPTION
[0033] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. In the following description, when referring to the drawings, like numbers in different figures represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all possible embodiments consistent with the present invention. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present invention, as detailed in the appended claims.
[0034] Furthermore, the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. Some of the blocks shown in the drawings are functional entities that do not necessarily correspond to physically or logically separate entities.
[0035] Channel resource allocation is widely used in transport network routing algorithms, typically in scenarios such as service route planning during initial network construction, capacity expansion planning during network maintenance, and service route switching after network failures. In network planning, the user provides the algorithm module with the network physical and logical resources to be calculated, along with the associated routing matrix. The routing planning algorithm then outputs the corresponding routing results and makes resource allocations. In automatic network switching, when a fiber failure is detected and routing recalculation is required, the control software inputs the recalculated service matrix into the algorithm module, which then outputs the newly available routes and makes resource allocations.
[0036] In wavelength division transmission, the resources between two nodes are limited, that is, the available channel number resources are limited, so the utilization rate of the channel number resources determines the capacity of the network. Therefore, the purpose of this application is to ensure that the entire network uses the least channel number resources and the least relay resources when resources are sufficient.
[0037] The embodiments of the present application are further described in detail below with reference to the accompanying drawings.
[0038] Reference Figure 1 , Figure 1 FIG. 1 is a flow chart of a method for automatically allocating channels in an optical transmission network according to the present invention. Figure 1 As shown, the method includes the steps of:
[0039] Step S101: Calculate the routes of all services based on the topological resources of the optical transmission network.
[0040] Specifically, the topology resources of the optical transmission network to be solved are imported, and the path of each service is calculated using the Djkstra algorithm or the Floyd algorithm. The topology resources include: OADM sites, local groups under each OADM site, the wavelength space of each local group, direct links between adjacent OADM sites, and a service matrix. The service matrix includes: the source and destination sites of each service (i.e., the starting and ending points of the service). That is, first, the topology resources of the optical network to be solved are imported, then a routing policy is set according to user requirements, and the routes of each service are calculated sequentially using the Djkstra algorithm or the Floyd algorithm, starting with the first service, until all routes are calculated.
[0041] It should be noted that the basic idea of the Djkstra algorithm is to start from the starting vertex, gradually determine the shortest path to the vertex, and gradually expand to other vertices until the shortest path from the starting vertex to all other vertices is found.
[0042] The insertion point algorithm Floyd is an algorithm that uses the idea of dynamic programming to find the shortest path between multiple source points in a given weighted graph, which is similar to the Dijkstra algorithm.
[0043] Optionally, in one embodiment, routing and wavelength assignment are calculated using RWA. It should be noted that RWA stands for Routing, Wavelength, and Assignment, and refers to the process of wavelength assignment and path planning in an optical network. It is understood that all services use RWA to calculate the channel number that satisfies the service routing plan, resulting in routing and resource results for all services.
[0044] Optionally, in one embodiment, a bidirectional directed graph of the network is constructed based on topological resources, and the weight values of the directed graph edges are set through a secondary goal (minimum number of relays). The purpose is to calculate the shortest route for the service through the weight values. The bidirectional directed graph can be understood as being able to go from node A to node B or from node B to node A.
[0045] It is understandable that the fewer channel numbers are used, the stronger the network's ability to handle more business, and the fewer channel numbers are used, the more effectively the use of relay disks can be avoided, thereby saving money.
[0046] Step S102: construct a network topology diagram based on the intersection between service routes, and arrange all nodes in the network topology diagram in a dimension, where the dimension arrangement is the number of connections between nodes.
[0047] Specifically, the path of each business is regarded as a node. When the paths of any two businesses overlap, a line is connected between the nodes corresponding to the two businesses as an edge of the network topology graph to construct the network topology graph.
[0048] It can be understood that a network graph is constructed based on the calculated paths (routes) of all businesses, and the path of each business is used as a vertex (node) of a graph. If there is partial overlap in the paths of any two businesses, a line is connected between the vertices represented by these two businesses as an edge of the graph, thereby constructing a network topology graph.
[0049] The dimension arrangement is the number of connections between nodes, that is, the number of connections between each node in the network topology diagram and the remaining nodes is calculated, and all nodes in the network topology diagram are sorted from high to low according to the dimension of the number of connections between them and the remaining nodes (it can also be understood that the node with the most overlaps with the remaining nodes has the highest priority, that is, it is ranked first). It can be understood that all nodes in the diagram are arranged in descending order of dimension, and nodes with the same dimension can be randomly arranged, that is, when it is determined that the dimension of the number of connections between multiple nodes and the remaining nodes is the same, the multiple nodes are randomly sorted.
[0050] Step S103: Automatically assign a channel number to the node that is the first in the dimensional arrangement that has not been assigned, and assign the same channel number to a node that is not adjacent to the currently assigned node, and end the process after all nodes in the arrangement have been assigned a channel number, so as to use the least channel number while requiring the least number of relays for service routing.
[0051] Specifically, the number of connections between each node and the remaining nodes in the network topology is calculated. After all nodes in the network topology are arranged from high to low according to the number of connections between them and the remaining nodes, a node list is generated through the arranged nodes. That is, all nodes in the node list are arranged from high to low according to the number of connections between the node and the remaining nodes. When allocating channel numbers, the node that has not yet been assigned a channel number and is ranked first in the node list is automatically assigned a channel number in order from high to low according to the dimension arrangement from high to low (for example, if there are four nodes a, b, c, and d in the list, a has the highest dimension and is ranked first, b is the second, c is the third, and d is the fourth, then first check whether a, which is ranked first, has been assigned a channel number). Channel number, if it has been assigned, then delete the node that has been assigned the channel number. Assuming that b has not been assigned a channel number, then b is the node that has not been assigned a channel number and is the first node in the list, and then assign a channel number to b. It should be noted that it is not assigned to any node that has not been assigned a channel number, but it is assigned in sequence according to the dimensions from high to low), and assign the same channel number to a node that is not adjacent to the currently assigned node, and after assigning the same channel number to a node that is not adjacent to the currently assigned node, delete the node that has been assigned the channel number from the node list, and continue to automatically assign the remaining channel numbers to the unassigned nodes according to the dimensions from high to low, until all nodes are assigned a channel number.
[0052] Optionally, if there are still nodes that have not been assigned a channel number, the remaining channel numbers are used to assign channel numbers to the unassigned nodes, that is, the channel number is assigned to the node that is ranked first and has not been assigned a channel number.
[0053] For ease of understanding, let's take an example. For example, the dimensions of multiple nodes are sorted from high to low as A node, B node, C node, and D node. A has the highest dimension, that is, the number of connections with the remaining nodes is the largest, so A is allocated first. The allocation method is: A is first allocated channel number λ1. Assuming that A and B are adjacent but C is not adjacent, in order to avoid conflict between A and B, B cannot be allocated the same channel number λ1 as A, but C or D can be assigned channel number λ1, and B is assigned channel number λ2. Assuming that C is adjacent to B but not to D, D is assigned λ2. This allocation method is repeated until all nodes are allocated channel numbers.
[0054] It should be noted that one service is a node. If two services have overlapping parts, they will be connected by a line. If the same channel number is assigned to adjacent nodes, conflicts will definitely occur between the two nodes. Only one service can pass through a channel.
[0055] For example, ABC is route 1, AB is route 2, and channel number λ is assigned to route 1. Since route 2 and route 1 overlap at AB, route 2 can also use channel number λ, so there is no need to assign a channel number to BC, thereby improving the utilization of channel number resources.
[0056] In addition, when a relay disk is added, a complete path from source to sink is divided into multiple sub-paths. These sub-paths must also meet the above conditions, that is, each sub-path constructs a node, and each node represents a business.
[0057] Reference Figure 2 , Figure 2 FIG. 1 is a schematic diagram of an automatic channel allocation device for an optical transmission network provided by the present invention, as shown in FIG. Figure 2 As shown, the device includes:
[0058] A calculation module 201 is configured to calculate routes for all services based on topological resources of the optical transmission network;
[0059] A processing module 202 is configured to construct a network topology diagram based on the intersections between service routes, and to arrange all nodes in the network topology diagram in a dimension, where the dimension arrangement is the number of connections between nodes;
[0060] The allocation module 203 is used to automatically allocate a channel number to the node that is the first in the dimensional arrangement and has not yet been allocated, and to allocate the same channel number to a node that is not adjacent to the currently allocated node, until all nodes in the arrangement are allocated a channel number, so as to use the least channel number while requiring the least number of relays for service routing.
[0061] Furthermore, in a possible implementation, the processing module is further configured to calculate the number of connections between each node and the remaining nodes in the network topology graph;
[0062] Arrange all nodes in the network topology diagram from high to low according to the dimension of the number of connections between them and the remaining nodes.
[0063] Furthermore, in a possible implementation, the processing module is further configured to randomly arrange the multiple nodes when it is determined that the dimensions of the number of connections between the multiple nodes and the remaining nodes are the same.
[0064] Furthermore, in a possible implementation, the allocation module is configured to generate a node list based on the dimensionally arranged nodes;
[0065] A channel number is automatically assigned to the node that has not been assigned a channel number and is ranked first in the node list according to the dimensional arrangement from high to low.
[0066] Furthermore, in a possible implementation, the allocation module is further configured to delete nodes that have been allocated channel numbers from the node list, and continue to automatically allocate remaining channel numbers to unallocated nodes in descending dimensional order.
[0067] Furthermore, in a possible implementation, the processing module is further configured to use the path of each service as a node, and when any two services have overlapping paths, connect the nodes corresponding to the two services with a line to construct a network topology diagram.
[0068] Furthermore, in a possible implementation, the calculation module is further configured to calculate the path of each service using the Djkstra algorithm or the Floyd interpolation algorithm based on the imported topology resources of the optical transmission network to be solved;
[0069] The topology resources include: OADM sites, local groups under each OADM site, wavelength space of each local group, direct links between adjacent OADM sites and a service matrix, and the service matrix includes: source and destination sites of each service.
[0070] Reference Figure 3 , Figure 3 The network topology diagram provided by the present invention is shown as follows: Figure 3 As shown:
[0071] Assuming that there are 8 business routes to be calculated, then the 8 business routes correspond to 8 nodes, where the node numbers are consistent with the business order. According to the intersection of business routes, the following is constructed: Figure 3The network topology diagram is sorted from high to low according to the dimension of the nodes (the number of connections between nodes). The serial number order is [5, 6, 7, 8, 1, 2, 3, 4]. It should be noted that since nodes 5, 6, 7, and 8 have the most connections with other nodes and the number of connections is the same (all 5 times), they are randomly arranged here. Since node 5 has the highest dimension, node 5 is allocated first, and then allocated in sequence. Node 5 is assigned channel number λ1. At the same time, since 5 and 3 are not connected, node 3 is also assigned channel number λ1. 4 is not connected to 5 either, so 4 can also be assigned the same channel number, that is, 3 and 4 can be randomly selected. At the same time, 5 and 3 are deleted from the node list, and the node list becomes [6, 7, 8, 1, 2, 4]; assign channel number λ2 to node 6. At the same time, since 6 and 4 are not connected, node 4 is also assigned channel number λ2. Of course, if 5 and 4 are assigned the same channel number, then 6 is assigned the same channel number as 3. At the same time, 6 and 4 are deleted from the node list, and the node list becomes [7, 8, 1, 2]; assign channel number λ3 to node 7. At the same time, since 7 and 1 are not connected, node 1 is also assigned channel number λ3. At the same time, 7 and 1 are deleted from the node list, and the node list becomes [8, 2]; assign channel number λ4 to node 8. At the same time, since 8 and 2 are not connected, node 2 is also assigned channel number λ4. At the same time, 8 and 2 are deleted from the node list, and the node list becomes [], that is, the node list is empty. At this time, all service path channel numbers are allocated, and a total of 4 channel numbers and 0 relays are used. If the allocation method of the existing technology is used, 5 channel numbers and 1 relay are used, compared with the existing technology, the present application can achieve the optimal solution for network channel resource utilization.
[0072] Refer to the following Figure 4 An electronic device 400 according to this embodiment of the present invention will be described. Figure 4 The electronic device 400 shown is merely an example and should not limit the functions and scope of use of the embodiments of the present invention.
[0073] like Figure 4 As shown, electronic device 400 is implemented as a general-purpose computing device. Components of electronic device 400 may include, but are not limited to, at least one processing unit 410, at least one storage unit 420, and a bus 430 connecting various system components (including storage unit 420 and processing unit 410).
[0074] The storage unit stores program codes, which can be executed by the processing unit 410, so that the processing unit 410 performs the steps according to various exemplary embodiments of the present invention described in the above “Example Method” section of this specification.
[0075] The storage unit 420 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 421 and / or a cache memory unit 422 , and may further include a read-only memory unit (ROM) 423 .
[0076] The storage unit 420 may also include a program / utility 424 having a set (at least one) of program modules 425, such program modules 425 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.
[0077] Bus 430 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0078] The electronic device 400 may also communicate with one or more external devices (e.g., a keyboard, a pointing device, a Bluetooth device, etc.), one or more devices that enable a user to interact with the electronic device 400, and / or any device that enables the electronic device 400 to communicate with one or more other computing devices (e.g., a router, a modem, etc.). Such communication may occur via an input / output (I / O) interface 450. Furthermore, the electronic device 400 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network such as the Internet) via a network adapter 460. As shown, the network adapter 460 communicates with other modules of the electronic device 400 via a bus 430. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 400, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0079] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
[0080] According to the solution of the present disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the above-mentioned method of this specification is stored. In some possible implementations, various aspects of the present invention may also be implemented in the form of a program product, which includes program code. When the program product is executed on a terminal device, the program code is used to cause the terminal device to perform the steps according to various exemplary embodiments of the present invention described in the "Exemplary Methods" section of this specification.
[0081] refer to Figure 5 As shown, a program product 500 for implementing the above method according to an embodiment of the present invention is described. The program product 500 may be a portable compact disc read-only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto. In this document, a readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0082] The program product may be implemented in any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0083] A computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transfer a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0084] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0085] The program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0086] Furthermore, the above-described figures are merely illustrative of the processes included in the method according to exemplary embodiments of the present invention and are not intended to be limiting. It is readily understood that the processes illustrated in the above-described figures do not indicate or limit the temporal order of these processes. Furthermore, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0087] The foregoing is merely a list of specific embodiments of the present application, intended to enable those skilled in the art to understand or implement the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application is not limited to the embodiments shown herein, but is intended to conform to the broadest scope consistent with the principles and novel features of the present application.
[0088] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems) and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
Claims
1. A method for automatic channel allocation in an optical transmission network, characterized in that: include: Calculate the routes of all services based on the topological resources of the optical transmission network; Construct a network topology diagram based on the intersection between service routes, and arrange all nodes in the network topology diagram in a dimension, where the dimension arrangement is the number of connections between nodes; A channel number is automatically assigned to the node that is not assigned first in the dimensional arrangement, and the same channel number is assigned to a node that is not adjacent to the currently assigned node, and this continues until all nodes in the arrangement are assigned a channel number, so that the least channel number is used while the number of relays required for service routing is the least.
2. The method according to claim 1, characterized in that The dimensional arrangement of all nodes in the network topology diagram includes: Calculate the number of connections between each node and the remaining nodes in the network topology graph; Arrange all nodes in the network topology diagram from high to low according to the dimension of the number of connections between them and the remaining nodes.
3. The method according to claim 2, characterized in that Also includes: When it is determined that the dimensions of the number of connections between the plurality of nodes and the remaining nodes are the same, the plurality of nodes are randomly arranged.
4. The method according to claim 1, wherein The step of automatically assigning a channel number to the node that is ranked first in the dimensional arrangement and has not yet been assigned a channel number comprises: Generate a node list based on the dimensionally arranged nodes; A channel number is automatically assigned to the node that has not been assigned a channel number and is ranked first in the node list according to the dimensional arrangement from high to low.
5. The method according to claim 1, wherein After allocating the same channel number to a node which is not adjacent to the currently allocated node, the method further includes: Nodes that have been assigned channel numbers are deleted from the node list, and the remaining channel numbers are automatically assigned to unassigned nodes in descending order.
6. The method according to claim 1, characterized in that The constructing of a network topology diagram based on the intersection between service routes includes: Take the path of each business as a node. When the paths of any two businesses overlap, a line is drawn between the nodes corresponding to the two businesses to construct a network topology diagram.
7. The method according to claim 1, characterized in that The calculation of routes for all services based on the topological resources of the optical transmission network includes: Based on the topology resources of the optical transmission network to be solved, the path of each service is calculated using the Djkstra algorithm or the Floyd interpolation algorithm. The topology resources include: OADM sites, local groups under each OADM site, wavelength space of each local group, direct links between adjacent OADM sites and a service matrix, and the service matrix includes: source and destination sites of each service.
8. An automatic channel allocation device for an optical transmission network, characterized in that: include: A calculation module, which is used to calculate the routes of all services based on the topological resources of the optical transmission network; A processing module, configured to construct a network topology diagram based on the intersections between service routes, and perform a dimensional arrangement of all nodes in the network topology diagram, wherein the dimensional arrangement is the number of connections between nodes; The allocation module is used to automatically assign a channel number to the node that has not been assigned in the first arrangement in the dimension arrangement, and to assign the same channel number to a node that is not adjacent to the currently assigned node, until all nodes in the arrangement are assigned a channel number, so as to use the least channel number while requiring the least number of relays for service routing.
9. An electronic device, characterized in that: The electronic device comprises: processor; A memory having computer-readable instructions stored thereon, wherein when the computer-readable instructions are executed by the processor, the method according to any one of claims 1 to 7 is implemented.
10. A computer-readable storage medium, characterized in that The computer program instructions are stored therein, and when the computer program instructions are executed by a computer, the computer is caused to execute the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Distributed Optical Circuit Allocation in Optical Data-Center Networks (ODCN)
US20240107206A1
Path control device of optical network, optical network system, path control method, and path control program
WO2022234722A1