# Patent

## Title
Workflow locked loops to enable adaptive networks to change a policy statement responsive to mission level exceptions and reconfigure the software-controllable network responsive to network level exceptions

## Abstract

A closed loop system is described for enhanced adaptive network capabilities in support of workflow missions. Multiple workflow-locked loops with different sampling rates are employed. A faster, lower loop is employed to gather data from the field and deal with network level exceptions such as faults, fades, and changing conditions. A slower, upper loop is employed to handle mission level exceptions. The result is a system capable of integrating management of multiple workflow missions, including reallocation of resources in response to changes in mission goal statements and network resource availability.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
A claim of priority is made to U.S. Provisional Patent Application 60/721,757, filed Sep. 29, 2005, entitled MISSION-GRADE WORKFLOWS, which is incorporated herein by reference.


STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT
The U.S. Government has a paid-up license in this invention and the right in limited circumstances to require the patent owner to license others on reasonable terms as provided for by the terms of contract No. HR0011-05-c-0120 awarded by DARPA/CMO.


BACKGROUND OF THE INVENTION
Workflow missions are utilized to counter threats such as criminal and terrorist activity. A workflow mission includes multiple instances of an application or types of applications working towards a common set of goals. In a typical workflow mission a collection of sensors, often of different types, provides raw data to computing resources. The computing resources process the raw data to produce a result which is more useful to human beings or other applications. Unless the sensors have large memory capacity to store data, and the raw data is manually retrieved, a communication network transports data and commands between devices.
Allocation of network resources to support workflow mission is a complex, manual process that requires technical expertise. The process is similar to network planning in the telecommunications field, where subject matter experts determine resource requirements and plan an appropriate deployment of those resources by mental estimate, manual calculation, or a combination of both. However, unlike planning a telecommunications network, planning a workflow mission may be acutely time-constrained, have greater risks associated with failure, and be in competition with other missions for scarce resource. Further complicating matters, a workflow mission is more likely to be subjected to dynamically changing conditions and requirements due to, for example, reduced offered load due to moisture, smoke, interference temperature, and jamming. A failure in resource allocation planning or a failure to adapt to changing conditions during a mission can manifest itself as missed targets resulting in cascading of risks, poor reaction to a mission's evolving circumstances, under- or mis-utilization of key resources, and performance degradation or partial failures which go unnoticed until a more complete failure occurs.
SUMMARY OF THE INVENTION
In accordance with one embodiment of the invention, apparatus for facilitating adaptation of at least one software-controllable communications network comprises: a translation module operative to translate at least one mission goal statement to a policy statement; a controller operative in response to the policy statement to configure the software-controllable network; a first workflow-locked loop between the translation module and the controller for processing mission level exceptions; and a second workflow-locked loop between the controller and the software-controllable network for processing network level exceptions.
In accordance with another embodiment of the invention, a method for facilitating adaptation of at least one software-controllable communications network comprises the steps of: translating, with a translation module, at least one mission goal statement to a policy statement; in response to the policy statement, configuring the software-controllable network with a controller; processing mission level exceptions via a first workflow-locked loop between the translation module and the controller; and processing network level exceptions via a second workflow-locked loop between the controller and the software-controllable network.



BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 is a block diagram of a scaled workflow-locked loop.
FIG. 2 illustrates a workflow sequence.



DETAILED DESCRIPTION
FIG. 1 illustrates use of workflow-locked loops for facilitating adaptation of network resources in a workflow network. The system includes a goal to service translation module (100) and a plurality of parallel mission controllers (1021 through 102n), each in communication with a software-controlled network (1041 through 104n). The goal to service translation module (100) is operative to perform mission goal statement to policy statement translation. In particular, the goal to service translation module maps a workflow mission and its components to a machine-friendly workflow representation, as described in co-pending U.S. patent application Ser. No. 11/469,416, entitled MISSION GOAL STATEMENT TO POLICY STATEMENT TRANSLATION, by Franco Travostino, Bruce Schoefield, and Inder Monga, filed contemporaneously with this application, which is incorporated by reference. The output of the goal to service translation module (100) is provided to the controllers (1021 through 102n). The controllers are operative to set up and dynamically reallocate network resources based on the policy statements provided by the goal to service translation module and feedback from the software-controlled networks (1041 through 104n). Each controller is responsible for a particular workflow mission, or portion thereof, resulting in a workflow sequence such as that illustrated by FIG. 2. The software-controlled networks are comprised of various network resources which can be manipulated by the controller to accommodate a workflow sequence.
A first, upper workflow-locked loop (106) is operative to handle mission level exceptions. The controllers (102) communicate with one another in order to coordinate responses to changing conditions. For example, during the planning stage a new or modified mission goal statement may be provided to the goal to service translation module. Similarly, after a mission has commenced there may be need to update the mission goal statement, e.g., a recognition that the number of anticipated targets or value of the targets is significantly different than originally anticipated. In response to a new mission goal statement (110), the goal to service translation module (100) produces an updated policy statement or statements (112). The updated policy statement may be pushed to the controllers, or provided in response to request. Since the updated policy statement may not directly affect all of the missions or portions thereof, the updated policy statement may also be selectively transmitted to only those controllers that are directly affected, or controllers that are not directly affected may take no initial response to the updated policy statement. In the case where the updated policy statement is provided in response to request, the loop is workflow-locked because only those portions of the updated policy statement which affect a particular workflow are requested and provided.
In another scenario, the subset of controllers that are affected by policy statement update may determine that their software-controlled network is unable to be dynamically updated in a manner which enables compliance with the updated policy statement. In that case, the subset of controllers broadcast an indication of the resource difficulty to the other controllers to prompt a tender bid process as described in U.S. patent application Ser. No. 11/469,404, entitled TIME-VALUE CURVES TO PROVIDE DYNAMIC QOS FOR TIME SENSITIVE FILE TRANSFERS, by Franco Travostino, Bruce Schoefield, and Inder Monga, filed contemporaneously with this application, which is incorporated by reference. The goal to service translation module may be employed to arbitrate the tender bid process by issuing further updated policy statements, e.g., to reallocate resources from one controller to another based on priority. The first workflow-locked loop (106) is comprised of the communications between at least one of the coordinated controllers and the goal to service translation module that facilitate dynamic reallocation of network resources based on mission level exceptions, accomplished by updating the policy statement in response to information from the controllers.
A series of second, lower workflow-locked loops (1081 through 108n), one for each mission or mission segment, is employed to dynamically adapt to changes in the field. The lower loops (108) deal with network level exceptions such as faults, fades, and changing conditions, as well as mission-related data feedback to the controller, e.g., location information, to adjust network priority, policies, and network resource allocation to meet changing conditions while meeting mission goals. Each controller prompts its software-controlled network to provide information regarding changing network conditions related to the workflow being supported. For example, network congestion and outright failures of links and nodes that upset the workflow of the software-controlled network are reported back to the controller via the workflow-locked loop. Similarly, an unexpectedly large or small number or frequency of targets may be reported. The software-controlled network may also report what remedial actions will be taken, if any. Some aspects of the software-controlled network may be protected by backup resources in the network itself, e.g., protection switching, protection links, backup cards. The controller is operative to filter the reports from the software-controlled network such that problems that will not have a deleterious affect on the mission relative to a predetermined threshold, e.g., in units of time or dropped data. The remaining reports of changes in the software-controlled network are reported from the controller to the goal to service translation module so that the policy statements may be updated. For example, a loss of resources dedicated to a relatively high value mission in one software-controlled network can be lead to an updated policy statement that causes reallocation of resources from a relatively lower value mission in another software-controlled network.
In view of the description above it will be appreciated by those skilled in the art that the inventive concept generally provides a closed loop system for enhanced adaptive network capabilities in support of workflow missions, including a coordinated approach that reallocates resources between missions. It should also be appreciated that the different workflow-locked loops may have different sample rates and response times. In one embodiment the second, lower workflow-locked loops have a slower sample rate than an anticipated network element response to faults.
While the invention is described through the above exemplary embodiments, it will be understood by those of ordinary skill in the art that modification to and variation of the illustrated embodiments may be made without departing from the inventive concepts herein disclosed. Moreover, while the preferred embodiments are described in connection with various illustrative structures, one skilled in the art will recognize that the system may be embodied using a variety of specific structures. Accordingly, the invention should not be viewed as limited except by the scope and spirit of the appended claims.

## Claims

1. An apparatus for facilitating adaptation of at least one software-controllable communications network comprising:
a translation module, the translation module operative to translate at least one mission goal statement to a policy statement;
a controller, the controller operative in response to the policy statement to configure the software-controllable network;
a first workflow-locked loop between the translation module and the controller, the first workflow-locked loop processing mission level exceptions based on information from the controller, the first workflow-locked loop responsive to the mission level exceptions to change at least one policy statement; and
a second workflow-locked loop between the controller and the software-controllable network, the second workflow-locked loop gathering data from the field and processing network level exceptions based on the data gathered from the field, the second workflow-locked loop responsive to the network level exceptions to cause the controller to reconfigure the software-controllable network.

2. The apparatus of claim 1 wherein the first workflow-locked loop has a response time which differs from that of the second workflow-locked loop.

3. The apparatus of claim 2 wherein the first workflow-locked loop has a response time which is slower than that of the second workflow-locked loop.

4. The apparatus of claim 1 wherein there are a plurality of missions, and for each mission there is a controller that configures the software-controllable network to support a workflow defined for that mission.

5. The apparatus of claim 4 wherein each controller is operative to prompt its software-controllable network to provide information regarding network level exceptions.

6. The apparatus of claim 5 wherein each controller is operative to filter from the information those exceptions which will be adequately remedied by the software-controllable network.

7. The apparatus of claim 6 wherein an indication of the remaining information is provided to other controllers.

8. The apparatus of claim 6 wherein an indication of the remaining information is provided to the translation module.

9. A method for facilitating adaptation of at least one software-controllable communications network, the method comprising the steps of:
translating, with a translation module, at least one mission goal statement to a policy statement;
in response to the policy statement, configuring the software-controllable network with a controller;
processing mission level exceptions via a first workflow-locked loop between the translation module and the controller to change at least one policy statement; and
processing network level exceptions and gathering data from the field via a second workflow-locked loop between the controller and the software-controllable network, the network level exceptions to cause the controller to reconfigure the software-controllable network.

10. The method of claim 9 including the further step of configuring the first workflow-locked loop with a response time which differs from that of the second workflow-locked loop.

11. The method of claim 9 including the further step of configuring the first workflow-locked loop with a response time which is slower than that of the second workflow-locked loop.

12. The method of claim 9 wherein there are a plurality of missions, and including the further step of assigning a controller to each mission to configure the software-controllable network to support a workflow defined for that mission.

13. The method of claim 12 including the further step of prompting, with each controller, its respective software-controllable network to provide information regarding network level exceptions.

14. The method of claim 13 including the further step of each controller filtering from the information those exceptions which will be adequately remedied by the software-controllable network.

15. The method of claim 14 including the further step of providing an indication of the remaining information to other controllers.

16. The method of claim 14 including the further step of providing an indication of the remaining information to the translation module.