<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM 'rfc2629.dtd' [
    <!ENTITY rfc1112 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1112.xml'>
    <!ENTITY rfc2119 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
    <!ENTITY rfc2236 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2236.xml'>
    <!ENTITY rfc2710 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2710.xml'>
    <!ENTITY rfc3376 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3376.xml'>
    <!ENTITY rfc3810 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3810.xml'>
    <!ENTITY rfc4067 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4067.xml'>
    <!ENTITY rfc4877 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4877.xml'>
    <!ENTITY rfc5213 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5213.xml'>
    <!ENTITY rfc5844 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5844.xml'>
    <!ENTITY rfc5949 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5949.xml'>
    <!ENTITY rfc6275 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6275.xml'>
    <!ENTITY rfc6224 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6224.xml'>
    <!ENTITY rfc6636 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6636.xml'>
    <!ENTITY rfc7028 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.7028.xml'>
    <!ENTITY rfc4283 PUBLIC ''
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4283.xml'>
]>
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="5"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc rfcedstyle="yes"?>

<rfc submissionType="IETF" category="exp" consensus="yes" number="7161" ipr="trust200902">
  <front>
    <title abbrev="PMIPv6 Multicast Handover Optimization">
Proxy Mobile IPv6 (PMIPv6) Multicast Handover Optimization by&nbsp;the&nbsp;Subscription&nbsp;Information&nbsp;Acquisition&nbsp;through&nbsp;the&nbsp;LMA (SIAL)</title>


    <!-- AUTHORS -->
    <author fullname="Luis M. Contreras" initials="LM." surname="Contreras">
      <organization abbrev="Telefonica I+D">Telefonica I+D</organization>
      <address>
        <postal>
          <street>Ronda de la Comunicacion, s/n</street>
          <street>Sur-3 building, 3rd floor</street>
          <city>Madrid</city>
          <code>28050</code>
          <country>Spain</country>
        </postal>
        <email>lmcm@tid.es</email>
      </address>
    </author>

    <author fullname="Carlos J. Bernardos" initials="CJ." surname="Bernardos">
      <organization abbrev="UC3M">Universidad Carlos III de Madrid
      </organization>
      <address>
        <postal>
          <street>Av. Universidad, 30</street>
          <city>Leganes, Madrid</city>
          <code>28911</code>
          <country>Spain</country>
        </postal>
        <phone>+34 91624 6236</phone>
        <email>cjbc@it.uc3m.es</email>
        <uri>http://www.it.uc3m.es/cjbc/</uri>
      </address>
    </author>

    <author fullname="Ignacio Soto" initials="I." surname="Soto">
      <organization abbrev="UC3M">Universidad Carlos III de Madrid
      </organization>
      <address>
        <postal>
          <street>Av. Universidad, 30</street>
          <city>Leganes, Madrid</city>
          <code>28911</code>
          <country>Spain</country>
        </postal>
        <email>isoto@it.uc3m.es</email>
      </address>
    </author>

    <date month="March" year="2014"/>

    <area>Internet</area>

    <workgroup>MULTIMOB Working Group</workgroup>


<keyword>PMIPv6, Proxy Mobile
IPv6, multicast, handover, SIAL</keyword>


    <abstract>
      <t>
This document specifies an experimental multicast handover optimization
mechanism for Proxy Mobile IPv6 (PMIPv6) to accelerate the delivery of multicast traffic
to mobile nodes after handovers. The mechanism, called Subscription Information Acquisition through the
LMA (SIAL), is based on speeding up the acquisition of mobile nodes'
multicast context by the mobile access gateways.
To do that, extensions to the current PMIPv6 protocol are proposed.
These extensions are not only applicable to the base solution for multicast
support in Proxy Mobile IPv6, but they can also be applied to other solutions
developed to avoid the tunnel convergence problem. Furthermore, these extensions
are also independent of the role played by the mobile access gateway within the
multicast network (acting as either multicast listener discovery proxy or
multicast router).
      </t>
    </abstract>

  </front>

  <middle>

    <!-- 1. Introduction -->
    <section anchor="sec:introduction" title="Introduction">
      <t>
The base solution for providing continuous multicast service delivery in Proxy
Mobile IPv6 (PMIPv6) domains is  described in <xref target="RFC6224" />. It
specifies the basic functionality needed in the Proxy Mobile IPv6
<xref target="RFC5213" /> entities to provide a multicast service, so continuous
delivery of multicast traffic is supported by obtaining, after each handover,
the ongoing multicast subscription information directly from the Mobile Node
(MN). When a mobile node attaches to a new Mobile Access Gateway (MAG), the
mobile node is queried by the mobile access gateway through a Multicast Listener
Discovery (MLD) General Query, which is sent just after any new link is set up,
to learn of any existing subscription, as specified in
<xref target="RFC2710" /> and <xref target="RFC3810" />.
      </t>

      <t>
However, the base solution needs to be improved to meet some performance
requirements, especially those referring to the user-perceived service quality,
which is seriously affected by the disruption of multicast content forwarding to
the mobile node during handovers.
      </t>

      <t>
A mobile node with an active multicast subscription, moving from one point of
attachment to another within a Proxy Mobile IPv6 domain, experiences a certain
delay until it resumes receiving again the multicast content that it was
receiving at the previous location. Such delay causes a gap in the content
reception. Two different actions can help mitigate such reception gap. One of
them is to buffer at the previous mobile access gateway a copy of the multicast
traffic destined to the mobile node and forward it to the new mobile access
gateway, in order to deliver that traffic to the mobile node. The other possible
(complementary) action is to reduce the time needed by the new mobile access
gateway to learn of the active multicast subscription of the mobile node
(i.e., the multicast context), so the new mobile access gateway can subscribe to
the multicast group(s) on behalf of the mobile node as soon as possible.
      </t>

      <t>
While the first mechanism could potentially be accomplished by using some
adaptation of <xref target="RFC5949" /> to multicast traffic (despite being only
applicable in the case the underlying radio access technology supports Layer 2 (L2)
triggers, thus requiring additional support on the mobile node), there is no
generic standard solution for the accelerated acquisition of the ongoing
multicast subscription of the mobile node.
      </t>

      <t>
The approach followed by the base solution <xref target="RFC6224" /> to learn of an existing multicast subscription relies on the behavior of the
IGMP/MLD protocols. Both protocols send multicast membership query messages when
a new link is up. The response to such a message reports any existing multicast 
subscriptions by the mobile node. While this is a straightforward approach, the
mobile access gateway can incur in a non-negligible delay in receiving the
corresponding MLD Report message. This delay is caused by the time needed for
the detection of the attachment in the new link and the re-establishment of the
data plane after the handover, the radio transfer delays associated with the
signaling to the mobile node, and the MLD query response interval time required
by this procedure (whose default value is 10 seconds as defined in
<xref target="RFC2710" /> and <xref target="RFC3810" />, or between 5 and 10
seconds as considered in the best case wireless link scenario in
<xref target="RFC6636" />).
      </t>

      <t>
This document extends the Proxy Mobile IPv6 signaling protocol defined in the
base protocol <xref target="RFC5213" /> by including a new multicast information
option to update Proxy Mobile IPv6 entities during the registration and
de-registration processes, and new messages to trigger the transfer of multicast
information. No extension is required in any of the multicast-related protocols
in use (IGMP/MLD or PIM protocols). Furthermore, this specification does not 
substitute the standard procedures defined in <xref target="RFC6224" /> (e.g., 
the mobile access gateway continues sending an MLD Query to the entering
mobile node as soon as the point-to-point link is set up), but complements them
for accelerating the acquisition of the multicast content by the mobile access
gateway associated to the new point-of-attachment.
      </t>

      <t>
This document provides a signaling method internal to the network to speed up
the subscription information acquisition by the mobile access gateway, in order
to accelerate the multicast delivery to the mobile node after having completed a
handover. By doing so, the knowledge by the mobile access gateway of the
currently active multicast subscription becomes independent of the underlying
radio technology dynamics and relaxes the requirement of a rapid response from
the mobile node in processing IGMP/MLD control messages. Issues like radio
framing, radio access contention, channel reliability, MN's capabilities (i.e.,
L2 triggering support), IGMP/MLD timers optimization for wireless
environments, etc., will not impact the observed multicast performance during
handovers.
      </t>

      <t>
The mechanisms described in this document can also be applied to the solutions
defined in <xref target="RFC7028" />. Furthermore, it is also independent of the
role played by the mobile access gateway within the multicast network (acting as either MLD proxy or multicast router).
      </t>

      <!-- 1.1 Requirements -->
      <section anchor="sec:requirements" title="Handover Optimization
                                                Requirements">

        <t>
A basic solution for providing support of multicast in a network-based mobility
management  environment has been specified in <xref target="RFC6224" /> without
introducing changes on the original PMIPv6 specification
<xref target="RFC5213" />. The focus of the present document is on improving the
efficiency of the base solution regarding handover performance.
        </t>

        <t>
One of the critical aspects of the base solution is the expected delay incurred
by the mobile access gateway (where the mobile node is being attached to) to be
informed about the ongoing multicast subscription of the entering MN, mainly
due to the fact that the mechanisms provided in the base solution relay on the
original MLD procedures, with long timing interactions not conceived for mobile
environments. Then, the requirements to be covered by a handover optimization
solution can be established in the following manner:

          <list style="symbols">

            <t>
The solution MUST be applicable to any kind of MN (that is, not requiring any
particular functionality such as, for example, L2 trigger capabilities), in
such a way that any type of mobile node in a PMIPv6 domain being served with
multicast traffic can benefit from the optimized solution.
            </t>

            <t>
The solution MUST NOT impact existing multicast protocols.
            </t>

            <t>
The solution MUST optimize the handover performance with respect to the
performance achieved with the base solution for any kind of handover process
(i.e., for proactive and reactive handovers).
            </t>

            <t>
The solution SHOULD minimize the number and extent of additional support (i.e.,
capabilities) required in the network, aiming at an easier deployment. 
            </t>

            <t>
The solution MUST NOT impact deployments of legacy implementations of
<xref target="RFC5213" /> and <xref target="RFC6224" />.
            </t>

          </list>

        </t>

        <t>
The present specification addresses all these requirements, as described in the
following sections.
        </t>

      </section>
      <!-- end 1.1 Requirements -->

    </section>
    <!-- end 1. Introduction -->

    <!-- 2. Terminology -->
    <section anchor="sec:terminology" title="Terminology">

      <t> 
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD",
"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be
interpreted as described in <xref target='RFC2119'></xref>.
      </t>

      <t>
This document uses the terminology referring to PMIPv6 components as defined in
<xref target="RFC5213" />.
      </t>

      <t>
Additionally, the following terms are defined and used in this document.

        <list style="hanging">

          <t hangText="pMAG:">
The previous MAG or pMAG is the mobile access gateway where the MN was initially
registered before a handover event.
          </t>
 
	  <t hangText="nMAG:">
The new MAG or nMAG is the mobile access gateway where the MN is registered at
the end of the handover event.
          </t>

          <t hangText="Reactive Handover:">
A reactive handover is a handover event in which the Local Mobility Anchor (LMA)
receives the mobile node registration from the nMAG without having previously
received the MN de-registration from the pMAG.
          </t>

          <t hangText="Proactive Handover:">
A proactive handover is a handover event where the mobile node is firstly
de-registered on the local mobility anchor by the pMAG, and later on it is
registered by the nMAG as a consequence of changing the point of attachment.
          </t>

          <t hangText="Multicast Membership Context:">
In this document, multicast membership context makes reference to the
information relative to the currently active multicast subscription of an MN in
a handover event that is transferred between the PMIPv6 entities to support the
handover optimization. 
          </t>

        </list>

      </t>

    </section>
    <!-- end 2. Terminology -->

    <!-- 3. Overview -->
    <section anchor="sec:overview" title="Overview">

      <t>
The local mobility anchor is a key element within the PMIPv6 infrastructure,
which traces the mobile node reachability along the PMIPv6 domain. Therefore, the
LMA is the best element to keep the MNs' multicast subscription information
up-to-date and to forward it to the rest of PMIPv6 entities (i.e., to the
mobile access gateways) as needed when MNs move within the domain. The LMA has
timely knowledge of the MNs' locations, especially during handover events, and it
is therefore able to quickly provide information to the new point of attachment
(e.g., by querying the previous one). <xref target="fig:high_level_solution" />
summarizes the main idea of the optimization.
      </t>

      <figure anchor="fig:high_level_solution"
              title="High-Level Description of the Solution">
        <artwork><![CDATA[
                                    +------+
                                    | pMAG |   |
                                    +------+   |
                                   /           |
                                  /            |
                                 /             |
                                /              |
         -*-*-*-*-             /              (MN)
        (         )           /                |
       (           )   +-----+      +------+   |
      (  Internet   )--| LMA |------| nMAG |   v
       (           )   +-----+      +------+   
        (         )        
         -*-*-*-*-          Registration
                          <--------------
     
                         Registration Ack
                       & Multicast Context
                          -------------->
       ]]></artwork>
      </figure>

      <t>
The local mobility anchor only obtains the detailed subscription information or
multicast context during a handover event. There is no need for continuously
informing the LMA about MNs' multicast state while the mobile nodes remain
attached to the same mobile access gateway. Such a continuous updating procedure
would significantly increase the signaling load within the PMIPv6 domain without
a clear benefit. The multicast context is only critical during handovers:
neither after nor before. Indicating the active subscription while the handover
is ongoing guarantees that such information will be up to date and ready to be
transferred to the new MAG where the mobile node has just attached. Therefore, this
solution defines the Subscription Information Acquisition through the
LMA (SIAL) as the procedure to inform the new MAG about the multicast
subscriptions maintained by the entering MN.
      </t>

      <t>
To be able to transfer the multicast subscription information between PMIPv6 entities during a handover, this document extends the PMIPv6
protocol in several ways. First of all, a new mobility option is defined to
carry the multicast context of the current subscription. Furthermore, additional
messages are defined to manage the interchange of the multicast information
among PMIPv6 entities. Finally, some flags are defined to govern the process.
      </t>

    </section>
    <!-- end 3. Overview -->

    <!-- 4. PMIPv6 extensions -->
    <section anchor="sec:pmipv6_extensions"
             title="Proxy Mobile IPv6 Extensions">

      <t>
This section outlines the extensions proposed to the PMIPv6 protocol specified
in <xref target="RFC5213" />.
      </t>

      <!-- 4.1 Active Multicast Subscription mobility option -->
      <section anchor="sec:active_mcast_subscription_mobility_option"
               title="Active Multicast Subscription Mobility Option">

        <!-- 4.1.1 Option application rules -->
        <section anchor="sec:active_mcast_subscription_application_rules"
                 title="Option Application Rules">

          <t>
A new TLV-encoded mobility option, Active Multicast Subscription option is
defined for use with the Proxy Binding Update (PBU) and Proxy Binding
Acknowledgement (PBA) messages exchanged between a local mobility anchor and a
mobility access gateway to transfer the multicast subscription information. This
option is used for exchanging the multicast membership context. This information
is carried by directly using the format defined in the original MLD
specifications. There can be multiple Active Multicast Subscription options
present in the message, one for each active subscription maintained by the
mobile node when the handover is taking place (i.e., one per multicast
membership context).
          </t>

          <t>
This new option is also used for the same purposes by the new Subscription
Response message defined later in this document.
          </t>

          <t>
MLDv2 <xref target="RFC3810" /> is the primary objective for the definition of
the option format. MLDv1 <xref target="RFC2710" /> is also considered for
backward compatibility.
          </t>

        </section >
        <!-- end 4.1.1 Option application rules -->

        <!-- 4.1.2 Option format -->
        <section anchor="sec:active_mcast_subscription_format"
                 title="Option Format">

          <t>
The format of this new option is as follows:
          </t>

          <figure>
            <artwork><![CDATA[
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                   |      Type     |     Length    |    MLD Type   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                  Multicast Membership Context                 +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            ]]></artwork>
          </figure>

          <t>
The alignment requirement of this option is 8n+1.
          </t>

          <t>
Type:
            <list>

              <t>
57, which indicates the Active Multicast Subscription IPv6 option.
              </t>

            </list>

          </t>

          <t>
Length:
            <list>

              <t>
8-bit unsigned integer indicating the length of the option in octets, excluding
the type and length fields. 
              </t>

            </list>
 
         </t>

         <t>
MLD type:
           <list>

             <t>
Field used to identify the IPv6 multicast membership protocol in use, and the
corresponding format of the next Multicast Membership Context information field.
This field maps the type codification used in the original MLD specifications
for the Report message. For MLDv2, the MLD Type value is 143, as specified in
<xref target="RFC3810" />.
              </t>

            </list>

          </t>

          <t>
Multicast Membership Context:
            <list>

              <t>
Multicast subscription information corresponding to a single subscribed
multicast address. For MLDv2, the format of this field follows the Multicast
Address Record format as defined in <xref target="RFC3810" />.
              </t>

            </list>

          </t>

        </section >
        <!-- end 4.1.2 Option format -->

        <!-- 4.1.3 Backward compatibility -->
        <section anchor="sec:backward_compatibility"
                 title="Backward Compatibility with MLDv1">

          <t>
The following values are adopted when MLDv1 is used.
          </t>

          <t>
MLD type:
            <list>

              <t>
For MLDv1, the MLD Type value is 131, as specified in <xref target="RFC2710" />.
              </t>

            </list>

          </t>

          <t>
Multicast Membership Context:
            <list>

              <t>
For MLDv1, the relevant information for multicast context is simply given,
according to <xref target="RFC2710" />, by the multicast address of the
subscribed content.
              </t>

              <t>
In consequence, the Multicast Membership Context is defined as a 4-octet
reserved field and the Multicast Address of the subscribed content as in
<xref target="RFC2710" />, as shown next.
              </t>

            </list>

          </t>

          <figure>
            <artwork><![CDATA[
     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                           Reserved                            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    *                                                               *
    |                                                               |
    *                       Multicast Address                       *
    |                                                               |
    *                                                               *
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            ]]></artwork>
          </figure>

        </section >
        <!-- end 4.1.3 Backward compatibility -->

      </section >
      <!-- end 4.1 Active Multicast Subscription mobility option -->

      <!-- 4.2 Multicast Signaling flag on PBU/PBA message headers -->
      <section anchor="sec:mcast_signaling_flag_PBU_PBA"
               title="Multicast Signaling Flag on PBU/PBA Message Headers">

        <!-- 4.2.1 Flag application rules -->
        <section anchor="sec:mcast_signaling_flag_PBU_PBA_application_rules"
                 title="Flag Application Rules">

          <t>
A new flag S has been added in both the PBU and PBA message headers to
advertise the mobile access gateway and the local mobility anchor capabilities
of processing multicast-related signaling for the MN that caused the
message.
          </t>

          <t>
This flag governs the multicast-related signaling between the LMA and the MAG.
As a general rule, the value of the flag in the PBA message is a copy of
the value received in the PBU message. Specific rules are described in next
subsections.
          </t>

          <!-- 4.2.1.1 Registration process -->
          <section anchor="sec:mcast_signaling_flag_PBU_PBA_reg"
                   title="Registration Process">

            <t>
During handover, the entities involved in this process are the nMAG and the LMA.
These rules also apply for the initial binding registration process.
            </t>

            <t>
              <list style="symbols">

                <t>
PBU message
                  <list style="symbols">

                    <t>
S=0 indicates that the MAG sending the PBU message does not accept
multicast-related signaling for the MN being attached. This can be used to
discriminate PMIPv6 nodes that are not multicast enabled, for backward
compatibility reasons.
                    </t>

                    <t>
S=1 indicates that the MAG sending the PBU message accepts multicast-related
signaling for the MN being attached. Depending on the type of handover (reactive
or proactive) the LMA takes some actions, described later in this document.
                    </t>

                  </list>

                </t>

                <t>
PBA message
                  <list style="symbols">

                    <t>
If S=0 in the corresponding PBU message, the value of the flag in the PBA
message MUST be a copy of the value received in the PBU message (thus S=0),
without any further meaning.
                    </t>

                    <t>
If S=1 in the corresponding PBU message, two subcases are possible:

                      <list style="symbols">

                        <t>
S=1 and Active Multicast Subscription mobility option in the PBA message. When
the MN maintains an active multicast session, if the LMA is able to provide the
multicast subscription information during registration, the PBA message MUST
include the Active Multicast Subscription mobility option. If the LMA is not
able to provide such information during registration, the PBA message MUST
NOT include the Active Multicast Subscription mobility option. This case is
useful to decouple unicast and multicast signaling for an MN being registered at
nMAG. A way for obtaining later active multicast-subscription information is
described later in this document.
                        </t>

                        <t>
S=0 in the PBA message if the MN does not maintain an active multicast
subscription (note that for backward compatibility reasons, an LMA not supporting
multicast related signaling would always send S=0).
                        </t>

                      </list>

                    </t>

                  </list>

                </t>

              </list>

            </t>

          </section >
          <!-- end 4.2.1.1 Registration process -->

          <!-- 4.2.1.2 De-registration process -->
          <section anchor="mcast_signaling_flag_PBU_PBA_dereg"
                   title="De-registration Process">

            <t>
During handover, the entities involved in this process are the pMAG and the LMA.
These rules apply for the binding de-registration process.
            </t>

            <t>
              <list style="symbols">

                <t>
PBU message
                  <list style="symbols">

                    <t>
S=0 indicates that the MN has no active multicast session (note that for
backward compatibility reasons, a pMAG not supporting multicast related signaling
would always send S=0).
                    </t>

                    <t>
S=1 indicates that the MN has an active multicast session, and the multicast
context MUST be transported in the Active Multicast Subscription mobility
option.
                    </t>

                  </list>

                </t>

                <t>
PBA message
                  <list style="symbols">

                    <t>
The value of the flag in the PBA message SHOULD be 0, without any further
meaning (note that for backward compatibility reasons, an LMA not supporting
multicast related signaling would always send S=0).
                    </t>

                  </list>

                </t>

              </list>

            </t>

          </section >
          <!-- end 4.2.1.2 De-registration process -->

        </section >
        <!-- end 4.2.1 Flag application rules -->

        <!-- 4.2.2 New format of conventional PBU/PBA messages -->
        <section anchor="sec:new_format_conventional_PBU_PBA"
                 title="New Format of Conventional PBU/PBA Messages">

          <!-- 4.2.2.1 Proxy Binding Update message -->
          <section anchor="sec:PBU_message"
                   title="Proxy Binding Update Message">

            <t>
As result of the new defined flag, the PBU message format is updated as follows:
            </t>

            <figure>
              <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                  |           Sequence #          |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |A|H|L|K|M|R|P|S|   Reserved    |            Lifetime           |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  .                                                               .
  .                          Mobility Options                     .
  .                                                               .
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              ]]></artwork>
            </figure>

          </section>
          <!-- end 4.2.2.1 Proxy Binding Update message -->

          <!-- 4.2.2.2 Proxy Binding Acknowledgement Message -->
          <section anchor="sec:PBA_message"
                   title="Proxy Binding Acknowledgement Message">

            <t>
As result of the new defined flag, the PBA message format is updated as follows:
            </t>

            <figure>
              <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                  |    Status     |K|R|P|S| Rsrvd |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |           Sequence #          |           Lifetime            |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  .                                                               .
  .                        Mobility Options                       .
  .                                                               .
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              ]]></artwork>
            </figure>

          </section>
          <!-- end 4.2.2.2 Proxy Binding Acknowledgement Message -->

        </section>
        <!-- end 4.2.2 New format of conventional PBU/PBA messages -->

      </section >
      <!-- end 4.2 Multicast Signaling flag on PBU/PBA message headers -->

      <!-- 4.3 Messages for active multicast subscription query -->
      <section anchor="sec:messages_act_mcast_subscription_query"
               title="Messages for Active Multicast Subscription Query">

        <t>
A new pair of messages is defined for querying entities about the active
multicast subscription of the MN when the handover is of reactive type.
        </t>

        <t>
These messages are sent using the Mobility Header as defined in <xref
target="RFC6275" />.
        </t>

        <!-- 4.3.1 Subscription Query message -->
        <section anchor="sec:subscription_query_message"
                 title="Subscription Query Message">

          <!-- 4.3.1.1 Message application rules  -->
          <section anchor="sec:subscription_query_application_rules"
                   title="Message Application Rules">

            <t>
The Subscription Query message (value 22) is sent by the LMA towards the pMAG to
query it about any existing multicast subscriptions of the MN that is being
registered by the nMAG. This message is generated in case the handover is
of reactive type.
            </t>

            <t>
Additionally, this message is sent by the nMAG towards the LMA to query it
about the existing multicast subscriptions of the MN when the LMA acknowledges
the PBU sent by the nMAG but the multicast context is not provided (namely, when
the PBU message has set the flag S to 1, and the PBA message has set the flag S
to 1 but the multicast context is missing).
            </t>

          </section >
          <!-- end 4.3.1.1 Message application rules -->

          <!-- 4.3.1.2 Message format  -->
          <section anchor="sec:subscription_query_message_format"
                   title="Message Format">

            <t>
The Subscription Query message has the following format.
            </t>

            <figure>
              <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                  |  Sequence #   |   Reserved    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  .                                                               .
  .                        Mobility Options                       .
  .                                                               .
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              ]]></artwork>
            </figure>

            <t>
            Sequence Number:
              <list>

                <t>
The Sequence Number field establishes the order of the messages sent in the
Subscription Query / Subscription Response dialogue between the LMA and the MAG
for a certain MN. The initial Sequence Number MUST be determined by the entity
that creates the message (either LMA or MAG, depending on the scenario), which
is responsible for managing this counter.
                </t>

                <t>
This Sequence Number comparison MUST be performed modulo 2**8, i.e., the number 
is a free-running counter represented modulo 256.  A Sequence Number in a received 
Subscription Query message is considered less than or equal to the last received number 
if its value lies in the range of the last received number and the preceding 128 values, inclusive.  
For example, if the last received sequence number was 15, then messages with sequence 
numbers 0 through 15, as well as 143 through 255, would be considered less than or equal.
                </t>


              </list>

            </t>

            <t>
Reserved:
              <list>

                <t>
This field is unused for now. The value MUST be initialized to 0.
                </t>

              </list>

            </t>

            <t>
Mobility options:
              <list>

                <t>
This message carries one or more TLV-encoded mobility options. The valid
mobility options for this message are the following:
                  <list style="symbols">

                    <t>
Mobile Node Identifier option <xref target="RFC4283" /> (mandatory).
                    </t>

                    <t>
Home Network Prefix option <xref target="RFC5213" /> (optional).
                    </t>

                  </list>
There can be one or more instances of the Home Network Prefix option, but only
one instance of the Mobile Node Identifier option.
                </t>

              </list>

            </t>

          </section >
          <!-- 4.3.1.2 end Message format -->

        </section >
        <!-- end 4.3.1 Subscription Query message -->

        <!-- 4.3.2 Subscription Response message -->
        <section anchor="sec:subscription_response_message"
                 title="Subscription Response Message">

          <!-- 4.3.2.1 Message application rules  -->
          <section anchor="sec:subscription_response_application_rules"
                   title="Message Application Rules">

            <t>
The Subscription Response message (value 23) is sent by the pMAG towards the LMA,
or by the LMA towards the nMAG, to answer a previously received Subscription
Query message, as described above.
            </t>

          </section >
          <!-- end 4.3.2.1 Message application rules -->

          <!-- 4.3.2.2 Message format  -->
          <section anchor="sec:subscription_response_message_format"
                   title="Message Format">

            <t>
The Subscription Response message has the following format.
            </t>

            <figure>
              <artwork><![CDATA[
   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                                  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                                  |  Sequence #   |I|  Reserved   |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                                                               |
  .                                                               .
  .                        Mobility Options                       .
  .                                                               .
  |                                                               |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              ]]></artwork>
            </figure>

            <t>
Sequence Number:
              <list>

                <t>
The value of the Sequence Number field in the Subscriber Response message MUST
be a copy of the Sequence Number received in the Subscription Query message.
                </t>

              </list>

            </t>

            <t>
Multicast Information (I):
              <list>

                <t>
The multicast Information flag I specifies whether or not there is multicast subscription
information available for the MN. The meaning is the following:
                  <list>

                    <t>
I=0: there is no multicast subscription information available for the MN
identified by the Mobile Node Identifier option in this message.
                    </t>

                    <t>
I=1: there is multicast subscription information available for the MN identified
by the Mobile Node Identifier option in this message. The multicast subscription
information MUST be carried on one or more instances of the Active Multicast
Subscription option in this message (one instance for each active subscription).
                    </t>

                  </list>

                </t>

              </list>

            </t>

            <t>
Reserved:
              <list>

                <t>
This field is unused for now. The value MUST be initialized to 0.
                </t>

              </list>

            </t>

            <t>
Mobility options:
              <list>

                <t>
This message carries one or more TLV-encoded mobility options. The valid
mobility options for this message are the following:

                  <list style="symbols">

                    <t>
Mobile Node Identifier option  <xref target="RFC4283" /> (mandatory).
                    </t>

                    <t>
Active Multicast Subscription option (mandatory) only when flag I=1; it MUST NOT
be present in any other case.
                    </t>

                    <t>
Home Network Prefix option  <xref target="RFC5213" /> (optional).
                    </t>

                  </list>

There can be one or more instances of the Home Network Prefix option (in all
cases) and the Active Multicast Subscription option (only when I=1), but only
one instance of the Mobile Node Identifier option.
                </t>

              </list>

            </t>

          </section >
          <!-- end 4.3.2.2 Message format -->

        </section >
        <!-- end 4.3.2 Subscription Response message -->

      </section>
      <!-- end 4.3 Messages for active multicast subscription query -->

      <!-- 4.4 New PBA timer in the LMA -->
      <section anchor="sec:new_PBA_timer_LMA"
               title="New PBA Timer in the LMA">

        <t>
A new timer named "PBA timer" is used in the LMA to define the maximum waiting
time before the PBA message is sent to the nMAG in case the multicast
subscription information relative to the MN is not yet available. The aim of
this timer is to prevent potential large delays in the forwarding of unicast
traffic towards the MN being registered at the nMAG. This timer allows
decoupling the unicast signaling from the multicast one in the SIAL solution.
      </t>

      <t>
This timer SHOULD be upper bounded by the constant defined in
<xref target="RFC6275" /> INITIAL_BINDACK_TIMEOUT, whose default value is 1 s. &nbsp;This
constant sets the time when the nMAG will retry the MN registration by sending
again the PBU message. The "PBA timer" has to be set to a value that ensures
that the nMAG does not enter the retry mode. Operational experience is needed on how to set up the PBA timer, and
therefore it is RECOMMENDED to set the "PBA timer" to zero, except for
experimental purposes.

      </t>

      </section>
      <!-- end 4.4 New PBA timer in the LMA -->

    </section>
    <!-- end 4. PMIPv6 extensions -->

    <!-- 5. Handover signaling procedures -->
    <section anchor="sec:handover_signaling_procedures"
             title="Handover Signaling Procedures">

      <t>
As the MN moves from one access gateway to another, the mobility-related
signaling due to the handover event is carried out independently by the pMAG and
the nMAG. That signaling process is not synchronized; thus, two scenarios
need to be considered depending on the order in which the LMA receives
notification of the MN registration and de-registration in the nMAG and the pMAG,
respectively.
      </t>

      <!-- 5.1 Handover of proactive type -->
      <section anchor="sec:proactive_handover"
               title="Handover of Proactive Type">

        <!-- 5.1.1 Rationale -->
        <section anchor="sec:proactive_handover_rationale" title="Rationale">

          <t>
In the proactive case, the MN is firstly de-registered by the pMAG, and later on
it is registered by the nMAG as a consequence of changing the point of attachment.
          </t>

          <t>
Only for those MNs that maintain an active multicast subscription, the pMAG
includes the Active Multicast Subscription mobility option carrying the
multicast context of the MN at that moment as part of the PBU message (with flag
S set to 1).
          </t>

          <t>
The local mobility anchor stores that information in the corresponding binding
cache. If later on the MN attaches to an nMAG, this information is sent (using
the same TLV option) to the nMAG as part of the PBA confirmation of the
registration process (if the PBU message sent by the nMAG has the flag S set to 1). 
On the other hand, if no further registration happens, the multicast
information is removed together with the rest of binding database for that MN.
          </t>

          <t>
After receiving the multicast context, the nMAG can subscribe to the multicast
flow(s) on behalf of the MN in case there is no other MN already receiving it at
the nMAG. The multicast status can also be set in advance for the point-to-point
link towards the MN.
          </t>

          <t>
Note that the SIAL solution described here does not prevent benefiting from
extended support in the mobile node / network that facilitates the proactive
mode operation of the solution, e.g., based on L2 capabilities.
          </t>

        </section>
        <!-- end 5.1.1 Rationale  -->

        <!-- 5.1.2 Message flow description -->
        <section anchor="sec:proactive_handover_message_flow"
                 title="Message Flow Description">

          <t>
<xref target="fig:proactive_handover" /> summarizes this process.
          </t>

          <figure anchor="fig:proactive_handover" title="Proactive Handover">
            <artwork><![CDATA[
       +-----+          +----+           +-----+          +----+
       | MN  |          |pMAG|           | LMA |          |nMAG|
       +-----+          +----+           +-----+          +----+
          |                |                |                |
          |                |==Bi-Dir Tunnel=|                |
          | Multicast Data |                |                |
          |<---------------|                |                |
          |                |                |                |
   1) MN Detached          |                |                |
          |         MN Detached Event       |                |
          |                |                |                |
          |                |Ext'd DeReg PBU |                |
   2)     |                |--------------->|                |
          |                |                |                |
   3)     |                |            Accept PBU           |
          |                |(Multicast Subscription info stored)
          |                |                |                |
          |                |      PBA       |                |
   4)     |                |<---------------|                |
          |                |                |                |
   5) MN Attached          |                |                |
          |                |                |   MN Attached Event
          |                |                |                |
          |                |                |       PBU      |
   6)     |                |                |<---------------|
          |                |                |                |
          |                |                |   Ext'd PBA    |
   7)     |                |                |--------------->|
          |                |                |                |
   8)     |                |                |          Accept PBA,
          |                |                |   Multicast Group join
          |                |                | and P-t-P status setup
          |                |                |                |
          |                |                |==Bi-Dir Tunnel=|
          |                |                |                |
          |                |                | Multicast Data |
          |<-------------------------------------------------|
          |                |                |                |
          |                |                |                |
            ]]></artwork>
          </figure>

          <t>
The message flow is as follows:
            <list style="numbers">

              <t>
A registered MN is receiving a multicast content that has been previously
subscribed to by sending a standard MLD report from the mobile node to the
currently serving mobile access gateway, pMAG. The pMAG keeps the multicast
state of the point-to-point link with the MN.
              </t>

              <t>
The MN initiates a handover process (e.g., because of better radio conditions)
over a radio access controlled by a new MAG. As a consequence, pMAG determines a
detachment event corresponding to this mobile node, and updates the attachment
status of this MN to the local mobility anchor by sending an extended Proxy
Binding Update message, including the Active Multicast Subscription, which
contains the multicast context of the active multicast subscriptions in the
moment of handover.
              </t>

              <t>
The LMA processes the PBU message. Additionally, the LMA stores in the binding
cache the information regarding the ongoing multicast subscription(s) when the
detachment is initiated. This information is kept until a new registration
of the MN is completed by another MAG, or until the binding cache expiration,
according to <xref target="RFC5213" />.
              </t>

              <t>
The local mobility anchor acknowledges to the pMAG the previous PBU message.
              </t>

              <t>
As a result of the handover process, the mobile node attaches to another
mobility access gateway, called nMAG.
              </t>

              <t>
The nMAG triggers a registration process by sending a PBU message (with flag S
set to 1) to the local mobility anchor.
              </t>

              <t>
After the analysis of the PBU message, the LMA sends an extended PBA including
the Active Multicast Subscription option, which contains the multicast context 
of the active subscriptions in the moment of handover.
              </t>

              <t>
The nMAG processes the PBA message following all the standard procedures
described in <xref target="RFC5213" />. Additionally, with the new information
relative to multicast subscription, the nMAG sets up the multicast status of
the point-to-point link between the nMAG and the MN, and joins the content
identified by (S,G) on behalf of the MN in case the nMAG is not receiving
already such content due to a previous subscription ordered by another MN
attached to it. From that instant, the multicast content is served to the MN.
              </t>

            </list>

          </t>

        </section>
        <!-- end 5.1.2 Message flow description  -->

      </section>
      <!-- end 5.1 Handover of proactive type  -->

      <!-- 5.2 Handover of reactive type -->
      <section anchor="sec:reactive_handover"
               title="Handover of Reactive Type">

        <!-- 5.2.1 Rationale -->
        <section anchor="sec:reactive_handover_rationale" title="Rationale">

          <t>
In the reactive case, the LMA receives the mobile node registration from the
nMAG without having previously received the MN de-registration from the pMAG.
          </t>

          <t>
As the nMAG is not aware of any active multicast subscription of the mobile
node, the nMAG starts a conventional registration process, by sending a normal
PBU message (with flag S set to 1) towards the local mobility anchor.
          </t>

          <t>
In the reactive handover case, after MN registration at the nMAG, the local
mobility anchor SHOULD generically query the pMAG to retrieve the multicast
context of the ongoing multicast subscription of the mobile node. However, the
LMA may know in advance if the pMAG supports multicast signaling based on the
value of the flag S received during the MN registration in pMAG. Specifically,
in case the pMAG does not support multicast signaling (e.g., the S flag value 
received from pMAG at the time of registering the mobile node was 0), the LMA
MAY decide not to query pMAG even in the case of receiving an nMAG indication of
supporting multicast signaling.
          </t>

          <t>
Once the multicast subscription information is retrieved from the pMAG, the LMA
encapsulates it in the PBA message by using the TLV option Active Multicast
Subscription and forwards the PBA message to the nMAG. Then, the nMAG can
subscribe the multicast flow on behalf of the MN, if there is no other mobile
node receiving it already at the nMAG. The multicast status can be also set in
advance for the point-to-point link towards the mobile node.
          </t>

        </section>
        <!-- end 5.2.1 Rationale  -->

        <!-- 5.2.1 Message flow description -->
        <section anchor="sec:reactive_handover_message_flow"
                 title="Message Flow Description">

          <t>
<xref target="fig:reactive_handover_a" /> summarizes this process.
          </t>

          <figure anchor="fig:reactive_handover_a" title="Reactive Handover">
            <artwork><![CDATA[
    +-----+          +----+           +-----+          +----+
    | MN  |          |pMAG|           | LMA |          |nMAG|
    +-----+          +----+           +-----+          +----+
       |                |                |                |
       |                |                |         MN Attached Event
       |                |                |                |
       |                |                |       PBU      |
1)     |                |                |<---------------|
       |                |                |                |
       |                |  Subscr Query  |                |
2)     |                |<---------------|                |
       |                |                |                |
       |                |  Subscr Resp   |                |
3)     |                |--------------->|                |
       |                |                |                |
       |                |    (Multicast Subscription      |
       |                |        info forwarding)         |
       |                |                |                |
       |                |                |   Ext'd PBA    |
4)     |                |                |--------------->|
       |                |                |                |
5)     |                |                |           Accept PBA,
       |                |                |      Multicast Group join
       |                |                |     and P-t-P status setup
       |                |                |                |
       |                |                |==Bi-Dir Tunnel=|
       |                |                |                |
       |                |                |   (S,G) Data   |
       |<-------------------------------------------------|
       |                |                |                |
       |                |                |                |
            ]]></artwork>
          </figure>

          <t>
We next take as starting point the situation where an MN is attached to the
pMAG, being multicast enabled and maintaining an active multicast subscription
at this moment. 
          </t>

          <t>
The sequence of messages for the handover of the mobile node is the following
(as depicted in <xref target="fig:reactive_handover_a" />):

            <list style="format %d." counter="contador01">

              <t>
At a certain time, the MN initiates a handover process (e.g., because of better
radio conditions) over a radio access controlled by a new MAG. Then, the nMAG
triggers a registration process by sending a PBU message (with flag S set to 1)
to the local mobility anchor. As it is a reactive case, the pMAG is not aware of
the detachment process.
              </t>

              <t>
Prior to acknowledging the received PBU message, the LMA queries the pMAG about
if there is any active multicast subscription for the MN, by sending a
Subscription Query message.
              </t>

              <t>
The pMAG answers the LMA with a Subscription Response message including the
multicast context of the existing subscriptions.
              </t>

              <t>
After processing the pMAG answer, the LMA acknowledges (with flag S set to 1)
the PBU message, including the multicast subscription information within the
Active Multicast Subscription option. The nMAG then processes the extended
PBA message.
              </t>

              <t>
The nMAG processes the PBA message, and it proceeds to set up the multicast
status of the point-to-point link between the nMAG and the mobile node, and to
join the content identified by (S,G) on behalf of the MN in case the nMAG is not
receiving already such content. The bidirectional tunnel is also set up between
the nMAG and the local mobility anchor if it has not been established before by
another MN connection. At this moment, the multicast content can be served to
the MN. The unicast traffic for the mobile node can be forwarded as well.
              </t>

            </list>

          </t>

        </section>
        <!-- end 5.2.2 Message flow description  -->

        <!-- 5.2.3 Further considerations for the reactive handover signaling -->
        <section anchor="sec:reactive_handover_further_considerations"
                 title="Further Considerations for the Reactive Handover
                        Signaling">

          <t>
A handover event is managed independently by the pMAG and nMAG. It is not a
synchronized process. In a reactive handover, the LMA receives a registration
PBU from nMAG before a de-registration PBU is received from pMAG.
          </t>

          <t>
In the message flows detailed above, it could be the case that the LMA receives
a de-registration PBU from pMAG just after sending the Subscription Query
message, but before receiving the Subscription Response message. That
de-registration PBU message from pMAG carries the multicast subscription
information required to assist the MN in the handover, so such valuable
information SHOULD be kept by the LMA. Furthermore, it is possible that once the
Subscription Query message arrives to pMAG, the pMAG could have already removed
the multicast related information for the MN.
          </t>

          <t>
In order to avoid losing the multicast subscription information sent in the
de-registration PBU message, the local mobility anchor SHOULD store it, and
SHOULD include it in the PBA message towards the nMAG in case the Subscription
Response message from the pMAG does not contain multicast subscription
information for the mobile node.
          </t>

        </section>
        <!-- end 5.2.3 Further considerations for the reactive handover
                 signaling -->

      </section>
      <!-- end 5.2 Handover of reactive type  -->

      <!-- 5.3 Prevention of large delays of the binding acknowledgement for
               unicast traffic -->
      <section anchor="sec:prevention_large_delays"
               title="Prevention of Large Delays of the Binding
                      Acknowledgement for Unicast Traffic">

        <t>
According to the message sequences described for the reactive handover case, in
case the LMA has to request the multicast subscription information from the
pMAG, the binding request sent by the nMAG is maintained on-hold until the local
mobility anchor receives, processes and includes the multicast subscription
information into the extended PBA message. As a consequence, the unicast traffic
may then suffer an extra delay motivated by the multicast-related signaling.
During that time, the unicast traffic with destination the MN being registered
by the nMAG MAY be buffered by the local mobility anchor.
        </t>

        <t>
In order to avoid any potential large delay in the forwarding of unicast traffic
arriving at the LMA towards the MN, a mechanism SHOULD be implemented to
decouple multicast from unicast traffic reception by the MN.
<xref target="fig:prevention_large_delays" /> shows this mechanism.
        </t>

        <figure anchor="fig:prevention_large_delays"
                title="Decoupling of Unicast and Multicast Signaling">
          <artwork><![CDATA[
    +-----+          +----+           +-----+          +----+
    | MN  |          |pMAG|           | LMA |          |nMAG|
    +-----+          +----+           +-----+          +----+
1)     |                |==Bi-Dir Tunnel=|                |
       |  unicast data  |                |                |
       |<-v-v-v-v-v-v-v-|                |                |
       |                |                |                |
       | Multicast Data |                |                |
       |<---------------|                |                |
       |                |                |        MN Attached Event
       |                |                |       PBU      |
2)     |                |                |<---------------|
       |                |  Subscr Query  |                |
3)     |                |<---------------|                |
       |                |                |                |
4)     |                |       <PBA timer starts>        |
       |                |               ///               |
       |                |               ///               |
5)     |                |       <PBA timer expires>       |
       |                |                |                |
       |                |                |   Ext'd PBA    |
       |                |                |--------------->|
       |                |                |                |
       |                |                |          Accept PBA
       |                |                |                |
       |                |                |==Bi-Dir Tunnel=|
       |                |                |                |
       |                |                |  Unicast Data  |
       |<-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-v-|
       |                |                |                |
       |                |                |  Subscr Query  |
6)     |                |                |<---------------|
       |                |  Subscr Resp   |                |
7)     |                |--------------->|                |
       |                |                |                |
       |                |    (Multicast Subscription      |
       |                |        info forwarding)         |
       |                |                |                |
       |                |                |  Subscr Resp   |
8)     |                |                |--------------->|
       |                |                |                |
       |                |                |   Multicast Group join
       |                |                | and P-t-P status setup
       |                | Multicast Data |                |
       |<-------------------------------------------------|
       |                |                |                |
          ]]></artwork>
        </figure>

        <t>
The sequence of messages is the following:
          <list style="numbers">

            <t>
An MN is attached to the pMAG. The MN is a multicast-enabled node, and it is
receiving both unicast and multicast traffic simultaneously.
            </t>

            <t>
Some time later, The MN initiates a handover process (e.g., because of better
radio conditions) over a radio access controlled by a new mobile access gateway.
Then, the nMAG triggers a registration process by sending a PBU message (with
flag S set to 1) to the local mobility anchor. As it is a reactive case, the
pMAG is not aware of the detachment process.
            </t>

            <t>
Prior to acknowledging the received PBU message, the LMA decides to query the
pMAG about if there is any active multicast subscription for the mobile node, by
sending a Subscription Query message. 
            </t>

            <t>
Immediately after sending the Subscription Query message, the LMA starts the
timer "PBA timer", which determines the maximum waiting time before the PBA is
sent to avoid any potential large delay in the forwarding of unicast traffic
towards the MN.
            </t>

            <t>
In case the "PBA timer" expires, the LMA acknowledges the PBU message, by
sending the PBA message with flag S=1, without the multicast context
information. The nMAG then processes the extended PBA message. Such
acknowledgement allows the mobile node to receive the unicast traffic from
that time on. The bidirectional tunnel is also set up between the nMAG and the
LMA if it has not been established before.
            </t>

            <t>
In parallel, the nMAG sends a Subscription Query message to the LMA requesting
the multicast-subscription details yet unknown for the mobile node.
            </t>

            <t>
The pMAG answers the Subscription Query message originally sent by the local
mobility anchor, including the multicast context.
            </t>

            <t>
After processing the pMAG answer, the LMA sends a Subscription Response message
to the nMAG, including the multicast subscription information within the Active
Multicast Subscription option. The nMAG processes the PBA message, and it
proceeds to set up the multicast status of the point-to-point link between the
nMAG and the mobile node, and to join the content identified by (S,G) on behalf
of the MN in case the nMAG is not receiving already such content. The
bidirectional tunnel is also set up between the nMAG and the LMA if it has not
been established before. At this moment, the multicast content can also be
served to the mobile node.
            </t>

          </list>

        </t>

        <t>
The "PBA timer" in the LMA determines if the signaling flow follows 
<xref target="fig:reactive_handover_a" /> or <xref target="fig:prevention_large_delays" /> 
in a reactive handover. A value of 0 for the "PBA timer" guarantees that 
the unicast traffic does not suffer any delay (according to the <xref target="fig:prevention_large_delays" /> 
signaling flow), because the PBA is sent immediately after the LMA receives the PBU from the 
nMAG. A small non-zero "PBA timer" value MAY be used to reduce the signaling load 
in the LMA and MAGs (as shown in the signaling flow of <xref target="fig:reactive_handover_a" /> if the Subscription 
Response message from the pMAG is received at the LMA before the "PBA timer" expires), but this 
has to be carefully balanced against added delay to the unicast traffic.
        </t>


      </section>
      <!-- end 5.3 Prevention of large delays of the binding acknowledgement for
                   unicast traffic -->

    </section>
    <!-- end 5. Handover signaling procedures -->

    <!-- 6. IPv4 support -->
    <section anchor="sec:v4_support" title="IPv4 Support">

      <t>
IPv4-based mobile nodes (being either IPv4/IPv6 dual-stack or IPv4-only
enabled) can be supported in a PMIPv6 domain according to
<xref target="RFC5844"/>. When referring to multicast membership protocols and
procedures, this means that IGMP functionality has to be also supported between
the PMIPv6 entities, as documented in <xref target="RFC6224"/>, to allow the
mobile access gateway requesting multicast contents to the mobility anchor on
behalf of the mobile nodes attached to it. 
      </t>

      <!-- 6.1 Active Multicast Subscription for IPv4 -->
      <section anchor="sec:option_v4"
               title="Active Multicast Subscription for IPv4">

        <t>
The Active Multicast Subscription option defined in
<xref target="sec:active_mcast_subscription_mobility_option" />, which
transports the multicast membership context of the mobile node during handover,
should be compatible with IGMP-based formats. Specifically, the option format is
defined for IPv4-based MNs as follows:
        </t>

        <figure>
          <artwork><![CDATA[
    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
                   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                   |      Type     |     Length    |   IGMP Type   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                  Multicast Membership Context                 +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

          ]]></artwork>
        </figure>

        <t>
IGMPv3 is the primary objective for the definition of the option format. IGMPv1
and IGMPv2 are also considered for backward compatibility. The alignment
requirement of this option is 4n+1.
        </t>

        <t>
Type:
          <list>

            <t>
56, which indicates the Active Multicast Subscription IPv4 option.
            </t>

          </list>

        </t>

        <t>
Length:
          <list>

            <t>
8-bit unsigned integer indicating the length of the option in octets, excluding
the type and length fields. 
            </t>

          </list>

        </t>

        <t>
IGMP type:
          <list>

            <t>
Field used to identify the IPv4 multicast membership protocol in use, and the 
corresponding format of the next Multicast Membership Context information field.
This field maps the type codification used in the original IGMP specifications
for the Report message.
            </t>

            <t>
0x12: Use of IGMPv1 multicast membership protocol.
            </t>

            <t>
0x16: Use of IGMPv2 multicast membership protocol.
            </t>

	    <t>
0x22: Use of IGMPv3 multicast membership protocol.
            </t>

          </list>

        </t>

        <t>
Multicast Membership Context:
          <list>

            <t>
Multicast subscription information corresponding to a single subscribed
multicast address. Depending on the IGMP version being used by the mobile node,
the format of the Multicast Membership Context could follow the following formats:

              <list style="symbols">

                <t>
For IGMPv1, the Group Address format as defined in <xref target="RFC1112" />.
                </t>

                <t>
For IGMPv2, the Group Address format as defined in <xref target="RFC2236" />.
                </t>

                <t>
For IGMPv3, the Group Record format as defined in <xref target="RFC3376" />.
                </t>

              </list>

            </t>

          </list>

        </t>

      </section>
      <!-- end 6.1 Active Multicast Subscription for IPv4 -->

      <!-- 6.2 Signaling procedures for IPv4 support -->
      <section anchor="sec:signaling_v4"
               title="Signaling Procedures for IPv4 Support">

        <t>
Generic signaling procedures for the support of IPv4 in PMIPv6 domains have been
already specified in <xref target="RFC5844" />. In order to prevent errors while
signaling the ongoing multicast subscription for a mobile node during the
handover process, the following extensions have to be considered in SIAL.
        </t>

        <t>
          <list style="symbols">

            <t>
If the registration/de-registration process in a handover is for an IPv6-only
MN, and the type of the received Active Multicast Subscription option indicates
IPv4, then the multicast membership context received MUST be silently discarded.
            </t>

            <t>
If the registration/de-registration process in a handover is for an IPv4-only
MN, and the type of the received Active Multicast Subscription option indicates
IPv6, then the multicast membership context received MUST be silently discarded.
            </t>

            <t>
If the registration/de-registration process in a handover is for a dual stack
MN, the received Active Multicast Subscription option (or options) MUST be
accepted independently of the type indication.
            </t>

          </list>

        </t>

      </section>
      <!-- end 6.2 Signaling procedures for IPv4 support -->

      <!-- 6.3 Binding Cache extensions for IPv4 support -->
      <section anchor="sec:bce_v4"
               title="Binding Cache Extensions for IPv4 Support">

        <t>
Additionally, since the multicast membership information is temporally stored in
the mobility anchor under some circumstances (e.g., proactive handover), the
binding cache entry for an IPv4-based multicast-enabled MN should be extended
for storing the IGMP-based context formats mentioned above, including the IGMP
version indicator.
        </t>

      </section>
      <!-- end 6.3 Binding Cache extensions for IPv4 support -->

    </section>
    <!-- end 6. IPv4 support -->

    <!-- 7. Co-existence with PMIPv6 multicast architectural evolutions -->
    <section anchor="sec:coexistence_PMIPv6_arch_evolutions"
             title="Coexistence with PMIPv6 Multicast Architectural
                    Evolutions">

      <t>
Throughout this document, the base solution for multicast support in Proxy
Mobile IPv6, described in <xref target="RFC6224" />, has been implicitly
considered, i.e., both unicast and multicast traffic addressing a mobile node is
delivered via the standard PMIPv6 bidirectional tunnel between LMA and MAG.
While here all multicast traffic is assumed to be delivered via the local
mobility anchor, the SIAL approach described in this document can be also
applied to other solutions in which the multicast content is served from other
entities in the PMIPv6 domain, as described in <xref target="RFC7028" /> to
solve the tunnel convergence problem.
      </t>

      <t>
In this case, the transfer of the multicast context would also pass through the
local mobility anchor, as described here. However, the nMAG subscribes to
the multicast content through the node in charge of distributing multicast
according to the adopted solution for multicast distribution in the PMIPv6
domain.
      </t>

    </section>
    <!-- end 7. Co-existence with PMIPv6 multicast architectural evolutions -->

    <!-- 8. Security Considerations -->
    <section anchor="Security" title="Security Considerations">

      <t>
This proposal does not pose any additional security threats to those already
identified in <xref target="RFC5213" />. All the security considerations in
<xref target="RFC5213" /> are directly applicable to this protocol. The
signaling messages, Proxy Binding Update, and Proxy Binding Acknowledgement 
(extended with the new options defined in this document), the Subscription Query
Message, and the Subscription Response Message exchanged between the mobile
access gateway and the local mobility anchor, MUST be protected using end-to-end
security association(s) offering integrity and data origin authentication.
      </t>

      <t>
The mobile access gateway and the local mobility anchor MUST implement the IPsec
security mechanism mandated by Proxy Mobile IPv6 <xref target="RFC5213" /> to
secure the signaling described in this document. In the following, we describe
the Security Policy Database (SPD) and Security Association Database (SAD)
entries necessary to protect the new signaling introduced by this specification
(Subscription Query Message and Subscription Response Message). We use the same
format used by <xref target="RFC4877" />. The SPD and SAD entries are only
example configurations. A particular mobile access gateway implementation and a
local mobility anchor home agent implementation could configure different SPD
and SAD entries as long as they provide the required security of the signaling
messages.
      </t>

      <t>
For the examples described in this document, a mobile access gateway with
address "mag_address_1", and a local mobility anchor with address
"lma_address_1" are assumed.
      </t>

      <t>
        <list>

          <t>
mobile access gateway SPD-S: <vspace />
&nbsp; - IF local_address = mag_address_1 &amp;<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;remote_address = lma_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp;proto = MH &amp; (remote_mh_type = Subscription Query
|<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;local_mh_type = Subscription Response | <vspace />
&nbsp; &nbsp; &nbsp; &nbsp;remote_mh_type = Multicast Activity Indication Ack.|
<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;local_mh_type = Multicast Activity Indication)
<vspace />
&nbsp; &nbsp; Then use SA1 (OUT) and SA2 (IN)
          </t>

        </list>

        <list>

         <t>
mobile access gateway SAD: <vspace />
&nbsp; - SA1(OUT, spi_a, lma_address_1, ESP, TRANSPORT):<vspace />
&nbsp; &nbsp; &nbsp; &nbsp; local_address = mag_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; remote_address = lma_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; proto = MH <vspace />
&nbsp; - SA2(IN, spi_b, mag_address_1, ESP, TRANSPORT):<vspace />
&nbsp; &nbsp; &nbsp; &nbsp; local_address = lma_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; remote_address = mag_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; proto = MH
          </t>

        </list>

        <list>

         <t>
local mobility anchor SPD-S: <vspace />
&nbsp; - IF local_address = lma_address_1 &amp;<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;remote_address =mag_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp;proto = MH &amp; (remote_mh_type = Subscription
Response |<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;local_mh_type = Subscription Query | <vspace />
&nbsp; &nbsp; &nbsp; &nbsp;remote_mh_type = Multicast Activity Indication |
<vspace />
&nbsp; &nbsp; &nbsp; &nbsp;local_mh_type = Multicast Activity Indication Ack.) <vspace />
&nbsp; &nbsp; Then use SA2 (OUT) and SA1 (IN)
          </t>

        </list>

        <list>

          <t>
local mobility anchor SAD: <vspace />
&nbsp; - SA2(OUT, spi_b, mag_address_1, ESP, TRANSPORT):<vspace />
&nbsp; &nbsp; &nbsp; &nbsp; local_address = lma_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; remote_address = mag_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; proto = MH<vspace />
&nbsp; - SA1(IN, spi_a, lma_address_1, ESP, TRANSPORT):<vspace />
&nbsp; &nbsp; &nbsp; &nbsp; local_address = mag_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; remote_address = lma_address_1 &amp; <vspace />
&nbsp; &nbsp; &nbsp; &nbsp; proto = MH
          </t>

        </list>

      </t>

      <t>
While in the base solution the LMA has learned of the
subscribed multicast groups per MAG, in this specification the LMA is
aware (during a handover process) of the multicast groups to which
an MN visiting the PMIP domain is subscribed.
      </t>

    </section>
    <!-- end 8. Security Considerations -->

    <!-- 9. IANA Considerations -->
    <section anchor="IANA" title="IANA Considerations">

      <t>
This document establishes new assignments to the IANA mobility parameters
registry.

        <list style="symbols">

          <t>
Mobility Header types: the Subscription Query (22) and Subscription Response
(23) mobility header types. The Type value for these Headers has been
assigned from the "Mobility Header Types - for the MH Type field in the Mobility
Header" registry defined in &lt;http://www.iana.org/assignments/mobility-parameters&gt;.
          </t>

          <t>
Mobility options: the Active Multicast Subscription mobility option for both
IPv4 (56) and IPv6 (57) modes of operation. The Type value for these
Mobility options has been assigned from the "Mobility Options" registry defined
in &lt;http://www.iana.org/assignments/mobility-parameters&gt;.
          </t>

          <t>
Flags: this document reserves a new multicast Signaling flag (S). This
flag has been reserved as value 0x0020 in the "Binding Update Flags" registry
and value 0x04 in the "Binding Acknowledgment
Flags" registry. These registries appear on
&lt;http://www.iana.org/assignments/mobility-parameters&gt;.
          </t>

        </list>

      </t>

    </section>
    <!-- end 9. IANA Considerations -->

    <!-- 10. Contributors -->
    <section anchor="contributors" title="Contributors">

      <t>
Dirk Von Hugo (Telekom Innovation Laboratories, Dirk.von&nbhy;Hugo@telekom.de)
extensively contributed to this document.
      </t>

    </section>
    <!-- end 10. Contributors -->

    <!-- 11. Acknowledgements -->
    <section anchor="Acknowledgments" title="Acknowledgments">

      <t>
The authors would like to thank (in alphabetical order) Hitoshi Asaeda, Sergio
Figueiredo, Georgios Karagiannis, Marco Liebsch, Behcet Sarikaya, Thomas C. Schmidt, and Stig Venaas for their valuable comments and discussions on the
MULTIMOB mailing list. The authors are also grateful with Hitoshi Asaeda, Akbar 
Rahman, Behcet Sarikaya, and Stig Venaas for their reviews of this document.
      </t>

      <t>
The research of Carlos J. Bernardos leading to these results has received
funding from the European Community's Seventh Framework Programme
(FP7-ICT-2009-5) under grant agreement n. 258053 (MEDIEVAL project), being also
partially supported by the Ministry of Science and Innovation (MICINN) of Spain
under the QUARTET project (TIN2009- 13992-C02-01).
      </t>

      <t>
The research of Ignacio Soto has also received funding from the Spanish MICINN
through the I-MOVING project (TEC2010-18907).
      </t>

    </section>
    <!-- end 11. Acknowledgements -->

  </middle>

  <back>

    <references title="Normative References">

      &rfc1112;
      &rfc2119;
      &rfc2236;
      &rfc2710;
      &rfc3376;
      &rfc4877;
      &rfc5213;
      &rfc5844;
      &rfc6275;
      &rfc3810;
      &rfc4283;

    </references>

    <references title="Informative References">

      &rfc5949;
      &rfc6224;
      &rfc6636;
      &rfc7028;
  
      <reference anchor="Papagiannaki">
        <front>
          <title>Measurement and Analysis of Single-Hop Delay on an IP Backbone Network</title>
          <author initials="K." surname="Papagiannaki" fullname="Konstantina Papagiannaki" />
          <author initials="S." surname="Moon" fullname="Sue Moon" />
          <author initials="C." surname="Fraliegh" fullname="Chuck Fraliegh" />
          <author initials="P." surname="Thiran" fullname="Patrick Thiran" />
          <author initials="C." surname="Diot" fullname="Christophe Diot" />

          <date month="August" year="2003"/>
        </front>
        <seriesInfo name="IEEE Journal on Selected Areas in Communications,
vol. 21," value="no. 6"/>
      </reference>

     <reference anchor="Verizon" target="http://opennetwork.verizonwireless.com/pdfs/VZW_LTE_White_Paper_12-10.pdf">
        <front>
          <title>LTE: The Future of Mobile Broadband Technology</title>
          <author><organization>Verizon</organization></author>
          <date year="2010" />
        </front>
        <seriesInfo name="Verizon" value="White Paper"/>
      </reference>


     <reference anchor="Y.1541">
        <front>
          <title>Network performance objectives for IP-based services</title>
          <author><organization>ITU-T</organization></author>
          <date month="December" year="2011"/>
        </front>
        <seriesInfo name="ITU-T Recommendation" value="Y.1541"/>
      </reference>

    </references>

    <!-- A. Performance -->
    <section anchor="performance"
             title="Performance Comparison with Base Solution">

    <t>
This informative annex briefly analyzes and compares the performance improvement
provided by the fast handover extensions specified in this document with the
base multicast solution defined in <xref target="RFC6224" />. The main aim is to
determine the potential delay reduction in the acquisition of the multicast
subscription information by the nMAG during the MN handover. To do that, the
analysis focuses on the delay additional to the unicast handover due to the 
multicast operation in both cases.
    </t>

    <t>
Different delay components have to be taken into account for this comparison.
Since the interaction between the actors during the handover process (MN, pMAG,
nMAG, LMA) is different for each of the solutions, different sources of
delay can be expected for each of them.
    </t>

      <!-- A.1 Delay Base Solution -->
      <section anchor="delay_base_solution"
               title="Delay Characterization of the Base Solution">

        <t>
The base solution relies on the standard MLD procedures to obtain the multicast
subscription information directly from the MN. Once the nMAG completes the
configuration  of point-to-point link to the attaching MN (the configuration of
this link as downstream interface of an MLD proxy instance can run in parallel),
it immediately sends an MLD General Query towards the MN for learning
of any active multicast subscription by the MN. When the MN receives the MLD
Query, the MN provides information about the active memberships it maintains in
the form of an MLD Report message. After successful transmission of this
information via the wireless point of attachment to nMAG, the corresponding MLD
proxy instance at the nMAG sets up the multicast status of the downstream
interface. According to this process, the delay is originated on the MAG-MN
communication.
        </t>

        <t>
The delay components to be considered for the base solution are the following:

          <list style="symbols">

            <t>
D_bh, which is the unidirectional (one-way) delay encountered in the
transmission path between the nMAG and the wireless point of attachment.
            </t>

            <t>
D_radio, which is the unidirectional delay due to the transfer of MLD control
messages over the radio channel (user plane) between the wireless point of
attachment and the MN, for the MLD Query and Report messages.
            </t>

            <t>
D_mld, which is the delay incurred by the MN to answer the MLD Query.
            </t>

          </list>

        </t>

        <t>
The total observed delay can be then formulated as:
        </t>

        <t>
D_base = 2 x (D_bh + D_radio) + D_mld
        </t>

      </section>
      <!-- end A.1 Delay Base Solution -->

      <!-- A.2 Delay SIAL -->
      <section anchor="delay_SIAL"
               title="Delay Characterization of SIAL">

        <t>
As described in this document, it is possible to distinguish two scenarios
depending on the order in which the LMA receives the notifications of the MN
registration and de-registration in the nMAG and the pMAG, respectively.
        </t>

        <t>
In the proactive case, the MN is firstly de-registered by the pMAG, and later on
it is registered by the nMAG. As specified in this document, the LMA stores the
multicast subscription information, which is provided to the nMAG during the
MN registration process. Since the registration process necessarily happens
before the MLD Query and Report process described in the base solution, the
proactive case is inherently faster than the base solution. In fact, since the
multicast subscription information is acquired properly during the registration
process, the delay incurred is null.
        </t>

        <t>
In the reactive case, the LMA receives the MN registration from the nMAG without
having previously received the MN de-registration from the pMAG. In case the MN
maintains an active subscription, the LMA queries the pMAG to retrieve the
multicast subscription information, which is forwarded to the nMAG. According to
this process, the delay is originated on the MAG-LMA communication.
        </t>

        <t>
The delay components to be considered for the base solution are the following:

          <list style="symbols">

            <t>
D_net, which is the unidirectional delay found in the network path between the
LMA and the MAG.
            </t>

          </list>

        </t>

        <t>
The total observed delay can be then formulated as:
        </t>

        <t>
D_sial = 2 x D_net
        </t>

      </section>
      <!-- end 6.2 Delay SIAL -->

      <!-- 6.3. Performance Comparison -->
      <section anchor="performance_comparison" title="Performance Comparison">

        <t>
The performance of the base solution is highly dependent on the radio technology
used by the MN to attach to the PMIPv6 domain. Different radio technologies have
distinct properties in terms of radio framing, radio access contention or
collision avoidance, channel reliability, etc.
        </t>

        <t>
New radio access technologies, such as the one specified in new Long Term
Evolution (LTE) standards intend to reduce the latency in order to provide high-speed communications. Even though, typical one-way latencies in the LTE radio
access will stay around 15 ms <xref target="Verizon" />.
        </t>

        <t>
The backhaul delay characterization becomes problematic. In a real network, there
are several solutions for the backhaul connection in terms of network topology
(ring, star, point-to-point, etc.) and technology (optical fiber, microwave
transmission, xDSL-based accesses, etc.), all of them having distinct properties
in terms of performance, reliability, and delay. These solutions commonly coexist
in a real mobile network, in such a way that an MN changing the point of
attachment can pass smoothly from one solution to another. A value of D_bh = 5 ms
can be established as the typical value for the backhaul latency in modern networks.
        </t>

        <t>
Finally, the MLD induced delay is intrinsic to the MLD protocol specification. A
host receiving an MLD Query message waits a random time in the range (0,
Maximum Response Delay) to send the MLD Report message. The default value of the Maximum Response Delay (configurable through
the Query Response Interval in MLD) is 10 s in <xref target="RFC2710"/> and <xref target="RFC3810" />.
In <xref target="RFC6636"/> the effect of tuning the value of the Query Response
Interval is analyzed and 5 s is the smallest value recommended (best
case). Then, on average, a potential delay of 5 s or 2.5 s, default and
best case respectively, can be expected.


        </t>

        <t>
   As we have seen, D_base is, on average, greater than 2.5 s with the
   best case of the values of Query Response Interval in MLD that are
   recommended in
<xref target="RFC6636" />. That means that the handover delay of the base
solution is on the order of seconds, while in the solution presented in this
specification it is on the order of milliseconds (as shown below). To
improve the performance of the base solution, we could further reduce the value
of Query Response Interval, but the implications of doing so would need to be
carefully analyzed. Even if we assume that Query Response Interval is 0 s,
D_base would be around 2 x (5 ms + 15 ms) = 40 ms for last-generation
systems. Note that this calculation does not take into account the necessary
time to re-establish the data plane after the handover to make possible the MLD
Query reception. The expected delay will get much worse for older generation
systems (e.g., 3G-based radio systems can suffer radio delays in the order of
hundreds of ms).
        </t>

        <t>
For the SIAL case, the delay in the MAG-LMA communication will be derived from
the network diameter (i.e., the number of hops found between the MAG and the LMA
in the PMIPv6 domain). This is largely influenced by the internal network
planning. An administrative domain can typically have in the order of five hops
from access to the interconnection gateway providing connectivity to other
networks. Even if the LMA plays a central role topologically in the PMIPv6
domain, such number of hops seems reasonable in a common nation-wide network. 
Each hop in the path between MAG and LMA will add a certain delay, which can be
estimated to be around 1 ms in the best case <xref target="Papagiannaki" />  and
3 ms in the worst case <xref target="Y.1541"/>. With this in mind, a total delay
D_sial of around 2 x 5 x 3 ms = 30 ms can be expected in the worst case.
        </t>

        <t>
Then, in conclusion, in a typical deployment, it can be stated that the SIAL
proposal, even for the worst-case consideration, will perform better than the
best-case situation for the base solution, which consists of the last-generation
radio technology, LTE. For any other radio technology, the base solution will
show even larger deviations from the delay achievable with the SIAL solution.
        </t>

      </section>
      <!-- end A.3 Performance Comparison -->

    </section>
    <!-- end A. Performance -->

  </back>

</rfc>
