在VPN隧道中實作UDP Lite會提升效能嗎?

1 min

language: ja bn en es hi pt ru zh-cn zh-tw

大家好,我是無能。前陣子聊到WebRTC,我記得以前曾將其視為Nginx可以實現的串流技術。

WebRTC之所以能高速運行,是因為它在UDP協定上運作。因此,當我重新查看《精通TCP/IP》的UDP頁面時,順便看了其他協定,竟然發現還有UDP Lite!

我以前讀過這本書,當時讀起來並沒有什麼違和感,但現在卻對此產生了興趣。

這是因為Wireguard也在UDP協定上建立隧道,所以我一直覺得它的速度很快(嚴格來說,並非僅僅因為是UDP才高速)。例如,也有OpenVPN這種容易安裝的,但它太慢了,一直使用會讓人壓力過大。

這裡我引用維基百科的內容:

UDP封包只要有1位元資料受損就會被丟棄,而UDP-Lite則會直接傳輸。

看來它會將受損的封包也直接傳送出去。雖然還有其他不同之處,但在此省略。

例如,如果在Wireguard中實作UDP Lite,效能會提升嗎?

回到標題,如果實作了UDP Lite,會帶來速度提升嗎?

以我這個還很菜鳥的程度來看,雖然我還沒看過Wireguard的原始碼,但我認為這取決於是否會對實際被丟棄的封包進行錯誤處理。

實際上,UDP協定中封包遺失的機率有多大?UDP Lite即使有損失也會傳輸,這可能帶來速度提升,但我還沒有具體的概念。

因此,關於UDP協定中會發生多少封包遺失,我打算下次從iperf開始進行測試。

那麼,下次再見。請多指教。

Related Posts