Module interface for IGMP modules.
An IGMP module sends notifications about multicast group memberships in hosts, and processes these notifications in multicast routers.
Currently there are 3 versions specified in RFC 1112 (IGMPv1), RFC 2236 (IGMPv2), and RFC 3376 (IGMPv3).
IGMP packets are transported by the IP layer connected to the ipIn/ipOut gates. Some multicast routing protocols (e.g. DVMRP) also communitacate with IGMP messages. They must be connected to the routerIn/routerOut gates, the IGMP module will pass up the unrecognized IGMP packets.
See also: IGMPv2
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Name | Type | Description |
---|---|---|
IPv4NetworkLayer | compound module |
Network layer of an IPv4 node. |
Name | Value | Description |
---|---|---|
display | i=block/cogwheel_s |
// // Module interface for IGMP modules. // // An IGMP module sends notifications about multicast group memberships in hosts, // and processes these notifications in multicast routers. // // Currently there are 3 versions specified in RFC 1112 (IGMPv1), RFC 2236 (IGMPv2), // and RFC 3376 (IGMPv3). // // IGMP packets are transported by the IP layer connected to the ipIn/ipOut // gates. Some multicast routing protocols (e.g. DVMRP) also communitacate with // IGMP messages. They must be connected to the routerIn/routerOut gates, // the IGMP module will pass up the unrecognized IGMP packets. // // @see IGMPv2 // moduleinterface IIGMP { @display("i=block/cogwheel_s"); gates: input ipIn @labels(IPv4ControlInfo/up); output ipOut @labels(IPv4ControlInfo/down); input routerIn @labels(IPv4ControlInfo/up); output routerOut @labels(IPv4ControlInfo/down); }