<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.2.8 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

<rfc ipr="trust200902" docName="draft-bishop-httpbis-altsvc-quic-01" category="std">

  <front>
    <title abbrev="ALTSVC in HTTP/QUIC">ALTSVC Frame in HTTP/QUIC</title>

    <author initials="M." surname="Bishop" fullname="Mike Bishop">
      <organization>Akamai</organization>
      <address>
        <email>mbishop@evequefou.be</email>
      </address>
    </author>

    <date />

    <area>Applications</area>
    <workgroup>HTTPbis</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t><xref target="RFC7838"></xref> defines the ALTSVC frame for HTTP/2 <xref target="RFC7540"></xref>. This frame is equally
applicable to HTTP/QUIC (<xref target="I-D.ietf-quic-http"></xref>), but needs to be separately
registered. This document describes the ALTSVC frame for HTTP/QUIC.</t>



    </abstract>


  </front>

  <middle>


<section anchor="problems" title="Introduction">

<t><xref target="RFC7838"></xref> defines HTTP Alternative Services, which allow an origin’s resources
to be authoritatively available at a separate network location, possibly
accessed with a different protocol configuration.  It defines two mechanisms
for transporting such information, an HTTP response header and an HTTP/2 frame
type.</t>

<t><xref target="I-D.ietf-quic-http"></xref> describes the required updates for HTTP/2 frames to be used
with HTTP/QUIC.  Only a few modifications are required for the ALTSVC frame. No
modifications are required for the “Alt-Svc” header field.</t>

</section>
<section anchor="the-altsvc-httpquic-frame" title="The ALTSVC HTTP/QUIC Frame">

<t>The ALTSVC HTTP/QUIC frame advertises the availability of an alternative service
to an HTTP/QUIC client.</t>

<t>An ALTSVC frame from a server to a client on stream 1 (not 0, as in HTTP/2)
indicates that the conveyed alternative service is associated with the origin
contained in the Origin field of the frame.</t>

<t>An ALTSVC frame from a server to a client on a stream other than stream 1
indicates that the conveyed alternative service is associated with the origin of
that stream.</t>

<t>The layout and semantics of the frame are identical to those of the
HTTP/2 frame defined in <xref target="RFC7838"></xref>.  The ALTSVC frame type is 0xa (decimal 10),
as in HTTP/2.</t>

</section>
<section anchor="security" title="Security Considerations">

<t>This document introduces no new security considerations beyond those discussed
in <xref target="RFC7838"></xref> and <xref target="I-D.ietf-quic-http"></xref>.</t>

</section>
<section anchor="iana" title="IANA Considerations">

<t>This document registers the ALTSVC frame type in the “HTTP/QUIC Frame Type”
registry (<xref target="I-D.ietf-quic-http"></xref>).</t>

<t><list style="hanging">
  <t hangText='Frame Type:'>
  ALTSVC</t>
  <t hangText='Code:'>
  0xa</t>
  <t hangText='Specification:'>
  This document</t>
</list></t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference  anchor="RFC7838" target='https://www.rfc-editor.org/info/rfc7838'>
<front>
<title>HTTP Alternative Services</title>
<author initials='M.' surname='Nottingham' fullname='M. Nottingham'><organization /></author>
<author initials='P.' surname='McManus' fullname='P. McManus'><organization /></author>
<author initials='J.' surname='Reschke' fullname='J. Reschke'><organization /></author>
<date year='2016' month='April' />
<abstract><t>This document specifies &quot;Alternative Services&quot; for HTTP, which allow an origin's resources to be authoritatively available at a separate network location, possibly accessed with a different protocol configuration.</t></abstract>
</front>
<seriesInfo name='RFC' value='7838'/>
<seriesInfo name='DOI' value='10.17487/RFC7838'/>
</reference>



<reference anchor="I-D.ietf-quic-http">
<front>
<title>Hypertext Transfer Protocol (HTTP) over QUIC</title>

<author initials='M' surname='Bishop' fullname='Mike Bishop'>
    <organization />
</author>

<date month='October' day='14' year='2017' />

<abstract><t>The QUIC transport protocol has several features that are desirable in a transport for HTTP, such as stream multiplexing, per-stream flow control, and low-latency connection establishment.  This document describes a mapping of HTTP semantics over QUIC.  This document also identifies HTTP/2 features that are subsumed by QUIC, and describes how HTTP/2 extensions can be ported to QUIC.</t></abstract>

</front>

<seriesInfo name='Internet-Draft' value='draft-ietf-quic-http-07' />
<format type='TXT'
        target='http://www.ietf.org/internet-drafts/draft-ietf-quic-http-07.txt' />
</reference>




    </references>

    <references title='Informative References'>





<reference  anchor="RFC7540" target='https://www.rfc-editor.org/info/rfc7540'>
<front>
<title>Hypertext Transfer Protocol Version 2 (HTTP/2)</title>
<author initials='M.' surname='Belshe' fullname='M. Belshe'><organization /></author>
<author initials='R.' surname='Peon' fullname='R. Peon'><organization /></author>
<author initials='M.' surname='Thomson' fullname='M. Thomson' role='editor'><organization /></author>
<date year='2015' month='May' />
<abstract><t>This specification describes an optimized expression of the semantics of the Hypertext Transfer Protocol (HTTP), referred to as HTTP version 2 (HTTP/2).  HTTP/2 enables a more efficient use of network resources and a reduced perception of latency by introducing header field compression and allowing multiple concurrent exchanges on the same connection.  It also introduces unsolicited push of representations from servers to clients.</t><t>This specification is an alternative to, but does not obsolete, the HTTP/1.1 message syntax.  HTTP's existing semantics remain unchanged.</t></abstract>
</front>
<seriesInfo name='RFC' value='7540'/>
<seriesInfo name='DOI' value='10.17487/RFC7540'/>
</reference>




    </references>


<section anchor="acknowledgements" title="Acknowledgements">

<t>A substantial portion of Mike’s work on this draft was supported by Microsoft
during his employment there.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAOsO4loAA61W32/kNBB+918x6j3Qk5plW0Ac+8TS40Ql7g7owktVISee
7FpN7Jzt7BKq/u9842S7e72CQKJSpaw9Hs/3YyYpikIlmxpe0PLH1fVvl/Qm
6JbJOvphtfrp859/vbpUuiwDbx8jPtozvnI4sCATdJ2K0saN74pNSh0eC92k
uK2KD72tivm5Mjoh8v71cvX9g6rwY+3DsKCYjFK2CwtKoY/pYj7/Zn6hdGCN
O7uusQi13kW18+FuHXzfLXIFuEHd8YBVs6Arlzg4TsVrKUSpmLQzv+vGO1w5
cFSdXdBN8tUZRR9S4DriaWjl4VYp3aeNDwtFVOCfADIu6O2MvsuA8tKI8629
4+NVH9ba2T9zhSj3Trfa5g3GQ7OgdqTkW97yh55r389KVsr50OLIluXGX95c
fv3qi1fyeFW8nllO9UiZ0LgANa5+Gv7Vl3NsKFUUBekypqArYL6ZMt2S4do6
jpQ2vJetzsIi06jeBd1MiW5ntNrYOAXgAYXqphmUHrkvG6bkD5rT6c2nZd6+
PKOyT+SYTZTwkilypwNURqrAaxshEJvpMvimb9klVBqrYMt/rFVunY1gW2tM
AwJfiODBm74S4mn6u3/RBY962/jwHBuSjJaNGCWzSdcctrZiOGG3sdWGANvv
SDuoatfWfRYpcPR9QIgaMY0+sSmfbwbSW6icKdKJ9CNk8JDErdT40bxn1PkY
bSm0VkgX2dDOJlxJxtY1mAEXKB4G9Q1V3tV23Yd8dAZbpIOiO08tVxuYLrZR
CUdQ38UOprZuTbEHjkfHyMV67FeB0qGLmDasDQesm/0e3JApV2noGEw/J/AT
pQJcYqEn9Z20dTx2Vs61d0EPqCpDPWhJ9N4JeVTzjloPBvY9Tmj7Q+6M7okt
ZvTOq39x5gRCF9fb6mSPt7bcmJlYZ3VIeXB1HnxKPbs3+lGbLYPkODEwSW8b
mwbytXCpj7wVR2+Jb/TRxKSqsdAadSzdE7sH32YLBVwj5OkplmBwtDjrls7p
1PlEc6gaHwfxxUuMCCNs5MpgRCkPHtryAEKeKUq6XMfoK4szkxHlzGh7haNJ
w21GrpD193l9ZFCgytooxn+EofdAPFKITvoA7f8FgTJVTjOmn43KNnrwmFJi
/YgB7ZKt4keAspesYdnRjZSPfkfPjDHq2OBTS2aSHmcNrL16OsekqaTY+R+a
Tg1XtkXm8/nLM3UsYnbmNVd9ED9dwtcoI0wOv38Rp50HAXI8QO00B0Gb85g7
O9qHCnvHSUoePICPgIyNVS9jSB2Xn5l5rvtzdVfLd8tPK7Pa6U+q2g/8Z8b6
SMdorJMn/UcrbJ5Mr4sw/M2rBsUcohdq/2Wi1KU3+TeYVuq6A9X7ISGrH1U4
vk5KXd0JsmV15/yuYbNm2YywNSZpKR8RyUKtPF29mCp/AODFkKe7FxSSVL45
aAc5Y99JLFxRDgitgo8enyMGgmA4Syy3XeOHTJL0AFroLyXq6huFCQAA

-->

</rfc>

