Method of configuring devices in a telecommunications network

Information

  • Patent Application
  • 20070198665
  • Publication Number
    20070198665
  • Date Filed
    June 22, 2006
    20 years ago
  • Date Published
    August 23, 2007
    19 years ago
Abstract
A method of configuring a telecommunications system to provide a service involving multiple devices is disclosed. The method includes receiving a configuration script specifying a sequence of configuration instructions for configuring at least two of the devices to provide the service, and concurrently executing an instance of the configuration script for each of the at least two devices to configure the at least two devices to provide the service. The method can be used as part of a network management system or service provisioning system.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings accompanying and forming part of this specification are included to depict certain aspects of the invention. A clearer impression of the invention, and of the components and operation of systems provided with the invention, will become more readily apparent by referring to the exemplary, and therefore nonlimiting, embodiments illustrated in the drawings, wherein identical reference numerals designate the same components. Note that the features illustrated in the drawings are not necessarily drawn to scale. Preferred features of the present invention will now be described, purely by way of example, with reference to the accompanying drawings, in which:—



FIG. 1 shows a service management system for a telecommunications network in overview;



FIG. 2 illustrates a Control Template thread control structure



FIG. 3 illustrates asynchronous Control Template operation



FIG. 4 illustrates lock-stepped Control Template operation



FIG. 5 illustrates basic asymmetric operation



FIG. 6 illustrates asymmetric lock-stepped operation



FIG. 7 illustrates a symmetric service example (VRF)


Claims
  • 1. A method of configuring a telecommunications system to provide a service involving a plurality of devices, comprising: receiving a configuration script specifying a sequence of configuration instructions for configuring at least two of the plurality of devices to provide the service; andconcurrently executing an instance of the configuration script for each of the at least two devices to configure the at least two devices to provide the service.
  • 2. A method according to claim 1, wherein the script specifies one or more synchronization points for synchronizing execution of multiple instances of the script, the method comprising synchronizing the concurrent instances of the script at the synchronization point or points.
  • 3. A method according to claim 1, wherein the script specifies a synchronization point dividing the instruction sequence into a first instruction block and a second instruction block, each instruction block comprising zero or more instructions, the method comprising: executing, in a first executing instance of the script, the first instruction block; andexecuting, in the first executing instance of the script, the second instruction block only after a second executing instance of the script has executed the first instruction block, to thereby synchronize execution of the first and second script instances at the synchronization point.
  • 4. A method according to claim 3, comprising executing, in the first executing instance of the script, the second instruction block only after all other executing instances of the script have executed the first instruction block, to thereby synchronize execution of all executing script instances at the synchronization point.
  • 5. A method according to claim 3, wherein the script specifies multiple synchronization points, the method comprising synchronizing execution of the script instances at each synchronization point.
  • 6. A method according to claim 1, wherein the instruction sequence comprises one or more synchronization instructions specifying one or more synchronisation points at which multiple concurrent script instances are to be synchronised.
  • 7. A method according to claim 1, wherein the at least two devices are each associated with a device type, and wherein the script specifies a first sequence of configuration instructions associated with a first device type and a second sequence of configuration instructions associated with a second device type, and wherein executing an instance of the script for a given device comprises selecting one of the first and second instruction sequences in dependence on the device type of the given device, and executing the selected instruction sequence.
  • 8. A method according to claim 7, wherein each of the first and second instruction sequences comprise one or more corresponding synchronization points, the method comprising synchronizing a first instance of the script for which the first instruction sequence is being executed with a second instance of the script for which the second instruction sequence is being executed using the specified corresponding synchronization point or points.
  • 9. A method according to claim 1, comprising, for a sequence of configuration instructions or corresponding sequences of configuration instructions not having associated synchronisation points or corresponding synchronisation points, executing the instruction sequence or corresponding instruction sequences in multiple concurrent instances of the configuration script independently of each other.
  • 10. A method according to claim 1, comprising storing a plurality of configuration scripts, each defining configuration operations for a respective service type, receiving a configuration request specifying a service to be provided, selecting one of the plurality of stored configuration scripts in dependence on the specified service, and executing the selected configuration script to configure the network to provide the specified service.
  • 11. A method according to claim 10, wherein the configuration request specifies one or more devices to be used to provide the service, the method comprising executing an instance of the selected configuration script for each device specified in the configuration request to configure the device.
  • 12. A method according to claim 11, wherein the configuration request specifies a device type associated with a device, the method comprising selecting one of a plurality of instruction sequences specified by the configuration script in dependence on the specified device type, and executing the selected instruction sequence in the script instance for the device.
  • 13. A method according to claim 1, comprising creating a separate processing context for each executing script instance, and executing each script instance within the respective processing context.
  • 14. A method according to claim 1, wherein multiple concurrent script instances are executed as multiple concurrent threads, tasks or processes in a multi-threading, multi-tasking or multi-processing system.
  • 15. A method according to claim 1, wherein multiple concurrent script instances are executed by a virtual machine.
  • 16. A method according to claim 1, comprising signalling completion of the configuration script upon completion of all executing script instances.
  • 17. A method according to claim 1, comprising: receiving a configuration request specifying a service and an action indicator specifying whether a service is to be added or removed;retrieving a configuration script in dependence on the service type of the specified service, the configuration script specifying a first set of configuration instructions for configuring the network to provide a new service of the service type and a second set of configuration instructions for configuring the network to no longer provide a service of the specified type which is currently being provided;selecting one of the first and second sets of instructions in dependence on the action indicator; andexecuting the selected set of instructions to either add a new service or remove an existing service of the specified type.
  • 18. A method according to claim 1, comprising: receiving a configuration request specifying a service and an action indicator specifying a configuration action relating to the service;retrieving a configuration script in dependence on the service type of the specified service, the configuration script specifying at least a first set of configuration instructions for performing a first configuration action and a second set of configuration instructions for performing a second configuration action for a service of that type;selecting one of the first and second sets of instructions in dependence on the action indicator; andexecuting the selected set of instructions to perform the specified configuration action.
  • 19. A method of configuring services in a telecommunications system, comprising: receiving a configuration request specifying a service and an action indicator specifying a configuration action relating to the service;retrieving a configuration script in dependence on the service type of the specified service, the configuration script specifying at least a first set of configuration instructions for performing a first configuration action and a second set of configuration instructions for performing a second configuration action for a service of that type;selecting one of the first and second sets of instructions in dependence on the action indicator; andexecuting the selected set of instructions to perform the specified configuration action.
  • 20. A method according to claim 19, wherein the first, second and specified configuration actions are selected from a group comprising: addition of a service, modification of an existing service, and removal of an existing service.
  • 21. A method according to claim 1, comprising storing information defining a plurality of configuration operations, the configuration script comprising one or more configuration instructions for invoking one or more of the stored configuration operations.
  • 22. A method according to claim 21, wherein, for a given configuration operation, the stored information defines: at least two device-specific implementations of the configuration operation, each implementing the configuration operation for a different device type or model; and
  • 23. A method of configuring devices in a telecommunications network for a service, comprising storing information defining a plurality of configuration operations, the information defining for at least one of the configuration operations: at least two device-specific implementations of the configuration operation, each implementing the configuration operation for a different device type or model; anda device-independent interface usable for invoking each of the device-specific implementations of the configuration operation;the method further comprising executing a configuration script comprising one or more configuration instructions for invoking one or more of the stored configuration operations by way of the defined device-independent interfaces.
  • 24. A method according to claim 23, wherein the configuration script comprises one or more references to configuration operations; and wherein executing the configuration script for a given device comprises: identifying a reference to a configuration operation;selecting a device-specific implementation of the configuration operation in dependence on the given device; andexecuting the selected device-specific implementation of the configuration operation.
  • 25. A method according to claim 1, wherein the configuration script references one or more configuration parameters, the method comprising receiving parameter values for the configuration parameters, and executing the configuration script using the received parameter values.
  • 26. A method according to claim 25, further comprising: receiving, for a parameter referenced in the configuration script, first and second parameter values;executing a first instance of the configuration script for a first device using the first parameter value; andexecuting a second instance of the configuration script for a second device using the second parameter value.
  • 27. A method of provisioning a service in a telecommunications network, comprising: receiving a configuration script comprising configuration instructions for configuring devices of the network to provide the service, the script including a first sequence of configuration instructions associated with a first device type and a second sequence of configuration instructions associated with a second device type;receiving information specifying a device to be used in providing the service, the device being associated with a device type; andselecting one of the first and second instruction sequences in dependence on the device type of the device, and executing the selected instruction sequence to configure the device.
  • 28. A method according to claim 27, wherein the information specifies a plurality of devices to be used in providing the service, the method comprising performing the selecting and executing steps for at least two and preferably each of the specified devices.
  • 29. A method of performing a configuration action in a telecommunications system for a service involving a plurality of devices, comprising: receiving a configuration script specifying a sequence of configuration instructions for performing the configuration action for at least two of the plurality of devices; andconcurrently executing an instance of the configuration script for each of the at least two devices to configure the at least two devices in accordance with the configuration action.
  • 30. A method according to claim 29, wherein the configuration action is one of: addition of a service, modification of an existing service, and removal of an existing service.
  • 31. A computer program or computer program product for configuring a telecommunications system to provide a service involving a plurality of devices, comprising software code adapted, when executed on a data processing apparatus, to perform the steps of: receiving a configuration script specifying a sequence of configuration instructions for configuring at least two of the plurality of devices to provide the service; andconcurrently executing an instance of the configuration script for each of the at least two devices to configure the at least two devices to provide the service.
  • 32. A configuration script for configuring a telecommunications network for a service, the script specifying: a sequence of configuration instructions for configuring devices of the telecommunications network for the service; andone or more synchronisation points for synchronising multiple concurrent instances of the script.
  • 33. A configuration script according to claim 32, wherein the script specifies two or more sequences of configuration instructions, each instruction sequence being associated with a device type and comprising configuration instructions for configuring a device of that type for the service.
  • 34. A configuration script according to claim 33, wherein at least two sequences of configuration instructions each specify one or more corresponding synchronisation points for synchronising multiple concurrent instances of the script for which different ones of the at least two sequences of configuration instructions are being executed.
  • 35. A configuration script according to claim 32, wherein a synchronisation point is specified by way of a synchronisation instruction.
  • 36. A configuration script according to claim 32, wherein an instruction sequence is divided into two or more sub-sequences, the boundary or boundaries between sub-sequences forming one or more synchronisation points at which multiple concurrent instances of the script are to be synchronised.
  • 37. A configuration script according to claim 32, comprising multiple sections, each section comprising configuration instructions for performing a different configuration action, the configuration action preferably being one of: addition of a service, modification of an existing service, and removal of an existing service.
  • 38. A configuration script according to claim 32, encoded as an XML document.
  • 39. A network management system for configuring a telecommunications network to provide a service involving a plurality of devices, comprising an input component adapted to receive a configuration script specifying: a sequence of configuration instructions for configuring at least two of the plurality of devices to provide the service; anda synchronization point dividing the instruction sequence into a first instruction block and a second instruction block, each instruction block comprising zero or more instructions;the system further comprising an execution component adapted to concurrently execute an instance of the configuration script for each of the at least two devices to configure the at least two devices to provide the service;the execution component being adapted to execute, in a first executing instance of the script, the first instruction block; and to execute, in the first executing instance of the script, the second instruction block only after a second executing instance of the script has executed the first instruction block, to thereby synchronize execution of the first and second script instances at the synchronization point.
  • 40. A computer program or computer program product for configuring a telecommunications system to provide a service involving a plurality of devices, comprising software code adapted, when executed on a data processing apparatus, to perform the steps of: receiving a configuration script specifying configuration instructions for configuring at least two of the plurality of devices to provide the service, wherein the at least two devices are each associated with a device type and the script specifies at least two sequences of configuration instructions associated with respective device types, each of the instruction sequences specifying one or more corresponding synchronization points;concurrently executing respective instances of the configuration script for each of the at least two devices to configure the at least two devices to provide the service, a respective one of the instruction sequences being executed for each instance of the configuration script depending on the type of the device being configured; andsynchronizing the concurrently executing instances of the script for which respective ones of the instruction sequences are being executed using the specified corresponding synchronization point or points.
Priority Claims (1)
Number Date Country Kind
GB 0603360.9 Feb 2006 GB national