Aller au contenu principal

11. Considérations IANA

Cette spécification établit plusieurs registres pour le protocole HTTP/2. Cette section décrit ces registres et leurs politiques d'enregistrement associées.

11.1. Enregistrement des Chaînes d'Identification HTTP/2​

Ce document crée deux enregistrements pour l'identification de HTTP/2: les chaînes "h2" et "h2c".

La chaîne "h2" identifie HTTP/2 lorsqu'il est utilisé sur TLS, comme décrit dans la Section 3.3.

La chaîne "h2c" identifie HTTP/2 lorsqu'il est utilisé sur TCP en texte clair, comme décrit dans la Section 3.2.

Ces chaînes d'identification sont enregistrées dans le registre "Application-Layer Protocol Negotiation (ALPN) Protocol IDs" (établi par [TLS-ALPN]).

11.2. Registre des Types de Trame​

Ce document établit un registre pour les codes de types de trame HTTP/2. Le registre "HTTP/2 Frame Type" gère un espace de 8 bits. Le registre "HTTP/2 Frame Type" fonctionne selon la politique "Expert Review" [RFC8126], avec des valeurs réservées.

Les enregistrements pour les nouvelles entrées nécessitent les informations suivantes:

  • Frame Type: Un nom ou une étiquette pour le type de trame.
  • Code: Le code de 8 bits attribué au type de trame.
  • Specification: Une référence à une spécification qui inclut une description du type de trame.

Les entrées enregistrées par ce document se trouvent dans le Tableau 1.

Tableau 1: Types de Trame​

Frame TypeCodeSectionReference
DATA0x00Section 6.1RFC 9113
HEADERS0x01Section 6.2RFC 9113
PRIORITY0x02Section 6.3RFC 9113
RST_STREAM0x03Section 6.4RFC 9113
SETTINGS0x04Section 6.5RFC 9113
PUSH_PROMISE0x05Section 6.6RFC 9113
PING0x06Section 6.7RFC 9113
GOAWAY0x07Section 6.8RFC 9113
WINDOW_UPDATE0x08Section 6.9RFC 9113
CONTINUATION0x09Section 6.10RFC 9113

11.3. Registre des Paramètres​

Ce document établit un registre pour les paramètres HTTP/2. Le registre "HTTP/2 Settings" gère un espace de 16 bits. Le registre "HTTP/2 Settings" fonctionne selon la politique "Expert Review" [RFC8126], avec des valeurs réservées.

Les enregistrements pour les nouvelles entrées nécessitent les informations suivantes:

  • Name: Un nom symbolique pour le paramètre. Spécifier un nom de paramètre est optionnel.
  • Code: Le code de 16 bits attribué au paramètre.
  • Initial Value: La valeur initiale du paramètre.
  • Specification: Une référence optionnelle à une spécification qui inclut une description du paramètre.

Les entrées enregistrées par ce document se trouvent dans le Tableau 2.

Tableau 2: Paramètres​

NameCodeInitial ValueSectionReference
SETTINGS_HEADER_TABLE_SIZE0x014096Section 6.5.2RFC 9113
SETTINGS_ENABLE_PUSH0x021Section 6.5.2RFC 9113
SETTINGS_MAX_CONCURRENT_STREAMS0x03(infinite)Section 6.5.2RFC 9113
SETTINGS_INITIAL_WINDOW_SIZE0x0465535Section 6.5.2RFC 9113
SETTINGS_MAX_FRAME_SIZE0x0516384Section 6.5.2RFC 9113
SETTINGS_MAX_HEADER_LIST_SIZE0x06(infinite)Section 6.5.2RFC 9113

11.4. Registre des Codes d'Erreur​

Ce document établit un registre pour les codes d'erreur HTTP/2. Le registre "HTTP/2 Error Code" gère un espace de 32 bits. Le registre "HTTP/2 Error Code" fonctionne selon la politique "Expert Review" [RFC8126], avec des valeurs réservées.

Les enregistrements pour les nouvelles entrées nécessitent les informations suivantes:

  • Name: Le nom du code d'erreur. Spécifier un nom de code d'erreur est optionnel.
  • Code: Le code d'erreur de 32 bits attribué.
  • Description: Une brève description de la condition d'erreur.
  • Specification: Une référence optionnelle à une spécification qui définit le code d'erreur.

Les entrées enregistrées par ce document se trouvent dans le Tableau 3.

Tableau 3: Codes d'Erreur​

NameCodeDescriptionSectionReference
NO_ERROR0x00Graceful shutdownSection 7RFC 9113
PROTOCOL_ERROR0x01Protocol error detectedSection 7RFC 9113
INTERNAL_ERROR0x02Implementation faultSection 7RFC 9113
FLOW_CONTROL_ERROR0x03Flow control limits exceededSection 7RFC 9113
SETTINGS_TIMEOUT0x04Settings not acknowledgedSection 7RFC 9113
STREAM_CLOSED0x05Frame received for closed streamSection 7RFC 9113
FRAME_SIZE_ERROR0x06Frame size incorrectSection 7RFC 9113
REFUSED_STREAM0x07Stream not processedSection 7RFC 9113
CANCEL0x08Stream cancelledSection 7RFC 9113
COMPRESSION_ERROR0x09Compression state not updatedSection 7RFC 9113
CONNECT_ERROR0x0aTCP connection error for CONNECT methodSection 7RFC 9113
ENHANCE_YOUR_CALM0x0bProcessing capacity exceededSection 7RFC 9113
INADEQUATE_SECURITY0x0cNegotiated TLS parameters not acceptableSection 7RFC 9113
HTTP_1_1_REQUIRED0x0dUse HTTP/1.1 for the requestSection 7RFC 9113

11.5. Enregistrement du Champ d'En-tête HTTP2-Settings​

Cette section enregistre le champ d'en-tête HTTP2-Settings dans le "Hypertext Transfer Protocol (HTTP) Field Name Registry" [HTTP].

  • Header field name: HTTP2-Settings
  • Applicable protocol: http
  • Status: standard
  • Author/Change controller: IETF
  • Specification document(s): Section 3.2.1 de RFC 9113

11.6. Enregistrement de la Méthode PRI​

Cette section enregistre la méthode PRI dans le "HTTP Method Registry" [HTTP].

  • Method Name: PRI
  • Safe: No
  • Idempotent: No
  • Specification document(s): Section 3.4 de RFC 9113

11.7. Le Code de Statut HTTP 421 (Misdirected Request)​

Cette section enregistre le code de statut HTTP 421 (Misdirected Request) dans le registre "HTTP Status Codes" [HTTP].

  • Status Code: 421
  • Short Description: Misdirected Request
  • Specification document(s): Section 9.1.2 de RFC 9113

11.8. Le Token d'Upgrade h2c​

Cette section enregistre le token d'upgrade "h2c" dans le "HTTP Upgrade Token Registry" [HTTP].

  • Name: h2c
  • Description: Hypertext Transfer Protocol version 2 (HTTP/2)
  • Expected Version Tokens: None
  • References: Section 3.2 de RFC 9113

Chapitre 11 terminé!

Références​

  • [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, Juin 2017.
  • [HTTP] Fielding, R., Ed., Nottingham, M., Ed., and J. Reschke, Ed., "HTTP Semantics", STD 97, RFC 9110, Juin 2022.
  • [TLS-ALPN] Friedl, S., Popov, A., Langley, A., and E. Stephan, "Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension", RFC 7301, Juillet 2014.