WO2023065852A1 - 一种业务部署方法及相关设备 - Google Patents
一种业务部署方法及相关设备 Download PDFInfo
- Publication number
- WO2023065852A1 WO2023065852A1 PCT/CN2022/116663 CN2022116663W WO2023065852A1 WO 2023065852 A1 WO2023065852 A1 WO 2023065852A1 CN 2022116663 W CN2022116663 W CN 2022116663W WO 2023065852 A1 WO2023065852 A1 WO 2023065852A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- network node
- service
- target
- dimensional matrix
- deployed
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000003287 optical effect Effects 0.000 claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims description 116
- 238000004590 computer program Methods 0.000 claims description 10
- 208000010119 wrinkly skin syndrome Diseases 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- 230000000903 blocking effect Effects 0.000 description 10
- 230000008707 rearrangement Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B10/00—Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
- H04B10/27—Arrangements for networking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/04—Wireless resource allocation
- H04W72/044—Wireless resource allocation based on the type of the allocated resource
- H04W72/0446—Resources in time domain, e.g. slots or frames
Definitions
- the embodiments of the present application relate to the field of optical communications, and in particular, to a service deployment method and related equipment.
- the embodiment of the present application provides a service deployment method and related equipment, which are used to quickly establish optical path connections in combination with the rearrangement characteristics of the all-optical rearrangeable network architecture, and improve the speed of service deployment.
- the embodiment of the present application also provides corresponding service deployment Devices, computer equipment, computer readable storage media, chip systems and computer program products, etc.
- the first aspect of the present application provides a service deployment method, the method includes: assigning network nodes to the services to be deployed based on different time slots until the target network nodes allocated to the services to be deployed in the target time slots meet the preset conditions, the network nodes Nodes in an all-optical rearrangeable network architecture; assign wavelengths to services to be deployed based on target network nodes; establish optical path connections for services to be deployed based on target network nodes and wavelengths.
- the service to be deployed may be a ring full protocol service
- the all-optical rearrangeable network architecture is specifically the all-optical rearrangeable Clos network architecture.
- the time slot can be divided based on the type of service to be deployed, and the preset condition can be determined according to the physical limitation of the wavelength selective switch in the all-optical rearrangeable network architecture.
- the corresponding wavelength can also be determined, and an optical path connection can be established for the service to be deployed according to the target network node and time slot.
- network nodes are allocated for the services to be deployed based on different time slots until the target network nodes allocated for the services to be deployed in the target time slots meet the preset conditions, wherein the network nodes are all-optical rearrangeable network architectures Nodes, and then allocate wavelengths for the services to be deployed based on the target network nodes, and establish optical path connections for the services to be deployed based on the target network nodes and wavelengths, so that the time slots, network nodes, and wavelengths are allocated separately, and the time slots and network nodes Allocation can be repeatedly selected. After the allocation of time slots and network nodes is determined, the allocated wavelength can be directly determined, so as to combine the rearrangement characteristics of the all-optical rearrangeable network architecture to quickly establish optical path connections and improve the speed of service deployment.
- the above steps: assigning network nodes to the services to be deployed based on different time slots until the target network nodes allocated to the services to be deployed in the target time slots meet the preset conditions include: Create a time slot window based on the service to be deployed, the horizontal axis of the time slot window is used to represent the time slot required by the service to be deployed, and the vertical axis of the time slot window is used to represent the network node; create multiple candidate network node groups based on the time slot window , the candidate network node group includes a plurality of network nodes, and the number of candidate network node groups is the combination number of network nodes that are required to select the service to be deployed among the idle network nodes in the time slot window;
- the conditional candidate network node group is assigned to the service to be deployed as the target network node group, the time slot corresponding to the time slot window of the target network node group is the target time slot, and the network nodes in the target network node group are target network nodes.
- a time slot window can be created based on the service to be deployed, and then multiple candidate network node groups can be created according to the time slot window, and multiple candidate network node groups Candidate network node groups that meet the preset conditions in the node group are assigned to the services to be deployed as target network node groups, which improves the feasibility of the solution.
- the above step: assigning a candidate network node group that satisfies a preset condition among multiple candidate network node groups as a target network node group to the service to be deployed includes: obtaining a The two-dimensional matrix of the connection, the abscissa of the two-dimensional matrix is used to indicate the initial network node in the optical path connection, the ordinate of the two-dimensional matrix is used to indicate the destination network node in the optical path connection, and the value of the element in the two-dimensional matrix is used for Indicates whether there is an optical path connection between the starting network node and the destination network node; update the two-dimensional matrix according to the service to be deployed and multiple candidate network node groups until the target two-dimensional matrix is obtained, and multiple candidate network node groups are used to determine the update
- the starting network node and the destination network node at the time, the service to be deployed is used to determine whether an optical path connection is established between the starting network node and the destination network node when updating, the sum of the values
- the two-dimensional matrix used to represent the optical path connection can also be obtained, and then the two-dimensional matrix can be updated until the target two-dimensional matrix is obtained, so as to determine the target network The node group improves the feasibility of the scheme.
- the method further includes: if there is no target two-dimensional matrix in the current time slot window, moving the time slot window backward by one time slot to obtain a new time slot window, and After the two-dimensional matrix is restored to the state before the update, the update is restarted until the target two-dimensional matrix is found.
- the time slot window can also be moved back by one time slot and then continue to be updated, which improves the possibility of finding the target matrix and ensures the completion of service deployment.
- the all-optical rearrangeable network architecture includes a wavelength selective switch, and the preset value is the maximum number of wavelengths supported by the wavelength selective switch.
- the preset value is the maximum number of wavelengths supported by the wavelength selection switch, which improves the feasibility of the solution.
- the above step: assigning wavelengths to the services to be deployed based on the target network node includes: using a preset algorithm to decompose the target two-dimensional matrix into multiple decomposed two-dimensional matrices, decomposing the two-dimensional matrix There is only one element in any row or any column whose value is not zero; a wavelength is assigned to each decomposed two-dimensional matrix; the above steps: establishing an optical path connection for the service to be deployed based on the target network node and wavelength includes: based on the decomposed two-dimensional matrix and a wavelength assigned to each decomposed two-dimensional matrix to establish an optical path connection for the service to be deployed.
- the standard two-dimensional matrix when allocating wavelengths for services to be deployed, can be decomposed into multiple decomposed two-dimensional matrices, and the corresponding allocated wavelengths are parallel wavelengths, which ensures the all-optical rearrangeable Clos network architecture. Rearrangeable non-blocking features.
- the preset algorithm is the Hungarian algorithm.
- the Hungarian algorithm can find the perfect match of the decomposed two-dimensional matrix, which improves the feasibility of the scheme.
- the second aspect of the present application provides a service deployment device, configured to execute the method in the first aspect or any possible implementation manner of the first aspect.
- the service deployment device includes modules or units for performing the method in the above-mentioned first aspect or any possible implementation of the first aspect, such as: a first allocation unit, a second allocation unit, an establishment unit, and an iteration unit .
- the third aspect of the present application provides a computer device, the computer device includes a processor and a memory, the processor is coupled to the memory, and the memory is used to store programs or instructions executed by the processor, or to store input data required by the processor to run instructions, Or store the data generated after the processor executes the instruction, and when the program or instruction is executed by the processor, the computer device executes the method of the first aspect or any possible implementation manner of the first aspect.
- the fourth aspect of the present application provides a computer-readable storage medium storing instructions, and when the instructions are run on the computer, the method according to the above-mentioned first aspect or any possible implementation manner of the first aspect is executed.
- the fifth aspect of the present application provides a chip system, the chip system includes at least one processor and an interface, the interface is used to receive data and/or signals, and the at least one processor is used to support the computer device to implement the above first aspect or the first Functions involved in any possible implementation of the aspect.
- the system-on-a-chip may further include a memory, and the memory is used for storing necessary program instructions and data of the computer device.
- the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
- the sixth aspect of the present application provides a computer program product storing a computer program.
- the computer program When the computer program is executed, the method of the first aspect or any possible implementation manner of the first aspect can be implemented.
- network nodes are assigned to the services to be deployed based on different time slots until the target network nodes allocated to the services to be deployed in the target time slots meet the preset conditions, wherein the network nodes are in the all-optical rearrangeable network architecture node, and then allocate wavelengths for the services to be deployed based on the target network nodes, and establish optical path connections for the services to be deployed based on the target network nodes and wavelengths, thereby assigning time slots, network nodes, and wavelengths separately, time slots and network nodes
- the allocation of time slots and network nodes can be repeatedly selected. After the allocation of time slots and network nodes is determined, the allocated wavelengths can be directly determined, so that the light path connection can be quickly established in combination with the rearrangement characteristics of the all-optical rearrangeable network architecture, and the speed of service deployment can be improved.
- FIG. 1 is a schematic diagram of an all-optical rearrangeable Clos network architecture provided by an embodiment of the present application
- Fig. 2 is a schematic diagram of the architecture of a ring full protocol service
- FIG. 3 is a schematic diagram of an embodiment of the service deployment method provided by the embodiment of the present application.
- FIG. 4 is a schematic diagram of another embodiment of the service deployment method provided by the embodiment of the present application.
- FIG. 5 is a schematic diagram of a time slot window provided in an embodiment of the present application.
- FIG. 6 is a schematic diagram of a two-dimensional matrix provided in an embodiment of the present application.
- FIG. 7 is a schematic diagram of a decomposed two-dimensional matrix provided by the embodiment of the present application.
- FIG. 8 is another schematic diagram of the decomposed two-dimensional matrix provided by the embodiment of the present application.
- FIG. 9 is a schematic diagram of the established optical path connection provided by the embodiment of the present application.
- FIG. 10 is a schematic diagram of a comparison between the algorithm and the greedy algorithm in the service deployment method provided by the embodiment of the present application;
- FIG. 11 is another schematic diagram of comparison between the algorithm and the greedy algorithm in the service deployment method provided by the embodiment of the present application.
- FIG. 12 is a schematic structural diagram of a service deployment device provided by an embodiment of the present application.
- FIG. 13 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- the embodiment of the present application provides a service deployment method and related equipment, which are used to quickly establish optical path connections in combination with the rearrangement characteristics of the all-optical rearrangeable network architecture, and improve the speed of service deployment.
- the embodiment of the present application also provides corresponding service deployment Devices, computer equipment, computer readable storage media, chip systems and computer program products, etc. Each will be described in detail below.
- the service deployment method provided by the embodiment of the present application can be applied to the all-optical rearrangeable Clos network architecture, which can be a standard three-layer Clos network, which consists of two symmetrical external switch layers and an internal switch layer composition.
- the architecture is mainly determined by three parameters n, m and r, where n and m represent the number of ports used by each external switch for external and internal connections, and r represents the number of ports used by the internal switch to connect to the external switch, when and
- the Clos architecture is rearrangeable non-blocking only when m is greater than or equal to n.
- each switch layer has a plurality of wavelength selective switches (wavelength selective switch, WSS) with a port number of N*N, and all ports used for external connections in the outer WSS are connected to the top-of-rack switch through short-range optical interfaces.
- WSS wavelength selective switch
- the wavelength tuning speed of ToR's transceivers is in the nanosecond range, which is much shorter than the reconfiguration time of WSS (typically 1 to tens of milliseconds).
- the maximum number of ToRs that the network architecture can accommodate is equal to the square of the number of WSS ports, and the insertion loss of the optical path connection between a pair of input-output ports is fixed to the number of WSSs that pass through. In this architecture, the number of WSSs that pass through The number is constant at 3.
- the Ring allreduce business that is, the business that applies the Ring all-reduce algorithm is a very popular business type in distributed machine learning (DML).
- DML distributed machine learning
- all computing nodes each computing node corresponds to a ToR
- Each computing node simultaneously receives (Receives) and forwards (Sends) data from/to its neighbor nodes at the beginning of each computing iteration or time slot (TS).
- TS time slot
- the Ring allreduce algorithm needs to perform 2*(n-1) iterations (one iteration is a time slot), and the traffic requirements of each virtual link are the same, where n is the number of computing nodes in the ring.
- An embodiment of the service deployment method in the embodiment of the present application includes:
- the network management platform in the data center can execute the service deployment method.
- the requirement is to deploy the service to be deployed in the network architecture of the DC, and the network architecture can be all-optical rearrangement Network architecture, that is, the all-optical rearrangeable Clos network architecture, in which there are multiple network nodes and multiple switch layers, the network nodes can be regarded as ToR or servers, the switch layer is composed of multiple WSSs, and the ToR is connected to the external switch Layer's WSS port.
- the network management platform can allocate network nodes for the service to be deployed based on different time slots until the target network nodes allocated for the service to be deployed in the target time slot meet Preset conditions, specifically, time slots can be divided based on the number of iterations of the service to be deployed, one iteration is one time slot, and there can be multiple services to be deployed, for example, the first time slot is the first service to be deployed Allocate the network nodes it needs. If the allocation at this time meets the preset conditions, the network node allocated for the current time slot is the target network node.
- the network architecture is an all-optical rearrangeable network architecture, it can be Repeat the allocation, then continue to allocate the required network nodes for the first service to be deployed in the next time slot until the preset conditions are met. Deploy services until the target network nodes are allocated for all services to be deployed.
- each network node has multiple ports, so it supports being allocated to different services to be deployed.
- the corresponding wavelength can be assigned to each service to be deployed based on the allocated target network node, that is, the wavelength of each target ToR can be directly set to meet the requirements of the service to be deployed. Because the target network node has been allocated, it is determined, and the corresponding wavelength can also be directly determined, thus realizing fast allocation.
- the target network node and wavelength of a service to be deployed are allocated, the Based on this, an optical path connection can be established for the service to be deployed, and the service to be deployed has completed deployment in the network architecture and can start running.
- network nodes are assigned to the services to be deployed based on different time slots until the target network nodes allocated to the services to be deployed in the target time slots meet the preset conditions, wherein the network nodes are in the all-optical rearrangeable network architecture node, and then allocate wavelengths for the services to be deployed based on the target network nodes, and establish optical path connections for the services to be deployed based on the target network nodes and wavelengths, thereby assigning time slots, network nodes, and wavelengths separately, time slots and network nodes
- the allocation of time slots and network nodes can be repeatedly selected. After the allocation of time slots and network nodes is determined, the allocated wavelengths can be directly determined, so that the light path connection can be quickly established in combination with the rearrangement characteristics of the all-optical rearrangeable network architecture, and the speed of service deployment can be improved.
- FIG. 4 Another embodiment of the service deployment method in the embodiment of the present application includes:
- the service to be deployed when allocating network nodes for the service to be deployed, first create a time slot window based on the service to be deployed, as shown in Figure 5, the horizontal axis of the time slot window is used to represent the The time slot required for deploying services.
- the vertical axis of the time slot window is used to represent the network nodes in the network architecture. 15 time slots, so the time slot window of the service to be deployed can be created. It should be noted that each service to be deployed needs to create a corresponding time slot window.
- the candidate network node group includes multiple network nodes.
- the number of candidate network node groups is required for selecting services to be deployed from idle network nodes in the time slot window.
- the number of combinations of network nodes, i.e. creating N_idle is the total number of idle ToRs of transceivers within the time slot window, and N_ToR is the number of network nodes required by services to be deployed.
- service1 uses time slots 0-5, network nodes N0-N3; service2 uses time slots 6-11, network nodes N0-N3; service3 uses time slots 12-15, network nodes N0-N2; service4 uses time slots 12-15, Network nodes N3-N5; service5 uses time slots 0-1, network nodes N4-N5; service6 uses time slots 2-3, network nodes N4-N5.
- the two-dimensional matrix used to represent the optical path connection where the two-dimensional matrix can be pre-created, and the two-dimensional matrix can be used for each candidate network node group for each service to be deployed Matrix
- the abscissa of the two-dimensional matrix is used to indicate the initial network node in the optical path connection
- the ordinate of the two-dimensional matrix is used to indicate the destination network node in the optical path connection
- the value of the element in the two-dimensional matrix is used to indicate the initial network node Whether there is an optical path connection between the node and the destination network node.
- the two-dimensional matrix can indicate that there is an optical path connection between network node 3 and network node 0, and there is an optical path connection between network node 3 and network node 4.
- the existence of a connection means that the value of the element in the two-dimensional matrix is 1. If there is no connection, it is 0.
- the representation of the connection relationship between other network nodes is the same as the above method, which will not be repeated in this embodiment of the present application.
- the two-dimensional matrix can be updated according to the service to be deployed and multiple candidate network node groups until the target two-dimensional matrix is obtained, among which multiple candidate network node groups are used to determine the update
- the starting network node and the destination network node at the time, the service to be deployed is used to determine whether an optical path connection is established between the starting network node and the destination network node when updating, and the preset condition is the sum of the values of any row elements of the target two-dimensional matrix , and the sum of the values of any column element is less than or equal to the preset value.
- a logical one-way ring is created according to the ToR index to form different virtual topologies.
- the ToR index is the order of the ToR, which can be a randomly defined order. Except for the virtual link connecting the first and last ToR, the ToR with the larger index is located to the right of the ToR with the smaller index.
- the time slot window is shifted to a time slot, and the same is repeated based on the new time slot window
- the process until the Ring allreduce business is finally delivered that is, if there is no target two-dimensional matrix in the current time slot window, the time slot window is moved back by one time slot to obtain a new time slot window, and the two-dimensional matrix is restored to the updated After the previous state, restart the update until the target two-dimensional matrix is found.
- the wavelength can be allocated, which is equivalent to instructing each ToR transceiver how to adjust the wavelength to establish a unidirectional ring for different Ring allreduce services in different time slot windows.
- the preset algorithm can be the Hungarian algorithm.
- the target two-dimensional matrix is the two-dimensional matrix in Figure 6, please Referring to Fig. 7 and Fig. 8, it can be decomposed into two decomposed two-dimensional matrices M 1 and M 2 by using the Hungarian algorithm, wherein there is only one element whose value is not zero in any row or any column of the decomposed two-dimensional matrix.
- the decomposed two-dimensional matrix M 1 can be assigned a wavelength ⁇ 1
- for the decomposed two-dimensional matrix M 2 can be assigned a wavelength ⁇ 2
- the current optical path establishment problem is equivalent to
- the rearrangement algorithm can be used when establishing optical path connections for the services to be deployed. Because the all-optical rearrangeable non-blocking architecture is rearrangeable and non-blocking in the case of a single wavelength, the WSS-based all-optical Clos architecture is still rearrangeable and non-blocking even after introducing multiple parallel wavelengths.
- the parameters of the simulation experiment are set as follows:
- the specification of the WSS module is 5 ⁇ 5.
- the whole network architecture has 25 ⁇ 25 input and output ports, and each layer There are five 5 ⁇ 5 WSS modules.
- Each port is connected to a ToR through an optical transceiver, so there are a total of 25 ToRs in the entire network architecture.
- the number of ToRs required for each Ring allreduce service is set to 4, 6, and 8, corresponding to 6, 10, and 14 time slots, respectively.
- the ratio of the number of Ring allreduce services is 1:2:1.
- Figure 10 shows the maximum number of time slots required by the two algorithms to complete all Ring allreduce services when there are 100 Ring allreduce services, where the left vertical axis represents the running time (running time), The ordinate on the right represents the time slot, the abscissa represents the number of wavelengths supported by WSS (number of wave lengths supported by WSS), RT_Greedy represents the running time of the greedy algorithm, and RT_Proposed represents the algorithm of the service deployment method provided by this application Running time, TS_Greedy represents the number of time slots required by the greedy algorithm, and TS_Proposed represents the number of time slots required by the algorithm of the service deployment method provided by this application.
- an embodiment of the service deployment device 1200 provided by the embodiment of the present application includes:
- the first allocating unit 1201 is configured to allocate network nodes for services to be deployed based on different time slots until the target network nodes allocated for services to be deployed in the target time slot meet preset conditions, and the network nodes are all-optical rearrangeable network architectures A node in ; the first allocating unit may execute step 301 in the above method embodiment.
- the second allocating unit 1202 is configured to allocate a wavelength for the service to be deployed based on the target network node; the second allocating unit 1202 may execute step 302 in the above method embodiment.
- the establishing unit 1203 is configured to establish an optical path connection for the service to be deployed based on the target network node and the wavelength.
- the establishing unit 1203 may execute step 303 in the above method embodiment.
- the first allocating unit 1201 allocates network nodes for the services to be deployed based on different time slots until the target network nodes allocated for the services to be deployed in the target time slots meet the preset conditions, wherein the network nodes are all-optical Rearrange the nodes in the network architecture, and then the second allocation unit 1202 allocates wavelengths for the services to be deployed based on the target network nodes, and the establishment unit 1203 establishes optical path connections for the services to be deployed based on the target network nodes and wavelengths, thereby assigning time slots, network nodes , allocated separately from the wavelength, the allocation of time slots and network nodes can be repeatedly selected, and the allocated wavelength can be directly determined after the allocation of time slots and network nodes is determined, thus combining the characteristics of all-optical rearrangeable network architecture and fast rearrangement Establish optical path connections to improve service deployment speed.
- the first allocating unit 1201 is specifically configured to create a time slot window based on the service to be deployed, the horizontal axis of the time slot window is used to represent the time slot required by the service to be deployed, and the vertical axis of the time slot window is used to represent the network node ;Create a plurality of candidate network node groups according to the time slot window, the candidate network node group includes a plurality of network nodes, the number of candidate network node groups is the combination of selecting the network nodes required by the service to be deployed in the idle network nodes in the time slot window The number of candidate network node groups that meet the preset conditions among multiple candidate network node groups is assigned to the service to be deployed as the target network node group, the time slot corresponding to the time slot window of the target network node group is the target time slot, and the target network node The network nodes in the group are target network nodes.
- the first allocating unit 1201 is also specifically configured to obtain a two-dimensional matrix used to represent the optical path connection, the abscissa of the two-dimensional matrix is used to represent the initial network node in the optical path connection, and the ordinate of the two-dimensional matrix is used for Indicates the destination network node in the optical path connection, and the value of the element in the two-dimensional matrix is used to indicate whether there is an optical path connection between the initial network node and the destination network node; the two-dimensional matrix is calculated according to the service to be deployed and multiple candidate network node groups Updating until the target two-dimensional matrix is obtained, multiple candidate network node groups are used to determine the initial network node and destination network node during the update, and the service to be deployed is used to determine whether an optical path is established between the initial network node and the destination network node during the update Connection, the sum of the value of any row element of the target two-dimensional matrix, and the sum of the value of any column element is less than or equal to the preset value; assign the target network no
- the service deployment device 1200 further includes: an iteration unit 1204, and the iteration unit 1204 is used to move the time slot window back by one time slot to obtain a new time slot window if there is no target two-dimensional matrix in the current time slot window , and restore the two-dimensional matrix to the state before the update, and restart the update until the target two-dimensional matrix is found.
- an iteration unit 1204 is used to move the time slot window back by one time slot to obtain a new time slot window if there is no target two-dimensional matrix in the current time slot window , and restore the two-dimensional matrix to the state before the update, and restart the update until the target two-dimensional matrix is found.
- the all-optical rearrangeable network architecture includes a wavelength selective switch, and the preset value is the maximum number of wavelengths supported by the wavelength selective switch.
- the second allocating unit 1202 is specifically configured to decompose the target two-dimensional matrix into multiple decomposed two-dimensional matrices using a preset algorithm, and only one element whose value is not zero exists in any row or any column of the decomposed two-dimensional matrix; Allocating a wavelength for each decomposed two-dimensional matrix; the establishing unit 1203 is specifically configured to establish an optical path connection for the service to be deployed based on decomposing the two-dimensional matrix and one wavelength allocated for each decomposed two-dimensional matrix.
- the default algorithm is the Hungarian algorithm.
- the computer device 1300 includes: a processor 1301 and an interface 1303 , and the processor 1301 is coupled to the interface 1303 .
- the interface 1303 is used to communicate with other devices.
- the interface 1303 may be a transceiver or an input-output interface.
- Interface 1303 may be, for example, an interface circuit.
- the communication device 1300 further includes a memory 1302, the processor 1301 is coupled to the memory 1302, and the memory 1302 is used to store the instructions executed by the processor 1301 or store the input data required by the processor 1301 to run the instructions or store the processor 1301 to run Data generated after the command.
- the processor 1301 of the computer device 1300 is made to execute the method of the above-mentioned first aspect or any possible implementation manner of the first aspect.
- a computer-readable storage medium in which computer-executable instructions are stored, and when at least one processor of the device executes the computer-executable instructions, the device executes the above implementation
- the business deployment method described in the example is also provided.
- a computer program product in another embodiment, includes computer-executable instructions, and the computer-executable instructions are stored in a computer-readable storage medium; Reading the storage medium reads the computer-executed instructions, and at least one processor executes the computer-executed instructions so that the device executes the service deployment method described in the above-mentioned embodiments.
- a chip system in another embodiment, is also provided.
- the chip system includes at least one processor and an interface, the interface is used to receive data and/or signals, and the at least one processor is used to support the implementation of the above-mentioned embodiment. Described business deployment method.
- the system-on-a-chip may further include a memory, and the memory is used for storing necessary program instructions and data of the computer device.
- the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
- the disclosed system, device and method can be implemented in other ways.
- the device embodiments described above are only illustrative.
- the division of the units is only a logical function division. In actual implementation, there may be other division methods.
- multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
- the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
- the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
- the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially or part of the contribution to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
- the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), magnetic disk or optical disc, etc., which can store program codes. .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种业务部署方法及相关设备,应用于全光可重排网络架构,可以在结合全光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度。该方法具体包括:基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,网络节点为全光可重排网络架构中的节点;基于目标网络节点为待部署业务分配波长;基于目标网络节点和波长为待部署业务建立光路连接。
Description
本申请要求于2021年10月19日提交中国国家知识产权局、申请号202111217202.8、申请名称为“一种业务部署方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请实施例涉及光通信领域,尤其涉及一种业务部署方法及相关设备。
自从Clos架构被提出,由于其无阻塞的特性,Clos架构被广泛地应用于电交换网络中。
随着人工智能和机器学习服务等计算密集型服务的繁荣,以电交换为核心的数据中心网络在容量、可扩展性、能耗和服务质量(quality of service,QoS)等各方面都无法有效支持分布式计算服务日益增长的需求。为了解决这一问题,全光数据中心交换网络正受到学术界和工业界的广泛关注。
但是目前还没有针对基于波长选择开关(wavelength selective switch,WSS)的全光可重排Clos网络架构的业务部署算法的相关研究,没有相应的业务部署算法,就无法利用该架构可重排无阻塞的特性来高效建立光路,部署业务。
发明内容
本申请实施例提供一种业务部署方法及相关设备,用于结合全光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度,本申请实施例还提供了相应的业务部署装置、计算机设备、计算机可读存储介质、芯片系统和计算机程序产品等。
本申请第一方面提供一种业务部署方法,该方法包括:基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,网络节点为全光可重排网络架构中的节点;基于目标网络节点为待部署业务分配波长;基于目标网络节点和波长为待部署业务建立光路连接。
本申请中,待部署业务可以是环形全规约业务,全光可重排网络架构具体为全光可重排Clos网络架构。
本申请中,时隙可以基于待部署业务的类型进行划分得到,预设条件可以是根据该全光可重排网络架构中的波长选择开关的物理限制确定的。
本申请中,分配好目标网络节点后,对应的波长也可以确定,就可以根据目标网络节点和时隙为待部署业务建立光路连接。
该第一方面,基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,其中网络节点为全光可重排网络架构中的节点,然后基于目标网络节点为待部署业务分配波长,并基于目标网络节点和波长为待部署业务建立光路连接,由此将时隙、网络节点,与波长分开进行分配,时隙和网络节点的分配可以重复选择,时隙和网络节点的分配确定后就可以直接确定分配的波长,从而结合全光可 重排网络架构可重排的特性快速建立光路连接,提高业务部署速度。
在第一方面的一种可能的实现方式中,上述步骤:基于不同的时隙为待部署业务分配网络节点,直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件包括:基于待部署业务创建时隙窗,时隙窗的横轴用于表示待部署业务所需的时隙,时隙窗的纵轴用于表示网络节点;根据时隙窗创建多个候选网络节点组,候选网络节点组包括多个网络节点,候选网络节点组的数量为在时隙窗中空闲的网络节点中选择待部署业务需要的网络节点的组合数;将多个候选网络节点组中满足预设条件的候选网络节点组作为目标网络节点组分配给待部署业务,目标网络节点组的时隙窗对应的时隙为目标时隙,目标网络节点组中的网络节点为目标网络节点。
该种可能的实现方式中,在为待部署业务分配网络节点时,可以先基于该待部署业务创建一个时隙窗,然后根据时隙窗创建多个候选网络节点组,并将多个候选网络节点组中满足预设条件的候选网络节点组作为目标网络节点组分配给待部署业务,提升了方案的可实现性。
在第一方面的一种可能的实现方式中,上述步骤:将多个候选网络节点组中满足预设条件的候选网络节点组作为目标网络节点组分配给待部署业务包括:获取用于表示光路连接的二维矩阵,二维矩阵的横坐标用于表示光路连接中的起始网络节点,二维矩阵的纵坐标用于表示光路连接中的目的网络节点,二维矩阵中元素的值用于表示起始网络节点和目的网络节点之间是否存在光路连接;根据待部署业务和多个候选网络节点组对二维矩阵进行更新直至得到目标二维矩阵,多个候选网络节点组用于确定更新时的起始网络节点和目的网络节点,待部署业务用于确定更新时起始网络节点和目的网络节点之间是否建立光路连接,目标二维矩阵的任一行元素的值的和,且任一列元素的值的和小于或等于预设值;将目标网络节点组分配给待部署业务,目标网络节点组对应的二维矩阵为目标二维矩阵。
该种可能的实现方式中,在创建出多个候选网络节点组后,还可以获取用于表示光路连接的二维矩阵,然后对二维矩阵进行更新直至得到目标二维矩阵,从而确定目标网络节点组,提升了方案的可实现性。
在第一方面的一种可能的实现方式中,该方法还包括:若在当前时隙窗不存在目标二维矩阵时,将时隙窗后移一个时隙得到新的时隙窗,并将二维矩阵恢复至更新前的状态后重新开始更新,直至找到目标二维矩阵。
该种可能的实现方式中,当没有找到目标矩阵时,还可以将时隙窗后移一个时隙后继续更新,提高了找到目标矩阵的可能性,保证了业务部署的完成。
在第一方面的一种可能的实现方式中,全光可重排网络架构包括波长选择开关,预设值为波长选择开关支持的最大波长数。
该种可能的实现方式中,预设值为波长选择开关支持的最大波长数,提升了方案的可实现性。
在第一方面的一种可能的实现方式中,上述步骤:基于目标网络节点为待部署业务分配波长包括:采用预设算法将目标二维矩阵分解为多个分解二维矩阵,分解二维矩阵的任一行或任一列只存在一个元素的值不为零;为每个分解二维矩阵分配一个波长;上述步骤: 基于目标网络节点和波长为待部署业务建立光路连接包括:基于分解二维矩阵和为每个分解二维矩阵分配的一个波长,为待部署业务建立光路连接。
该种可能的实现方式中,为待部署业务分配波长时,可以将标二维矩阵分解为多个分解二维矩阵,对应分配的波长为平行波长,保证了全光可重排Clos网络架构的可重排无阻塞的特性。
在第一方面的一种可能的实现方式中,预设算法为匈牙利算法。
该种可能的实现方式中,匈牙利算法可以找到分解二维矩阵的完美匹配,提升了方案的可实现性。
本申请第二方面,提供了一种业务部署装置,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法。具体地,该业务部署装置包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的模块或单元,如:第一分配单元、第二分配单元、建立单元和迭代单元。
本申请第三方面提供一种计算机设备,该计算机设备包括处理器和存储器,处理器与存储器耦合,存储器用于存储处理器执行的程序或指令,或存储处理器运行指令所需要的输入数据,或存储处理器运行指令后产生的数据,当程序或指令被处理器执行时,使得计算机设备执行上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请第四方面提供一种存储有指令的计算机可读存储介质,当指令在计算机上运行时,执行如上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请第五方面提供了一种芯片系统,该芯片系统包括至少一个处理器和接口,该接口用于接收数据和/或信号,至少一个处理器用于支持计算机设备实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
本申请第六方面提供一种存储有计算机程序的计算机程序产品,当计算机程序被执行时,实现如上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请实施例中,基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,其中网络节点为全光可重排网络架构中的节点,然后基于目标网络节点为待部署业务分配波长,并基于目标网络节点和波长为待部署业务建立光路连接,由此将时隙、网络节点,与波长分开进行分配,时隙和网络节点的分配可以重复选择,时隙和网络节点的分配确定后就可以直接确定分配的波长,从而结合全光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度。
图1为本申请实施例提供的一种全光可重排Clos网络架构示意图;
图2为一种环形全规约业务的架构示意图;
图3为本申请实施例提供的业务部署方法一个实施例示意图;
图4为本申请实施例提供的业务部署方法另一实施例示意图;
图5为本申请实施例提供的时隙窗示意图;
图6为本申请实施例提供的二维矩阵示意图;
图7为本申请实施例提供的分解二维矩阵一示意图;
图8为本申请实施例提供的分解二维矩阵另一示意图;
图9为本申请实施例提供的建立的光路连接示意图;
图10为本申请实施例提供业务部署方法中的算法和贪婪算法的一对比示意图;
图11为本申请实施例提供业务部署方法中的算法和贪婪算法的另一对比示意图;
图12为本申请实施例提供的业务部署装置的结构示意图;
图13为本申请实施例提供的计算机设备的结构示意图。
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例提供一种业务部署方法及相关设备,用于结合全光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度,本申请实施例还提供了相应的业务部署装置、计算机设备、计算机可读存储介质、芯片系统和计算机程序产品等。以下分别进行详细说明。
请参阅图1,本申请实施例提供的业务部署方法可以应用于全光可重排Clos网络架构,其可以是一个标准的三层Clos网络,它由两个对称的外部交换机层和一个内部交换机层组成。该架构主要由三个参数n、m和r决定,其中n和m分别代表每个外部交换机用于外部和内部连接的端口数,r代表内部交换机用来与外部交换机连接的端口数,当且仅当m大于或等于n时,Clos架构是可重排无阻塞的。在本申请中设定m=n=r,并使用大端口的WSS来替代交换机来构建一个全光可重排的Clos网络。
具体的,每一个交换机层都有多个端口数为N*N的波长选择开关(wavelength selective switch,WSS),外层WSS中所有用于外部连接的端口都通过短程光接口连接到架顶交换机(top of the rack,ToR)的收发器。ToR的收发器的波长调谐速度在纳秒范围内,比WSS的重新配置时间(通常为1到几十毫秒)短得多。该网络架构最多能够容纳的ToR的数量等于WSS端口数的平方,且一对输入-输出端口之间的光路连接的插入损耗固定为穿过的WSS的数量,在该架构中穿过的WSS的数量恒定为3。
请参阅图2,环形全规约(Ring allreduce)业务,即应用环形全规约算法的业务是在分布式机器学习(distributed machine learning,DML)中很流行的业务类型。在Ring allreduce业务中,所有的计算节点(每个计算节点对应一个ToR)被安排在一个由虚拟链接连接的单向环中。每个计算节点在每个计算迭代或时隙(time slot,TS)开始时同时接收(Receive)和转发(Send)来自/至其邻居节点的数据。为了完成Ring allreduce操作,Ring allreduce算法需要进行2*(n-1)次迭代(一次迭代即为一个时隙),每个虚拟链路的流量需求相同,其中n是环形中计算节点的数量。
下面结合上述全光可重排Clos网络架构和环形全规约业务的介绍对本申请实施例中的业务部署方法进行描述,请参阅图3,本申请实施例中业务部署方法一个实施例包括:
301、基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件。
在进行业务部署时,可以是数据中心(data center,DC)中的网络管理平台执行该业务部署方法,需求为将待部署业务部署在DC的网络架构中,网络架构可以是全光可重排网络架构,即全光可重排Clos网络架构,该架构中存在多个网络节点和多个交换机层,网络节点可以看作是ToR或服务器,交换机层由多个WSS组成,ToR连接在外部交换机层的WSS的端口。
获取到待部署业务的信息和当前网络架构的网络节点信息后,网络管理平台就可以基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,具体的,时隙可以是基于待部署业务的迭代次数进行划分,一次迭代为一个时隙,待部署业务可以为多个,例如在第一个时隙为第一个待部署业务分配其需要的网络节点,若此时的分配满足预设条件,当前时隙分配的网络节点就为目标网络节点,若不满足预设条件,因网络架构是全光可重排网络架构,可以重复进行分配,则在下一个时隙继续为第一个待部署业务分配其需要的网络节点,直至满足预设条件,第一个待部署业务分配好网络节点后,按照上述方式继续分配下一个待部署业务,直至为全部的待部署业务分配好目标网络节点。
需要说明的是,每个网络节点都有多个端口,因此支持被分配至不同的待部署业务。
302、基于目标网络节点为待部署业务分配波长。
303、基于目标网络节点和波长为待部署业务建立光路连接。
在每个待部署业务的目标网络节点都被分配好后,就可以基于分配好的目标网络节点为每个待部署业务分配对应的波长,即直接设置每个目标ToR的波长来满足待部署业务的需求,因目标网络节点已被分配好,是确定的,对应的波长也是可以直接确定的,由此实现了快速分配,在一个待部署业务的目标网络节点和波长都被分配好后,就可以基于此为该待部署业务建立光路连接,该待部署业务就完成了在该网络架构中的部署,可以开始运行。
本申请实施例中,基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,其中网络节点为全光可重排网络架构中的节点,然后基于目标网络节点为待部署业务分配波长,并基于目标网络节点和波长为待部署业务建立光路连接,由此将时隙、网络节点,与波长分开进行分配,时隙和网络节点的分配可以重复选择,时隙和网络节点的分配确定后就可以直接确定分配的波长,从而结合全 光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度。
请参阅图4,本申请实施例中业务部署方法另一个实施例包括:
401、基于待部署业务创建时隙窗。
402、根据时隙窗创建多个候选网络节点组。
以待部署业务为环形全规约业务为例,在为待部署业务分配网络节点时,先基于该待部署业务创建一个时隙窗,如图5所示,时隙窗的横轴用于表示待部署业务所需的时隙,时隙窗的纵轴用于表示网络架构中的网络节点,例如该网络架构中存在6个网络节点分别为N0、N1、N2、N3、N4和N5,至少需要15个时隙,如此可以就创建了该待部署业务的时隙窗。需要说明的是,每个待部署业务都需要创建一个对应的时隙窗。
创建好时隙窗后,需要继续创建多个候选网络节点组,候选网络节点组包括多个网络节点,候选网络节点组的数量为在时隙窗中空闲的网络节点中选择待部署业务需要的网络节点的组合数,即创建
其中N_idle为时隙窗内收发器空闲的ToR的总数,N_ToR为待部署业务需要的网络节点的数量。
示例性的,一并参照图5,在初始状态下创建6个候选网络节点组分别为service1、service2、service3、service4、service5和service6。service1使用时隙0-5、网络节点N0-N3;service2使用时隙6-11、网络节点N0-N3;service3使用时隙12-15、网络节点N0-N2;service4使用时隙12-15、网络节点N3-N5;service5使用时隙0-1、网络节点N4-N5;service6使用时隙2-3、网络节点N4-N5。
403、获取用于表示光路连接的二维矩阵。
创建好多个候选网络节点组后,获取用于表示光路连接的二维矩阵,其中二维矩阵可以是预先创建好的,对于每个待部署业务的每个候选网络节点组都可以使用该二维矩阵,二维矩阵的横坐标用于表示光路连接中的起始网络节点,二维矩阵的纵坐标用于表示光路连接中的目的网络节点,二维矩阵中元素的值用于表示起始网络节点和目的网络节点之间是否存在光路连接。
请参阅图6,该二维矩阵可以表示网络节点3和网络节点0之间存在光路连接,网络节点3还和网络节点4之间存在光路连接,存在连接即二维矩阵中的元素的值为1,不存在连接为0,其他网络节点间的连接关系的表示和上述方式相同,本申请实施例不再赘述。
404、根据待部署业务和多个候选网络节点组对二维矩阵进行更新直至得到目标二维矩阵。
405、将目标网络节点组分配给待部署业务,目标网络节点组对应的二维矩阵为目标二维矩阵。
获取到二维矩阵和多个候选节点组后,就可以根据待部署业务和多个候选网络节点组对二维矩阵进行更新直至得到目标二维矩阵,其中多个候选网络节点组用于确定更新时的起始网络节点和目的网络节点,待部署业务用于确定更新时起始网络节点和目的网络节点之间是否建立光路连接,预设条件为目标二维矩阵的任一行元素的值的和,且任一列元素的值的和小于或等于预设值。
具体的,对于环形全规约业务的每个候选网络节点组,根据ToR的索引创建一个逻辑上的单向环来构成不同的虚拟拓扑,ToR的索引为ToR的顺序,可以是随机定义的顺序,除了连接第一个和最后一个ToR的虚拟链路外,具有较大索引的ToR位于具有较小索引的ToR的右边。每当一对ToR之间的虚拟链路被建立,我们就更新二维矩阵中相应的元素值,并检查修改后的二维矩阵中任何一行或一列的总和是否大于WSS支持的最大波长数W_max,其中W_max来自N×N的WSS的物理限制,W_max通常小于每个ToR中可调谐收发器的调谐波长数。如果修改后的二维矩阵中任何一行或一列的总和大于W_max,意味着当前的候选网络节点组没有资格承载当前的Ring allreduce业务,则通过删除所有已建立的虚拟链接,并恢复二维矩阵到更新前的状态,然后尝试下一个候选网络节点组。重复上述过程,直到找到符合条件的候选网络节点组,或者在扫描完所有的候选网络节点组后没有找到符合条件的组,则将时隙窗转移一个时隙,基于新的时隙窗重复同样的过程,直到Ring allreduce业务最终被交付,即若在当前时隙窗不存在目标二维矩阵时,将时隙窗后移一个时隙得到新的时隙窗,并将二维矩阵恢复至更新前的状态后重新开始更新,直至找到目标二维矩阵。
需要说明的是,对于所有的待部署业务,我们采取同样的步骤来交付它们,将目标网络节点组分配给待部署业务,目标网络节点组对应的二维矩阵为目标二维矩阵。此外,二维矩阵更新后,候选网络节点组在图5的时隙窗的位置也相应改变。
406、采用预设算法将目标二维矩阵分解为多个分解二维矩阵。
407、为每个分解二维矩阵分配一个波长。
408、基于分解二维矩阵和为每个分解二维矩阵分配的一个波长,为待部署业务建立光路连接。
在为待部署业务分配好目标网络节点后,就可以进行波长的分配,相当于指导每个ToR的收发机如何调整波长以在不同的时隙窗时期建立不同Ring allreduce业务的单向环。根据霍尔定理及其推论,即每一个d维规则的二方图都有一个完美的匹配,因此预设算法可以为匈牙利算法,当目标二维矩阵为图6中的二维矩阵时,请参阅图7和图8,可以采用匈牙利算法将其分解成两个分解二维矩阵M
1和M
2,其中分解二维矩阵的任一行或任一列只存在一个元素的值不为零。
进一步的,请参阅图9,对于分解二维矩阵M
1可以为其分配波长λ
1,对于分解二维矩阵M
2可以为其分配波长λ
2,由于只有一个波长,目前的光路建立问题等同于中传统的可重排Clos架构中的路由问题,则在为待部署业务建立光路连接时可以采用重排算法。因为全光可重排无阻塞架构在单波长的情况下是可重排的无阻塞的,所以基于WSS的全光Clos架构即使在引入多个平行波长后任然是可重排的无阻塞的。
将本申请提供的业务部署方法与贪婪算法进行比较。在贪婪算法中,也在
个候选网络节点组中搜索一个符合条件的组,对于每个组,一起分配ToR、时隙和波长。由于基于WSS的全光可重排Clos架构不是严格意义上的无阻塞,因此在架构内部仍然会有波长阻塞的情况发生。如果波长阻塞发生,我们需要尝试下一个候选组。因此,与本申请提供的业务部署方法相比,这种贪婪算法往往会扫描更多的候选组,并需要更长的时间来找到 一个合适的候选组。
为了评估本申请提供的业务部署方法的算法性能,还进行了仿真实验。仿真实验的参数设置如下:WSS模块的规格为5×5,用这个基本模块建立一个基于WSS的全光可重排Clos架构,整换网络架构有25×25的输入和输出端口,其中每层有五个5×5的WSS模块。每个端口通过一个光收发器连接到一个ToR,因此整个网络架构中总共有25个ToR。每个Ring allreduce业务所需的ToR数量被设定为4、6和8,分别对应6、10和14个时隙。各个Ring allreduce业务之间的数量比例为1:2:1。同时在每次实验时,对所有的Ring allreduce业务顺序进行10次重排,对于每次重排运行启发式算法,以找到完成所有Ring allreduce业务所需的时隙的总数量。从10次重排结果中,在最大时隙数中选择最小的为最终结果。这两种启发式算法都在一台具有2.90GHz CPU和16GB内存的计算机上用Java进行实现。
如图10所示,图10显示了在有100个Ring allreduce业务的情况下,两种算法完成所有Ring allreduce业务所需的最大时隙数量,其中左侧纵坐标代表运行时间(running time),右侧纵坐标代表时隙(time slot),横坐标代表WSS支持的波长数量(number of wave elengths supported by WSS),RT_Greedy表示贪婪算法的运行时间,RT_Proposed表示本申请提供的业务部署方法的算法的运行时间,,TS_Greedy表示贪婪算法需要的时隙数,TS_Proposed表示本申请提供的业务部署方法的算法需要的时隙数。
可以看出,随着WSS支持的波长数量的增加,两种算法所需的时隙数量都有所下降。此外,尽管两种算法的表现非常接近,但当支持的波长数为2和4时,本申请提供的业务部署方法的算法在所需时隙方面比贪婪算法表现更好。图10还显示了这两种算法的运行时间。可以注意到,当WSS支持的波长数量较少时,本申请的算法的运行时间比贪婪算法要短得多。在波长数量较少的情况下,采用贪婪算法时,Clos架构内很可能发生阻塞,而贪婪算法需要尝试更多的候选网络节点组,从而需要更长的时间。但是当WSS支持的波长数量较大时(如6-7个波长),这两种算法的运行时间差异不大,这是因为在较大的波长数下,更容易找到合适的候选网络节点组来提供给Ring allreduce业务。
进一步的,为了评估两种算法的性能如何随着Ring allreduce业务数量的增加而变化,如图11所示,可以注意到,对于这两种算法,完成所有Ring allreduce业务所需的最大时隙数量随着业务数量的增加而增加。尽管两种算法在所需的时隙总数上表现接近,但本申请提供的业务部署方法的算法的求解时间总是比贪婪算法更短。
如图12所示,本申请实施例提供的业务部署装置1200的一实施例包括:
第一分配单元1201,用于基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,网络节点为全光可重排网络架构中的节点;该第一分配单元可以执行上述方法实施例中的步骤301。
第二分配单元1202,用于基于目标网络节点为待部署业务分配波长;该第二分配单元1202可以执行上述方法实施例中的步骤302。
建立单元1203,用于基于目标网络节点和波长为待部署业务建立光路连接。该建立单元1203可以执行上述方法实施例中的步骤303。
本申请实施例中,第一分配单元1201基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为待部署业务分配的目标网络节点满足预设条件,其中网络节点为全光可重排网络架构中的节点,然后第二分配单元1202基于目标网络节点为待部署业务分配波长,建立单元1203基于目标网络节点和波长为待部署业务建立光路连接,由此将时隙、网络节点,与波长分开进行分配,时隙和网络节点的分配可以重复选择,时隙和网络节点的分配确定后就可以直接确定分配的波长,从而结合全光可重排网络架构可重排的特性快速建立光路连接,提高业务部署速度。
可选的,第一分配单元1201具体用于基于待部署业务创建时隙窗,时隙窗的横轴用于表示待部署业务所需的时隙,时隙窗的纵轴用于表示网络节点;根据时隙窗创建多个候选网络节点组,候选网络节点组包括多个网络节点,候选网络节点组的数量为在时隙窗中空闲的网络节点中选择待部署业务需要的网络节点的组合数;将多个候选网络节点组中满足预设条件的候选网络节点组作为目标网络节点组分配给待部署业务,目标网络节点组的时隙窗对应的时隙为目标时隙,目标网络节点组中的网络节点为目标网络节点。
可选的,第一分配单元1201具体还用于获取用于表示光路连接的二维矩阵,二维矩阵的横坐标用于表示光路连接中的起始网络节点,二维矩阵的纵坐标用于表示光路连接中的目的网络节点,二维矩阵中元素的值用于表示起始网络节点和目的网络节点之间是否存在光路连接;根据待部署业务和多个候选网络节点组对二维矩阵进行更新直至得到目标二维矩阵,多个候选网络节点组用于确定更新时的起始网络节点和目的网络节点,待部署业务用于确定更新时起始网络节点和目的网络节点之间是否建立光路连接,目标二维矩阵的任一行元素的值的和,且任一列元素的值的和小于或等于预设值;将目标网络节点组分配给待部署业务,目标网络节点组对应的二维矩阵为目标二维矩阵。
可选的,该业务部署装置1200还包括:迭代单元1204,迭代单元1204用于若在当前时隙窗不存在目标二维矩阵时,将时隙窗后移一个时隙得到新的时隙窗,并将二维矩阵恢复至更新前的状态后重新开始更新,直至找到目标二维矩阵。
可选的,全光可重排网络架构包括波长选择开关,预设值为波长选择开关支持的最大波长数。
可选的,第二分配单元1202具体用于采用预设算法将目标二维矩阵分解为多个分解二维矩阵,分解二维矩阵的任一行或任一列只存在一个元素的值不为零;为每个分解二维矩阵分配一个波长;建立单元1203具体用于基于分解二维矩阵和为每个分解二维矩阵分配的一个波长,为待部署业务建立光路连接。
可选的,预设算法为匈牙利算法。
参考图13,为本申请实施例提供的一种计算机设备1300的示意图,该计算机设备1300包括:处理器1301和接口1303,处理器1301与接口1303耦合。接口1303用于实现与其他设备进行通信。接口1303可以为收发器或输入输出接口。接口1303例如可以是接口电路。可选地,该通信装置1300还包括存储器1302,处理器1301与存储器1302耦合,存储器1302用于存储处理器1301执行的指令或存储处理器1301运行指令所需要的输入数据或存储处理器1301运行指令后产生的数据。当程序或指令被处理器1301执行时,使得计 算机设备1300的处理器1301执行上述第一方面或第一方面任意一种可能的实现方式的方法。
在本申请的另一实施例中,还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当设备的至少一个处理器执行该计算机执行指令时,设备执行上述实施例所描述的业务部署方法。
在本申请的另一实施例中,还提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得设备执行上述实施例所描述的业务部署方法。
在本申请的另一实施例中,还提供一种芯片系统,该芯片系统包括至少一个处理器和接口,该接口用于接收数据和/或信号,至少一个处理器用于支持实现上述实施例所描述的业务部署方法。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (18)
- 一种业务部署方法,其特征在于,包括:基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为所述待部署业务分配的目标网络节点满足预设条件,所述网络节点为全光可重排网络架构中的节点;基于所述目标网络节点为所述待部署业务分配波长;基于所述目标网络节点和所述波长为所述待部署业务建立光路连接。
- 根据权利要求1所述的方法,其特征在于,所述基于不同的时隙为待部署业务分配网络节点,直至在目标时隙中为所述待部署业务分配的目标网络节点满足预设条件包括:基于所述待部署业务创建时隙窗,所述时隙窗的横轴用于表示所述待部署业务所需的时隙,所述时隙窗的纵轴用于表示所述网络节点;根据所述时隙窗创建多个候选网络节点组,所述候选网络节点组包括多个所述网络节点,所述候选网络节点组的数量为在所述时隙窗中空闲的网络节点中选择所述待部署业务需要的网络节点的组合数;将所述多个候选网络节点组中满足所述预设条件的候选网络节点组作为目标网络节点组分配给所述待部署业务,所述目标网络节点组的时隙窗对应的时隙为所述目标时隙,所述目标网络节点组中的网络节点为所述目标网络节点。
- 根据权利要求2所述的方法,其特征在于,所述将所述多个候选网络节点组中满足所述预设条件的候选网络节点组作为目标网络节点组分配给所述待部署业务包括:获取用于表示所述光路连接的二维矩阵,所述二维矩阵的横坐标用于表示所述光路连接中的起始网络节点,所述二维矩阵的纵坐标用于表示所述光路连接中的目的网络节点,所述二维矩阵中元素的值用于表示所述起始网络节点和所述目的网络节点之间是否存在所述光路连接;根据所述待部署业务和所述多个候选网络节点组对所述二维矩阵进行更新直至得到目标二维矩阵,所述多个候选网络节点组用于确定更新时的所述起始网络节点和所述目的网络节点,所述待部署业务用于确定更新时所述起始网络节点和所述目的网络节点之间是否建立所述光路连接,所述目标二维矩阵的任一行元素的值的和,且任一列元素的值的和小于或等于预设值;将所述目标网络节点组分配给所述待部署业务,所述目标网络节点组对应的二维矩阵为所述目标二维矩阵。
- 根据权利要求3所述的方法,其特征在于,所述方法还包括:若在当前时隙窗不存在所述目标二维矩阵时,将所述时隙窗后移一个时隙得到新的时隙窗,并将所述二维矩阵恢复至更新前的状态后重新开始更新,直至找到所述目标二维矩阵。
- 根据权利要求3或4所述的方法,其特征在于,所述全光可重排网络架构包括波长选择开关,所述预设值为所述波长选择开关支持的最大波长数。
- 根据权利要求3-5中任一项所述的方法,其特征在于,所述基于所述目标网络节点为所述待部署业务分配波长包括:采用预设算法将所述目标二维矩阵分解为多个分解二维矩阵,所述分解二维矩阵的任一行或任一列只存在一个元素的值不为零;为每个所述分解二维矩阵分配一个波长;所述基于所述目标网络节点和所述波长为所述待部署业务建立光路连接包括:基于所述分解二维矩阵和为每个所述分解二维矩阵分配的一个波长,为所述待部署业务建立光路连接。
- 根据权利要求6所述的方法,其特征在于,所述预设算法为匈牙利算法。
- 一种业务部署装置,其特征在于,包括:第一分配单元,用于基于不同的时隙为待部署业务分配网络节点直至在目标时隙中为所述待部署业务分配的目标网络节点满足预设条件,所述网络节点为全光可重排网络架构中的节点;第二分配单元,用于基于所述目标网络节点为所述待部署业务分配波长;建立单元,用于基于所述目标网络节点和所述波长为所述待部署业务建立光路连接。
- 根据权利要求8所述的装置,其特征在于,第一分配单元具体用于基于所述待部署业务创建时隙窗,所述时隙窗的横轴用于表示所述待部署业务所需的时隙,所述时隙窗的纵轴用于表示所述网络节点;根据所述时隙窗创建多个候选网络节点组,所述候选网络节点组包括多个所述网络节点,所述候选网络节点组的数量为在所述时隙窗中空闲的网络节点中选择所述待部署业务需要的网络节点的组合数;将所述多个候选网络节点组中满足所述预设条件的候选网络节点组作为目标网络节点组分配给所述待部署业务,所述目标网络节点组的时隙窗对应的时隙为所述目标时隙,所述目标网络节点组中的网络节点为所述目标网络节点。
- 根据权利要求9所述的装置,其特征在于,第一分配单元具体还用于获取用于表示所述光路连接的二维矩阵,所述二维矩阵的横坐标用于表示所述光路连接中的起始网络节点,所述二维矩阵的纵坐标用于表示所述光路连接中的目的网络节点,所述二维矩阵中元素的值用于表示所述起始网络节点和所述目的网络节点之间是否存在所述光路连接;根据所述待部署业务和所述多个候选网络节点组对所述二维矩阵进行更新直至得到目标二维矩阵,所述多个候选网络节点组用于确定更新时的所述起始网络节点和所述目的网络节点,所述待部署业务用于确定更新时所述起始网络节点和所述目的网络节点之间是否建立所述光路连接,所述目标二维矩阵的任一行元素的值的和,且任一列元素的值的和小于或等于预设值;将所述目标网络节点组分配给所述待部署业务,所述目标网络节点组对应的二维矩阵为所述目标二维矩阵。
- 根据权利要求10所述的装置,其特征在于,所述装置还包括:迭代单元,用于若在当前时隙窗不存在所述目标二维矩阵时,将所述时隙窗后移一个时隙得到新的时隙窗,并将所述二维矩阵恢复至更新前的状态后重新开始更新,直至找到所述目标二维矩阵。
- 根据权利要求10或11所述的装置,其特征在于,所述全光可重排网络架构包括波长选择开关,所述预设值为所述波长选择开关支持的最大波长数。
- 根据权利要求10-12中任一项所述的装置,其特征在于,所述第二分配单元具体用于采用预设算法将所述目标二维矩阵分解为多个分解二维矩阵,所述分解二维矩阵的任一行或任一列只存在一个元素的值不为零;为每个所述分解二维矩阵分配一个波长;所述建立单元具体用于基于所述分解二维矩阵和为每个所述分解二维矩阵分配的一个波长,为所述待部署业务建立光路连接。
- 根据权利要求13所述的装置,其特征在于,所述预设算法为匈牙利算法。
- 一种计算机设备,其特征在于,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述的方法。
- 一种计算机可读存储介质,其上存储有指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至7中任一项所述的方法。
- 一种芯片系统,其特征在于,包括至少一个处理器和接口,所述接口用于接收数据和/或信号,所述至少一个处理器被配置为用于执行如权利要求1至7中任一项所述的方法。
- 一种计算机程序产品,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1至7中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111217202.8 | 2021-10-19 | ||
CN202111217202.8A CN116015460A (zh) | 2021-10-19 | 2021-10-19 | 一种业务部署方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023065852A1 true WO2023065852A1 (zh) | 2023-04-27 |
Family
ID=86023471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/116663 WO2023065852A1 (zh) | 2021-10-19 | 2022-09-02 | 一种业务部署方法及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116015460A (zh) |
WO (1) | WO2023065852A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7187672B1 (en) * | 2002-05-15 | 2007-03-06 | Calix Networks, Inc. | Connection rearrangement in communication switches |
EP2306664A1 (en) * | 2009-09-30 | 2011-04-06 | Alcatel Lucent | Method for configuring an all-optical network |
CN103580771A (zh) * | 2013-11-11 | 2014-02-12 | 清华大学 | 基于时间同步的全光时片交换方法 |
CN106302252A (zh) * | 2015-05-15 | 2017-01-04 | 华为技术有限公司 | 数据交换系统架构、发送数据流量的方法以及交换装置 |
US9602434B1 (en) * | 2013-02-27 | 2017-03-21 | Juniper Networks, Inc. | Data center architecture utilizing optical switches |
-
2021
- 2021-10-19 CN CN202111217202.8A patent/CN116015460A/zh active Pending
-
2022
- 2022-09-02 WO PCT/CN2022/116663 patent/WO2023065852A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7187672B1 (en) * | 2002-05-15 | 2007-03-06 | Calix Networks, Inc. | Connection rearrangement in communication switches |
EP2306664A1 (en) * | 2009-09-30 | 2011-04-06 | Alcatel Lucent | Method for configuring an all-optical network |
US9602434B1 (en) * | 2013-02-27 | 2017-03-21 | Juniper Networks, Inc. | Data center architecture utilizing optical switches |
CN103580771A (zh) * | 2013-11-11 | 2014-02-12 | 清华大学 | 基于时间同步的全光时片交换方法 |
CN106302252A (zh) * | 2015-05-15 | 2017-01-04 | 华为技术有限公司 | 数据交换系统架构、发送数据流量的方法以及交换装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116015460A (zh) | 2023-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11082262B2 (en) | Flow entry generating method and apparatus | |
US10230661B2 (en) | Distributed virtual network embedding | |
US9130856B2 (en) | Creating multiple NoC layers for isolation or avoiding NoC traffic congestion | |
EP3057270A1 (en) | Technologies for modular forwarding table scalability | |
Rouskas | Routing and wavelength assignment in optical WDM networks | |
JP2004208297A (ja) | ツリートポロジーネットワークのデバイスの高速選択システムおよび方法 | |
CN107465966B (zh) | 一种用于光网络的拓扑重构控制方法 | |
US20200076925A1 (en) | Software-defined Interconnection Method and Apparatus for Heterogeneous Protocol Data | |
Bojja Venkatakrishnan et al. | Costly circuits, submodular schedules and approximate carathéodory theorems | |
Avin et al. | ReNets: Statically-Optimal Demand-Aware Networks∗ | |
KR101754618B1 (ko) | 소프트웨어 정의 네트워크 기반의 가상 네트워크 동적 생성 방법 및 그 장치 | |
CN112368981A (zh) | 物理层路由和监视 | |
CN115175027B (zh) | 面向基于Spanke架构全光交换数据中心的Ring业务部署方法 | |
CN112751768B (zh) | 业务报文转发方法、装置及计算机存储介质 | |
Li et al. | Virtual machine placement in cloudlet mesh | |
WO2023065852A1 (zh) | 一种业务部署方法及相关设备 | |
Rofoee et al. | Hardware virtualized flexible network for wireless data-center optical interconnects | |
CN115623365B (zh) | 全光数据中心网络的业务部署方法、系统及光通道 | |
Zhai et al. | Delivering ring allreduce services in WSS-based all-optical rearrangeable Clos network | |
Rubio-Largo et al. | Tackling the static RWA problem by using a multiobjective artificial bee colony algorithm | |
Tsai et al. | Virtualized cloud data center networks: Issues in resource management | |
Xuan et al. | New optimization model for routing and spectrum assignment with nodes insecurity | |
CN108574584B (zh) | 一种网格系统及在该网格系统的路径确定方法和控制设备 | |
Yu et al. | Migration-aware dynamic connection provisioning in optical networks evolving from fixed grid to flexible grid | |
Askari et al. | Reprovisioning for latency-aware dynamic service chaining in metro networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22882467 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22882467 Country of ref document: EP Kind code of ref document: A1 |