在Linux 6.8中,已經實現了TCP加速補丁

Tux,Linux 內核的吉祥物

Linux 內核是 Linux 操作系統 (OS) 的支柱,是計算機硬件與其進程之間的基本接口。

核心版本 Linux 6.7 幾週前發布 (一月初),從那時起 Linux 6.8的開發工作啟動 目前他已經進入第二個 CR 並且 到目前為止,它已經在不同領域取得了各種改進,重點在於網路、核心協定、BPF、驅動程式 API、對新硬體的支援和驅動程式更新。

Y 最重要的變化之一 眾所周知,其中一個突出,那就是 TCP 堆疊驅動的改進已經實現, 勞闕 導致性能的顯著提高, 特別是在涉及多個並行 TCP 連線的場景中。這些改進使得速度提升高達 40%。

La 優化重點是重新組織領域 在網路堆疊結構中,例如socks、netdev、netns 和mibs。這些由於歷史原因而實施的調整提高了處理器快取的管理效率。特別是,最大限度地減少了資料傳輸期間快取線的使用,並優化了對相關變數的存取。

目前,網路堆疊中具有許多變數的結構是按時間順序、邏輯順序組織的,有時還會按快取行存取進行組織。

這一系列補丁嘗試重新組織核心網路堆疊,以最大限度地減少資料傳輸階段的快取行消耗。具體來說,我們查看 TCP/IP 堆疊和 TCP 中的速度。

這些評論的結果是, 觀察到 TCP 速度顯著提高, 尤其是在處理大量並發 TCP 連線時。在網路操作密集且 TCP 連線的有效管理至關重要的環境中,這種改進尤其顯著。

其他變更和改進其中脫穎而出:

  • 新增了基於 netlink 的自省以公開記憶體使用情況和回收統計資料。
  • 重構 SYN-Cookie TCP 處理以實現未來的 eBPF 相容性。
  • 減少了 GRO 中的擴展標頭解析開銷。
  • 重新組織nftables結構體的成員,將datapath存取的資料保留在開頭。
  • 引入了對批次刪除 MDB 橋接器條目和監視 TC 阻塞連接埠的支援。
  • 驗證器改進,包括 BPF 日誌記錄限制邏輯、日誌記錄改進以及對全域 BPF 使用者小程式參數的支援。
  • AF_XDP 的 TX 元資料的初步實現,支援 mlx5 和 stmmac 驅動程式。
  • 修正了所有形式的 BPF 間接呼叫中的 kCFI 錯誤。
  • 將 bpffs 和附加擴充功能安裝到驗證器時支援 uid/gid 選項。
  • 根據 YAML 規範自動產生 Netlink 系列文件以及對模組描述的其他修正。
  • 防止錯誤釋放屬於頁池的頁。
  • Rust 對網路 PHY 驅動程式的抽象,以及在 netdev Netlink 介面中引入排隊和 NAPI 支援。
  • devlink 的通知過濾和 PHY 驗證的改進。
  • 公開分數頻率偏移值並將舊處理程序轉換為傳回 void 的平台刪除回呼。
  • 新增了對讀取/寫入 PHY MMD 資料包的支援。
  • 增加了對各種乙太網路設備的支持,包括 Octeon CN10K 設備、Broadcom 5760X P7、Qualcomm SM8550 SoC 和 Texas Instrument DP83TG720S PHY。
  • 推出 IMC Networks 藍牙無線電。
  • 高速 NIC、嵌入式 NIC、資料中心交換器、嵌入式交換器和乙太網路 PHY 的升級。
  • 支援各種 WiFi 和藍牙控制器的改進和添加。
  • 刪除各種 WiFi 驅動程序,包括 libertas、Atmel at76c50x、HostAP、zd1201、Orinoco、Aviator/Raytheon、Planet WL3501 和 USB 802.11b RNDIS 驅動程式。

最後,如果你是 有興趣了解更多,您可以檢查 以下鏈接中提供了詳細信息。