[Opensim-dev] Continual object update resends if acks are missed

Melanie melanie at t-data.com
Wed Oct 12 06:09:26 UTC 2011


It may be that the update is sent with a new sequence number. The
update resending should work by either removing the newer update
from the queue entirely and resending the packet using the old
sequence number until acked or just resend the packet as is, leaving
the newer updates in the queue.

The viewer might not like too many sequence numbers missed, it does
spit warnings when packet sequence numbers are not ok.

Melanie

On 12/10/2011 07:43, Mic Bowman wrote:
> We should collect more information on what is actually happening. The old
> behavior was to resend infinitely (and very badly). It would send old
> updates even when there were new updates for the same object. We changed the
> resend to transmit the current data rather than old data. If there are still
> no acks coming back after some time then we need to figure out what the
> viewer is expecting & when it no longer acks packets.
> 
> There is a write up on the procedure in an old email message on this list.
> 
> --mic
> 
> 
> On Tue, Oct 11, 2011 at 3:55 PM, Justin Clark-Casey <
> jjustincc at googlemail.com> wrote:
> 
>> Hi dslake (since this is chiefly addressed to you :)
>>
>> In commit b5ab33b5 back on Wednesday 20th April 2011, you made a change so
>> that the resend of object updates or property updates is threaded back
>> through Resend methods on LLClientView rather than the normal resend within
>> UDPServer.
>>
>> The normal resend only performs the resend once, while going through the
>> LLClientView.Resent*() methods will continually attempt the resend until
>> acked as they put the requests back on the m_entityUpdates/m_entityProps
>> queue.
>>
>> From my experience, often the client will not reack such packets.  This
>> means that they are continuously resent until the client logs out.  I can
>> see this happening by uncommenting the log lines in LLClientView.**ResendPrimUpdates()
>> and ResentPropertyUpdates().  This is chiefly seen on remote regions (I
>> can't repro on a localhost).
>>
>> What do you think?  Can we resend such packets just once?
>>
>> Thanks,
>>
>> --
>> Justin Clark-Casey (justincc)
>> http://justincc.org/blog
>> http://twitter.com/justincc
>> ______________________________**_________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/**mailman/listinfo/opensim-dev<https://lists.berlios.de/mailman/listinfo/opensim-dev>
>>
> 
> 
> 
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev



More information about the Opensim-dev mailing list