TSNschedGateScheduleConfigurator

Package: inet.linklayer.configurator.gatescheduling.common

TSNschedGateScheduleConfigurator

simple module

This module provides a gate scheduling configurator that uses the TSNsched tool that is available at https://github.com/ACassimiro/TSNsched Tested revision: 3f3bf663d196ec6c03e81a1e1392d4aefd158e3e

In order to be able to use this module, the above tool must be installed along with a Java SDK and all other necessary tools. The module communicates with TSNsched via reading and writing files and using system commands. The TSNsched tool is found using the TSNSCHED_ROOT environment variable, which must be properly set to the installation folder.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
GateScheduleConfiguratorBase simple module

This module serves as a basis for gate scheduling configurator modules. It provides methods for derived modules to easily extract the input parameters from the network topology and also to carry out the actual configuration of the resulting schedule. The schedule is automatically configured in all of the PeriodicGate submodules of all queue submodules in the network interface MAC layer submodules. Besides, the application start offsets are also configured. This allows the derived modules to focus on the implementation of the actual scheduling algorithm.

Parameters

Name Type Default value Description
gateCycleDuration double

the globally used gate scheduling period in each PeriodicGate modules

configuration object []

array of objects, see GateScheduleConfiguratorBase module documentation for more details example: [{name: "s1", type: "unicast", application: "app[0]", pcp: 0, gateIndex: 0, source: "wheel*", destination: "hud", packetLength: 100B, packetInterval: 5ms, maxLatency: 100us, maxJitter: 10us, pathFragments: [["a", "b", "c"]]}]

Properties

Name Value Description
display i=block/cogwheel
class TSNschedGateScheduleConfigurator

Source code

//
// This module provides a gate scheduling configurator that uses the TSNsched
// tool that is available at https://github.com/ACassimiro/TSNsched
// Tested revision: 3f3bf663d196ec6c03e81a1e1392d4aefd158e3e
//
// In order to be able to use this module, the above tool must be installed
// along with a Java SDK and all other necessary tools. The module communicates
// with TSNsched via reading and writing files and using system commands. The
// TSNsched tool is found using the TSNSCHED_ROOT environment variable, which
// must be properly set to the installation folder.
//
simple TSNschedGateScheduleConfigurator extends GateScheduleConfiguratorBase like IGateScheduleConfigurator
{
    parameters:
        @class(TSNschedGateScheduleConfigurator);
}

File: src/inet/linklayer/configurator/gatescheduling/common/TSNschedGateScheduleConfigurator.ned