lacp协议
LACP(Link Aggregation Control Protocol,鏈路聚合控制協議)將多條鏈路邏輯上模擬成一條鏈路,以增加網絡帶寬(通常網絡多條鏈路情況下,根據生出樹(stp)協議,將其余鏈路端口狀態變成discarding),實現鏈路冗余(其中一條鏈路故障,流量可以切換到其他鏈路上)
?LACP是一種基于IEEE802.3ad標準的協議。LACP協議通過LACPDU(Link Aggregation Control Protocol Data Unit,鏈路聚合控制協議數據單元)與對端交互信息
報文如下:
協議報文主要包含以下信息:本端和對端系統優先級、本端和對端mac、本端和對端的端口操作key、本端和對端的端口優先級、本端和對端的端口ID、本端和對端的端口狀態。
通過設備系統優先級和系統mac選擇出選擇出參考設備,優先高的為參考設備,優先級一致的系統mac小的做為參考設備
選擇出參考設備后,根據端口優先級和端口ID選擇出參考端口,優先級高的為參考端口,優先級一致,端口ID小的為參考端口
參考端口顧名思義,就是參考的端口,其他端口以該端口為參考,進行端口選中。首先up的端口才有資格進行選中,up的端口會去和參考端口key進行比較,一致的就會選中。那什么是端口key,key值計算包括端口速率,雙工,vlan配置狀態等等。
是否所以配置聚合的設備都會發送lacpdu報文呢?
并不是的,我們可以進行對設備配置聚合模式為active與passive
active模式的設備會主動去發送lacpdu報文
而passive模式的設備只有在收到lacpdu報文的情況下,才會發送報文
那流量在聚合鏈路是怎么進行選路的呢?
為了提高聚合鏈路的利用率,提出了負載分擔的概念,將流量盡可能均勻的分配到每條鏈路上。
當前負載分擔有兩種模型,逐包分擔和逐流分擔。
逐包分擔指的是,對于同一類型的業務流,第一個數據幀在一條物理鏈路上傳輸,而第二個數據幀在另外一條物理鏈路上傳輸的情況,此種分擔方式的優點在于,對于單一數據流就可以實現負載分擔,那缺點在于,由于同一數據流的不同數據幀在不同鏈路轉發,就有可能出現,第二個數據幀早于第一個數據幀接受的情況,導致數據包亂序
逐流分擔指的是,數據流中有源MAC地址、目的MAC地址、源IP地址、目的IP地址、TCP/UDP的源端口號、TCP/UDP的目的端口號等報文特征。設備根據這些報文特征進行哈希計算出哈希值,不同的哈希值對應不同的出接口,從而實現負載分擔。這樣既保證了同一數據流的幀在同一條物理鏈路轉發,又實現了流量在聚合組內各物理鏈路上的負載分擔。逐流負載分擔能保證包的順序,但不能保證帶寬利用率。
總結
- 上一篇: 数据结构——堆栈
- 下一篇: TQ210——常见问题