IMrp

Package: inet.linklayer.contract

module interface IMrp

Interface for modules that implement the Media Redundancy Protocol (MRP), specified in IEC 62439-2.

Inheritance diagram

Implemented by

Name

Type

Description

Mrp

simple module

Implements the Media Redundancy Protocol (MRP) as specified in IEC 62439-2. MRP is used for managing redundancy in ring network topologies commonly found in industrial network settings. MRP is similar in its function to STP and RSTP, in that it ensures a loop-free topology for an Ethernet local area network. This module implements the Media Redundancy Manager (MRM), Media Redundancy Client (MRC), and Media Redundancy Automanager (MRA) roles. This model also includes support for detecting link errors with the help of Continuity Check Messages (CCM) messages defined in 802.1q CFM.

MrpInterconnection

simple module

Implements ring interconnection support for the Media Redundancy Protocol (MRP) as specified in IEC 62439-2. This is an extension of the Mrp module with the Media Redundancy Interconnection Manager (MIM) and Media Redundancy Interconnection Client (MIC) roles. This module should be used instead of Mrp in MRP nodes that are also ring interconnection nodes.

Parameters

Name

Type

Default value

Description

ccmInterval

double

mrpRole

string

timingProfile

int

uuid0

int

uuid1

int

ringPort1

int

ringPort2

int

interconnectionLinkCheckAware

bool

interconnectionRingCheckAware

bool

nonblockingMrcSupported

bool

reactOnLinkChange

bool

visualize

bool

Properties

Name

Value

Description

display

i=block/network2

Source code

//
// Interface for modules that implement the Media Redundancy Protocol (MRP),
// specified in IEC 62439-2.
//
moduleinterface IMrp
{
    parameters:
        @display("i=block/network2");
        double ccmInterval @unit(ms);
        string mrpRole;
        int timingProfile @unit(ms);
        int uuid0;
        int uuid1;
        int ringPort1;
        int ringPort2;
        bool interconnectionLinkCheckAware;
        bool interconnectionRingCheckAware;
        bool nonblockingMrcSupported;
        bool reactOnLinkChange;
        bool visualize;
    gates:
        input relayIn;
        output relayOut;
}

File: src/inet/linklayer/contract/IMrp.ned