QUIC

QUIC 是一種多路複用傳輸協議,實現於 UDP 之上。在 HTTP/3 中,它被用作傳輸層,取代了 TCP

QUIC 的設計目的是為 HTTP 連線提供更快的建立速度和更低的 延遲。具體來說:

  • 在 TCP 中,初始的 TCP 握手之後可選地會進行 TLS 握手,資料傳輸必須在 TLS 握手完成後才能開始。由於 TLS 目前已非常普及,QUIC 將 TLS 握手整合到了初始的 QUIC 握手中,從而減少了建立過程中必須交換的訊息數量。

  • HTTP/2 是一種多路複用協議,允許多個 HTTP 事務同時進行。然而,這些事務是在單個 TCP 連線上多路複用的,這意味著 TCP 層面的資料包丟失和隨後的重傳會阻塞所有事務。QUIC 透過在 UDP 之上執行,併為每個流單獨實現資料包丟失檢測和重傳,從而避免了這種情況。這意味著資料包丟失只會阻塞其資料包丟失的特定流。

另見