mirror of
https://github.com/mumble-voip/mumble.git
synced 2026-03-03 00:46:56 -05:00
Murmur's reaction on bandwidth limit violation #1617
Labels
No labels
GlobalShortcuts
Hacktoberfest
accessibility
acl
asio
audio
bonjour
bsd
bug
build
certificate
ci
client
code
documentation
external-bug
feature-request
gRPC
github
good first issue
help wanted
help-needed
ice
installer
linux
macOS
needs-ckeck-with-latest-version
needs-more-input
overlay
positional audio
priority/P0 - Blocker
priority/P1 - Critical
priority/P2 - Important
priority/P3 - Somewhat important
priority/P4 - Low
public-server-registration
qt
recording
release-management
server
stale-no-response
stale-support
support
task
test
theme
translation
triage
ui
windows
wontfix
x64
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/mumble-mumble-voip#1617
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @unterwulf on GitHub (Sep 9, 2019).
Currently, murmur silently discards any packets from a client if the client has already used all its available bandwidth. This leads to interruptions of the audio from the client with no clue to the user about what is going on.
If a client does not behave well and ignores server's suggestion regarding the maximum allowed bandwidth (like Plumble does) the user will experience very lousy quality of audio and is likely to blame the overall technology while the real problem is just wrong client configuration.
I believe it'd be better to somehow inform the user that something wrong is happening.
There are two options I can think of:
Unfortunately, neither of the options is ideal. The first one will require some kind of rate limiting not to overwhelm the user with warnings. While the second, since there is no burst handling in BandwidthRecord, is probably prone to false positives that will also result in bad user experience if a user gets disconnected just because of network hiccups.
I personally like the second one better because otherwise a text message can pass unnoticed, but it surely needs to be implemented in some reliable way to avoid false positives.
@Krzmbrzl commented on GitHub (Sep 10, 2019):
Agreed
Maybe we could add a counter and allow x packets to be higher in bandwidth (maybe even without ignoring any packets) and after that kick the user from the server. If the user sends packets with proper bandwidth in between, reset the counter to 0.
@trudnorx commented on GitHub (Sep 23, 2019):
A properly implemented client would already not only warn but auto-adjust. I would say this is really a client problem. Why should Murmur work around bad implemented client?