<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="tcp-parameters.xsl"?>
<?oxygen RNGSchema="tcp-parameters.rng" type="xml"?>
<registry xmlns="http://www.iana.org/assignments" id="tcp-parameters">
  <title>Transmission Control Protocol (TCP) Parameters</title>
  <updated>2013-06-14</updated>
  <registry id="tcp-parameters-1">
    <title>TCP Option Kind Numbers</title>
    <xref type="rfc" data="rfc2780"/>
    <registration_rule>IESG Approval or Standards Action</registration_rule>
    <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 <xref type="rfc" data="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>
    <record>
      <value>0</value>
      <length>-</length>
      <description>End of Option List</description>
      <xref type="rfc" data="rfc793"/>
    </record>
    <record>
      <value>1</value>
      <length>-</length>
      <description>No-Operation</description>
      <xref type="rfc" data="rfc793"/>
    </record>
    <record>
      <value>2</value>
      <length>4</length>
      <description>Maximum Segment Size</description>
      <xref type="rfc" data="rfc793"/>
    </record>
    <record>
      <value>3</value>
      <length>3</length>
      <description>WSOPT - Window Scale</description>
      <xref type="rfc" data="rfc1323"/>
    </record>
    <record>
      <value>4</value>
      <length>2</length>
      <description>SACK Permitted</description>
      <xref type="rfc" data="rfc2018"/>
    </record>
    <record>
      <value>5</value>
      <length>N</length>
      <description>SACK</description>
      <xref type="rfc" data="rfc2018"/>
    </record>
    <record>
      <value>6</value>
      <length>6</length>
      <description>Echo (obsoleted by option 8)</description>
      <xref type="rfc" data="rfc1072"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>7</value>
      <length>6</length>
      <description>Echo Reply (obsoleted by option 8)</description>
      <xref type="rfc" data="rfc1072"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>8</value>
      <length>10</length>
      <description>TSOPT - Time Stamp Option</description>
      <xref type="rfc" data="rfc1323"/>
    </record>
    <record>
      <value>9</value>
      <length>2</length>
      <description>Partial Order Connection Permitted (obsolete)</description>
      <xref type="rfc" data="rfc1693"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>10</value>
      <length>3</length>
      <description>Partial Order Service Profile (obsolete)</description>
      <xref type="rfc" data="rfc1693"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>11</value>
      <description>CC (obsolete)</description>
      <xref type="rfc" data="rfc1644"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>12</value>
      <description>CC.NEW (obsolete)</description>
      <xref type="rfc" data="rfc1644"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>13</value>
      <description>CC.ECHO (obsolete)</description>
      <xref type="rfc" data="rfc1644"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>14</value>
      <length>3</length>
      <description>TCP Alternate Checksum Request (obsolete)</description>
      <xref type="rfc" data="rfc1146"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record>
      <value>15</value>
      <length>N</length>
      <description>TCP Alternate Checksum Data (obsolete)</description>
      <xref type="rfc" data="rfc1146"/>
      <xref type="rfc" data="rfc6247"/>
    </record>
    <record date="1995-03">
      <value>16</value>
      <description>Skeeter</description>
      <xref type="person" data="Stev_Knowles"/>
    </record>
    <record date="1995-03">
      <value>17</value>
      <description>Bubba</description>
      <xref type="person" data="Stev_Knowles"/>
    </record>
    <record date="1994-09">
      <value>18</value>
      <length>3</length>
      <description>Trailer Checksum Option</description>
      <xref type="person" data="Subbu_Subramaniam"/>
      <xref type="person" data="Monroe_Bridges"/>
    </record>
    <record>
      <value>19</value>
      <length>18</length>
      <description>MD5 Signature Option (obsoleted by option 29)</description>
      <xref type="rfc" data="rfc2385"/>
    </record>
    <record date="1999-02">
      <value>20</value>
      <description>SCPS Capabilities</description>
      <xref type="person" data="Keith_Scott"/>
    </record>
    <record date="1999-02">
      <value>21</value>
      <description>Selective Negative Acknowledgements</description>
      <xref type="person" data="Keith_Scott"/>
    </record>
    <record date="1999-02">
      <value>22</value>
      <description>Record Boundaries</description>
      <xref type="person" data="Keith_Scott"/>
    </record>
    <record date="1999-02">
      <value>23</value>
      <description>Corruption experienced</description>
      <xref type="person" data="Keith_Scott"/>
    </record>
    <record date="1999-02">
      <value>24</value>
      <description>SNAP</description>
      <xref type="person" data="Vladimir_Sukonnik"/>
    </record>
    <record>
      <value>25</value>
      <description>Unassigned (released 2000-12-18)</description>
    </record>
    <record date="2000-03">
      <value>26</value>
      <description>TCP Compression Filter</description>
      <xref type="person" data="Steve_Bellovin"/>
    </record>
    <record>
      <value>27</value>
      <length>8</length>
      <description>Quick-Start Response</description>
      <xref type="rfc" data="rfc4782"/>
    </record>
    <record>
      <value>28</value>
      <length>4</length>
      <description>User Timeout Option (also, other known unauthorized use) [***]<xref type="note" data="1"/></description>
      <xref type="rfc" data="rfc5482"/>
    </record>
    <record>
      <value>29</value>
      <description>TCP Authentication Option (TCP-AO)</description>
      <xref type="rfc" data="rfc5925"/>
    </record>
    <record>
      <value>30</value>
      <length>N</length>
      <description>Multipath TCP (MPTCP)</description>
      <xref type="rfc" data="rfc6824"/>
    </record>
    <record>
      <value>31</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>32</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>33</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>34-75</value>
      <description>Reserved</description>
    </record>
    <record>
      <value>69</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>70</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>71-75</value>
      <description>Reserved</description>
    </record>
    <record>
      <value>76</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>77</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>78</value>
      <description>Reserved (known unauthorized use without proper IANA assignment) [**]</description>
    </record>
    <record>
      <value>79-252</value>
      <description>Reserved</description>
    </record>
    <record>
      <value>253</value>
      <length>N</length>
      <description>RFC3692-style Experiment 1 (also improperly used for shipping
        products) [*]</description>
      <xref type="rfc" data="rfc4727"/>
    </record>
    <record>
      <value>254</value>
      <length>N</length>
      <description>RFC3692-style Experiment 2 (also improperly used for shipping
        products) [*]</description>
      <xref type="rfc" data="rfc4727"/>
    </record>
  </registry>
  
  <registry id="tcp-parameters-2">
    <title>TCP Alternate Checksum Numbers</title>
    <xref type="rfc" data="rfc1146"/>
    <registration_rule>Not defined</registration_rule>
    <record>
      <value>0</value>
      <description>TCP Checksum</description>
      <xref type="rfc" data="rfc1146"/>
    </record>
    <record>
      <value>1</value>
      <description>8-bit Fletchers's algorithm</description>
      <xref type="rfc" data="rfc1146"/>
    </record>
    <record>
      <value>2</value>
      <description>16-bit Fletchers's algorithm</description>
      <xref type="rfc" data="rfc1146"/>
    </record>
    <record date="1994-09">
      <value>3</value>
      <description>Redundant Checksum Avoidance</description>
      <xref type="person" data="J_Kay"/>
    </record>
  </registry>
  
  <registry id="tcp-parameters-3">
    <title>Cryptographic Algorithms for TCP-AO Registration</title>
    <xref type="rfc" data="rfc5926"/>
    <registration_rule>RFC Publication After Expert Review</registration_rule>
    <record>
      <description>SHA1</description>
      <xref type="rfc" data="rfc5926"/>
    </record>
    <record>
      <description>AES128</description>
      <xref type="rfc" data="rfc5926"/>
    </record>
  </registry>
  
  <registry id="mptcp-option-subtypes">
    <title>MPTCP Option Subtypes</title>
    <xref type="rfc" data="rfc6824"/>
    <registration_rule>Standards Action</registration_rule>
    <record>
      <value>0x0</value>
      <symbol>MP_CAPABLE</symbol>
      <description>Multipath Capable</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.1</spec>
    </record>
    <record>
      <value>0x1</value>
      <symbol>MP_JOIN</symbol>
      <description>Join Connection</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.2</spec>
    </record>
    <record>
      <value>0x2</value>
      <symbol>DSS</symbol>
      <description>Data Sequence Signal (Data ACK and Data Sequence Mapping)</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.3</spec>
    </record>
    <record>
      <value>0x3</value>
      <symbol>ADD_ADDR</symbol>
      <description>Add Address</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.4.1</spec>
    </record> 
    <record>
      <value>0x4</value>
      <symbol>REMOVE_ADDR</symbol>
      <description>Remove Address</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.4.2</spec>
    </record>
    <record>
      <value>0x5</value>
      <symbol>MP_PRIO</symbol>
      <description>Change Subflow Priority</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.3.8</spec>
    </record>
    <record>
      <value>0x6</value>
      <symbol>MP_FAIL</symbol>
      <description>Fallback</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.6</spec>
    </record>
    <record>
      <value>0x7</value>
      <symbol>MP_FASTCLOSE</symbol>
      <description>Fast Close</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.5</spec>
    </record>
    <record>
      <value>0x8-0xe</value>
      <symbol>Unassigned</symbol>
      <description/>
      <spec/>
    </record>
    <record>
      <value>0xf</value>
      <symbol>Reserved for Private Use</symbol>
      <description/>
      <spec><xref type="rfc" data="rfc6824"/></spec>
    </record>
  </registry>
  
  <registry id="mptcp-handshake">
    <title>MPTCP Handshake Algorithms</title>
    <xref type="rfc" data="rfc6824"/>
    <registration_rule>Standards Action</registration_rule>
    <record>
      <value>A</value>
      <description>Checksum required</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.1</spec>
    </record>
    <record>
      <value>B</value>
      <description>Extensibility</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.2</spec>
    </record>
    <record>
      <value>C-G</value>
      <description>Unassigned</description>
      <spec/>
    </record>
    <record>
      <value>H</value>
      <description>HMAC-SHA1</description>
      <spec><xref type="rfc" data="rfc6824"/>, Section 3.2</spec>
    </record> 
  </registry>
  
    <registry id="tcp-exids">
    <title>TCP Experimental Option Experiment Identifiers (ExIDs)</title>
    <xref type="draft" data="RFC-ietf-tcpm-experimental-options-06"/>
    <registration_rule>First Come First Served</registration_rule>
    <note>IANA will record known duplicate uses.</note>
 
   
 
  </registry>
  
<footnote anchor="1"><xref type="uri" data="https://devcentral.f5.com/tech-tips/articles/accessing-tcp-options-from-irules"/></footnote>
  
  <people>
    <person id="J_Kay">
      <name>J. Kay</name>
      <uri>mailto:jkay&amp;ucsd.edu</uri>
      <updated>1994-09</updated>
    </person>
    <person id="Keith_Scott">
      <name>Keith Scott</name>
      <uri>mailto:kscott&amp;mitre.org</uri>
      <updated>1999-02</updated>
    </person>
    <person id="Monroe_Bridges">
      <name>Monroe Bridges</name>
      <uri>mailto:monroe&amp;cup.hp.com</uri>
      <updated>1994-09</updated>
    </person>
    <person id="Stev_Knowles">
      <name>Stev Knowles</name>
      <uri>mailto:stev&amp;ftp.com</uri>
      <updated>1995-03</updated>
    </person>
    <person id="Steve_Bellovin">
      <name>Steve Bellovin</name>
      <uri>mailto:smb&amp;research.att.com</uri>
      <updated>2000-03</updated>
    </person>
    <person id="Subbu_Subramaniam">
      <name>Subbu Subramaniam</name>
      <uri>mailto:subbu&amp;cup.hp.com</uri>
      <updated>1994-09</updated>
    </person>
    <person id="Vladimir_Sukonnik">
      <name>Vladimir Sukonnik</name>
      <uri>mailto:vladimir&amp;sitaranetworks.com</uri>
      <updated>1999-02</updated>
    </person>
  </people>
</registry>
