zoukankan      html  css  js  c++  java
  • 以太网链路聚合技术与LACP

    以太网链路聚合技术(Link Aggregation),端口捆绑、链路捆绑技术。

    通过该技术,我们能将多条以太网链路进行捆绑,捆绑之后的这些物理链路就形成了逻辑上的一条新的链路(Eth-trunk)。

    这条聚合链路不仅仅在带宽上成倍的增加,还提供了负载均衡及链路冗余。

    链路聚合技术能够部署在交换机之间、交换机与防火墙之间、交换机与特定的服务器之间等。

    工作方式有以下两种:

    手工负载分担(Manual load-banlance):

    • 手工负载负担方式允许在聚合组中手工加入多个成员接口,并且所有的接口均处于转发状态,分担负载的流量。
    • 在这种模式下Eth-Trunk的创建、成员接口的加入都需要手工配置完成,没有LACP协议报文的参与。
    • 手工负载分担模式通常用在对端设备不支持LACP协议的情况下。

    LACP:

    • LACP方式是一种利用LACP协议进行聚合参数协商、确定活动接口和非活动接口的链路聚合方式。该模式下需要手工创建Eth-Trunk,手工加入Eth-trunk成员接口,但是由LACP协议协商确定活动接口和非活动接口
    • LACP模式也称为M:N模式。这种方式同时可以实现链路负载分担链路冗余备份的双重功能。在链路聚合组中M条链路处于活动状态,这些链路负责转发数据并进行负载分担,另外N条链路处于非活动状态作为备份链路,不转发数据。当M条链路中有链路出现故障时,系统会从N条备份链路中选择优先级最高的接替出现故障的链路,同时这条替换故障链路的备份链路变为活跃状态开始转发数据。
    • LACP模式与手工负载分担模式的主要区别为:LACP模式有备份链路,而手工负载分担模式所有成员接口均处于转发状态,分担负载流量。此外LACP模式下,交换机之间会交互LACP报文。
    • LACP模式中有一个主动端和被动端的概念,设备LACP优先级高(值越小优先级越高)的一端为主动端。若两端设备的LACP优先级一样时,MAC地址小的胜出。聚合链路中的活动链路由主动端决定
    • Selectet和Unselected口:参与流量转发的端口称为Selected端口,否则称为Unselected端口。

    • 处于Selected状态且端口号最小的端口称为主端口(Master Port),可以形象的认为聚合组中的所有端口被汇聚到了主端口,主端口在逻辑上代表了整个聚合组。对于GVRP/GMRP、STP/RSTP/MSTP等二层协议,都只从主端口发送,其他数据报文则在各个Selected端口间分担。

    静态LACP端口状态协商:

    在静态LACP汇聚组中,端口可能处于三种状态:selected、unselected、standby。聚合组端口状态通过本端系统进行协商确定,根据两端系统中设备ID、端口ID等来解决两端口的状态。具体协商原则如下:

    • 比较两端系统的设备ID(设备ID=系统的LACP协议优先级+系统MAC地址)。先比较系统的LACP协议优先级,如果相同再比较MAC地址。设备ID小的一端被认为较优,这里认为是master设备。

    优先级较低的设备认为上slave设备。

    • 在LACP静态聚合组协商成功之后对组内的端口进行比较,选出参考端口。比较过程:比较端口ID(端口ID=端口的LACP协议优先级+端口号)。首先比较端口的 LACP协议优先级,如果优先级相同再

    比较端口号,端口ID小的端口作为参考端口。

    • 与参考端口的速率、双工、链路状态和基本配置一致且处于UP状态的端口、并且该端口的对端端口与参考端口的对端端口的配置也一致时,该端口才成为可能处于selected状态的候选端口,否则端口将

    处于unselected状态。

    • 静态LACP聚合组中处于selected状态的端口数量是有限制的,当候选端口的数目未达到上限时,所有候选端口都为selected状态,其他端口为unselected状态,当候选端口的数目超过这一限制时,根

    端口ID(端口LACP优先级、端口号)选出selected状态的端口,而因为数目限制不能加入聚合组的端口设置为standby状态,其余不满足加入聚合组条件的端口设置为unselected状态。

  • 相关阅读:
    UITableView 表视图编辑
    Swift(一)简单值
    【iOS系列】- iOS吸附效果的实现 之 UICollectionView的使用全解
    【iOS系列】-A server with the specified hostname could not be found.问题解决
    【iOS9系列】-3DTouch开发
    【iOS系列】-iOS查看沙盒文件图文教程(真机+模拟器)
    【iOS系列】-iOS开发常用库文件总结
    【iOS系列】-UITableViewCell的展开与收缩的实现思路
    02-Swift学习笔记-元组类型
    CocoaPoda在iOS开发中的使用
  • 原文地址:https://www.cnblogs.com/tongyishu/p/12801274.html
Copyright © 2011-2022 走看看