<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.23 (Ruby 3.3.6) -->
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-gurel-moq-track-switching-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="moq-track-switching">Track Switching in Media over QUIC Transport</title>
    <seriesInfo name="Internet-Draft" value="draft-gurel-moq-track-switching-01"/>
    <author initials="Z." surname="Gurel" fullname="Zafer Gurel">
      <organization>Ozyegin University</organization>
      <address>
        <email>zafer.gurel@ozu.edu.tr</email>
      </address>
    </author>
    <author initials="A." surname="Begen" fullname="Ali Begen">
      <organization>Networked Media</organization>
      <address>
        <email>ali.begen@networked.media</email>
      </address>
    </author>
    <date/>
    <area>Applications and Real-Time</area>
    <workgroup>MOQ</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 37?>

<t>This document defines a solution for switching tracks in media.
More particularly, the solution provides a seamless switching that
ensures there is no overlapping or gap between the download and/or
transmission of two tracks when they are alternatives to each other.</t>
    </abstract>
  </front>
  <middle>
    <?line 44?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document outlines a solution for switching tracks in media
delivery over Media Over QUIC Transport (MOQT) <xref target="MoQTransport"/>. Switching tracks
is necessary for a variety of reasons, such as changing the
quality, the language of the media, or the type of the media (e.g., switching from a video to
an audio track). The solution described in this document ensures
that there is no overlapping or gap between the download and/or
transmission of two tracks when they are alternatives to each other.</t>
      <section anchor="terms-and-definitions">
        <name>Terms and Definitions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

<dl>
          <dt>Client:</dt>
          <dd>
            <t>The party initiating a MoQ transport session.</t>
          </dd>
          <dt>Server:</dt>
          <dd>
            <t>The party accepting an incoming transport session.</t>
          </dd>
          <dt>Endpoint:</dt>
          <dd>
            <t>A Client or Server.</t>
          </dd>
          <dt>Producer:</dt>
          <dd>
            <t>An endpoint sending media over the network.</t>
          </dd>
          <dt>Consumer:</dt>
          <dd>
            <t>An endpoint receiving media over the network.</t>
          </dd>
          <dt>Transport session:</dt>
          <dd>
            <t>A raw QUIC connection or a WebTransport session.</t>
          </dd>
          <dt>Congestion:</dt>
          <dd>
            <t>Packet loss and queuing caused by degraded or overloaded networks.</t>
          </dd>
          <dt>Group:</dt>
          <dd>
            <t>A temporal sequence of objects. A group represents a join point in a
track.</t>
          </dd>
          <dt>Object:</dt>
          <dd>
            <t>An object is an addressable unit whose payload is a sequence of
bytes.</t>
          </dd>
          <dt>Track:</dt>
          <dd>
            <t>An encoded bitstream. Tracks contain a sequential series of one or
more groups and are the subscribable entity with MOQT.</t>
          </dd>
        </dl>
      </section>
      <section anchor="notational-conventions">
        <name>Notational Conventions</name>
        <t>This document uses the conventions detailed in (<xref section="1.3" sectionFormat="comma" target="RFC9000"/>)
when describing the binary encoding.</t>
        <t>As a quick reference, the following list provides a non-normative summary
of the parts of RFC9000 field syntax that are used in this specification.</t>
        <dl>
          <dt>x (L):</dt>
          <dd>
            <t>Indicates that x is L bits long</t>
          </dd>
          <dt>x (i):</dt>
          <dd>
            <t>Indicates that x holds an integer value using the variable-length
encoding as described in (<xref section="16" sectionFormat="comma" target="RFC9000"/>)</t>
          </dd>
          <dt>x (..):</dt>
          <dd>
            <t>Indicates that x can be any length including zero bits long.  Values
 in this format always end on a byte boundary.</t>
          </dd>
          <dt>x (L) ...:</dt>
          <dd>
            <t>Indicates that x is repeated zero or more times and that each instance
has a length of L</t>
          </dd>
        </dl>
        <t>This document extends the RFC9000 syntax and with the additional field types:</t>
        <dl>
          <dt>x (b):</dt>
          <dd>
            <t>Indicates that x consists of a variable length integer encoding as
described in (<xref section="16" sectionFormat="comma" target="RFC9000"/>), followed by that many bytes
of binary data</t>
          </dd>
        </dl>
        <t>To reduce unnecessary use of bandwidth, variable length integers <bcp14>SHOULD</bcp14>
be encoded using the least number of bytes possible to represent the
required value.</t>
      </section>
    </section>
    <section anchor="switching-tracks">
      <name>Switching Tracks</name>
      <t>In MOQT communications, the publisher announces the availability
of multiple encodings of a media content in different tracks,
which are alternatives of each other and indicated so in the catalog <xref target="CommonCatalogFormat"/>.
The subscriber subscribes to one of the tracks from an altGroup
in the catalog. During the session, the subscriber may switch from
a currently consumed track to any other alternate track from the
catalog due to, for example, changes in available bandwidth. To do this,
the subscriber can subscribe to a new track and unsubscribe from the old track.
Such an action is done by sending a SUBSCRIBE message to the relay.
An example of the different tracks indicated in the catalog is shown below.</t>
      <figure anchor="moq-transport-catalog-snippet">
        <name>An example of the different tracks.</name>
        <artwork><![CDATA[
{
    "tracks":[
        {
          "name": "hd",
          "selectionParams": {
            "width": 1920, "height": 1080,
            "bitrate": 5000000, "framerate": 30
          },
          "altGroup": 1
        },
        {
          "name": "md",
          "selectionParams": {
            "width": 720, "height": 640,
            "bitrate": 3000000, "framerate": 30
          },
          "altGroup": 1
        },
        {
          "name": "sd",
          "selectionParams": {
            "width": 192, "height": 144,
            "bitrate": 500000, "framerate": 30
          },
          "altGroup": 1
        },
        {
          "name": "audio",
          "selectionParams": {
            "codec": "opus", "samplerate": 48000,
            "channelConfig": "2", "bitrate": 32000
          }
        }
      }
    ]
}
]]></artwork>
      </figure>
      <section anchor="the-problem-and-solution-approaches">
        <name>The Problem and Solution Approaches</name>
        <t>Relays do not have access/visibility to the catalog. Therefore, they are unaware when two tracks are alternates. An example of the existing SUBSCRIBE message format is shown below.</t>
        <figure anchor="moq-transport-subscribe-format">
          <name>MOQT SUBSCRIBE message.</name>
          <artwork><![CDATA[
SUBSCRIBE Message {
  Type (i) = 0x3,
  Length (i),
  Subscribe ID (i),
  Track Alias (i),
  Track Namespace (tuple),
  Track Name Length (i),
  Track Name (..),
  Subscriber Priority (8),
  Group Order (8),
  Filter Type (i),
  [StartGroup (i),
   StartObject (i)],
  [EndGroup (i)],
  Number of Parameters (i),
  Subscribe Parameters (..) ...
}
]]></artwork>
        </figure>
        <t>Existing SUBSCRIBE message that the subscriber transmits to the relay only contains information of the current track and does not indicate that the client is switching to a new track for the same media content. Therefore, when receiving a SUBSCRIBE message from the subscriber for switching to the new track, the relay may download and transmit both the new track and the old track of the same media content, which can create a bitrate spike and in turn can aggravate an already congested link. Additionally, the player/client application on the subscriber will have to process (e.g., parse and decode) the same media content in overlapping times, which is a waste of computational power.</t>
        <section anchor="solution-1-alttrackgroup">
          <name>Solution 1 (altTrackGroup)</name>
          <t>A new parameter altTrackGroup can be added to every SUBSCRIBE message. altTrackGroup is the identifier for a group of alternative tracks within the scope of a track namespace. The value of the altTrackGroup identifier may be the same as the altGroup identifier used in the catalog or a different one. An example of a SUBSCRIBE message that includes the identifier altTrackGroup is shown below.</t>
          <figure anchor="moq-transport-subscribe-format-atg">
            <name>MOQT SUBSCRIBE message with altTrackGroup.</name>
            <artwork><![CDATA[
SUBSCRIBE Message {
  Type (i) = 0x3,
  Length (i),
  Subscribe ID (i),
  Track Alias (i),
  Track Namespace (tuple),
  Track Name Length (i),
  Track Name (..),
  Subscriber Priority (8),
  Group Order (8),
  Filter Type (i),
  [StartGroup (i),
   StartObject (i)],
  [EndGroup (i)],
  [altTrackGroup (i)],
  Number of Parameters (i),
  Subscribe Parameters (..) ...
}
]]></artwork>
          </figure>
        </section>
        <section anchor="solution-2-switch-track-alias">
          <name>Solution 2 (Switch Track Alias)</name>
          <t>The SUBSCRIBE message can contain an identifier Switch Track Alias such that the Switch Track Alias = Track Alias of the active subscription. This way, this ID in the SUBSCRIBE message can indicate to the relay that this switching request is for an alternative track of the same media content of the current track and assists the relay in seamless switching.  An example of a SUBSCRIBE message that includes the identifier Switch Track Alias is shown below.</t>
          <figure anchor="moq-transport-subscribe-format-sta">
            <name>MOQT SUBSCRIBE message with Switch Track Alias.</name>
            <artwork><![CDATA[
SUBSCRIBE Message {
  Type (i) = 0x3,
  Length (i),
  Subscribe ID (i),
  Track Alias (i),
  Track Namespace (tuple),
  Track Name Length (i),
  Track Name (..),
  Subscriber Priority (8),
  Group Order (8),
  Filter Type (i),
  [StartGroup (i),
   StartObject (i)],
  [EndGroup (i)],
  [altTrackGroup (i)],
  [Switch Track Alias (i)],
  Number of Parameters (i),
  Subscribe Parameters (..) ...
}
]]></artwork>
          </figure>
        </section>
      </section>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>TODO: Expand this section.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>TODO: Expand this section.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="MoQTransport">
          <front>
            <title>Media over QUIC Transport</title>
            <author fullname="Luke Curley" initials="L." surname="Curley">
              <organization>Discord</organization>
            </author>
            <author fullname="Kirill Pugin" initials="K." surname="Pugin">
              <organization>Meta</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <author fullname="Ian Swett" initials="I." surname="Swett">
              <organization>Google</organization>
            </author>
            <date day="12" month="February" year="2025"/>
            <abstract>
              <t>   This document defines the core behavior for Media over QUIC Transport
   (MOQT), a media transport protocol designed to operate over QUIC and
   WebTransport, which have similar functionality.  MOQT allows a
   producer of media to publish data and have it consumed via
   subscription by a multiplicity of endpoints.  It supports
   intermediate content distribution networks and is designed for high
   scale and low latency distribution.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-moq-transport-08"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="CommonCatalogFormat">
          <front>
            <title>Common Catalog Format for moq-transport</title>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Will Law" initials="W." surname="Law">
              <organization>Akamai</organization>
            </author>
            <author fullname="Mo Zanaty" initials="M." surname="Zanaty">
              <organization>Cisco</organization>
            </author>
            <date day="8" month="July" year="2024"/>
            <abstract>
              <t>   This specification defines a Common Catalog specification for
   streaming formats implementing the MOQ Transport Protocol
   [MoQTransport].  Media over QUIC Transport (MOQT) defines a publish/
   subscribe based unified media delivery protocol for delivering media
   for streaming and interactive applications over QUIC.  The catalog
   describes the content made available by a publisher, including
   information necessary for subscribers to select, subscribe and
   initialize tracks.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-moq-catalogformat-01"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
