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

feat: future packet buffer #173

Merged
merged 4 commits into from
Jan 24, 2023
Merged

feat: future packet buffer #173

merged 4 commits into from
Jan 24, 2023

Conversation

qzhuyan
Copy link
Collaborator

@qzhuyan qzhuyan commented Jan 23, 2023

Sometimes we find msquic deliver data to app out of order.
This happens when system run out of memory for a short while and
then recover OR the data is lost and never detect the loss or recover.

We need this extra guard to ensure the order by using the absolute
offset from the quic event. We prefer stuck the stream/connection rather
than providing wrong data to the APP layer.

Sometimes we find msquic deliver data to app out of order.
This happens when system run out of memory for a short while and
then recover OR the data is lost and never detect the loss or recover.

We need this extra guard to ensure the order by using the absolute
offset from the quic event. We prefer stuck the stream/connecion rather
than providing wrong data to the APP layer.
@qzhuyan qzhuyan marked this pull request as ready for review January 24, 2023 08:21
new stream opt: disable_fpbuffer :: boolean().

default : false
@qzhuyan qzhuyan merged commit 86c901e into main Jan 24, 2023
@qzhuyan qzhuyan deleted the dev/william/forward-buffer branch January 24, 2023 15:58
@nibanks
Copy link

nibanks commented Feb 2, 2023

Just curious @qzhuyan, can you explain this statement?

Sometimes we find msquic deliver data to app out of order.

For a single stream, MsQuic should never deliver data out of order. Across streams, all bets are off, because they are independent units.

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

Successfully merging this pull request may close these issues.

None yet

3 participants