Skip to content

Temporary IANA Registry

Christian Huitema edited this page Dec 14, 2020 · 46 revisions

QUIC implementers have started experimenting with QUIC extensions, and have a need for codepoints to do interop testing. To avoid collisions, please list your experimental codepoints below. This page will be deleted once the official IANA registry is operational.

QUIC Transport Parameters

Value Parameter Name Specification
0x00 original_destination_connection_id quic-transport
0x01 max_idle_timeout quic-transport
0x02 stateless_reset_token quic-transport
0x03 max_udp_payload_size quic-transport
0x04 initial_max_data quic-transport
0x05 initial_max_stream_data_bidi_local quic-transport
0x06 initial_max_stream_data_bidi_remote quic-transport
0x07 initial_max_stream_data_uni quic-transport
0x08 initial_max_streams_bidi quic-transport
0x09 initial_max_streams_uni quic-transport
0x0a ack_delay_exponent quic-transport
0x0b max_ack_delay quic-transport
0x0c disable_active_migration quic-transport
0x0d preferred_address quic-transport
0x0e active_connection_id_limit quic-transport
0x0f initial_connection_id quic-transport
0x10 retry_connection_id quic-transport
0x1B reserved for GREASE quic-transport
0x20 max_datagram_frame_size quic-datagram
0x3A reserved for GREASE quic-transport
0x40 max_sending_uniflow_id quic-multipath
0x41 enable_multipath multipath-quic
0x59 reserved for GREASE quic-transport
0x1057 loss_bits quic-lossbits
0x2ab2 grease_quic_bit quic-bit-grease
0x173E discard Discard upon receipt
0x3127 Google_internal Google-internal undocumented transport parameter
0x3128 Google_internal Google-internal undocumented transport parameter
0x3129 Google_internal Google-internal undocumented transport parameter
0x312A Google_internal Google-internal undocumented transport parameter
0x312B Google_internal Google-internal undocumented transport parameter
0x312C Google_internal Google-internal undocumented transport parameter
0x312D Google_internal Google-internal undocumented transport parameter
0x312E Google_internal Google-internal undocumented transport parameter
0x312F Google_internal Google-internal undocumented transport parameter
0x3130 Google_internal Google-internal undocumented transport parameter
0x3131 Google_internal Google-internal undocumented transport parameter
0x3132 Google_internal Google-internal undocumented transport parameter
0x3133 Google_internal Google-internal undocumented transport parameter
0x3134 Google_internal Google-internal undocumented transport parameter
0x465A Google_internal Google-internal undocumented transport parameter
0x4751 Google_internal Google-internal undocumented transport parameter
0x4752 Google_internal Google-internal undocumented transport parameter
0x7157 enable_time_stamp (v0) quic-ts
0x7158 enable_time_stamp (v1) quic-ts
0x73DB version_negotiation quic-version-negotiation
0xBAAD disable_1rtt_encryption quic-disable-encryption
0xDE1A min_ack_delay quic-delayed-ack-00
0xFF02DE1A min_ack_delay quic-delayed-ack-02

QUIC Frame Types

Type Value Frame Type Name Specification
0x00 PADDING quic-transport
0x01 PING quic-transport
0x02 - 0x03 ACK quic-transport
0x04 RESET_STREAM quic-transport
0x05 STOP_SENDING quic-transport
0x06 CRYPTO quic-transport
0x07 NEW_TOKEN quic-transport
0x08 - 0x0f STREAM quic-transport
0x10 MAX_DATA quic-transport
0x11 MAX_STREAM_DATA quic-transport
0x12 - 0x13 MAX_STREAMS quic-transport
0x14 DATA_BLOCKED quic-transport
0x15 STREAM_DATA_BLOCKED quic-transport
0x16 - 0x17 STREAMS_BLOCKED quic-transport
0x18 NEW_CONNECTION_ID quic-transport
0x19 RETIRE_CONNECTION_ID quic-transport
0x1a PATH_CHALLENGE quic-transport
0x1b PATH_RESPONSE quic-transport
0x1c - 0x1d CONNECTION_CLOSE quic-transport
0x1e HANDSHAKE_DONE quic-transport
0x22 - 0x23 ACK_MP multipath-quic
0x24 QOE_CONTROL_SIGNALS multipath-quic
0x2a PATH_STATUS multipath-quic
0x30 - 0x31 DATAGRAM quic-datagram
0x40 MP_NEW_CONNECTION_ID quic-multipath
0x41 MP_RETIRE_CONNECTION_ID quic-multipath
0x42 - 0x43 MP_ACK quic-multipath
0x44 ADD_ADDRESS quic-multipath
0x45 REMOVE_ADDRESS quic-multipath
0x46 UNIFLOWS quic-multipath
0xAF ACK_FREQUENCY quic-delayed-ack
0x02F5 TIME_STAMP quic-ts

QUIC Transport Error Codes

Value Error Description Specification
0x0 NO_ERROR No error quic-transport
0x1 INTERNAL_ERROR Implementation error quic-transport
0x2 SERVER_BUSY Server currently busy quic-transport
0x3 FLOW_CONTROL_ERROR Flow control error quic-transport
0x4 STREAM_LIMIT_ERROR Too many streams opened quic-transport
0x5 STREAM_STATE_ERROR Frame received in invalid stream state quic-transport
0x6 FINAL_SIZE_ERROR Change to final size quic-transport
0x7 FRAME_ENCODING_ERROR Frame encoding error quic-transport
0x8 TRANSPORT_PARAMETER_ERROR Error in transport parameters quic-transport
0x9 CONNECTION_ID_LIMIT_ERROR Too many connection IDs received quic-transport
0xA PROTOCOL_VIOLATION Generic protocol violation quic-transport
0xB INVALID_TOKEN Invalid Token Received quic-transport
0xC APPLICATION_ERROR Application error quic-transport
0xD CRYPTO_BUFFER_EXCEEDED CRYPTO data buffer overflowed quic-transport
0xE KEY_UPDATE_ERROR Invalid packet protection update quic-transport
0xF AEAD_LIMIT_REACHED Excessive use of packet protection keys quic-transport
0x100-0x1ff CRYPTO_ERROR TLS error quic-tls
0x53F8 VERSION_NEGOTIATION_ERROR Version Negotiation Error quic-version-negotiation

HTTP/3 Frame Types

Frame Type Value Specification
DATA 0x0 quic-http
HEADERS 0x1 quic-http
Reserved 0x2 quic-http
CANCEL_PUSH 0x3 quic-http
SETTINGS 0x4 quic-http
PUSH_PROMISE 0x5 quic-http
Reserved 0x6 quic-http
GOAWAY 0x7 quic-http
Reserved 0x8 quic-http
Reserved 0x9 quic-http
MAX_PUSH_ID 0xD quic-http
DUPLICATE_PUSH 0xE quic-http
PRIORITY_UPDATE 0xF http-priorities
PRIORITY_UPDATE 0x10 http-priorities
PRIORITY_UPDATE 0xF0700 http-priorities
PRIORITY_UPDATE 0xF0701 http-priorities
PRIORITY_UPDATE 0x1CCB8BBF1F0700 http-priorities
PRIORITY_UPDATE 0x1CCB8BBF1F0701 http-priorities

HTTP/3 Settings Parameters

Setting Name Value Specification
QPACK_MAX_TABLE_CAPACITY 0x1 quic-qpack
Reserved 0x2 N/A
Reserved 0x3 N/A
Reserved 0x4 N/A
Reserved 0x5 N/A
MAX_HEADER_LIST_SIZE 0x6 quic-http
QPACK_BLOCKED_STREAMS 0x7 quic-qpack
H3_DATAGRAM 0x276 h3-datagram
ENABLE_WEBTRANSPORT 0x2b603742 h3-webtransport

HTTP/3 Error Codes

Name Value Description Specification
H3_NO_ERROR 0x0100 No error quic-http
H3_GENERAL_PROTOCOL_ERROR 0x0101 General protocol error quic-http
H3_INTERNAL_ERROR 0x0102 Internal error quic-http
H3_STREAM_CREATION_ERROR 0x0103 Stream creation error quic-http
H3_CLOSED_CRITICAL_STREAM 0x0104 Critical stream was closed quic-http
H3_FRAME_UNEXPECTED 0x0105 Frame not permitted in the current state quic-http
H3_FRAME_ERROR 0x0106 Frame violated layout or size rules quic-http
H3_EXCESSIVE_LOAD 0x0107 Peer generating excessive load quic-http
H3_ID_ERROR 0x0108 An identifier was used incorrectly quic-http
H3_SETTINGS_ERROR 0x0109 SETTINGS frame contained invalid values quic-http
H3_MISSING_SETTINGS 0x010A No SETTINGS frame received quic-http
H3_REQUEST_REJECTED 0x010B Request not processed quic-http
H3_REQUEST_CANCELLED 0x010C Data no longer needed quic-http
H3_REQUEST_INCOMPLETE 0x010D Stream terminated early quic-http
H3_CONNECT_ERROR 0x010F TCP reset or error on CONNECT request quic-http
H3_VERSION_FALLBACK 0x0110 Retry over HTTP/1.1 quic-http
QPACK_DECOMPRESSION_FAILED 0x200 Decompression of a header block failed quic-qpack
QPACK_ENCODER_STREAM_ERROR 0x201 Error on the encoder stream quic-qpack
QPACK_DECODER_STREAM_ERROR 0x202 Error on the decoder stream quic-qpack

HTTP/3 Stream Types

Stream Type Value Specification
Control Stream 0x00 quic-http
Push Stream 0x01 quic-http
QPACK Encoder Stream 0x02 quic-qpack
QPACK Decoder Stream 0x03 quic-qpack
Clone this wiki locally