ASTi Logo

Application Note

PDU Timeouts on the DIS Network (#86)

In ASTi systems the PDU timeout field determines the maximum period of time (assuming no other parameter changes) between the issuance of the next transmitter PDU.

A radio with a stationary position and no other changing parameters, should issue a PDU on the timeout period, if the timeout is set to 5 seconds, you should get a PDU every 5 seconds.

Note this is subtly different from the time the PDU is considered valid, and the timeout is not a validity period at all. In fact, the PDU does not contain any information related to the timeout period (in other words there is NOT a field in the PDU that contains this timeout value). All simulators on the network must coordinate the understanding of the PDU timeout.

The reason Transmitter PDUs are sent on this timeout is to ensure a new network participant gets the current information for the state of the network (otherwise a new player would not see a Transmitter PDU from any radios until they changed state or moved a distance greater than their position delta (which also forces issuance of a Transmitter PDU).

So let's examine the following conditions:

Condition 1

System A has a transmitting radio with the PDU Timeout set to 5 seconds. System B has a receiving radio with the PDU Timeout set to 5 seconds.

Radio A pumps out a PDU every 5 seconds, and Radio B is updated to receive the TX, everything is good.

Condition 2

System A has a transmitting radio with the PDU Timeout set to 10 seconds. System B has a receiving radio with the PDU Timeout set to 5 seconds.

Radio A pumps out a PDU every 10 seconds, and Radio B sees the initial "ON_TX" PDU update, and adds Radio A to its list of known transmitters and initializes it's 'valid timer' for this radio.

The 'valid timer' uses a value of 3xPDU Timeout so equals 15 seconds (remember this is the LOCAL System B timeout, this system knows nothing about System A). The timer starts to decrement the timer down.

Then 10 seconds later Radio A issues another PDU, so the 'valid timer' had decremented down to a value of 5, and is now reset back to 15. Reception is uninterrupted.

Condition 3

System A has a transmitting radio with the PDU Timeout set to 30 seconds. System B has a receiving radio with the PDU Timeout set to 5 seconds.

Radio A pumps out a PDU every 30 seconds, and Radio B sees the initial "ON_TX" PDU update, and adds Radio A to its list of known transmitters and initializes it's 'valid timer' for this radio.

The 'valid timer' uses a value of 3xPDU Timeout so equals 15 seconds (remember this is the LOCAL System B timeout, this system knows nothing about System A). The timer starts to decrement the timer down.

The timer decrements every second and after 15 seconds reaches a value of 0 (zero), and considers Radio A to have expired and no longer valid. The reception is disabled.

Another 15 seconds later, Radio A issues another PDU (for a total timeout of 30 seconds), the 'valid timer' is now reset back to 15 and reception is restarted.

The radio will be received for 15 seconds, and then shut off for 15 seconds, and then on for 15 seconds, etc. This is normal behavior. The solution is to ensure that all systems on the network are no more than a factor of 3 different in terms of PDU timeout.

In conclusion, if someone wants to use 30 seconds as a timeout, the minimum timeout for any system out on the network is 10 seconds, and the valid range is always MaxTimeout. If someone used 60 seconds, it would have valid timeouts of 20 through 60 seconds on the network. Anyone using a timeout of less than 20 seconds will drop the radios from the system with 60 seconds.

Timeout Settings in Telestra

In Telestra, the DIS init parameters are located in the Project's Domain. Open the Project and ensure that the Domain is connected to the Telestra server in the Layout. In the left column of the Project Manager, expand the Domain folder. You may have more than one Domain in your Project, select the Domain connected to the Telestra server. Select the Parameters file to view the DIS init parameters. To make changes to the file select to 'Edit File'.

DACS PDU Timeout Screen

Timeout Settings in DACS

Domain Parameters