RFC 963 (rfc963) - Page 1 of 19
Some problems with the specification of the Military Standard Internet Protocol
Alternative Format: Original Text Document
Network Working Group Deepinder P. Sidhu
Request for Comments: 963 Iowa State University
November 1985
SOME PROBLEMS WITH THE SPECIFICATION OF THE
MILITARY STANDARD INTERNET PROTOCOL
STATUS OF THIS MEMO
The purpose of this RFC is to provide helpful information on the
Military Standard Internet Protocol (MIL-STD-1777) so that one can
obtain a reliable implementation of this protocol standard.
Distribution of this note is unlimited.
ABSTRACT
This paper points out several significant problems in the
specification of the Military Standard Internet Protocol
(MIL-STD-1777, dated August 1983 [MILS83a]). These results are based
on an initial investigation of this protocol standard. The problems
are: (1) a failure to reassemble fragmented messages completely; (2)
a missing state transition; (3) errors in testing for reassembly
completion; (4) errors in computing fragment sizes; (5) minor errors
in message reassembly; (6) incorrectly computed length for certain
datagrams. 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.
Examples of automated verification and implementation of several real
world protocols are discussed in [BLUT82] [BLUT83] [SIDD83] [SIDD84].
We are currently working on the automatic implementation of the
Military Standard Internet Protocol (IP). This analysis will be
based on the published specification [MILS83a] of IP dated 12 August
1983.
While studying the MIL Standard IP specification, we have noticed
numerous errors in the specification of this protocol. One
consequence of these errors is that the protocol will never deliver
fragmented incoming datagrams; if this error is corrected, such
datagrams will be missing some data and their lengths will be
incorrectly reported. In addition, outgoing datagrams that are
divided into fragments will be missing some data. The proof of these
statements follows from the specification of IP [MILS83a] as
discussed below.
Sidhu