· 在 Branch-03 / Branch-06 的 Linux 機器上都安裝 iperf3 測試工具。
·將Branch-06-Linux 作為 iperf3 的 server 端:# iperf3 -s -V。
· 從 Branch-03-Linux 上啟動 iperf3 的 client 端發動測試,指令為 # iperf3 -c 10.100.106.12 -b 400k -t 300 -u 。
· 必須要走 Tunnel (Multi-Path)
· 強制走 MPLS 線路 (Transport Group: Private Wired, Available)
· 把這類封包定義為高優先權 (High) 的實時類應用 (Real-Time)。在這種交通型態內,等下我們要展示的 FEC 機制將會啟用。
做了這樣的設定后,我們在 Branch-03-Linux 內做與前面一模一樣的測試,只是目前的目標改成指向 Hub-01-Linux (10.100.101.12)。
結果如下:
· 對于被設定為 High / Real-Time 形態的網絡流,如果偵測到線路掉包率過高,則啟用 FEC 機制。
· 此時在 DMPO Tunnel 的串流來源端,會直接把網絡封包多復制一份,每個封包在線路內都丟兩個出去。
· 這時候即使線路質量不好會丟包,可能運氣也沒有這么差,兩個封包都丟掉吧。
此時在 DMPO Tunnel 的串流目的端,如果收到兩個一模一樣的封包,就移除其中一個傳出。
如果同樣封包只有一個(表示一個遺失了),那就把這個留下來的繼續送出去。
運氣很糟的狀況下還是有少數兩個都丟包了,那在應用端才會感受到有掉包的狀況。
本文章轉載自VMware公眾號