Ipv6RouterAdvertisement

Ipv6RouterAdvertisement

class

Router Advertisement Message Format RFC 2461 Section 4.2 RFC 3775 Section 7.1, RFC 5175 Section 3. (homeAgentFlag)

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.

Extends

Name Type Description
Ipv6NdMessage class

Neighbour Discovery for Ipv6. RFC 2461

Fields

Name Type Description
chunkLength b
type Icmpv6Type

1 byte

curHopLimit unsigned short

Additional ICMP fields

managedAddrConfFlag bool

M-bit

otherStatefulConfFlag bool

O-bit

homeAgentFlag bool

H-bit

reserved uint8_t
routerLifetime unsigned short

[s] 0 indicates router is not a default router

reachableTime unsigned int

[ms]

retransTimer unsigned int

[ms]

options Ipv6NdOptions
code int
chksum int

int code; // 1 byte //TODO: this should be specific to different ICMP types.

crcMode CrcMode

4 bytes 'type' specific values

mutable bool
complete bool
correct bool
properlyRepresented bool
rawBin string[]
rawHex string[]
tags RegionTagSet::cObjectRegionTag[]

Source code

//
// Router Advertisement Message Format
// RFC 2461 Section 4.2
// RFC 3775 Section 7.1, RFC 5175 Section 3. (homeAgentFlag)
//
class Ipv6RouterAdvertisement extends Ipv6NdMessage
{
    chunkLength = B(16);    // without options
    type = ICMPv6_ROUTER_AD;
    //Additional ICMP fields
    unsigned short curHopLimit;

    bool managedAddrConfFlag;    //M-bit
    bool otherStatefulConfFlag;    //O-bit
    bool homeAgentFlag = false;        //H-bit
    uint8_t reserved = 0;

    unsigned short routerLifetime;  // [s] 0 indicates router is not a default router
    unsigned int reachableTime;     // [ms]
    unsigned int retransTimer;      // [ms]
    Ipv6NdOptions options;
}

File: src/inet/networklayer/icmpv6/Ipv6NdMessage.msg