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

[Question] Confirm whether the handshake has been re-handshake when establishing a connection with sess_resume? #520

Open
nmgwddj opened this issue Nov 28, 2024 · 0 comments

Comments

@nmgwddj
Copy link

nmgwddj commented Nov 28, 2024

I have currently deployed more than 2 servers to receive QUIC connections. When using lsquic, the sess_resume information of the previous connection establishment will be saved, and this information will be carried when establishing the next connection. Carrying sess_resume on the same server indeed works well. Through the on_hsk_done callback, it can be judged that the enumeration value is LSQ_HSK_RESUMED_OK. However, when I use the sess_resume saved after connecting to server A to connect to server B, the on_hsk_done callback still gives me LSQ_HSK_RESUMED_OK, but actually, by packet capturing, it can be seen that the process of re-handshake has been gone through.

I would like to know if there are any other ways besides on_hsk_done to confirm whether the handshake process has been re-performed when establishing a connection with sess_resume carried? The following is the brief information of the captured data packets.

First connection to server A:

1034	11:03:57.100687	10.242.18.254	1.95.20.108	QUIC	1242	Initial, DCID=caa9e1466294f783e1c909, SCID=4430921bc928488f, PKN: 0, CRYPTO, PADDING
1035	11:03:57.133592	1.95.20.108	10.242.18.254	QUIC	113	Retry, DCID=4430921bc928488f, SCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586
1036	11:03:57.134651	10.242.18.254	1.95.20.108	QUIC	1242	Initial, DCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586, SCID=4430921bc928488f, PKN: 1, CRYPTO, PADDING
1039	11:03:57.168744	1.95.20.108	10.242.18.254	QUIC	1242	Handshake, DCID=4430921bc928488f, SCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586
1040	11:03:57.168746	1.95.20.108	10.242.18.254	QUIC	238	Handshake, DCID=4430921bc928488f, SCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586
1041	11:03:57.174671	10.242.18.254	1.95.20.108	QUIC	1242	Handshake, DCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586, SCID=4430921bc928488f
1042	11:03:57.178261	10.242.18.254	1.95.20.108	QUIC	207	Protected Payload (KP0), DCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586
1043	11:03:57.179203	10.242.18.254	1.95.20.108	QUIC	519	Protected Payload (KP0), DCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586
1045	11:03:57.206319	1.95.20.108	10.242.18.254	QUIC	101	Handshake, DCID=4430921bc928488f, SCID=b994d7d18d0a6b4fba92fe43196285ed15bf4586

Second connection to server A with sess_resume carried:

101	11:04:36.755887	10.242.18.254	1.95.20.108	QUIC	1242	Initial, DCID=c45941e6d4a85e3234226aeee4, SCID=25c6808842591c87, PKN: 0, CRYPTO, PADDING
102	11:04:36.757273	10.242.18.254	1.95.20.108	QUIC	528	0-RTT, DCID=c45941e6d4a85e3234226aeee4, SCID=25c6808842591c87
103	11:04:36.786931	1.95.20.108	10.242.18.254	QUIC	115	Retry, DCID=25c6808842591c87, SCID=6ee32a87aa2da771859d49f83708b0bbcdadd46a
104	11:04:36.787493	1.95.20.108	10.242.18.254	QUIC	115	Retry, DCID=25c6808842591c87, SCID=6ee32a87aa2da771859d49f83708b0bbcdadd46a
105	11:04:36.787816	10.242.18.254	1.95.20.108	QUIC	1242	Initial, DCID=6ee32a87aa2da771859d49f83708b0bbcdadd46a, SCID=25c6808842591c87, PKN: 2, CRYPTO, PADDING
106	11:04:36.819401	1.95.20.108	10.242.18.254	QUIC	1242	Protected Payload (KP0), DCID=25c6808842591c87

Third connection to server B using the sess_resume returned by server A:

2860	11:06:56.573823	10.242.18.254	1.95.20.100	QUIC	1242	Initial, DCID=0b551c8a07b1ede303f4bb, SCID=22b6dec45a520b7e, PKN: 0, CRYPTO, PADDING
2861	11:06:56.574948	10.242.18.254	1.95.20.100	QUIC	526	0-RTT, DCID=0b551c8a07b1ede303f4bb, SCID=22b6dec45a520b7e
2864	11:06:56.606431	1.95.20.100	10.242.18.254	QUIC	113	Retry, DCID=22b6dec45a520b7e, SCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2865	11:06:56.606433	1.95.20.100	10.242.18.254	QUIC	113	Retry, DCID=22b6dec45a520b7e, SCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2866	11:06:56.607361	10.242.18.254	1.95.20.100	QUIC	1242	Initial, DCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af, SCID=22b6dec45a520b7e, PKN: 2, CRYPTO, PADDING
2877	11:06:56.641322	1.95.20.100	10.242.18.254	QUIC	1242	Handshake, DCID=22b6dec45a520b7e, SCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2878	11:06:56.641325	1.95.20.100	10.242.18.254	QUIC	238	Handshake, DCID=22b6dec45a520b7e, SCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2879	11:06:56.647084	10.242.18.254	1.95.20.100	QUIC	1242	Handshake, DCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af, SCID=22b6dec45a520b7e
2880	11:06:56.650220	10.242.18.254	1.95.20.100	QUIC	207	Protected Payload (KP0), DCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2881	11:06:56.650225	10.242.18.254	1.95.20.100	QUIC	519	Protected Payload (KP0), DCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
2894	11:06:56.678164	1.95.20.100	10.242.18.254	QUIC	101	Handshake, DCID=22b6dec45a520b7e, SCID=c5bb1ff61eecc733bad2cf3786cfacb21eb090af
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

No branches or pull requests

1 participant