Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update "Round-Trip Time Estimation" section to describe the latest improvements #107

Open
7 tasks
mbakholdina opened this issue Sep 2, 2021 · 0 comments
Open
7 tasks

Comments

@mbakholdina
Copy link
Collaborator

mbakholdina commented Sep 2, 2021

Update "Round-Trip Time Estimation" section to describe the latest improvements:

  • Correct the order of formulas: first RTTVar is calculated, then smoothed RTT is obtained. The order is important. Split formulas in two parts: initialization and EWMA calculation.
  • Describe that during initialization the very first RTT sample is either taken from cache or simply 100 milliseconds. Handshake-based RTT is also possible. however not yet implemented in the library.
  • Consider renaming RTT to SRTT (smoothed RTT) and RTTVar to RTTVAR both in the RFC and the code. I guess we've renamed RTT to SRTT in the code, not sure about RTTVar. Describe that rtt is the RTT sample obtained from the ACK/ACKACK pair. The current variables naming is confusing a bit. It's better to mention explicitly that smoothed RTT is an exponentially weighted moving average (EWMA) of RTT samples.
  • Consider explaining in more details what happens upon ACK and ACKACK reception (how the RTT sample is calculated). Better to combine with sending and receiving algorithms description.
  • Describe the difference between the case of unidirectional and bidirectional transmission. The main reason of additional smoothing at the sender side is the support of bidirectional transmission. Also SRT does not transmit RTTVar to the peer side in this case, this field isn't extracted from the ACK packet and the sender calculates its own variance. See ticket srt #782, the following comment for an explanation.
  • Make a reference to the RFC 6298.
  • ACKACK packets arriving out of order are not taken into account when calculating smoothed RTT. See srt #253 for details.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant