|
SatCat5
|
Router-side implementation of the Internet Group Management Protocol (IGMP)
Any IPv4 packet sent to 224.0.0.0/8 (i.e., 224.*.*.*) is a "multicast" packet. Routers should send multicast packets to interested recipients, including routers with downstream recipieitns, but avoid sending them to uninterested hosts. IGMP is the protocol that routers to determine which next-hop interface(s) have members subscribed to a given multicast address (i.e., a "group"), so it can forward only to those port(s).
This file implements the router/server side of IGMP:
As required by IETF, the server defaults to IGMPv3, but can be downgraded to IGMPv1 or IGMPv2 on user request. SatCat5 does not currently support the source-address filtering features of IGMPv3, responding as if all clients have requested an exclude-none policy.
IGMPv1 is defined by IETF RFC-1112. IGMPv2 is defined by IETF RFC-2236. IGMPv3 is defined by IETF RFC-9776.
Definition in file igmp_server.h.
Go to the source code of this file.
Classes | |
| struct | satcat5::igmp::Group |
| Router state for monitoring IGMP multicast subscriptions. More... | |
| class | satcat5::igmp::Server |
| Router/Server for the Internet Group Management Protocol (IGMP). More... | |
| class | satcat5::igmp::ServerStatic< SIZE > |
| Statically-allocated wrapper for ip::IgmpServer. More... | |