研究與草稿

TCP 研究

提高 TCP 初始壅塞視窗的引數

TCP 資料流從最多四個片段或約 4 KB 資料的初始壅塞期間開始。由於大部分的網路交易都很短,因此初始壅塞視窗是決定資料流完成速度的關鍵 TCP 參數。過去十年間,全球網路存取速度平均加快許多,但 TCP 的初始壅塞期間的標準值維持不變。在本文件中,我們提議將 TCP 的初始壅塞視窗增加到至少 10 個片段 (約 15 KB)。我們透過大規模的網際網路實驗,將使用較大視窗的延遲效益和成本量化為網路頻寬、往返時間 (RTT)、頻寬延遲產品 (BDP) 和應用程式的性質。我們顯示,HTTP 回應的平均延遲時間縮短約 10%,高 RTT 和 BDP 網路可帶來最大的優勢。我們的實驗也大幅改善低頻寬網路的延遲時間。平均重新傳輸率稍微提升了 0.5%,其中大部分應用程式都利用多個並行連線來有效規避 TCP 緩慢啟動演算法。根據實驗結果,我們認為初始壅塞期至少應有十個區段,而 IETF 也必須針對相同的調查進行調查。

TCP 快速開啟

現今的網路服務多半由 TCP 流程主導,因此在動手之後,他們會終止幾次往返行程;這類握手是這類流程延遲的重要來源。在本文件中,我們將說明 TCP Fast Open 通訊協定的設計、實作和部署作業,這項新機制可在 TCP 初始握手期間啟用資料交換。如此一來,TCP Fast Open 可以將應用程式網路延遲時間縮短一個完整的封包往返時間,減少因 TCP 傳輸時間較短而遇到的延遲情形。我們解決了設計三向交換機制固有的安全性問題,避免使用驗證 IP 位址擁有權的安全性權杖來減輕其影響。我們詳細說明瞭其他反向防禦機制,並解決我們遇到的中介問題、現有網路堆疊的回溯相容性,以及逐步部署。根據流量分析和網路模擬的結果,TCP 快速開啟功能可將 HTTP 交易網路延遲時間平均縮短 15%,整體網頁的載入時間平均可減少 10%,在某些情況下高達 40%

TCP 的比例降低

封包遺失率會增加網路使用者的延遲時間。快速復原是 TCP 從封包遺失復原的關鍵機制。在這份白皮書中,我們將探討 RFC 3517 所描述的標準演算法的一些弱點,以及在 Linux 中實作的非標準演算法。我們發現,這些演算法與現實世界中原本預期的行為有所出入,原因在於這些演算法會受到Linux 會降低壅塞視窗的過度縮減,而 RFC 3517 會在高損失下傳輸大量爆發,這兩者都會破壞流程的其餘部分並增加網路延遲時間。我們的主要貢獻是嶄新的設計,目的是控制快速復原中的傳輸速率,稱為縮減比率 (PRR)。PRR 會在收到的 ACK 之間安排重新傳輸作業,迅速順暢地從損失中復原。除了 PRR 之外,我們也會評估 TCP 早期重新傳輸 (ER) 演算法,這個演算法降低短時間內傳輸的重複確認門檻;顯示,若在短暫重新排序的情況下,延遲提早重新傳輸,就能有效避免重複傳送。PRR 和 ER 能根據回應大小,將發生遺失連線的 TCP 延遲時間縮短 3% 至 10%。根據我們在美國及印度 Google 網頁和 YouTube 伺服器的檢測,我們還會針對 TCP 重新傳輸的性質提供重要統計資料。

Laminar TCP

Laminar 是 TCP 壅塞控制項的新架構,可將傳輸排程分開,從單純的壅塞控制項判斷資料傳送的時間,進而決定每個 RTT 期間傳送的總資料量。Laminar 預計會啟用新的進階演算法,更精準調節 TCP 流量。

SSL 和 TLS 草稿

傳輸層安全標準 (TLS) 假啟動

「False Start」是傳輸層安全標準 (TLS) 實作的選擇性行為。這只會影響通訊協定時間,不會影響線上通訊協定資料,且可在單方面實作。傳輸層安全標準 (TLS) 假啟動功能可縮短特定握手動作的一次往返延遲時間。

傳輸層安全標準 (TLS) 下一個通訊協定協商擴充功能

用於應用程式層通訊協定交涉的傳輸層安全標準 (TLS) 擴充功能。如此一來,應用程式層就能透過安全連線交涉應執行的通訊協定,避免其他來回行程,且不受應用程式層通訊協定影響。

DNS 草稿

DNS 要求中的用戶端子網路

這份草稿定義了 EDNS0 擴充功能,用於傳送 DNS 查詢的來源網路相關資訊,以及可快取回覆的網路。