You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For test cases 1, 2, 4, 5 (see below), the level of receiver buffer (msRcvBuf) is not correct, converges to 10 ms and remains at this level for the whole experiment. For test cases 1, 4, we have latency configured incorrectly: for such a high RTT value it should be at least 3-4 times RTT. For test cases 2, 5, the latency is set to 4RTT, however, the receiver buffer rcvbuf is too small for such a sendrate and latency values. However, this isn't an expected behavior.
Also, for test cases 2, 5, the problem "No room to store incoming packet" can be easily catched. See issue #409, PR #1909.
The problem with receiver buffer level isn't a regression as we have the same test results for both v1.4.2 and the latest master (v1.4.3rc + some commits on top of).
For test cases 3, 6, when the latency and rcvbuf are configured correctly, there is no problems. However, for case 3, rcvbuf = 2812500 isn't enough. The msRcvBuf remains at the level of 2RTT instead of 1RTT. If we increase rcvbuf = 5625000 twice (case 6), the msRcvBuf remains at the level of 1RTT as expected. It means that the formula used for rcvbuf calculation (see below) should be made more precise.
Test Case
sendrate, Mbps
RTT, ms
latency, ms
rcvbuf, bytes
SRT version
Test Result
1
10
500
120 (default)
462500
v1.4.3rc
Rcv buffer remains at the same level of 10 ms
2
10
500
2000 (4RTT)
462500 (buffer size is too small for such latency and bitrate)
v1.4.3rc
No room to store incoming packet Rcv buffer remains at the same level of 10 ms
3
10
500
2000 (4RTT)
2812500
v1.4.3rc
No problems with buffer, msSndBuf is around 2RTT
4
10
500
120 (default)
462500
v1.4.2
Rcv buffer remains at the same level of 10 ms
5
10
500
2000 (4RTT)
462500 (buffer size is too small for such latency and bitrate)
v1.4.2
No room to store incoming packet Rcv buffer remains at the same level of 10 ms
6
10
500
2000 (4RTT)
5625000 (2 times higher than in 3)
v1.4.3rc
No problems with buffer, msSndBuf is around RTT
Experiment time = 120 s.
The value of rcvbuf is calculated using the following formula (see #703): (latency_ms + rtt_ms / 2) * bps / 1000 / 8
Statistics of interest are byteAvailableRcvBuf, msRcvBuf.
Screenshot for test case 1 - At the beginning of the transmission.
v1.4.3rc + some commits on top of, the latest commit is
commit c3864aa
Author: Jose Santiago jsantiago@haivision.com
Date: Mon Apr 12 03:49:26 2021 -0500
mbakholdina
changed the title
[BUG] Receiver buffer remains at the same low level (msRcvBuf = 10ms)
[BUG] Receiver buffer (msRcvBuf) remains at the same low level of 10ms
Apr 13, 2021
Describe the bug
For test cases 1, 2, 4, 5 (see below), the level of receiver buffer (msRcvBuf) is not correct, converges to 10 ms and remains at this level for the whole experiment. For test cases 1, 4, we have latency configured incorrectly: for such a high RTT value it should be at least 3-4 times RTT. For test cases 2, 5, the latency is set to 4RTT, however, the receiver buffer
rcvbuf
is too small for such a sendrate and latency values. However, this isn't an expected behavior.Also, for test cases 2, 5, the problem "No room to store incoming packet" can be easily catched. See issue #409, PR #1909.
The problem with receiver buffer level isn't a regression as we have the same test results for both v1.4.2 and the latest master (v1.4.3rc + some commits on top of).
For test cases 3, 6, when the latency and
rcvbuf
are configured correctly, there is no problems. However, for case 3,rcvbuf = 2812500
isn't enough. ThemsRcvBuf
remains at the level of 2RTT instead of 1RTT. If we increasercvbuf = 5625000
twice (case 6), themsRcvBuf
remains at the level of 1RTT as expected. It means that the formula used forrcvbuf
calculation (see below) should be made more precise.Experiment time = 120 s.
The value of
rcvbuf
is calculated using the following formula (see #703):(latency_ms + rtt_ms / 2) * bps / 1000 / 8
Statistics of interest are byteAvailableRcvBuf, msRcvBuf.
Screenshot for test case 1 - At the beginning of the transmission.
Screenshot for test case 1 - During transmission.
To Reproduce
srt-xtransmit
should be used for a reproduction:SRT version tested:
commit c3864aa
Author: Jose Santiago jsantiago@haivision.com
Date: Mon Apr 12 03:49:26 2021 -0500
Experiments results are attached.
rcv-buffer-fullness.zip
The text was updated successfully, but these errors were encountered: