IMrp

Package: inet.linklayer.contract

IMrp

module interface

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

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the 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.

Used in compound modules

Name Type Description
EthernetSwitch compound module

EthernetSwitch models a Layer 2 Ethernet switch with support for various IEEE 802.1 protocols and features. It provides frame forwarding based on MAC addresses and implements multiple switching technologies.

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