<?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.6.9 (Ruby 3.1.2) -->


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

]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-eckert-msr6-problem-statement-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="msr6-problem-statement-eckert">Yet another Problem Statement for IPv6 Multicast Source Routing (MSR6)</title>

    <author initials="T." surname="Eckert" fullname="Toerless Eckert" role="editor">
      <organization>Futurewei Technologies USA</organization>
      <address>
        <postal>
          <street>2220 Central Expressway</street>
          <city>Santa Clara</city>
          <code>CA 95050</code>
          <country>USA</country>
        </postal>
        <email>tte@cs.fau.de</email>
      </address>
    </author>

    <date year="2022" month="October" day="24"/>

    
    <workgroup>MSR6</workgroup>
    

    <abstract>


<t>This draft summarizes additional personal opinions of the author for why
existing stateless multicast solutions BIER/BIER-TE are not sufficient
to support the operator, architecture and use-case goals that MSR6 
proposes to solve.</t>

<t>This document is complementary to problems outlined in I-D.liu-msr6-problem-statement and in
no way affects any of them. Instead, it attempts to look more at lower-layer functional challenges
of current stateless source routing multicast solutions (BIER/BIER-TE), as
well as architectural, network and protocol design ecosystem requirements of operators.</t>



    </abstract>



  </front>

  <middle>


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

<t>This draft summarizes additional personal opinions of the author for why
existing stateless multicast solutions BIER/BIER-TE are not sufficient
to support the operator, architecture and use-case goals that MSR6 
proposes to solve.</t>

<t>This document is complementary to problems outlined in <xref target="I-D.liu-msr6-problem-statement"/> and in
no way affects any of them. Instead, it attempts to look more at lower-layer functional challenges
of current stateless source routing multicast solutions (BIER/BIER-TE), as
well as architectural, network and protocol design ecosystem requirements of operators.</t>

<t>This draft is solely kept separate at this time, because the author felt it would be impossible
for him to merge the text without doing disservice to that pre-existing draft
due to time constraints and the inability to have reviewed and agreed upon
this documents amongst the larger authorship of <xref target="I-D.liu-msr6-problem-statement"/>.</t>

<t>This document is structured as follows.</t>

<t>The Problems section (<xref target="problems"/>) summaries problems with existing solutions
and numbers them with Pi. The author found that it is very difficult trying
to find the right degree of detail, but hopes that the presented list is
a good compromise between too much detail and to abstract.</t>

<t>The Explanations section (<xref target="explanations"/>) provides for each problem 
additional explanation to avoid that readers have to understand the problems only
after reading up on a multitude of RFC and/or having similar deployment experiences.</t>

<t>On some points, the explanation section also presents what the
author considers to be evidence as to how the IETF has established case precedents over
the past decades how these problems have been solved in (in the authors opinion) similar cases.</t>

<t>These prior cases have often been controversial, but in the opinion of the author,
they finally resulted in best serving the network operators and their customers, even at the
expense that this produced more IETF standards than if some entity could have been
able to persuade all customers and operators that there is a single one-fits-all approach
to standards.</t>

<t>Even though the IESG did ask to only produce a problem statement, the author
found that even the problems where best understood by participants of the IETF that
he discussed them with if he also provided an outline of the proposed solutions,
instead of them having try to guess how hey could be solved.  This is what the
<xref target="solutions"/> section discusses, and of course it is not meant to taint the opinions
of readers as to how any of the problem should be solved.</t>

<t>Explanations for problem Pi are numbered Ei, Solution considerations for Pi are numbered Si.</t>

<t>Finally, the  document lists open issues and ends with with an appendix on 
other (<xref target="other"/>) considerations about how MSR6 might be operated adjacent to BIER in the IETF
and why creation of such a WG is beneficial beyond the mere solving of a specific set of
problems.</t>

</section>
<section anchor="problems"><name>Problems</name>

<section anchor="P1"><name>P1: BIER: Efficiency of delivery for sparse groups in large networks</name>

<t>In networks with (a) a large number of BFER (e.g.: 60k) and (b) a
source-routing header size as favored by products (e.g. 256 bit),
BIER will need to send in a stochastic manner as many packets as ingress replication
(no BIER) instead only one packet.</t>

</section>
<section anchor="P2"><name>P2: BIER-TE: Packet header efficiency of delivery to sparse groups in large networks</name>

<t>Problem <xref target="P1"/> is larger in BIER-TE because significant number of bits
in BIER-TE bitstrings need to be allowed to steering of the traffic ("tree engineering")
making bitstrings effectively even smaller compared to BIER, increasing
this Bitstring fragmentation problem.</t>

</section>
<section anchor="P3"><name>P3: BIER/BIER-TE: Efficient amount of per-router state (BIFT)</name>

<t>BIER/BIER-TE requires in every BIER router forwarding state for every egress
router. In large networks, this can be as much as e.g.: 60,000 entries (or more)
or maybe as much as twice as many with BIER-TE. This is unacceptable for many networks
with this number of end-routers or hosts and mostly sparse multicast trees.</t>

</section>
<section anchor="P4"><name>P4: More complex, multi-protocol host stack requirements with BIER</name>

<t>Controlled networks such as Data-Centers with VM to VM IP multicast, or
IoT networks do use IPv6 multicast. To use end-to-end stateless multicast
with BIER, they would need to implement in addition to IPv6 host stacks
BIER BFIR/BFER stacks as well as any BIER specific mechanisms for the
routing underlay to use IPv6 as a flow overlay. This duplication of host
stacks is undesirable for cost of development, operations code-space as well
as hardware implementation (Smart NICs etc.).</t>

</section>
<section anchor="P5"><name>P5: Support for single, IPv6/RFC8200 compliant network forwarding plane</name>

<t>BIER is a separate (layer 2.5?) forwarding plane but not an extensions to
IPv6/RFC8200. This is operationally undesirable for IPv6-only networks.</t>

</section>
<section anchor="P6"><name>P6: No Support for SRv6 architecture</name>

<t>BIER/BIER-TE including BIERin6 do not support the SRv6 architecture, making it
impossible for networks that utilize a common source routing architecture
across unicast and multicast to as easy as possible share any applicable
or future SRv6 functionality between unicast and multicast and likely also
simplify OAM and design.</t>

</section>
<section anchor="P7"><name>P7: Inability to perform per-hop IPv6 forwarding plane features</name>

<t>Operators depend on a wide variety of collateral forwarding plane features,
even hop-by-hop or on dedicated intermediate hops which are not the ingress or
egress router of the packet. Policies and/or Telemetry of these features are
tied to IPv6 source and/or destination address. Important examples include,
but are not limited to:</t>

<t><list style="numbers">
  <t>IPfix and related services for traffic monitoring</t>
  <t>Traffic filtering (including (S,G)</t>
  <t>QoS ( (S,G) policies)</t>
  <t>IPsec/ESP ((S,G) SA policies)</t>
</list></t>

</section>
<section anchor="P8"><name>P8: Routing convergence speed and complexity</name>

<t>BIER/BIER-TE do not allow to build lowest outage, fast-converging network
services because of their reliance on a) IGP re-routing and b) large
BIFT forwarding tables.</t>

</section>
</section>
<section anchor="explanations"><name>Explanations</name>

<section anchor="E1"><name>E1: BIER: Efficiency of delivery to sparse groups in large networks</name>

<t>A single BIER packet with a 256 bitstring can only create copies
to the 256 BFER addressed via this bitstring. In a network with
60k BFER, at least 235 different Bitstrings need to be defined
(256 * 235 &gt; 60k).  A message to even a small number of BFER
such as 10 could statistically easily require to send 10 packets,
because each of the BFER is in a different bitstring.</t>

<t>Efficient replication to sparse multicast groups in large networks
was at the core of the original IP multicast protocol PIM Sparse Mode
in the early 1990th.  The "Sparse" in this name exactly refers to
such a group with few members in a large network. It can thus be
seen as a day 1 requirement against any scalable IP multicast protocol,
stateful or stateless.</t>

</section>
<section anchor="E2"><name>E2: BIER-TE: Packet header efficiency of delivery to sparse groups in large networks</name>

<t>Note that BIER-TE was designed only shortly after BIER and hence one primary
goal was to re-use as much as possible of the BIER forwarding plane to make
adoption as easy as possible. This excluded a lot of the more forward looking
options being proposed for MSR6 now (<xref target="S1"/> / <xref target="S2"/>).</t>

</section>
<section anchor="E3"><name>E3: BIER/BIER-TE: Efficient amount of per-router state (BIFT)</name>

<t>With "flat bitstrings" as in BIER/BIER-TE each router needs a forwarding entry
similar to unicast forwarding entries. In large networks, even enterprises,
this is easy in the thousands (for edge routers) and another possible factor
ten when running multicast source-routing end-to-end into hosts - which is
feasible with newer proposed technologies but not flat bitstrings of BIER/BIER-TE
(see <xref target="S1"/> / <xref target="S2"/></t>

</section>
<section anchor="E4"><name>E4: More complex, multi-protocol host stack requirements with BIER</name>

<t>Introducing a new host stack for a new network protocol like BIER
without UDP tunneling requires most commonly OS upgrades. This is
not a feasible requirement for reasonable fast adoption in many 
markets such as industrial, IoT or hosts in regulated environments such
as aviation, finance industry, defense and the like. See <xref target="S4"/> how
MSR can avoid this issue.</t>

<t>Whether in the OS or application (when using UDP tunneling), additional network
stacks such as BIER typically incur more code-space overhead than extensions to
an existing stack. This can be an issue for constrained code space hosts.</t>

</section>
<section anchor="E5"><name>E5: Support for single, IPv6/RFC8200 compliant network forwarding plane</name>

<t>The IETF has a long and successful history of extending different type of
unicast network designs with multicast support that best matches and extends
those underlying unicast mechanisms - even when vendors initially promoted
less well aligned multicast technologies that was more readily available and
solutions/workarounds could be built to support initial use-cases of customers
that way.</t>

<t>While specific multicast technical detail benefits of adopting to the new unicast
network design can be developed, this often only happens as a result of deployment
experience with the new network technology and multicast later in the process.
Instead, the most core reason for the IETF to build such new technologies was
the operator/market preference and the logic that multicast functions should be
available as a core architectural extension of any unicast network protocol architecture.
This is why IP Multicast was added to IPv6 and MPLS and why MSR6 now wants to
be chartered for adding source-routed IPv6 multicast based on expanding on
RFC8200 principles.</t>

<t>Making multicast follow architectural frameworks of unicast and expanding it
has a large set of benefits for operators, and can best be described as
the overall ecosystem complexity of operating (OAM) a network, but also
in the often met expectation that it simplifies the adoption of future
extensions/enhancements across unicast and multicast without having to
re-define them, because the multicast solution is built from a different
architecture.</t>

<t>The following lists a few mayor instances where the author thinks this
principle can be observed. Of course it is always possible to create a
detailed technical difference between any prior examples and the case for
MSR6, but the author thinks that that is missing the larger point of the
requirement:</t>

<t>Operator preferences may or may not be justifiable on selective
detail technical points versus a pre-existing solution, but instead the
IETF has repeatedly shown that it serves operator preferences when the proposed
solutions are technically solid (working), require interoperability, and have a sufficient
critical mass of supporters and active participants that can bring standardization
to a successful finish.</t>

<t>Existence of prior, competing but alternating solutions
have never been in the way of such additional technologies in the IETF, or else
IETF would help first-comers to establish monopolies over market spaces
where their solutions themselves may look sufficient but is not preferred
by customers for the variety of reasons mentioned here.</t>

<section anchor="example-1-ipv4-multicast-in-mplsvpn-solutions-vs-native-mpls-multicast"><name>Example 1: IPv4 multicast in MPLS/VPN solutions vs. native MPLS multicast</name>

<t>In the early 2000th, (large) service providers where increasingly adopting MPLS
(with IPv4) as their single network forwarding plane, primarily to be able to introduce
L3VPN services. The only form of multicast that high-speed hardware forwarding
could support in available products back then was IPv4 multicast (no MPLS), which is
why vendors implemented and standardized in the IETF so-called "draft-rosen"
that provided Multicast VPN (MVPN) for MPLS networks with L3VPN services.</t>

<t>Nevertheless, operators that where successfully deploying this IPv4 multicast
based MVPN service continued to ask vendors to give them a "native MPLS"
forwarding plane for their MVPN services. Some aspects of that solution,
such as RSVP-TE/P2MP did provide easy to understand new functionality, such as
traffic engineering, but the most commonly now used MPLS multicast solution, mLDP,
(multicast LDP) provides significantly the same functionality
that PIM can provide. Only the encapsulation of packets in the forwarding plane
is different, but not the services that are supported across those two
variants.</t>

</section>
<section anchor="example-2-native-ipv6-multicast-vs-ipv4-multicast"><name>Example 2: Native IPv6 multicast vs. IPv4 multicast</name>

<t>When IPv6 was introduced, it was not even a question to include it in
the standardization of IPv6, even though in practice, most business critical
use cases where equally feasible by sticking to IPv4: Most customers
where using dual-plane networks and many of them continued to use IPv4
multicast because neither the applications nor hardware forwarding in
routers did support IPv6 multicast.</t>

<t>The difference over today was, that at that time,
no vendor stood up and claimed IPv6 multicast should not
be developed in the IETF because IPv4 multicast was sufficient,
and if necessary with end-to-end tunneling of IPv6 multicast packets across
IPv4 multicast it as well as hop-by-hop tunneling of IPv4 multicast over IPv6 only hops.
But this is exactly what is done today with BIERin6:</t>

</section>
<section anchor="example-3-bierin6"><name>Example 3: BIERin6</name>

<t>The BIER-WG is working on <xref target="I-D.ietf-bier-bierin6"/> as the proposed solution for
how to use BIER in IPv6 networks. It does not change the deployment
model of using BIER forwarding on every replicating hop (ideally
for every router), but instead it recommends to:</t>

<t><list style="numbers">
  <t>Encapsulate IPv6 multicast packets end-to-end over BIER</t>
  <t>Encapsulate BIER packets hop-by-hop across IPv6 when
there are one or more intervening routers not supporting BIER</t>
</list></t>

<t>This approach is very similar to how in Example 1 and 2 networks that
wanted to operationally standardize on only MPLS (Example 1) on every hop
or only IPv6 (Example 2) on every hop, where asked by vendors to
instead use IPv4 multicast because it existed and was hence easier to
sell with existing vendor products. Instead of adding Source-routing
to IPv6 multicast, BIERin6 suggests two layers of tunneling to make BIER
fit into an otherwise IPv6 only network, effectively turning the network
into a dual-plane IPv6-unicast-only + BIER-multicast-only network.</t>

</section>
<section anchor="example-4-routing-for-multicast"><name>Example 4: Routing for multicast</name>

<t>The re-use of unicast technologies for multicast also expands into the
control plane. Initial multicast designs where proposing multicast
specific routing protocols like CBT, MOSPF and DVMRP, one of the
core selling points that made PIM successful in the IETF was that
it was re-using any deployed IP unicast routing protocol. Even when
functionally for IP multicast itself, each of the prior protocols
had arguably benefits (some of which where later also done with
PIM, such as CBT-&gt;Bidir-PIM).</t>

<t>While re-use of existing unicast routing protocols may also be seen
as a functional benefit in itself, these functional advantages where
far less when doing the control plane for MPLS multicast.</t>

<t>mLDP was picked instead of PIM, because it allows customers to troubleshoot
signaling from a single (LDP/TCP) basis for both unicast and multicast forwarding plane
label binding and have more comparable behavior in a variety of corner situations.</t>

<t>Other MVPN signaling where initially continuing to use PIM in draft-rosen, but where
later on demand of customers re-specified into BGP
to suit the operator preference for a single routing protocol
BGP for all services in the network (BESS model). The functionality itself was not
the differentiator over PIM, instead the original ask was to do all that works
well with PIM equally with BGP.</t>

</section>
</section>
<section anchor="E6"><name>E6: No Support for SRv6 architecture</name>

<t>BIER/BIER-TE is a separate source-routing multicast architecture that
is based on re-using the single BIER forwarding mechanisms in any type of
network, whatever its preferred unicast architecture is.</t>

<t>Because there was and is no well-established mechanism for MPLS forwarding planes 
how to extend MPLS forwarding planes with extension headers, BIER did have to
come up with its own header for MPLS networks. This makes it fundamentally
different from IPv6, where <xref target="RFC8200"/> defines the overall source-routing
mechanism, and SRv6 is the one instance of it. <xref target="RFC6554"/> is another instance.</t>

<t>Note though that an IETF MPLS design team is currently (2021/2022) working on
future common extension header design for MPLS networks, so it is but a theoretical
but still interesting question if in a time when MPLS had such established
standards, MPLS network operators would have accepted a BIER header not specifically
following all rules for source routing and header construction established by
such pre-existing MPLS rules. This nevertheless is exactly one of the problems
IPv6 network operators would like to see solved by MSR6 because those definitions
do exist in <xref target="RFC8200"/> for IPv6 networks.</t>

</section>
<section anchor="E7"><name>E7: Inability to perform per-hop IPv6 forwarding plane features</name>

<t>IPFIX <xref target="RFC7011"/> is a protocol to export traffic flow telemetry. It is
widely implemented and deployed for IP/IPv6 multicast, allowing  to
capture per multicast (S,G) traffic flow statistics for network
OAM services.</t>

<t>With BIER and BIERin6, there is no knowledge at the BIER forwarding
layer about multicast (S,G) flows. This only exists on the flow-overlay layer,
which is not present on non-ingress/egress BFRs.</t>

<t>The underlying forwarding functionality to capture traffic statistics
for IPfix flow export has also been used in other common industry
functions, such as MediaTrace mechanisms.</t>

<t>Policies for IPv6 multicast traffic, such as expressed
through ACLs or other router constructs, are used for a variety of functions.</t>

<t><list style="numbers">
  <t>Filtering of traffic based on multicast destination group ranges, includes administrative scoping.
For example, large service providers often have two tiers of service elements, where the PE are
not the last point of policy control, but instead the first P hop could be. This avoid more
complex CsC style additional layers.</t>
  <t>Destination address group bits of IPv6 addresses have been used to indicate target QoS classes for traffic
more flexibly and easier inter-domain than DSCP.</t>
  <t>IPsec encryption/decryption can be inserted on any multi-hop path segments of an IP/IPv6 network
using the IP multicast (S,G) address information as part of setting up the IPsec SA policies
(this is not specific to IP multicast but comes for free from IPsec being designed against IP and thus
 the address information that IPv6 multicast also shares).</t>
</list></t>

<t>Applying policies at arbitrary points along the network path is also more important
for MSR6 than BIER, because MSR6 is not solely focused on only P/PE network designs,
and the overall design of the BIER architecture with flow overlay, BIER layer and
routing underlay is very much expecting such a network design: BIER removes the
knowledge about the actual BIER payload (IPv6 in our case) from the BFR midpoints
and tunnels it over BIER between BFIR and BFER. This is not sufficient for
all MSR6 deployment options.</t>

</section>
<section anchor="E8"><name>E8: Routing convergence speed and complexity in large networks</name>

<t>Multicast services have commonly higher service level objectives than
so-called Internet Best-Effort traffic, yet customers are looking for
equally easy to operationalise solutions for multicast in the network.</t>

<t>With BIER and a large set of destinations (BFER), the BIFT hardware
forwarding tables on every hop in the network need to be updated with
BIFT state for all destinations. For tenths of thousands of destinations,
this becomes as slow as updating the same number of unicast FIB entries.
(it is also a waste of BIFT state when potentially at any point in time
 only a small percentage of destinations actually does need to receive
 traffic).</t>

<t>This ultimate hardware forwarding goal is preceded with all the
well understood convergence issues of IGPs (micro-loops etc), as well
as the time IGPs take to converge.</t>

<t>The known solution to this problem is to utilize strict explicit trees
to deliver traffic. This takes the IGP in the network out of the
picture for hop-by-hop forwarding, and when senders do utilize e.g. link-state
 information to calculate paths for trees, they can constrain their calculations to only
the destination addresses of interest, but not the whole set of
destinations in the network.</t>

<t>Even though BIER-TE can express strict trees, it can not overcome these issue
well, because of the flat bitstring design (derived from BIER), it is not possible
to build strict-steered multicast trees and simultaneously reduce BIFT state.
Instead, attempting to solve this issue with BIER-TE makes BIFT larger.</t>

</section>
</section>
<section anchor="solutions"><name>Candidate MSR6 solution discussion</name>

<section anchor="S1"><name>S1: BIER: Efficiency of delivery for sparse groups in large networks</name>

<t><xref target="I-D.eckert-msr6-rbs"/> and various other MSR6 proposal introduce
different stateless multicast source routing encodings than
the BIER/BIER-TE "flat" bitstrings. These all overcome the
problem by more intelligent encoding.  <xref target="I-D.eckert-bier-cgm2-rbs"/>
also contains preliminary scalability simulation results comparing
the performance against BIER. See also {#exp}.</t>

</section>
<section anchor="S2"><name>S2: BIER-TE: Efficiency of delivery for sparse groups in large networks</name>

<t>Solutions to this problem such as <xref target="I-D.eckert-msr6-rbs"/> are even
stronger solutions to <xref target="P2"/> than to <xref target="P1"/> because BIER-TE suffers
more from the problem than BIER. Equally, see also {#exp}.</t>

</section>
<section anchor="S3"><name>S3: BIER/BIER-TE: Large amount of per-BFR state (BIFT)</name>

<t>In MSR6 proposals such as <xref target="I-D.eckert-msr6-rbs"/>, each router only
needs as much per-BFR state (BIFT) as that router has neighbors, which
typically is 10..200, therefore order or magnitudes less than required in
BIER/BIER-TE. This applies equally to using such proposals instead of BIER
or BIER-TE.</t>

</section>
<section anchor="S4"><name>S4: More complex, multi-protocol host stack requirements with BIER</name>

<t>IPv6 socket APIs exist today on every host stack for every OS, especially
a large variety of IoT host stacks, but also host stacks that are old and
will not be able to receive OS-level updates, or that for regulatory
and other business reasons can not receive available OS-level updates 
(because of avoid need for re-validation).</t>

<t>IPv6 host stacks also have the socket API option to insert from application
level arbitrary IPv6 extension headers.  This allows to implement MSR6 
solely in user-land without additional (UDP) tunneling required.</t>

</section>
<section anchor="S5"><name>S5: Support for single, IPv6/RFC8200 compliant network forwarding plane</name>

<t>MSR6 proposed to use <xref target="RFC8200"/> derived IPv6 extension headers for source
routing, similar to unicast source routing headers for IPv6 in <xref target="RFC6554"/> or <xref target="RFC8754"/>
with IPv6 destination address rewrite on every source routing hop. 
When the source routing header information indicates only the destinations,
this is called by MSR6 Best Effort (BE) mode.  When the source-routing information
indicates the delivery tree, this is called by MSR6 "Tree Engineered" (TE) mode.</t>

<t>To support IPv6 multicast without multiple extension header, MSR6 options
such as <xref target="I-D.eckert-msr6-rbs"/> propose to include not only the source-routing
information to perform BE/TE functions (as in BIER/BIER-TE), but also to include
the IPv6 multicast destination address. This is necessary because the IPv6
destination address is not transparent end-to-end in RFC8200 compliant source-routing.</t>

<t>It is also another significant difference over BIER, where IPv6 multicast can
only be supported as a flow overlay. And it is the reason why at the layer
of IPv6 with MSR all IPv6 multicast address information is directly available,
even when the final IPv6 destination address is not in the base but and IPv6
extension header.</t>

</section>
<section anchor="S6"><name>S6: No Support for SRv6 architecture</name>

<t>As described in <xref target="S5"/>, MSR6 proposes extension header similar in spirit and
goals to SRH. It should equally create standards document that allow to apply
the SRv6 terminology and concept of SIDs (Segment IDentifiers) to MSR6
when this is desired by the network operator.</t>

<t>By mean of using IPv6 addressing in MSR6, it may also be possible to utilize
existing SRv6/SID benefits with multicast (such as inclusion of programability
aspects in the MSR6 IPv6 addresses). This is subject to further study.</t>

<t>Note that IPv6 multicast did equally explore and benefit from special
encodings into the IPv6 address space, arguably similar to SRv6 adding
additional functionality via IPv6 address bits. This includes specifically
"Unicast-Prefix-based IPv6 Multicast Addresses ", <xref target="RFC3306"/>
and even more so "Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address", <xref target="RFC3956"/>.</t>

</section>
<section anchor="S7"><name>S7: Inability to perform per-hop IPv6 forwarding plane features</name>

<t>MSR6 enables all collateral IPv6 forwarding plane features along the
path by explicitly exposing intentionally the same source and destination
address as non-source-routed IPv6 multicast packets.</t>

<t>This is unlike BIERin6, where this information is not in the
possible outer IPv6 header (on loose hops), nor the BIER header, but
only in the BIER end-to-end encapsulated payload header if it is IPv6.
On BFR, the IPv6 context (such as VRF) in which this IPv6 header exists is
not known, so any capturing of information via such "deep packet inspection"
mechanism comes at a lot more problems to solve and would hardly be
something that could be used for standardized IETF mechanisms such as
IPfix.</t>

<t>The most fundamental privacy rule for network protocol designs
is to not leverage packet data that is not explicitly meant to be exposed
at a particular layer/point in the network, and on an MSR6 hop, the
MSR6 extension header is explicitly exposed, representing the multicast
(S,G) flow information, whereas in BIER this is never the case, but
only on BFIR/BFER in the flow-overlay layer.</t>

<t>With MSR6, there is an additional overhead for routers to examine
the destination IPv6 address from an extension header, but that is the cost
of doing IPv6 business, because with the way <xref target="RFC8200"/> expects source routing
to operate, this can not be further optimized. Of course, this means that it is highly
important to ensure that exactly this IPv6 multicast destination address
has ideally not multiple options of extension header or positions in it,
but that MSR6 will develop one-fits-all for this component of the solution.</t>

</section>
<section anchor="S8"><name>S8: Routing convergence speed and complexity</name>

<t>MSR6 proposal that attempt to solve this problem are those that allow to
encode in the source-routing header sparse trees for large networks such that
no IGP routing, but only hop-by-hop forwarding is required. These solutions
do likewise also require only small amounts of BIFT forwarding state per
router that only changes when link-local MSR6 neighbors change {I-D.eckert-msr6-rbs}}
is an example of such proposals.</t>

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

<t>Probably many...</t>

<t>This version of the document does likely not well enough highlight in all places
when the solution to a problem could also be had by enhancements to BIER, but it
does so in hopefully the most important places.</t>

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

<t>00 - initial version.</t>

</section>


  </middle>

  <back>



    <references title='Informative References'>




<reference anchor='I-D.eckert-bier-cgm2-rbs'>
   <front>
      <title>Carrier Grade Minimalist Multicast (CGM2) using Bit Index Explicit Replication (BIER) with Recursive BitString Structure (RBS) Addresses</title>
      <author fullname='Toerless Eckert' initials='T. T.' surname='Eckert'>
         <organization>Futurewei Technologies USA</organization>
      </author>
      <author fullname='Bing Xu' initials='B.' surname='Xu'>
         <organization>Huawei Technologies (2012Lab)</organization>
      </author>
      <date day='9' month='February' year='2022'/>
      <abstract>
	 <t>   This memo introduces the architecture of a multicast architecture
   derived from BIER-TE, which this memo calls Carrier Grade Minimalist
   Multicast (CGM2).  It reduces limitations and complexities of BIER-TE
   by replacing the representation of the in-packet-header delivery tree
   of packets through a &quot;flat&quot; BitString of adjacencies with a
   hierarchical structure of BFR-local BitStrings called the Recursive
   BitString Structure (RBS) Address.

   Benefits of CGM2 with RBS addresses include smaller/fewer BIFT in
   BFR, less complexity for the network architect and in the CGM2
   controller (compared to a BIER-TE controller) and fewer packet copies
   to reach a larger set of BFER.

   The additional cost of forwarding with RBS addresses is a slightly
   more complex processing of the RBS address in BFR compared to a flat
   BitString and the novel per-hop rewrite of the RBS address as opposed
   to bit-reset rewrite in BIER/BIER-TE.

   CGM2 can support the traditional deployment model of BIER/BIER-TE
   with the BIER/BIER-TE domain terminating at service provider PE
   routers as BFIR/BFER, but it is also the intention of this document
   to expand CGM2 domains all the way into hosts, and therefore
   eliminating the need for an IP Multicast flow overlay, further
   reducing the complexity of Multicast services using CGM2.  Note that
   this is not fully detailed in this version of the document.

   This document does not specify an encapsulation for CGM2/RBS
   addresses.  It could use existing encapsulations such as [RFC8296],
   but also other encapsulations such as IPv6 extension headers.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-eckert-bier-cgm2-rbs-01'/>
   <format target='https://www.ietf.org/archive/id/draft-eckert-bier-cgm2-rbs-01.txt' type='TXT'/>
</reference>


<reference anchor='I-D.eckert-msr6-rbs'>
   <front>
      <title>Recursive Bitstring Structure (RBS) for Multicast Source Routing over IPv6 (MSR6)</title>
      <author fullname='Toerless Eckert' initials='T. T.' surname='Eckert'>
         <organization>Futurewei Technologies USA</organization>
      </author>
      <author fullname='Xuesong Geng' initials='X.' surname='Geng'>
         <organization>Huawei 2012 NT Lab</organization>
      </author>
      <author fullname='Xiuli Zheng' initials='X.' surname='Zheng'>
         <organization>Huawei 2012 NT Lab</organization>
      </author>
      <author fullname='Rui Meng' initials='R.' surname='Meng'>
         <organization>Huawei 2012 NT Lab</organization>
      </author>
      <author fullname='Fengkai Li' initials='F.' surname='Li'>
         <organization>Huawei 2012 NT Lab</organization>
      </author>
      <date day='11' month='July' year='2022'/>
      <abstract>
	 <t>   This document defines an encoding and corresponding packet processing
   procedures for native IPv6 multicast source routing (MSR6) using a
   so-called &quot;Recursive Bitstring&quot; (RBS) address structure.

   The RBS address structure encodes the source-routed multicast tree as
   a tree of bitstrings.  Each router on the tree only needs to examine
   and perform replication for the one bitstring destined for it.

   The MSR6/RBS IPv6 extension header encoding and processing is modeled
   after that of unicast source routing headers, RFC6554 and RFC8754,
   and shares all elements that can be shared.  To support the RBS
   structure, it is replacing the &quot;Segments Left&quot; pointer to the next
   segment with two fields to point to the next sub-tree to parse.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-eckert-msr6-rbs-00'/>
   <format target='https://www.ietf.org/archive/id/draft-eckert-msr6-rbs-00.txt' type='TXT'/>
</reference>


<reference anchor='I-D.liu-msr6-problem-statement'>
   <front>
      <title>Problem Satement of IPv6 Multicast Source Routing (MSR6)</title>
      <author fullname='Yisong Liu' initials='Y.' surname='Liu'>
         <organization>China Mobile</organization>
      </author>
      <author fullname='Tianji Jiang' initials='T.' surname='Jiang'>
         <organization>China Mobile</organization>
      </author>
      <author fullname='Toerless Eckert' initials='T. T.' surname='Eckert'>
         <organization>Futurewei</organization>
      </author>
      <author fullname='Zhenbin Li' initials='Z.' surname='Li'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Gyan Mishra' initials='G. S.' surname='Mishra'>
         <organization>Verizon Inc.</organization>
      </author>
      <author fullname='Zhuangzhuang Qin' initials='Z.' surname='Qin'>
         <organization>China Unicom</organization>
      </author>
      <author fullname='Changwang Lin' initials='C.' surname='Lin'>
         <organization>New H3C Technologies</organization>
      </author>
      <author fullname='Xuesong Geng' initials='X.' surname='Geng'>
         <organization>Huawei</organization>
      </author>
      <date day='21' month='October' year='2022'/>
      <abstract>
	 <t>   This document analyses the gaps of the existing IPv6 multicast
   solutions under discussion in IETF based on the requirements.


	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-liu-msr6-problem-statement-01'/>
   <format target='https://www.ietf.org/archive/id/draft-liu-msr6-problem-statement-01.txt' type='TXT'/>
</reference>


<reference anchor='I-D.ietf-bier-bierin6'>
   <front>
      <title>Supporting BIER in IPv6 Networks (BIERin6)</title>
      <author fullname='Zheng Zhang' initials='Z.' surname='Zhang'>
         <organization>ZTE Corporation</organization>
      </author>
      <author fullname='Zhaohui (Jeffrey) Zhang' initials='Z. J.' surname='Zhang'>
         <organization>Juniper Networks</organization>
      </author>
      <author fullname='IJsbrand Wijnands' initials='I.' surname='Wijnands'>
         <organization>Individual</organization>
      </author>
      <author fullname='Mankamana Prasad Mishra' initials='M. P.' surname='Mishra'>
         <organization>Cisco Systems</organization>
      </author>
      <author fullname='Hooman Bidgoli' initials='H.' surname='Bidgoli'>
         <organization>Nokia</organization>
      </author>
      <author fullname='Gyan Mishra' initials='G. S.' surname='Mishra'>
         <organization>Verizon</organization>
      </author>
      <date day='4' month='September' year='2022'/>
      <abstract>
	 <t>   BIER is a multicast forwarding architecture that does not require
   per-flow state inside the network yet still provides optimal
   replication.  This document describes how the existing BIER
   encapsulation specified in RFC8296 works in a non-MPLS IPv6 network,
   which is referred to as BIERin6.  Specifically, like in an IPv4
   network, BIER can work over L2 links directly or over tunnels.  In
   case of IPv6 tunneling, a new IP &quot;Next Header&quot; type is to be assigned
   for BIER.


	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-bier-bierin6-05'/>
   <format target='https://www.ietf.org/archive/id/draft-ietf-bier-bierin6-05.txt' type='TXT'/>
</reference>



<reference anchor='RFC3306' target='https://www.rfc-editor.org/info/rfc3306'>
<front>
<title>Unicast-Prefix-based IPv6 Multicast Addresses</title>
<author fullname='B. Haberman' initials='B.' surname='Haberman'><organization/></author>
<author fullname='D. Thaler' initials='D.' surname='Thaler'><organization/></author>
<date month='August' year='2002'/>
</front>
<seriesInfo name='RFC' value='3306'/>
<seriesInfo name='DOI' value='10.17487/RFC3306'/>
</reference>



<reference anchor='RFC3956' target='https://www.rfc-editor.org/info/rfc3956'>
<front>
<title>Embedding the Rendezvous Point (RP) Address in an IPv6 Multicast Address</title>
<author fullname='P. Savola' initials='P.' surname='Savola'><organization/></author>
<author fullname='B. Haberman' initials='B.' surname='Haberman'><organization/></author>
<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='RFC5015' target='https://www.rfc-editor.org/info/rfc5015'>
<front>
<title>Bidirectional Protocol Independent Multicast (BIDIR-PIM)</title>
<author fullname='M. Handley' initials='M.' surname='Handley'><organization/></author>
<author fullname='I. Kouvelas' initials='I.' surname='Kouvelas'><organization/></author>
<author fullname='T. Speakman' initials='T.' surname='Speakman'><organization/></author>
<author fullname='L. Vicisano' initials='L.' surname='Vicisano'><organization/></author>
<date month='October' year='2007'/>
<abstract><t>This document discusses Bidirectional PIM (BIDIR-PIM), a variant of PIM Sparse-Mode that builds bidirectional shared trees connecting multicast sources and receivers.  Bidirectional trees are built using a fail-safe Designated Forwarder (DF) election mechanism operating on each link of a multicast topology.  With the assistance of the DF, multicast data is natively forwarded from sources to the Rendezvous-Point (RP) and hence along the shared tree to receivers without requiring source-specific state.  The DF election takes place at RP discovery time and provides the route to the RP, thus eliminating the requirement for data-driven protocol events.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5015'/>
<seriesInfo name='DOI' value='10.17487/RFC5015'/>
</reference>



<reference anchor='RFC6554' target='https://www.rfc-editor.org/info/rfc6554'>
<front>
<title>An IPv6 Routing Header for Source Routes with the Routing Protocol for Low-Power and Lossy Networks (RPL)</title>
<author fullname='J. Hui' initials='J.' surname='Hui'><organization/></author>
<author fullname='JP. Vasseur' initials='JP.' surname='Vasseur'><organization/></author>
<author fullname='D. Culler' initials='D.' surname='Culler'><organization/></author>
<author fullname='V. Manral' initials='V.' surname='Manral'><organization/></author>
<date month='March' year='2012'/>
<abstract><t>In Low-Power and Lossy Networks (LLNs), memory constraints on routers may limit them to maintaining, at most, a few routes.  In some configurations, it is necessary to use these memory-constrained routers to deliver datagrams to nodes within the LLN.  The Routing Protocol for Low-Power and Lossy Networks (RPL) can be used in some deployments to store most, if not all, routes on one (e.g., the Directed Acyclic Graph (DAG) root) or a few routers and forward the IPv6 datagram using a source routing technique to avoid large routing tables on memory-constrained routers.  This document specifies a new IPv6 Routing header type for delivering datagrams within a RPL routing domain.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6554'/>
<seriesInfo name='DOI' value='10.17487/RFC6554'/>
</reference>



<reference anchor='RFC7011' target='https://www.rfc-editor.org/info/rfc7011'>
<front>
<title>Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of Flow Information</title>
<author fullname='B. Claise' initials='B.' role='editor' surname='Claise'><organization/></author>
<author fullname='B. Trammell' initials='B.' role='editor' surname='Trammell'><organization/></author>
<author fullname='P. Aitken' initials='P.' surname='Aitken'><organization/></author>
<date month='September' year='2013'/>
<abstract><t>This document specifies the IP Flow Information Export (IPFIX) protocol, which serves as a means for transmitting Traffic Flow information over the network.  In order to transmit Traffic Flow information from an Exporting Process to a Collecting Process, a common representation of flow data and a standard means of communicating them are required.  This document describes how the IPFIX Data and Template Records are carried over a number of transport protocols from an IPFIX Exporting Process to an IPFIX Collecting Process.  This document obsoletes RFC 5101.</t></abstract>
</front>
<seriesInfo name='STD' value='77'/>
<seriesInfo name='RFC' value='7011'/>
<seriesInfo name='DOI' value='10.17487/RFC7011'/>
</reference>



<reference anchor='RFC8200' target='https://www.rfc-editor.org/info/rfc8200'>
<front>
<title>Internet Protocol, Version 6 (IPv6) Specification</title>
<author fullname='S. Deering' initials='S.' surname='Deering'><organization/></author>
<author fullname='R. Hinden' initials='R.' surname='Hinden'><organization/></author>
<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='RFC8296' target='https://www.rfc-editor.org/info/rfc8296'>
<front>
<title>Encapsulation for Bit Index Explicit Replication (BIER) in MPLS and Non-MPLS Networks</title>
<author fullname='IJ. Wijnands' initials='IJ.' role='editor' surname='Wijnands'><organization/></author>
<author fullname='E. Rosen' initials='E.' role='editor' surname='Rosen'><organization/></author>
<author fullname='A. Dolganow' initials='A.' surname='Dolganow'><organization/></author>
<author fullname='J. Tantsura' initials='J.' surname='Tantsura'><organization/></author>
<author fullname='S. Aldrin' initials='S.' surname='Aldrin'><organization/></author>
<author fullname='I. Meilik' initials='I.' surname='Meilik'><organization/></author>
<date month='January' year='2018'/>
<abstract><t>Bit Index Explicit Replication (BIER) is an architecture that provides optimal multicast forwarding through a &quot;multicast domain&quot;, without requiring intermediate routers to maintain any per-flow state or to engage in an explicit tree-building protocol.  When a multicast data packet enters the domain, the ingress router determines the set of egress routers to which the packet needs to be sent.  The ingress router then encapsulates the packet in a BIER header.  The BIER header contains a bit string in which each bit represents exactly one egress router in the domain; to forward the packet to a given set of egress routers, the bits corresponding to those routers are set in the BIER header.  The details of the encapsulation depend on the type of network used to realize the multicast domain.  This document specifies a BIER encapsulation that can be used in an MPLS network or, with slight differences, in a non-MPLS network.</t></abstract>
</front>
<seriesInfo name='RFC' value='8296'/>
<seriesInfo name='DOI' value='10.17487/RFC8296'/>
</reference>



<reference anchor='RFC8754' target='https://www.rfc-editor.org/info/rfc8754'>
<front>
<title>IPv6 Segment Routing Header (SRH)</title>
<author fullname='C. Filsfils' initials='C.' role='editor' surname='Filsfils'><organization/></author>
<author fullname='D. Dukes' initials='D.' role='editor' surname='Dukes'><organization/></author>
<author fullname='S. Previdi' initials='S.' surname='Previdi'><organization/></author>
<author fullname='J. Leddy' initials='J.' surname='Leddy'><organization/></author>
<author fullname='S. Matsushima' initials='S.' surname='Matsushima'><organization/></author>
<author fullname='D. Voyer' initials='D.' surname='Voyer'><organization/></author>
<date month='March' year='2020'/>
<abstract><t>Segment Routing can be applied to the IPv6 data plane using a new type of Routing Extension Header called the Segment Routing Header (SRH). This document describes the SRH and how it is used by nodes that are Segment Routing (SR) capable.</t></abstract>
</front>
<seriesInfo name='RFC' value='8754'/>
<seriesInfo name='DOI' value='10.17487/RFC8754'/>
</reference>




    </references>


<section anchor="other"><name>Other considerations towards MSR6</name>

<section anchor="design-separation-between-tree-building-and-other-functions"><name>Design separation between tree building and other functions</name>

<t>BIER is designed as a common stateless multicast forwarding layer meant to
be applicable to any network (or ever higher layer) protocol that can
be tunneled/encapsulated across it ("flow-overlay").</t>

<t>This incurs the price of designing a flow overlay
layer on BFIR/BFER (ingress/egress BIER edge routers), and not having any
functionality of that encapsulated flow overlay traffic available on
the BIER midpoints (BFR) - unless any such functionality is meticulously
mapped into the BIER packet header, such as MPLS TC and IP/IPv6 DSCP
as specified in <xref target="RFC8296"/>.</t>

<t>This design maps very well the common P/PE design in service providers,
but it does not necessarily match arbitrary IPv6 networks in
industry, IoT, data-center (interconnect), or even service provider
networks (aggregation, multi-AS,...). Instead, when such technologies
are used, network designs across all features have to be built to
enable P routers to be mostly feature-less.</t>

<t>IPv6 MSR6 instead is intended to allow re-using by default any pre-source-routing
IPv6 feature as much as possible on any hop of the network. And minimize
the requirements of introducing network protocol P/PE separation
designs across all functions in the network to enable this.</t>

<t>One example for this principle is an early stage in reducing IP multicast tree
state in data centers.</t>

<t>Originally, OAM for IP multicast traffic in DC was performed on PIM-SM (S,G)
state (per state packet/byte counters), but diagnosis of PIM-SM state is challenging
in itself and scales linearly with the amount of applications running - 
operators did not like it.  Even worse, the amount of PIM-SM state deployed in 
the target data centers was about to exceed performance of routers. This lead
to the development of Bidir-PIM <xref target="RFC5015"/> which reduced PIM state to (*,G),
for example in typical data-centers from 20,000 states to 200 states at the time.</t>

<t>But Bidir-PIM made it impossible to have per (S,G) counters anymore on every hop
through the multicast tree state. Instead, IPfix for IP multicast was developed,
which could be configured for arbitrary subsets of multicast flows (based on (S,G) ACL policies),
thus also not being tied to the scaling problems of the IP multicast tree building, and by
virtue of operating completely independent of IP multicast it also had no
tie-in with IP multicast protocols and can therefore also help to diagnose them.</t>

</section>
<section anchor="reuse-of-bier-principles-and-technology-components-as-much-as-possible"><name>Reuse of BIER principles and technology components as much as possible</name>

<t>MSR6 efforts considers BIER-WG to be one of its most important
adjacencies in the IETF and does not want to re-invent anything
unnecessarily that BIER already solves well if applicable to IPv6 only
source routing mechanisms.</t>

<t>Likewise, MSR6 efforts would welcome if new technology ideas originally
experimented and used in MSR, but equally applicable to BIER can also be shared
across MSR6 and BIER (such as new representations of the source-routing
information).</t>

</section>
<section anchor="exp"><name>MSR6 as experimental (not standards track) work</name>

<t>In the opinion of the author, the ability to experiment with new and better
technology components in MSR6 is easier when an MSR6 WG would initially be
targeted for experimental status - in the same way as BIER initially was.
BIER WG has for some time now been "upgraded" to standards track work, and
also its RFC where upgraded to standard track, even though this does not show
in the documents themselves (for historical reasons of the RFC publishing process).</t>

<t>With BIER (WG and RFCs) being standards track now, it still can still adopt
experimental work, but when BIER establishes itself as a deployed solution in the market,
it often becomes less easy to publish new, experimental work with the
same name, because this raises the risk of customers not being able to
well distinguish between more proven, older BIER options and newer,
potentially experimental ones.</t>

<t>Therefore, experimental new technology options may be better first proven in
the context of MSR6 work even when equally applicable to MSR6 and BIER. In the
opinion of the author this specifically includes the new tree encoding
structures proposed by different MSR6 drafts (including the authors
<xref target="I-D.eckert-msr6-rbs"/>.</t>

<t>The core tenets of MSR6 such as its use
of RFC8200 source routing mechanisms for end-to-end IPv6 multicast could
easily be standards track, but may simply be best targeted as experimental
too, solely to be sure that sufficient practical/operational experience work
is gained - and tracked by appropriate IETF work - before they are upgraded to standards level.</t>

</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA+19W3MbR5bme/6KCvoFnAVIibZkmw+zqwvlZYRlcUV1925s
bGwUUAmiRkAVpqpAGq3Qf9/zfefkpYpUuye69206omUSBLIyT57Ld65YLBZu
1VZ1c3dZHIb14ifnhnrY+svif/mhKJt22PiuuOna5dbvituhHPzON0Oxbrvi
+ub+ZfH+sB3qVdkPxW176Fa++NgeBlmumL2//fjytHDlctn5+8ti13cvF3td
aNGHhRZ+9dl3g6vaVVPu5LFVV67Dq4tvfObZM/cg+8UD3EpevGu742VRN+vW
1fvushi6Qz9cPHv287ML1w+dL3eXxfXVp3dOfiub6v+W27aRRx197/b1ZfG/
h3Y1L/q2k7eue/npuNMfVu0Oz+v/j3PlYdi03aUrioX8n//T/X5qfbf1fV9c
6UHsj10LGvqqHtouvNZ2sul3h+HQ+QdfF5/8atO02/au9n3xp9tX4W3YsR8u
i4uLi2fFG3l+V26Lq9/3nTzloTyGt63qQQ59WzZDWbzZll0Z/9BW8ug3r4qf
Xzx78Sy9epCV5BPZk/yurLdCrsH/t1V/ti4PZ5V3DnTsduVQ3/tLvvN68fbM
LmRZ+26xuttdLLpl/+ivvK7RH7b14RuXmN5Te+E7Lox/6ual/unjuzfff/8s
++XnF+mXF8+ev4i/vHzx4of4y4/Pnj+Pv/wkTJD98nNa4Kcf8Rm3WCyKcikU
L1eDc582da8MWPSH3a7s6r/K1ZSV3GLdNnILe9/1/KHd14281BftuhAJKZQ9
KBUPm6Pzv9c9hYDHJXvsopz07fYw8MOvr68+nuOfxaeroux8IeImT16v61Ut
JHJDK7/t98KYfEgrjy+Fn+by3tWmHvwKrCRCWhWH3i9kcV/cteW2l3eXA8Wj
cEL4fdvLMbBYu733Z+Gc7epAUZafhdH3W15L2R3xTrsuOd9h2NaNr0S6/uBC
uY+6cU1bCJcW5Xot+xPqNUcj0u6suG76wZfVvKjl7cJ2u/3AjW3b9nOxa3GY
QX55EF7YlkdRPOtDszLarzblduubOxFaWW916Do8NBG4V/XTmfp5it6znOCn
QsbePfjtVv6bU7TczovGDw9t95lnkpOKgmi3ReX7+q4p/Krtj3KOXdH5fz/U
HU9PTggX1J8pZ+3qqtp6V7jv5ORD11YHHuY/Ge0PGO3Ll7/Nal+//iezjZgt
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
5/IbSqvXtggh9f8DgERbANqAAAA=

-->

</rfc>

