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 Type | Code | Section | Reference |
|---|---|---|---|
| DATA | 0x00 | Section 6.1 | RFC 9113 |
| HEADERS | 0x01 | Section 6.2 | RFC 9113 |
| PRIORITY | 0x02 | Section 6.3 | RFC 9113 |
| RST_STREAM | 0x03 | Section 6.4 | RFC 9113 |
| SETTINGS | 0x04 | Section 6.5 | RFC 9113 |
| PUSH_PROMISE | 0x05 | Section 6.6 | RFC 9113 |
| PING | 0x06 | Section 6.7 | RFC 9113 |
| GOAWAY | 0x07 | Section 6.8 | RFC 9113 |
| WINDOW_UPDATE | 0x08 | Section 6.9 | RFC 9113 |
| CONTINUATION | 0x09 | Section 6.10 | RFC 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
| Name | Code | Initial Value | Section | Reference |
|---|---|---|---|---|
| SETTINGS_HEADER_TABLE_SIZE | 0x01 | 4096 | Section 6.5.2 | RFC 9113 |
| SETTINGS_ENABLE_PUSH | 0x02 | 1 | Section 6.5.2 | RFC 9113 |
| SETTINGS_MAX_CONCURRENT_STREAMS | 0x03 | (infinite) | Section 6.5.2 | RFC 9113 |
| SETTINGS_INITIAL_WINDOW_SIZE | 0x04 | 65535 | Section 6.5.2 | RFC 9113 |
| SETTINGS_MAX_FRAME_SIZE | 0x05 | 16384 | Section 6.5.2 | RFC 9113 |
| SETTINGS_MAX_HEADER_LIST_SIZE | 0x06 | (infinite) | Section 6.5.2 | RFC 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
| Name | Code | Description | Section | Reference |
|---|---|---|---|---|
| NO_ERROR | 0x00 | Graceful shutdown | Section 7 | RFC 9113 |
| PROTOCOL_ERROR | 0x01 | Protocol error detected | Section 7 | RFC 9113 |
| INTERNAL_ERROR | 0x02 | Implementation fault | Section 7 | RFC 9113 |
| FLOW_CONTROL_ERROR | 0x03 | Flow control limits exceeded | Section 7 | RFC 9113 |
| SETTINGS_TIMEOUT | 0x04 | Settings not acknowledged | Section 7 | RFC 9113 |
| STREAM_CLOSED | 0x05 | Frame received for closed stream | Section 7 | RFC 9113 |
| FRAME_SIZE_ERROR | 0x06 | Frame size incorrect | Section 7 | RFC 9113 |
| REFUSED_STREAM | 0x07 | Stream not processed | Section 7 | RFC 9113 |
| CANCEL | 0x08 | Stream cancelled | Section 7 | RFC 9113 |
| COMPRESSION_ERROR | 0x09 | Compression state not updated | Section 7 | RFC 9113 |
| CONNECT_ERROR | 0x0a | TCP connection error for CONNECT method | Section 7 | RFC 9113 |
| ENHANCE_YOUR_CALM | 0x0b | Processing capacity exceeded | Section 7 | RFC 9113 |
| INADEQUATE_SECURITY | 0x0c | Negotiated TLS parameters not acceptable | Section 7 | RFC 9113 |
| HTTP_1_1_REQUIRED | 0x0d | Use HTTP/1.1 for the request | Section 7 | RFC 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.