Simple Module SRProtocol

Package: core4inet.services.avb.SRP
File: src/core4inet/services/avb/SRP/SRProtocol.ned

C++ definition

This module handles the Stream Reservation Protocol

SRP messages are sent and received through SRPEtherLLC and SRPRelay

WARNING: This is a simplified implementation of the Stream Reservation Protocol that does not use the original message format

See also: SRPEtherLLC, SRPRelay

Author: Till Steinbach

SRProtocol

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.

Used in compound modules:

Name Type Description
RTIPHost compound module

Contains the common lower layers (linklayer and networklayer) of Router, StandardHost, WirelessHost etc.

TTEAVBEtherHost compound module

Module for a TTEAVBEthernet Host. Contains handler for TT, AVB, RC and BE Messages.

TTEAVBEtherSwitch compound module

Module for a TTEAVBEthernet Switch. Contains handler for TT, AVB, RC and BE Messages.

Parameters:

Name Type Default value Description
reservableBandwidth double 0.75

Amount of total bandwidth that is reservable (0-1) default: 0.75 representing 75%

srpTable string "^.srpTable"

SRP Table module, default name is srpTable

Properties:

Name Value Description
display i=block/network2,blue
class SRProtocol

Gates:

Name Direction Size Description
in input

Gate for incoming SRP messages

out output

Gate for outgoing SRP messages

Source code:

//
// This module handles the Stream Reservation Protocol
//
// SRP messages are sent and received through SRPEtherLLC and SRPRelay
//
// @warning This is a simplified implementation of the Stream Reservation Protocol that does not use the original
// message format
//
// @see SRPEtherLLC, SRPRelay
//
// @author Till Steinbach
//
simple SRProtocol
{
    parameters:
        @display("i=block/network2,blue");
        @class(SRProtocol);

        //Amount of total bandwidth that is reservable (0-1) default: 0.75 representing 75% 
        double reservableBandwidth = default(0.75);

        //SRP Table module, default name is srpTable
        string srpTable = default("^.srpTable");
    gates:
        //Gate for incoming SRP messages
        input in @labels(EtherFrame);
        //Gate for outgoing SRP messages
        output out @labels(EtherFrame);
}