[XF專題] 擴充頻寬? 故障轉移? 到底什麼人適合用 Link Aggregation 鏈路聚合呢?

- 18座大王 - 2021-01-31

Link Aggregation (又名 Port Trunking) 可將多個物理 LAN Port 匯聚在一起,形成一個邏輯埠,可平衡各成員埠的 In/Out 流量吞吐量,並能提升傳輸頻寬。且能作為自動故障轉移與回復 (Auto-failover/failback),在任一埠出現故障時,將自動重新選取運作正常的路線傳送數據,當故障線路回復正常時,則會自動恢復。

2 條 1Gpbs LAN Port 在聚合之後,將能提供最多 2Gbps 頻寬,但最高網速依舊會是 1Gbps (單一Session)

簡單而言 Link Aggregation 的「提升頻寬」就是平日常聽見的將 2 條 1GbE LAN 線路合成,合共提供 2Gb 頻寬,讓整體的網絡傳輸速度提升一倍。這聽上去好像不錯,只需要連接上兩條 1 GbE LAN 線路就可以將網絡速度提升一倍,且雖然網速有 2Gbps 但仍然能沿用 1GbE 等級的設備,成本低、提升比例高。不過到底實際上又是什麼一回事呢 ?

其實以 Link Aggregation 來提升頻寬對於網絡設備的要求不低,需要所有線路上的設備皆支援 Link Aggregation 技術,即 Router 路由器、Switch 交換器和 NAS 網路附加儲存等等。但是,即使達到上述的要求,在單機傳輸的使用情況下,Link Aggregation 技術也很難可以真正達到 2Gbps 頻寬的效果。由於網絡的 7 層結構中,一個 Session 會在傳輸數據時被數據拆成多個小封包,並會於目的地再重新組合。以 TCP 傳輸為例,雖然 TCP 傳輸可檢測出封包次序及進行重組,但假如透過兩個物理鏈路來傳送 TCP 封包,就可能會出現無法重組的情況出現,所以很多時候都會要求同一個 Session 的封包必須在同一個物理鏈路傳輸,避免出錯,故以 2 條 1GbE LAN 組成的 2GbE 的聚合鏈路,並不會達到與原生 2Gbps 鏈路提供的高速效能,而只會在特定的情況下,才有可能把流量分配到兩個物理鏈路,達到 2Gbps 的速度。

由於在 LACP 中,Switch會控制封包的傳輸線路,通常單一連接 (Session) 只能在同一實體線路傳送,故必須在多機傳輸時才能用盡 2Gbps 的頻寬

此外 Link Aggregation 是以平衡多條線路的負載來達到提速效果,所以效能的提升在於頻寬上,在單一傳輸的速度並不會突破出原來單一線路提供的速度,如以 2 x 1Gbps 作聚合鏈路,其能提供 2Gbps 的總頻寬,而最高的單一傳輸速率依然為 1Gbps。那到底在什麼情況下,Link Aggregation 才會較易達到想要的效果呢 ?

若果僅希望提升傳輸速度與頻寬,倒不如直接升級 2.5/5/10GbE LAN

Link Aggregation 連接設定

在 QNAP NAS 上,Port Trunking 功能可以支援 7 種模式,包括 balance-rr、activve-backup、balance-xor、broadcast、802.3ad dynamic、balance-tlb 和 balance-alb。當中部分模式需要 Switch 支援(如802.3ad)才能正常運作。因此在設定時,第一步將需選擇 Switch 的類型,然而設定頁面會引導你選擇普通 Switch 與網管型 Switch 支援不同的運作的模式。

而部份模式只提供容錯備援功能,即 Auto-failover,如 activve-backup、broadcast;另外的則同時包含負載平衡及容錯備援功能,如  balance-rr、balance-xor、802.3ad、balance-tlb 和 balance-alb;而每個模式都有不同的特點,所以在設定時,就要按需要選擇模式。

本次測試將利用 1 台 Switch 跟 NAS 及 2 台 PC 進行連接,而與 NAS 連接的部份,則以 LACP 聚合 2 條 1 Gbps 連接

本篇文章的下部份將為 Link Aggregation 進行「提升頻寬」的實測,並將利用 QNAP TVS-872XT NAS @2 x 1GbE LAN Port、QNAP QSW-M804-4C 管理型 Switch 以及兩台 PC 進行實測。而在設定方面,需要在 NAS 與 Switch 上打開 LACP 設定,來提升網絡頻寬。

NAS 設定部份

於 NAS 的管理界面找到並打開「網絡及虛擬交換器」工具程式

黠擊右上方的「+ Port Trunking」打開設定界面,再按「新增」

選擇要聚合的 2 個 LAN Port,本次測試將選擇 2 條 1GbE Port

選擇「網管型交換器 ( 支援 Port Trunking / LACP )」

選擇 802.3ad dynamic

按 Switch 的類型選擇好 Layer

完成後就可以見到 2Gbps 頻寬的線路

NAS 設定部份

到 Switch 的管理界面,點選「連結彙總」

模式為 LACP,然後選取連接 NAS 的 2 個 LAN Port,並按儲存

成功儲存後,在的主畫面上就會見到剛才選取的連接埠已被勾選,並以 LACP 模式運作

順序完成以上的 NAS 與 Switch 設定後,NAS 與 Switch 間的通道的頻寬已是 2Gb。

Link Aggregation 測試

本次測試將以 NAS 的 2 x 1Gbps LAN Port 輸出,並利用 Switch 以 LACP 將 2 條 LAN Port 聚合提升網絡頻寬。而在測試將會用上 iPerf 來檢測網絡的傳輸速度,觀察到底開啟 Link Aggregation 對網速與頻寬的影響,以及實際使用的效果。

1 PC 傳輸情況

利用 1 台 PC (1GbE LAN) 在 NAS 提取檔案,最高的速度只有 113MB/s 左右

同樣利用 1 台 PC (1GbE LAN) 以 iperf 與 NAS 連接,最高的速度亦只有 8XX – 9XX Mbps

不過大家可能會覺得開了 LACP 後,仍然只有 1Gbps 的速度,瓶頸位在於 PC 的 1 LAN Port。為此,大王將利用另一台支援 10 GbE LAN 的 PC 再進行測試。

在 iPerf 上可見,即使 PC 支援到 10 GbE 的話,傳輸速度最高同樣只有 900 Mbps

在 NAS 的資源監控中,可見 2 個 LAN Port 只有一個有流量,而最高速度亦只有 ~140 MB/s

由上述的測試可見,在僅有一台 PC 進行檔案存取的情況下,即使是支援 10GbE 的 PC 也只錄得 1GbE LAN 的速度 , 得出 Link Aggregation 並無帶來任何提升,與沒有開啟 LACP 的速度一樣。而且從 NAS 的資源監控中,可見 2 個開啟了 LACP 作為聚合的 LAN Port 只有一個有流量,故單 PC 情況並不能觸發到 Link Aggregation 的功能。

想要獲得藉由 Link Aggregation 技術帶來頻寬、網速大幅提升的效果,通常會在多台電腦同時存取、傳輸檔案時才會有較為顯注的效果。由於多台電腦存取檔案時,會讓整個網絡的負載大幅增加,再透過 Link Aggregation 將負載平衡、分擔至聚合的鏈路,使整體傳輸更為順暢、減少擠塞。如 2 台 PC 以 Samba 方式同時到 NAS 存取同一個檔案時,大家平均的傳輸速度為 500Mbps 左右 (1Gbps 網絡時),若果使用了 2 x 1GbE LAN 組成的 2GbE 的聚合鏈路,則能夠取得 1Gbps 以上的速度,而總傳輸頻寬亦會獲得接近一倍的提升。所以若真的要取得 LACP 鏈路聚合帶來的提升,則需要有 2 台 PC 或以上同取存取檔案時才有效果。

2 PC 同時傳輸情況

在 2 台 PC 的情況下,可見到 2 條 1GbE LAN 都有流量,LACP 機制將負載平衡針配到 2 條 LAN 上

在 2 PC 的測試中,可見 2 部 PC 都能達到超過 1XX MB/s 的速度,總頻寬有接近 2Gbps,足足提升近一倍之多,而 NAS 的 2 條 LAN 亦平均負載,2 條合共提供 220MB/s 的傳輸速度。

就單個用戶端而言,即使使用 Link Aggregation 技術,NAS之傳輸速度依然會維持 Single Port 之速度,如:使用 2 x 1GbE LAN Port 作為鏈路聚合,雖然總頻寬已提升至 2Gbps,但網路速度仍會保持在 1Gbps。故在一般家用的實際使用下,根本不太會從中獲得顯注的效果,所以建議直接升級至 2.5GbE、5GbE 甚至 10GbE LAN 的網絡,直接提供原生高速速度 (如 2.5GbE LAN 在單一傳輸亦能享用 2.5Gbps 的傳輸速度、頻寬)。而現時支援 2.5GbE LAN 以上速度的裝置已經開始流行,如 Router、PC 主機板、NAS 和 Switch 等等,所以若果添購或升級相關新設備,記得留意產品有沒有支援 2.5GbE 或更高網速的 LAN Port。

總結

Link Aggregation 技術提供兩大主要用途,包括:「提升網絡頻寬」與「自動故障轉移」。對於「提升網絡頻寬」需求而言,若網絡中是多機共享使用的話,Link Aggregation 技術可以讓整體頻寬增加,提升傳輸放率。而若單純希望獲得更多頻寬,升級至 2.5 / 5 / 10GbE 會比較有效率,成功率更高,架設時也更輕鬆。

對於希望藉 Link Aggregation 來講求保險的話,當中的「自動故障轉移與回復 (Auto-failover/failback) 」的特性的確可以發揮很大的作用,可幫助伺服器的網絡線路進行熱切換並防止服務中斷,特別適合商用環境使用。

 

相關文章