理解并取证:以太通道的动态协商机制的工作原理


                     取自博主《思科CCNP交换技术详解与实验指南》试读版

3.1理解以太通道的理论部分

3.1.1提出以太通道的原因、以太通道的作用和功能

3.1.2建立以太通道的方式(静态、PagP、LACP

3.1.3理解并取证:以太通道的动态协商机制的工作原理


3.1理解以太通道的理论部分

   本小节将描述思科提出以太通道的原因、以太通道的作用和功能、以太通道的特点、建立以太通道的方式(静态、PagP、LACP)、以及PagP和LACP的协商模式、理解并取证以太通道的动态协商机制的工作原理。

3.1.1思科提出以太通道的原因、以太通道的作用和功能

在交换网络中发生链路聚合时,如图所示,可能有N条接入链路需要汇聚成一条链路,连接到汇聚层交换机,此时就可能发生网络拥塞,此时可能会想到两个方案:案1就不断的加大S2连接S1的上连单一链路的带宽,显然这种方案是不具备扩展性的;方案2在S1和S2之间增加新的链路如图中虚线所示。看上去方案2似乎比方案1具备更高的扩展性,但是请大家不要忘记一个问题:那就是当S2与S1之间增加更多的新链路后,交换机S1和S2就会成环,那么生成树STP就会运行,会在S1和S2之间阻塞到多余的链路端口,在同一时刻只有仍然只有一条链路来转发数据。其实这就是多链路(multiple links)面对的挑战。但是以太通道就能解决这个问题。那么什么是以太通道。

以太通道(EtherChannel):

简单的讲以太通道就是将交换机之间的多条物理链路,捆绑成一条逻辑通道,如图所示,去提供更多的带宽、负载均衡和冗余、同时避免上述关于生成树在交换机多条物理链路连接时所引发的问题,因为此时交换机之间的多条物理链路被当作一条链路处理。比如此时图所示的4条1000MB的物理链路,实现以太通道后,就可以看成是一条链路,并且在全双工的模式下该以太通道的带宽可达8G。

以太通道的特点:

ü        提供更多的带宽。

ü        将具备相同属性的链路进行逻辑汇聚。

ü        此时以太通道看上去就是一条链路避免生成树问题。

ü        提供负载均衡和冗余。

ü        既可以支持二层也可以支持三层。

3.1.2建立以太通道的方式(静态、PagP、LACP

实施以太通道技术有两种形式:静态和动态。所谓静态就是管理员不依赖于任何协议采取手工的方式将其多物理链路捆绑成以太通道;动态配置就是依赖于Pagp和LCAP两个协议在交换机端口上动态的协商是否成为以太通道。注意Page(Port Aggregation Protocol)是思科私有的用于以太通协商的协议,它无法与别的厂商的以太通道进行协商;而LCAP(LinkAggregation control Protocol)是IEEE802.3ad所定义的工业标准,所以厂商都会支持LCAP。

注意:如果静态配置以太通道是不需要在端口上运行Pagp和LCAP协议!

关于PagP(Port Aggregation Protocol)协商时的工作模式:

On:不使用协议来进行协商,也叫非协商模式,直接静态将相关的端口配置为以太通道。

Desirable:主动企望成为通道,如果对方能成通道,那就形成通道。

Auto:被动等待对方的要求,如果对方要求我成通道,我就形成通道,但自己并不主动要求。

Off:关闭以太道道功能,不允许在配置off的端口上使用以太通道。

关于上面描述使用Pagp来完成以太通道协商时不同模式组合所产生结果的示意如图所示,值得注意的是:如果两边都是Auto那么将永远无法形成通道;Off和任何一种模式组合也是永远都无法形成通道;然后Auto和on组合在一起也无法形成能道,因为Auto是被动的,On虽然是能成通道,但是静态的形成通道,在处于On模式下不会产生任何协商数据帧,在掌握这部分知道易错的也是上述三种组合的结果。

关于LCAP(Link Aggregation control Protocol)协商时的工作模式:

On不使用协议来进行协商,也叫非协商模式,直接静态将相关的端口配置为以太通道。

Active主动企望成为通道,如果对方能成通道,那就形成通道。等同于PagP协议的Desirable

Passive被动等待对方的要求,如果对方要求我成通道,我就形成通道,但自己并不主动要求。等同于PagP协议的Auto。

Off关闭以太道道功能,不允许在配置off的端口上使用以太通道。

配置端口上以太通道的协商模式:

     可以通过在某个需要被加入到以太通道的物理接口上通过执行channel-group 1 mode的指令来选择具体的协商模式,具体如图所示。需要注意的是思科在此不会预设任何协议(PagP或者LACP)作为默认的协商协议,那么该端口到底是使用PagP还是LACP?这完全由用户在channel-group 1 mode后面所跟的参数所决定,简单的讲:如果跟上active或者passive,那么该接口就使用LACP;相反如果是跟上desirable或者auto那么该接口就使用PagP;如果是跟上on,那么该接口将不使用任何动态协商。

  当然用户可以通过使用channel-protocol指令来申明是使用LACP还是PagP,如图所示,但是这里需要注意一点:如果用户在channel-group1 mode后面跟的是LACP的参数(active或者passive),但是在channel-protocol申明协议中使用了PagP,与模式参数相冲突,此时系统会报告,该接口已经有一个不同的协议被使用,如图所示。


提示:事实上,如果大家用到了以太通道技术,那么静态配置以太通道是首选,如果要动态协商,一般使用LCAP协议;如果你希望使用Pagp协议,除非你的工作环境是“清一色”的Cisco System!所以立于CCNP的阶段,我们需要进一步的来取证LCAP动态协商的工作过程,它为什么能动态协商,它是怎样完成动态协商的,关键的工作状态是怎样的。

3.1.3理解并取证:以太通道的动态协商机制的工作原理

    如图所示的取证环境中,当前的S1和S2使用LACP动态的完成以太通道协商,S1处于Active模式,S2处于Passive模式;为了方便理解,笔者将LACP的工作过程进行了步骤化描述,每在这个过程中,需要重点理解LACP的Actor state(行为状态机);其中包括:Activity(主动状态)、Aggregation(聚合能力状态)、synchronization(同步状态)、collecting(侦听收集状态)、Distributing(分发状态)。每个过程如下所示:

第一步:S1发送LCAP数据帧的协商数据帧,具体如图所示:在该数据帧中,可以看到LACP Activity(主动状态):Yes(1),表示S1正被配置为LACP的Active模式,同时还可看到Aggregation(聚合能力状态)=1,表示该端口是一个可聚合的端口,如果该字段为0表示该端口是一个不具备聚合能力的独立端口。目前的S2处于完全静默状态,所以全部状态位字段都是0。

关于Passive模式下“静默”行为的取证说明:

     当前的S2是处于Passive模式,注意在S2没有收到S1发来的LACP协商数据帧时,S2将不会发送任何与LACP有关的数据帧,因为S2处于Passive模式时它Activity状态永远都将是0。但是一旦S2收到了S1发来的LACP数据帧,S2就将结束这种静默状态而转向协商过程。如果读者希望取证到S2的静默状态,那么请在执行LACP以太通道协商时,首先配置S2为Passive,然后在没有配置S1为Activity之前使用协议分析器取证S2的端口,会发现S2的静默行为,它(S2)不会发送任何关于LACP的数据帧,直到S1被配置为Activity。有相反的取证手段实施在S1被配置为Activity模下,会发现,S1正积极的发送LACP的数据帧,只是当S2没回应时,S1的LACP数据帧会被置为短超时。

第二步:S2的相关接口被启动,并被配置为Passive模式时,当S2接收到S1发来的数据帧后,立即结束静默,并转向LACP的协商过程,它(S2)会做回应S1如图所示,S2将LACP消息中的Aggregation(聚合能力状态)=1,表示该端口是一个可聚合的端口;并且进入synchronization(同步状态)=1,表示该端口已经被成功的分配到聚合组(通道接口的种逻辑表达式),如果synchronization(同步状态)=0则表示该端口不能选择正确的聚合组。

第三步:此时S1送Activity=1、Aggregation=1、synchronization=1、collecting=1、Distributing=1的LACP数据帧,如图所示,在这个阶段主要关注collecting=1和Distributing=1,它表示加入到以太通道的端口已经可以成功的收包和发包,collecting=1表示可成功收包,0则表示收包失败;Distributing=1表示可以成功的发包,0则表示发包失败。


注意:一个以太通道协商的成败,关键在Aggregation、synchronization、collecting、Distributing四个字段的置位必须要是1,通道才能协商成功,并且在这个过程中,不仅仅需要确保某一端(比如:只是S1)的四个关键字段被置位为1,还必须确保另一端的四个关键字段也必须是1在行,这对于以太通道的故障排除非常的重要,因为协议数据帧是从不会“说谎”!

 

第四步:跟据上面的描述S2必须也得发送Aggregation、synchronization、collecting、Distributing四个字段被置位为1的数据帧后,通过LACP协商的以太通道才会成功,所以此时S2将发送置位四个关键字段的数据帧如图所示,通过该数据帧可以看出,此时的S1和S2的四个关键字段都被置位为1,这就意味着以太通道协商成功,并且相关的接口已经加入到通道中,在S2的数据帧中也可以看到邻居S1的LACP状态,但是此时需要注意的是在任意时候,S2的activity字段总是0,因为它是passvie模式;与之相反S2的activity字段总是1,因为它是active模式。

理解并取证:以太通道的动态协商机制的工作原理相关推荐

  1. AOP之proceedingjoinpoint和joinpoint区别(获取各对象备忘)、动态代理机制及获取原理代理对象、获取Mybatis Mapper接口原始对象...

    现在AOP的场景越来越多,所以我们有必要理解下和AOP相关的一些概念和机制. import org.aspectj.lang.reflect.SourceLocation; public interf ...

  2. 电子计算机工作原理及设计思想为什么理论,动态偏振控制器的工作原理、系统设计及应用...

    1 引 言 偏振是量子光的一个重要和常用的性质.因此,在量子安全通信系统中,经常通过改变偏振态来进行编解码,而动态偏振控制器(DPC)作为一种改变输入光偏振态的光器件,直接参与传输数据的编解码,在量子 ...

  3. Java 动态代理机制分析及扩展

    简介: 本文通过分析 Java 动态代理的机制和特点,解读动态代理类的源代码,并且模拟推演了动态代理类的可能实现,向读者阐述了一个完整的 Java 动态代理运作过程,希望能帮助读者加深对 Java 动 ...

  4. [diango]理解django视图工作原理

    前言:正确理解django视图view,模型model,模板的概念及其之间的关联关系,才能快速学习并上手使用django制作网页 本文主要讲解自己在学习django后对视图view的理解 在进入正文之 ...

  5. cisco理论---以太通道端口会聚协议(PAgP)与LACP的区别

    pagp 端口聚集协议(PAgP)帮助在快速以太通道链接中联系自动生成.PAgP 分组为了商议一个通道的形成在快速以太通道可能的端口发送. PAgP是Cisco的专有协议  PAgP的工作模式 on( ...

  6. 理解并取证:DHCP的工作原理、怎么检测IP地址冲突

    动态主机配置协议(Dynamic Host Configuration Protocol, DHCP)被设计用于动态的为网络中的主机分配IP地址及其它相关的TCP/IP属性,它属于客户/服务模式的应用 ...

  7. 理解并取证:广域网上的PPP协议

    目标: 1理解在广域网上数据的封装形式 2最初的SLIP协议 3PPP协议的组件 4理解并取证:PPP协议中LCP的工作原理(从数据帧的角度分析) 5理解并取证:PPP协议中NCP的工作原理(从数据帧 ...

  8. 理解并取证:DLS网络架构和PPPOE数据帧

    理解并取证:DLS网络架构和PPPOE数据帧 对应的教学录像在: http://edu.51cto.com/lecturer/user_id-7648423.html9.9发布,待管理员24小时审核后 ...

  9. trunk、svi和以太通道

    创建VLAN #vlan database #vlan 10 #exit 加入VLAN conf-if#switchport mode access conf-if#switchport access ...

最新文章

  1. 【转】iOS开发-Protocol协议及委托代理(Delegate)传值
  2. Vue指令练习实例-学生信息录入
  3. 交互式计算机图形学总结:第五章 光照和明暗绘制
  4. 学习Raft算法的笔记
  5. 如何在Visual Studio 2017中使用C# 7+语法
  6. java代码识别_识别Java中的代码气味
  7. python 比赛成绩预测_利用 Python 预测英雄联盟胜负,分析了 5 万多场比赛才得出的数据!值得,涨知识了!...
  8. Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks -译文
  9. Android第十二期 - NavigationDrawer侧边栏滑动效果左右可控制
  10. 锂电池 保护板方案 中颖SH367309方案 原理图 PCB 源代码
  11. SEO的日常主要工作做哪些
  12. Widedeep模型详解
  13. H5移动端出生日期插件
  14. 【mysql 练习题】查询和“01”号同学所学课程完全相同的其他同学的学号
  15. QT手动添加Q_OBJECT报错解决方法记录
  16. win10专业版没有触摸板选项_win10鼠标光标不见了触摸板没反应的具体解决办法...
  17. PCB设计入门—学习记录
  18. 企业微信消息推送卡片按钮互动的使用
  19. MSTP详解- 原理篇
  20. NVIDIA DeepStream配置文件解析;摄像头源RTSP拉流源输入,RTSP推流输出

热门文章

  1. bzoj5183 [Baltic2016]Park
  2. 【Java8】@FunctionalInterface
  3. 时时监控的rtsp流视频显示在前端与一些css;
  4. Linq 常用操作(增删改)
  5. wampserver2.5安装 redis缓存,igbinary, phalcon框架
  6. HDU 2125 Local area network
  7. pe文件被装入内存时按64k对齐
  8. 干货 | B端产品如何设计权限系统?
  9. PMCAFF 微课堂 | 赶集、暴风影音这些优质App为什么都在做积分商城?
  10. 总说数据分析,你知道产品设计中各环节怎么运用数据么