Data packet format
``SPXII data packet''
shows the fields and values of an SPXII data packet.
The value in the Length field reflects the actual size of
the data packet. A data packet can vary from an SPXII
header alone to an SPXII header plus the maximum
negotiated data size (for a range of total packet size
of 576 to 65,535 bytes).
The ACK bit in the Connection Control field is
optional. For NetWare in a UNIX® environment, the
SPXII driver sets the ACK bit when
any of the following conditions occur:
-
The packet has the EOM bit set in Connection Control field.
-
No more data is currently on the Streams write queue.
-
This packet fills the receiver's last available buffer
(according to the window size in the receiver's last ACK).
The Sequence Number field tracks the number of data
packets the sender has transmitted.
The first data packet has a sequence of zero.
Once the driver has placed that packet on the sending queue,
the driver increments the count so that the next data
packet will have a sequence number of 1.

SPXII data packet
The Acknowledge Number field tracks the number of data
packets the sender has received from the other endpoint.
It is incremented on the reception of a packet and
contains the value of the sequence number expected
in the next data packet.
For example, the Acknowledge Number field would have
the following values under the described conditions:
- 0
-
No data packets have been sent by the other endpoint.
- 4
-
Four data packets have been sent by the other endpoint
(0,1,2,3) and the next data packet to arrive will have
a Sequence Number of 4.
The Allocation Number indicates the current receive
window size of the sender. Actual window size is
calculated by subtracting the acknowledge number
from the allocation number and adding one: (Alloc# - Ack#) + 1.
© 1999 The Santa Cruz Operation, Inc. All rights reserved.
UnixWare 7 Release 7.1 - 19 March 1999