RFC 964 (rfc964) - Page 1 of 10


Some problems with the specification of the Military Standard Transmission Control Protocol



Alternative Format: Original Text Document



Network Working Group                                 Deepinder P. Sidhu
Request for Comments: 964                               Thomas P. Blumer
                                               SDC - A Burroughs Company
                                                           November 1985

              SOME PROBLEMS WITH THE SPECIFICATION OF THE
            MILITARY STANDARD TRANSMISSION CONTROL PROTOCOL


STATUS OF THIS MEMO

   The purpose of this RFC is to provide helpful information on the
   Military Standard Transmission Control Protocol (MIL-STD-1778) so
   that one can obtain a reliable implementation of this protocol
   standard. Distribution of this note is unlimited.

      Reprinted from: Proc. Protocol Specification, Testing and
      Verification IV, (ed.) Y. Yemini, et al, North-Holland (1984).

ABSTRACT

   This note points out three errors with the specification of the
   Military Standard Transmission Control Protocol (MIL-STD-1778, dated
   August 1983 [MILS83]).  These results are based on an initial
   investigation of this protocol standard.  The first problem is that
   data accompanying a SYN can not be accepted because of errors in the
   acceptance policy.  The second problem is that no retransmission
   timer is set for a SYN packet, and therefore the SYN will not be
   retransmitted if it is lost.  The third problem is that when the
   connection has been established, neither entity takes the proper
   steps to accept incoming data.  This note also proposes solutions to
   these problems.

1.  Introduction

   In recent years, much progress has been made in creating an
   integrated set of tools for developing reliable communication
   protocols.  These tools provide assistance in the specification,
   verification, implementation and testing of protocols.  Several
   protocols have been analyzed and developed using such tools.

   In a recent paper, the authors discussed the verification of the
   connection management of NBS class 4 transport protocol (TP4).  The
   verification was carried out with the help of a software tool we
   developed [BLUT82] [BLUT83] [SIDD83].  In spite of the very precise
   specification of this protocol, our analysis discovered several
   errors in the current specification of NBS TP4.  These errors are
   incompleteness errors in the specification, that is, states where
   there is no transition for the reception of some input event.  Our
   analysis did not find deadlocks, livelocks or any other problem in
   the connection management of TP4.  In that paper, we proposed


Sidhu & Blumer