IP Library › Granted Patent US 12,494,926
Granted Patent B2
US 12,494,926 · App. 17/768,831 · Granted Dec 9, 2025

QUIC transport protocol-based communication method and system

Inventors: Xiaowan Pan (Shanghai, CN); Sheng Wang (Shanghai, CN)
Assignee: SHANGHAI BILIBILI TECHNOLOGY CO., LTD.
H04L9/40H04L63/0428H04L69/164
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,494,926
App. No.
17/768,831
Granted
Dec 9, 2025
Kind
B2
Abstract

The present disclosure provides communication techniques based on QUIC transport protocol. The communication techniques comprise receiving a first handshake message sent by a client computing device; defining a second handshake message in response to the first handshake message, wherein the second handshake message includes an encrypted-transport tag and a plaintext-transport tag; sending the second handshake message to the client computing device for selecting, based on the second handshake message, a target transport mode from a plurality of transport modes; receiving a third handshake message sent by the client computing device, where the third handshake message includes identification information of the target transport mode; and performing data transport based on the target transport mode.

Claims (70)

1 . A communication method based on Quick UDP Internet Connection (QUIC) transport protocol, comprising:

receiving at a server computing device a first handshake message sent by a client computing device;

in response to the first handshake message, generating by the server computing device a second handshake message, wherein the second handshake message comprises at least two tags, and wherein a first one of the at least two tags is an encrypted-transport tag and a second one of the at least two tags is a plaintext-transport tag;

sending the second handshake message from the server computing device to the client computing device, wherein a target transport mode is selected by the client computing device from a plurality of transport modes based on the at least two tags in the second handshake message sent by the server computing device, wherein the plurality of transport modes comprise an encrypted-transport mode corresponding to the encrypted-transport tag and a plaintext-transport mode corresponding to the plaintext-transport tag, wherein the second handshake message further comprises an AEAD encryption algorithm field containing the plaintext-transport tag, and wherein the client computing device selects the plaintext-transport mode by parsing the AEAD encryption algorithm field;

receiving a third handshake message sent by the client computing device, wherein the third handshake message comprises identification information of the target transport mode for establishing a QUIC connection with the client computing device; and

performing data transport based on the target transport mode.

2 . The communication method according to claim 1 , wherein the second handshake message comprises configuration parameters of the server computing device, and wherein the plaintext-transport tag is configured in an encryption algorithm option of the configuration parameters.

3 . The communication method according to claim 1 , wherein the identification information comprises the encrypted-transport tag provided by the second handshake message, and wherein the performing data transport based on the target transport mode comprises:

in response to the third handshake message, generating a fourth handshake message to establish, with the client computing device, the QUIC connection for the encrypted-transport mode.

4 . The communication method according to claim 1 , wherein the identification information comprises the plaintext-transport tag provided by the second handshake message, and wherein the performing data transport based on the target transport mode comprises:

in response to the third handshake message, generating a fourth handshake message to establish, with the client computing device, the QUIC connection for the plaintext-transport mode.

5 . A communication system based on Quick UDP Internet Connection (QUIC) transport protocol, comprising:

at least one processor; and

at least one memory communicatively coupled to the at least one processor and comprising computer-readable instructions that upon execution by the at least one processor cause a server computing device to perform operations comprising:

receiving at the server computing device a first handshake message sent by a client computing device;

in response to the first handshake message, generating by the server computing device a second handshake message, wherein the second handshake message comprises at least two tags, and wherein a first one of the at least two tags is an encrypted-transport tag and a second one of the at least two tags is a plaintext-transport tag;

sending the second handshake message from the server computing device to the client computing device, wherein a target transport mode is selected by the client computing device from a plurality of transport modes based on the at least two tags in the second handshake message sent by the server computing device, and wherein the plurality of transport modes comprises an encrypted-transport mode corresponding to the encrypted-transport tag and a plaintext-transport mode corresponding to the plaintext-transport tag, wherein the second handshake message further comprises an AEAD encryption algorithm field containing the plaintext-transport tag, and wherein the client computing device selects the plaintext-transport mode by parsing the AEAD encryption algorithm field;

receiving a third handshake message sent by the client computing device, wherein the third handshake message comprises identification information of the target transport mode for establishing a QUIC connection with the client computing device; and

performing data transport based on the target transport mode.

6 . The communication system according to claim 5 , wherein the second handshake message comprises configuration parameters of a server computing device, and wherein the plaintext-transport tag is configured in an encryption algorithm option of the configuration parameters.

7 . A communication method based on Quick UDP Internet Connection (QUIC) transport protocol, comprising:

sending a first handshake message to a server computing device from a client computing device;

receiving by the client computing device a second handshake message returned by the server computing device, wherein the second handshake message comprises at least two tags, and wherein a first one of the at least two tags is an encrypted-transport tag and a second one of the at least two tags is a plaintext-transport tag;

selecting a target transport mode from a plurality of transport modes based on the at least two tags in the second handshake message sent from the server computing device, wherein the plurality of transport modes comprise an encrypted-transport mode corresponding to the encrypted-transport tag and a plaintext-transport mode corresponding to the plaintext-transport tag, wherein the second handshake message further comprises an AEAD encryption algorithm field containing the plaintext-transport tag, and wherein the client computing device selects the plaintext-transport mode by parsing the AEAD encryption algorithm field;

generating a third handshake message by the client computing device based on the target transport mode; and

sending the third handshake message to the server computing device to establish a QUIC connection with the server computing device based on the third handshake message.

8 . The communication method according to claim 7 , wherein the second handshake message comprises configuration parameters of the server computing device, and wherein the plaintext-transport tag is configured in an encryption algorithm option of the configuration parameters.

9 . The communication method according to claim 7 , wherein selecting the target transport mode from the plurality of transport modes based on the second handshake message comprises:

parsing the second handshake message to obtain configuration parameters of the server computing device;

detecting whether the configuration parameters comprise the plaintext-transport tag; and

selecting the plaintext-transport mode in response to detecting that the configuration parameters comprise the plaintext-transport tag.

10 . The communication method according to claim 7 , wherein generating the third handshake message based on the target transport mode comprises:

generating the third handshake message based on the plaintext-transport tag in response to determining that the target transport mode is the plaintext-transport mode.

11 . The communication method according to claim 10 , further comprising:

controlling an encrypter and a decrypter to enter a non-encryption mode;

processing subsequent data by the encrypter and the decrypter in the non-encryption mode; and

sending the processed data to the server computing device.

12 . The communication method according to claim 7 , wherein generating the third handshake message based on the target transport mode comprises:

generating the third handshake message based on the encrypted-transport tag when the target transport mode is the encrypted-transport mode.

13 . The communication method according to claim 7 , wherein sending the third handshake message to the server computing device to establish the QUIC connection with the server computing device based on the third handshake message comprises:

sending the third handshake message to the server computing device; and

receiving a fourth handshake message returned by the server computing device and establishing the QUIC connection with the server computing device.

14 . The communication method according to claim 7 , wherein before sending the first handshake message to the server computing device, the communication method further comprises:

detecting whether a buffer comprises configuration parameters of the server computing device, wherein the configuration parameters comprise the encrypted-transport tag and the plaintext-transport tag;

in response to detecting that the buffer comprises the configuration parameters, selecting the target transport mode from the plurality of transport modes based on the configuration parameters in the buffer, wherein the plurality of transport modes comprises the encrypted-transport mode corresponding to the encrypted-transport tag and the plaintext-transport mode corresponding to the plaintext-transport tag;

generating a full Client Hello (CHLO) message based on the target transport mode, wherein the full CHLO message is configured to request the server computing device to generate a forward secure key; and

sending the full CHLO message to the server computing device and establish a QUIC connection with the server computing device based on the full CHLO message.

15 . The communication method according to claim 14 , wherein when the buffer does not comprise the configuration parameters, the communication method further comprises:

generating an inchoate CHLO message and sending the inchoate CHLO message to the server computing device, wherein the inchoate CHLO message is configured to request the server computing device to return the configuration parameters;

receiving the configuration parameters returned by the server computing device, wherein the configuration parameters comprise the encrypted-transport tag and the plaintext-transport tag; and

selecting the target transport mode from the plurality of transport modes based on the configuration parameters returned by the server computing device.

16 . A communication system comprising a client computing device based on Quick UDP Internet Connection (QUIC) transport protocol, comprising:

at least one processor; and

at least one memory communicatively coupled to the at least one processor and comprising computer-readable instructions that upon execution by the at least one processor cause the client computing device to perform operations comprising:

sending a first handshake message to a server computing device;

receiving by the client computing device a second handshake message returned by the server computing device, wherein the second handshake message comprises at least two tags, and wherein a first one of the at least two tags is an encrypted-transport tag and a second one of the at least two tags is a plaintext-transport tag;

selecting, based on the at least two tags in the second handshake message sent from the server computing device, a target transport mode from a plurality of transport modes, wherein the plurality of transport modes comprise an encrypted-transport mode corresponding to the encrypted-transport tag and a plaintext-transport mode corresponding to the plaintext-transport tag, wherein the second handshake message further comprises an AEAD encryption algorithm field containing the plaintext-transport tag, and wherein the client computing device selects the plaintext-transport mode by parsing the AEAD encryption algorithm field;

generating a third handshake message by the client computing device based on the target transport mode; and

sending the third handshake message to the server computing device to establish a QUIC connection with the server computing device based on the third handshake message.

17 . The communication system according to claim 16 , wherein the second handshake message comprises configuration parameters of the server computing device, and wherein the plaintext-transport tag is configured in an encryption algorithm option of the configuration parameters.

18 . The communication system according to claim 16 , the operations further comprising:

parsing the second handshake message to obtain configuration parameters of the server computing device;

detecting whether the configuration parameters comprise the plaintext-transport tag; and

selecting the plaintext-transport mode in response to detecting that the configuration parameters comprise the plaintext-transport tag.

19 . The communication system according to claim 16 , the operations further comprising:

generating the third handshake message based on the plaintext-transport tag in response to determining that the target transport mode is the plaintext-transport mode.

20 . The communication system according to claim 19 , the operations further comprising:

controlling an encrypter and a decrypter to enter a non-encryption mode;

processing subsequent data by the encrypter and the decrypter in the non-encryption mode; and

sending the processed data to the server computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2022
From: PAN, XIAOWAN; WANG, SHENG
To: SHANGHAI BILIBILI TECHNOLOGY CO., LTD.
Reel/Frame 059591/0218 →
Priority Claims (1)
CN 201910974065.9 · Oct 14, 2019 · national
Continuity (1)
Related Publication 20230247007A1 · Aug 3, 2023
References Cited (17)
US 10122606B1 · Korhonen · 2018 [cited by examiner]
US 20030182548A1 · Xiong · 2003 [cited by examiner]
US 20030226017A1 · Palekar · 2003 [cited by examiner]
US 20140304498A1 · Gonuguntla · 2014 [cited by examiner]
US 20190199835A1 · Deval et al. · 2019 [cited by applicant]
US 20190229903A1 · Balasubramanian et al. · 2019 [cited by applicant]
US 20200092090A1 · Lin · 2020 [cited by examiner]
CN 104283854A · 2015 [cited by applicant]
CN 109309685A · 2019 [cited by applicant]
CN 110149388A · 2019 [cited by applicant]
CN 110278183A · 2019 [cited by applicant]
WO WO2018076183A1 · 2018 [cited by applicant]
WO WO2019002754A1 · 2019 [cited by applicant]
International Patent Application No. PCT/CN2020/109872; Int'l Search Report; dated Nov. 19, 2020; 2 pages. [cited by applicant]
3rd Generation Partnership Project; Technical Specification Group Core Network and Terminals; Study on IETF QUIC Transport for 5GC Service Based Interfaces; (Release 16); TR 29.893 V1.2.0; Jun. 2019; 39 pages. [cited by applicant]
Thomson et al.; “Using TLS to Secure QUIC”; Internet Engineering Task Force; May 2021; 57 pages. [cited by applicant]
Iyengar et al.; “Quic: A UDP-Based Multiplexed and Secure Transport”; Internet Engineering Task Force; May 2021; 168 pages. [cited by applicant]