| CPC H04L 41/12 (2013.01) [H04L 67/12 (2013.01)] | 16 Claims |

|
1. A method comprising:
receiving a high-level task to be completed by a plurality of nodes configured in a network, wherein the plurality of nodes includes a master node and a plurality of worker nodes;
receiving the high-level task at a task engine of the master node, wherein the task engine delegates the high-level task to a plugin of a plurality of plugins at the master node;
dividing the high-level task into a plurality of low-level tasks using the plugin to divide the high-level task;
retrieving network topology information corresponding to the network of the plurality of nodes;
generating a list of at least one worker node of the plurality of worker nodes for each of the plurality of low-level tasks based on a plurality of facts and a plurality of rules regarding the network using a rule engine, wherein the plurality of low-level tasks is individually executable by the at least one worker node; and
assigning each of the plurality of low-level tasks to an allocated at least one worker node of the list according to the network topology information using a task engine by determining an availability of the allocated at least one worker node to be assigned a low-level task using the network topology information and assigning the allocated at least one worker node based on the availability, wherein the allocated at least one worker node includes a feature selected by the rule engine within the network topology information, and
wherein the rule engine is an expert system including the plurality of rules, the plurality of facts, and the network topology information and wherein the expert system is deterministic.
|