一句話概括本文:IPv6的速度比IPv4快約39%(僅限本地!)。
為了搞清楚如題所示的問題,我們決定分析30天內一系列監控代理收集的匿名數據。為了簡單起見,我們只分析客戶端到默認網關的往返時間(Round Trip Time,即RTT)。這段子路徑並沒有覆蓋訪問互聯網資源的完整過程,只包括第一段旅程(通常通過Wi-Fi傳輸),其不確定性也最大。
有許多細微的差別都可能會影響我們的初步結果,包括但不限於數據集的大小、設備的差異、操作系統、介質、協議、CoS 類型等等。然而,由於困難重重,我們決定研究一個簡單但便於比較的指標。如果你對我們的數據和分析結果有任何想法或建議,請在下方留言。
方法
為了回答這個問題,我們使用了一種名叫PanSift的工具,希望藉助這個工具保證Wi-Fi傳輸和遠程故障排除。我們收集了 240 萬個網絡相關的網關數據點。為了收集這些數據,我們隨機選擇了16個macOS機器,然後每30秒收集一次數據(我們的數據保留期限最長為30天)。
這16台macOS機器全天在線,並支持雙協議棧(即單個節點同時支持IPv4和IPv6兩種協議棧),而不僅僅是只有本地連接。這樣可以讓比較更公平,因為發出的流量都要遍歷連接中的全部節點和網關。另外,請注意PanSift不會對數據做規範處理,並保留完全保真的指標。這樣,我們就可以進行細粒度分析,甚至追溯故障排除。在過濾出同時支持IPv4和IPv6的數據後,我們總共得到了 342,980 個有效數據點。
深層技術揭秘
PanSift代理每30秒通過命令ping(IPv4)和ping6(IPv6)發送3個ICMP echo_requests,同時還將COS(服務等級)設置為「Best Effort」。ping和ping6使用的選項如下:
-c 3:發送3個請求,然後停止。
-i 1:兩個請求之間等待1秒(默認)。
-k BE:Best Effort,普通類(默認)。
注意:雖然上述選項是默認值,但我們還是明確地給出了選項,這樣可以提醒自己以後進行進一步的調整。我們還為網關的 ICMP 設置了5秒的父進程超時。先發送IPv4請求,然後是IPv6,我們求出3個請求的平均延遲,作為結果數據點(使用以毫秒為單位的浮點值)。
然後查詢Influx後端(時間序列數據庫)。數據框中的數據跨越 macOS 版本 10.11.x、10.14.x、10.15.x、11.6.x 和 12.x,設備類型從 iMAC 到 Mini,但主要是 Macbook Airs和 MacBook Pro。
然後,使用Influx的腳本語言Flux,簡單比較了IPv4和IPv6。
注意,為了簡單起見,我們還將(浮點)值四捨五入為整數,以便快速、公平地比較IPv4和IPv6。
結果
表 1.0:IPv4 與 IPv6 的總延遲結果
圖 1.0:IPv4 的總延遲結果
圖 2.0:IPv6 的總延遲結果
表 2.0:WLAN 的 IPv4 與 IPv6 的延遲
表 3.0:有線 IPv4 與 IPv6 的延遲*
* 我們需要更廣泛的數據集,因為大多數機器的數據來自同時連接了 Wi-Fi / WLAN 的主機。我們記錄的有線硬件主要是「USB LAN」和「USB-C LAN」,其中一些硬件的速率可能低於千兆(1000 Mbps)。因此,我們還需要獲取不同硬件上的輸出,但是 IPv4 和 IPv6 都使用了相同的硬件傳輸數據。
下一步的計劃
接下來,我們打算擴展上面的分析結果,然後看一看:
●是否與網關的MAC 地址(以及供應商 OUI)有關。
●是否與某些客戶端設備類型、操作系統版本或補丁級別有關。
●更大的雙協議棧設備樣本集是否會產生相同的結果。
原文地址:https://pansift.com/blog/is-ipv6-faster-than-ipv4/
—點這裡↓↓↓記得關註標星哦~—