RFC 964 (rfc964) - Page 2 of 10
Some problems with the specification of the Military Standard Transmission Control Protocol
Alternative Format: Original Text Document
RFC 964 November 1985 Some Problems with MIL-STD TCP solutions for all errors except for errors associated with 2 states whose satisfactory resolution may require redesigning parts of TP4. Modifications to TP4 specification are currently underway to solve the remaining incompleteness problems with 2 states. It is important to emphasize that we did not find any obvious error in the NBS specification of TP4. The authors are currently working on the verification of connection management of the Military Standard Transmission Control Protocol (TCP). This analysis will be based on the published specification [MILS83] of TCP dated 12 August 1983. While studying the MIL standard TCP specification in preparation for our analysis of the connection management features, we have noticed several errors in the specification. As a consequence of these errors, the Transmission Control Protocol (as specified in [MILS83]) will not permit data to be received by TCP entities in SYN_RECVD and ESTAB states. The proof of this statement follows from the specification of the three-way handshake mechanism of TCP [MILS83] and from a decision table associated with ESTAB state. 2. Transmission Control Protocol The Transmission Control Protocol (TCP) is a transport level connection-oriented protocol in the DoD protocol hierarchy for use in packet-switched and other networks. Its most important services are reliable transfer and ordered delivery of data over full-duplex and flow-controlled virtual connections. TCP is designed to operate successfully over channels that are inherently unreliable, i.e., they can lose, damage, duplicate, and reorder packets. TCP is based, in part, on a protocol discussed by Cerf and Kahn [CERV74]. Over the years, DARPA has supported specifications of several versions of this protocol, the last one appeared in [POSJ81]. Some issues in the connection management of this protocol are discussed in [SUNC78]. A few years ago, DCA decided to standardize TCP for use in DoD networks and supported formal specification of this protocol following the design of this protocol discussed in [POSJ81]. A detailed specification of this protocol given in [MILS83] has been adopted as the DoD standard for the Transmission Control Protocol, a reliable connection-oriented transport protocol for DoD networks. A TCP connection progresses through three phases: opening (or Sidhu & Blumer



