-
Notifications
You must be signed in to change notification settings - Fork 17
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
Clarify refragmenting of stream data when MTU is different and retransmission happens on other path. #309
Comments
refragmentation? When? |
Picoquic has been doing refragmentation of retransmitted packets for several years. That is tested in the interop runner, and does not create any particular interop issue. Hey, I think that the code may well split a stream_data_frame in several segments and send the segments over different paths... |
I think it would be good to add some text in the specification that sender MAY do this and receiver MUST be able to accept refragmentation done in retransmissions. |
Why is this different in the multipath case than in RFC9000? |
@mirjak exactly. Besides, if the packet was lost, the receiver has not seen the first copy of the frame, so it cannot tell that it is a retransmission. It is a well tested feature of RFC9000. |
I don't think it is different. It is just more likely to occur. In RFC 9000 an MTU change is most likely to occur due to a connection migration event. Thus you may have some outstanding stream data ranges that needs to be retransmitted. In MP-QUIC you might attempt to send retransmission for a 1400 byte block over the other path that can only fit a 1200 byte data block. Thus, you will be forced to create two stream frames and send them in two packets if you are going to retransmitt. |
So something like:
Should we add that somewhere? |
Section 7.6
Is refragmentation of data in DATA frames allowed to cope with PMTUD. Maybe should be mentioned explicitly to ensure that this is not resulting in implementation issues. Sender responsibility?
The text was updated successfully, but these errors were encountered: