This invention relates to the allocation of resources to meet requests for provision of those resources. It is particularly, but not exclusively, suited for the allocation of telecommunications resources to meet requests for data transmission. Many telecommunications operators possess very large network infrastructures, often comprised of many interconnected networks, together forming a single very large logical network providing global reach. Across this logical network is a requirement to route point-to-point traffic in order to best utilise the available capacity of the network. Modern telecommunications systems are configured to provide variable capacity (bandwidth) according to the different requirements of the individual users. It is necessary to service many such requests simultaneously. Each request for service will have individual requirements in terms of routing, capacity and quality to be met by the performance of the path. In particular, rather than specifying the required capacity per se, the user may require that a specific quality of service (QoS) measure is achieved. Such performance attributes might include a predetermined minimum error rate, end-to-end delay limitations and constraints on the level of jitter (variations in delay). The network attempts to allocate whatever bandwidth resources are necessary to achieve this. Such resources are generally allocated on demand, although the invention may also be used in systems in which capacity is reserved in advance of it being required.
The optimal routing of many service requests over large networks presents a number of significant problems especially in terms of memory management and algorithm performance, and these become increasingly difficult as the network's size and complexity, and the amount of traffic it carries, increases. For example, determining a simple shortest path in very large networks takes considerable time.
It is known to provide hierarchical routing systems in which the network is broken down into a set of sub-networks, each with its own router which determines the sub-network to which the data should next be forwarded, and the route through that sub-network to achieve that. However, the individual routers do not have visibility of the network as a whole, so the resulting complete end-to-end route may not be optimal.
Although this specification is particularly concerned with allocation of resources in a telecommunications network, similar problems occur in other scheduling situations such as transport and logistics (movement of goods or personnel in a commercial or military situation). Accordingly, the present invention provides in its most general aspect, a method of operating a management system for a set of linked resources in order to satisfy a set of requests for concurrent services, each requiring specified performance attributes, to be reserved in the resources, the method comprising defining a plurality of distinct subsidiary resource sets, each comprising a subset of the resources making up the complete set and the interrelationships between the resources, and further defining an overlay set comprising interrelationships between resources in different subsets, in which a solution to a resource request is determined by identifying elements of the solution in each subsidiary network, and in the overlay set; and selecting a complete solution by combining the solution elements so identified.
Where the linked resources are the elements of a telecommunications network, it should be noted that capacity constraints occur not only at the switching centres (the nodes of the network) but more particularly on the links between them (radio, cable etc). The connections may be considered to be resources, linked together by the switches.
The invention may be used to provide a method of operating a management system for a network in order to satisfy requests for a set of concurrent complete connection paths to be reserved in the network, each path requiring specified performance attributes, the network comprising a plurality of connections between network nodes, each connection having a predetermined capacity, the method comprising defining a plurality of subsidiary networks, each comprising a subset of the nodes making up the complete network and the connections between the subset of nodes, and in which a connection path is identified by identifying connection path elements between interface nodes in each subsidiary network, and connections between the subsidiary networks, and identifying a complete connection path by combining the connection path elements so identified.
The invention also provides a management system for allocating resources selected from a set of linked resources in order to satisfy requests for a set of concurrent services, each requiring specified performance attributes, to be reserved in the resources, the system comprising means for defining a plurality of distinct subsidiary resource sets, each comprising a subset of the resources making up the complete set and the interrelationships between the resources, and for further defining an overlay set comprising interrelationships between resources in different subsets, and means for allocating resources to meet a resource request by identifying elements of the solution in each subsidiary network, and in the overlay set; and means for generating a complete solution by combining the solution elements so identified.
In a further aspect, the invention provides a network management system for allocating a set of concurrent complete connection paths between terminations of a network, the network comprising a plurality of connections between network nodes, each connection having predetermined performance attributes, the system comprising: input means for accepting a request for a connection path, means for defining a plurality of distinct subsidiary networks and storing the details thereof, each subsidiary network comprising a subset of the nodes making up the complete network and the connections between the subset of nodes, means for storing the details of connections between the subsidiary networks, means associated with each subsidiary network for identifying connection paths between its interface nodes, means for identifying connection paths between the subsidiary networks, and means for selecting a complete connection path by combining the connection path elements so identified.
The resource allocation process therefore operates by processing the routing availability for each of a plurality of smaller interconnected parts of the entire network, and for a higher level network in which the individual network parts are each represented as a single-entity node. Routes can then be determined by a combination of routing globally across the high level representation of the network together with local routing within each partitioned network part. The approach taken here is to break down the larger network into a set of smaller interconnected networks, and determine the optimum route through each. This is combined with a global routing function, which determines which request is routed through which networks. By partitioning in this way the problem becomes scaleable. Some theoretical routes may be lost, particularly those which pass through the same subsidiary network more than once, but such routes are likely to be sub-optimal and therefore the processing time gained by failure to consider them outweighs the remote chance that the route might have been selected if considered.
In a preferred arrangement a connection between two subsidiary networks is defined by a pair of port nodes, one in each of the subsidiary networks. At the higher level, connections across and between subsidiary networks are defined by routes between the port nodes.
In a preferred embodiment, the subsidiary networks are defined such that the number of connections between them are minimised, as this maximises the efficiency of the routing process and minimises the possibility that the theoretical optimum route passes through two parts of the same subsidiary. Advantageously, routes within a subsidiary network are identified between each pair of port nodes in the subsidiary network, routes between the subsidiary networks are defined according to the pairs of port nodes connecting them.
It is envisaged that the process would be run on, and the network management system embodied as, one or more suitably-programmed general-purpose computers. As will be understood by those skilled in the art, any or all of the software used to implement the invention can be contained on various transmission and/or storage mediums readable by a suitable computer input device, such as CD-ROM, optically readable marks, magnetic media, punched card or tape, or on an electromagnetic or optical signal, so that the program can be loaded onto one or more general purpose computers or could be downloaded over a computer network using a suitable transmission medium.
The decomposition of very large networks into smaller parts each with responsibility for its own internal routing lends itself to a distributed architecture. Indeed with a distributed approach the size of the network that can be controlled in this way is only limited by the capabilities of the distributed platform itself. In this way the optimisation of networks can be carried out in parallel, further reducing processing time.
For very large networks this approach may be extended to three or more layers, by subdividing one or more of the subsidiary networks into still smaller networks.
An embodiment of the invention will now be described, by way of example, with reference to the Figures, in which
A number of network optimisation methods have been developed to handle resource allocation problems. One such process is described in a paper by Conway et al: “iNetwork—A Framework for Network Optimisation”: Proceedings of the International Network Optimization Conference, 2003 p163-168). This process provides a number of generic tools for the modelling and visualisation of networks and the application of specialised network algorithms, together with more specialised extensions targeted at specific categories of network optimisation problems such as network routing, and design. It brings together techniques from Metaheuristics, Graph Theory and Network Flow together with comprehensive network modelling and advanced visualisation capabilities.
Returning to the simplified network of
As shown in
Having found a broad solution to the path allocation, a detailed solution can then be provided by considering the global paths as being comprised of multiple paths segments through a number of the partitioned networks.
The global paths selected thereby place routing requirements on each of the network parts. In this way each smaller network part becomes responsible for routing traffic through and into itself. A complete end-to-end path 200 is therefore a composite path formed by the routes allocated through and between each network part 30, 31, 32, 33, 34, 35, as shown in
The selection of a set of feasible paths in order to meet the capacity and QoS demands of the service requests is carried out by a Path Selection Component 11. This component is used both at the global routing level and at the local level within the network parts. The component utilises Heuristic Search methods to select a path for each service request from a number of alternate paths discovered for each service request. The search for the alternative paths is carried out, for example, by a k-shortest path search. The Path Selection is cast as a Cost Optimisation Problem where the objective is to globally achieve the lowest cost for allocated paths and to minimise the number of broken constraints, such as upper bounds on the capacity carried by each network link, and the end-to-end path Delay.
Within the Path Selection Component 11, modelling of the problem is independent of the heuristic method chosen. Indeed once the modelling is done a suitable heuristic method can be chosen from a library of pre-defined methods or a new method can be constructed. In this way a fair comparison of the performance of each method can be carried out and the best performer chosen. In simulations, it appears that a Simulated Annealing based approach converges to satisfactory results in reasonable time. However, the performance or benefits of a particular heuristic method over another is problem-specific, with certain methods performing well with certain types of problem (depending on network topology and set of requests). Knowing beforehand which method will be best is difficult. However the modular design of the iNetwork toolkit referred to above allows one method 112 to be simply exchanged for another 111, and to compare results, as illustrated in
The Network Feedback and Control component 12 will now be discussed, with reference to
Changes to the network do not require complete reconfiguration of the route-finding process, but only to that part of the process concerned with the affected subsidiary network 34. Similarly, changes to the connections between subsidiary networks, for example creating or amending a connection between two subsidiary networks only requires amendment of the model of the overlay network and the two subsidiary networks directly involved. Furthermore, in a multi-level model, such changes do not affect the model at other levels.
Number | Date | Country | Kind |
---|---|---|---|
0424032.1 | Oct 2004 | GB | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/GB05/03498 | 9/9/2005 | WO | 00 | 4/26/2007 |