HTTP Alternative Services
RFC 7838

Document Type RFC - Proposed Standard (April 2016; No errata)
Last updated 2016-04-07
Replaces draft-nottingham-httpbis-alt-svc
Stream IETF
Formats plain text pdf html bibtex
Stream WG state Submitted to IESG for Publication Jun 2014 Nov 2015
Document shepherd Mike Bishop
Shepherd write-up Show (last changed 2015-12-29)
IESG IESG state RFC 7838 (Proposed Standard)
Consensus Boilerplate Yes
Telechat date
Responsible AD Barry Leiba
Send notices to "Mike Bishop" <michael.bishop@microsoft.com>
IANA IANA review state Version Changed - Review Needed
IANA action state RFC-Ed-Ack
Internet Engineering Task Force (IETF)                     M. Nottingham
Request for Comments: 7838                                        Akamai
Category: Standards Track                                     P. McManus
ISSN: 2070-1721                                                  Mozilla
                                                              J. Reschke
                                                              greenbytes
                                                              April 2016

                       HTTP Alternative Services

Abstract

   This document specifies "Alternative Services" for HTTP, which allow
   an origin's resources to be authoritatively available at a separate
   network location, possibly accessed with a different protocol
   configuration.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in Section 2 of RFC 5741.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc7838.

Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Nottingham, et al.           Standards Track                    [Page 1]
RFC 7838                HTTP Alternative Services             April 2016

Table of Contents

   1. Introduction ....................................................2
      1.1. Notational Conventions .....................................3
   2. Alternative Services Concepts ...................................3
      2.1. Host Authentication ........................................5
      2.2. Alternative Service Caching ................................6
      2.3. Requiring Server Name Indication ...........................6
      2.4. Using Alternative Services .................................6
   3. The Alt-Svc HTTP Header Field ...................................8
      3.1. Caching Alt-Svc Header Field Values .......................10
   4. The ALTSVC HTTP/2 Frame ........................................11
   5. The Alt-Used HTTP Header Field .................................13
   6. The 421 (Misdirected Request) HTTP Status Code .................13
   7. IANA Considerations ............................................13
      7.1. Header Field Registrations ................................13
      7.2. The ALTSVC HTTP/2 Frame Type ..............................14
      7.3. Alt-Svc Parameter Registry ................................14
           7.3.1. Procedure ..........................................14
           7.3.2. Registrations ......................................15
   8. Internationalization Considerations ............................15
   9. Security Considerations ........................................15
      9.1. Changing Ports ............................................15
      9.2. Changing Hosts ............................................15
      9.3. Changing Protocols ........................................16
      9.4. Tracking Clients Using Alternative Services ...............17
      9.5. Confusion regarding Request Scheme ........................17
   10. References ....................................................18
      10.1. Normative References .....................................18
      10.2. Informative References ...................................19
   Acknowledgements ..................................................19
   Authors' Addresses ................................................20

1.  Introduction

   HTTP [RFC7230] conflates the identification of resources with their
   location.  In other words, "http://" and "https://" URIs are used to
   both name and find things to interact with.

   In some cases, it is desirable to separate identification and
   location in HTTP; keeping the same identifier for a resource, but
   interacting with it at a different location on the network.
Show full document text