Internet Assigned Numbers Authority

Transmission Control Protocol (TCP) Parameters

Last Updated
2025-03-26
Available Formats

XML

HTML

Plain text

Registries included below

TCP Option Kind Numbers

Registration Procedure(s)
Standards Action or IESG Approval
Reference
[RFC2780]
Note
The Transmission Control Protocol (TCP) has provision for optional header fields identified by an option kind field. Options 0 and 1 are exactly one octet which is their kind field. All other options have their one octet kind field, followed by a one octet length field, followed by length-2 octets of option data. [*] It is only appropriate to use these values in explicitly- configured experiments; they MUST NOT be shipped as defaults in implementations. See [RFC3692] for details. [**] These values have been deployed in the Internet without proper IANA assignment. At some point, these numbers may be officially allocated for some new purpose. It is therefore strongly recommended that implementers migrate to mechanisms with IANA-assigned values to avoid potential issues with their systems or products at a later point. [***] This value has been deployed on the Internet in ways that are not compatible with the documented use in this IANA allocation. 
Note
Values 16-18 were assigned before October 1994 (see [RFC1700]), and values 20-26 were assigned between Feb 9, 1999 and May 10, 2000. No further documentation is available. 
Available Formats

CSV
KindLengthMeaningReference
0-End of Option List[RFC9293]
1-No-Operation[RFC9293]
24Maximum Segment Size[RFC9293]
33Window Scale[RFC7323]
42SACK Permitted[RFC2018]
5NSACK[RFC2018]
66Echo (obsoleted by option 8)[RFC1072][RFC6247]
76Echo Reply (obsoleted by option 8)[RFC1072][RFC6247]
810Timestamps[RFC7323]
92Partial Order Connection Permitted (obsolete)[RFC1693][RFC6247]
103Partial Order Service Profile (obsolete)[RFC1693][RFC6247]
11CC (obsolete)[RFC1644][RFC6247]
12CC.NEW (obsolete)[RFC1644][RFC6247]
13CC.ECHO (obsolete)[RFC1644][RFC6247]
143TCP Alternate Checksum Request (obsolete)[RFC1146][RFC6247]
15NTCP Alternate Checksum Data (obsolete)[RFC1146][RFC6247]
16Skeeter[Stev_Knowles]
17Bubba[Stev_Knowles]
183Trailer Checksum Option[Subbu_Subramaniam][Monroe_Bridges]
1918MD5 Signature Option (obsoleted by option 29)[RFC2385]
20SCPS Capabilities[Keith_Scott]
21Selective Negative Acknowledgements[Keith_Scott]
22Record Boundaries[Keith_Scott]
23Corruption experienced[Keith_Scott]
24SNAP[Vladimir_Sukonnik]
25Unassigned (released 2000-12-18)
26TCP Compression Filter[Steve_Bellovin]
278Quick-Start Response[RFC4782]
284User Timeout Option (also, other known unauthorized use) [***][1][RFC5482]
29TCP Authentication Option (TCP-AO)[RFC5925]
30NMultipath TCP (MPTCP)[RFC8684]
31Reserved (known unauthorized use without proper IANA assignment) [**]
32Reserved (known unauthorized use without proper IANA assignment) [**]
33Reserved (known unauthorized use without proper IANA assignment) [**]
34variableTCP Fast Open Cookie[RFC7413]
35-68Reserved
69NEncryption Negotiation (TCP-ENO)[RFC8547]
70Reserved (known unauthorized use without proper IANA assignment) [**]
71-75Reserved
76Reserved (known unauthorized use without proper IANA assignment) [**]
77Reserved (known unauthorized use without proper IANA assignment) [**]
78Reserved (known unauthorized use without proper IANA assignment) [**]
79-171Reserved
172NAccurate ECN Order 0 (AccECN0)[RFC-ietf-tcpm-accurate-ecn-34]
173Reserved
174NAccurate ECN Order 1 (AccECN1)[RFC-ietf-tcpm-accurate-ecn-34]
175-252Reserved
253NRFC3692-style Experiment 1 (also improperly used for shipping products) [*][RFC4727]
254NRFC3692-style Experiment 2 (also improperly used for shipping products) [*][RFC4727]

TCP Alternate Checksum Numbers

Registration Procedure(s)
Not defined
Reference
[RFC1146]
Available Formats

CSV
NumberDescriptionReference
0TCP Checksum[RFC1146]
18-bit Fletchers's algorithm[RFC1146]
216-bit Fletchers's algorithm[RFC1146]
3Redundant Checksum Avoidance[J_Kay]

Cryptographic Algorithms for TCP-AO Registration

Registration Procedure(s)
RFC Publication After Expert Review
Reference
[RFC5926]
Available Formats

CSV
AlgorithmReference
SHA1[RFC5926]
AES128[RFC5926]

MPTCP Option Subtypes

Registration Procedure(s)
Standards Action
Reference
[RFC8684]
Note
This registry specifies the MPTCP Option Subtypes for MPTCP v1, which obsoletes the Experimental MPTCP v0. For the MPTCP v0 subtypes, please refer to [RFC6824].
Available Formats

CSV
ValueSymbolNameReference
0x0MP_CAPABLEMultipath Capable[RFC8684, Section 3.1]
0x1MP_JOINJoin Connection[RFC8684, Section 3.2]
0x2DSSData Sequence Signal (Data ACK and Data Sequence Mapping)[RFC8684, Section 3.3]
0x3ADD_ADDRAdd Address[RFC8684, Section 3.4.1]
0x4REMOVE_ADDRRemove Address[RFC8684, Section 3.4.2]
0x5MP_PRIOChange Subflow Priority[RFC8684, Section 3.3.8]
0x6MP_FAILFallback[RFC8684, Section 3.7]
0x7MP_FASTCLOSEFast Close[RFC8684, Section 3.5]
0x8MP_TCPRSTSubflow Reset[RFC8684, Section 3.6]
0x9-0xeUnassigned
0xfReserved for Private Use[RFC8684]

MPTCP Handshake Algorithms

Registration Procedure(s)
Standards Action
Reference
[RFC8684]
Note
This registry specifies the MPTCP Handshake Algorithms for MPTCP v1, which obsoletes the Experimental MPTCP v0. For the MPTCP v0 subtypes, please refer to [RFC6824].
Available Formats

CSV
Flag BitMeaningReference
AChecksum required[RFC8684, Section 3.1]
BExtensibility[RFC8684, Section 3.1]
CDo not attempt to establish new subflows to the source address.[RFC8684, Section 3.1]
D-GUnassigned
HHMAC-SHA256[RFC8684, Section 3.2]

TCP/UDP Experimental Option Experiment Identifiers (TCP/UDP ExIDs)

Registration Procedure(s)
First Come First Served
Reference
[RFC6994][RFC-ietf-tsvwg-udp-options-45]
Note
16-bit ExIDs can be used with either TCP or UDP; 32-bit ExIDs can be used with TCP or their first 16 bits can be used with UDP. Use with each transport (TCP, UDP) is indicated in the protocol column, as defined in the corresponding reference. 
Note
IANA will record known duplicate uses. 
Available Formats

CSV
ValueProtocolDescriptionReference
0x00ACTCPTCP ACK Rate Request[draft-gomez-tcpm-ack-rate-request-02]
0x0348TCPHOST_ID[RFC7974]
0x0A0DTCPAutonomous System Compensation[draft-donnerhacke-linktax-02]
0x0CA0TCPTCP Capability Option[draft-boucadair-tcpm-capability-option-00]
0x0ED0TCPExtended Data Offset[draft-ietf-tcpm-tcp-edo-00]
0x454ETCPTCP-ENO [2][RFC8547]
0x5323TCPService Number[draft-touch-tcpm-sno-00]
0x75ECFFEETCPTimestamp Interval[draft-trammell-tcpm-timestamp-interval-00]
0xACC0TCPAccECN Experimental Option - Order 0 (current and new implementations SHOULD use option kind 172)[RFC-ietf-tcpm-accurate-ecn-34]
0xACC1TCPAccECN Experimental Option - Order 1 (current and new implementations SHOULD use option kind 174)[RFC-ietf-tcpm-accurate-ecn-34]
0xACCETCPAccECN Experimental Option (current and new implementations SHOULD use option kinds 172 or 174)[RFC-ietf-tcpm-accurate-ecn-34]
0xE2D4C3D9TCPShared Memory Communications over RMDA protocol[RFC7609]
0xF989TCPFast Open (current and new implementations SHOULD use option 34)[RFC7413]
0xF990TCPLow Latency[draft-wang-tcpm-low-latency-opt-00]

TCP Encryption Protocol Identifiers

Registration Procedure(s)
IETF Review or Expert Review with RFC Required
Expert(s)
Unassigned
Reference
[RFC8547]
Available Formats

CSV
ValueMeaningReference
0x20Experimental Use[RFC8547]
0x21TCPCRYPT_ECDHE_P256[RFC8548]
0x22TCPCRYPT_ECDHE_P521[RFC8548]
0x23TCPCRYPT_ECDHE_Curve25519[RFC8548]
0x24TCPCRYPT_ECDHE_Curve448[RFC8548]
0x25-0x6fUnassigned
0x70-0x7fReserved for extended values[RFC8547]

tcpcrypt AEAD Algorithms

Registration Procedure(s)
IETF Review or Expert Review with RFC Required
Expert(s)
Unassigned
Reference
[RFC8548]
Available Formats

CSV
ValueAEAD AlgorithmReference
0x0000Reserved
0x0001AEAD_AES_128_GCM[RFC8548]
0x0002AEAD_AES_256_GCM[RFC8548]
0x0003-0x000fUnassigned
0x0010AEAD_CHACHA20_POLY1305[RFC8548]
0x0011-0xffffUnassigned

MPTCP MP_TCPRST Reason Codes

Registration Procedure(s)
Specification Required
Expert(s)
Unassigned
Reference
[RFC8684]
Available Formats

CSV
CodeMeaningReference
0x00Unspecified error[RFC8684, Section 3.6]
0x01MPTCP-specific error[RFC8684, Section 3.6]
0x02Lack of resources[RFC8684, Section 3.6]
0x03Administratively prohibited[RFC8684, Section 3.6]
0x04Too much outstanding data[RFC8684, Section 3.6]
0x05Unacceptable performance[RFC8684, Section 3.6]
0x06Middlebox interference[RFC8684, Section 3.6]
0x07-0xffUnassigned

TCP Header Flags

Registration Procedure(s)
Standards Action
Reference
[RFC9293]
Available Formats

CSV
Bit OffsetNameReferenceAssignment Notes
4Reserved for future use[RFC9293]
5Reserved for future use[RFC9293]
6Reserved for future use[RFC9293]
7AE (Accurate ECN)[RFC-ietf-tcpm-accurate-ecn-34]Previously used as NS (Nonce Sum) by [RFC3540], which is now historic [RFC8311].
8CWR (Congestion Window Reduced)[RFC3168]
9ECE (ECN-Echo)[RFC3168]
10Urgent Pointer field is significant (URG)[RFC9293]
11Acknowledgment field is significant (ACK)[RFC9293]
12Push Function (PSH)[RFC9293]
13Reset the connection (RST)[RFC9293]
14Synchronize sequence numbers (SYN)[RFC9293]
15No more data from sender (FIN)[RFC9293]

Contact Information

IDNameContact URILast Updated
[J_Kay]J. Kaymailto:jkay&ucsd.edu1994-09
[Keith_Scott]Keith Scottmailto:kscott&mitre.org1999-02
[Monroe_Bridges]Monroe Bridgesmailto:monroe&cup.hp.com1994-09
[Stev_Knowles]Stev Knowlesmailto:stev&ftp.com1995-03
[Steve_Bellovin]Steve Bellovinmailto:smb&research.att.com2000-03
[Subbu_Subramaniam]Subbu Subramaniammailto:subbu&cup.hp.com1994-09
[Vladimir_Sukonnik]Vladimir Sukonnikmailto:vladimir&sitaranetworks.com1999-02

Footnotes

[1]
[https://devcentral.f5.com/tech-tips/articles/accessing-tcp-options-from-irules]
[2]
current and new TCP-ENO implementations MUST use TCP option kind 69.
close