Package: inet.routing.pim
PimSplitter
simple module~PimSplitter module dispatches PIM packets received from the network layer according to the PIM mode of the incoming interface. By using a ~PimSplitter it is possible to build nodes that operate in Dense Mode on some interfaces, and in Sparse Mode on others.
See ~Pim module for example usage.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Used in compound modules
| Name | Type | Description |
|---|---|---|
| Pim | compound module |
Implements the Protocol Independent Multicast (PIM) routing protocol for IP multicast. This module integrates both PIM-DM (Dense Mode) and PIM-SM (Sparse Mode) implementations, using a splitter to direct packets to the appropriate mode based on interface configuration. PIM builds distribution trees for efficient multicast data delivery across IP networks. |
Extends
| Name | Type | Description |
|---|---|---|
| SimpleModule | simple module |
Base module for all INET simple modules. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| displayStringTextFormat | string | "" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| interfaceTableModule | string | ||
| pimInterfaceTableModule | string |
Properties
| Name | Value | Description |
|---|---|---|
| class | PimSplitter | |
| display | i=block/dispatch |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| ipIn | input | ||
| ipOut | output | ||
| pimDMIn | input | ||
| pimDMOut | output | ||
| pimSMIn | input | ||
| pimSMOut | output |
Source code
// // ~PimSplitter module dispatches PIM packets received from the network layer // according to the PIM mode of the incoming interface. By using a ~PimSplitter // it is possible to build nodes that operate in Dense Mode on some interfaces, // and in Sparse Mode on others. // // See ~Pim module for example usage. // simple PimSplitter extends SimpleModule { parameters: @class(PimSplitter); @display("i=block/dispatch"); string interfaceTableModule; string pimInterfaceTableModule; gates: input ipIn; output ipOut; input pimDMIn; output pimDMOut; input pimSMIn; output pimSMOut; }File: src/inet/routing/pim/PimSplitter.ned