基礎通信學習之鏈路聚合技術


  1. 鏈路聚合技術

    鏈路聚合是指將一組物理端口捆綁在一起作為一個邏輯接口來增加帶寬的一種方法,又稱為多端口負載均衡組。通過在兩台設備之間建立鏈路聚合組(Link Aggregation Group, LAG ),可以提供更高的通信帶寬和更高的可靠性,而這種提高不需要硬件的升級,並且還為兩台設備的通信提供了冗余保護。本節將對鏈路聚合的實現進行介紹,包括以下3點。

    1. 鏈路聚合的基本概念
    2. LACP協議
    3. 鏈路聚合的實現方式
  2. 鏈路聚合的基本概念

    鏈路聚合,也稱為端口捆綁,端口聚集或鏈路聚集。鏈路聚合是將多個端口聚合在一塊形成一個匯聚組。使用鏈路匯聚服務的上層實體把同一聚合組內多條物理鏈路視為一條邏輯的鏈路。一個匯聚組好像就是一個端口。如下圖

    鏈路聚合在數據鏈路層上實現, 部署鏈路聚合組的目的主要在於以下兩點。

    1. 增加網絡帶寬:通過將多個連接的端口捆綁成為一個邏輯連接,捆綁后邏輯端口的帶寬是每個獨立端口的帶寬總和。當端口上的流量增加而成為限制網絡性能的瓶頸時,采用支持該特性的交換機可以輕而易舉地增加網絡的帶寬。例如,可以將4GE端口連接在一起,組成一個4Gbit/s的連接。業務流量能夠以負載分擔的方式運行在這4GE鏈路上。
    2. 提高網絡連接的可靠性:當主干網絡以很高的速率連接時,一旦出現網絡連接故障,后果是不堪設想的。高速服務器以及主干網絡連接必須保證絕對的可靠。采用端口聚合的一個良好的設計可以對這種故障進行保護, 例如,聚合組中的一條鏈路出現故障或者維護人員由於誤操作將一根電纜錯誤地拔下來,不會導致聚合組上的業務中斷。也就是說,組成端口聚合的一個端口連接失敗, 網絡數據將自動重定向到那些好的連接上。這個過程非常快,交換機內部只需要將數據調整到另一個端口進行傳送就可以了,從而保證了網絡無間斷地繼續正常工作。

    在創建鏈路聚合組,將物理鏈路加入鏈路聚合組時需確保以下參數保持一致, 其中的邏輯參數指的是同一匯聚組中端口的基本配置。

    1. 物理參數。

    進行匯聚的鏈路數目

    進行聚合的鏈路的速率

    進行聚合的鏈路的雙工方式

    1. 邏輯參數

    STP配置一致,包括端口的STP使能/關閉 、與端口相連的鏈路屬性(如點對點或非點對點)、STP優先級 、路徑開銷 、報文發送速率限制、是否環路保護、 是否根保護、是否為邊緣端口。

    QoS配置一致,包括流量限速、優先級標記、默認的802.1p優先級、帶寬保證、 擁塞避免,流重定向、流量統計等。

    VLAN配置一致,包括端口上允許通過的VLAN、端口默認VLANID

    端口配置一致,包括端口的鏈路類型,如TrunkHybridAccess屬性。

    另外,使能了某些功能的端口無法加入到鏈路聚合組中,例如配置了鏡像的監控端口和目的端口、配置了靜態MAC地址的端口、配置了靜態ARP的端口、便能 802.1x的端口、VPN 端口等。

  3. LACP協議

    鏈路聚合控制協議LACP,是基於IEEE 802.3ad標准的用於實現鏈路動態匯聚的協議。LACP協議通過鏈路匯聚控制協議數據單元(Link Aggregation Control Protocol Data Unit,LACPDU )與對端交互信息。

    LACP為交換數據的設備提供了一種標准的協商方式,供系統根據自身配置自動形成聚合鏈路,並啟動聚合鏈路收發數據。聚合鏈路形成后,負責維護鏈路狀態,在聚合條件發生變化時,自動調整或解散鏈路聚合。

    LACP協議的報文結構如下圖所示,總長度為1024(bit),合計128字節。如圖所示

     

     

     

  4. 鏈路聚合的方式

    鏈路聚合根據 是否啟用鏈路聚合控制協議可以分為3種方式:手工聚合、靜態聚合、動態聚合。

    1. 手工聚合。

    手工聚合是一種最基本的鏈路聚合方式,在該模式下,鏈路聚合組的建立、成員接口的加入,以及哪些接口作為活動接口完全由手工來配置,沒有鏈路聚合控制協議的參與。手工主備模式通常應用在兩端或其中端設備不支持LACP協議的情況下。

    1. 靜態聚合

    靜態聚合模式下,鏈路聚合組的建立,成員接口的加入都是由手工配置完成的。但與手工負載分擔模式鏈路聚合不同的是,該模式下LACP協議為使能狀態,負責活動接口的選擇。也就是說,當把一組接口加入鏈路聚合組后,這些成員接口中哪些接口作為活動接口,哪些接口作為非活動接口還需要經過LACP協議報文的協商確定。

    1. 動態聚合

    動態聚合模式下,鏈路聚合組根據協議自動創建,聚合端口也是根據KEY值自動匹配添加(KEY值是根據數據包的MAC地址或IP地址,經HASH算法計算得出 ), 不允許用戶增加或刪除動態LACP匯聚中的成員端口。只有速率和雙工屬性相同,連接到同一個設備,有相同基本配置的端口才能被動態聚合在一起,

    鏈路聚合組的實現如圖所示,SWASWB之間采用靜態聚合的方式進行鏈路捆綁,實現三條鏈路的聚合。

    在鏈路聚合組的配置中,除了實現模式外,還可以配置活動鏈路上限闡值和活動鏈路下限闡值。如上圖所示,可以配置活動鏈路上限闡值為2,那么就意昧着,在GE1/0/1GE1/0/2GE1/0/33條被聚合的鏈路中,LACP會協商出兩條鏈路作為活動鏈路,而剩下的鏈路則作為備用鏈路,當聚合組中的其中一條鏈路出現故障的時候,備用鏈路才會成為活動鏈路進行數據轉發。

    活動鏈路下限闡值的配置則主要是為了能夠保證帶寬滿足業務需求。如上圖所示,如果SWASWB之間需要轉發1.5Gbit/s的流量.那么在配置鏈路聚合組的時候就可以選擇配置活動鏈路的下限閾值為2。在默認情況下活動鏈路下限閻值為1,那么如果聚合組中的兩條鏈路出現故障,聚合組仍能正常工作,但此時帶寬只有1Gbit/s,會導致業務丟包。配置了活動鏈路下限閾值后,如果活動鏈路數小於閾值,那么鏈路聚合組會置為DOWN狀態,不再轉發業務。所以,在存在其它業務保護路徑的情況下,若SWA的業務也可以通過SWC到達SWB,那么就可以在SWASWB之間的鏈路聚合組上配置活動鏈路下限閾值,在聚合組鏈路帶寬小於1.5Gbit/s的時候,讓聚合組狀態置DOWN,業務倒換到另外的路徑上進行傳遞。如果沒有另外的業務保護路徑,就沒必要配置活動鏈路下限閹值。

     

     

  5. 鏈路聚合故障案例分析

    鏈路聚合可以提供更高的通信帶寬和更高的可靠性,而且這種提高不需要硬件的升級,因此,鏈路聚合在現網的很多場景中都有使用,用來對兩台設備間的通信提供冗余保護。下面通過學習一個現網案例,對鏈路聚合的原理進行深入理解。

     

    案例:配置靜態鏈路聚合后業務不通

    網絡連接組網圖如下圖所示,S-switch-AS-switch-B之間通過靜態鏈路聚合模式進行鏈路捆綁,增加鏈路帶寬。在S-switch-AS-switch-B上分別創建聚合端口Eth-Trunk,同時將物理GE接口加入到了Eth-Trunk。配置后發現兩台S-switch設備不能互通。

    故障可能原因分析:

    根據之前講述的鏈路聚合組的原理可知,靜態聚合模式的鏈路聚合組,端口是手工加入鏈路聚合組的,但活動接口是通過LACP進行協商的。根據故障現象的描述,交換機雙方業務不通,那么在排查故障原因的時候,需要對以下4點信息進行確認。

    1. 交換機是否都設置了工作模式為靜態LACP
    2. 交換機的物理接口狀態工作是否正常,雙工模式等參數設置是否正確。
    3. 加入Eth-Trunk的物理接口是否正確。
    4. 是否配置了活動鏈路下限閾值。

    經過檢查發現鏈路兩端設備上的工作模式均為靜態LACP模式,接口參數配置正確,都加入到了鏈路聚合組中,但交換機上配置了活動鏈路的下限閾值4,導致了鏈路聚合組工作狀態異常,無法進行數據轉發。

    故障解決方法:

    取消活動鏈路數的下限閾值配置,或者配置接口成員數量大於下限閾值。

    故障案例總結:

    在配置鏈路聚合組的時候,需注意以下參數設置。

    1. 鏈路兩端設備的工作模式相同。
    2. 加入聚合組的接口工作正常且端口參數配置正確。
    3. 聚合組中處於Up狀態的以太網接口成員個數大於下限閾值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM