aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb/Congestion.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of __rfbmax()/__rfbmin()Pierre Ossman2025-02-251-6/+7
| | | | | | | | They weren't that well used, and were mostly just confusing special functions anyway. Allows us to move away from generic and ambigious headers such as "util".
* Move time utilities to separate filePierre Ossman2025-02-251-0/+1
| | | | Let's clear things up by categorizing our utility functions.
* Move logging to core libraryPierre Ossman2025-02-251-2/+2
| | | | | | | Make it clearer what is protocol handling and what is just general plumbing. This is one step of several.
* Move utility functions to core libraryPierre Ossman2025-02-131-11/+12
| | | | | | | Make it clearer what is protocol handling and what is just general plumbing. This is one step of several.
* Use nullptr in all C++ codePierre Ossman2024-06-241-11/+11
| | | | | It's more readable than 0, and a bit safer than NULL, so let's try to follow modern norms.
* Use std::string instead of CharArrayPierre Ossman2023-02-041-0/+1
| | | | | Let's use a more common type instead of something homegrown. Should be more familiar to new developers.
* Explicitly mark unused parametersPierre Ossman2023-01-041-0/+2
| | | | | This allows us to separate accidentally unused, from explicitly unused parameters, which allows us to turn on such checks in the compiler.
* Be consistent in including config.hPierre Ossman2021-12-301-0/+4
| | | | | | The generally recommended way is to include it from source files, not headers. We had a mix of both. Let's try to be consistent and follow the recommended way.
* Fix wrap-aware isAfter function in Congestion.cxxLoic Prylli2019-04-271-1/+1
| | | | | | | | Result of overflow on signed integer arithmetic is undefined in C/C++ standard. So in previous version clang was compiling the statement as (int)a > (int)b (i.e. assuming no overflow), which leads to incorrect result. Correct deterministic behavior means doing overflow arithmetic as unsigned, i.e. a != b && a - b <= UINT_MAX / 2
* Estimate higher bandwidth in slow startPierre Ossman2018-09-211-2/+11
| | | | | | | If we are still in slow start then we haven't discovered the actual bandwidth limit yet. We also rely on the caller causing a bit of congestion to detect the limit. So report a higher bandwidth estimate than what we've currently tested in this scenario.
* Avoid assert crash after bytestream position wrap aroundPeter Åstrand (astrand)2018-05-291-2/+7
| | | | Fixes #652.
* Limit lossless refresh update to safe sizePierre Ossman2018-03-281-3/+12
| | | | | | We don't want to waste bandwidth on the lossless refresh if we might need that bandwidth for a normal update. Try to estimate how much data we can safely send without interfering.
* Add crude congestion window debug tracePierre Ossman2017-11-171-0/+38
| | | | | Allows us to compare our computed congestion window with the underlying one used by the TCP layer.
* Add simple slow start to congestion controlPierre Ossman2017-11-171-22/+55
|
* Improved congestion control handlingPierre Ossman2017-11-171-90/+267
| | | | | | Refine the previous method by interpolating the values we need. This reduces the effect of the problem that we cannot send enough ping packets.
* Move congestion control to its own classPierre Ossman2017-11-171-0/+222
It's a general function and it's better to have that particular complexity in its own place.