Package: inet.routing.pim
Pim
compound module(no description)
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.
Parameters
Name | Type | Default value | Description |
---|---|---|---|
interfaceTableModule | string | ||
routingTableModule | string | ||
crcMode | string | "declared" |
Properties
Name | Value | Description |
---|---|---|
class | Pim | |
display | i=block/network2 |
Gates
Name | Direction | Size | Description |
---|---|---|---|
networkLayerIn | input | ||
networkLayerOut | output |
Direct method calls (observed)
call to | function | info |
---|---|---|
MessageDispatcher | inet::MessageDispatcher::handleRegisterProtocol | handleRegisterProtocol |
Unassigned submodule parameters
Name | Type | Default value | Description |
---|---|---|---|
pimSplitter.interfaceTableModule | string | ||
pimSplitter.pimInterfaceTableModule | string | ||
pimDM.interfaceTableModule | string | ||
pimDM.routingTableModule | string | ||
pimDM.pimInterfaceTableModule | string | ||
pimDM.pimNeighborTableModule | string | ||
pimDM.holdTime | double | 3.5 * helloPeriod | |
pimSM.interfaceTableModule | string | ||
pimSM.routingTableModule | string | ||
pimSM.pimInterfaceTableModule | string | ||
pimSM.pimNeighborTableModule | string | ||
pimSM.RP | string | "" | |
pimSM.designatedRouterPriority | int | -1 | |
pimSM.holdTime | double | 3.5 * helloPeriod | |
pimSM.joinPrunePeriod | double | 60s |
period between Join/Prune messages (called t_periodic in the RFC) |
pimInterfaceTable.interfaceTableModule | string | ||
pimInterfaceTable.pimConfig | xml | xml(" |
Source code
module Pim like IPim { parameters: @class(Pim); @display("i=block/network2"); string interfaceTableModule; string routingTableModule; string crcMode @enum("declared","computed") = default("declared"); *.interfaceTableModule = default(absPath(this.interfaceTableModule)); *.routingTableModule = default(absPath(this.routingTableModule)); *.pimInterfaceTableModule = default("^.pimInterfaceTable"); *.pimNeighborTableModule = default("^.pimNeighborTable"); gates: input networkLayerIn; output networkLayerOut; submodules: pimSplitter: PimSplitter { parameters: @display("p=250,150"); } pimDM: PimDm { parameters: @display("p=400,200"); } pimSM: PimSm { parameters: @display("p=400,100"); } pimInterfaceTable: PimInterfaceTable { parameters: @display("p=100,100;is=s"); } pimNeighborTable: PimNeighborTable { parameters: @display("p=100,200;is=s"); } connections: // pimDM pimSplitter.pimDMOut --> pimDM.ipIn; pimSplitter.pimDMIn <-- pimDM.ipOut; // pimSM pimSplitter.pimSMOut --> pimSM.ipIn; pimSplitter.pimSMIn <-- pimSM.ipOut; // splitter out pimSplitter.ipOut --> { @display("m=s"); } --> networkLayerOut; pimSplitter.ipIn <-- { @display("m=s"); } <-- networkLayerIn; }File: src/inet/routing/pim/Pim.ned