crossbario / crossbario/autobahn-python
Websocket transport disconnects if PONG arrives late even if other (data frames) are arriving
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.5k
- Forks
- 768
- PR merge metrics
- No merged PRs in 30d
Description
When client is on slow connection and large payload is scheduled PONG responses end up at the end of the send queue. Server socket schedules PONG timeout and closes the connection if PONG does not arrive on time.
I guess proper fix is for all client libraries to use priority queue or schedule PONG responses ahead of any pending data frames.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the WebSocket client send queue and the server-side PONG timeout behavior described in the issue. Reproduce the disconnect with a slow connection and a large queued payload, then verify that a late PONG does not close the connection while data frames are still arriving and that PONG responses are prioritized appropriately.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100