UNISYS Corporation
6 February 1987                   -1-                       TM-WD-8801/206/00



                        DCEC PROTOCOL LABORATORY
                    TRANSMISSION CONTROL PROTOCOL (TCP)
                              MIL-STD-1778
                          TRACEABILITY MATRIX

This Traceability Index provides information on the derivation,
organization, and function of tests specified for TCP within the DCEC
Protocol Laboratory.

This document is divided into five sections:

     TCP TRACEABILITY INDEX;
     TCP TESTS INDEX;
     TCP TEST SCENARIOS INDEX;
     TCP SCENARIOS AND TESTS DESCRIPTIONS.

                             -------------

TCP TRACEABILITY INDEX: TCP TEST NUMBERS VERSUS TCP MIL-STD-1778
References...

The table indicates the cross reference between the Test Scenarios and
the applicable section in MIL-STD-1778 regarding each required
function, operation, option, mode, response, or state.

                             -------------

TCP TESTS INDEX: TCP TEST NUMBERS versus TCP
Commands/Primitives/Options/Modes...

The table shows the TCP Test Numbers which may be regarded as the
"principle tests" of each TCP Command or Primitive and/or Option or
Mode.

                             -------------

TCP TEST SCENARIOS INDEX: TCP TEST SCENARIO FILES versus TCP TEST
NUMBERS...

The table shows, for each TCP Test Number, the UNIX filenames of the
TCP Test Scenario Files in which it appears.

                             -------------

TCP SCENARIOS AND TESTS DESCRIPTIONS...

This section provides a brief narrative of the scope and objectives of
each TCP Test Scenario File and a narrative or graphic operational
description of each TCP Test Number.
                                                            UNISYS Corporation
6 February 1987                   -2-                       TM-WD-8801/206/00



                         TCP TRACEABILITY MATRIX

TCP TEST NUMBERS
    versus
        TCP MIL-STD-1778 References

The table indicates the cross reference between the TCP tests and the
applicable section in MIL-STD 1778. The TCP Test Numbers may be
regarded as the "principal tests" of the applicable section in MIL
STD-1778 regarding each required function, operation, option, mode,
response, or state.

Reference                               Test Number
---------                               ----------

TCP Service Request Primitives
------------------------------

6.4.1 Unspecified Passive Open          1, 39, 57
6.4.2 Fully Specified Passive Open      9, 10, 40
6.4.3 Active Open                       2, 38, 55
6.4.4 Active Open with Data             11, 12
6.4.5 Send                              3, 14, 15, 16, 56
6.4.6 Allocate                          51
6.4.7 Close                             6, 7, 14, 15, 16
6.4.8 Abort                             17, 18, 19, 20
6.4.9 Status                            24

TCP Service Response Primitives
-------------------------------

6.4.10.1 Open Id                        1, 2, 9, 10, 11
6.4.10.2 Open Failure                   35, 371, 41, 42, 49, 63
6.4.10.3 Open Success                   1, 2, 66
6.4.10.4 Deliver                        3, 6
6.4.10.5 Closing                        6, 7
6.4.10.6 Terminate                      6, 7, 17, 18, 19, 20,
                                        21, 44, 45, 46, 50, 55
                                        56, 57, 58, 67
6.4.10.7 Status Response                24
6.4.10.8 Error                          4, 5, 31, 38, 40, 73

TCP Mechanisms Tested
---------------------

9.2.3 Flow Control Window               59, 61
9.2.4 Duplicate/Order Detection         25, 26, 27, 29, 32
9.2.5 Acks and Retransmission           27, 52, 53, 54
9.2.6 Checksum                          28
9.2.7 Push                              63, 64
9.2.8 Urgent                            60, 61, 62
9.2.9 ULP Timeout/Action                55, 56, 57, 58
9.2.10 Security                         38, 39, 40, 41, 42, 43
                                        44, 45, 46, 47, 48, 49, 50
                                                            UNISYS Corporation
6 February 1987                   -3-                       TM-WD-8801/206/00



9.2.11 Precedence Level                 21, 22, 23
9.2.12 Multiplexing                     30, 31, 32, 33, 34, 36
9.2.13 Connection Opening               35, 37
9.2.14 Connection Closing               14, 15, 16, 17
9.2.15 Resets                           35, 50, 65, 66, 67, 68,
                                        69, 70, 71, 72

9.3.1 Source Port Address Range         13
9.3.2 Destination Port
      Address Range                     13

TCP Options Tested
------------------

9.3.11.1.3 Maximum Segment Size 52
                                                            UNISYS Corporation
6 February 1987                   -4-                       TM-WD-8801/206/00



                            TCP TESTS INDEX

TCP TEST NUMBERS versus TCP Commands/Primitives/Options/Modes...

The table shows the TCP Test Numbers which may be regarded as the
"principle tests" of each TCP Command or Primitive and/or Option or
Mode.


TEST NUMBER     PURPOSE
---- ------     ------
      1         Unspecified Passive Open Request
      2         Active Open Request
      3         Basic Data Transfer
      4         Remote Driver Interpretation of command LCN
      5         Determine IUT Standard Send Buffer
      6         Closing Handshake - IUT initiates close
      7         Closing Handshake - IUT peer initiates close
      8         Ability to reconnect Remote Driver command channel

      9         Fully Specified Passive Open Request
     10         Illegal Fully Specified Passive Open Request
     11         Active Open with Data
     12         Active Open with Data
     13         Port Number Range

     14         Graceful Closing - completion of data transfer after ULP close
     15         Graceful Closing - data transfer after receipt of peer's FIN
     16         Graceful Closing - peer data transfer after IUT initiates close
     17         ULP Abort
     18         Peer Abort
     19         ULP Abort - data queued for sending
     20         Peer Abort - data queued for sending
     21         Precedence - mismatched
     22         Precedence - matched
     23         Precedence Negotiation
     24         Status

     25         Out of order data
     26         Overlapping data
     27         Lost data
     28         Bad Checksum detection
     29         Sequence number wraparound
     30         Multiplexing - two connections with unique 4-tuple
                IUT opens passively
     31         Multiplexing - common destination port in 4-tuple common
                  IUT port
     32         Multiplexing - common destination port in 4-tuple common
                  REF port
     33         Multiplexing - two connections with unique 4-tuple IUT
                  opens actively
     34         Multiplexing - three connections with common IUT port
                  in 4-tuple
                                                            UNISYS Corporation
6 February 1987                   -5-                       TM-WD-8801/206/00


TEST NUMBER      PURPOSE
---- ------      -------
     35         Duplicate connection attempt - IUT passive
     36         Multiplexing - Same sequence numbers on two connections.
     37         Duplicate connection attempt - IUT active

     38         Setting security in Active Open
     39         Setting security in Passive Open
     40         Setting security in Fully Specified Passive Open
     41         Secure IUT rejecting connection to unsecured peer
     42         Secure IUT rejecting connection from unsecured peer
     43         Security option placement in sending data
     44         Response to data with mismatched security class
     45         Response to data with mismatched security protection authority
     46         Response to data with extra protection authority
     47         Use of security option for unclassified connections
     48         Recognition of UNCLASS and GENSER as unsecured
     49         Unsecured IUT response to connection attempt by secured host
     50         Unsecured IUT response to data marked with classified security

     51         Alloc

     52         Maximum segment size option
     53         Retransmission after acknowledgment of data
     54         Retransmission after acknowledgment of SYN and FIN
     55         ULP timeout service in Active Open
     56         ULP timeout service in Send
     57         ULP timeout service in Passive Open

     58         ULP timeout notify action tested.

     59         TCP in window mechanism
     60         Urgent service
     61         Urgent service when peer has zero window
     62         Urgent data delivery
     63         Push Service - Service not requested
     64         Push service - Service requested

     65         Reset - as response to connection refusal
     66         Reset - partial reset prior to connection establishment
     67         Reset - response to reset received while sending data
     68         Reset segment format on receipt of Active Open with no
                  listening port
     69         Reset segment format on receipt of Active Open with
                  data with no listening port
     70         Reset segment format on receipt of invalid segment with ACK set
     71         Reset segment format on receipt of invalid segment with
                  SYN and ACK set
     72         Reset - no reset sent on receipt of segment with bad
                  acknowledgment number

     73         Determine number of connections resources will allow
                                                            UNISYS Corporation
6 February 1987                   -6-                       TM-WD-8801/206/00



                         TCP TEST SCENARIOS INDEX

TCP TEST SCENARIO FILES versus TCP TEST NUMBERS...

The table shows, for each TCP Test Number, the UNIX filenames of the
TCP test Scenario Files in which it appears.


TEST NUMBER             SCENARIO NAME
-----------             -------------
      1                      INIT1
      2                      INIT1
      3                      INIT1
      4                      INIT1
      5                      INIT1
      6                      INIT1
      7                      INIT1
      8                      INIT1

      9                      BASIC1
     10                      BASIC1
     11                      BASIC1
     12                      BASIC1
     13                      BASIC1

     14                      BASIC2
     15                      BASIC2
     16                      BASIC2
     17                      BASIC2
     18                      BASIC2
     19                      BASIC2
     20                      BASIC2
     21                      BASIC2
     22                      BASIC2
     23                      BASIC2
     24                      BASIC2

     25                      BASIC3
     26                      BASIC3
     27                      BASIC3
     28                      BASIC3
     29                      BASIC3
                                                            UNISYS Corporation
6 February 1987                   -7-                       TM-WD-8801/206/00




TEST NUMBER               SCENARIO NAME
-----------               -------------
     30                      BASIC4
     31                      BASIC4
     32                      BASIC4
     33                      BASIC4
     34                      BASIC4
     35                      BASIC4
     36                      BASIC4
     37                      BASIC4

     38                      BASIC5
     39                      BASIC5
     40                      BASIC5
     41                      BASIC5
     42                      BASIC5
     43                      BASIC5
     44                      BASIC5
     45                      BASIC5
     46                      BASIC5
     47                      BASIC5
     48                      BASIC5
     49                      BASIC5
     50                      BASIC5

     51                      BASIC6

     52                      FULL1
     53                      FULL1
     54                      FULL1
     55                      FULL1
     56                      FULL1
     57                      FULL1
     58                      FULL1

     59                      FULL2
     60                      FULL2
     61                      FULL2
     62                      FULL2
     63                      FULL2
     64                      FULL2

     65                      FULL3
     66                      FULL3
     67                      FULL3
     68                      FULL3
     69                      FULL3
     70                      FULL3
     71                      FULL3
     72                      FULL3

     73                      QUAL1
                                                            UNISYS Corporation
6 February 1987                   -8-                       TM-WD-8801/206/00



                 TCP SCENARIOS AND TESTS DESCRIPTIONS

This section provides a brief narrative of the scope and objectives of
each TCP test Scenario File and a narrative of each individual test in
that scenario.


========================================================================


Scenario INIT1
--------------

Scenario INIT1 is the first test of a test session. This scenario
tests the most basic TCP functions of the TCP Implementation Under
Test (IUT) and the compliance of the IUT Remote Driver to the DCA
Protocol Laboratory TCP Remote Driver Specification. If the IUT and
the Remote Driver do not receive good results on the first run of
this scenario, further testing should be abandoned until the problems
exhibited are corrected.

INIT1 tests the TCP implementation for its ability to perform the most
basic TCP functions: Active Open, Passive Open, transfer of data and
closing. The scenario determines that the Remote Driver interprets
Central Driver commands correctly, acknowledges the receipt of a
command from the Central Driver and correctly formats IUT responses
that it sends to the Central Driver.


____________________________________


Test 1:  UNSPECIFIED PASSIVE OPEN
------
       - Does the Implementation Under Test (IUT) implement a Passive
         Open which accepts an Active Open request?

       - Action: Remote Driver (RD) performs a Specified Passive
                 Open. Laboratory Slave Driver (LSD) does an Active
                 Open to it.

       - Verification: Determine that a connection is made by finding
                       an OPEN SUCCESS response from the LSD. Ensure that
                       the RD acknowledges all commands received from the
                       Central Driver (CD). Determine that all RD
                       responses are correctly formatted.

       Success: The connection is made. The RD correctly interprets
                CD commands, acknowledges CD commands and formats
                IUT responses.

       Failure: Connection is not made or the RD does not correctly
                interpret CD commands, acknowledge CD commands, or
                format IUT responses.
                                                            UNISYS Corporation
6 February 1987                   -9-                       TM-WD-8801/206/00


Test 2:  ACTIVE OPEN
------

       - Can the Implementation Under Test (IUT) implement an Active
         Open?

       - Action: Laboratory Slave Driver (LSD) performs a Passive
                 Open. The Remote Driver (RD) does an Active Open
                 to the listening port.

       - Verification: Determine that a connection is made by finding
                       an OPEN SUCCESS response from the RD. Ensure that
                       the RD acknowledges all commands received from the
                       Central Driver. Determine that all RD responses
                       are correctly formatted.

       Success: The connection is made. The RD correctly
                interprets CD commands, acknowledges CD commands
                and formats IUT responses.

       Failure: Connection is not made or the RD does not correctly
                interpret CD commands, acknowledge CD commands, or
                format IUT responses.


Test 3:  BASIC DATA TRANSFER
------

       - Does the Implementation Under Test (IUT) send and deliver data
         correctly?

       - Action: The Laboratory Slave Driver (LSD) sends data to the
                 Remote Driver (RD). The RD sends data to the LSD.

       - Verification: Ensure that all the data the IUT is directed to
                       send to the LSD is received by the Laboratory
                       Reference Implementation (REF). Check that all the
                       data sent by the LSD is delivered to the RD by the
                       IUT. Ensure that the RD acknowledges all commands
                       received from the Central Driver. Determine that
                       all RD responses are correctly formatted.

       Success: The IUT sends all the data it is requested to send
                and delivers all the data it receives. The RD
                correctly interprets CD commands, acknowledges CD
                commands and formats IUT responses.

       Failure: The IUT does not send all the data it is requested
                to send or does not deliver all the data it
                receives. Also that the RD does not correctly
                interpret CD commands, acknowledges CD commands or
                format IUT responses.
                                                            UNISYS Corporation
6 February 1987                   -10-                      TM-WD-8801/206/00


Test 4:  SIGNIFICANCE OF COMMAND LCN TO REMOTE DRIVER AND IUT
------
       - Do the Implementation Under Test (IUT) and the IUT Remote
         Driver (RD) correctly interpret the local connection name
         (lcn) specified in the commands the RD receives from the
         Central Driver (CD).

       - Action: The Central Driver (CD) sends a Send command to the
                 Remote Driver (RD) which contains an lcn for a
                 connection that is not established. The RD
                 requests the IUT to send data to the LSD over this
                 connection.

       - Verification: Ensure that the RD reports in correct format
                       that the IUT reponds to the incorrect lcn with TCP
                       ERROR: CONNECTION DOES NOT EXIST.

       Success: The IUT recognizes an invalid lcn. The RD
                correctly interprets CD commands, acknowledges CD
                commands and formats IUT responses.

       Failure: The IUT does not recognize an invalid lcn. Also,
                the RD does not correctly interpret CD commands,
                acknowledge CD commands or format IUT responses.


Test 5:  DETERMINE IUT STANDARD SEND BUFFER FOR TESTING PURPOSES
------
       - Determine the standard size buffer that the
         Implementation Under Test (IUT) requires to guarantee that
         the IUT will output at least two segments without delay.

       - Action: The Remote Driver issues a series of Send commands.
                 each command requests a larger increment of data to
                 be sent.  After each Send command, the LSD waits
                 for the data to be delivered. Once the data is
                 delivered, check the TCP segments collected by the
                 Laboratory Reference Implementation (REF) to
                 determine if more than one segment was required to
                 send the data. When more than one segment is used
                 to send the data or the response TCP ERROR:
                 INSUFFICIENT RESOURCES is returned by the IUT, the
                 test is ended.

       - Verification: When a Send command data length requires the
                       IUT to send the data in more than one segment, that
                       data length is noted. If the response TCP ERROR:
                       INSUFFICIENT RESOURCES has been reported, the data
                       length of the Send command immediately preceding
                       the command that caused that response is noted.

       - Observation: The IUT standard send buffer is noted for the
                      test operator.
                                                            UNISYS Corporation
6 February 1987                   -11-                      TM-WD-8801/206/00


Test 6:  CLOSING HANDSHAKE WHEN IUT INITIATES CLOSE
------
       - Does the Implementation Under Test (IUT) correctly perform
         the closing handshake when it initiates closing.

       - Action: The Remote Driver (RD) performs a close. When the
                 Laboratory Slave Driver (LSD) receives the
                 indication of peer closing from the Laboratory
                 ReferenceImplementation (REF), it performs a close.

       - Verification: Ensure that the RD reports TERMINATE:
                       CONNECTION CLOSED or TERMINATE: ULP CLOSE when the
                       IUT indicates the connection closed. Check the TCP
                       segments collected by the REF to determine that the
                       IUT acknowledged the FIN from the REF before it
                       terminated.

       Success: The IUT acknowledges the FIN of the REF. The IUT
                reports its connection closed. The RD correctly
                interprets Central Driver (CD) commands,
                acknowledges CD commands and formats IUT responses.

       Failure: The IUT does not acknowledge the FIN of the REF or
                the IUT does not report its connection closed. The
                IUT reports its connection closed before the REF
                closes. The RD does not correctly interpret CD
                commands, acknowledge CD commands or format IUT
                responses.


Test 7:  CLOSING HANDSHAKE WHEN IUT PEER INITIATES CLOSE
------
       - Does the Implementation Under Test (IUT) correctly perform
         the closing handshake when its peer initiates closing.

       - Action: The Laboratory Slave Driver (LSD) performs a close.
                 When the IUT reports receiving the Laboratory
                 Reference Implementation (REF) closing, it performs
                 a close.

       - Verification: Ensure that the RP correctly reports CLOSING
                       and TERMINATE: CONNECTION CLOSED when it receives
                       these responses from the IUT for the REF's closing
                       and the final closing of the connection. Check the
                       TCP segments collected by the REF to determine that
                       the IUT did not send its FIN before being
                       instructed to close by the RD. Also check that the
                       IUT sends a FIN to the REF once it has been
                       instructed to close.
                                                            UNISYS Corporation
6 February 1987                   -12-                      TM-WD-8801/206/00


       Success: The IUT waits to be instructed to close before it
                sends a FIN. It sends a FIN when it is instructed
                to close. The IUT correctly reports its peer's
                closing and the closing of the connection. The RD
                correctly interprets Central Driver (CD) commands,
                acknowledges CD commands and formats IUT
                responses.

       Failure: The IUT sends a FIN in response to a peer's FIN
                before it is instructed to close or the IUT does
                not send a FIN when it is instructed to close.
                Failure also occurs when the IUT does not report a
                peer's closing or the closing of the connection.
                Other reasons for failure are when the RD does not
                correctly interpret CD commands, acknowledge CD
                commands or format IUT responses.


Test 8:  ABILITY TO RECONNECT TO COMMAND CHANNEL AFTER CLOSURE
------
       - Does the Implementation Under Test Remote Driver remain
         listening after the Central Driver closes the command
         channel?

       - Action: The Central Driver instructs the Remote Driver to
                 kill itself. After waiting five seconds to allow
                 the connection to be cleared, the Central Driver
                 attempts to reconnect the command channel to the
                 Remote Driver.

       - Verification: If the scenario aborts when the Central Driver
                       attempts to reconnect the command channel to the
                       Remote Driver, the Remote Driver is no longer
                       listening. If the Central Driver is able to
                       reconnect the command channel, a Remote Driver is
                       left listening after the command channel is closed.

       Success: A Remote Driver is left listening when the Central
                Driver (CD) closes the command channel to the
                Remote Driver, and reconnection to the Central
                Driver occurs.

       Failure: A Remote Driver is not left listening when the
                Central Driver closes the command channel to the
                Remote Driver. The Remote Driver does not
                correctly interpret CD commands, acknowledge CD
                commands or format IUT responses.
                                                            UNISYS Corporation
6 February 1987                   -13-                      TM-WD-8801/206/00



                   TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC1
---------------

Scenario BASIC1 tests the TCP implementation of Fully Specified
Passive Open, and Active Open with Data.
_____________________________________


Test 9:  FULLY SPECIFIED PASSIVE OPEN
------
       - Does the Implementation Under Test (IUT) implement a passive
         open which accepts an Active Open request only from a
         specified addresss

       - Action: Remote Driver (RD) performs a fully Specified
                 Passive Open. Laboratory Slave Driver (LSD) does
                 an Active Open to it from a socket bound with the
                 specified address.

       - Verification: Determine that a connection was made by
                       finding an OPEN SUCCESS response from the LSD.

       Success: The connection was made.

       Failure: Connection was not made.


Test 10:  FULLY SPECIFIED PASSIVE OPEN
-------

       - Will the the Implementation Under Test (IUT) fully Specified
         passive Open accept an Active Open request from an
         unspecified port?

       - Action: Remote Driver (RD) performs a fully Specified
                 Passive Open. Laboratory Slave Driver (LSD) does
                 an Active Open to it from a socket with a different
                 port number than the one specified in the fully
                 Specified Passive Open.

       - Verification: Determine that a connection was made by
                       checking that the Laboratory Reference
                       Implementation (REF) sent an OPEN FAILURE
                       response.

       Success: Connection was not made.

       Failure: Connection was made.
                                                            UNISYS Corporation
6 February 1987                   -14-                      TM-WD-8801/206/00



Test 11:  ACTIVE OPEN WITH DATA
-------
       - Does the Implementation Under Test (IUT) send data on its SYN
         segment on an Active Open with Data.

       - Action: Remote Driver (RD) performs an Active 0pen with Data.

       - Verification: Check the IUT's SYN segment to see if data
                       was sent on that segment.

       Success: The IUT sends data on its SYN segment.

       Failure: The IUT does not send data on its SYN segment.


Test 12: ACTIVE OPEN WITH DATA
-------
       - Does the Implementation Under Test (IUT) acknowledge
         data received on the SYN segment in its SYN ACK (before
         connection establishment)s

       - Action: Laboratory Slave Driver (LSD) performs an Active
                 Open with Data.

       - Verification: Check the IUT SYN ACK segment to ensure that it
                       does not acknowledge data.

       Success: Data is not acknowledged on the IUT SYN ACK segment.

       Failure: Data is acknowledged on the IUT SYN ACK segment.


Test 13: PORT NUMBER RANGE
-------
       - Can the Implementation Under Test (IUT) assign a range of
         local port numbers?

       - Action: Remote Driver (RD) does two Passive Open requests:
                 one specifies source port 1 and the other specifies
                 source port 65535. The RD also does an Active Open
                 to destination port 65534.

       - Verification: Determine whether the IUT returns SYSTEM ERROR:
                       REQUESTED SOURCE PORT NOT PERMITTED or the OPEN ID
                       from the Passive Open requests. Ensure that
                       a connection was made when destination port 65534
                       was specified in the Active Open.

       Observation: Result is to indicate the range of port numbers
                    that the IUT allows to be assigned.
                                                            UNISYS Corporation
6 February 1987                   -15-                      TM-WD-8801/206/00



                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC2
---------------

Scenario BASIC2 tests the TCP implementation of graceful closings, its
handling of aborts, precedence, and status.


_______________________________________


TEST 14: DATA TRANSFER IN CLOSING STATES
-------
       - Does the Implementation Under Test (IUT) provide graceful
         closing by completing data transfer after its Upper Level
         Protocol has initiated closings

       - Action: The Remote Driver (RD) sends a large amount of
                 data and immediately closes.

       - Verification: Determine that the Laboratory Reference
                       Implementation (REF) receives all the data the IUT
                       was requested to send.

       Success: All expected data was received by the REF.

       Failure: All expected data not received by REF.


TEST 15: DATA TRANSFER IN CLOSING STATES
-------
       - Does the Implementation Under Test (IUT) provide graceful
         closing by continuing to send data after receiving peer's
         FIN segments

       - Action: The IUT is instructed to send data after it has
                 received its peer's closing FIN segment.

       - Verification: Determine that the IUT sends the data by
                       checking that all expected data is received by the
                       Laboratory Reference Implementation (REF).

       Success: REF receives all data IUT was asked to send.

       Failure: REF does not receive all data IUT was asked to send.
                                                            UNISYS Corporation
6 February 1987                   -16-                      TM-WD-8801/206/00


TEST 16: DATA TRANSFER IN CLOSING STATES
-------
       - Does the Implementation Under Test (IUT) deliver data sent
         after it has initiated closings

       - Action: Remote Driver tells IUT to close. On receiving the
                 IUT's close, the Laboratory Slave Driver (LSD)
                 requests the Laboratory Reference Implementation
                 (REF) to send data to the IUT.

       - Verification: Determine that the IUT delivers all the data
                       sent by the REF.

       Success: IUT delivers all data sent by REF.

       Failure: IUT does not deliver all data sent by REF.


TEST 17: UPPER LAYER PROTOCOL ABORT
-------
       - Does the Implementation Under Test (IUT) perform an abort by
         sending a correct reset segments

       - Action: Remote Driver (RD) aborts the connection.

       - Verification: Check that the Laboratory Slave Driver (LSD)
                       reports a TERMINATE: REMOTE ABORT response and the
                       RD reports TERMINATE: ULP ABORT or TERMINATE: USER
                       ABORT.

       Success: The IUT sends a reset segment and the correct
                terminate response.

       Failure: The IUT does not send a reset segment or correct
                terminate response.


Test 18: PEER ABORT
-------
       - Can the Implementation Under Test (IUT) detect its peer's aborts

       - Action: The Laboratory Slave Driver (LSD) instructs its
                 Laboratory Reference Implementation (REF) to abort
                 connection.

       - Verification: Check that the IUT reports TERMINATE: REMOTE ABORT.

       Success: IUT correctly reports REMOTE ABORT.

       Failure: IUT does not correctly report its peer's abort.
                                                            UNISYS Corporation
6 February 1987                   -17-                      TM-WD-8801/206/00


TEST 19: UPPER LAYER PROCESS ABORT
-------
       - Does the Implementation Under Test (IUT) discard data queued
         for sending when it performs a ULP aborts

       - Action: Remote Driver (RD) sends data to its peer and then
                 immediately aborts the connection.

       - Verification: Check that the Laboratory Slave Driver (LSD)
                       reports a TERMINATE: REMOTE ABORT response and the
                       RD reports TERMINATE: ULP ABORT. Examine the IUT
                       reset segment for correctness and determine if all
                       data sent by the RD was received by the LSD.

       Success: The IUT sends the correct terminate response, its
                reset segment is correctly formatted, and not all
                data sent by the IUT is received by the
                Laboratory Reference Implementation (REF).

       Failure: The IUT sends an incorrect terminate response or an
                incorrect reset segment. If all data is received
                by the LSD, this particular result is inconclusive
                as the data may already be sent before the Central
                Driver command to abort is received by the IUT.


Test 20: PEER ABORT
-------
       - Does the Implementation Under Test (IUT) detect its peer's
         abort and then discard data queued for sendings

       - Action: The Laboratory Slave Driver (LSD) instructs its
                 Laboratory Reference Implementation (REF) to abort
                 while the IUT is sending data.

       - Verification: Check that the IUT reports TERMINATE: REMOTE
                       ABORT and that the IUT stops sending data after
                       receiving the peer's abort.

       Success: IUT correctly reports REMOTE ABORT and stops sending
                data after receiving its peer's reset.

       Failure: IUT does not correctly report its peer's abort. If
                all the data sent is received by the LSD, that
                particular result is inconclusive as all the data
                may be delivered before the Central Driver
                command to abort is received.
                                                            UNISYS Corporation
6 February 1987                   -18-                      TM-WD-8801/206/00


Test 21: MISMATCHED PRECEDENCE
-------
       - Does the Implementation Under Test (IUT) provide the option
         to set a precedence value for the connection and make correct
         hecks of the precedence of incoming segments to the
         connections

       - Action: Remote Driver (RD) passively opens a connection
                 with maximum precedence. Laboratory Slave Driver
                 (LSD) actively opens at a less than maximum
                 precedence and Laboratory Reference Implementation
                 (REF) does not raise its precedence.

       - Verification: Determine that IUT sets the precedence option
                       by checking the segments output by the IUT. Ensure
                       that IUT aborts the connection when REF does not
                       match precedence by looking for TERMINATE: REMOTE
                       ABORT from the LSD or an OPEN FAILURE from the LSD
                       connection.

       Success: IUT sets precedence option and aborts connection
                when peer's precedence does not match.

       Failure: IUT does not set precedence option or makes
                connection when precedence does not match.


Test 22: PRECEDENCE
-------
       - Does the Implementation Under Test (IUT) provide the option
         to set precedence for the connection and make correct checks
         on the incoming segments to the connection?

       - Action: Remote Driver (RD) passively opens a connection
                 with maximum precedence. Laboratory Slave Driver
                 (LSD) actively opens at a less than maximum
                 precedence. The Laboratory Reference Implementation
                 (REF) raises its precedence during the opening
                 handshake.

       - Verification: Determine that the connection is made by
                       checking that the LSD reports an OPEN SUCCESS.
                       Check the IUT segments to ensure that precedence
                       was set.

       Success: The IUT makes the connection and sets-precedence.

       Failure: The IUT does not set precedence or does not make
                the connection even though the REF matched its
                precedence.
                                                            UNISYS Corporation
6 February 1987                   -19-                      TM-WD-8801/206/00


Test 23: PRECEDENCE NEGOTIATION
-------
       - Does the Implementation Under Test (IUT) provide the option
         to set precedence for the connection and raise its precedence
         to match its peer's precedences

       - Action: Laboratory Slave Driver (LSD) passively opens a
                 connection with a given precedence. The Remote
                 Driver opens with a zero precedence.

       - Verification: Determine that the connection is made by
                       checking that the LSD reports an OPEN SUCCESS.
                       Check the IUT segments to ensure that precedence
                       was raised.

       Success: The IUT makes the connection and sets precedence.

       Failure: The IUT does not raise precedence to match the
                precedence of the REF.


Test 24: STATUS
-------
       - Does the Implementation Under Test (IUT) in its status
         response correctly report a connection's source port,
         destination port, destination address, window,
         precedence and states (These fields were selected to
         represent both static and dynamic internal information).

       - Action: The Remote Driver (RD) asks the IUT to give the
                 status of a connection.

       - Verification: Ensure that the status response given matches
                       the true status of the connection.

       Success: The IUT reports the status of the connection
                correctly.

       Failure: The IUT does not report the status of the connection 
                correctly.
                                                            UNISYS Corporation
6 February 1987                   -20-                      TM-WD-8801/206/00


                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC3
---------------

Scenario BASIC3 tests the TCP implementation's ability to maintain
data integrity: out of order data, overlapping data, lost data,
segments with bad checksums and segments with sequence number
wraparound.


________________________________________


Test 25: OUT OF ORDER DATA
       - Can the Implementation Under Test (IUT) correctly handle
         segments which arrive out of order, as indicated by their
         sequence number?

       - Action: The Laboratory Slave Driver (LSD) sends data to the
                 IUT. The Laboratory Reference Implementation (REF)
                 divides the data into segments and outputs them out
                 of order.

       - Verification: Determine if the IUT delivers the data in the
                       correct order.

       Success: The IUT correctly reorders the data.

       Failure: The IUT does not correctly reorder the data.


Test 26: OVERLAPPING DATA
-------
       - Can the Implementation Under Test (IUT) clean up overlapping
         datas

       - Action: The Laboratory Slave Driver (LAB) sends data to the
                 IUT. The Laboratory Reference Implementation (REF)
                 repackages the data for retransmission so that some
                 segments contain both new data and data already
                 sent.

       - Verification: Determine that IUT accepts the data and
                       correctly delivers it.

       Success: The IUT is able to accept the overlapping data and
                deliver it correctly.

       Failure: The IUT does not deliver the data on segments after
                the first arrival or delivers the data incorrectly.
                                                            UNISYS Corporation
6 February 1987                   -21-                      TM-WD-8801/206/00


Test 27: LOST DATA
-------
       - Can the Implementation Under Test (IUT) detect that data is losts

       - Action: The Laboratory Slave Driver (LSD) sends data to the
                 Remote Driver. The Laboratory Reference
                 Implementation (REF) divides the data into several
                 segments and sends data, omitting a segment. The
                 missing segment is not sent until the last segment
                 sent is retransmitted several times.

       - Verification: Determine that the IUT does not acknowledge
                       anything sent after this missing segment until the
                       missing segment is transmitted.

       Success: The IUT does not acknowledge any data received after
                the last correctly ordered segment, until the
                missing segment is sent.

      Failure: The IUT acknowledges data sent after the missing
                segment before the missing segment is sent.


TEST 28: CHECKSUM
-------
       - Does the Implementation Under Test (IUT) detect a segment
         with a bad checksum and discard it? -

       - Action: Laboratory Slave Driver (LSD) sends data to the
                 IUT. The Reference Implementation (REF) sends out
                 a segment with a bad checksum and retransmits it
                 incorrectly several times before transmitting it
                 correctly.

       Verification: Determine that the IUT acknowledges only the
                       segments sent with a good checksum by checking
                       segment data collected by the REF.

       Success: The IUT only acknowledges segments sent with good
                checksums.

       Failure: REF acknowledges segments sent with bad checksums.
                                                            UNlSYS Corporation
6 February 1987                   -22-                      TM-WD-8801/206/00




Test 29: SEQUENCE NUMBER WRAPAROUND
-------
       - Does the Implementation Under Test (IUT) use correct module
         arithmetic when comparing sequence numberss

       - Action: The Laboratory Slave Driver (LSD) sends data to the
                 IUT. The Laboratory Reference Implementation (REF)
                 uses as its initial sequence number a number
                 guaranteed to cause wraparound from 2**32-1 to 0
                 on the data segments.

       - Verification: Determine if the IUT acknowledges all data sent
                       by the REF.

       Success: The IUT acknowledges the data sent by the REF.

       Failure: The IUT does not acknowledge any data sent by the
                REF after the sequence number wraparound occurs.
                                                            UNISYS Corporation
6 February 1987                   -23-                      TM-WD-8801/206/00



                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC4
---------------

Scenario basic 4 test how well the TCP implementation can establish
multiple connections and demultiplex data sent over these connections.
A TCP connection is defined by the source port, source address,
destination port and destination address of the connection. This four
element identification is known as a 4-tuple. This scenario tests by
opening multiple connections with different combinations in the 4
tuple (from the viewpoint of the IUT).

_________________________________________


Test 30: MULTIPLEX DATA OVER 2 CONNECTIONS WITH UNIQUE 4-TUPLES.
-------
       - Can the Implementation Under Test (IUT) correctly deliver
         data sent over two connections it actively opened with no
         4-tuple element in common?

       - Action: The Remote Driver (RD) opens two connections to the
                 Laboratory Slave Driver(LSD). The LSD then sends
                 unique data over each connection.

       - Verification: Determine that the IUT keeps the data sent on
                       each connection separate and delivers it correctly.

       Success: The IUT delivers the data sent over each connection
                correctly.

       Failure: The IUT does not deliver the data sent over each
                connection correctly.
                                                            UNISYS Corporation
6 February 1987                   -24-                      TM-WD-8801/206/00




Test 31: MULTIPLEX OVER 2 CONNECTIONS WITH COMMON DEST.  PORT IN 4-TUPLE.
-------
       - Can the Implementation Under Test (IUT) multiplex data over
         two connections which share a common destination port in
         their 4-tuples.

       - Action: Two connections are opened which have the same
                 destination port on the Laboratory Reference
                 Implementation (REF). The LSD sends unique data
                 over each connection.

       - Verification: Determine that the IUT keeps the data received
                       over connection separate and delivers it correctly.

       Success: The IUT delivers the data sent over each connection
                correctly.

       Failure: The IUT does not deliver the data sent over each
                connection correctly.


Test 32: MULTIPLEX WITH 2 CONNECTIONS HAVING SAME REF SRC PORT IN 4-TUPLES.
-------
       - Can the Implementation Under Test multiplex data over two
         connections that have the same destination port in their
         4-tuples?

       - Action: The Laboratory Slave Driver (LSD) actively opens
                 two connections from the same source port to
                 distinct listening ports on the IUT. The LSD then
                 sends unique data to the Remote Driver (RD) over
                 each,connection.

       - Verification: Determine that all the data sent by the LSD is
                       delivered correctly to the RD.

       Success: All sent data is delivered correctly to the RD.

       Failure: Data is not delivered correctly to the RD.


Test 33: MULTIPLEX DATA OVER 2 CONNECTIONS WITH UNIQUE 4-TUPLES.
-------
       - Can the Implementation Under Test (IUT) correctly deliver
         data sent over two connections that the IUT passively opens,
         that have no 4-tuple elements in commons

       - Action: The Laboratory Slave Driver (LSD) opens two
                 connections to the Remote Driver (RD). The LSD
                 then sends unique data data over each connection.
                                                            UNISYS Corporation
6 February 1987                   -25-                      TM-WD-8801/206/00


       - Verification: Determine that the IUT keeps the data sent on
                       each connection separate and delivers it correctly.

       Success: The IUT delivers the data sent over each connection
                correctly.

       Failure: The IUT does not deliver the data sent over each
                connection correctly.

TEST 34: MULTIPLEX DATA OVER 3 CONNECTIONS WITH SAME SRC PORT IN 4-TUPLE
-------
       - Can the Implementation Under Test (IUT) correctly establish
         connections and demultiplex data when the same IUT source
         port is in the 4-tuple of 3 connectionss

       - Action: The Laboratory Slave Driver (LSD) actively opens 3
                 connections to the same IUT port. The LSD then
                 sends unique data to the Remote Driver (RD) over
                 each connection.

       - Verification: Determine that all three connections are opened
                       and that the all the data sent over each connection
                       is correctly delivered.

       Success: All the data sent over the 3 connections is
                correctly delivered.

       Failure: The data sent over the 3 connections is not
                correctly delivered.


TEST 35: IUT REJECTS DUPLICATE CONNECTION
-------
       - Does the Implementation Under Test (IUT) reject an attempt to
         make a duplicate connection to its listening ports

       - Action: The Laboratory Slave Driver (LSD) actively opens 2
                 connections to the IUT from different ports. LSD
                 then attempts to make a third connection using the
                 same source and destination port used in the second
                 connection.

       - Verification: Determine that IUT resets the original of the
                       duplicate connections, refuses to make the
                       duplicate connection (OPEN FAILURE response
                       received by LSD) and does not enter into the
                       opening handshake for the duplicate connection.

       Success: IUT rejects the duplicate connection and does not
                enter into the opening handshake for that
                connection.

       Failure: The IUT fails to reject the duplicate connection.
                                                            UNISYS Corporation
6 February 1987                   -26-                      TM-WD-8801/206/00


TEST 36: MULTIPLEX DATA OVER CONNECTIONS USING THE SAME SEQUENCE NUMBERS
-------
       - Can the Implementation Under Test (IUT) multiplex data when
         the REF uses the same sequence number on two connections s

       - Action: The Laboratory Slave Driver opens three connections
                 to the IUT and sends unique data over the three
                 connections to the Remote Driver (RD). The
                 Laborory Reference Implementation (REF) ensures
                 that the the TCP segments on two of the connections
                 have the same sequence numbers.

       - Verification: Determine that all the data sent over each
                       connection is correctly delivered to the RD.

       Success: All the data sent over each connection is correctly
                delivered.

       Failure: The data sent over each connection is not correctly
                delivered.


Test 37: IUT'S REFUSAL TO MAKE DUPLICATE CONNECTION
-------
       - Does the Implementation Under Test refuse to make a
         duplicate connection when it is actively opening?

       - Action: The Remote Driver (RD) makes a connection to the
                 Laboratory Slave Driver (LSD). RD then attempts to
                 open a second connection with the same 4-tuple
                 (same source and destination ports).

       - Verification: Verify that the IUT refuses to make the
                       duplicate connection by responding with TCP ERROR:
                       CONNECTION ALREADY EXISTS or SYSTEM ERROR:
                       REQUESTED SOURCE PORT IN USE.

       Success: IUT does not make a duplicate connection and does
                not allocate resources for a duplicate connection.

       Failure: IUT allocates resources for a duplicate connection
                or does not give proper response to the attempt to
                open the duplicate connection.
                                                            UNISYS Corporation
6 February 1987                   -27-                      TM-WD-8801/206/00


                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC5
---------------

Scenario BASIC5 tests the TCP Implementation Under Test (IUT) for
basic and default security. It tests that the IUT:

       - allows the security of the connection to be set by the use
         of parameters in the open service requests

       - rejects a connection request with a wrong security level,

       - aborts the connection if a segment arrives with any mismatch
         of the security option.

Tests 38 through 46 test basic security. Tests 47 through 50 test
default security. Default security checks are those checks which both
classified and unclassified hosts should perform. If the IUT does not
pass Test 38 or Test 39 (the setting of security in the IUT Active
Open and the IUT Passive Open), tests 40 through 46 are not executed.

Test 38: IUT'S ABILITY TO SET SECURITY IN ITS ACTIVE OPEN
-------
       - Is the Implementation Under Test (IUT) able to set security
         in its Active Open s

       - Action: The Remote Driver (RD) opens a connection with the
                 classification and protection parameters supplied
                 for the IUT Active Open. The Laboratory Slave
                 Driver (LSD) opens with the same security in its
                 Passive Open.

       - Verification: Determine if the connection is opened success
                       fully. If the connection is opened, determine that
                       the security parameters have been set correctly.
                       If the open service request does not return an OPEN
                       ID, the response TCP ERROR: SEC/PREC NOT ALLOWED or
                       SYSTEM ERROR: REQUESTED PARAMETER NOT IMPLEMENTED
                       must be found.

       Success: Connection is successfully opened showing that the
                security parameters have been set correctly. If the
                connection is not established the response TCE
                ERROR: SEC/PREC NOT ALLOWED or SYSTEM ERROR:
                REQUESTED PARAMETER NOT IMPLEMENTED is found.

       Failure: Connection is not established and neither the
                response TCP ERROR: SEC/PREC NOT ALLOWED nor SYSTEM
                ERROR: REQUESTED PARAMETER NOT IMPLEMENTED is
                returned from the IUT. Connection is established
                but the parameters have not been set correctly.
                                                            UNISYS Corporation
6 February 1987                   -28-                      TM-WD-8801/206/00


Test 39: IUT'S ABILITY TO SET SECURITY PARAMETERS IN ITS PASSIVE OPEN
-------
       - Is the Implementation Under Test (IUT) able to set security
         in its Passive Open ?

       - Action: The Remote Driver (RD) uses the classification
                 and protection parameters that it is given for an
                 IUT Passive Open. The Laboratory Slave Driver
                 (LSD) sets the same parameters in its Active Open
                 and attempts to open a connection.

       - Verification: Determine that the connection is established.
                       If a connection is opened successfully, then
                       security fields in the TCP segments are checked to
                       make sure that the IUT is setting the security from
                       its input parameter. The Laboratory Reference
                       Implementation (REF) collects these segments. If a
                       connection is not established, check that the IUT
                       open service response returned the response TCP
                       ERROR: SEC/PREC NOT ALLOWED or SYSTEM ERROR:
                       REQUESTED PARAMETER NOT IMPLEMENTED.

       Success: The connection is established. Analysis determines
                that the security parameters were set in the IUT
                Passive Open. Also, the connection is not
                established but the IUT returns either TCP ERROR:
                SEC/PREC NOT ALLOWED or SYSTEM ERROR: REQUESTED
                PARAMETER NOT IMPLEMENTED in response to the open
                service request.

       Failure: Although the connection is established, analysis
                reveals that the IUT is not setting security but
                merely matching peer's security. Also, the
                connection is not established but no proper security
                related response is received to the open service request.


Test 40: IUT'S ABILITY TO SET SECURITY IN ITS SPECIFIED PASSIVE OPEN
-------
       - Is the Implementation Under Test (IUT) able to set security
         in its Specified Passive Opens

       - Action: The Remote Driver (RD) uses the classification
                 CONFID and protection DIA as the parameters for an
                 IUT Passive Open. The Laboratory Slave Driver
                 (LSD) sets the same parameters in its Active Open
                 and attempts to open a connection.

       - Verification: Determine that the connection is established.
                       If a connection is opened successfully, the
                       security fields in the TCP segments are checked to
                       make sure that the IUT is setting security from its
                       input parameter. The Laboratory Reference
                       Implementation (REF) collects these segments. If a
                       connection is not established, check that the IUT
                                                            UNISYS Corporation
6 February 1987                   -29-                      TM-WD-8801/206/00


                       open service reponse returned the response TCP
                       ERROR: SEC/PREC NOT ALLOWED or SYSTEM ERROR:
                       REQUESTED PARAMETER NOT IMPLEMENTED.

       Success: The connection is established and analysis deter
                mines that the security parameters were set in the
                IUT specified passive open. Also, the connection
                is not established but the IUT returns either TCP
                ERROR: SEC/PREC NOT ALLOWED or SYSTEM ERROR:
                REQUESTED PARAMETER NOT IMPLEMENTED in response to
                the open service request.

       Failure: Connection is established but analysis reveals that
                the IUT is not setting security but merely matching
                peer's security. Also, connection is not
                established and no proper security related response
                is received to the open service request.


Test 41: SECURE IUT REJECTS CONNECTION TO UNSECURED PEER
-------
       - Does the secured Implementation Under Test (IUT) reject a
         connection to an unsecured peers

       - Action: The Remote Driver (RD) with security set in its
                 Active Open opens to the Laboratory Reference
                 Implementation (REF). The REF has passively opened
                 without security set.

       - Verification: Check that the IUT returns an OPEN EAILURE and
                       that the connection is not established.

       Success: The IUT successfully gets an OPEN FAILURE.

       Failure: The IUT-fails to get an OPEN FAILURE.


Test 42: SECURE IUT REJECTS CONNECTION ATTEMPT OF UNSECURED PEER
-------
       - Does the secured Implementation Under Test (IUT) reject
         connection attempt of an unsecured host ?

       - Action: Laboratory Slave Driver (LSP) with no security
                 actively opens to the IUT. The IUT has passively
                 opened with security set.

       - Verification: Determine that no connection is established by
                       checking for an OPEN FAILURE response from the
                       Laboratory Reference Implementation (REF).

       Success: The REF gets an OPEN FAILURE or the IUT can not set
                security parameters.

       Failure: The connection is established.
                                                            UNISYS Corporation
6 February 1987                   -30-                      TM-WD-8801/206/00



Test 43: SECURITY OPTION PLACEMENT IN DATA SEGMENTS
-------
       - Is the Implementation Under Test (IUT) consistent in its
         security option placement when sending datas

       - Action: A secure connection is opened. Both the Laboratory
                 Slave Driver (LSD) and the Remote Driver (RD) send data.

       - Verification: Determine that all the data sent by the LSD and
                       the RD is correctly delivered by the other peer.
                       Check the segment information collected by the
                       Laboratory Reference Implementation (REF) to ensure
                       that the correct security was placed on every
                       segment.

       Success: All data is delivered and the security is correctly
                placed on each TCP segment.

       Failure: All data is not correctly delivered or the security
                fields are not correctly placed on every TCP segment.


TEST 44: RESPONSE TO DATA WITH MISMATCHED SECURITY CLASS
-------
       - Does the Implementation Under Test (IUT) reset a connection
         on receiving data with a mismatched security class?

       - Action: A secure connection is established. The Laboratory
                 Slave Driver (LSD) sends data to the Remote Driver
                 (RD). The Laboratory Reference Implementation
                 (REF) places a wrong security class on the data
                 segments.

       - Verification: Determine that the IUT resets the connection by
                       checking that the REF reports REMOTE ABORT. Check
                       that the IUT reports SEC/PREC MISMATCH.

       Success: The IUT resets the connection and reports SEC/PREC
                MISMATCH.

       Failure: IUT fails to reset connection or does not report
                SEC/PREC MISMATCH.
                                                            UNISYS Corporation
6 February 1987                   -31-                      TM-WD-8801/206/00



TEST 45: RESPONSE TO DATA WITH MISMATCHED PROTECTION AUTHORITY
-------
       - Does the Implementation Under Test (IUT) reset a connection
         on receiving data with a mismatched security authority?

       - Action: A secure connection is established. The Laboratory
                 Slave Driver (LSD) sends data to the Remote Driver
                 (RD). The Laboratory Reference Implementation
                 (REF) places an incorrect protection authority on
                 the data segments.

       - Verification: Determine that the IUT resets the connection by
                       checking that the REF reports REMOTE ABORT. Check
                       that the IUT reports SEC/PREC MISMATCH.

       Success: The IUT resets the connection and reports SEC/PREC
                MIS MATCH.

       Failure: IUT fails to reset connection or does not report
                SEC/PREC MISMATCH.


TEST 46: RESPONSE TO DATA WITH AN EXTRA PROTECTION AUTHORITY
-------
       - Does the Implementation Under Test (IUT) reset a connection
         on receiving data with an extra security protection
         authority?

       - Action: A secure connection is established. The Laboratory
                 Slave Driver (LSD) sends data to the Remote Driver
                 (RD). The Laboratory Reference Implementation
                 (REF) places an extra protection authority on the
                 data segments.

       - Verification: Determine that the IUT resets the connection by
                       checking that the REF reports REMOTE ABORT. Check
                       that the IUT reports SEC/PREC MISMATCH.

       Success: The IUT resets the connection and reports SEC/PREC
                MISMATCH.

       Failure: IUT fails to reset connection or does not report
                SEC/PREC MISMATCH.
                                                            UNISYS Corporation
6 February 1987                   -32-                      TM-WD-8801/206/00



TEST 47: USE OF SECURITY OPTION FOR UNCLASSIFIED CONNECTIONS
-------
       - Does the Implementation Under Test (IUT) use the security
         option for unclassified connection ?

       - Action: Laboratory Slave Driver (LSD) does a Passive Open
         with security set. The Remote Driver (RD) does an
         Active Open with no security set.

       - Verification: Check TCP segments collected by the Laboratory
                       Reference Implementation (REF) to determine if IUT
                       uses the security option at a default level for an
                       unsecured connection. Ensure that the connection
                       is not opened by looking for the OPEN FAILURE
                       response from the IUT.

       Observation: IUT does or does not use the security option for
                    unclassified connections.

       Failure: Test connection opened.


TEST 48: RECOGNITION OF UNCLASS AND GENSER AS EQUIVALENT TO UNSECURE
-------
       - Does the unsecured Implementation Under Test (IUT) connect
         with peer with security of UNCLASS and GENSERs

       - Action: Laboratory Slave Driver (LSD) does a passive open
                 with security set to UNCLASS and GENSER. The
                 Remote Driver (RD) does an active open with no
                 security setting.

       - Verification: Determine that the connection is opened by
                       looking for OPEN SUCCESS response from the IUT.

       Success: Connection established.

       Failure: Connection not established.
                                                            UNISYS Corporation
6 February 1987                   -33-                      TM-WD-8801/206/00



TEST 49: UNSECURED IUT RESPONSE TO CONNECTION ATTEMPT BY SECURE HOST
-------
       - Does the IUT with no security reject an Active Open from a
         peer with security sets

       - Action: Remote Driver (RD) does a Passive Open with no
                 security set. The Laboratory Slave Driver (LSD)
                 does an Active Open with security set to CONFID and DIA.

       - Verification: Determine that the IUT rejects the connection
                       by searching for OPEN FAILURE response reported by
                       LSD.

       Success: Connection is not established.

       Failure: Connection established.


TEST 50: UNSECURED IUT RESPONSE TO DATA MARKED WITH CLASSIFIED SECURITY
-------
       - Does the Implementation Under Test (IUT) reset connection
         when finding data marked with security higher than unclassifieds

       - Actions: A connection is established with no security
                 settings. The Laboratory Slave Driver (LSD) sends
                 data to the Remote Driver (RD). The Laboratory
                 Reference Implementation (REF) places a classified
                 security option on a data segment.

       - Verification: Determine that the IUT resets the connection
                       and reports SEC/PREC MISMATCH to the Remote Driver.

       Success: The IUT correctly resets connection on finding
                incorrectly marked security on data.

       Failure: The IUT fails to recognize wrong security marking
                on data and does not reset the connection.
                                                            UNISYS Corporation
6 February 1987                   -34-                      TM-WD-8801/206/00


                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario BASIC6
---------------

Scenario BASIC6 tests the TCP implementation for its ability to
perform the ALLOC service request correctly in the EXPLICIT mode under
control of the Central Driver.

________________________________________

TEST 51: ALLOC
-------
       - Can the Implementation Under Test (IUT) perform the ALLOC
         service request correctly ?

       - Action: Remote Driver (RD) and Laboratory Slave Driver
                 (LSD) establish a connection. The RD instructs the
                 IUT it has allocated a specified buffer size for
                 data. Then the LSD sends data equal to twice that
                 buffer size to the RD.

       - Verification: Determine that the amount of data delivered to
                       the RD by the IUT is not greater than that
                       specified in the ALLOC request. If all the sent
                       data is acknowledged prior to the RD sending
                       another ALLOC, the amount of data delivered must be
                       equal to or less than the buffer size specified in
                       the ALLOC. If it is necessary for the RD to send a
                       second ALLOC for all the sent data to be
                       acknowledged, then results are determined by
                       examining the TCP segments collected by the
                       Laboratory Reference Implementation (REF). The
                       segments are analyzed to make sure that no more
                       data than was specified in the ALLOC was
                       acknowledged before the IUT receive window was set
                       to zero.

       Success: The IUT delivers data equal to or less than the
                ALLOC request.

       Failure: The IUT delivers more data than ALLOC specifies.

       Inconclusive: Analysis cannot be done to determine IUT's performance.
                                                            UNISYS Corporation
6 February 1987                   -35-                      TM-WD-8801/206/00


                  TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario FULL1
--------------

Scenario FULL1 tests the TCP implementation of maximum segment size
option, basic retransmission and ULP timeout.

________________________________________

Test 52: MAXIMUM SEGMENT SIZE OPTION
-------
       - Does the Implementation Under Test (IUT) use the maximum
         segment size (MSS) option and respond correctly to its peer's
         maximum transmission units

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The Laboratory
                 Reference Implementation (REF) places a low MSS on
                 its opening segment. The RD sends data.

       - Verification: Check segment data collected by the REF to see
                       if IUT uses the MSS option. Examine the segment
                       data to see if the IUT sends any data segment with
                       a length greater than the MSS specified by the REF.

       Success: The IUT sends segments which do not exceed the
                maximum segment size specified by the REF.

       Failure: IUT sends segments which exceed the maximum segment
                size specified by the REF.

       Observation: Observation is made as to whether the IUT uses
                    the MSS-option.


TEST 53: RETRANSMISSION AFTER ACKNOWLEDGMENT OF DATA.
-------
       - Does the Implementation Under Test (IUT) stop retransmitting
         promptly after receiving acknowledgment of datas

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 data. The Laboratory Slave Driver (LSD) withholds
                 acknowledgments until it has received several
                 transmissions of the oldest data.

       - Verification: Examine the TCP segments collected by the REF.
                       Count the number of retransmissions of data sent
                       after the data is acknowledged. Ensure that the
                       REF receives no more than two retransmissions after
                       it has acknowledged data.

       Success: The IUT does not retransmit after data is acknowledged.
                                                            UNISYS Corporation
6 February 1987                   -36-                      TM-WD-8801/206/00

       Failure: IUT does not stop retransmitting promptly after
                data is acknowledged.


Test 54: RETRANSMISSION AFTER ACKNOWLEDGMENT OF SYN AND FIN
-------
       - Does the Implementation Under Test (IUT) stop retransmitting
         promptly after its SYN and FIN are acknowledgeds

       - Action: The Laboratory Slave Driver (LSD) actively opens a
                 connection to the Remote Driver (RD). The
                 Laboratory Reference Implementation (REF) withholds
                 acknowledgments of the IUT's SYN segment until it
                 is transmitted several times. Then the RD closes
                 the connection. The REF withholds retransmissions
                 until the IUT's FIN segment is transmitted several times.

       - Verification: Examine the TCP segments collected by the REF.
                       Count the number of times the IUT SYN segment is
                       retransmitted after it is acknowledged. Count the
                       number of times the IUT FIN segment is retrans
                       mitted after it is acknowledged. Ensure that the
                       REF receives no more than two retransmissions after
                       it acknowledges SYN or FIN.

       Success: The IUT does not retransmit its SYN and FIN
                segments after they are acknowledged.

       Failure: The IUT does not stop retransmitting its SYN and
                FIN segments promptly after they are acknowledged.


TEST 55: IMPLEMENTATION OF ULP TIMEOUT SERVICE IN ACTIVE OPEN
-------
       - Does the Implementation Under Test (IUT) implement ULP
         timeout when timeout is specified in its Active Open ?

       - Action: Find the number of retransmissions by the IUT when
                 the IUT's default ULP timeout occurs or when the
                 default timeout of two minutes suggested by
                 MIL-STD 1778 is reached. This is done by opening a
                 connection and having the Remote Driver (RD) send
                 data. The Laboratory Reference Implementation (REF)
                 does not acknowledge the data. When the connection
                 is aborted (or after 2 minutes), check the TCE
                 segments collected by the REF and count the number
                 of retransmissions for one data element. This
                 becomes the default number of retransmissions. The
                 Remote Driver (RD) does an Active Open with a small
                 ULP timeout and a timeout action of terminate set.
                 The RD then sends data. The Laboratory Reference
                 Implementation (REF) withholds acknowledgments.
                 The test continues until the connection terminates
                 or 2 minutes pass.
                                                            UNISYS Corporation
6 February 1987                   -37-                      TM-WD-8801/206/00


       - Verification: Check the TCP segments collected by the REF.
                       Count the number of times a data element is
                       retransmitted. The number of retransmissions must
                       be significantly smaller than the default number of
                       retransmissions.

       Success: IUT implements ULP timeout if it resets the
                connection and the number of data retransmissions
                is significantly smaller than the default number of
                retransmissions.

                 Failure: IUT does not implement ULP timeout. The IUT does
                not reset the connection or, if the connection is
                reset, the number of IUT retransmissions indicate
                that the abort was caused by the TCP default rather
                than the prescribed ULP timeout.


TEST 56: IMPLEMENTATION OF ULP TIMEOUT SERVICE IN SEND
-------
       - Does the Implementation Under Test (IUT) implement ULP
         timeout when timeout specified in its Sends

       - Action: The Remote Driver (RD) and the Laboratory Slave
                 Driver (LSD) establish a connection. The RD sends
                 data with a small ULP timeout and a timeout action
                 of terminate set. The Laboratory Reference
                 Implementation (REF) withholds acknowledgments.
                 The test continues until the connection terminates
                 or 2 minutes pass.

       - Verification: Check the TCP segments collected by the REF.
                       Count the number of times a data element is
                       retransmitted. The number of retransmissions must
                       be significantly smaller than the default number
                       of retransmissions (determined in Test 55).

       Success: IUT implements ULP timeout if it resets the
                connections and the number of data retransmissions
                is significantly smaller than the default number of
                retransmissions.

       Failure: IUT does not implement ULP timeout. The IUT does
                not reset the connection or, if the connection is
                reset, the number of IUT retransmissions indicate
                that the abort was caused by the TCP default rather
                than the prescribed ULP timeout.
                                                            UNISYS Corporation
6 February 1987                   -38-                      TM-WD-8801/206/00


TEST 57: IMPLEMENTATION OF ULP TIMEOUT SERVICE IN PASSIVE OPEN
-------
       - Does the Implementation Under Test (IUT) implement ULP
         timeout when timeout specified in its Passive Opens

       - Action: The Remote Driver (RD) does a Passive Open with a
                 ULP timeout set. The Laboratory Slave Driver (LSD)
                 performs an Active Open and a connection is
                 established. The RD then sends data. The
                 Laboratory Reference Implementation (REF) withholds
                 acknowledgments. The test continues until the
                 connection terminates or 2 minutes pass.

       - Verification: Check the TCP segments collected by the REF.
                       Count the number of times a data element is
                       retransmitted. The number of data retransmissions
                       must be significantly smaller than the default
                       number of retransmissions (determined in Test 55).

       Success: IUT implements ULP timeout if it resets the
                connections and the number of data retransmissions
                is significantly smaller than the default number of
                retransmissions.

       Failure: IUT does not implement ULP timeout. The IUT does
                not reset the connection or, if the connection is
                reset, the number of IUT retransmissions indicate
                that the abort was caused by the TCP default rather
                than the prescribed ULP timeout.


TEST 58: IMPLEMENTATION OF ULP TIMEOUT NOTIFY SERVICE
-------
       - Does the Implementation Under Test (IUT) implement a ULP
         timeout where the timeout action is notifys

       - Action: The Remote Driver (RD) does an Active Open with an
                 ULP notify timeout set and establishes a
                 connection with the Laboratory Slave Driver (LSD).
                 The RD sends data. The Laboratory Reference
                 Implementation (REF) withholds acknowledgments on
                 the data. The test continues until the connection
                 terminates or 2 minutes pass.

       - Verification: Check that the RD reports the TCP ERROR message
                       ULP NOTIFY

       Success: IUT implements ULP notify.

       Failure: IUT does not implements ULP notify.
                                                            UNISYS Corporation
6 February 1987                   -39-                      TM-WD-8801/206/00


                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario FULL2
--------------

Tests the TCP implementation of zero window, urgent data, and pushed
data.

------------------------------------------

Test 59: RESPONSE TO ZERO WINDOW
-------
       - Does the Implementation Under Test (IUT) correctly respond to
         a peer's zero windows

       - Action: A connection is established between the Laboratory
                 Slave Driver (LSD) and the Remote Driver (RD).
                 The RD sends data to the LSD. The Laboratory
                 Reference Implementation (REF) acknowledges the
                 first data segment but announces a zero window in
                 this acknowledgment.

       - Verification: Check the TCP segments collected by the REF
                       for the amount of data sent by the IUT while the
                       REF had a zero window. The IUT should not send
                       more than one byte of data while the REF has a
                       zero window.

       Success: The IUT sends no segment of-length greater than 1
                while its peer has a zero window.

       Failure: The IUT sends a segment of length greater than 1
                while its peer has a zero window.


TEST 60: IMPLEMENTATION OF URGENT SERVICE
-------
       - Does the Implementation Under Test (IUT) set the urgent flag
         and urgent pointer when requested to send urgent datas

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 urgent data to the LSD.

       - Verification: Check the TCP segment information collected by
                       the Laboratory Reference Implementation (REF) to
                       ensure that the IUT sets the urgent flag on every
                       segment of the data. Also check that the value of
                       the urgent pointer on these segments equals the
                       amount of urgent data that exists between the
                       first sequence number of the segment to the end of
                       the urgent data.
                                                            UNISYS Corporation
6 February 1987                   -40-                      TM-WD-8801/206/00


       Success: The IUT correctly sets the urgent flag and urgent
                pointer on urgent data.

       Failure: The IUT does not set the urgent flag or urgent
                pointer correctly on urgent data.


Test 61: URGENT SERVICE WHEN PEER HAS ZERO WINDOW
-------
       - Does the Implementation Under Test (IUT) handle urgent
         correctly when its peer has a zero window s

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 normal data and then urgent data to the LSD. The
                 Laboratory Reference Implementation (REF) sets its
                 receive window to zero when it acknowledges the
                 first IUT segment. The REF opens its window again
                 later in the data transfer.

       - Verification: Check the TCP segments collected by the REF.
                       Ensure that IUT sends segment while the REF is
                       showing a zero window with the urgent flag set,
                       the value of the urgent pointer set to the number
                       of bytes of urgent data to be sent, and a length
                       no longer than 1.

       Success: The IUT sends one byte probe segmensts and sets
                the urgent flag and urgent pointer correctly in them.

       Failure: The IUT does not send one byte probe segments
                although urgent data is present, or it does not
                set the urgent flag or urgent pointer correctly in
                the probe segments it sends.


Test 62: DIFFERENTIATION BETWEEN URGENT AND NON-URGENT DATA
-------
       - Is the Implementation Under Test (IUT) able to deliver urgent data?

       - Action: To make sure that the IUT can differentiate and
                 deliver urgent and non-urgent data. The Laboratory
                 Slave Driver (LSD) and the Remote Driver (RD)
                 establish a connection. The LSD sends 1 byte of
                 urgent data to the RD. It then sends the RD some
                 bytes of non-urgent data.

       - Verification: Evaluate the DELIVER responses from the RD.
                       The urgent data must be delivered in a separate
                       DELIVER from the non-urgent data.
                                                            UNISYS Corporation
6 February 1987                   -41-                      TM-WD- 801/206/00


       Success: The RD DELIVER responses show the 1 byte of urgent
                data delivered separately from the subsequent non
                urgent data.

       Failure: The RD DELIVER responses do not show the 1 byte of
                urgent data delivered separately from the
                subsequent non-urgent data.


Test 63: PUSH SERVICE WHEN NOT REQUESTED
-------
       - Does the Implementation Under Test (IUT) push data when not
         requested to do so?

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 data to the LSD. lt does not request that the
                 data be pushed.

       - Verification: Examine the TCP segments collected by the REF.
                       The Push flag should not be set on any segments
                       sent by the IUT except possibly the last data
                       segment. (It is permissible for the IUT to set a
                       push flag on the very last data segment sent).

       Success: The IUT correctly does not push any data or IUT
                only pushes the last data segment.

       Failure: The IUT incorrectly sets push flags on data not
                requested to be pushed.


Test 64: PUSH SERVICE ON REQUEST
-------
       - Is the Implementation Under Test (IUT) able to push data on
         requests

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 some bytes of data with a push indication. It
                 then sends data without the push indication.

       - Verification: Examine the TCP segments collected by the
                       Laboratory Reference Implementation (REF). The
                       first data segment the IUT sends should have the
                       push flag set and should contain at least the
                       number of bytes of data sent with the push
                       indication. The only other segment which could
                       have a valid push flag is the last data segment.

       Success: The IUT correctly sets push flag only on pushed
                data and possibly the last data segment.

       Failure: The IUT fails to set push flag on pushed data or
                sets push flag on unpushed data.
                                                            UNISYS Corporation
6 February 1987                   -42-                      TM-WD-8801/206/00


       Observation: The IUT allows it Upper Level Protocol to
                    request rather than command push service. This
                    observation is made when the segment with the push
                    flag carries more than the pushed data.
                                                            UNISYS Corporation
6 February 1987                   -43-                      TM-WD-8801/206/00


                 TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario FULL3
--------------

Tests whether the TCP implementation does correct reset processing.
It tests the common reset conditions.

________________________________________


Test 65: RESPONSE TO CONNECTION REFUSAL
-------

       - Does the Implementation Under Test (IUT) respond correctly to
         connection refusals

       - Action: The Remote Driver (RD) actively opens. There is
                 no listening process at the destination port of
                 its Active Open.

       - Verification: Determine that the RD receives an OPEN FAILURE
                       response from the IUT.

       Success: The IUT reports an OPEN FAILURE.

       Failure: The IUT does not report an OPEN FAILURE .


Test 66: PARTIAL RESET PRIOR TO CONNECTION ESTABLISHMENT
-------
       - Does the Implementation Under Test (IUT) continue listening
         after receiving a reset during connection
         establishments

       - Action: The Remote Driver (RD) initiates a Passive Open.
                 The Laboratory Slave Driver (LSD) actively opens.
                 On receipt of the IUT's SYN ACK, the Laboratory
                 Reference Implementation (REF) resets the
                 connection. The LSD attempts to open the
                 connection again.

       - Verification: Determine that the LSD reports an OPEN SUCCESS
                       response from the REF on the second connection.

       Success: The second connection is established.

       Failure: The second connection cannot be established.
                                                            UNISYS Corporation
6 February 1987                   -44-                      TM-WD-8801/206/00


Test 67: RESPONSE TO RESET RCVD WHILE SENDING DATA OVER CONNECTION
-------
       - Does the IUT abort with the correct responses when its peer
         aborts while the IUT is sending data over a connections

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The RD sends
                 data. When the Laboratory Reference Implementa
                 tion (REF) receives the first IUT data segment,
                 the REF resets the connection.

       - Verification: Determine that after the reset, the RD reports
                       the response TERMINATE: REMOTE ABORT from the IUT
                       and the LSD reports the response TERMINATE:
                       SERVICE FAILURE from the REF.

       Success: The correct TERMINATE responses are reported from
                the IUT and the REF.

       Failure: The correct TERMINATE responses are not received
                from the IUT and the REF.


TEST 68: RESET FORMAT RESPONDING TO ACTIVE OPEN WITHOUT LISTENING PORT
-------
       - Does the Implementation Under Test (IUT) send a correct reset
         segment on receipt of a SYN for a non-existent ports

       - Action: The Laboratory Slave Driver (LSD) initiates an
                 Active Open to a port on the IUT without a
                 listening process.

       - Verification: Check the TCP segments collected by the
                       Laboratory Reference Implementation (REF). The
                       IUT reset segment must have the format: sequence
                       number = 0, acknowledgment number = the sequence
                       number of the REF's SYN(segment<s+1>s),and the ACK and
                       RESET flags set.

       Success: IUT uses correct reset segment format.

       Failure: The IUT uses incorrect reset segment format.
                                                            UNISYS Corporation
6 February 1987                   -45-                      TM-WD-8801/206/00



TEST 69: RESET FORMAT RESPONDING TO ACTIVE OPEN WITH DATA WITHOUT
-------  LISTENING PORT
       - Does the Implementation Under Test (IUT) send a correct reset
         when it receives the SYN of an Active Open with Data for a
         non-existent ports

       - Action: The Laboratory Slave Driver (LSD) initiates an
                 Active Open with Data to a port on the IUT
                 without a list process.

       - Verification: Check the TCP segments collected by the
                       Laboratory Reference Implementation (REF). The
                       IUT reset segment must have the format: sequence
                       number = 0; acknowledgment number = the sequence
                       number of the last byte of data on the REF's syn
                       segment, and the ACK and RESET flags set. If the
                       IUT has not passed the Active Open with Data test,
                       the reset segment must have the expected format of
                       Test 68.

       Success: IUT uses correct reset segment format.

       Failure: IUT uses incorrect reset segment format.


TEST 70: RESET FORMAT ON RECEIPT OF INVALID SEGMENT WITH ACK SET
-------
       - Does the Implementation Under Test (IUT) send the correct
         reset format on receiving a segment with ACK set for a
         non-existent port?

       - Action: The Laboratory Slave Driver (LSD) initiates an
                 Active Open to a port on the IUT without a
                 listening process. The Laboratory Reference
                 Implementation (REF) omits the SYN from its
                 initial segment but sets the acknowledgment flag
                 and puts a value in the acknowledgment number.

       - Verification: Check the TCP segments collected by the
                       Laboratory Reference Implementation. The IUT's
                       reset must have the format: sequence number =
                       acknowledgment number on the REF's initial
                       segment, and the RESET flag set. The ACK flag
                       must not be set.

       Success: IUT uses correct reset segment format.

       Failure: The IUT uses incorrect reset segment format.
                                                            UNISYS Corporation
6 February 1987                   -46-                      TM-WD-8801/206/00


TEST 71: RESET FORMAT ON RECEIPT OF INVALID SEGMENT WITH SYN AND ACK SET
-------
       - Does the Implementation Under Test (IUT) send a correct reset
         on receiving a SYN segment with ACK set for a port in LISTEN
         state?

       - Action: The Remote Driver (RD) does a Passive Open. The
                 Laboratory Slave Driver (LSD) does an Active Open.
                 The Laboratory Reference Implementation (REF)
                 places an acknowledgment on its SYN segment.

       - Verification: Determine that no connection is established.
                       Check that an OPEN FAILURE is reported from the
                       REF. If the connection attempt correctly fails,
                       check the TCP segments collected by the REF. The
                       IUT reset must have the following format: sequence
                       number = acknowledgment number on the REF's
                       initial segment, and the RESET flag set. The ACK
                       flag must not be set.

       Success: IUT resets and uses correct reset format.

       Failure: The IUT establishes connection after receiving
                invalid SYN segment or the IUT uses incorrect
                reset segment format.


Test 72: NO RESET ON RECEIPT OF SEGMENT WITH BAD ACK
-------
       - Does the Implementation Under Test (IUT) erroneously perform
         a reset on receiving a segment with a bad acknowledgment number?

       - Action: The Laboratory Slave Driver (LSD) and the Remote
                 Driver (RD) establish a connection. The LSD sends
                 data to the the RD. The Laboratory Reference
                 Implementation (REF) places an incorrect
                 acknowledgment number on an outgoing segment. The
                 REF retransmits the bad segment three times and
                 then corrects it.

       - Verification: Determine that the IUT does not terminate the
                       connection. If the connection is not terminated,
                       check the TCP segments collected by the REF to
                       determine that the IUT has transmitted empty
                       acknowledgments. These acknowledgments must have
                       the format: sequence number = IUT's current
                       segment sequence number, acknowledgment number =
                       the sequence number of the REF's segment (not
                       incremented to acknowledge any of the data on the
                       bad segment) and the ACK flag set.
                                                            UNISYS Corporation
6 February 1987                   -47-                      TM-WD-8801/206/00


       Success: The IUT sends empty acknowledgments until it
                receives the corrected segment. The connection is
                not reset.

       Failure: The IUT resets the connection on receiving the bad
                data segment or the IUT acknowledges data segments
                with bad acknowledgment number.
                                                            UNISYS Corporation
6 February 1987                   -48-                      TM-WD-8801/206/00


                    TCP SCENARIOS AND TEST DESCRIPTIONS

Scenario QUAL1
--------------

QUAL1 tests the TCP implementation to determine how many TCE
it is able to provide. The scenario tests up to 145

____________________________


Test 73:  NUMBER OF TCP CONNECTIONS RESOURCES CAN SUPPORT
-------
       - Determine the maximum number of TCP connections provided by
         the Implementation Under Test(IUT).

       - Action: The Laboratory Slave Driver (LSD) performs 12
                 passive opens. The Remote Driver (RD) is
                 instructed to consecutively open 12 active
                 connections to each of these ports until it runs
                 out of resources.

       - Verification: Count every connection where an OPEN SUCCESS
                       is the response received on the IUT Active Open
                       Request. When the response TCP ERROR:
                       INSUFFICIENT RESOURCES is found or 144 connections
                       are opened, the test is ended. The total number
                       of connections the IUT can support equals the
                       number of connections the RD has opened plus the
                       connection for the command channel.

       Observation: The total number of connections the IUT is able
                    to support is noted. If the IUT is able to
                    support more than 145 connections (it does not run
                    out of resources), this observation is noted.

Retour en haut de la page
Docs.mandragor.org - Version 1.0