Skip to content

Packets still lost due to buffer overflow at connection to new Region #5562

Description

@AndrewMeadows

Environment

All official SL viewers, all servers.

Description

When the Viewer connects to a new Region (either by login/teleport/vew-into-neighbor-rgion) the simulator running the Region will usually send a burst of UDP messages to the Viewer -- so many that it exceed the Viewer's ability to process them and the spike of network traffic can overflow the inbound buffer. In PR #3565 there was an attempt to reduce packet loss in this case, however those measures were insufficient: we still lose packets , which continue to be a source (not the only one) of non-visible content and cloudy avatars.

We should increase the size of the buffer and try very hard to NEVER drop packets. The moment packets are queued they should be ACKed (which will reduce resends) and harvested for outbound ACKs (which will prevent unnecessary outbound resends).

Reproduction steps

Test on the 26.3 viewer and 26.4 viewer.

  1. Login to a very busy region (lots of avatar) with lots of content.
  2. Notice packet loss in the stats.
  3. Look in logs for messages about lost packets.
  4. Verify the spike of packet loss is less in the 26.4 viewer than in the 26.3 viewer.


This repo is using Opire - what does it mean? 👇
💵 Everyone can add rewards for this issue commenting /reward 100 (replace 100 with the amount).
🕵️‍♂️ If someone starts working on this issue to earn the rewards, they can comment /try to let everyone know!
🙌 And when they open the PR, they can comment /claim #5562 either in the PR description or in a PR's comment.

🪙 Also, everyone can tip any user commenting /tip 20 @AndrewMeadows (replace 20 with the amount, and @AndrewMeadows with the user to tip).

📖 If you want to learn more, check out our documentation.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingstaleteam:viewertriageFlags issues that need to be triaged

Type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions