Execution modelΒΆ

In the Quick start we have seen all steps needed to create an environment, set up the virtual machines, run a measures and generate a report from a practical point of view. In this document we will take a deeper look at the inside workings of the pas tool and its execution model.

Once understood this model and acquired a good overview of the various commands you will be ready to bend the pas utility to your will by simply combining or adding different commands.

The following image will give you an high level overview of the execution model of a measure in pas and the description of each step contains shortcuts to relevant commands and configuration directive references:

../_images/execution-model1.graffle

The various steps of the execution model can best be described as follows:

  1. Setup

    This involves the initialization of the environment, the setup of the virtual machines and the creation of one or more measure cases.

    Related commands: pas init, pas authorize

    Related settings: VM_USER, VM_PASSWORD

  2. Distribution and compilation

    The first part of this step, the distribution, is automatically done by sharing the used directories between the host (your machine) and the guests (the virtual machines running on the host).

    The second part, the compilation is executed sequentially on each host and produces a binary build of the measure case for each different architecture in your VM setup.

    Related commands: pas compile

  3. Beginning of the capturing process

    A tshark instance is started on each configured interface of each guest and every filtered packet captured to a guest-local file.

    The tshark program is the command-line version of the well known wireshark network protocol analyzer.

    Related commands: pas measure start, pas measure stop, pas measure kill

    Related settings: CAPTURE_FILTER, INTERFACES

  4. Job manager startup

    A jobmgr is started on each guest, with a different configuration based on their role. The default setup defines a master and a slave role and the respective configuration to simulate the offloading of objects to a remote guest.

    Related commands: pas jobmgr start, pas jobmgr stop, pas jobmgr kill

    Related settings: ROLES, STARTUP_DELAY, SHUTDOWN_DELAY

  5. POP program execution

    The developed POP program is executed and the generated traffic captured by the different tshark processes.

    Related commands: pas execute

    Related settings: ROLES

  6. Data collection

    Once the POP program has executed and returned, the measure and the job managers can be stopped.

    The results of each single measure and the different log files are now spread among all the different involved guests. The collection process retrieves all these files and copies them to a common shared location where the host can access them.

    Related commands: pas measure collect

    Related settings: LOG_FILES

  7. Report generation

    Now that the host has all measure results locally available it can process and assemble them into one or more measure reports.

    This process involves multiple steps, such as conversions, simplifications, payload decoding and the final assembly.

    Related commands: pas report toxml, pas report simplify, pas report decode, pas report report

    Related settings: DISPLAY_FILTER

Once grasped these concepts you are ready to personalize your testing environment. If you have not done so yet, hand over to the Quick start for a step-by-step begin-to-end on how guide to take a measure or continue to the detailed guide about how to create measure cases.

The advanced usage chapter provides documentation on more technical and complicated aspected of the POP Analysis Suite needed to completely customize and adapt an environment to special setups (i.e. a preexisting setup with real machines).

Previous topic

Quick start

Next topic

Creating measure cases

This Page