SAC-PSG-CIGI Archives

December 2016

SAC-PSG-CIGI@DISCUSSIONS.SISOSTDS.ORG

Options: Use Monospaced Font
Show HTML Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Roland Humphries <[log in to unmask]>
Reply To:
SAC-PSG-CIGI <[log in to unmask]>
Date:
Wed, 21 Dec 2016 11:04:17 -0500
Content-Type:
text/plain
Parts/Attachments:
text/plain (17 lines)
I've recently been trying to improve the extrapolation when running an asynchronous IG setup and while I can determine latencies in the packet processing in the IG and I assume a fixed transport delay there is currently no way within the CIGI protocol to determine the age of the data from the host.
IG Control currently provides a timestamp that indicates the simulation time for the following data but without additional time synchronisation between the IG and host there is no way of determining the age of that timestamp on the IG, e.g.
- host calculates entity positions at time T
- host sends first part of CIGI message at time T+3ms
- IG receives first part of message at time T+3.1ms
- IG starts next frame at time T+14ms
- to determine simulation time for frame rendering the 14ms age needs to be determined, the 3ms part cannot be known by the IG unless part of the data transport

My current solution is to add an extension packet that only contains the host data age, this is placed immediately after the ig control message so I can calculate my position updates inline with the command processing. The way I'd prefer to do it would be to add the age directly to the IG control packet (there's already a 32-bit reserved hole available, we could encode a 16-bit value into 0.1ms units or something to reduce size) and update that part of the packet in the send buffer immediately before sending.

Apologies for the lengthy description, finally my question is: should the time of send / host age be something that we leave to the data transport (and therefore in the best practice guide) or added to IG Control such that any IG can correctly determine the timestamp age? Or do we ignore the whole thing and assume that everyone will implement some kind of high precision time service?

########################################################################

To unsubscribe from the SAC-PSG-CIGI list, click the following link:
https://discussions.sisostds.org/index.htm?SUBED1=SAC-PSG-CIGI&A=1

ATOM RSS1 RSS2