| CPC H04L 41/0823 (2013.01) [H04L 41/0873 (2013.01)] | 10 Claims |

|
1. An apparatus, comprising:
at least one processor and at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to perform:
receiving configuration sets from at least two network automation functions, each network automation function determining an associated configuration set that is optimal for achieving an objective of the network automation function, and
determining an optimal network configuration based on the associated configuration set received from the at least two network automation functions,
wherein an optimal network configuration is a network configuration achieving the best performance target for a network metric, or a network configuration achieving a performance target for a network metric, which is higher than a certain threshold, wherein an optimal network configuration is a network configuration which achieves a maximum quality of service (QOS) for users of the network and is higher than a certain threshold,
wherein the apparatus further comprises a pre-action controller for network automation functions that determines an optimal network configuration by resolving existing configuration conflicts among the network automation functions,
wherein the pre-action controller determines the optimal configuration for the network beforehand, so that the users of the network get maximum QoS when the selected optimal configuration is applied,
wherein the pre-action controller is a separate function from the network automation functions, one layer above the network automation functions in operational hierarchy,
wherein during the process of determining the optimal configuration, if there occurs any conflict between two or multiple network automation functions over a particular parameter or interest, the pre-action controller resolves the conflict instantaneously,
wherein the pre-action controller receives configuration sets from all conflicting network automation functions as inputs with each network automation function providing the controller with the configuration set that is most favorable for the network automation function's objectives and which is expected to deliver the most utility according to the network automation function's objective,
wherein the pre-action controller receives from the conflicting network automation functions as inputs utility functions that map each configuration value to the utility the network automation functions achieve using that value,
wherein based on all the inputs, the pre-action controller determines an optimal system configuration using Nash's social welfare function to resolve conflicts and to compute the optimal network configuration,
wherein the output of the pre-action controller, the optimal network configuration, is used to reconfigure either the network automation functions for the network,
wherein the pre-action controller reconfigures the network automation functions so that they now use the optimal network configuration for any future network control actions, or the pre-action controller may directly configure the network with the optimal network configuration.
|