Difference between revisions of "StartPingCheck"

From Second Life Wiki
Jump to navigation Jump to search
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{ProtocolNav|parent:Category:Common Messages}}
{{ProtocolNav|parent:Category:Common Messages}}
{{ProtocolNav}}
==Message Layout==
==Message Layout==
<pre width=80>
<pre width=80>
{
{
         StartPingCheck High NotTrusted Unencoded
         StartPingCheck High 1 NotTrusted Unencoded
         {
         {
                 PingID Single
                 PingID Single
                 {      PingID  U8      }
                 {      PingID  U8      }
                 {      OldestUnacked  U32    }       // Current oldest "unacked" packet on the sender side
                 {      OldestUnacked  U32    }
         }
         }
}
}
</pre>
</pre>
==Usage and Notes==
==Usage and Notes==
*Used to measure circuit ping times
* Used to measure circuit ping times.
*PingID is used to determine how backlogged the ping was that was returned (or how hosed the other side is)
* PingID is increased by 1 each time StartPingCheck is sent by the source.
** After 255, PingID rolls over to 0.
** The recipient is expected to respond with [[CompletePingCheck]] and return this PingID back to the source.
* OldestUnacked is simply the sequence number (see [[Packet Layout]]) of the most recent message sent by the source (excluding this packet), regardless of whether that message was sent reliably.
** It is stored as little-endian.
 
For example, the following packet (hex data) is the 88th ping, with the last unacked message being sequence number 1364.
<pre>00 00 00 05 55 00 01 58 54 05 00 00</pre>
 


[[Category:Common Messages]]
[[Category:Common Messages]]
[[Category:Messages]]
[[Category:Messages]]

Latest revision as of 23:24, 18 September 2024

Message Layout

{
        StartPingCheck High 1 NotTrusted Unencoded
        {
                PingID Single
                {       PingID  U8      }
                {       OldestUnacked   U32     }
        }
}

Usage and Notes

  • Used to measure circuit ping times.
  • PingID is increased by 1 each time StartPingCheck is sent by the source.
    • After 255, PingID rolls over to 0.
    • The recipient is expected to respond with CompletePingCheck and return this PingID back to the source.
  • OldestUnacked is simply the sequence number (see Packet Layout) of the most recent message sent by the source (excluding this packet), regardless of whether that message was sent reliably.
    • It is stored as little-endian.

For example, the following packet (hex data) is the 88th ping, with the last unacked message being sequence number 1364.

00 00 00 05 55 00 01 58 54 05 00 00