MrpTest

Namespace: inet

class MrpTest

MRP_Test: Periodically sent by the Media Redundancy Manager (MRM) on both of its ring ports to check the ring’s operational status. Test frames circulate through all devices in the ring, and must be received by the MRM on its opposite ring port to confirm ring integrity.

Usage diagram

Inheritance diagram

Extends

Name

Type

Description

MrpTlvHeader

class

MRP_TLVHeader: Base class for all TLVs in MRP; contains the Type and Length fields of the TLV. Note that all TLVs (except for MRP_End) must be padded to a multiple of 32 bits.

Fields

Name

Type

Description

id

int

mutable

bool

complete

bool

correct

bool

properlyRepresented

bool

chunkLength

b

rawBin

string[]

rawHex

string[]

regionTags

SharingRegionTagSet::TagBaseRegionTag[]

headerType

TlvHeaderType

valueLength

uint8_t

chunkLength

headerType

valueLength

prio

uint16_t

MRP_Prio, frame priority

sa

MacAddress

MRP_SA, source MAC address

portRole

uint16_t

ringState

uint16_t

transition

uint16_t

timeStamp

uint32_t

MRP_TimeStamp, in milliseconds

Properties

Name

Value

Description

beforeChange

handleChange()

descriptor

readonly

existingClass

packetData

Source code

//
// MRP_Test: Periodically sent by the Media Redundancy Manager (MRM) on both of
// its ring ports to check the ring's operational status. Test frames circulate
// through all devices in the ring, and must be received by the MRM on its
// opposite ring port to confirm ring integrity.
//
class MrpTest extends MrpTlvHeader
{
    chunkLength = B(20);
    headerType = TEST;
    valueLength = 18;
    uint16_t prio = 0x8000;  // MRP_Prio, frame priority
    MacAddress sa;   // MRP_SA, source MAC address
    uint16_t portRole;
    uint16_t ringState;
    uint16_t transition;
    uint32_t timeStamp; // MRP_TimeStamp, in milliseconds
}

File: src/inet/linklayer/mrp/MrpPdu.msg