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

Increment missing indications from SACK #353

Merged
merged 1 commit into from
Nov 20, 2024
Merged

Conversation

cnderrauber
Copy link
Member

According to the RFC4960 , the missing indications should be incremented for missing chunks in the SACK.

If an endpoint is in Fast
Recovery and a SACK arrives that advances the Cumulative TSN Ack
Point, the miss indications are incremented for all TSNs reported
missing in the SACK.

@cnderrauber cnderrauber changed the title Increment missing indications from report Increment missing indications from SACK Nov 14, 2024
Copy link

codecov bot commented Nov 14, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 81.61%. Comparing base (7d6927e) to head (d3e02e2).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #353      +/-   ##
==========================================
+ Coverage   81.43%   81.61%   +0.17%     
==========================================
  Files          51       51              
  Lines        4337     4341       +4     
==========================================
+ Hits         3532     3543      +11     
+ Misses        660      655       -5     
+ Partials      145      143       -2     
Flag Coverage Δ
go 81.61% <100.00%> (+0.17%) ⬆️
wasm 68.25% <25.00%> (-0.07%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.


🚨 Try these New Features:

@@ -1855,7 +1858,7 @@ func (a *Association) handleSack(d *chunkSelectiveAck) error {
a.setRWND(d.advertisedReceiverWindowCredit - bytesOutstanding)
}

err = a.processFastRetransmission(d.cumulativeTSNAck, htna, cumTSNAckPointAdvanced)
err = a.processFastRetransmission(d.cumulativeTSNAck, d.gapAckBlocks, htna, cumTSNAckPointAdvanced)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't know the protocol, but just reading this, can this just pass in the end of the last entry? Any reason for passing in the slice?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Guess, you will have to do the check for length here rather than inside the function. Maybe, six of one and half-a-dozen of other case?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No difference but I prefer to put the code and comment together to understand all TSNs reported missing from the SACK (gapAckBlocks)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @cnderrauber

Copy link

@boks1971 boks1971 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but I do not know the protocol to comment on nuances of this. Would be good to get another pair of 👀 on this.

@Sean-Der
Copy link
Member

Mind adding a test @cnderrauber! It’s been a while going to re-read this section

Increment missing indication for reported
missing chunks instead of all inflight chunks.
@cnderrauber cnderrauber merged commit a5d2612 into master Nov 20, 2024
13 checks passed
@cnderrauber cnderrauber deleted the fastrecover_missing branch November 20, 2024 06:59
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.

3 participants