Module Interface ITrafficConditioner

Package: inet.linklayer.contract
File: src/inet/linklayer/contract/ITrafficConditioner.ned

This is the interface of traffic conditioner modules.

Traffic conditioners implement the policing and shaping actions of a Diffserv router. They should be added to the input or output path of interface modules of routers at the edge of the Diffserv Domain.

Traffic conditioners perform the following actions:

They can be implemented as a compound module, using the classifier, meter, and marker modules defined in this package.

See RFC 3290 for a detailed desciption of the architecture of traffic conditioners.

ITrafficConditioner

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

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

Used in compound modules:

Name Type Description
EthernetInterface compound module

Ethernet network interface. Complements EtherMAC and EtherEncap with an output queue for QoS and RED support.

PPPInterface compound module

PPP interface. Complements the PPP module with an output queue for QoS and RED support.

Properties:

Name Value Description
display i=block/classifier

Source code:

//
// This is the interface of traffic conditioner modules.
//
// Traffic conditioners implement the policing and shaping actions
// of a Diffserv router. They should be added to the input
// or output path of interface modules of routers at the
// edge of the Diffserv Domain.
//
// Traffic conditioners perform the following actions:
//  - classify the incoming packets
//  - meter the traffic in each class
//  - marks/drops packets depending on the result of metering
//  - shape the traffic to conform to the desired traffic profile
//
// They can be implemented as a compound module, using the classifier,
// meter, and marker modules defined in this package.
//
// See RFC 3290 for a detailed desciption of the architecture of traffic
// conditioners.
//
moduleinterface ITrafficConditioner
{
    parameters:
        @display("i=block/classifier");
    gates:
        input in;
        output out;
}