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

[BUG] Handle clock drift and timestamp carryover on idle connections #1936

Open
maxsharabayko opened this issue Apr 13, 2021 · 0 comments
Open
Labels
[core] Area: Changes in SRT library core Type: Bug Indicates an unexpected problem or unintended behavior
Milestone

Comments

@maxsharabayko
Copy link
Collaborator

maxsharabayko commented Apr 13, 2021

If there is a connection, but no data is being sent, peers will be exchanging with keepalive messages.

One thing that can happen is a timestamp carryover (after 1h10m).
Timestamp carryover on an idle receiver was addressed in PR #1895, but clock drift was potentially still there, so the PR was not accepted.
The same is true for a sender: it does not keep track of the receiver's timestamps. It may become a problem if a sender eventually starts receiving data packets (bidirectional transmission).

The second thing is that the drift tracer does not receive new samples, and does not track clock drift.
True for the sender and for an idle receiver.

SRT v1.4.3, v1.4.2 and prior.

To partially address the issue, the KEEPALIVE packet may be extended with synchronization clock timestamp.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[core] Area: Changes in SRT library core Type: Bug Indicates an unexpected problem or unintended behavior
Projects
None yet
Development

No branches or pull requests

1 participant