<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.8 (Ruby 2.6.10) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc {"tocdepth"=>5}="yes"?>
<?rfc comments="yes"?>

<rfc ipr="pre5378Trust200902" docName="draft-ietf-pim-rfc1112bis-02" category="std" consensus="true" submissionType="IETF" obsoletes="1112" updates="791" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Any Source IP Multicasting (ASM)">Host Extensions for "Any Source" IP Multicasting (ASM)</title>

    <author initials="S. E." surname="Deering" fullname="Stephen E. Deering">
      <organization>Retired</organization>
      <address>
        <postal>
          <city>Vancouver, British Columbia</city>
          <country>Canada</country>
        </postal>
        <email>deering@noreply.ietf.org</email>
      </address>
    </author>
    <author initials="T." surname="Eckert" fullname="Toerless Eckert" role="editor">
      <organization>Futurewei Technologies USA</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>tte@cs.fau.de</email>
      </address>
    </author>

    <date year="2024" month="July" day="23"/>

    
    <workgroup>PIM</workgroup>
    

    <abstract>


<?line 61?>

<t>This memo specifies the extensions required of a host implementation
of the Internet Protocol (IP) to support Any Source Multicast (ASM)
IP Multicasting or abbreviated IP Multicast. 
Distribution of this memo is unlimited.</t>

<t>This document replaces <xref target="RFC1112"/> for anything but its specification of
the IGMP version 1 protocol.</t>



    </abstract>



  </front>

  <middle>


<?line 71?>

<section anchor="status-of-this-memo"><name>STATUS OF THIS MEMO</name>

<t>This memo specifies the extensions required of a host implementation
of the Internet Protocol (IP) to support Any Source Multicast (ASM)
IP Multicasting or abbreviated IP Multicast. 
Distribution of this memo is unlimited.</t>

<t>This document replaces <xref target="RFC1112"/> for anything but its specification of
the IGMP version 1 protocol.</t>

<section anchor="requirements-language"><name>Requirements Language</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<?line -18?>

<!--

This document is an update of {{RFC1112}} which was written before {{RFC2119}},
This update intends to maintain all the language of {{RFC1112}} unmodified except
for the the changes outlined in {{changes}}. Therefore, this document does
not use language from {{RFC2119}}.

-->

</section>
</section>
<section anchor="introduction"><name>INTRODUCTION</name>

<t>The host extensions defined in this memo are called
Any Source Multicast (ASM) IP multicast or abbreviated IP multicast. 
The term Any Source Multicast is used to distinguish these extensions
from Source Specific Multicast (SSM) IP multicast as defined by <xref target="SSM"/>.
The abbreviation IP multicast always refers to this memo's extensions.</t>

<t>This memo applies to both IP and IPv6. When it uses the term IP it
implies either or both version of the IP protocol. It uses
the terms IP and/or IPv6 explicitly when referring to functions
applicable to only a specific version of the IP protocol.</t>

<t>This document replaces <xref target="RFC1112"/> for anything but the specification of IGMP version 1
in Appendix I. of <xref target="RFC1112"/>. See <xref target="normative"/> and <xref target="changes"/> for a detailled
list of changes from that memo.</t>

<t>IP multicasting is the transmission of an IP datagram to a "host
group", a set of zero or more hosts identified by a single IP
destination address.  A multicast datagram is delivered to all
members of its destination host group with the same "best-efforts"
reliability as regular unicast IP datagrams, i.e., the datagram is
not guaranteed to arrive intact at all members of the destination
group or in the same order relative to other datagrams.</t>

<t>The membership of a host group is dynamic; that is, hosts may join
and leave groups at any time.  There is no restriction on the
location or number of members in a host group.  A host may be a
member of more than one group at a time.  A host need not be a member
of a group to send datagrams to it.</t>

<t>A host group may be permanent or transient.  A permanent group has a
well-known, administratively assigned IP address.  It is the address,
not the membership of the group, that is permanent; at any time a
permanent group may have any number of members, even zero.  Those IP
multicast addresses that are not reserved for permanent groups are
available for dynamic assignment to transient groups which exist only
as long as they have members.</t>

<t>Internetwork forwarding of IP multicast datagrams is handled by
"multicast routers" which may be co-resident with, or separate from,
internet gateways.  A host transmits an IP multicast datagram as a
local network multicast which reaches all immediately-neighboring
members of the destination host group.  If the datagram has an IP
time-to-live greater than 1, the multicast router(s) attached to the
local network take responsibility for forwarding it towards all other
networks that have members of the destination group.  On those other
member networks that are reachable within the IP time-to-live, an
attached multicast router completes delivery by transmitting the
datagram as a local multicast.</t>

<t>This memo specifies the extensions required of a host IP
implementation to support IP multicasting, where a "host" is any
internet host or gateway other than those acting as multicast
routers.  The algorithms and protocols used within and between
multicast routers are transparent to hosts and will be specified in
separate documents.  This memo also does not specify how local
network multicasting is accomplished for all types of network,
although it does specify the required service interface to an
arbitrary local network and gives an Ethernet specification as an
example.  Specifications for other types of network will be the
subject of future memos.</t>

</section>
<section anchor="levels-of-conformance"><name>LEVELS OF CONFORMANCE</name>

<t>There are three levels of conformance to this specification:</t>

<section anchor="level-0-no-support-for-ip-multicasting"><name>Level 0: no support for IP multicasting.</name>

<t>There is, at this time, no requirement that all IP implementations
support IP multicasting.  Level 0 hosts will, in general, be
unaffected by multicast activity.  The only exception arises on some
types of local network, where the presence of level 1 or 2 hosts may
cause misdelivery of multicast IP datagrams to level 0 hosts.  Such
datagrams can easily be identified by the presence of a class D IP
address in their destination address field; they <bcp14>SHOULD</bcp14> be quietly
discarded by hosts that do not support IP multicasting.  Class D
addresses are described in section 4 of this memo.</t>

</section>
<section anchor="level-1-support-for-sending-but-not-receiving-multicast-ip-datagrams"><name>Level 1: support for sending but not receiving multicast IP datagrams.</name>

<t>Level 1 allows a host to partake of some multicast-based services,
such as resource location or status reporting, but it does not allow
a host to join any host groups.  An IP implementation may be upgraded
from level 0 to level 1 very easily and with little new code.  Only
sections 4, 5, and 6 of this memo are applicable to level 1
implementations.</t>

</section>
<section anchor="level-2-full-support-for-ip-multicasting"><name>Level 2: full support for IP multicasting.</name>

<t>Level 2 allows a host to join and leave host groups, as well as send
IP datagrams to host groups.  Most IPv6 hosts require Level 2 support
because IPv6 Neighbor Discovery (<xref target="RFC4861"/>, as used on most link types)
depends on multicast and requires that nodes join Solicited Node multicast addresses.</t>

<t>Level 2 requires implementation of the Internet Group Management Protocol (IGMP)
for IP and the equivalent Multicast Listener Discovery Protocol (MLD) for IPv6 
and extension of the IP and local network service interfaces within the host.</t>

<t>The current protocol versions for full support of IP multicasting are <xref target="IGMPv3"/> and <xref target="MLDv2"/> or lightweight
versions of either protocol <xref target="IGMPv3LITE"/>.</t>

<t>All of the following sections of this memo are applicable to level 2
implementations.</t>

</section>
</section>
<section anchor="host-group-addresses"><name>HOST GROUP ADDRESSES</name>

<t>IP Host groups are identified by class D IP addresses, i.e., those with
"1110" as their high-order four bits.  Class E IP addresses, i.e.,
those with "1111" as their high-order four bits, are reserved for
future addressing modes.</t>

<t>In Internet standard "dotted decimal" notation, host group addresses
range from 224.0.0.0 to 239.255.255.255.  The address 224.0.0.0 is
guaranteed not to be assigned to any group, and 224.0.0.1 is assigned
to the permanent group of all IP hosts (including gateways).  This is
used to address all IP multicast hosts on the directly connected
network.  There is no multicast address (or any other IP address) for
all hosts on the total Internet.  The addresses of other well-known,
permanent groups are to be published in "Assigned Numbers". <xref target="RFC5771"/>
and <xref target="RFC6034"/> refine more detailled allocation and uses of different
sub-blocks of 224.0.0.0/4.</t>

<t>IPv6 Host groups are identified by IPv6 addresses as defined in <xref target="RFC4291"/> section 2.7
and updated by <xref target="RFC7346"/>, <xref target="RFC7371"/>.</t>

<t>IP and IPv6 addresses as specified in <xref target="SSM"/> are not used for
ASM IP multicast and are not considered IP host groups. They are instead
only the destination address part G of Source Specific Multicast (SSM)
IP multicast (S,G) channels.</t>

<t>Appendix I contains some background discussion of several issues
related to host group addresses.</t>

</section>
<section anchor="model-of-a-host-ip-implementation"><name>MODEL OF A HOST IP IMPLEMENTATION</name>

<t>The multicast extensions to a host IP implementation are specified in
terms of the layered model illustrated below in <xref target="FIG1"/>.  In this model, ICMP/ICMPv6
and (for level 2 hosts) IGMP/MLD are considered to be implemented within
the IP module, and the mapping of IP addresses to local network
addresses is considered to be the responsibility of local network
modules.  This model is for expository purposes only, and should not
be construed as constraining an actual implementation.</t>

<figure title="multicast extensions to a host IP implementation" anchor="FIG1"><artwork><![CDATA[
   |                                                          |
   |              Upper-Layer Protocol Modules                |
   |__________________________________________________________|

--------------------- IP Service Interface -----------------------
    __________________________________________________________
   |                            |              |              |
   |                            | IP:          | IPv6:        |
   |                            | ICMP+ICMP    | ICMPv6+MLD   |
   |    IP [IP and/or IPv6]     |______________|______________|
   |           Module(s)                                      |
   |                                                          |
   |__________________________________________________________|

---------------- Local Network Service Interface -----------------
    __________________________________________________________
   |                            |                             |
   |           Local            | IP-to-local address mapping |
   |          Network           |         (e.g., ARP/ND)      |
   |          Modules           |_____________________________|
   |      (e.g., Ethernet)                                    |
   |                                                          |
]]></artwork></figure>

<t>To provide level 1 multicasting, a host IP implementation <bcp14>MUST</bcp14>
support the transmission of multicast IP datagrams.  To provide level
2 multicasting, a host <bcp14>MUST</bcp14> also support the reception of multicast
IP datagrams.  Each of these two new services is described in a
separate section, below.  For each service, extensions are specified
for the IP service interface, the IP module, the local network
service interface, and an Ethernet local network module.  Extensions
to local network modules other than Ethernet are mentioned briefly,
but are not specified in detail.</t>

</section>
<section anchor="sending"><name>SENDING MULTICAST IP DATAGRAMS</name>

<section anchor="extensions-to-the-ip-service-interface"><name>Extensions to the IP Service Interface</name>

<t>Multicast IP datagrams are sent using the same "Send IP" operation
used to send unicast IP datagrams; an upper-layer protocol module
merely specifies an IP host group address, rather than an individual
IP address, as the destination.  However, a number of extensions may
be necessary or desirable.</t>

<t>First, the service interface <bcp14>SHOULD</bcp14> provide a way for the upper-layer
protocol to specify the IP time-to-live of an outgoing multicast
datagram, if such a capability does not already exist.  If the
upper-layer protocol chooses not to specify a time-to-live, it <bcp14>SHOULD</bcp14>
default to 1 for all multicast IP datagrams, so that an explicit
choice is required to multicast beyond a single network.</t>

<t>Second, for hosts that may be attached to more than one network, the
service interface <bcp14>SHOULD</bcp14> provide a way for the upper-layer protocol
to identify which network interface is be used for the multicast
transmission.  Only one interface is used for the initial
transmission; multicast routers are responsible for forwarding to any
other networks, if necessary.  If the upper-layer protocol chooses
not to identify an outgoing interface, a default interface <bcp14>SHOULD</bcp14> be
used, preferably under the control of system management.</t>

<t>Third (level 2 implementations only), for the case in which the host
is itself a member of a group to which a datagram is being sent, the
service interface <bcp14>SHOULD</bcp14> provide a way for the upper-layer protocol
to inhibit local delivery of the datagram; by default, a copy of the
datagram is looped back.  This is a performance optimization for
upper-layer protocols that restrict the membership of a group to one
process per host (such as a routing protocol), or that handle
loopback of group communication at a higher layer (such as a
multicast transport protocol).</t>

<t>IPv6 socket extensions supporting these functions are defined in <xref target="RFC3493"/>, section 5.2.</t>

</section>
<section anchor="extensions"><name>Extensions to the IP Module</name>

<t>To support the sending of multicast IP datagrams, the IP module <bcp14>MUST</bcp14>
be extended to recognize IP host group addresses when routing
outgoing datagrams.  Most IP implementations include the following
logic:</t>

<figure><artwork><![CDATA[
    if IP-destination is on the same local network,
       send datagram locally to IP-destination
    else
       send datagram locally to GatewayTo( IP-destination )
]]></artwork></figure>

<t>To allow multicast transmissions, the routing logic <bcp14>MUST</bcp14> be changed to:</t>

<figure><artwork><![CDATA[
    if IP-destination is on the same local network
    or IP-destination is a host group,
       send datagram locally to IP-destination
    else
       send datagram locally to GatewayTo( IP-destination )
]]></artwork></figure>

<t>If the sending host is itself a member of the destination group on
the outgoing interface, a copy of the outgoing datagram <bcp14>MUST</bcp14> be
looped-back for local delivery, unless inhibited by the sender.
(Level 2 implementations only.)</t>

<t>The IP source address of the outgoing datagram <bcp14>MUST</bcp14> be one of the
individual addresses corresponding to the outgoing interface.</t>

<t>A host group address <bcp14>MUST</bcp14> never be placed in the source address field
or anywhere in a source route or record route option of an outgoing
IP datagram. These packets are not IP Multicast packets but simply
invalid packets.</t>

</section>
<section anchor="extensions-to-the-local-network-service-interface"><name>Extensions to the Local Network Service Interface</name>

<t>No change to the local network service interface is required to
support the sending of multicast IP datagrams.  The IP module merely
specifies an IP host group destination, rather than an individual IP
destination, when it invokes the existing "Send Local" operation.</t>

</section>
<section anchor="ethernet"><name>Extensions to an Ethernet Local Network Module</name>

<t>The Ethernet directly supports the sending of local multicast packets
by allowing multicast addresses in the destination field of Ethernet
packets.  All that is needed to support the sending of multicast IP
datagrams is a procedure for mapping IP host group addresses to
Ethernet multicast addresses.</t>

<t>An IP host group address is mapped to an Ethernet multicast address
by placing the low-order 23-bits of the IP address into the low-order
23 bits of the Ethernet multicast address 01-00-5E-00-00-00 (hex).
Because there are 28 significant bits in an IP host group address,
more than one host group address may map to the same Ethernet
multicast address.</t>

<t>Mapping of IPv6 host group addresses to Ethernet is defined in
<xref target="RFC2464"/> and <xref target="RFC6085"/>.</t>

</section>
<section anchor="extensions-to-local-network-modules-other-than-ethernet"><name>Extensions to Local Network Modules other than Ethernet</name>

<t>Other networks that directly support multicasting, such as rings or
buses conforming to the IEEE 802.2 standard, may be handled the same
way as Ethernet for the purpose of sending multicast IP datagrams.
For a network that supports broadcast but not multicast, such as the
Experimental Ethernet, all IP host group addresses may be mapped to a
single local broadcast address (at the cost of increased overhead on
all local hosts).  For a point-to-point link joining two hosts (or a
host and a multicast router), multicasts <bcp14>SHOULD</bcp14> be transmitted
exactly like unicasts.  For a store-and-forward network like the
ARPANET or a public X.25 network, all IP host group addresses might
be mapped to the well-known local address of an IP multicast router;
a router on such a network would take responsibility for completing
multicast delivery within the network as well as among networks.</t>

</section>
</section>
<section anchor="receiving-multicast-ip-datagrams"><name>RECEIVING MULTICAST IP DATAGRAMS</name>

<section anchor="extensions-to-the-ip-service-interface-1"><name>Extensions to the IP Service Interface</name>

<t>Incoming multicast IP datagrams are received by upper-layer protocol
modules using the same "Receive IP" operation as normal, unicast
datagrams.  Selection of a destination upper-layer protocol is based
on the protocol field in the IP header, regardless of the destination
IP address.  However, before any datagrams destined to a particular
group can be received, an upper-layer protocol must ask the IP module
to join that group.  Thus, the IP service interface <bcp14>MUST</bcp14> be extended
to provide two new operations:</t>

<figure><artwork><![CDATA[
    JoinHostGroup  ( group-address, interface )
    
    LeaveHostGroup ( group-address, interface )
]]></artwork></figure>

<t>The JoinHostGroup operation requests that this host become a member
of the host group identified by "group-address" on the given network
interface.  The LeaveGroup operation requests that this host give up
its membership in the host group identified by "group-address" on the
given network interface.  The interface argument may be omitted on
hosts that support only one interface.  For hosts that may be
attached to more than one network, the upper-layer protocol may
choose to leave the interface unspecified, in which case the request
will apply to the default interface for sending multicast datagrams
(see section 6.1).</t>

<t>It is permissible to join the same group on more than one interface,
in which case duplicate multicast datagrams may be received.  It is
also permissible for more than one upper-layer protocol to request
membership in the same group.</t>

<t>Both operations <bcp14>SHOULD</bcp14> return immediately (i.e., they are non-
blocking operations), indicating success or failure.  Either
operation may fail due to an invalid group address or interface
identifier.  JoinHostGroup may fail due to lack of local resources.
LeaveHostGroup may fail because the host does not belong to the given
group on the given interface.  LeaveHostGroup may succeed, but the
membership persist, if more than one upper-layer protocol has
requested membership in the same group.</t>

<t>IPv6 socket extensions supporting these functions are defined in <xref target="RFC3493"/>, section 5.2.
<xref target="RFC3678"/> specifies these functions for IP and IPv6 (as well as for SSM). Note that
these are UDP socket extions (and not IP/IPv6 socket extensions due to the absence of
widely available/used IP/IPv6 level socket APIs).</t>

</section>
<section anchor="extensions-to-the-ip-module"><name>Extensions to the IP Module</name>

<t>To support the reception of multicast IP datagrams, the IP module
<bcp14>MUST</bcp14> be extended to maintain a list of host group memberships
associated with each network interface.  An incoming datagram
destined to one of those groups is processed exactly the same way as
datagrams destined to one of the host's individual addresses.</t>

<t>Incoming datagrams destined to groups to which the host does not
belong are discarded without generating any error report or log
entry.  On hosts with more than one network interface, if a datagram
arrives via one interface, destined for a group to which the host
belongs only on a different interface, the datagram is quietly
discarded.  (These cases should occur only as a result of inadequate
multicast address filtering in a local network module.)</t>

<t>An incoming datagram is not rejected for having an IP time-to-live of
1 (i.e., the time-to-live should not automatically be decremented on
arriving datagrams that are not being forwarded).  An incoming
datagram with an IP host group address in its source address field is
quietly discarded.  An ICMP/ICMPv6 error message (Destination Unreachable,
Time Exceeded, Parameter Problem, Source Quench, or Redirect) is
never generated in response to a datagram destined to an IP host
group.</t>

<t>The list of host group memberships is updated in response to
JoinHostGroup and LeaveHostGroup requests from upper-layer protocols.
Each membership should have an associated reference count or similar
mechanism to handle multiple requests to join and leave the same
group.  On the first request to join and the last request to leave a
group on a given interface, the local network module for that
interface is notified, so that it may update its multicast reception
filter (see section 7.3).</t>

<t>The IP module <bcp14>MUST</bcp14> also be extended to implement the IGMP protocol for
IP and/or the MLD protocol for IPv6 (depending on the version of IP to be
supported).  IGMP/MLD are used to keep neighboring multicast
routers informed of the host group memberships present on a
particular local network.</t>

</section>
<section anchor="extensions-to-the-local-network-service-interface-1"><name>Extensions to the Local Network Service Interface</name>

<t>Incoming local network multicast packets are delivered to the IP
module using the same "Receive Local" operation as local network
unicast packets.  To allow the IP module to tell the local network
module which multicast packets to accept, the local network service
interface is extended to provide two new operations:</t>

<figure><artwork><![CDATA[
    JoinLocalGroup  ( group-address )
    
    LeaveLocalGroup ( group-address )
]]></artwork></figure>

<t>where "group-address" is an IP host group address.  The
JoinLocalGroup operation requests the local network module to accept
and deliver up subsequently arriving packets destined to the given IP
host group address.  The LeaveLocalGroup operation requests the local
network module to stop delivering up packets destined to the given IP
host group address.  The local network module is expected to map the
IP host group addresses to local network addresses as required to
update its multicast reception filter.  Any local network module is
free to ignore LeaveLocalGroup requests, and may deliver up packets
destined to more addresses than just those specified in
JoinLocalGroup requests, if it is unable to filter incoming packets
adequately.</t>

<t>The local network module <bcp14>MUST NOT</bcp14> deliver up any multicast packets
that were transmitted from that module; loopback of multicasts is
handled at the IP layer or higher.</t>

</section>
<section anchor="extensions-to-an-ethernet-local-network-module"><name>Extensions to an Ethernet Local Network Module</name>

<t>To support the reception of multicast IP datagrams, an Ethernet
module <bcp14>MUST</bcp14> be able to receive packets addressed to the Ethernet
multicast addresses that correspond to the host's IP host group
addresses.  It is highly desirable to take advantage of any address
filtering capabilities that the Ethernet hardware interface may have,
so that the host receives only those packets that are destined to it.</t>

<t>Unfortunately, many current Ethernet interfaces have a small limit on
the number of addresses that the hardware can be configured to
recognize.  Nevertheless, an implementation <bcp14>MUST</bcp14> be capable of
listening on an arbitrary number of Ethernet multicast addresses,
which may mean "opening up" the address filter to accept all
multicast packets during those periods when the number of addresses
exceeds the limit of the filter.</t>

<t>For interfaces with inadequate hardware address filtering, it may be
desirable (for performance reasons) to perform Ethernet address
filtering within the software of the Ethernet module.  This is not
mandatory, however, because the IP module performs its own filtering
based on IP destination addresses.</t>

</section>
<section anchor="extensions-to-local-network-modules-other-than-ethernet-1"><name>Extensions to Local Network Modules other than Ethernet</name>

<t>Other multicast networks, such as IEEE 802.2 networks, can be handled
the same way as Ethernet for the purpose of receiving multicast IP
datagrams.  For pure broadcast networks, such as the Experimental
Ethernet, all incoming broadcast packets can be accepted and passed
to the IP module for IP-level filtering.  On point-to-point or
store-and-forward networks, multicast IP datagrams will arrive as
local network unicasts, so no change to the local network module
should be necessary.</t>

</section>
</section>
<section anchor="normative"><name>Normative changes</name>

<section anchor="moving-rfc1112-and-igmpv1-to-historic-status"><name>Moving RFC1112 and IGMPv1 to historic status</name>

<t>This document moves <xref target="RFC1112"/> to historic status so that the IGMP version  1 protocol
as specified in Appendix 1 of <xref target="RFC1112"/> is moved to historic status. This protocol is
not included in the text of this document anymore, which hence renders IGMPv1 historic.</t>

<t>All other aspects of <xref target="RFC1112"/> beside IGMPv1 are inherited and enhanced by this document
and maintain their current Internet Standard designation from <xref target="RFC1112"/> through the
normative status of this document.</t>

</section>
<section anchor="backward-compatibility-with-igmpv1"><name>Backward compatibility with IGMPv1</name>

<t>Newer versions of IGMP or other protocols/mechisms including but not necessary limited
to <xref target="IGMPv2"/>, <xref target="IGMPv3"/> or <xref target="IGMPv3LITE"/> do or may (such as in <xref target="IGMPsnooping"/>) 
include backward compatibility with IGMPv1, which requires the 
<xref target="RFC1112"/> specification of IGMPv1.</t>

<t>This document does not ask for any change to any specifications or implementations that
includes any form of support for IGMPv1 for backward compatibility reasons as long as it
also includes compatibility with a newer version of IGMP starting with <xref target="IGMPv2"/>. Any new
or updated specification that wants to maintain such such backward compatibility with IGMPv1
needs to continue to reference the specification of IGMPv1 via <xref target="RFC1112"/>.  Any future reference
for new or updated work to any other definition from <xref target="RFC1112"/> needs to refer to this document instead.</t>

</section>
</section>
<section anchor="changes"><name>Changes from RFC1112</name>

<t>Beyond the normative changes described in <xref target="normative"/>, this document introduces
the following changes over <xref target="RFC1112"/>.</t>

<section anchor="normative-language"><name>Normative language</name>

<t>This document introduces the use of normative language through capitalization. <xref target="RFC1112"/>
preceeded this method and hence did not include this language.</t>

</section>
<section anchor="superceeding-references-to-igmpv1"><name>Superceeding references to IGMPv1</name>

<t>References to IGMPv1 in <xref target="RFC1112"/> are replaced by references to <xref target="IGMPv3"/> in this text.</t>

</section>
<section anchor="introduction-of-the-term-any-source-multicast-asm"><name>Introduction of the term Any-Source Multicast (ASM)</name>

<t>This update introduces the term "ASM IP multicast" (ASM) as another term
for "Host Extensions for IP multicast". This term was introduced when 
<xref target="SSM"/> introduced another service model for IP Multicast called
"Source Specific Multicast" (SSM), and hence, the service described in
<xref target="RFC1112"/> and this update is more precisely called Any Source Multicast (ASM) IP multicast.</t>

<t><xref target="RFC1112"/> defines and uses the term "host group". This term is not
applicable to IP/IPv6 multicast group addresses that are not used for ASM but SSM 
according to <xref target="SSM"/>. New text in this document explains this.</t>

<t>No functional changes to the IP Multicast service are incurred by these changes.</t>

</section>
<section anchor="applicability-to-both-ip-and-ipv6"><name>Applicability to both IP and IPv6</name>

<t>This document is written to apply to both IP and IPv6 by adding equivalent
detail for IPv6 where <xref target="RFC1112"/> only covered IP: addressing and protocols
in support of the service - Multicast Listener Discovery <xref target="MLDv2"/> for IPv6 versus
IGMP for IP.</t>

<t>Note: IPv6 documents such as <xref target="RFC1883"/> and all its updates (e.g.: <xref target="RFC8200"/>) are defining
multicasting in the assumption of the service of <xref target="RFC1112"/> for IPv6, but without
being able to refer to <xref target="RFC1112"/>, as it was only defined for IP. Future documents
can refer to this document as the IP Multicast / ASM service for both IP and IPv6.</t>

<t>Additional text provides references for IETF UDP socket API specifications that instantiate
the abstract APIs defined in this document.</t>

<t>No functional changes to the IP Multicast service are incurred by these text changes.</t>

</section>
<section anchor="standard-for-ip-multicasting-in-controlled-networks"><name>Standard for IP multicasting in controlled networks</name>

<t>This document removes the claim in the abstract of <xref target="RFC1112"/>, that these host extensions are
"... the recommended standard for IP multicasting in the Internet."</t>

<t>The reason for this is that <xref target="RFC8815"/> deprecated the ASM Service
across the Internet because there is no Internet Standard solution
for protocols to support interdomain ASM except for <xref target="RFC3956"/>, which
is only applicable to IPv6, and even that solution does not resolve
the challenges to source access control in interdomain deployments.</t>

<t>In result, ASM is today "only" a recommended solution for controlled networks
including controlled federated networks for applications for which SSM is
not usable.</t>

<t>However, these limitations to the applicability of ASM to no impact the applicability
of most of the host stack described in this document for other forms of IP Multicast,
specifically "Source Specific Multicast", <xref target="SSM"/>, which inherits all aspects of
ASM specified in this document, especially the sending (<xref target="sending"/>, <xref target="extensions"/>) of IP Multicast
packets as well as the mapping to ethernet (<xref target="ethernet"/>). It only amends the joining
of IP Multicast traffic on IP Multicast receivers with additional procedures fitting into
the host stack described in this document.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<section anchor="protocol-numbers-registry"><name>Protocol Numbers registry</name>

<t>IANA is asked to replace the Reference field for the IGMP protocol in the Protocol Numbers registry (https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml) from <xref target="RFC1112"/> to [THIS-RFC].</t>

<t>Explanation: This protocol number is used by all versions of IGMP, including <xref target="IGMPv2"/> and <xref target="IGMPv3"/> and is unaffected by making IGMP version 1 historic.</t>

</section>
<section anchor="internet-group-management-protocol-igmp-type-numbers-registry"><name>Internet Group Management Protocol (IGMP) Type Numbers Registry</name>

<t>IANA is asked to replace the Reference to <xref target="RFC1112"/> for the 0x11 / "IGMP Membership Query" entry in the "Internet Group Management Protocol (IGMP) Type Numbers Registry" (https://www.iana.org/assignments/igmp-type-numbers/igmp-type-numbers.xhtml) with "<xref target="RFC1112"/>, [RFC2236], [RFC3376]".</t>

<t>Explanation: This type code messages where introduced by <xref target="RFC1112"/> but modified versions thereof where also introduced by [RFC2236] and [RFC3376], so that it is clearer if all three RFCs are indicated. All other references to <xref target="RFC1112"/> in this registry are specifically referring to that RFC in it's role of defining IGMP version 1 and thus need to continue to refer to <xref target="RFC1112"/> and not [THIS-RFC.</t>

</section>
<section anchor="multicast-48-bit-mac-adddresses-registry"><name>Multicast 48-bit MAC Adddresses registry</name>

<t>IANA is asked to replace the Reference field for the IPv4 Multicast range entry in the "IANA Multicast 48-bit MAC Addresses" (https://www.iana.org/assignments/ethernet-numbers) from <xref target="RFC1112"/> to [THIS-RFC].</t>

</section>
<section anchor="ipv4-address-range-registries"><name>IPv4 Address range registries</name>

<t>IANA is asked to replace the Reference field for the 240.0.0.0/4 entry in the "IANA IPv4 Special-Purpose Address Registry" (https://www.iana.org/assignments/iana-ipv4-special-registry/iana-ipv4-special-registry.xhtml) from <xref target="RFC1112"/> to [THIS-RFC]. The Section 4 text stays unchanged.</t>

<t>IANA is asked to replace the Reference to <xref target="RFC1112"/> in the "IANA IPv4 Address Space Registry" (https://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xhtml) with [THIS-RFC].</t>

</section>
<section anchor="ipv4-multicast-address-space-registry"><name>IPv4 Multicast Address Space registry</name>

<t>IANA is asked to replace the three references to <xref target="RFC1112"/> in the "IPv4 Multicast Address Space Registry" (https://www.iana.org/assignments/multicast-addresses/multicast-addresses.xhtml) with [THIS-RFC].</t>

</section>
<section anchor="ip-flow-information-export-registry"><name>IP Flow Information Export registry</name>

<t>IANA is asked to replace the two references to <xref target="RFC1112"/> in the "IPFIX Information Elements" registry (https://www.iana.org/assignments/ipfix/ipfix.xhtml) with [THIS-RFC].</t>

</section>
</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC791">
  <front>
    <title>Internet Protocol</title>
    <author fullname="J. Postel" initials="J." surname="Postel"/>
    <date month="September" year="1981"/>
  </front>
  <seriesInfo name="STD" value="5"/>
  <seriesInfo name="RFC" value="791"/>
  <seriesInfo name="DOI" value="10.17487/RFC0791"/>
</reference>

<reference anchor="RFC1112">
  <front>
    <title>Host extensions for IP multicasting</title>
    <author fullname="S.E. Deering" initials="S.E." surname="Deering"/>
    <date month="August" year="1989"/>
    <abstract>
      <t>This memo specifies the extensions required of a host implementation of the Internet Protocol (IP) to support multicasting. Recommended procedure for IP multicasting in the Internet. This RFC obsoletes RFCs 998 and 1054. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="5"/>
  <seriesInfo name="RFC" value="1112"/>
  <seriesInfo name="DOI" value="10.17487/RFC1112"/>
</reference>

<reference anchor="IGMPv2">
  <front>
    <title>Internet Group Management Protocol, Version 2</title>
    <author fullname="W. Fenner" initials="W." surname="Fenner"/>
    <date month="November" year="1997"/>
    <abstract>
      <t>This memo documents IGMPv2, used by IP hosts to report their multicast group memberships to routers. It updates STD 5, RFC 1112. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2236"/>
  <seriesInfo name="DOI" value="10.17487/RFC2236"/>
</reference>

<reference anchor="RFC2464">
  <front>
    <title>Transmission of IPv6 Packets over Ethernet Networks</title>
    <author fullname="M. Crawford" initials="M." surname="Crawford"/>
    <date month="December" year="1998"/>
    <abstract>
      <t>This document specifies the frame format for transmission of IPv6 packets and the method of forming IPv6 link-local addresses and statelessly autoconfigured addresses on Ethernet networks. It also specifies the content of the Source/Target Link-layer Address option used in Router Solicitation, Router Advertisement, Neighbor Solicitation, Neighbor Advertisement and Redirect messages when those messages are transmitted on an Ethernet. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2464"/>
  <seriesInfo name="DOI" value="10.17487/RFC2464"/>
</reference>

<reference anchor="RFC4291">
  <front>
    <title>IP Version 6 Addressing Architecture</title>
    <author fullname="R. Hinden" initials="R." surname="Hinden"/>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <date month="February" year="2006"/>
    <abstract>
      <t>This specification defines the addressing architecture of the IP Version 6 (IPv6) protocol. The document includes the IPv6 addressing model, text representations of IPv6 addresses, definition of IPv6 unicast addresses, anycast addresses, and multicast addresses, and an IPv6 node's required addresses.</t>
      <t>This document obsoletes RFC 3513, "IP Version 6 Addressing Architecture". [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4291"/>
  <seriesInfo name="DOI" value="10.17487/RFC4291"/>
</reference>

<reference anchor="SSM">
  <front>
    <title>Source-Specific Multicast for IP</title>
    <author fullname="H. Holbrook" initials="H." surname="Holbrook"/>
    <author fullname="B. Cain" initials="B." surname="Cain"/>
    <date month="August" year="2006"/>
    <abstract>
      <t>IP version 4 (IPv4) addresses in the 232/8 (232.0.0.0 to 232.255.255.255) range are designated as source-specific multicast (SSM) destination addresses and are reserved for use by source-specific applications and protocols. For IP version 6 (IPv6), the address prefix FF3x::/32 is reserved for source-specific multicast use. This document defines an extension to the Internet network service that applies to datagrams sent to SSM addresses and defines the host and router requirements to support this extension. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4607"/>
  <seriesInfo name="DOI" value="10.17487/RFC4607"/>
</reference>

<reference anchor="IGMPv3">
  <front>
    <title>Internet Group Management Protocol, Version 3</title>
    <author fullname="B. Cain" initials="B." surname="Cain"/>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <author fullname="I. Kouvelas" initials="I." surname="Kouvelas"/>
    <author fullname="B. Fenner" initials="B." surname="Fenner"/>
    <author fullname="A. Thyagarajan" initials="A." surname="Thyagarajan"/>
    <date month="October" year="2002"/>
  </front>
  <seriesInfo name="RFC" value="3376"/>
  <seriesInfo name="DOI" value="10.17487/RFC3376"/>
</reference>

<reference anchor="RFC8200">
  <front>
    <title>Internet Protocol, Version 6 (IPv6) Specification</title>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <author fullname="R. Hinden" initials="R." surname="Hinden"/>
    <date month="July" year="2017"/>
    <abstract>
      <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="86"/>
  <seriesInfo name="RFC" value="8200"/>
  <seriesInfo name="DOI" value="10.17487/RFC8200"/>
</reference>

<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>

<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">




<reference anchor="I-D.ietf-taps-interface">
   <front>
      <title>An Abstract Application Layer Interface to Transport Services</title>
      <author fullname="Brian Trammell" initials="B." surname="Trammell">
         <organization>Google Switzerland GmbH</organization>
      </author>
      <author fullname="Michael Welzl" initials="M." surname="Welzl">
         <organization>University of Oslo</organization>
      </author>
      <author fullname="Reese Enghardt" initials="R." surname="Enghardt">
         <organization>Netflix</organization>
      </author>
      <author fullname="Gorry Fairhurst" initials="G." surname="Fairhurst">
         <organization>University of Aberdeen</organization>
      </author>
      <author fullname="Mirja Kühlewind" initials="M." surname="Kühlewind">
         <organization>Ericsson</organization>
      </author>
      <author fullname="Colin Perkins" initials="C." surname="Perkins">
         <organization>University of Glasgow</organization>
      </author>
      <author fullname="Philipp S. Tiesel" initials="P. S." surname="Tiesel">
         <organization>SAP SE</organization>
      </author>
      <author fullname="Tommy Pauly" initials="T." surname="Pauly">
         <organization>Apple Inc.</organization>
      </author>
      <date day="16" month="March" year="2024"/>
      <abstract>
	 <t>   This document describes an abstract application programming
   interface, API, to the transport layer that enables the selection of
   transport protocols and network paths dynamically at runtime.  This
   API enables faster deployment of new protocols and protocol features
   without requiring changes to the applications.  The specified API
   follows the Transport Services architecture by providing
   asynchronous, atomic transmission of messages.  It is intended to
   replace the BSD sockets API as the common interface to the transport
   layer, in an environment where endpoints could select from multiple
   network paths and potential transport protocols.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-taps-interface-26"/>
   
</reference>

<reference anchor="RFC1045">
  <front>
    <title>VMTP: Versatile Message Transaction Protocol: Protocol specification</title>
    <author fullname="D.R. Cheriton" initials="D.R." surname="Cheriton"/>
    <date month="February" year="1988"/>
    <abstract>
      <t>This memo specifies the Versatile Message Transaction Protocol (VMTP) [Version 0.7 of 19-Feb-88], a transport protocol specifically designed to support the transaction model of communication, as exemplified by remote procedure call (RPC). The full function of VMTP, including support for security, real-time, asynchronous message exchanges, streaming, multicast and idempotency, provides a rich selection to the VMTP user level. Subsettability allows the VMTP module for particular clients and servers to be specialized and simplified to the services actually required. Examples of such simple clients and servers include PROM network bootload programs, network boot servers, data sensors and simple controllers, to mention but a few examples. This RFC describes a protocol proposed as a standard for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="1045"/>
  <seriesInfo name="DOI" value="10.17487/RFC1045"/>
</reference>

<reference anchor="RFC1883">
  <front>
    <title>Internet Protocol, Version 6 (IPv6) Specification</title>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <author fullname="R. Hinden" initials="R." surname="Hinden"/>
    <date month="December" year="1995"/>
    <abstract>
      <t>This document specifies version 6 of the Internet Protocol (IPv6), also sometimes referred to as IP Next Generation or IPng. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="1883"/>
  <seriesInfo name="DOI" value="10.17487/RFC1883"/>
</reference>

<reference anchor="RFC1972">
  <front>
    <title>A Method for the Transmission of IPv6 Packets over Ethernet Networks</title>
    <author fullname="M. Crawford" initials="M." surname="Crawford"/>
    <date month="August" year="1996"/>
    <abstract>
      <t>This memo specifies the frame format for transmission of IPv6 [IPV6] packets and the method of forming IPv6 link-local addresses on Ethernet networks. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="1972"/>
  <seriesInfo name="DOI" value="10.17487/RFC1972"/>
</reference>

<reference anchor="RFC3493">
  <front>
    <title>Basic Socket Interface Extensions for IPv6</title>
    <author fullname="R. Gilligan" initials="R." surname="Gilligan"/>
    <author fullname="S. Thomson" initials="S." surname="Thomson"/>
    <author fullname="J. Bound" initials="J." surname="Bound"/>
    <author fullname="J. McCann" initials="J." surname="McCann"/>
    <author fullname="W. Stevens" initials="W." surname="Stevens"/>
    <date month="February" year="2003"/>
    <abstract>
      <t>The de facto standard Application Program Interface (API) for TCP/IP applications is the "sockets" interface. Although this API was developed for Unix in the early 1980s it has also been implemented on a wide variety of non-Unix systems. TCP/IP applications written using the sockets API have in the past enjoyed a high degree of portability and we would like the same portability with IPv6 applications. But changes are required to the sockets API to support IPv6 and this memo describes these changes. These include a new socket address structure to carry IPv6 addresses, new address conversion functions, and some new socket options. These extensions are designed to provide access to the basic IPv6 features required by TCP and UDP applications, including multicasting, while introducing a minimum of change into the system and providing complete compatibility for existing IPv4 applications. Additional extensions for advanced IPv6 features (raw sockets and access to the IPv6 extension headers) are defined in another document. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3493"/>
  <seriesInfo name="DOI" value="10.17487/RFC3493"/>
</reference>

<reference anchor="RFC3678">
  <front>
    <title>Socket Interface Extensions for Multicast Source Filters</title>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <author fullname="B. Fenner" initials="B." surname="Fenner"/>
    <author fullname="B. Quinn" initials="B." surname="Quinn"/>
    <date month="January" year="2004"/>
    <abstract>
      <t>The Internet Group Management Protocol (IGMPv3) for IPv4 and the Multicast Listener Discovery (MLDv2) for IPv6 add the capability for applications to express source filters on multicast group memberships, which allows receiver applications to determine the set of senders (sources) from which to accept multicast traffic. This capability also simplifies support of one-to-many type multicast applications. This document specifies new socket options and functions to manage source filters for IP Multicast group memberships. It also defines the socket structures to provide input and output arguments to these new application program interfaces (APIs). These extensions are designed to provide access to the source filtering features, while introducing a minimum of change into the system and providing complete compatibility for existing multicast applications.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3678"/>
  <seriesInfo name="DOI" value="10.17487/RFC3678"/>
</reference>

<reference anchor="MLDv2">
  <front>
    <title>Multicast Listener Discovery Version 2 (MLDv2) for IPv6</title>
    <author fullname="R. Vida" initials="R." role="editor" surname="Vida"/>
    <author fullname="L. Costa" initials="L." role="editor" surname="Costa"/>
    <date month="June" year="2004"/>
    <abstract>
      <t>This document updates RFC 2710, and it specifies Version 2 of the ulticast Listener Discovery Protocol (MLDv2). MLD is used by an IPv6 router to discover the presence of multicast listeners on directly attached links, and to discover which multicast addresses are of interest to those neighboring nodes. MLDv2 is designed to be interoperable with MLDv1. MLDv2 adds the ability for a node to report interest in listening to packets with a particular multicast address only from specific source addresses or from all sources except for specific source addresses. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3810"/>
  <seriesInfo name="DOI" value="10.17487/RFC3810"/>
</reference>

<reference anchor="RFC3956">
  <front>
    <title>Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address</title>
    <author fullname="P. Savola" initials="P." surname="Savola"/>
    <author fullname="B. Haberman" initials="B." surname="Haberman"/>
    <date month="November" year="2004"/>
    <abstract>
      <t>This memo defines an address allocation policy in which the address of the Rendezvous Point (RP) is encoded in an IPv6 multicast group address. For Protocol Independent Multicast - Sparse Mode (PIM-SM), this can be seen as a specification of a group-to-RP mapping mechanism. This allows an easy deployment of scalable inter-domain multicast and simplifies the intra-domain multicast configuration as well. This memo updates the addressing format presented in RFC 3306. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3956"/>
  <seriesInfo name="DOI" value="10.17487/RFC3956"/>
</reference>

<reference anchor="IGMPsnooping">
  <front>
    <title>Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches</title>
    <author fullname="M. Christensen" initials="M." surname="Christensen"/>
    <author fullname="K. Kimball" initials="K." surname="Kimball"/>
    <author fullname="F. Solensky" initials="F." surname="Solensky"/>
    <date month="May" year="2006"/>
    <abstract>
      <t>This memo describes the recommendations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) snooping switches. These are based on best current practices for IGMPv2, with further considerations for IGMPv3- and MLDv2-snooping. Additional areas of relevance, such as link layer topology changes and Ethernet-specific encapsulation issues, are also considered. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4541"/>
  <seriesInfo name="DOI" value="10.17487/RFC4541"/>
</reference>

<reference anchor="RFC4861">
  <front>
    <title>Neighbor Discovery for IP version 6 (IPv6)</title>
    <author fullname="T. Narten" initials="T." surname="Narten"/>
    <author fullname="E. Nordmark" initials="E." surname="Nordmark"/>
    <author fullname="W. Simpson" initials="W." surname="Simpson"/>
    <author fullname="H. Soliman" initials="H." surname="Soliman"/>
    <date month="September" year="2007"/>
    <abstract>
      <t>This document specifies the Neighbor Discovery protocol for IP Version 6. IPv6 nodes on the same link use Neighbor Discovery to discover each other's presence, to determine each other's link-layer addresses, to find routers, and to maintain reachability information about the paths to active neighbors. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4861"/>
  <seriesInfo name="DOI" value="10.17487/RFC4861"/>
</reference>

<reference anchor="RFC5771">
  <front>
    <title>IANA Guidelines for IPv4 Multicast Address Assignments</title>
    <author fullname="M. Cotton" initials="M." surname="Cotton"/>
    <author fullname="L. Vegoda" initials="L." surname="Vegoda"/>
    <author fullname="D. Meyer" initials="D." surname="Meyer"/>
    <date month="March" year="2010"/>
    <abstract>
      <t>This document provides guidance for the Internet Assigned Numbers Authority (IANA) in assigning IPv4 multicast addresses. It obsoletes RFC 3171 and RFC 3138 and updates RFC 2780. This memo documents an Internet Best Current Practice.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="51"/>
  <seriesInfo name="RFC" value="5771"/>
  <seriesInfo name="DOI" value="10.17487/RFC5771"/>
</reference>

<reference anchor="IGMPv3LITE">
  <front>
    <title>Lightweight Internet Group Management Protocol Version 3 (IGMPv3) and Multicast Listener Discovery Version 2 (MLDv2) Protocols</title>
    <author fullname="H. Liu" initials="H." surname="Liu"/>
    <author fullname="W. Cao" initials="W." surname="Cao"/>
    <author fullname="H. Asaeda" initials="H." surname="Asaeda"/>
    <date month="February" year="2010"/>
    <abstract>
      <t>This document describes lightweight IGMPv3 and MLDv2 protocols (LW- IGMPv3 and LW-MLDv2), which simplify the standard (full) versions of IGMPv3 and MLDv2. The interoperability with the full versions and the previous versions of IGMP and MLD is also taken into account. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5790"/>
  <seriesInfo name="DOI" value="10.17487/RFC5790"/>
</reference>

<reference anchor="RFC6034">
  <front>
    <title>Unicast-Prefix-Based IPv4 Multicast Addresses</title>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <date month="October" year="2010"/>
    <abstract>
      <t>This specification defines an extension to the multicast addressing architecture of the IP Version 4 protocol. The extension presented in this document allows for unicast-prefix-based assignment of multicast addresses. By delegating multicast addresses at the same time as unicast prefixes, network operators will be able to identify their multicast addresses without needing to run an inter-domain allocation protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6034"/>
  <seriesInfo name="DOI" value="10.17487/RFC6034"/>
</reference>

<reference anchor="RFC6085">
  <front>
    <title>Address Mapping of IPv6 Multicast Packets on Ethernet</title>
    <author fullname="S. Gundavelli" initials="S." surname="Gundavelli"/>
    <author fullname="M. Townsley" initials="M." surname="Townsley"/>
    <author fullname="O. Troan" initials="O." surname="Troan"/>
    <author fullname="W. Dec" initials="W." surname="Dec"/>
    <date month="January" year="2011"/>
    <abstract>
      <t>When transmitting an IPv6 packet with a multicast destination address, the IPv6 destination address is mapped to an Ethernet link-layer multicast address. This document clarifies that a mapping of an IPv6 packet with a multicast destination address may in some circumstances map to an Ethernet link-layer unicast address. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6085"/>
  <seriesInfo name="DOI" value="10.17487/RFC6085"/>
</reference>

<reference anchor="RFC7346">
  <front>
    <title>IPv6 Multicast Address Scopes</title>
    <author fullname="R. Droms" initials="R." surname="Droms"/>
    <date month="August" year="2014"/>
    <abstract>
      <t>This document updates the definitions of IPv6 multicast scopes and therefore updates RFCs 4007 and 4291.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7346"/>
  <seriesInfo name="DOI" value="10.17487/RFC7346"/>
</reference>

<reference anchor="RFC7371">
  <front>
    <title>Updates to the IPv6 Multicast Addressing Architecture</title>
    <author fullname="M. Boucadair" initials="M." surname="Boucadair"/>
    <author fullname="S. Venaas" initials="S." surname="Venaas"/>
    <date month="September" year="2014"/>
    <abstract>
      <t>This document updates the IPv6 multicast addressing architecture by redefining the reserved bits as generic flag bits. The document also provides some clarifications related to the use of these flag bits.</t>
      <t>This document updates RFCs 3956, 3306, and 4291.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7371"/>
  <seriesInfo name="DOI" value="10.17487/RFC7371"/>
</reference>

<reference anchor="RFC8815">
  <front>
    <title>Deprecating Any-Source Multicast (ASM) for Interdomain Multicast</title>
    <author fullname="M. Abrahamsson" initials="M." surname="Abrahamsson"/>
    <author fullname="T. Chown" initials="T." surname="Chown"/>
    <author fullname="L. Giuliano" initials="L." surname="Giuliano"/>
    <author fullname="T. Eckert" initials="T." surname="Eckert"/>
    <date month="August" year="2020"/>
    <abstract>
      <t>This document recommends deprecation of the use of Any-Source Multicast (ASM) for interdomain multicast. It recommends the use of Source-Specific Multicast (SSM) for interdomain multicast applications and recommends that hosts and routers in these deployments fully support SSM. The recommendations in this document do not preclude the continued use of ASM within a single organization or domain and are especially easy to adopt in existing deployments of intradomain ASM using PIM Sparse Mode (PIM-SM).</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="229"/>
  <seriesInfo name="RFC" value="8815"/>
  <seriesInfo name="DOI" value="10.17487/RFC8815"/>
</reference>




    </references>


<?line 688?>

<section anchor="host-group-address-issues"><name>HOST GROUP ADDRESS ISSUES</name>

<t>This appendix is not part of the IP multicasting specification, but
provides background discussion of several issues related to IP host
group addresses.</t>

<section anchor="group-address-binding"><name>Group Address Binding</name>

<t>The binding of IP host group addresses to physical hosts may be
considered a generalization of the binding of IP unicast addresses.
An IP unicast address is statically bound to a single local network
interface on a single IP network.  An IP host group address is
dynamically bound to a set of local network interfaces on a set of IP
networks.</t>

<t>It is important to understand that an IP host group address is NOT
bound to a set of IP unicast addresses.  The multicast routers do not
need to maintain a list of individual members of each host group.
For example, a multicast router attached to an Ethernet need
associate only a single Ethernet multicast address with each host
group having local members, rather than a list of the members'
individual IP or Ethernet addresses.</t>

</section>
<section anchor="allocation-of-transient-host-group-addresses"><name>Allocation of Transient Host Group Addresses</name>

<t>This memo does not specify how transient group address are allocated.
It is anticipated that different portions of the IP transient host
group address space will be allocated using different techniques.
For example, there may be a number of servers that can be contacted
to acquire a new transient group address.  Some higher-level
protocols (such as VMTP, specified in <xref target="RFC1045"/>) may generate higher-
level transient "process group" or "entity group" addresses which are
then algorithmically mapped to a subset of the IP transient host
group addresses, similarly to the way that IP host group addresses
are mapped to Ethernet multicast addresses.  A portion of the IP
group address space may be set aside for random allocation by
applications that can tolerate occasional collisions with other
multicast users, perhaps generating new addresses until a suitably
"quiet" one is found.</t>

<t>In general, a host cannot assume that datagrams sent to any host
group address will reach only the intended hosts, or that datagrams
received as a member of a transient host group are intended for the
recipient.  Misdelivery must be detected at a level above IP, using
higher-level identifiers or authentication tokens.  Information
transmitted to a host group address should be encrypted or governed
by administrative routing controls if the sender is concerned about
unwanted listeners.</t>

</section>
</section>
<section anchor="discussion-and-explanations-to-be-removed"><name>Discussion and Explanations (TO BE REMOVED)</name>

<t>[RFC-editor: Please remove this section]</t>

<t>Please refer to <xref target="changes"/> for the non-process disucssion of the goals of this document.</t>

<section anchor="goals-of-this-document"><name>Goals of this document</name>

<t>The goal of this document is to allow for IETF to declare <xref target="RFC1112"/> historic and
inherit the full INTERNET STANDARD status of <xref target="RFC1112"/> with this document
immediately - without going through the otherwise necessary long process.</t>

<t>The reason why <xref target="RFC1112"/> needs to be declared historic is so that the IGMP
version 1 protocol specified in it can be declared obsolete. This update removes
IGMPv1 text.</t>

<t>The reason why this document is still needed (as an Internet Standard), is
because the IP Multicast service specified in <xref target="RFC1112"/> has since its inception
been the Internet Standard for the IP Multicasting service.</t>

<t>To allow for this document to gets immediately the intended Internet Standard status,
it introduces no functional changes and it deliverately avoids also any unnecessary
textual changes. This includes the deliberade non-upgrade of the <xref target="RFC1112"/> language
to use <xref target="RFC2119"/> terminology. While the use of that language might be preferred
for new work/text, the success of IP Multicasting as defined in <xref target="RFC2119"/> seems
to indicate that the existing text was more than sufficient.</t>

</section>
<section anchor="internet-standard-status"><name>Internet Standard status</name>

<t>Note that the removal of the IGMPv1 protocol may raise the question whether the
document in its current form still contains specifications sufficient for Internet
Standard as opposed to Informational.</t>

<t>The core aspects that impacts interoperability (and hence qualifies the document
for Internet Standard) is the format of IP packets when IP Multicast service is used,
e.g.: IP Multicast addressing and binding to Multicast Ethernet MAC addresses.
There is no other RFC that introduces these specifications for IP, because there was
never another update to <xref target="RFC791"/> to do this. <xref target="SSM"/>, another standards track
document bilding on <xref target="RFC1112"/>, defining the SSM service / host stack.</t>

<t>This update also includes the necessary text for IPv6. Note that for
IPv6 the ethernet MAC address mapping of IPv6 multicast packets was later (after <xref target="RFC1112"/>)
specified in <xref target="RFC1972"/> and its updates, but scattering the aspects of IPv6 multicast
across (currently) <xref target="RFC2464"/>, {RFC4291}} and <xref target="RFC8200"/> makes it arguably more
difficult for implementers to understand the technology than this document that
coalesces all these services aspects - from ethernet bonding to application interfac.</t>

<t>Beyond those packet format/ethernet aspects, historically, the Multicast service
(API) related text in <xref target="RFC1112"/> would not have been considered to be an
Internet Standards scope definition because this classification was not extended
to (abstract) APIs, even though they do of course define an interoperability interface
between e.g.: operating system providing the API and applications using it.</t>

<t>Recently, the IETF has changed its stance on this issue though and is working on
 <xref target="I-D.ietf-taps-interface"/> with the intent for it to become Internet Standard.
With this in mind, all that text of <xref target="RFC1112"/> can also be considered appropriate
for Internet Standard.</t>

</section>
<section anchor="changelog"><name>Changelog</name>

<t>This document is hosted at https://github.com/toerless/rfc1112bis. Please submit issues
with this text as issues to that github and report them on pim@ietf.org.</t>

</section>
<section anchor="candidate-open-issues"><name>Candidate Open Issues</name>

<t>The following questions are left as candidate open issues, which so far the authors think
do not deservice to be pursued, but the authors want to bring them to the awareness of
reviewers.</t>

<t>RFC1112 did not claim to be an update to rfc791 even though it does effectively update RFC791
because it exempts IP Multicast packets from RFC791 processing. And also introduces invalid packets
(source address IP Multicast which are neither unicast nor multicast). If we would want, we
can still declare this document to also be an update to rfc791.</t>

<t>Likewise the same could apply to RFC8200 which does not specify these details either.</t>

<t>This document could refer to the IGMPv3bis and MLDv2bis instead of current IGMPv3/MLDv2 RFCs.</t>

<section anchor="draft-ietf-pim-rfc1112bis-02"><name>draft-ietf-pim-rfc1112bis-02</name>

<t>Removed unused references, fefresh - waiting for more reviews.
Added IANA section for updates from RFC1112 to RFC1112bis.
Added  references to RFC5771 and RFC6034 because
they actually are the references for the IANA 224.0.0.0/4 registrations,
which seems a bit undocumented given how RFC1112 did introduce the
definition (before IANA).</t>

</section>
<section anchor="draft-ietf-pim-rfc1112bis-01"><name>draft-ietf-pim-rfc1112bis-01</name>

<t>Fix up reference for IGMPv3. Refined candidate open issues. Removed author discussion.</t>

</section>
<section anchor="draft-ietf-pim-rfc1112bis-00"><name>draft-ietf-pim-rfc1112bis-00</name>

<t>Just changed title, added github pointer.</t>

</section>
<section anchor="draft-eckert-pim-rfc1112bis-02"><name>draft-eckert-pim-rfc1112bis-02</name>

<t>Changed core references from numbered style to name style .</t>

<t>Changed copyright clause to pre5378Trust200902, which is the same as used for RFC8200
due to the presence of text with similar early status.</t>

<t>To resolve Dinos concerns at IETF116 with -01:
Added hopefully extensive explanation wrt. to how to treat IGMPv1 based on Dino's feedback
from IETF117: This document does not ask for any removal of IGMPv1 in any IETF specs
which include it for backward compatibility reasons, it only effectively causes it to
become historic once RFC1112 would be declared historic.</t>

<t>To resolve Alvaros concerns at IETF1116 with -01:
Added normative language (<bcp14>MUST</bcp14>/<bcp14>SHOULD</bcp14>). Seems as if this is quite easy given how "must" was written appropriately in the original text. The logic of applying <bcp14>MUST</bcp14>/<bcp14>MUST</bcp14>-NOT was based on understanding by the author how none of the <bcp14>MUST</bcp14> would actually put existing working implementations out of compliance.</t>

<t>Added explicit text to move rfc1112 to historic status.</t>

<t>Moved explanation of changes from rfc1112 from appendix to main text as this seem to the
common practice for document updates.</t>

<t>Added claim for this document to be an update to rfc791. See open issues section though.</t>

</section>
<section anchor="draft-eckert-pim-rfc1112bis-01"><name>draft-eckert-pim-rfc1112bis-01</name>

<t>Changed all use of IPv4 back to IP. Seems standard in IETF specs. Only IPv6 has
in IETF specs the distinction of including the version.</t>

<t>Changed Steve Deerings address to a pseudo-email address at IETF. See prior section.</t>

<t>Converted document into kramdownrfc2629 format for easier editing.</t>

<t>Claims that rfc2119 language is not desired/used (to maintain maximum original text without changes).</t>

<t>Rewrote section for updates to rfc1112 to hopefully better motivate/explain the reason for this document and detail what its changes are.</t>

</section>
<section anchor="draft-eckert-pim-rfc1112bis-00"><name>draft-eckert-pim-rfc1112bis-00</name>

<t>Initial version based on <xref target="RFC1112"/> text version, edited.</t>

</section>
</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAFhJoGYAA+1923YbyZHge35FDvrB5AwAkRR1Y3s9ZouUmnNEihapnplj
95lTABJkWYUquKpACm7L37Lfsl+2cc1LoUCxNd4zL9t2s0mgKjMyMjLuETka
jYyZVrO8vDmyq3Y+emnavC3ckf2xalp7+rl1ZZNXZWPnVW0Hx+XaXlWreuoG
9uzSnq+KNp9mTQuv253jq/Ndk00mtbs7suHJLQ/OqmmZLWCiWZ3N21HuYPJl
vhjV8+n+/v7BJG9GewfmHsC6PDs306x1N1W9PrJNOzNNW7tscWTPTq/fmGrS
VIVrXXNk8UWzWs4y+uvFq33znc2X9ZFt61XTHuztvYIh6YNl7Z49ffHyOvoc
Rs3K2X9lRVUCVGvXmGV+ZP9o22o6xB8zt2xvj+yzoW2qGgCYN/DbesG/TKvF
wpVt87Mx2aq9reojY+3IWgv/oX94rVetW9660p6O7YlzNWBDv69qWOkH1+a1
m+ln07yFBf+UldNqdefqof2hztu8ubWvq2K1mOSZf7BalS0i53VWZjP/sVtk
eQEI5pl+X1a1WxbrMaJ6DPP1QnhdubpwTWNPp59c3SbgvVm1q9rdu9xeu+lt
WRXVTe4a+/HqWB+rKyQdN8vbqt4ALnpOIGtb9/tpM55nq/HMGQMALrI2v3OI
vA9vXsMGym+4sfjr2dvzy7uDI/zo4ODpc/7y4PD5oTx3eMCvXF2d00OHz/de
6GtP6ZOnT1/Iay9h34+Myct5PO3Z6IQQNGqzZTPKy9bV82yqEO3vHT7TX1++
fKq/vnpxIL8+PXylnz59/uIl/nr+7kRAfvpyf0++e/Xsua6nKatqSecPAX52
uC9LeflcV//sxYt9v/qn786uT4/441cy3PO9p4qB53svFcIXTw+f+19f6GAv
X+7DA2Y0GtlsAgcpm7bGXN/mjV24RWWbpZvmc9zW9tZZF85/7f6yQuK01dxm
9ha5Q75YFg7JHrBXlQa+wHfOEGela+1lXcGxqQq7c3a5CyfINqvlEo5OzBs8
YxCu0OUVwHSYo+RwpmcJKxlbc5LDAvLJCqe3NL0uA/67Kot8kcNbY1kfcJwV
QmvxGMCeNvaXX4S2vnwh/paVaxgCpoUhbd42io1pJjMYWiBsg4XziHix+8BK
eJljRuoin80KIObv7NX18fXHK/v+jb3+8ezKnp+ev///mP4HYfq774BZEpqI
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
5Pr5jgEWUzGXvra0OSYY6+mWABjfGn3xIm9bp4c4LJR0s2HVQbwoW50o3RiH
pcYZcWRUk8hCwMDHatMIOM7ptI1XT/q9NsjYAB1ZyBQJrY+axRuRUnFMV492
RNBS+z0RG+6H6NnNR8npwPG9rvWdb0+XY9PbdCDp9QtsOdEeT1SaIZsNBxfU
SlBc4e0S5YgXaoremFUH8wNIYxuMGyh4CEizCWTTVksFDwGBEb4dll5MEAks
WVUgHXhJJtL2UFO3YUJc3xQHKx/mgqLikIDu9mDwkJk5djlAhneDTWU3kKko
5PRWZL3RTmqIL8YTqZdJO53S/hmde6x/J5VAHeoKc+VzCnZiP0otCxWW7pUx
nVtVvGKtgrxvodoIMYYe1ebNcCVJmXtXJx78uG8YDfi9jRONogAAYFSjMhKe
gG1maV/Vknj0LZHZbzPI4ihVjAnMdhS8ipMmcGbZOk/020NyWqkdUhb0HTGM
EgoPhVG+JxSiA3VJzZSl1zGAkM3uMrATbySXde0DpEFr93mrufPOySjWeQvK
6T0X6ikn1hZRQ6PKhJeUggSxUZhSPb9XHTumcmqo9RGFbgskitSHQTkAVCuy
Qwwy1HCzMmebBcWksM+qJrqEpOIOaglCXYo40zFGmN+shAf4rK0x1lgAacMr
BWcyl311ADQC4q4gy6SgAnZRUVDR9E1bAkwPBb6HJjSSWjgYYADst2Q+OmA3
RWJwBbHADew2xOtsxZ0KeQ9gr6uZJJ5tQZRxZEIIk2esSu058z9DMc1OLX1k
HAYEb9iGQ9U3QU8LVLoj3cB8IiSGHdFVSAKeP4/y9jdIN4p2NdW8pak3YvVa
LqCpl+gQWGD8F2v/sLjbR2WCZy9oNwIFpVxZjPD52Q336+Cmlz1Fq6439+ZX
B8PDxoYkYY0QRyHt8KUQtzBP0/HFPBjS7u9rkgTUkAKWmOsRwsibcNEGRJFr
k0auvegJYyjRCvBM2Mj6sUFUhlzUeN02tnTOLkfslPPbwkZXJyYNdsbW4HAz
3Bau5DACd2DMmk6vMo0+k0VVPpwsJX48MUXj+gaKwV5oH07fXfOX70JvTiKi
84q2RVp4spcUW0Xsk4Ga4+LyqTSF6XYVXVR3nZaim+/YmJMnvUSjHtOmWxXu
y6n3u317qdr2Tgql06nGfBKjkCtlsEtiq4+xtqDs+w4XoUl0uV5QO19mlreO
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
PQdIEr1wrfLEkFBKqVzm/wJNn1MY258AAA==

-->

</rfc>

