Transaction integrity for network services configuration
First Claim
1. A method comprising:
- receiving, by a controller that provisions services for transporting packet flows within a network, a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network;
determining, by the controller, a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber or the customer, wherein each network resource of the plurality of network resources is associated with configuration data for the network resource;
storing, by the controller, a database of identifiers for the plurality of network resources, the identifiers mapping to respective software representations in a network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device;
mapping, by the controller using the database of identifiers, the respective identifiers for the plurality network resources to the respective software representations in the network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; and
only upon acquiring a lock that defines a lock state for the respective software representations of the plurality of network resources of the at least one network device and by the controller, modifying the configuration data associated with each of the plurality of network resources of the at least one network device to provision the service, wherein the lock for the software representations is acquired from the network-wide coordination repository, and wherein the lock for the software representations provides the controller with exclusive access to each of the plurality of network resources to modify the configuration data associated with each of the plurality of network resources corresponding to the lock.
1 Assignment
0 Petitions
Accused Products
Abstract
In some examples, a controller provisions services for transporting packet flows within a network. A controller service provisioning module receives a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network. The service provisioning module determines a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber. A locking unit of the service provisioning module acquires a lock from a network-wide coordination repository that stores a software representation for each of the network resources, the lock providing exclusive configuration access to the service provisioning module for the network resources. The service provisioning module, only upon the locking unit acquiring the lock for the network resources, configures the network resources to provision the service.
-
Citations
21 Claims
-
1. A method comprising:
-
receiving, by a controller that provisions services for transporting packet flows within a network, a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network; determining, by the controller, a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber or the customer, wherein each network resource of the plurality of network resources is associated with configuration data for the network resource; storing, by the controller, a database of identifiers for the plurality of network resources, the identifiers mapping to respective software representations in a network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; mapping, by the controller using the database of identifiers, the respective identifiers for the plurality network resources to the respective software representations in the network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; and only upon acquiring a lock that defines a lock state for the respective software representations of the plurality of network resources of the at least one network device and by the controller, modifying the configuration data associated with each of the plurality of network resources of the at least one network device to provision the service, wherein the lock for the software representations is acquired from the network-wide coordination repository, and wherein the lock for the software representations provides the controller with exclusive access to each of the plurality of network resources to modify the configuration data associated with each of the plurality of network resources corresponding to the lock. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A controller that provisions services for transporting packet flows within a network, the controller comprising:
-
one or more processors coupled to a memory; a service provisioning module executed by the one or more processors to; receive a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network; determine a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber or the customer, wherein each network resource of the plurality of network resources is associated with configuration data for the network resource; store a database of identifiers for the plurality of network resources, the identifiers mapping to respective software representations in a network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; map, using the database of identifiers, the respective identifiers for the plurality network resources to the respective software representations in the network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; and a locking unit executed by the one or more processors to acquire a lock for the respective software representations from the network-wide coordination repository, the lock for the respective software representations providing the controller with exclusive access to each of the plurality of network resources to modify the configuration data associated with each of the plurality of network resources corresponding to the lock, wherein the service provisioning module, only upon the locking unit acquiring the lock that defines a lock state for the respective software representations of the plurality of network resources of the at least one network device, is executed by the one or more processors to modify the configuration data associated with each of the plurality of network resources of the at least one network device to provision the service. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-readable medium comprising instructions for causing one or more programmable processors to:
-
receive, by a controller that provisions services for transporting packet flows within a network, a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network; determine, by the controller, a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber or the customer, wherein each network resource of the plurality of network resources is associated with configuration data for the network resource; store a database of identifiers for the plurality of network resources, the identifiers mapping to respective software representations in a network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; map, using the database of identifiers, the respective identifiers for the plurality network resources to the respective software representations in the network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; and only upon acquiring a lock that defines a lock state for the respective software representations of the plurality of network resources of the at least one network device and by the controller, modify the configuration data associated with each of the plurality of network resources of the at least one network device to provision the service, wherein the lock for the software representations is acquired from the network-wide coordination repository, and wherein the lock for the software representations provides the controller with exclusive access to each of the plurality of network resources to modify the configuration data with each of the plurality of network resources corresponding to the lock.
-
-
21. A method comprising:
-
receiving, by a controller that provisions services for transporting packet flows within a network, a service request that comprises a definition for a service to be provided by the network for a subscriber or a customer of the network; determining, by the controller, a plurality of network resources of at least one network device to be configured to implement the service in the network and apply the service to the packet-based network traffic of the subscriber or the customer, wherein each network resource of the plurality of network resources is associated with configuration data for the network resource; storing, by the controller, a database of identifiers for the plurality of network resources, the identifiers mapping to respective software representations in a network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; mapping, by the controller using the database of identifiers, the respective identifiers for the plurality network resources to the respective software representations in the network-wide coordination repository that stores the respective software representations of the plurality of network resources of the at least one network device; and by the controller for each network resource from the plurality of network resources of the at least one network device; acquiring a lock that defines a lock state associated with the software representation of the network resource, the software representation for the network resource being stored by the network-wide configuration repository, wherein the lock provides the controller with exclusive access to the network resource to modify the configuration data associated with the network resource corresponding to the lock; and only in response to acquiring the lock, modifying the configuration data associated with the network resource of the at least one network device to at least partially provision the service.
-
Specification