GB2331431A - Communications network - Google Patents
Communications network Download PDFInfo
- Publication number
- GB2331431A GB2331431A GB9726500A GB9726500A GB2331431A GB 2331431 A GB2331431 A GB 2331431A GB 9726500 A GB9726500 A GB 9726500A GB 9726500 A GB9726500 A GB 9726500A GB 2331431 A GB2331431 A GB 2331431A
- Authority
- GB
- United Kingdom
- Prior art keywords
- connection
- data
- route
- network
- connections
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5619—Network Node Interface, e.g. tandem connections, transit switching
- H04L2012/562—Routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5629—Admission control
- H04L2012/5631—Resource management and allocation
- H04L2012/5632—Bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1305—Software aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13056—Routines, finite state machines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13103—Memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13106—Microprocessor, CPU
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13141—Hunting for free outlet, circuit or channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13175—Graphical user interface [GUI], WWW interface, visual indication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13204—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1329—Asynchronous transfer mode, ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13332—Broadband, CATV, dynamic bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13348—Channel/line reservation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13349—Network management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A process for allocating resources in a communications network (11) so that each network link used by a connection has required bitrate capacity available. Reservations for connections are scheduled in advance in an attempt to ensure that traffic on a particular route of links between source and destination nodes of a connection will not exceed a maximum bitrate capacity of each link in that route. A list of connection requests and data describing physical resources of the communications network is stored in a database (21). Time ranges, durations and requested bitrate capacities of the connection requests are stored in the database (step 73). A scheduling algorithm is applied to the database which creates a schedule of connection reservations by searching for a suitable route of links with the required bitrate capacities for each requested connection so that the connection will occur within its specified time range (steps 110 to 115). This schedule is then used by a network controller (14) to implement the connections.
Description
1 2331431 RESERVATIONS SCHEDULER FOR CONNECTION-$ IN A COMMUNICATIONS
NETWORK
Field of the Invention
The present invention relates to allocation of resources in a communications network and more particularly to scheduling reservations for connections across a communications network.
Background to the Invention
A conventional communications network comprises a plurality of nodes, at which are provided node equipment, the nodes connected by a plurality of communications links, the links comprising link equipment. The node equipment may comprise, for example a personal computer or a telecommunications switch apparatus, and the links may comprise, for example a coaxial cable linking computers, or a terrestrial or atmospheric telecommunications link, such as an optical fiber link, microwave link or the like.
Such types of traffic carried by a network, such as that resulting from data communication is often of a bursty nature which means that short "bursts" of high communication activity occur between longer periods of low or no network traffic. This kind of traffic leads to the network being especially prone to overloading of link equipment. Further, at certain times of the day there is more likely to be a high volume of network traffic than at other times. For example, a "busy hour" occurs around 11.00 am of each weekday morning, and at around 2.00 - 3.00 pm each week day.
Conventional telecommunications networks operate by making connections between subscribers. A connection is a communications path between a source node and one or more destination nodes via a route across one or more network links. Certain usages of communications networks such as the carrying of voice conferencing communication traffic data or distance teaming traffic data heavily utilize bitrate across a connection and can require point to multipoint or multipoint to multipoint connections. These types of usage can use a large proportion of the bitrate capacity of the links used by a connection. If traffic of one connection attempts to use the same link as traffic of another connection at the same time, this can result in individual link equipment being saturated leading to congestion on the network. In applications which are particularly sensitive to maintaining quality of service, for example the transfer of computer data, overloading of links leads to corruption of the data. For example, in an asynchronous transfer mode (ATIVI) communications network, overloading of node and link equipment produces loss of ATM cells of data. ATM cells are buffered at node equipment prior to transmitting over links. Where congestion occurs, buffers overfill and ATM cells are overwritten by newly arrived incoming cells. Traffic data contained in the overwritten cells is lost.
In particular, with the advent and increased availability of ATM communications systems, there is provided large amounts of bitrate which are available across a communications network. ATM systems are becoming increasingly available in access networks and are particularly suited to point to multipoint and multipoint to multipoint service types.
One object of the present invention is to schedule services across a communications network, where a nature of the service, eg such as its bitrate, data type and projected time of commencement are known in advance.
Another object of the present invention is to ensure that the network links have the necessary bitrate capacities to cope with transferring data without corrupting it.
Summary of the Invention
According to a first aspect of the present invention there is provided a machine executable process for scheduling reservations for connections in a communications network comprising a plurality of links, said process comprising the steps of:
creating a database configured for storing:
connection request data describing requests for a plurality of connections; route data describing a plurality of available routes associated with said connection requests; and applying a scheduling algorithm to said database said algorithm assigning a said route data to each said connection request data, according to a constraint data, to produce a schedule data describing each said connection and its corresponding assigned route. Said database may contain link data describing a plurality of said links of the network.
Typically, a number of available routes across the communications network is large and constitutes a search space within which said algorithm operates to search for an available route suitable for implementing a said connection request.
A constraint data describing constraints on the route to be found is used in the algorithm to reduce the search space from which said assigned routes are to be found. The constraint data may comprise data describing a set of rules, eg mathematical rules, or other specified limitations. For example, a constraint data may comprise data describing a service type, a temporal constraint, eg a possible start time and possible end time, or a bitrate capacity of a link.
Similarly, said constraint data comprises: a timing data describing timing and duration of each said connection; and a capacity data describing a bitrate capacity of each said link; and said scheduling algorithm performs the steps of searching said route data for a route for each connection request while dynamically adjusting said timing data within preset variable ranges and dynamically adjusting said link bitrate capacity data to find a said route of each connection which conforms to said ranges and said link capacities; and storing data deschbing each said connection and its associated found route in said database.
Said constraints are used to reduce a search space of solutions, available in said step of searching.
A scheduled solution may be obtained according to a predetermined 10 scheduling objective data.
An optimized schedule solution may be obtained by optimizing a search according to a predetermined optimization criteria function, for example a balanced load criteria or a spread load criteria.
Said step of searching may be performed according to one or more searching algorfthms selected from a set of searching algorithms.
The constraint data may be applied at a relatively early stage in the search in order to reduce the search space. This may have an effect that said algodthm may operate more efficiently, and does not try every single possible route within the search space for a particular connection request. Further, specified optimization criteria data may be applied for finding routes having optimium charactedstics. For example, an optimization criteria data deschbing a best use of a link bitrate capacity may be specified in a scheduling strategy. Other strategies which may be specified in the search include a strategy that each suitable link found is fully fitted with connection requests, before a next link is fitted with connections requests. Another search strategy comprises defining that a bitrate capacity loading is balanced across a plurality of links of a network.
Preferably said database comprises a knowledge base and said scheduling algorithm is implemented by means of an inference engine.
Preferably said data describing connection requests, data describing network links and data describing schedules are stored in separate areas of said knowledge base.
Said schedule of connections with associated routes may comprise for example a schedule for a 24 hour day divided into one second intervals. The schedule of connections may be tailored to time intervals chosen to suit a required horizon or granularity suited to operation timescales and constraints.
Said data describing links within a network may include a schedule for variable maximum capacities of said links.
Said scheduling algorithm may be applied to all or some of said data describing connection requests an indefinite number of times.
Preferably said data describing connection requests contains data describing a scheduling priority of a connection request, and said scheduling algorithm may use said data descdbing a scheduling priority to assign a route to said connection request.
Said database may be arranged as an hierarchical collection of objects.
Said database may contain data describing nodes within the network.
The invention includes a network controller adapted to operate the process according to the first aspect.
According to a second aspect of the present invention there is provided a scheduling means for scheduling reservations of a plurality of connections in a communications network comprising a plurality of links, said scheduling means comprising:
means for setting variable ranges for timing and duration of each said connection; means for setting data describing a capacity of each said link; means for identifying a route for each said connection while dynamically adjusting said variable ranges and data describing link capacities so that a said route of each connection conforms to said ranges and said link capacities; and means for storing data describing each said connection and its associated route.
According to a third aspect of the present invention there is provided a network management apparatus capable of performing network management operations in a communications network comprising a plurality of node elements linked by a plurality of link elements; said apparatus comprising:
a database configured for containing data describing a plurality of connection requests each relating to a required connection across said network, said database configured for containing data describing links within said network, and said database configured for containing data describing a schedule of connections and associated routes of said connections; and a connections scheduling means operating to assign a said route to each said connection request.
Said scheduling means may comprise:
means for setting a variable range for timing and duration of each said connection; means for setting data describing a bitrate capacity of each said link; means for searching for a route across said network, corresponding to each said connection request; means for storing data describing a plurality of routes found by said searching means.
Preferably the network management apparatus comprises a display means for displaying data corresponding to said connection requests and said routes.
Brief Description of the D _
For a better understanding of the invention and to show how the same may be carried into effect, there will now be described by way of example only, specific embodiments, methods and processes according to the present invention with reference to the accompanying drawings in which:
Fig. 1 illustrates schematically an overview of a communications network, comprising a plurality of nodes and links; Fig. 2 illustrates components of a network controller incorporating a specific embodiment of the present invention; Fig. 3 illustrates in overview a process operated by a network controller according to a specific method of the present invention; Fig. 4 illustrates components of a connections scheduler comprising the network controller; Fig. 5 illustrates an overview of an operation of the connections scheduler of 5 Fig. 4; Fig. 6 illustrates an object class design of a knowIledge base of the connections scheduler; Fig. 7 illustrates parameters which are entered, in order of precedence; Fig. 8 illustrates a data entry procedure for entering connection requests into the connections scheduler, Fig. 9 illustrates a data entry procedure for entering details of network links into the connections scheduler; Fig. 10 illustrates a data entry procedure for varying bitrate capacities of network links over time; Fig. 11 illustrates steps taken by an inference engine of the connections scheduler to select a valid route of links for each connection request in the knowledge base; Fig. 12 illustrates a diagrammatic representation of a graphical interface display comprising an "on-screen" network view window; Fig. 13 illustrates an example of a display produced by a graphical interface which may be used to set the operational and scheduling criteria for a connection 30 scheduling process; Fig. 14 illustrates an example of a graphical interface display used to show a chosen route for a connection; Fig. 15 illustrates a graphical interface display comprising a network view display with a route of a connection highlighted; Fig. 16 illustrates a graphical interface display service manager window display, showing a list of connections/connection requests; Fig. 17 illustrates a graphical interface display showing two interfaces: an upper interface displaying bitrate capacities of a plurality of network links and allowing a user to graphically change a set of parameters; and a lower display showing bitrate capacity of a selected link and its mean bitrate capacity in use over a time horizon; and their usage over a period of time; Fig. 18 illustrates a graphical interface display showing bitrate capacities of a plurality of network links and their loading over a period of time; and Fig. 19 illustrates a Gant chart display produced at a graphical interface, displaying data describing connections scheduled by the connections scheduler.
Detailed Description of the Best Mode for Canying Out the Invention
There will now be described by way of example the best mode contemplated by the inventors for carrying out the invention. In the following description numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent however, to one skilled in the art, that the present invention may be practiced without using these specific details. In other instances, well known methods and structures have not been described in detail so as not to unnecessarily obscure the present invention.
Referring to Fig. 1 herein a communications network 11 comprises a plurality of node elements 12 each comprising an item of node equipment for example a switch, and a plurality of link elements 13, connecting the node elements, each link element 13 comprising an item of link equipment. Each item of node or link equipment comprises one or a plurality of physical components. In general, each item of node or link equipment supports a plurality of communications channels. Communications traffic data signals are transmitted along the link equipment and through the node equipment over a plurality of connections.
The communications network 11 may comprise a computer network, for example a plurality of personal computers, workstations or the like as the node elements 12 connected by a local area network, comprising a link element. The link elements may comprise a wide area network, broadband network, eg ATM or SDH or the like. The node equipment 12 may comprise a plurality of switch apparatus, as the node equipment 12, and a plurality of terrestrial, atmospheric, or satellite communications links my comprise link equipment linking the node equipment. The communications network may include mobile phone communications apparatus, resident at one or more nodes of the network. A node element may comprise a gateway to another network, for example a worldwide web gateway. In general, the communications network will comprise a variety of different types of node equipment, and a variety of different types of link equipment made by different manufacturers and having differing performance specifications.
Attached to one or more nodes is a network controller 14 which performs network management functions (such as routing connections). The network controller performs a connections scheduling process described in this document.
In the following description of a best mode for carrying out the invention, reference will be made to an asynchronous transfer mode (ATM) network, however the invention is not restricted for operation in an ATM environment, and in general the invention may find applicability in any connection oriented communications system and over a range of transport protocols of which ATM is just one example. In particular, the invention may find applicability in a synchronous digital hierarchy (SIDH) environment.
Referring to Fig. 2 of the accompanying drawings there is shown a schematic diagram of network controller 14. Network controller 14 comprises a general purpose computer, such as a Hewlett Packard 9000 series workstation, comprising a memory 21; a processor 22; an operating system 23; a plurality of communications ports 24 through which data is transferred to and from communications node equipment hardware 25; a management information base (MIB) 26 holding data describing physical resources of a network, eg routes, node equipment, link bitrates; a connections scheduler 27 operating to schedule connections across the network, and a graphical user interface 28 comprising a visual display unit, a pointing device, eg mouse or track ball and one or more data entry devices, the graphical user interface enabling an operator to enter requests for connections into the connections scheduler, and to obtain visual and hard copy data describing scheduled connections or pending requests for connections. Requests for connections may be entered automatically by file transfer. In a further modification, the network controller may be provided with means, eg an application, for automatically requesting connections.
Specific implementations according to the present invention herein address the problem of network congestion by taking advantage of prior knowledge of services which result in a high level of network traffic, where the approximate time and duration of the services are known beforehand, for example distance learning or tele-conferencing services. Herein, there is presented a method of allocating reservations for network connections in advance in an attempt to ensure that the amount of traffic on a particular route of links between source and destination nodes will not exceed a maximum bitrate capacity of each link in that route at any time during the connection.
In order to allocate connections in advance, data describing a list of connection requests specifying start time and duration or end time, as well as information describing the source and destination of each requested connection is required. Data describing network links' bitrate capacities is also required. It is possible to specify a range of values for a start time, an end time and a duration of a connection request rather than give a definite value for each. This allows a degree of flexibility in allocating reservations for connections. For example an application for which the timing of its connection is not of great importance can be accommodated within a relatively large time and duration range, which allows applications with more specific time and duration ranges for their connections to be allocated closer to their required times.
A connections schedule may comprise data describing a list of "time slots" wherein each time slot is associated with data describing a particular route or routes. In order to achieve an allocation of valid routes to requested connections, it is necessary to allocate a route to each requested connection which will conform to the constraints imposed by the maximum capacity of each link in the route.
Obtaining an allocation of valid routes involves:
i) choosing a route of links with enough capacity for a connection; ii) allocating caPacity/resources to connections from links as defined in a chosen route for each connection; iii) scheduling of each connection on a chosen route, such that the links within the network are able to cater for the connections at the requested times and durations of each connection.
The allocation problem is further complicated in that a route for a connection must be chosen while taking into account bitrate capacity constraints of the links in each route. The bitrate capacity constraints vary during and as a result of bitrate capacity allocation. However, capacity allocation can only be done once a route has been chosen. Likewise, allocation of connections is dependent on capacity constraints at a requested time. Considering that a network may have a large number of source and destination nodes, and between each source and destination node there are a multiplicity of possible routes, each compdsing a plurality of links and nodes, and that each link has a bitrate availability which is variable with time of day, making an allocation of reservations in an optimized manner is a computationally difficult task.
In a specific implementation of the present invention presented herein, a method of creating a schedule of connections is to search for a valid route for each requested connection from a list of all possible routes via links between the appropriate source and destination nodes of each requested connection. Such a search can be very complex for a network comprising a large number of links and nodes and so it is desirable to have available a variety of scheduling strategies which can be used in an attempt to ensure that the maximum possible number of connection requests are allocated valid routes. Again, the problem is further complicated due to the capacity constraints of the links varying duhng and as a result of capacity allocations.
Fig. 3 of the accompanying drawings illustrates an overview of data processing operations of a connection scheduling process operated by connections scheduler 27, in context with other functions carried out by other elements of the network controller 27, eg a routing function 31 carried out by a router element. The network controller receives a list of connection requests 30 in the form of connection request data, each connection request specifying a source and one or more destinations. The router attempts to create a list of one or more routes of network links between each connection requests' source node and destination node(s) by processing the connection request data in accordance with a routing algorithm - step 31. One or more possible routes are allocated to each connection request. The connection scheduling process is implemented as operations on data signals describing connections, connection requests, routes and bitrates of links in steps 32 to 35. For each connection request allocated bitrate capacities of the links which are used by a route allocated to that connection request are decreased by an amount of bitrate capacity required by the connection request calculated according to the service type (step 32) so that once a bitrate of a particular link has been allocated to a particular connection request, for a particular period, that same bitrate is not also allocated elsewhere to another connection request. If one or more links in a particular route do not have the required bitrate capacity available to support the requested connection, the connections scheduler attempts to use another of the routes available to that connection request - step 33, until an available route is found which has sufFicient bitrate capacity on all links to carry the service across the requested connection.
Once valid routes have been allocated to all connection requests, or to as many connection requests as valid routes can be assigned, the connection scheduling algorithm adjusts the allocated times and durations of the connections according to the link bitrate capacity available on each route - step 34 - this procedure is described in detail later. Data describing each connection request with data describing its associated allocated route of links (if a valid route was found) and allocated start and end times is entered into a schedule of allocated connections (step 35). The network controller 14 uses the schedule of allocated connections created to implement the allocated connections at the scheduled times.
The particular embodiment of the invention described hereinafter is one in which the connections scheduler 27 is implemented by configuring the network controller as a knowledge base system.
Fig. 4 of the accompanying drawings illustrates a schematic diagram of the knowledge base system 40. The knowledge base system is implemented in a programming environment supporting features such as constraint handling and specifiable searching techniques which aid coding of the knowledge base system. It will be appreciated by those skilled in the art that the knowledge base system could also be implemented using one of a number of other high level programming languages, for example C++, C or Fortran, although constraints based techniques are better implemented using logic programming languages such as Prolog.
The programming environment used in the particular embodiment of the present invention described below is flog Solver/Schedule, which is an objectoriented knowledge base system based on the C++ programming language. Its C++ compatibility means that R should be compilable on most hardware platforms. For constructing the knowledge base system in Hog Soiver/Schedule, first the problem of how to create a scheduling process is formulated, and then represented in object oriented format, in this case in the form of C++ classes. Then, procedures and algorithms which actually perform searches are written, and optimization criteria data and constraint data for scheduling are written. The search algorithm performs according to the optimization criteria with which it is written, and within the constraint data with which it is written.
Knowledge Base System Overview In general, a prior art knowledge base system (KBS) is an expert system, which contains information on a particular subject area and uses this "knowledge" to find a solution to a query defined as a set of facts and a goal relating to the information stored. Prior art constraint satisfaction paradigms have evolved from a combination of artificial intelligence and operations research techniques [Constraint satisfaction in logic programming by Pascal Van Hentenryck published by Massachusetts Institute of Technology Press, Cambridge Massachusetts 02142, ISBN 0-262-08181-4].
In the embodiment according to the present invention herein, the [log Solver/Schedule knowledge base system 40 comprises a knowledge base 41, an inference engine 42 and an interface 43.
The knowledge base 41 comprises a database which stores a schedule of data describing received connection requests, routes assigned to those connection requests by the router, ranges of start times which are acceptable for each connection request, requested durations of connections, ranges of end times of connections which are acceptable for each connection request, and data describing information on the node equipment, and link equipment, in particular data describing available bitrates of links, and of virtual paths and virtual circuits in the communications network. This data can be stored in the form of antecedentcon sequence rules or, in the case of an llog Solver/Schedule implementation, as objects.
The inference engine 42 comprises an algorithm or a set of algorithms which is applied to and updates the data in the knowledge base 41 in order to find solution(s) to a given query. Several widely-used known inference engine algorithms may be used in the specific implementation herein, including forward or backward chaining algorithms with breadth or depth first search. Some known knowledge base systems, such as llog Solver/Schedule, allow complex userdefined algorithms and constraints to be written. Several inference engine algorithms are available within the llog Solver/Schedule product, and in the best mode herein are selected according to the criteria and constraints to be applied.
-1 7- The interface 43 links the knowledge base 41 and inference engine 42 with users, eg a network operator operating graphical user interface 28, or external applications such as router 31. The interface may be divided into a user interface for querying the knowledge base and a developer interface for creating the knowledge base. Data found by the inference engine are returned to the user or external applications, and knowledgebase information and queries are entered to the knowledge base from the user or external application, via the interface.
Connections Scheduling Process Operation Fig. 5 of the accompanying drawings illustrates an overview of operation of a connections scheduling process carried out by connections scheduler 27. An inference engine algorithm is applied to the data of the knowledge base (step 51). The inference engine algorithm attempts to find a valid route of links for each connection request according to a predetermined criteria, eg least hops. If a valid route is found it is entered into a schedule comprising the knowledge base 41 (step 52). This schedule is used by the network controller to implement the connections (step 53).
Components of the knowledge base system 40 representing the specific embodiment of the present invention will now be described.
Schedule Knowledge Base Referring to Figs. 6 to 8 herein, there will now be described construction and operation of a schedule comprising the knowledge base 41 of Fig. 4 herein.
Fig. 6 illustrates an object class design of the knowledge base. A schedule object referred to as CtSchedule object shown as 61 in Fig. 6 is created, with an initially unlimited number of timeslots.
The schedule object CtSchedule comprises a special llog Solver/schedule library class which supports search and constraint handling techniques. Schedule object CtSchedule has two special llog Solver/Schedule library sub- classes: first and second sub classes CtIntervalActivity 62 and CtDiscreteResource 63 respectively, both of which inherit all CtSchedule's private and public attributes, variables and functions.
First sub class CtintervalActivity 62 is used to represent a communication activity associated with a timeslot of CtSchedule and can use the following format:
CtintervalA ctivity [StartMin StartMax - - DurMin DurMax - - > EndMin EndMaxl where first entry pair (StartMin and StartMax) relates to start time domain of the communication activity ranging between minimum start and maximum start values. Second entry (DurMin and DurMax pair) relates to duration domain of the communication activity ranging between minimum duration and maximum duration values. Third entry pair (EndMin and EndMax) relates to end time domain of the communication activity, ranging between minimum end and maximum end values.
Second sub class 63 CtintervalActivity has a sub-type 64 Connection which inhedts all CtintervalActivity private and public attributes, variables and functions of second subclass 63.
A Connection object 64 contains values describing an actual network connection or connection request. As well as the time and duration of a connection, a Connection object comprises:
a character vadable identifying the connection (conld); an integer vahable representing the bitrate capacity required of each link used by the connection (capacity); and routes (65 in Fig. 6) - an array of routes defined using an [log Solver/Schedule library class CtCollection, each route comprising an array of links of NetworkLink objects 66. Each route has a route identifier (routeId) stored as first element in the array and pointers to NetworkLink objects for each link in the route in the remaining array elements.
A Boolean variable schedule denotes that Connection object is a connection request to be scheduled ("true" by default).
A Boolean variable schedule denotes that Connection object is a scheduled connection ("false" by default).
Other object variables are as follows:
chosen StartTime: the scheduled start time of the connection.
chosenEndTime: the scheduled end time of the connection.
chosenRoute: A variable containing routeId value of route for the connection scheduled by the connection scheduling process.
Further data describing a connection request may be included in Connection, such as priority information.
A NetworkLink object has a name variable to identify itself and is a subtype of the CtDiscreteResource llog Solver/Schedule Library class and therefore inherits all its private and public attributes, variables and functions. CtDiscreteResource contains a capacity variable which represents the maximum theoretical capacity for a resource, in the case of the present embodiment the bitrate capacity of a link. In addition, a sub-class Timetable 67 may be associated with a CtDiscreteResource object. This enables the maximum capacity of a network link in practice to vary over time.
Referring to Fig. 7 herein, there is illustrated entry of constraint parameters to the knowledge base in order of preference. In step 71 there is set the start time of CtSchedule to 0 and end time to 86400, eg corresponding to the number of seconds in a 24 hour day. In a further development of the best mode herein, a schedule of connections may be rolled forward in real time such that at any time connections over a forward moving look ahead period may be scheduled. A time period granularity need not be set on a per second basis, but may be varied by a user.
In step 73 the time and duration of the connection object is set to default values: StartMin, DurMin and EndMin becoming 0 and StartMax, DurMax and EndMax becoming 86400:
Ctinterval activity [0.. 86400 - 0... 86400 - > 0... 864001 Actual data for connection requests can be entered into the knowledge base - step 74. This may be done manually by the user or downloaded from a previously created knowledge base.
Referring to Fig. 8 of the accompanying drawings there is illustrated a data input operation of the connections scheduler 27 in which data characterizing each of a plurality of requested connections is input. The data may be entered manually by an operator typing a keypad of the graphical user interface 28, or may be entered automatically, received over the network from a plurality of subscriber equipment, eg at source nodes.
Data describing each connection request is entered. Such a connection request may represent a request for a point to point service. Where a point to multipoint service or a multipoint to multipoint service is required, such services may be broken down into a number of individual discrete connection requests and each entered individually into the connections scheduler.
Firstly, a numerical value representing a number of connection requests to be entered is input in step 81. Data describing each connection request can then be entered into the knowledge base - step 82. For each connection request a character variable is entered as an identifier for the connection (conId), followed by a space followed by an integer value for the bitrate capacity required by the connection request (capacity in Connection object) along with data describing a peak bit rate required during the requested connection and an average bit rate required during the requested connection. A numerical value data corresponding to the number of possible routes of links between a source and a destination of the requested connection is then input. The numerical value is produced by the router. Further data describing the requested connection is also input, including data describing a service type to be carried on the connection, a variance of the connection, a number of route options to apply to the connection, and priority values ie a value which assigns an importance of scheduling the connection, relative to other connections. Data describing the priority of the connection may be provided by a subscriber, or may be determined from a data describing a service contract, stored in the management information base 26. In step 83, for each possible route of links a numerical value representing the number of links in the possible route is entered followed by a space and then a route identifier. In step 84, for each link in the possible route, a link identifier is entered (name).
This link identifier is identical to the name of a network link object representing the appropriate network link (entered into the knowledge base as described below). This is repeated until there are no more links in the route. The route data entered as described is used to create a routes array in the Connection object. If there are further possible routes to be entered the route data entry procedure comprising steps 83, 84 is repeated until no more routes for the current connection request are required.The time and duration of the connection request is entered next in step 85. Temporal constraints on a connection request may include a minimum start time, a maximum start time, a minimum connection duration, a maximum connection duration, a minimum end time, and a maximum end time. This involves entering values for the following variables:
StartMin, StartMax, DurMin, DurMax, EndMin and EndMax.
It is possible to omit entry of one of the StartMin, DurMin or EndMin data values, the omitted value being calculated using the expression: EndMin StartMin + DurMin. The same also holds for the maximum values.
The connection request data entry procedures comprising steps 82 to 85 are repeated until the number of connection requests entered is equal to the number of connection requests declared at the start of the connection request data entry procedure.
In step 77, the bitrate capacity of the network link (capacity in CtDiscreteResource object) is set to a default maximum value. Data describing the actual network link bitrate capacity available in practice and a network link identifier can be entered into the knowledge base (step 78). Again, data entry may be done manually by an operator or downloaded from a management information base. In the present embodiment of the connection scheduling process only data describing the network links is required to be entered into the knowledge base. This data may be obtained from the management information base 27. It will be apparent to those skilled in the art that the connections scheduler can be expanded to include other network resource constraints such as maximum node capacity.
The data entry procedure follows an order of data entry. Referring to Fig. 9 of the accompanying diagrams herein, firstly a number of links to be entered is input in step 91. For each network link, a link identifier (name) followed by a space and a numerical value representing the maximum bitrate capacity of the network link is entered (capacity in CtDiscreteResource object) step 92. This is repeated until the number of links entered is equal to the number of links declared at the start of the data entry procedure.
Step 79 in Fig. 7 is optional and is used for entering bitrate capacities which vary over time for network links. This can be useful if it is known that demand on particular network links is low or high at certain times of the day. This may be done manually by an operator or downloaded from a previously created schedule of the knowledge base. The data entry procedure follows a predetermined order and data typing as illustrated in Fig. 10 herein.
Referring to Fig. 10 herein, data describing the number of links whose bitrate capacities are to be modified is entered - step 101. For each link an appropriate link identifier (name) is entered - step 102. For each new bitrate capacity for the link data describing a time from which the new capacity is valid followed by a space and then a time at which the new capacity is no longer valid, followed by a numerical value representing the new bitrate capacity - step 103 times and new capacity value for the link are entered until 'A" is inputted for one of the values.
Connections Scheduling Process Inference Engine Strategy Referring to Fig. 11 of the accompanying drawings herein, there is illustrated a schematic diagram showing the steps taken by inference engine 43 to select a valid route of links for each connection request in the knowledge base 41. A valid route is one in which the connection begins within the connection request's StartMin and StartMax time range and terminates within the connection request's EndMin and EndMax range (thereby adhering to the connection request DurMin and DurMax range). In a valid route, each network link in the route has sufficient bitrate capacity to fulfill the connection request's bitrate capacity requirements throughout the duration of the connection.
In the specific embodiment of the connections scheduler presented herein, the first route entered for each connection request is considered first by the inference engine - step 110. This first route is given by routeId in the first element of the routes array of a connection request.
In step 111 if each link in the route has sufficient bitrate capacity to fulfill the connection request bitrate capacity requirements, the bitrate capacity of each link is adjusted accordingly, ie capacity (requirement) value in the connection request Connection object is subtracted from capacity value in the MiscreteResource object of each link in the route. However, if a particular network link's bitrate capacity is lower than the bitrate capacity required by the connection request and the connection request's start and end time ranges enables its duration to vary to a time range when the required bitrate capacity is available, the start and end time of the connection will be adjusted accordingly. An example may be:
Network link A with bitrate capacity 500 Mb/s Network link B with bitrate capacity 500 Mb/s Connection X requires bitrate capacity of 400 Mb/s on links A and B with domain: CtintervalActivity [0 - - 50. - 300 - - > 50.. 3501 Connection X requires bitrate capacity 300 Mb/s on link A with domain: CtintervalA ctivity [0.. 100 - - 100.. 300 - - > 100.. 3501 Then Connection X will be constrained to the domain:
CtIntervalActivity [0 - - 50.. 300 - - > 50.. 3501 Connection Y will be constrained to the domain:
CtintervalActivity [50 - - 100.. 300 - - > 150.. 350) If the connection request's first route is not a valid route (this is checked in step 112) the inference engine algorithm selects another route comprising different network links from the connection requests routes array (step 113) and steps 111 and 112 are repeated. For example:
A network link A with bitrate capacity 500 Mb/s A network link B with bitrate capacity 500 Mb/s Connection X requires bitrate, capacity 400 Mb/s on links A and B with domain: Connection X: CtintervalActivity [0.. 50 - 50.. 300 - - > 50.. 350j Connection Y: CtintervalActivity [0.. 100 - 100.. 300 - - > 100.. 3501 On scheduling connection X first connection Y will be altered:
Connection X CtintervalActh4ty[0 - - 50 - - > 501 Connection Y: Ctinterva]ActMty [50.. 100 - - 100.. 300 - - > 150.. 3501 Connection Y would then be scheduled: Connection X CtintervalActivfty [0 50 - - > 501 Connection Y: CtintervalActivity [50 - - 100 - - > 1501 If the order of scheduling was reversed then connection Y would be scheduled as:
Connection Y: CtintervalActivity [0 - - 100 - - > 1001 As connection X requires bitrate capacity such that the total capacity at a start time before 50 would exceed that allowed, and connection X is constrained to a start time before 50, this connection would fail to be scheduled.
Once a route has been chosen for a connection request, -chosenRoute in the connection request's Connection object is set to the routeId of the route. The schedule variable of the connection request is set to "false" and its scheduled variable is set to "true". Scheduled connection requests are referred to as.connections". Data describing the actual scheduled start time is stored in the connection's chosenStartTime variable. Data describing the actual scheduled end time of the connection is stored in its chosenEndTime variable. Once a route has been chosen for a connection, the adjusted bitrate capacities of the links in the chosen route will be stored in the knowledge base so that each subsequent connection request will have to conform to these new bitrate capacity constraints.
in the present specific embodiment of the invention, if no valid route is found for a connection request the connection request will be left unscheduled.
The present specific method applies a variety of routing strategies indicated by step 114 in Fig. 11. Using a particular strategy may also result in more connections being scheduled depending upon the communication network and connection request values. For example, a default scheduling strategy attempts to set each connection request's start and duration domains to the lowest possible values. A variation on this scheduling strategy included in the present invention is to attempt to set each connection request's start and duration 1 domains to the highest possible value. Other scheduling strategies included in the present invention are:
"Schedule most constrained": Connection requests with smallest domains (most constrained ranges) have their domains set to lowest possible values first.
"Schedule minimum choice": Lowest value of the minimum values of each domain are set first.
"Schedule maximum choice": Lowest value of the maximum values of each domain are set first.
"Schedule most constraints": Variable which has most constrained domain is set to its lowest possible value first.
By applying a suitable scheduling strategy, it is possible to optimize the searching based on specified search criteria. One example of an optimization is that a link should be fully fitted with connection requests before moving on to a next link. A second example of an optimization is to balance a loading across a plurality of links of the network. By applying the scheduling strategies, there may be achieved a flexibility to optimize the search against specified criteria. If a scheduling strategy is not applied, then K may not be possible to optimize a schedule as well as if an above scheduling strategy were applied, and secondly a solution for all connection requests may not be found, only a partial solution for some connection requests. Thirdly, the scheduling could take an unacceptably high amount of computer processing time, so that the scheduling is not achieved for a period of days to weeks.
An advantage of the approach adopted in the best mode herein, may be that the scheduling process may be adapted for scheduling connections for a 1 f plurality of different transport or traffic types by variation of the constraint data which is input.
In an implementation of the process as configured for communications networks operating the ATM transport types, constraint data is written specific to ATM. For example, one of the constraints may be allocation of bursty traffic data to routes, in accordance with a known algorithm which determines a required bitrate capacity on a connection for carrying traffic data of a specified "burstiness", for example, although the traffic data may have a peak bitrate of X MBitsls, the allocated bitrate capacity on a link according to the algorithm may only be Y IVIBitsls, where Y is less than X according to a known formula of burstiness divided by mean bitrate. In general, the constraint data is written in to the connections scheduler at compilation time, the constraints being selected according to knowledge of the particular traffic type and transport mechanism for which reserved connections are to be scheduled.
Connection Scheduling Process User Interface Figs. 12 to 19 herein illustrate an overview of features available at of the graphical user interface 28 by which an operator of the connections scheduier can obtain visual data and views of scheduled connections across a communications network in the form of interactive window displays on a visual display monitor of the graphical user interface of the network controller. Details of how these displays are generated will not be described as all displays are programmed using conventional techniques known to those skilled in the art to display data generated by the connections scheduler and data present on the management information base. The intent is to illustrate how the specific embodiment connections scheduler may be used in practice.
Fig. 12 illustrates a diagrammatic representation of an on-screen network view presented as a display at graphical user interface 28 of the network controller. The network view comprises a window from which sub-window and -1 dialog displays can be invoked. The network view consists of a menu bar 121 and a graphical representation of the communications network 122. Network elements such as nodes and other pieces of equipment are represented by icons 123 and the links between nodes represented as lines 124. It is possible to select any of the links and bring up corresponding menu and dialog box displays to set attributes of the selected links from the network view. The network link data entry procedure described in the schedule knowledge base section above may be invoked by using the network view at the graphical user interface.
Fig. 13 illustrates a dialog box display which can be used by an operator to control the connection scheduling process at the graphical user interface 28 of the network controller. To select functions the operator selects one or more diamond shaped icons using a pointing device in function groups displays 131, 132 or 133 and then selects "Apply and Close" button 134 to apply the scheduling function selected or close button 135 to cancel the connection scheduling process. Functions in group 131 are used to invoke the connection scheduling process in various ways: "Schedule Pending Only" will schedule reservations for all connection requests which have not yet been scheduled (initially all connection requests will be unscheduled) "Reschedule All Connections" will apply the connection scheduling process to all connection requests in the knowledge base. The functions in group 132 will select which of the six scheduling strategies (described in Connection Scheduling Process Inference Engine Operation above) will be used in the connection scheduling process. Function group display 133 allows selection of one of two different algorithms for calculation of capacity usage.
Fig. 14 illustrates a dialog box display which can be used to show a chosen route for a connection. A list of connections is given in a scroll box 141. The operator can select one of the connections in the scroll box which then becomes highlighted 142. Selecting a "Route" button 143 will display the chosen route for the highlighted connection in the network view window.
Fig. 15 illustrates a network view with the route corresponding to a connection selected using the dialog box display in Fig. 14 highlighted. The network links 153 - 156 in the chosen route between source node 151 and destination node 152 are highlighted in the network view display.
is Fig. 16 illustrates a service manager window display at graphical user interface 28, displaying a list of scheduled connections and unscheduled and connection requests. The total number of scheduled connections and unscheduled connection requests is displayed 161 along with amount of unscheduled connection requests 162 and scheduled connections 163. The number of connection requests which have failed to be scheduled is also shown 164. Each con nection/connection request is displayed in a scroll box 160. For each con nection/con nection request displayed the following information can be viewed:
Status 165 (whether a connection is scheduled or K scheduling is pending); A numerical identifier 166 (given by ConId variable); Information about customer who made the connection request 167; & The start time 168 and end time 169 of the connection/connection request; The number of possible routes of the connection/connection request 1610; and Information about the type of application to which the con nection/con nection request relates 1611.
1 1 U A con nection/con nection request in the list may be selected by the operator, which is then shown highlighted 1612. For the selected con nection/con nection request R is possible to display its chosen route in the network view window by selecting a "Display" icon 1615. Selecting "Schedule" icon 1614 will bring up the dialogue box illustrated in Fig. 13 as described above.
Figs. 17 and 18 show displays produced by the connections scheduler of a network links' bitrate capacity and usage over a period of time for a plurality of scheduled connections.
In Fig. 17, there is illustrated two different displays overlaid on each other on a single display screen. The operator may switch from display to display using a pointing device, eg a mouse or trackball device at the graphical user interface 28. Illustrated in the lower section of Fig. 17 is a schedule connections summary data window which shows a display of average bit rate 171 and peak bit rate 172 over a period 00.00 hours to 13.00 hours between a second port of a first ATM switch (ATW14 (port 2)) and a third port of a second ATM switch (ATIVIC3 (port 3)). The schedule connections summary data display also illustrates a maximum bit rate capacity 173 of the link. A network operator may visually determine from the schedule connection summary data display the bitrate utilization of a link over a period of time, and easily determine by inspection any periods when the average or peak bit rate approaches the maximum available capacity 173 allocated to the connection.
A link problems display, partially shown in an upper part of Fig. 17 shows traffic over a selected link. The operator may alter the maximum capacity constraint for various periods of time by selecting the time period, and entering the revised capacity. An operator can compare a link with a connection visually by selecting two different displays on the same monitor as shown in Fig. 17.
In Fig. 18 herein, a display of a link load summary view is shown. Utilization of each of a plurality of links over time is shown, the utilizations being displayed next to each other, for easy comparison. For each link there is displayed a bar chart of percentage of maximum link capacity against time. Different levels of utilization are color coded, and where utilization is approaching its maximum, for example between hours 6.00 and 7.00, 181 the display may adopt a distinct color, eg red or black, visually highlighting to the network operator that during that period the link is approaching its maximum utilization and there is a danger of overloading the link. By comparing a plurality of links on a single view at the network controller, a network operator may gain an overall view of network loading. This provides the operator with useful information for managing the connections over various links in such a way as to average out the overall traffic loading on the network due to the scheduled connections, avoiding any periods where particular links become overloaded, and balancing out the requested connections over a plurality of different links and spread out over time.
Fig. 19 herein illustrates a Gant chart display produced at the graphical user interface, displaying data generated by the connections scheduler which shows start and end time domains of each of a plurality of connection requests and the actual connection time period scheduled for these connections. A vertical axis of the chart represents a list of connection requests and a horizontal axis of the chart represents a 24 hour day, divided into one hour intervals. A start time domain for a connection request is represented by a horizontal line 191 which has a vertical bar 192 at its leftmost end representing the StartMin value and a vertical bar 193 at its rightmost end representing the StartMax value of the connection request. An end time domain of a connection is represented over a horizontal line (of different color to the start time domain line on the actual screen display) 194 which has a vertical bar at its leftmost end representing the EndMin and a vertical bar 195 at its rightmost end representing the EndMax value. The duration of the connection as scheduled is represented by a thick black horizontal 1 line 196 with its leftmost end representing the actual connection start time and its rightmost end representing the actual connection end time.
The Gant chart display as illustrated in Fig. 19 enables a human operatorof a network controller apparatus to obtain a visual summary of timing of scheduled connections across a network in easily understandable format. Using a display as illustrated with reference to Fig. 19, the network operator may be able to give fast and accurate advice to a subscriber who has requested a connection, confirming the details of start time, end time and duration of the subscriber's scheduled connection. This also gives the operatorldeveloper insight into how the connections have been scheduled within time constraints, as a result of the algorithms and constraints in operation.
A network operator at graphical user interface 28 can switch between different display types as illustrated in Figs. 12 to 19 herein, moving from display to display interactively using the pointing device of the graphical user interface.
Claims (20)
1. A machine executable process for scheduling reservations for a plurality of connections in a communications network comprising a plurality of links, said process comprising the steps of:
creating a database configured for storing:
connection request data describing requests for a plurality of connections; route data describing a plurality of available routes associated with said connection requests; and applying a scheduling algorithm to said database said algorithm assigning a said route data to each said connection request data according to a constraint data to produce a schedule of data describing each said connection and its corresponding assigned route.
2. The process as claimed in claim 1 wherein said constraint data comprises:
a timing data describing timing and duration of each said connection; and a capacity data describing a bitrate capacity of each said link; and said scheduling algorithm performs the steps of:
searching said route data for a route for each connection request while dynamically adjusting said timing within preset variable ranges and dynamically adjusting said link capacities to find a said route of each connection which 30 conforms to said ranges and said link capacities; and I storing said schedule of data describing each said connection and its associated assigned route in said database.
3. The process as claimed in claim 2, wherein said constraint data is used to reduce a search space of possible route data solutions, prior to said step of searching.
4. The process as claimed in claim 2 or claim 3, wherein said schedule data is obtained according to a predetermined scheduling objective lo data.
5. The process as claimed in any one of claims 2, 3 or 4, wherein an optimized schedule data is obtained by optimizing a said search according to a predetermined optimization criteria.
6. The process as claimed in any one of claims 2, 3, 4 or 5, wherein said step of searching is performed according to one or more searching algorithms selected from a set of searching algorithms.
7. The process as claimed in any one of the above claims, wherein said database comprises a knovAedge base and said scheduling algorithm is implemented by means of an inference engine.
8. The process as claimed in claim 7, wherein said connection request data describing connection requests, and said schedule data are stored in separate areas of said knowledge base.
9. The process as claimed in any one of the above claims, wherein said schedule data of connections with associated routes comprises a schedule for a 24 hour day divided into one second intervals.
10. The process as claimed in any one of the above claims, wherein said database is configured to store link data describing links within a network said link data including data describing maximum capacities of said links.
11. The process as claimed in any one of the above claims, wherein said scheduling algorithm is applied to said connection request data a plurality of times.
12. The process as claimed in any one of the above claims, wherein said connection request contains data describing a priority of reserving a connection and said scheduling algorithm uses said data describing a priority to assign a route data to said connection request data.
13. The process as claimed in any one of the above claims, wherein said database is arranged as an hierarchical collection of objects.
14. The process as claimed in any one of the above claims, wherein said database contains node data describing nodes within the network.
15. A network controller adapted to operate said method as claimed in any one of the above claims.
16. A scheduling means for scheduling reservations for connections in a communications network comprising a plurality of links, said scheduling means comprising:
data storage means configured for storing connection request data describing a request for a plurality of connections; route data describing a plurality of available routes associated with said connection requests; 1 schedule data comprising data describing each said connection and corresponding assigned route; and data processing means operating to assign a said route data to each said connection request data, according to a set of pre-determined constraint data.
17. A scheduling means for scheduling reservations of a plurality of connections in a communications network comprising a plurality of links, said scheduling means comprising:
means for setting variable ranges for timing and duration of each said connection; is means for setting data describing a capacity of each said link; means for identifying a route for each said connection while dynamically adjusting said variable ranges and data describing link capacities so that a said route of each connection conforms to said ranges and said link capacities; and means for storing data describing each said connection and its associated route.
18. A network management apparatus capable of performing network management operations in a communications network comprising a plurality of node elements linked by a plurality of link elements; said apparatus comprising:
a database configured for storing data describing a plurality of connection requests each relating to a required connection across said network, said database configured for containing data describing links within said network, and 1 I,- 'li said database configured for containing data describing a schedule of connections and associated routes of said connections; and a connections scheduling means operating to assign a said route to each 5 said connection request.
19. A network management apparatus as claimed in claim 18, wherein said scheduling means comprises:
means for setting a variable range for timing and duration of each said connection; means for setting data describing a bitrate capacity of each said link; means for searching for a route across said network, corresponding to each said connection request; means for storing data describing a plurality of routes found by said searching means.
20. A network management apparatus as claimed in claim 18 or 19, comprising:
display means for displaying data corresponding to said connection 25 requests and said routes.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US96864197A | 1997-11-12 | 1997-11-12 |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9726500D0 GB9726500D0 (en) | 1998-02-11 |
GB2331431A true GB2331431A (en) | 1999-05-19 |
GB2331431B GB2331431B (en) | 2000-01-26 |
Family
ID=25514551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9726500A Expired - Fee Related GB2331431B (en) | 1997-11-12 | 1997-12-16 | Reservations scheduler for connections in a communications network |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2331431B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2416088A (en) * | 2004-06-24 | 2006-01-11 | Siemens Ag | Allocating traffic carrying capacity of network links |
-
1997
- 1997-12-16 GB GB9726500A patent/GB2331431B/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2416088A (en) * | 2004-06-24 | 2006-01-11 | Siemens Ag | Allocating traffic carrying capacity of network links |
GB2416088B (en) * | 2004-06-24 | 2007-03-14 | Siemens Ag | Telecommunication system |
Also Published As
Publication number | Publication date |
---|---|
GB9726500D0 (en) | 1998-02-11 |
GB2331431B (en) | 2000-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6438110B1 (en) | Reservation of connections in a communications network | |
US5974237A (en) | Communications network monitoring | |
EP0973296B1 (en) | Controlling devices on a network through policies | |
US9760587B2 (en) | Tool for managing computer resources and infrastructures and networks | |
US7305623B2 (en) | Method and apparatus for managing and representing elements in a network | |
EP0849912A2 (en) | Communications network monitoring | |
US10230850B2 (en) | IP telephony network using a configuration map for organizing sites | |
WO1997035419A1 (en) | Method and system for rehome optimization | |
US7822036B2 (en) | Method and system for policy-based routing in a private network-to-network interface protocol based network | |
US20130132546A1 (en) | Tool for managing resources and computer infrastructures and networks | |
EP4187814A1 (en) | Data processing method and device | |
US6842780B1 (en) | Method of management in a circuit-switched communication network and device which can be used as a node in a circuit-switched communication network | |
EP2187567A1 (en) | Predictive method and system for optimizing demands of connectivity services | |
CA2221765A1 (en) | Communications network monitoring | |
EP0849910A2 (en) | Communications network monitoring | |
EP0748142A2 (en) | Broadband resources interface management | |
US20180278495A1 (en) | Provisioning of telecommunications resources | |
GB2331431A (en) | Communications network | |
GB2332807A (en) | Communications network | |
EP1195075B1 (en) | Improvements in, or relating to, telecommunications service provision | |
JP3856837B2 (en) | Method of management in circuit switched communication network and apparatus usable as node in circuit switched communication network | |
US6643288B1 (en) | System and method for establishing SPVx connections | |
US7212533B2 (en) | Method of managing a telecommunication network and a network management unit for implementing the method | |
EP1127438A1 (en) | Management of terminations in a communications network | |
CN115225612B (en) | Management method, device, equipment and medium for K8S cluster reserved IP |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PCNP | Patent ceased through non-payment of renewal fee |
Effective date: 20151216 |