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

Justin Clark-Casey jjustincc at googlemail.com
Wed Oct 12 12:56:53 UTC 2011


Yes, I may not have the correct cause in my original e-mail but I'm certainly seeing a lot of resends that never appear 
to stop.  The effect is not consistent - sometimes I can log in to the remote sim and there will be no continuous 
resend.  But most of the time a large proportion of updates appear to be continuously resent.

I'm surprised no-one else has reported it though I did see a lot of continuous updating on Wright Plaza @ osgrid.org 
last night, which I don't think is related to changes made by scripts.  Perhaps it's only really noticeable if you start 
looking, have visual object updates development/advanced settings on in a viewer or are wondering why viewer received 
packets keeps spiking.

As far as I can see from LLClientView/LLUDPServer, both prim and property updates resends are happening but I need to 
study the code more closely and possibly old e-mails.

I hope to do some more analysis later on today and be around on IRC.

On 12/10/11 09:20, Lake, Dan wrote:
> Thanks for the additional info on this, Melanie. You are correct that the resend should get a new sequence number and that old updates for an object will no longer get sent when there is a newer update to send. Properties and updates are handled almost the same but different code. I'll look it over with Mic in the morning so I understand what is going on.
>
> ~Dan
>
>
> -----Original Message-----
> From: opensim-dev-bounces at lists.berlios.de [mailto:opensim-dev-bounces at lists.berlios.de] On Behalf Of Melanie
> Sent: Tuesday, October 11, 2011 11:22 PM
> To: opensim-dev at lists.berlios.de
> Subject: Re: [Opensim-dev] Continual object update resends if acks are missed
>
> It appears this mechanism has already been removed for prim updates
> because intermediate updates are needed fro proper motion of
> physical prims, but was left in for property updates. However,
> culling of later updates as well as preservation of sequence numbers
> was not done.
>
> 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
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> 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
>


-- 
Justin Clark-Casey (justincc)
http://justincc.org/blog
http://twitter.com/justincc



More information about the Opensim-dev mailing list