<?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-04" category="std" consensus="true" submissionType="IETF" obsoletes="1112" updates="791, 1122" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="IP Multicast Host Extensions and ASM">Host Extensions for IP Multicasting and "Any Source Multicasting" (ASM) IP service</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="2025" month="June" day="19"/>

    
    <workgroup>PIM</workgroup>
    

    <abstract>


<?line 66?>

<t>This memo specifies the extensions required of a host implementation
of the Internet Protocol (IP) to support IP multicast with the IP service
interface "Any Source Multicast" (ASM). This specification applies
to both versions 4 and 6 of the Internet Protocol.
Distribution of this memo is unlimited.</t>

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



    </abstract>



  </front>

  <middle>


<?line 77?>

<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 IP multicast with the IP service
interface "Any Source Multicast" (ASM). This specification applies
to both versions 4 and 6 of the Internet Protocol.
Distribution of this memo is unlimited.</t>

<t>This document replaces <xref target="RFC1112"/> for everything except for 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?>

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

<section anchor="summary"><name>Summary</name>

<t>This memo specifies the extensions required of a host implementation
of the Internet Protocol (IP) to support IP multicast. It replaces <xref target="RFC791"/>
for everything except for the specification of the protocol IGMP version 1
in Appendix I. of <xref target="RFC1112"/>. This document declares <xref target="RFC1112"/> including
IGMP version 1 historic.</t>

<t><xref target="RFC1112"/> specified IP multicast for version 4 of the IP protocol (IPv4, <xref target="RFC791"/>),
and refers to that version as IP. This document applies both to version 4 of the IP protocol
and version 6 of the IP protocol (IPv6, <xref target="RFC8200"/>). The term IP is used in this
document to refer to both versions. Where specifications in support of IP multicast
for version 6 of the IP protocol where already provided by other RFCs, this document
provides references to those pre-existing specifications, so that this document can
serve as a complete single point of reference for the host extensions for IP multicast
with either versions of IP.</t>

<t>"Source Specific Multicast", (SSM, <xref target="SSM"/>) introduced a complementary 
extension to the IP service from the one specified here.
It is relying on components specified here, such as {#ethernet}, and extending or
superseding others.  The service specified here is called
"Any Source Multicast" (ASM) to distinguish it explicitly from SSM.
This document also describes, where SSM changes specifications from <xref target="RFC1112"/>.</t>

<t>Due to the existence of both ASM and SSM, the term "IP multicast" best refers to the
complete set of IP host extensions in support of either service options:
this specification for ASM plus <xref target="SSM"/>).  When the term IP multicast is used to
refer to the IP multicast service without further qualification, then ASM is to be implied.</t>

<t>This specification aims to maintain all the original text of <xref target="RFC1112"/> where
technically appropriate. This incurs the use of some historic language, such as
"(internet) gateway" to refer to IP routers, and capitalization of chapter headings.</t>

<t>See <xref target="normative"/> and <xref target="changes"/> for a detailed list of changes from <xref target="RFC1112"/>.</t>

</section>
<section anchor="overview"><name>Overview</name>

<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 IPv4
time-to-live or IPv6 hop limit 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 IPv4 time-to-live or IPv6 hop limit, 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>
<section anchor="conformance"><name>LEVELS OF CONFORMANCE</name>

<t>There are three levels of conformance to this specification. They
apply indepently for IPv4 and IPv6. All Internet hosts and gateways
are <bcp14>RECOMMENDED</bcp14> to conform to Level 2 for the versions of IP that they
support. Hosts or gateways supporting IPv4 that can not conform to Level 2
for it are <bcp14>RECOMMENDED</bcp14> to conform to Level 2L.</t>

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

<t>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 in support of multicasting with IPv4 are described in section 4 of this memo,
IPv6 addresses for IP multicasting are described in <xref target="RFC4291"/> and <xref target="RFC7371"/>.</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, see <xref target="RFC8504"/>, section 5.4),
depends on multicast and requires that nodes join Solicited Node multicast addresses.</t>

<t>Level 2 requires implementation of the host side of the Internet Group Management Protocol (IGMP)
for IPv4 and the equivalent host side of the Multicast Listener Discovery Protocol (MLD) for IPv6 
and extension of the IP and local network service interfaces within the host as specified or 
referred to in the following sections.</t>

<t>The current protocol versions for full Level 2 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 anchor="level-2l-support-for-only-local-ip-multicasting"><name>Level 2L: support for only local IP multicasting.</name>

<t>Level 2L has the same functionality as Level 2 except that it does not include
the implementation of IGMP for IPv4 or MLD for IPv6. Level 2L hosts can only
send/receive IP multicast to their local network.</t>

<t>Level 2L hosts <bcp14>SHOULD</bcp14> only join/leave Link-Local host groups (see <xref target="host-groups"/>) and
send IP datagrams to Link-Local host groups.</t>

<t>Level 2L is only applicable to IPv4.</t>

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

<t>IPv4 Host groups are identified by class D IPv4 addresses, i.e., those with
"1110" as their high-order four bits.  Class E IPv4 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, IPv4 host group addresses
range from 224.0.0.0 to 239.255.255.255.  IPv4 host group addresses in the
"Local Network Control Block", 224.0.0.0 - 224.0.0.255 are
called Link-Local IPv4 host group addresses. IP datagrams with a Link-Local destination address
are called Link-Local multicast packets. The IPv4 Link-Local addresses 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 IPv4 hosts (including gateways). It is called
the all-hosts group. This is used to address all IP multicast hosts (including gateways)
on the directly connected network.  There is no multicast address (or any other IP address) for
all hosts on the total Internet.</t>

<t>The addresses of well-known, permanent IPv4 multicast groups are to be published in
"Assigned Numbers", see <xref target="RFC3232"/>, currently through the IANA
"IPv4 Multicast Address Space Registry". <xref target="RFC5771"/> and <xref target="RFC6034"/> refine
more detailed allocation and uses of different sub-blocks of 224.0.0.0/4.</t>

<t>Allocation guidelines for Link-Local IPv6 multicast group addresses are specified in <xref target="RFC5771"/>.
The IPv6 Link-Local all-hosts group address is FF02::1.
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"/>. The addresses of other groups
are currently published via the IANA "IPv6 Multicast Address Space Registry".</t>

<t>IP addresses as specified in <xref target="SSM"/> are not used for
ASM IP multicast and are not considered IP host groups by <xref target="SSM"/>. 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="interface"><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 -----------------------
    __________________________________________________________
   |                            |              |              |
   |                            | IPv4:        | IPv6:        |
   |                            | ICMP+IGMP    | ICMPv6+MLD   |
   |    IP [IPv4 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 IPv4 time-to-live or IPv6 hop limit 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/hop limit, 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="send-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 or IP address from an SSM range <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 IPv4 host group address is mapped to an Ethernet multicast address
by placing the low-order 23-bits of the IPv4 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 IPv4 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>

<t>The address mappings for IP addresses do apply not only to
IP host group addresses, but also to destination IP addresses used
for SSM.</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="service"><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 socket options for
these functions for ASM and also includes socket options in support of SSM.
Note that these are UDP socket extensions but not IP socket extensions due to
the absence of widely adopted/required IP level socket APIs.</t>

</section>
<section anchor="rcv-extensions"><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 <bcp14>MUST</bcp14> be 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 IPv4 time-to-live of
1 or IPv6 Hop Limit of 1. This field  <bcp14>MUST</bcp14> 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 or SSM range destination IP address.</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>When supporting Level 2, the IP module <bcp14>MUST</bcp14> also be extended to implement the 
IGMP protocol for IPv4 and the MLD protocol for IPv6 depending on the version(s)
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>

<t>Level 2 hosts and gateways <bcp14>MAY</bcp14> omit the sending of IGMP messages to report membership
for Link-Local IPv4 host group addresses, especially on networks known not to (be
able to) use any form of IGMP snooping. This does also apply for the IPv6 Link-Local
all-hosts group FF02::1, but not to other Link-Local IPv6 host groups. See {#level2l} and <xref target="ll-apdx"/>.</t>

<t>Level 2/2L hosts and gateways <bcp14>SHOULD</bcp14> permanently join to the Link-Local all-hosts group
for the version of IP they implement. See <xref target="special"/>.</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="lncb"><name>ROUTING MULTICAST IP DATAGRAMS</name>

<t>IPv4 datagrams with a Link-Local destination address <bcp14>MUST</bcp14> never be forwarded to
a different link by multicast routers, regardless of their time-to-live. See <xref target="lncb-exp"/>
for explanations.</t>

<t>The equivalent requirement are specified for IPv6 in <xref target="RFC4291"/>, section 2.5.6.</t>

<t>Rules for forwarding of non Link-Local IP multicast packets are outside the
scope of this document.</t>

</section>
<section anchor="normative"><name>Status 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 which also moves the IGMP version
1 protocol as specified in Appendix 1 of <xref target="RFC1112"/> to historic status, as
it is not included into this document anymore.</t>

<t>All other aspects of <xref target="RFC1112"/> beside IGMPv1 are kept and updated 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>Current or future versions of IGMP or other protocols/mechanisms including but not
necessary limited to <xref target="IGMPv2"/>, <xref target="IGMPv3"/> or <xref target="IGMPv3lite"/> do or may include backward 
compatibility with IGMPv1, such as in <xref target="IGMPsnooping"/>, which requires them to refer
to 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"/>.</t>

<t>Any new or updated specification that wants to maintain such backward compatibility with
IGMPv1 need to continue to reference <xref target="RFC1112"/> as the specification of IGMPv1.</t>

<t>Any future reference for new or updated work to any other definition from <xref target="RFC1112"/>
(host extensions for IP multicast and/or Any Source Multicast service) need to refer to this document instead of <xref target="RFC1112"/>.</t>

</section>
<section anchor="update"><name>Update to RFC 791</name>

<t>This document is an update to <xref target="RFC791"/> because none of the core procedures to send
and receive IP multicast packets described in this document match those defined for
IP unicast packets in <xref target="RFC791"/>. Instead, IP multicast is carving out parts of the IP address space
to trigger completely new forwarding for completely new entities: host groups in ASM, channels in SSM).
See <xref target="rfc791"/> for further discussions.</t>

</section>
<section anchor="update1122"><name>Update to RFC 1122</name>

<t>This document updates <xref target="RFC1122"/> section 3.2.3 by making support for Level 2 conformance
and hence support for IGMP recommended instead of optional as required by <xref target="RFC1122"/>. See <xref target="conformance"/>.</t>

</section>
<section anchor="update-to-std-5"><name>Update to STD 5</name>

<t>This document replaces <xref target="RFC1112"/> in <xref target="STD5"/> which defines IPv4 (<xref target="RFC791"/>) including its core extensions.</t>

<t>Note: As there is no precedent for STD86 (IPv6) to include any specifications for extension of IPv6,
this document is not asked to become part of STD86.</t>

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

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

<t>All requirements changes are intended to make
this specification aligned with long-term, most widely implemented, deployed and
standardised RFCs for IP multicast, so that this document does not create the need to
change existing implementations or deployments, as could be the case if <xref target="RFC1112"/> (without IGMPv1)
was to be implemented today.</t>

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

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

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

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

</section>
<section anchor="new-summary"><name>New summary</name>

<t>The new <xref target="summary"/> summarizes the scope of this document and the core new
changes over <xref target="RFC1112"/>.</t>

</section>
<section anchor="any-source-multicast-asm"><name>Any-Source Multicast (ASM)</name>

<t>This update introduces the term "ASM IP multicast" (ASM) as a new term for
the IP service interface specified in this document (and previously
in <xref target="RFC1112"/>) as explained in <xref target="summary"/>.</t>

</section>
<section anchor="ssm"><name>SSM</name>

<t><xref target="summary"/> explains the relationship of this document to SSM (<xref target="SSM"/>).</t>

<t><xref target="host-groups"/> adds the specification that the term host groups specified in this
document does not apply to destination addresses used for SSM.</t>

<t>No functional changes to the IP multicast service are incurred by these changes,
except that it acknowledges the existence of SSM which reduces the range
of host group addresses used for ASM.</t>

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

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

<t>IPv6 documents such as <xref target="RFC1883"/> and all its updates (e.g.: <xref target="RFC8200"/>) are defining
the necessary wire encoding aspects of IP multicast 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 IPv4. Future documents can refer to this document as the IP multicast / ASM service for
both IPv4 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 changes.</t>

</section>
<section anchor="level2l"><name>RFC1122 and Level 2L</name>

<t><xref target="RFC1122"/> did not require support for IPv4 multicasting ("there is at this time no requirement
that all IP implementations support IP multicasting"). Instead, <xref target="RFC1122"/> recommends support
for IPv4 multicast (according to <xref target="RFC1112"/>), but support for IGMP to be optional,
specifying that sending/receiving IPv4 multicast from/to the local networks
works without IGMP and that that is the recommended form to support IPv4 multicasting. See
also <xref target="ll-apdx"/>.</t>

<t>With <xref target="RFC1122"/> not even specifying the combination of supporting sending/receiving
IPv4 multicast but not supporting IGMP, this document now adds that option by specifying it as
conformance Level 2L. Introduction of this text does also not change long-term deployment practices but
only formalizes them.</t>

<t>Level 2L is specified in this document as not applying to IPv6 multicast because MLD (unlike IGMP) choose to
mandate the sending of MLD messages even for Link-Local host groups. This was done specifically to ensure
that MLD snooping switches could constrain also Link-Local host groups, considering also the
potential for local networks with IPv6 to potentially have many more hosts on them than with IPv4 because
of the larger IPv6 addressing space. With no widespread industry use of MLD without messages 
for Link-Local host groups, this benefit of mandating use of MLD for Link-Local groups would
be invalidated through the introduction of a Level 2L option.</t>

</section>
<section anchor="ip-multicast-support"><name>IP multicast support</name>

<t>With <xref target="IGMPv3"/> now being Internet Standard, there is sufficient experience to also make
support for conformance Level 2 of IPv4 multicasting recommended through this document. This is also
documented as an update to the IGMP support requirement in <xref target="RFC1122"/> from optional to
recommended. See <xref target="update1122"/>).</t>

<t>Unlike <xref target="RFC1122"/>, <xref target="RFC8504"/> does not directly raise a requirement against support for
MLD for every node supporting IPv6. Instead, it explains the dependencies against IPv6 multicast
and hence MLD for core IPv6 protocols used on most link types (ND, SLAAC).</t>

<t>With <xref target="MLDv2"/> now being Internet standard, and over two decades of experience with IPv6 multicast
availability and use on almost all IPv6 implementations, this documents now also recommends
support for Level 2 conformance for IPv6 multicast, see <xref target="conformance"/>. Note that this is not declared as
an update to <xref target="RFC8504"/>, because it is outside that BCP documents scope.</t>

</section>
<section anchor="lncb-exp"><name>IPv4 Local Network Control Block</name>

<t><xref target="RFC1112"/> defines the requirement for IPv4 datagrams to the all-hosts group
224.0.0.1 to never be forwarded beyond a single network.  In later RFCs, this behavior
became the BCP for the whole IPv4 Local Network Control Block 224.0.0.0 - 224.0.0.255,
making it the Link-Local host group address block for IPv4 multicast. <xref target="RFC2365"/>
and <xref target="RFC5771"/>, section 4 are the BCPs covering this requirement.</t>

<t>This document formalizes this BCP behavior as a standard requirement in <xref target="lncb"/>, superseding
and encompassing the more specific requirement for just 224.0.0.1 from <xref target="RFC1112"/>,
and mirroring the same standardized behavior for IPv6 Link-Local addresses. Because
this is actually a requirement against IP multicast routers and not hosts, this is now also
accordingly described in a separate section.</t>

<t>This requirement does not incur changes over how IP multicast is implemented or deployed.</t>

</section>
<section anchor="special"><name>Permanent membership for Link-Local all-hosts groups</name>

<t><xref target="RFC1112"/>, section 7.2 introduced the requirements for hosts to permanently
join 224.0.0.1. Its explains this requirement to be in support of IGMP (version 1).</t>

<t><xref target="IGMPv2"/>, section 6. and <xref target="IGMPv3"/>, section 5. inherits this requirement,
and <xref target="MLDv1"/>, section 6. and <xref target="MLDv2"/> section 6. also define the same requirement
for the IPv6 Link-Local all-hosts address FF02::1.</t>

<t><xref target="RFC1112"/> explains this choice by being "(1) it is simpler", and
"(3) the all-hosts address may serve other routing-oriented purposes, such as advertising the
presence of gateways or resolving local addresses."</t>

<t>Technically, there is no necessity to permanently join the Link-Local all-hosts group.
Like any other group, reception of packets could enabled through the
JoinHostGroup()/LeaveHostGroup(), as described in <xref target="service"/>. However, all known host
implementations that support IP multicast since <xref target="RFC1112"/> are based on its definitions
and there is no obvious benefit in changing this. Hence this functionality
is a should requirement in this document.</t>

<t>Note that one simplification that this requirement enables is to avoid supporting
the JoinHostGroup()/LeaveHostGroup() API inside an operating system kernel, but still
allow kernel level protocols to receive packets to the Link-Local all-hosts group.
This is for example common in support of ICMP/ICMPv6 echo: "ping 224.0.0.1" to discover
IP hosts with IP multicast support on the local network. However, this functionality
is not enabled by default anymore in modern systems for security reasons
(e.g.: linux: net.ipv4.icmp_echo_ignore_broadcasts=1 default configuration).</t>

<t>The requirements text in this spec therefore does not incur any requirements changes for implementations
of these existing versions of IGMP/MLD. By making the requirement only a should, it is also
clear that future versions of IGMP/MLD or new host stack implementations may change this
if they find good reasons to do so - without requiring to update this specification.</t>

<t>Note that <xref target="IGMPv3lite"/> omits this requirement.</t>

</section>
<section anchor="igmpmld-messages-for-link-local-ipv4-host-group-addresses"><name>IGMP/MLD messages for Link-Local IPv4 host group addresses</name>

<t><xref target="RFC1112"/>, Appendix I. (IGMPv1), <xref target="IGMPv2"/>, <xref target="IGMPv3"/>, <xref target="MLDv1"/>, <xref target="MLDv2"/>
require hosts to not send IGMP/MLD messages for the all-hosts group. This would
be in conflict of the general rules of <xref target="RFC1112"/> (outside of its IGMPv1 specific
definitions) and equally this specification if it was not enhanced. This specification
therefore contains new text that makes it compatible with existing IGMP/MLD specification,
and with long tern established and deployed implementation practices.</t>

<t>New text in <xref target="ll-apdx"/> explains how after <xref target="RFC1112"/>, it became a common place
implementation choice to not send IGMP messages for any IPv4 Link-Local host group
address, and explains how this was done with good technical reason at the time. This
behavior is so common, that <xref target="IGMPsnooping"/> mandates to explicit support it IGMP
snooping implementations.</t>

<t>Referring to that explanation, a new <bcp14>MAY</bcp14> requirement in <xref target="rcv-extensions"/> allowing
(but not recommending) this behavior makes existing specifications and deployments
compatible with this documents specifications. It is only a <bcp14>MAY</bcp14> even though it is common in
IPv4, because the experience with IPv6 shows that it does work (of course) equally
well if this is not done, and can then support better MLD snooping than IGMP snooping.</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 preferable.</t>

<t>However, these limitations to the applicability of ASM do not impact the applicability
of any parts of the host stack described in this document for other IP multicast service
interfaces, 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="send-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-addresses-registry"><name>Multicast 48-bit MAC Addresses 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="RFC1122">
  <front>
    <title>Requirements for Internet Hosts - Communication Layers</title>
    <author fullname="R. Braden" initials="R." role="editor" surname="Braden"/>
    <date month="October" year="1989"/>
    <abstract>
      <t>This RFC is an official specification for the Internet community. It incorporates by reference, amends, corrects, and supplements the primary protocol standards documents relating to hosts. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="3"/>
  <seriesInfo name="RFC" value="1122"/>
  <seriesInfo name="DOI" value="10.17487/RFC1122"/>
</reference>

<referencegroup anchor="STD5" target="https://www.rfc-editor.org/info/std5">
  <reference anchor="RFC0791" target="https://www.rfc-editor.org/info/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="RFC0792" target="https://www.rfc-editor.org/info/rfc792">
    <front>
      <title>Internet Control Message 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="792"/>
    <seriesInfo name="DOI" value="10.17487/RFC0792"/>
  </reference>
  <reference anchor="RFC0919" target="https://www.rfc-editor.org/info/rfc919">
    <front>
      <title>Broadcasting Internet Datagrams</title>
      <author fullname="J.C. Mogul" initials="J.C." surname="Mogul"/>
      <date month="October" year="1984"/>
      <abstract>
        <t>This RFC proposes simple rules for broadcasting Internet datagrams on local networks that support broadcast, for addressing broadcasts, and for how gateways should handle them. This RFC suggests a proposed protocol for the ARPA-Internet community, and requests discussion and suggestions for improvements.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="5"/>
    <seriesInfo name="RFC" value="919"/>
    <seriesInfo name="DOI" value="10.17487/RFC0919"/>
  </reference>
  <reference anchor="RFC0922" target="https://www.rfc-editor.org/info/rfc922">
    <front>
      <title>Broadcasting Internet datagrams in the presence of subnets</title>
      <author fullname="J.C. Mogul" initials="J.C." surname="Mogul"/>
      <date month="October" year="1984"/>
      <abstract>
        <t>We propose simple rules for broadcasting Internet datagrams on local networks that support broadcast, for addressing broadcasts, and for how gateways should handle them. This RFC suggests a proposed protocol for the ARPA-Internet community, and requests discussion and suggestions for improvements.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="5"/>
    <seriesInfo name="RFC" value="922"/>
    <seriesInfo name="DOI" value="10.17487/RFC0922"/>
  </reference>
  <reference anchor="RFC0950" target="https://www.rfc-editor.org/info/rfc950">
    <front>
      <title>Internet Standard Subnetting Procedure</title>
      <author fullname="J.C. Mogul" initials="J.C." surname="Mogul"/>
      <author fullname="J. Postel" initials="J." surname="Postel"/>
      <date month="August" year="1985"/>
      <abstract>
        <t>This memo discusses the utility of "subnets" of Internet networks, which are logically visible sub-sections of a single Internet network. For administrative or technical reasons, many organizations have chosen to divide one Internet network into several subnets, instead of acquiring a set of Internet network numbers. This memo specifies procedures for the use of subnets. These procedures are for hosts (e.g., workstations). The procedures used in and between subnet gateways are not fully described. Important motivation and background information for a subnetting standard is provided in RFC-940. This RFC specifies a protocol for the ARPA-Internet community. If subnetting is implemented it is strongly recommended that these procedures be followed.</t>
      </abstract>
    </front>
    <seriesInfo name="STD" value="5"/>
    <seriesInfo name="RFC" value="950"/>
    <seriesInfo name="DOI" value="10.17487/RFC0950"/>
  </reference>
  <reference anchor="RFC1112" target="https://www.rfc-editor.org/info/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>
</referencegroup>

<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="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="RFC8504">
  <front>
    <title>IPv6 Node Requirements</title>
    <author fullname="T. Chown" initials="T." surname="Chown"/>
    <author fullname="J. Loughney" initials="J." surname="Loughney"/>
    <author fullname="T. Winters" initials="T." surname="Winters"/>
    <date month="January" year="2019"/>
    <abstract>
      <t>This document defines requirements for IPv6 nodes. It is expected that IPv6 will be deployed in a wide range of devices and situations. Specifying the requirements for IPv6 nodes allows IPv6 to function well and interoperate in a large number of situations and deployments.</t>
      <t>This document obsoletes RFC 6434, and in turn RFC 4294.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="220"/>
  <seriesInfo name="RFC" value="8504"/>
  <seriesInfo name="DOI" value="10.17487/RFC8504"/>
</reference>

<reference anchor="IGMPv3">
  <front>
    <title>Internet Group Management Protocol, Version 3</title>
    <author fullname="B. Haberman" initials="B." role="editor" surname="Haberman"/>
    <date month="March" year="2025"/>
    <abstract>
      <t>The Internet Group Management Protocol (IGMP) is the protocol used by IPv4 systems to report their IP multicast group memberships to neighboring multicast routers. Version 3 of IGMP (IGMPv3) adds support for source filtering, that is, the ability for a system to report interest in receiving packets only from specific source addresses, or from all but specific source addresses, sent to a particular multicast address. That information may be used by multicast routing protocols to avoid delivering multicast packets from specific sources to networks where there are no interested receivers.</t>
      <t>This document specifies IGMPv3. It is a revised version of RFC 3376 that includes clarifications and fixes for errata, and it is backward compatible with RFC 3376.</t>
      <t>This document updates RFC 2236 and obsoletes RFC 3376.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="100"/>
  <seriesInfo name="RFC" value="9776"/>
  <seriesInfo name="DOI" value="10.17487/RFC9776"/>
</reference>

<reference anchor="MLDv2">
  <front>
    <title>Multicast Listener Discovery Version 2 (MLDv2) for IPv6</title>
    <author fullname="B. Haberman" initials="B." role="editor" surname="Haberman"/>
    <date month="March" year="2025"/>
    <abstract>
      <t>This document specifies the Multicast Listener Discovery version 2 (MLDv2) protocol. 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.</t>
      <t>This document updates RFC 2710 and obsoletes RFC 3810.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="101"/>
  <seriesInfo name="RFC" value="9777"/>
  <seriesInfo name="DOI" value="10.17487/RFC9777"/>
</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="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="RFC1723">
  <front>
    <title>RIP Version 2 - Carrying Additional Information</title>
    <author fullname="G. Malkin" initials="G." surname="Malkin"/>
    <date month="November" year="1994"/>
    <abstract>
      <t>This document specifies an extension of the Routing Information Protocol (RIP), o expand the amount of useful information carried in RIP messages and to add a measure of security. This memo obsoletes RFC 1388, which specifies an update to the "Routing Information Protocol" STD 34, RFC 1058. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="1723"/>
  <seriesInfo name="DOI" value="10.17487/RFC1723"/>
</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="RFC2365">
  <front>
    <title>Administratively Scoped IP Multicast</title>
    <author fullname="D. Meyer" initials="D." surname="Meyer"/>
    <date month="July" year="1998"/>
    <abstract>
      <t>This document defines the "administratively scoped IPv4 multicast space" to be the range 239.0.0.0 to 239.255.255.255. In addition, it describes a simple set of semantics for the implementation of Administratively Scoped IP Multicast. Finally, it provides a mapping between the IPv6 multicast address classes [RFC1884] and IPv4 multicast address classes. 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="23"/>
  <seriesInfo name="RFC" value="2365"/>
  <seriesInfo name="DOI" value="10.17487/RFC2365"/>
</reference>

<reference anchor="RFC2328">
  <front>
    <title>OSPF Version 2</title>
    <author fullname="J. Moy" initials="J." surname="Moy"/>
    <date month="April" year="1998"/>
    <abstract>
      <t>This memo documents version 2 of the OSPF protocol. OSPF is a link- state routing protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="54"/>
  <seriesInfo name="RFC" value="2328"/>
  <seriesInfo name="DOI" value="10.17487/RFC2328"/>
</reference>

<reference anchor="RFC3232">
  <front>
    <title>Assigned Numbers: RFC 1700 is Replaced by an On-line Database</title>
    <author fullname="J. Reynolds" initials="J." role="editor" surname="Reynolds"/>
    <date month="January" year="2002"/>
    <abstract>
      <t>This memo obsoletes RFC 1700 (STD 2) "Assigned Numbers", which contained an October 1994 snapshot of assigned Internet protocol parameters. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3232"/>
  <seriesInfo name="DOI" value="10.17487/RFC3232"/>
</reference>

<reference anchor="MLDv1">
  <front>
    <title>Multicast Listener Discovery (MLD) for IPv6</title>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <author fullname="W. Fenner" initials="W." surname="Fenner"/>
    <author fullname="B. Haberman" initials="B." surname="Haberman"/>
    <date month="October" year="1999"/>
    <abstract>
      <t>This document specifies the protocol used by an IPv6 router to discover the presence of multicast listeners (that is, nodes wishing to receive multicast packets) on its directly attached links, and to discover specifically which multicast addresses are of interest to those neighboring nodes. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2710"/>
  <seriesInfo name="DOI" value="10.17487/RFC2710"/>
</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="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 904?>

<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 anchor="ll-apdx"><name>Link-local IP multicast and IGMP/MLD</name>

<t>On networks, where IP multicast packets are broadcast, such as (non-switched)
ethernet, IP multicast packets will reach all level 2 IP multicast receivers
without the need to use IGMP or MLD. This signaling is only necessary for IP multicast 
receivers when the sender is in a different LAN so that IP multicast routers
can forward the IP multicast traffic from the sender network to the receiver
network.</t>

<t>IP multicast packet to a Link-Local IP multicast destination address do therefore
technically never need any IGMP or MLD signaling on such (non-switched broadcast) networks,
because they are never forwarded between networks (<xref target="lncb"/>).</t>

<t>During the early years of IPv4 multicast, this understanding resulted in the requirements
of <xref target="RFC1122"/> and explained in <xref target="level2l"/> and hence implementations
for protocols that receive Link-Local IPv4 multicast packet without implementing
IGMP. Examples of such protocols include RIPv2 (<xref target="RFC1723"/>) or OSPF (<xref target="RFC2328"/>) and
several other protocols, often running on IPv4 routers which had no IPv4 multicast routing
implementation at the time and no IPv4 multicast applications for which they
needed to be IPv4 multicast receiver for non Link-Local IPv4 multicast addresses.</t>

<t>When these implementations later received implementations of level 2
IPv4 multicast support, those implementations excluded Link-Local host
groups, so that those protocols would continue to run without IGMP as
they had in before.</t>

<t>Contributing to these implementation choices was also the fact that IGMP
in the versions specified so far does not allow to keep track of ongoing receiver
membership status in the absence of an IGMP router side implementation, called
an IGMP querier. With the target (Link-Local IPv4 multicast only) protocols being 
deployed in the absence of any such IGMP querier, the use of IGMP could also serve
arguably no purpose except for compliance with <xref target="RFC1112"/>.</t>

<t>This situation changed towards the end of the 1990th with the introduction
of ethernet switches that snoop IGMP messages to constrain forwarding of IPv4 multicast
packets for a particular IPv4 multicast group to only those ports with hosts joined
to the group.  This behavior was later documented in <xref target="IGMPsnooping"/> but was widely deployed
even earlier due to the co-existence of ports with the different speeds
10Mbps, 100Mbps and 1Gbps, and the resulting need to protect the slower
speed ports from potentially large rates of IPv4 multicast traffic between faster hosts.</t>

<t>In result, IGMP snooping switches had to flood traffic to Link-Local IPv4 multicast
groups due to the common absence of IGMP support for them, and this is accordingly
also recommended by <xref target="IGMPsnooping"/>.</t>

<t>Due to this long-term practice, this document is thus permitting this non-use of
IGMP for Link-Local host groups by introducing a <bcp14>MAY</bcp14> for it in <xref target="rcv-extensions"/>.</t>

<t>Note that IP multicast routers do not and can not typically report IP multicast
groups via IGMP or MLD, because they are not joined to them as an IP multicast host,
but simply need to receive them as an IP multicast router to forward them. Even when
an IP multicast router is joined to specific IP multicast group as an IP multicast
host, reporting them via IGMP may sound futile because as an IP multicast router it
would still need to receive the IP multicast traffic in the absence of such IGMP reporting,
because it might need to forward it. However, this logic does not apply to Link-Local groups,
because they are never forwarded and could thus be filtered by IGMP or MLD snooping switches
if those switches could trust routers to report them correctly. Which they can not do
for IPv4 due to its history.</t>

<t>In recognition of this situation, <xref target="MLDv1"/> for IPv6 did emphasize the need to
report also Link-Local IPv6 group memberships to avoid these issues. Therefore this
document also has no equivalent <bcp14>MAY</bcp14> statement for IPv6.</t>

<t>Note that IGMP/MLD reporting for non Link-Local IP multicast groups from an
IP multicast router joining it as a host is also not just a superficial specification
requirement because of the assumption that routers need to receive all non Link-Local IP multicast packets.</t>

<t>Switches that do support snooping of IP multicast routing protocols such as PIM
may also be able to determine which traffic needs to be forwarded to an
IP multicast router but those can may not include the groups that the
IP multicast router has only joined to only as a host and is not reporting via IGMP/MLD.</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 Appendix after observing the following section addressed to you]</t>

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

<section anchor="rfc-editor-notes"><name>RFC-Editor notes</name>

<t>The kramdown tooling did not allow to have references for both STD5 and RFC1112,
those fail because the STD5 reference creates an "RFC1112" anchor. Thus there
is no separate reference for RFC1112 in this version of the document. This
needs to be fixed in XML by adding a full reference to RFC1112 and removing the
RFC1112 anchor from the STD5 reference.</t>

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

<t>The initial goal of this document was to allow for IETF to declare the IGMPv1
protocol historic which today is a Full Internet Standard due to it being defined
in RFC1112. This should be achieved without changing the Full Internet Standard status
of the IP Host Extensions for IP Multicast and ASM IP Service interface specified in
RFC1112 because those specification are as fundamental to the definition of IP
multicast as RFC791 is for IP (unicast).</t>

<t>The best way to achieve this seemed to be an update to RFC1112 which
removes all of IGMPv1, but maintains the rest of the document. None of these
removal of IGMPv1 changes changed the applicability or requirements to existing 
IP multicast (plus its protocols) implementations or other specifications.</t>

<t>The next refinement was to rectify the situation that there is no specification
explaining the same details as RFC1112 for IPv6 multicast even though RFC8200
(full internet standard) even explicitly includes IPv6 multicast, and a range of
other RFC define necessary code-points (such as for ethernet mapping) for IPv6 multicast.</t>

<t>Most of the text of this specification can hence can simply talk about "IP" which in this
specification implies both IPv4 and IPv6, and only in places where IPv6 differs, does the
document now include new explicit text, most often pointing to pre-existing RFCs specifying
the necessary details for IPv6. Again, none of these changes impact other specs or
deployments.</t>

<t>The third step of refinement was add the necessary verbiage to explain
the differences between SSM and the specifications in this document. None of
these text enhancements incur any functional changes of long-term established
practices. Instead, they are only resulting in references to SSM RFCs, introduction
of the term ASM (which was previously only defined in SSM RFCs), and the limitation
of applicability of terms in this document (such as host group) to their use with
ASM.</t>

<t>The last round of changes added and refined details to be in-line with long-term established
practices and removing any possible contradictions between the original RFC1112 text
and newer standards track specification such as IGMPv2/MLDv3 or long term established
implementation practices. This includes the limitation of scope of ASM to controlled
networks and the definition of the IPv4 Link-Local
address range, which so far had only been defined through BCP RFC, unlike in IPv6, where
it's part of the architecture, as well as permitting (but not recommending) non-use of IGMP for them.</t>

<t>In summary, all changes in the document will make this document a replacement of rfc1112
which much more reflects the full internet standard nature of the technology than
rfc1112 did as of recent.</t>

</section>
<section anchor="rfc791"><name>Update to RFC791</name>

<t>This version of the text proposes that this spec is declared to be an
update to RFC791.</t>

<t>The argument made in <xref target="update"/> to support this classification 
may not be persuasive enough (because the according rfc791 text
may be read as a perfectly good extension point specification), in which
case the update status and related text should be deleted.</t>

<t>However, If anyone where to come up with a re-use of 224.0.0.0/4 for any non-IP
multicast purposes,  havoc might ensure with devices that do assume IP multicast
semantics, so it may simply be prudent to include this declaration. It would
also make the relationship between IPv4 and IPv4 multicast be more aligned
with IPv6, where IPv6 multicast is included in RFC8200.</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 anchor="draft-ietf-pim-rfc1112bis-03"><name>draft-ietf-pim-rfc1112bis-03</name>

<t><list style="numbers">
  <t>Some textual nit improvements - introduced "all-hosts" also for IPv6 (but be
careful to only call it Link-Local, as there are scope relative ones too), adding
references to RFC8504, referring to "host-side" impleemntation of IGMP/MLD.
Shoveling sentence in 4. to make reading more logical.</t>
  <t>"Levels of Conformance": Made support for IP multicast (Level 2 = sending/receiving)
<bcp14>RECOMMENDED</bcp14> for all IPv4 / IPv6 host stack. For the past 36 years, there was only the RFC1122
requirement (see below) for IPv4. For IPv6 there was no requirement to support IPv6 multicast at all.
Instead, there was only a dependency to support it when implementing widespread
IPv6 protocols (SLAAC, ND).</t>
  <t>Section 3.4: Introduction of conformance Level 2L to describe IPv4 multicast
with link-local only sending/receiving. Primarily because RFC1122 specified it, but also
because there are sufficiently many devices that do implement this at their core - e.g.:
router operating systems in suport of OSPF etc (most have been updated to also support
IGMP.</t>
  <t>Section 7.2: (re-)introduced permanent joining of all-groups as a <bcp14>SHOULD</bcp14> requirement.</t>
  <t>Section 9.4 and header: Defining this doc as update to RFC1122 to override the
36 year long recommendation of only implementing IP multicast without IGMP.</t>
  <t>New sections 10.7 to explain RFC1122 and Level 2L</t>
  <t>New section 10.8 to explain/justify recommendation to <bcp14>SHOULD</bcp14> support IP multicast on all hosts.</t>
  <t>Rewrote Section 10.10 for permanently join all-hosts group.</t>
</list></t>

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

<t><list style="numbers">
  <t>Changed document text to make the term "ASM" apply only to the IP service interface
(extensions) specified by the document (and shown and explained in existing text),
instead of the whole host extensions specified in this document (as it was written up to
up to -02). This is the only correct semantic, given how all the host exensions
specified in this document are shared by SSM, only the IP service interface is changed/amended by SSM.</t>
  <t>Subdivided section 2 (INTRODUCTION) into sections 2.1 (Summary), which contains new
text from this spec, and 2.2 (Overview), which is unchanged RFC1112 text.
Newly written section 2.1 to summarize the key content of this document. This was
so far only explained in the much later changes from rfc1112 section. Includes
IPv4/IPv6 applicability, ASM/SSM naming and maintaining most of RFC1112 text as a goal.</t>
  <t>Introduced text to define and explain link local IPv4 host group addresses
224.0.0.0 - 224.0.0.255. This was triggered by trying to fix the rfc1112 text
sections that Brian Haberman was concerned about, which did cover behavior for 224.0.0.1.</t>
</list></t>

<t>As it turns out, the behavior for 224.0.0.1 was quickly adopted by other
protocols getting 224.0.0.0/24 addresses and there has been no functional
specification to explain the non-forwarding behavior for these link-local addresses.
Instead, only IANA allocation guideline RFCs where introducing them. This is
now rectified with new explanatory text in this spec. and a new <bcp14>MAY</bcp14> requirement
to permit non-use of IGMP for those groups. See <xref target="rcv-extensions"/>.</t>

<t><list style="numbers">
  <t>Changed references to IGMPv3 and MLDv2 to the -bis drafts currently in RFC-editor 
queue. Also triggered by Brian Haberman mentioning them.</t>
  <t>Improved wording in "(Normative) Status Change" section 9.</t>
</list></t>

<t>5.1 Removed "Update to rfc791" as an open issue and instead claimed it as fact
in section 9.3. Added discussion about this point to the discussion appendix
that is to be removed by RFC-editor.</t>

<t>5.1 Also added subsection to declare that this document replaces RFC1112 in STD5.</t>

<t><list style="numbers">
  <t>Enhanced/New text in section 10., "changes from RFC1112"</t>
</list></t>

<t>Especially explaining the changes in the normative section explained above and
below, triggered by Brian's review.</t>

<t><list style="numbers">
  <t>Applying changes proposed by Brian Haberman during WGLC.</t>
</list></t>

<t>7.1 Changed meaning of IP from "IPv4" to "IPv4 and IPv6", accordingly updated all text.
Makes a lot of sense given the goal of showing how most of the IP multicast host stack
operates the same for IPv4 and IPv6.</t>

<t>7.2 Re-added requirement for routers not to forward link-local multicast</t>

<t>7.3 adding <bcp14>MAY</bcp14> requirement to allow non-signaling of Link-Local scope IPv4 multicast
and IPv6 all-hosts group, and explanations how this is better than the prior
definitions from rfc1112. Also includes new (length) Appendix A.3 to justify this
for IPv4.</t>

<t>7.4 text nits (thanks, Brian).</t>

</section>
<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-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 Dino's 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-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-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:
H4sIAEuZU2gAA+1963bbWHbm//MUGNaPpiYkJUqybKuTTFSWXKUsy1YsuTtZ
nV69QPJQQhsE2AAome12nmWeZZ5s9vVcAFBWVTIrf6bSqZIoAue2z77vb4/H
Y2Pm5SIr7k6TTbMcvzJN1uT2NPm5rJvk4ktjizorizpZllVyeZ1cbfImm6d1
A08kabFIBmfFNrkpN9XcRn8cJMOzm6s9fKa21UMGfzbpbFbZh9PoPZ2B8KXw
pFmU8yJdwUwWVbpsxpmF2a2z1bhazqfT6eEsq8cHx+YR5n19eWXmaWPvymp7
mtTNwtRNZdMVDHRx+9aUs7rMbWPr0wQfNJv1IqXfXr6ejuCjw0PzQ5Ktq9Ok
qTZ1c3hw8Prg0NAH68q+OHr56jb4HN4NM/xTmpcFzG1ra7POTpM/JE05H+G/
Fnbd3J8mL0ZJXVYwjWUNP21X/MO8XK1s0dR/NCbdNPdldWqSZJwkCfyH/uEV
3zR2fW+L5GKSnFtbwW7q38sK1vvRNlllF/rZPGtg2b9Li3m5ebDVKPmxypqs
vk/elPlmNctS98VyUzS4RW/SIl24j+0qzXLYZh7pn4qysut8O8ENn8B4vTO8
LW2V27pOLuafbdVE03u7aTaVfbRZcmvn90WZl3eZrZNPN2f6tapECrOLrCmr
zuSC78nMmsb+07yeLNPNZGGNgQmu0iZ7sLh5H9++gWOUn/As8ceb2/MX+N/L
n66uHw5P8U+Hh0cn/KXD45Nj+f7xIT96c3NFXzo+OXjJf3kFpy1fevXi4Ni9
7Ii+9/rlS3zZ1btzeTt88NKYrFi2pjY9OH6hP748PNIfX73SH2FWL9yPh6/k
xyP4+VQGmPL0X04P5G/Hr/Xho5OX7onXL050knVRlmu60LikF8dTWeyrE92n
Fy9fTv2S8qyxp/zxaxnk5OBI9+jk4JXO8OXR8Yn78aW+7NWrKXzBjMfjJJ3B
xUvnjTG391mdrOyqTOq1nWdLJIDm3ibW3/PK/mWDZJyUyyRN7pELZKt1bvGC
wB6WhYE/4DOXRWOrwjbJdVXCBSvzZHh5vQd3Lak36zVcMuQnK8dPHrPmnp9z
nAdOBl6xTIEH9bIr4VWThKYtM57TJJJ0vc5h9gaGm5XwZrhhPP9j4lQnya5Z
Tsx5BtuRzTb0Hvqabgr8d1Pk2Qp2fjGR3QJ+t8G1J3j9YKp18vUr0fT08Ns3
Yr8Wxt7CS4DzwkuTrGnPtVwamgocq84zmQIT0wnRIa2yxSKHa/QDXJOz2083
yYe3ye3PlzfJ1cXVh/9/cv+vT85+mYOEoE9/xQH+8ANwf9p9kiPJu7S426R3
Fmdik892mzyW1aJOBlefbm4HI/5v8v4D/fzx4l8+XX68OMefb34+e/fO/WDk
Gzc/f/j07tz/5J988+Hq6uL9OT8MnybRR2ZwdfZv8BdSCD5c315+eH/2bpBk
Be+c26C0snj6M5vQuYJ4hW1M0tosbD2HDYdf4Jkf31z/n/89PYZd/B/I+qbT
17CN/Mur6ctj+OURpCOPVhb5Vn6FndsaOHSbVviWNM+TebrOmjQHyZvCVt+X
j0VybysLG/k//4A788fT5O9n8/X0+B/lA1xw9KHuWfQh7Vn3k87DvIk9H/UM
43Yz+ry10/F8z/4t+l33Pfjw7/9XnhU2GU9f/a9/NHjlL9/ffvxw/ukNfpOo
6WazWqXVNvn6Q80/ffvvZAGT5LJ9i0C6f/tmdl8iHKR9iehDvTWt2wQcJTkD
IikW2ZfkcoLfDm6rMBJHsAs7z4Fo4xudFfN8gyqzaV1UeBQ0mmwO9BV+X3dx
EbM7nL0+e+yY0bWfOOzUw/Eo2Ia9kUGaB10SHsM9bO7Txr0DSPzyur0AYYLM
AeGJpwakl+sXTnbN6ERmhCoSTAkHhEttqxV+E9ljzbcYb75x84ChadpJmxtP
kt/jlYzPsMYXKIHAPMJ9M+G+9c7ykV6Y5mADLLb48UO2gDnNtgkMDFOAydej
mDMZ+VbNs7QF0h9tcFkjKdmx/ZKx0RNPFNV8PoaY083TwqAMs3gsKSr+a7RB
khpekcMbS2CAOHc3nCNmuky2Y3j59ZOYtBktxck02iSgu4FIyBuZZSAqR8kQ
FF08PfgPnBzy4KpcbObIgmWGdH+BHRg3Ad6FUCYny6pc0WdgAgXEzZwVLnCG
u5hvcbPgeXwxfLHwwk6+C1u3md/j/nz9weJqgE18Y65Ooy/oBZUBOoBVWv4V
vwc0Q0Sn84lfi8PPgfmDgfSUyoDrWvCRbtBYynDT4a6ANQUShZYI2zRpSXiQ
JfCYCCs4fCY1+GIyvwdRbOs2HdOLQgZjzPnG6qYSUdHpw/nRtYCp0Q7QSTV6
swYhAQxAftZNxAWs8QRm9ca0CSm+UkJAuoflmuZ7apquIoUUiPNa55vaUQ+c
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
/i9JER9eBPQAAA==

-->

</rfc>

