-
Notifications
You must be signed in to change notification settings - Fork 863
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
[core] drop packets in the new recv buffer by group recv base #2207
[core] drop packets in the new recv buffer by group recv base #2207
Conversation
This comment has been minimized.
This comment has been minimized.
any comment? |
Could you remind me why do we need to drop packets somewhere else apart from when we are reading from the group? |
sure, you can ref to this comment #1805 (comment) |
I see. The new receiver buffer does not wait for a packet to be acknowledged to deliver it. Thus I am not sure about placing the "drop to group state" logic in |
Do you mean that you want to decouple ack logic and recv_buffer? |
It has been already decoupled with the new receiver buffer. |
def73c0
to
922f8fc
Compare
Hi, @maxsharabayko, I have made some changes:
|
I found that |
I found out another solution: call |
I found that ack packets over
Thus #2218 still need this PR to call |
c3836e0
to
c40dbd4
Compare
c40dbd4
to
fea0559
Compare
fea0559
to
f587198
Compare
Thanks for merging #2222, but I'm curious about why #2222 closed this PR? |
The keyword "fix" followed by issue or RP number in the description of the issue/PR is recognized by GitHub, and automatically closes the relevant PR/issue. |
Fix #1964 (comment)
CUDT::dropToGroupRecvBase()
is not placed inCUDT::tsbpd()
(as what I have done for the old recv buffer) since this behavior is not related to tsbpd and should also work for message mode.CUDT::dropToGroupRecvBase()
is placed insendCtrlAck()
since I can't find another better place.CRcvBufferNew::dropUpTo()
since we need to drop non-empty packets now.m_numOutOfOrderPackets
andm_iFirstReadableOutOfOrder
inCRcvBufferNew::dropUpTo()
since we need to drop non-empty packets now.