Date: 24 July 2017 / Version: 1.0 / Status: Experimental
This document specifies a mechanism for using block count to determine end of transmission. This gives a more accurate measure than the current mechanism and thus enables faster turnaround.
This document is part of the STANAG 5066 Extension Protocol (S5066-EP) series. The complete set of documents in the series are:
- STANAG 5066 Extension Protocol Index (S5066-EP1)
- STANAG 5066 Padding DPDU (S5066-EP2)
- Pipelining the CAS 1 Linking Protocol (S5066-EP3)
- Data Rate Selection in STANAG 5066 for Autobaud Waveforms (S5066-EP4)
- STANAG 5066 Large Windows Support (S5066-EP5)
- Slotted Option for STANAG 5066 Annex K (S5066-EP6)
- Advertising Extended Capabilities (S5066-EP7)
- Block Based EOTs (S5066-EP8)
- Compact Acknowledgement (S5066-EP9)
- Extension DPDU (S5066-EP10)
- Variable C_PDU Segment Size (S5066-EP11)
Optimizing turnaround time is important for HF performance:
- By reducing turnaround time, the time not transmitting data is minimized and so throughput is maximized.
- To obtain good link utilization and maximize throughput, transmit times need to be significantly longer than turnaround times. As a consequence, long transmit times will lead to high latency, which is undesirable for some applications.
The whitepaper [Reducing Turnaround Times in STANAG 5066] shows how turnaround times can be reduced to 150-200 milliseconds. The current EOT mechanism is not sufficiently accurate to support this speed of turnaround in many situations.
2. Current Mechanism
Each STANAG 5066 DPDU contains an EOT (End of Transmission) byte that indicates in half second intervals the time remaining until the end of transmission. This limits STANAG 5066 transmissions to 127.5 seconds. Zero is a special value for broadcast and duplex transmissions which are not terminated.
Use of the EOT mechanism means that if a receiver loses the end of the transmission signal, it can still determine the end of transmission time based on information received in an earlier part of the transmission.
The EOT value is inserted by the sender at the start of each DPDU, reflecting the end of transmission from the start of the DPDU rounded up to the nearest 0.5 seconds. This means that for a single DPDU, the actual end of transmission can be up to 500 milliseconds earlier than the calculated point. Where there are multiple DPDUs, accuracy may be improved by analysis of each DPDU.
The level of inaccuracy this introduces will prevent achieving turnaround times of order 150-200 milliseconds, which could be achieved if there was a better EOT estimate.
This is particularly important in the common situation of optimizing throughput for a data flow in one direction. The acknowledgement (which may well just be 20 bytes of data) can be fitted into an ultra-short interleaver of 100 milliseconds and transferred at a conservatively slow rate to minimize risk of data loss. The current EOT mechanism will not support quick switching here.
3. Block Based Mechanism
Modern waveforms send data in blocks, with block length determined by an interleaver length. This can vary from 100 milliseconds to 10 seconds, noting that longer interleavers are generally considered preferable for data transfer.
This specification uses the EOT as a block counter, to enable the receiver to determine the last block of transmission. This will give the receiver a more precise fix on the end of transmission time, and thus enable faster switching.
EOT values are specified as follows:
|0||Broadcast/Duplex (no change)|
|1||The last block|
|2-254||Number of blocks remaining. For example "2" references the second to last block.|
|255||An earlier block. This allows transfers of more than 254 blocks.|
There may be multiple DPDUs in a block, and so EOT values will not necessarily change between DPDUs. Were a DPDU is split over multiple blocks, the EOT value represents the block in which the DPDU starts. The start is chosen, as it is desirable to get a fix onto a specific block as early as possible, as a node may wish to initiate transfer before all data is received in order to minimize turnaround time. Once a specific block has been identified, the end of transmission time can be accurately calculated.
Note that this mechanism requires that the receiver knows the waveform, speed and interleaver length for each transmission.
This mechanism enables transmissions of longer than the current 127.5 second limit. This may be done, although this specification is designed to enable shorter transmissions in most situations.
This specification provides a mechanism to support transmissions of more than 254 blocks, noting the EOT can only be calculated based on the last 254 blocks. It is anticipated that most transmissions will be less than 254 blocks.
This mechanism shall only be used where the sender knows that the receiver supports this specification, either by a priori knowledge or by use of the Extended Capability EOW specified in S5066-EP7. It is important that both ends know that the same mechanism is being used, as in general it is not possible to determine the current mechanism in use.
4. Backwards Compatibility
This specification is not backwards compatible. Use of the Extended Capability EOW specified in S5066-EP7 ensures that this specification will only be used between implementations that support it.