alibaba / xquic

XQUIC Library released by Alibaba is a cross-platform implementation of QUIC and HTTP/3 protocol.
Apache License 2.0
1.64k stars 325 forks source link

[Bug]: interop failure with s2n-quic server #426

Closed Kulsk closed 1 month ago

Kulsk commented 1 month ago

What happened?

xquic will provide DCID in its first Initial pkt, while s2n-quic server will use it during handshake and retire it when issuing new connection IDs after HANDSHAKE_DONE with Retire Prior To field in NEW_CONNECTION_ID frame.

image

Steps To Reproduce

use xquic client and s2n-quic server

Relevant log output

[2024/05/10 03:39:30 076133] [debug] |scid:28e656af11926615|xqc_process_new_conn_id_frame|new_conn_id|56af05b93cbb742339f0dcb5699723cb|sr_token:2ef0152c5a51cef1dd60d62d6400932d
[2024/05/10 03:39:30 076137] [debug] |scid:28e656af11926615|xqc_process_new_conn_id_frame|retire_prior_to:1 larger than largest_retire_prior_to:0|
[2024/05/10 03:39:30 076142] [error] |scid:28e656af11926615|xqc_write_retire_conn_id_frame_to_packet|conn don't have available dcid|seq_num:0|cur_cid_seq_num:0
[2024/05/10 03:39:30 076146] [error] |scid:28e656af11926615|xqc_process_new_conn_id_frame|xqc_write_retire_conn_id_frame_to_packet error|
[2024/05/10 03:39:30 076151] [error] |scid:28e656af11926615|xqc_process_frames|process frame error|-634|
[2024/05/10 03:39:30 076155] [error] |scid:28e656af11926615|xqc_packet_decrypt_single|xqc_process_frames error|-634|
[2024/05/10 03:39:30 076159] [error] |scid:28e656af11926615|xqc_conn_process_packet|process packets err|ret:-634|pos:00007FFCCD303905|buf:00007FFCCD304070|buf_size:135|
[2024/05/10 03:39:30 076164] [error] |xqc_engine_packet_process|fail to process packets|conn:000056087FD9E95C|ret:-634|
[2024/05/10 03:39:30 076169] [error] |scid:28e656af11926615|xqc_engine_packet_process|conn:000056087FD9E95C|err:0x7|l-0.0.0.0-50703-28e656af11926615 p-193.167.100.100-443-9f2de520352f96d6|