一种防止e-trunk丢包的方法、装置和系统的制作方法

文档序号:7570296阅读:375来源:国知局
专利名称:一种防止e-trunk丢包的方法、装置和系统的制作方法
技术领域
本发明涉及通信领域,特别涉及一种防止增强聚合链路E-TRUNK丢包的方法、装 置和系统。
背景技术
随着城域网和广域网的广泛应用,运营商对采用以太网技术的骨干链路的带宽 和可靠性提出越来越高的要求。采用链路聚合技术可以在不进行硬件升级的条件下,通 过将多个物理接口捆绑为一个逻辑接口实现增大链路带宽的目的。基于IEEE802. 3ad标 准的LACP(Link Aggregation Control Protocol,链路汇聚控制协议)技术出现后,提 高了聚合链路TrunkCTrimk是对端口或者链路的捆绑,是一种把多个独立的物理端口绑 定在一起作为一个逻辑端口使用的技术)的容错性,并且能提供M:N备份功能,保证成 员链路的高可靠性。LACP是一种实现链路动态汇聚与解汇聚的协议,通过LACPDU(Link Aggregation Control Protocol Data Unit,链路汇聚控制协议数据单元)与对端交互信 息。E-TRUNK(Enhanced Trunk,增强TRUNK)是一种实现跨设备链路聚合的控制协议,基于 LACP进行了扩展,能够实现多台设备间的链路聚合,从而把链路可靠性从单板级提高到了 设备级。现有技术中典型的E-TRUNK 二层转发网络中转发设备之间部署E-TRUNK,并且两 台转发设备一主一备来转发从其他转发设备接收的流量分组。假设主用的转发设备为第二 转发设备,备用的转发设备为第四转发设备,上述第二转发设备和第四转发设备一侧分别 与第一转发设备相连,另外一侧与第三转发设备相连。主用的第二转发设备负责将从第一 转发设备接收的流量分组转发给第三转发设备,将从第三转发设备接收的流量分组转发给 第一转发设备。当主用的第二转发设备与所述第一转发设备之间的链路发生故障时,所述 第二转发设备与第一转发设备之间的接口断开(Down),所述第一转发设备发往第三转发设 备的流量分组切换到备用的第四转发设备进行转发,而所述第三转发设备发往所述第一转 发设备的流量分组仍然发送给所述第二转发设备,所述第二转发设备将接收到的所述第三 转发设备发送的流量分组转发给所述第四转发设备,再由所述第四转发设备转发给所述第 一转发设备。当所述第二转发设备与所述第一转发设备之间的链路恢复正常时,所述第一 转发设备发送给所述第三转发设备的流量分组重新切换到所述第二转发设备进行转发,而 所述第二转发设备仍然将从所述第三转发设备接收的流量分组转发到所述第四转发设备, 但这时所述第四转发设备和第一转发设备间的链路已经被LACP所阻断,从而导致丢包和 业务的中断。

发明内容
本发明实施例提供一种防止增强聚合链路E-TRUNK丢包的方法,所述方法包括当第一转发设备和第二转发设备之间的链路恢复正常,且所述第二转发设备与第 一转发设备相连的接口的状态变为UP可以状态时,触发所述第二转发设备更新媒体接入控制地址MAC表项;所述第二转发设备接收第三转发设备发送的数据包;并根据所述更新后的MAC表 项,将所述数据包发送给所述第一转发设备。本发明实施例还提供一种防止E-TRUNK丢包的装置,其特征在于,所述装置包括触发单元,用于当第一转发设备和所述装置之间的链路恢复正常,且所述装置与 所述第一转发设备相连的接口的状态变为UP可用状态时,触发所述装置更新媒体接入控 制地址MAC表项;接收单元,用于接收第三转发设备发送的数据包;转发单元,用于根据所述更新后的MAC表项,将所述接收单元接收的数据包转发 给所述第一转发设备。本发明实施例进一步提供一种防止E-TRUNK丢包的系统,其特征在于,所述系统 包括至少三个转发设备,其中,第一转发设备,用于当第一转发设备和第二转发设备之间的链路恢复正常时,接 收第二转发设备发送的数据包;第二转发设备,用于当第一转发设备和第二转发设备之间的链路恢复正常,且所 述第二转发设备与第一转发设备之间的接口的状态变为UP可用状态时,触发所述第二转 发设备更新MAC表项;接收第三转发设备发送的数据包;并根据所述更新后的MAC表项,将 所述数据包发送给所述第一转发设备;第三转发设备,用于发送数据包给所述第二转发设备。本发明实施例提供的防止E-TRUNK丢包的方法、装置和系统通过在当前E-TRUNK 二层转发网络中提供转发设备的MAC刷新机制,在转发设备的接口恢复可用(UP)状态时触 发转发设备进行MAC转发表项的更新,避免了转发设备将收到的流量分组转发给错误的设 备而导致流量分组的丢包,提高了 E-TRUNK 二层转发网络中业务的可靠性。


图1为本发明实施例提供的一种防止E-TRUNK丢包的系统的结构图。图2为本发明实施例提供的一种防止E-TRUNK丢包的方法的流程图。图3为本发明实施例提供的一种防止E-TRUNK丢包的装置的结构图。
具体实施例方式为使本发明实施例的目的、技术方案及优点更加清楚明白,以下参照附图,对本发 明作进一步地详细说明。实施例1参见图1,本发明实施例1提供一种防止增强聚合链路E-TRUNK丢包的系统,所述 系统包括第一转发设备101,当其与第二转发设备102之间的链路恢复正常时,接收所述第 二转发设备102发送的数据包;第二转发设备102,当其与所述第一转发设备101之间的链路恢复正常,且与所述第一转发设备101相连的接口状态变为UP时,更新自身的MAC表项;接收第三转发设备 103发送的数据包;并根据所述更新后的MAC表项,将所述数据包发送给所述第一转发设备 101 ;第三转发设备103,用于发送数据包给所述第二转发设备102。举例来说,第二转发设备102和第四转发设备104与第一转发设备101之间如果 部署E-TRUNK,则第二转发设备102和第四转发设备104的Kh-Trunk^thernet Trunk,为 对以太端口捆绑的Trunk)接口分别连接到第一转发设备101,其中Eth-Trimk接口为捆绑 在Eth-trunk中的物理以太接口。第二转发设备102和第四转发设备104上的Eth-Trimk 都加入 E-TRUNKjf Eth-Trunk 和 E-TRUNK 绑定到一起,Eth-Trunk 的状态受 E-Trunk 的控 制。E-TRUNK 二层转发时,Eth-Trunk是以二层VLAN的方式加入E-TRUNK的。当第一转发设备101和第二转发设备102之间的链路发生故障时,第一转发设备 101和第二转发设备102之间的接口被设置为Down,第二转发设备102快速清除自身设备 上的转发MAC表项,同时通过E-TRUNK传递故障信息给第四转发设备104,从而让第一转 发设备101与第四转发设备104之间的备用链路快速启用,此时第一转发设备101发往所 述第三转发设备103的流量则会在Kh-Trimk中选择可用的到第四转发设备104的链路, 流量转发路径是第一转发设备101-第四转发设备104-第二转发设备102-第三转发设备 103 ;第三转发设备103发出的流量经过第二转发设备102转发到第四转发设备104,再由 第四转发设备104转发到第一转发设备101,流量转发路径是第三转发设备103-第二转发 设备102-第四转发设备104-第一转发设备101。当第二转发设备102和第一转发设备101之间的链路恢复正常,且所述第二转发 设备102与第一转发设备101的接口状态变为UP时,触发所述第二转发设备102更新MAC 表项,所述第二转发设备102清除自身的MAC表项,并重新进行MAC学习。所述第二转发设 备102接收第三转发设备103发送的数据包,并根据所述更新后的MAC表项将所述数据包 发送给所述第一转发设备101。MAC学习的过程如下转发设备收到报文后会根据报文的目的MAC进行转发,因 此转发设备上维护了一张目的MAC与转发出接口对应表,根据查询这张表能够准确快速的 转发报文。该表是通过学习建立的,当转发设备收到一个报文的时候,会记录该报文的源 MAC(假设是MAC-A)和收到该报文的端口(假设是端口 A)形成一个表项记录到表中,这样 设备后续再收到目的MAC是MAC-A的报文需要转发的时候,则从表中即可以查到出接口是 端口 A。这样在完成自身的MAC表项更新后,第二转发设备102将从第一转发设备101接收 的流量分组直接转发给第三转发设备103,将从第三转发设备103接收的流量分组直接转 发给第一转发设备101。进一步地,当第二转发设备102和第四转发设备104上的Eth-Trimk接口以二层 VLAN方式加入E-TRUNK时,第二转发设备102记录该Eth-Trunk加入了哪个E-Trunk,并在 所述肚h-Trunk接口设置智能虚拟局域网SmartVlan标记。当第二转发设备102与第一转 发设备101之间的链路恢复正常且第二转发设备102和第一转发设备101相连的接口状态 由Down变为Up时,判断所述第二转发设备102和第一转发设备101相连的接口是否有智 能虚拟局域网SmartVlan标记。如果有,则清除所述转发设备102上的MAC转发表项,所述 转发设备102重新进行MAC地址学习。第二转发设备102完成MAC学习后,将从第三转发设备103接收的流量分组直接转发给第一转发设备101,将从第一转发设备101接收的流量 分组直接转发给第三转发设备103 ;如果所述接口没有SmartVlan标记,则不清除所述转发 设备102上的MAC转发表项,所述转发设备102不重新进行MAC地址学习。本发明实施例1提供的防止E-TRUNK丢包的系统通过在转发设备的接口恢复可用 (UP)状态时触发所述转发设备进行MAC转发表项的更新,避免了转发设备将收到的流量分 组转发给错误的设备而导致丢包的问题,提高了 E-TRUNK 二层转发网络的可靠性。实施例2参加图2,本发明实施例2提供一种防止增强聚合链路E-TRUNK丢包的方法,所述 方法包括201 当第一转发设备101和第二转发设备102之间的链路恢复正常,且所述第二 转发设备102与所述第一转发设备101相连的接口状态变为UP时,触发所述第二转发设备 102更新媒体接入控制地址MAC表项。例如,图1中第二转发设备102和第四转发设备104与第一转发设备101之间如果 部署E-TRUNK,则第二转发设备102和第四转发设备104的Eth-Trunk (Ethernet Trunk,为 对以太端口捆绑的Trunk)接口分别连接到第一转发设备101,其中Eth-Trimk接口为捆绑 在Eth-trunk中的物理以太接口。第二转发设备102和第四转发设备104上的Eth-Trimk 都加入E-TRUNK,也就是将Eth-Trunk和E-TRUNK绑定到一起,Eth-Trunk的状态受E-Trunk 控制。E-TRUNK 二层转发时,Eth-Trunk是以二层VLAN的方式加入E-TRUNK的。当第二转 发设备102和第一转发设备101之间的链路发生故障时,第二转发设备102和第一转发设 备101相连的接口被设置为Down,第二转发设备102快速清除自身设备上的转发MAC表项, 同时通过E-TRUNK传递故障信息给第四转发设备104,从而让第一转发设备101与第四转 发设备104之间的备用链路快速启用,此时第一转发设备101发出的流量会在Eth-Trimk 中选择可用的到第四转发设备104的链路,流量路径是第一转发设备101-第四转发设备 104-第二转发设备102-第三转发设备103。而第三转发设备103发往第一转发设备101 的流量则经过第二转发设备102转发到第四转发设备104,再由第四转发设备104转发到第 一转发设备101设备。而当第一转发转发设备101和第二转发设备102之间的链路恢复正 常时,所述第二转发设备102与所述第一转发设备101相连的接口状态变为UP,触发第二转 发设备102进行MAC清除,并进行MAC学习。MAC学习的过程与实施例1中的MAC学习过程 相同,在此不再赘述。202 所述第二转发设备102接收第三转发设备103发送的数据包;并根据所述更 新后的MAC表项,将所述数据包发送给所述第一转发设备101。第二转发设备102完成MAC学习后,根据所述更新后的MAC表项,将从第三转发设 备103接收的流量分组直接转发给第一转发设备101,而不再通过第四转发设备104转发给 第一转发设备101。对于从第一转发设备101接收的流量分组,第二转发设备102则将所述 流量分组直接转发给第三转发设备103。进一步地,当第二转发设备102和第四转发设备104上的Eth-Trimk接口以二层 VLAN方式加入E-TRUNK时,第二转发设备102记录该Eth-Trunk加入了哪个E-Trunk,并给 所述Eth-Trimk接口设置智能虚拟局域网SmartVlan标记。当第二转发设备102与第一转 发设备101之间的链路恢复正常且第二转发设备102和第一转发设备101相连的接口状态由Down变为Up时,判断所述第二转发设备102和第一转发设备101相连的接口是否有智 能虚拟局域网SmartVlan标记。如果有,则清除所述转发设备102上的MAC转发表项,所述 第二转发设备102重新进行MAC地址学习。第二转发设备102完成MAC学习后,将从第三 转发设备103接收的流量分组直接转发给第一转发设备101,将从第一转发设备101接收的 流量分组直接转发给第三转发设备103 ;如果没有SmartVlan标记,则不清除所述转发设备 102上的MAC转发表项,所述转发设备102不重新进行MAC地址学习。本发明实施例2提供的防止E-TRUNK丢包的方法通过在转发设备的接口恢复可用 (UP)状态时触发转发设备进行MAC转发表项的更新,避免了转发设备将收到的流量分组转 发给错误的设备而导致丢包的问题,提高了 E-TRUNK 二层转发网络的可靠性。实施例3参见图3,本发明实施例3进一步提供一种防止增强聚合链路E-TRUNK丢包的装 置,所述装置例如可以是图1中的第二转发设备102,所述第二转发设备102包括触发单元301,用于当第一转发设备101和所述第二转发设备102之间的链路接恢 复正常,且所述第二转发设备102与所述第一转发设备的接口状态变为UP时,触发所述第 二转发设备102更新媒体接入控制地址MAC表项;接收单元302,用于接收第三转发设备103发送的数据包;转发单元303,用于根据所述更新后的MAC表项,将所述接收单元302接收的所述 数据包转发给所述第一转发设备101。例如,第二转发设备102和第四转发设备104与第一转发设备101之间如果部署 E-TRUNK,则第二转发设备102和第四转发设备104的Kh-Trimk接口分别连接到第一转 发设备101。第二转发设备102和第四转发设备104上的Eth-Trimk都加入E-TRUNKjf Eth-Trunk 和 E-TRUNK 绑定到一起,Eth-Trunk 的状态受 E-Trunk 的控制。E-TRUNK 二层转 发时,Eth-Trunk是以二层VLAN的方式加入E-TRUNK的。当第一转发设备101和第二转发设备102之间的链路发生故障时,第一转发设备 101和第二转发设备102之间的接口被设置为Down,第二转发设备102中的触发单元301触 发第二转发设备102快速清除自身设备上的转发MAC,同时第二转发设备102通过E-TRUNK 传递故障信息给第四转发设备104,从而让第一转发设备101与第四转发设备104之间的 备用链路快速启用,此时第三转发设备103发出的流量经过第二转发设备102的接收单 元302接收,并由第二转发设备102的转发单元303转发给第四转发设备104,第四转发设 备104再将所述流量转发到第一转发设备101,流量转发路径是第三转发设备103-第二转 发设备102-第四转发设备104-第一转发设备101。而第一转发设备101发出的流量则 会在Kh-Trimk中选择可用的到第四转发设备104的链路,流量转发路径是第一转发设备 101-第四转发设备104-第二转发设备102-第三转发设备103。当第一转发设备101和第二转发设备102之间的链接恢复正常,且所述第二转发 设备102与第一转发设备101的接口状态变为UP时,所述第二转发设备102的触发单元 301触发所述第二转发设备102更新MAC表项,所述第二转发设备102清除MAC表项并重 新进行MAC学习。在所述第二转发设备102完成MAC学习后,第二转发设备102的转发单 元303根据所述更新后的MAC表项,将接收单元302从第三转发设备103接收的数据包发 送给所述第一转发设备101。其中MAC学习的过程与实施例1中相同,在此不再赘述。第二转发设备102完成MAC学习后,根据所述更新后的MAC表项,将从第三转发设备103接收的 流量分组直接转发给第一转发设备101,将从第一转发设备101接收的流量分组直接转发 给第三转发设备103。参见图3,所述第二转发设备102可以进一步地包括标记单元304,所述标记单元 304用于当第二转发设备102上的Kh-1Trunk接口以二层VLAN方式加入E-TRUNK时,记录该 Eth-Trunk加入了哪个E-Trunk,并给所述Kh-Trunk接口设置智能虚拟局域网SmartVlan 标记。当第二转发设备102与第一转发设备101之间的链路恢复正常且第二转发设备102 和第一转发设备101相连的接口状态由Down变为Up时,所述触发单元301判断所述第二 转发设备102和第一转发设备101相连的接口是否有智能虚拟局域网SmartVlan标记。如 果有,则清除所述转发设备102上的MAC表项,所述转发设备102重新进行MAC地址学习。 第二转发设备102完成MAC学习后,根据所述更新后的MAC表项,将从第三转发设备103接 收的流量分组直接转发给第一转发设备101,将从第一转发设备101接收的流量分组直接 转发给第三转发设备103。如果所述接口没有SmartVlan标记,则不清除所述转发设备102 上的MAC转发表项,所述转发设备102不重新进行MAC地址学习。本发明实施例3提供的防止E-TRUNK丢包的装置通过在转发设备的接口恢复可用 (UP)状态时触发转发设备进行MAC转发表项的更新,避免了转发设备将收到的流量分组转 发给错误的设备而导致丢包的问题,提高了 E-TRUNK 二层转发网络的可靠性。通过以上的实施方式的描述,本领域的普通技术人员可以清楚地了解到本发明实 施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于 这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产 品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设 备、或者服务器、或者其他网络设备执行本发明各个实施例或者实施例的某些部分所述的 方法。以上仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的 精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种防止增强聚合链路E-TRUNK丢包的方法,其特征在于,所述方法包括当第一转发设备和第二转发设备之间的链路恢复正常,且所述第二转发设备与第一转 发设备相连的接口的状态变为可用UP状态时,触发所述第二转发设备更新媒体接入控制 地址MAC表项;所述第二转发设备接收第三转发设备发送的数据包;并根据所述更新后的MAC表项, 将所述数据包发送给所述第一转发设备。
2.如权利要求1所述的方法,其特征在于,所述第一转发设备和第二转发设备之间的 链路恢复正常,且所述第二转发设备与第一转发设备相连的接口状态的变为UP之前还包 括判断所述接口是否在E-TRUNK内;若所述接口在E-TRUNK内,则给所述接口设置智能虚拟局域网标记。
3.如权利要求2所述的方法,其特征在于,所述当第一转发设备和第二转发设备之间 的链路恢复正常,且所述第二转发设备与第一转发设备相连的接口的状态变为UP时,触发 所述第二转发设备更新MAC表项包括当所述第一转发设备和第二转发设备之间的链路恢复正常,且所述第二转发设备的接 口状态变为UP时,所述第二转发设备根据所述第二转发设备与第一转发设备相连的接口 的智能虚拟局域网标记,对所述第二转发设备的MAC表项进行更新。
4.一种防止增强聚合链路E-TRUNK丢包的装置,其特征在于,所述装置包括触发单元,用于当第一转发设备和所述装置之间的链路恢复正常,且所述装置与所述 第一转发设备相连的接口的状态变为可用UP状态时,触发所述装置更新媒体接入控制地 址MAC表项;接收单元,用于接收第三转发设备发送的数据包;转发单元,用于根据所述更新后的MAC表项,将所述接收单元接收的数据包转发给所 述第一转发设备。
5.如权利要求4所述的装置,其特征在于,所述装置还包括标记单元,用于所述装置与所述第一转发设备相连的接口在E-TRUNK内时给所述接口 设置智能虚拟局域网标记。
6.如权利要求5所述的装置,其特征在于,所述触发单元具体用于当所述第一转发设 备和所述装置之间的链路恢复正常,且所述装置与所述第一转发设备相连的接口的状态变 为UP时,触发所述装置根据所述接口所在的智能虚拟局域网标记,对本装置的MAC表项进 行更新。
7.一种防止增强聚合链路E-TRUNK丢包的系统,其特征在于,所述系统包括至少三个转发设备,其中,第一转发设备,用于当第一转发设备和第二转发设备之间的链路恢复正常时,接收第 二转发设备发送的数据包;第二转发设备,用于当第一转发设备和第二转发设备之间的链路恢复正常,且所述第 二转发设备与第一转发设备之间的接口的状态变为可用UP状态时,触发所述第二转发设 备更新MAC表项;接收第三转发设备发送的数据包;并根据所述更新后的MAC表项,将所述 数据包发送给所述第一转发设备;第三转发设备,用于发送数据包给所述第二转发设备。
8.如权利要求7所述的系统,其特征在于所述第二转发设备还用于判断所述第二转 发设备与第一转发设备相连的接口是否在E-TRUNK内;若所述接口在E-TRUNK内,则给所述接口设置智能虚拟局域网标记。
9.如权利要求8所述的系统,其特征在于,所述第二转发设备具体用于当所述第一转 发设备和第二转发设备之间的链路恢复正常,且所述第二转发设备与所述第一转发设备相 连的接口的状态变为UP时,所述第二转发设备根据所述智能虚拟局域网标记,对所述第二 转发设备的MAC表项进行更新。
全文摘要
本发明实施例提供一种防止增强聚合链路E-TRUNK二层转发回切流量丢包的方法、装置和系统。所述方法包括转发设备的接口加入虚拟局域网VLAN时判断所述接口是否在E-Trunk内,如果所述接口在E-Trunk内则给所述接口设置智能虚拟局域网SmartVlan标记;当转发设备的接口的状态由Down变为Up时,判断所述接口是否具有SmartVlan标记,如果所述接口具有所述SmartVlan标记,则清除所述转发设备上的MAC转发表项,所述转发设备重新进行MAC地址学习。本发明实施例提供的防止E-TRUNK二层转发回切流量丢包的方法通过在当前E-TRUNK二层转发网络中提供转发设备的MAC刷新机制,在转发设备的接口由恢复可用(UP)状态时触发转发设备进行MAC转发表项的更新,避免了转发设备将收到的流量分组转发给错误的设备而导致流量分组的丢包,提高了E-TRUNK二层转发网络中业务的可靠性。
文档编号H04L12/56GK102142931SQ20111002482
公开日2011年8月3日 申请日期2011年1月22日 优先权日2011年1月22日
发明者兰雪梅, 王洪健, 程永锋 申请人:华为数字技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1