Package: inet.routing.pim
PIMRouting
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 |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/network2;bgl=4;bgb=350,207 |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| networkLayerIn | input | ||
| networkLayerOut | output |
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 PIMRouting like IPIMRouting { parameters: @display("i=block/network2;bgl=4;bgb=350,207"); string interfaceTableModule; string routingTableModule; *.interfaceTableModule = default(this.interfaceTableModule); *.routingTableModule = default(this.routingTableModule); *.pimInterfaceTableModule = default("^.pimInterfaceTable"); *.pimNeighborTableModule = default("^.pimNeighborTable"); gates: input networkLayerIn; output networkLayerOut; submodules: pimSplitter: PIMSplitter { parameters: @display("p=69,95"); } pimDM: PIMDM { parameters: @display("p=165,142"); } pimSM: PIMSM { parameters: @display("p=165,56"); } pimInterfaceTable: PIMInterfaceTable { parameters: @display("p=268,56"); } pimNeighborTable: PIMNeighborTable { parameters: @display("p=268,142"); } connections: // pimDM pimSplitter.pimDMOut --> pimDM.ipIn; pimSplitter.pimDMIn <-- pimDM.ipOut; // pimSM pimSplitter.pimSMOut --> pimSM.ipIn; pimSplitter.pimSMIn <-- pimSM.ipOut; // splitter out pimSplitter.ipOut --> networkLayerOut; pimSplitter.ipIn <-- networkLayerIn; }File: src/inet/routing/pim/PIMRouting.ned