Transport Automated Policy Adapter

Image 

The Automated Policy Adaptor (APA) is the central entity of the NETQOS system. It does not provide QoS by itself, but is aimed at providing and dispatching operational network and transport level policies that help the QoS-oriented communication system to take into account the actors' level dynamic policies expressed through APM. The APA derives a set of operational policies, enforces them and updates them as needed when the system evolves. The policies are entered by the different actors of the system through custom tailored interfaces (GUI, API). These policies are stored along the operational policies in a common repository;

The Transport APA (Automated Policy Adaptor) represents the central step in policy based decision at the Transport Level.

The Transport APA is responsible for taking action in the event of new Application Launch as well as existing application’s Policy Violation. Depending on the kind of event, different internal components are put at work such as the Policy Decision Manager (Application Launch) or the Policy Adaptation Manager (Policy Violation).

The APA is composed of three main components:

  • the Policy Decision Manager (PDM) that is in charge of deciding the set of operational policies that allows taking into account the set of actor level policies regarding context-related information;
  • the Policy Adaptation Manager (PAM) that is in charge of the adaptation of policy, individually or by subset, when the success criteria associated with a policy is not met.
  • the Policy Enforcement Manager (PEM) that is in charge of dispatching the policies decided by the PDM to their Network/Transport-level enforcement points;

Image 

PDM (Policy Decision Manager)
Basically, the PDM is divided into three active parts that it creates when it is launched (i.e. at the start of the system).

  • PDMNotificationManager processes the notification events coming from the CM and retrieves the corresponding policy(ies) from the REPO;
  • PDMWorkerManager processes the needed provisioning decision at one or several levels (with the help of the adequate PolicyDecisioners);
  • PDMDispacher processes the interactions with the PEM(s) to make it enforced the policy, and stores it in a local repository (Op_REPO). It also sets to Active the policy in the REPO.


PAM (Policy Adaptation Manager)
Similarly to the PDM, the PAM is basically divided into three active parts that it creates when it is launched (i.e. at the start of the system):

  • the PAMNotificationManager processes the notification events coming from the CM and retrieves the corresponding (intermediate) policy(ies) and operational policies;
  • the PAMWorkerManager processes the needed adaptation decisions at one or several levels (with the help of the adequate PolicyAdapters);
  • the PAMDispacher processes the interactions with the PEM(s) make it enforced the adapted policy.


PEM (Policy Enforcement Manager)
The Policy Enforcement Manager is responsible for contacting the required Agent component once the operational policy to be enforced has been defined by the PDM or PAM.
For each operational policy that is received by the PEM, an instance of the PEMEnforcementManager is constructed. This instance is then responsible for handling the request. By using active classes for these instances, multiple policies enforcements can take plan concurrently.