Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
UNICAST DATA FRAME TRANSMISSION METHOD AND APPARATUS
Document Type and Number:
WIPO Patent Application WO/2012/109837
Kind Code:
A1
Abstract:
The present invention discloses a unicast data frame transmission method and apparatus. The above mentioned method includes: performing Transparent Interconnection over Lots of Links (TRILL) encapsulation for a unicast data frame, adding path mapping information or path mapping policy to a TRILL header, and then transmitting the encapsulated unicast data frame (S202); during the transmission process, parsing the TRILL header, and according to the path mapping information through a first predetermined algorithm or directly according to the path mapping policy, implementing forwarding path mapping (S204); and encapsulating the said unicast data frame by using the forwarding path obtained through mapping, and then forwarding it (S206). The technical solution provided by the present invention solves the problems of bandwidth waste and of packet disorder even causing retransmission, and further achieves the effects of mapping a forwarding path and sharing network load among multiple paths, and of improving network bandwidth utilization ratio.

Inventors:
ZHAI HONGJUN (CN)
ZHAO JINGJING (CN)
CHENG MINGJIANG (CN)
LV ERCHUN (CN)
Application Number:
PCT/CN2011/076074
Publication Date:
August 23, 2012
Filing Date:
June 21, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
ZHAI HONGJUN (CN)
ZHAO JINGJING (CN)
CHENG MINGJIANG (CN)
LV ERCHUN (CN)
International Classes:
H04L12/56; H04L29/06
Domestic Patent References:
WO2010111142A12010-09-30
Foreign References:
CN102075438A2011-05-25
CN101827009A2010-09-08
Other References:
See also references of EP 2677704A4
None
Attorney, Agent or Firm:
KANGXIN PARTNERS, P.C. (CN)
北京康信知识产权代理有限责任公司 (CN)
Download PDF:
Claims:
权 利 要 求 书

1. 一种单播数据帧传输方法, 包括:

对所述单播数据帧进行多链接透明互连 TRILL封装, 在 TRILL头 中添加路径映射信息和 /或路径映射策略, 并传输封装后的所述单播数据 帧;

在传输过程中, 解析所述 TRILL头, 居所述路径映射信息通过第 一预定算法完成转发路径映射, 或者直接根据所述路径映射策略完成转 发路径映射;

使用映射后获取的转发路径封装并转发所述单播数据帧。

2. 居权利要求 1所述的方法, 其中, 所述路径映射信息和 /或所述路径映 射策略添加在所述 TRILL头的 options字段中, 以 TLV格式封装为具有 必遵属性的逐兆选项。

3. 根据权利要求 2所述的方法, 其中,

所述路径映射信息包括以下至少之一: 所述单播数据帧的目的 MAC, 所述单播数据帧的源 MAC、 使用特定算法对所述单播数据帧的 目的 MAC和 /或所述单播数据帧的源 MAC进行运算后获取的数值、 接 收所述单播数据帧的端口标识 Port ID、 流标识 Flow ID;

所述第一预定算法包括: 使用路径数对所述路径映射信息取模。

4. 根据权利要求 1至 3任一项所述的方法, 其中, 在解析所述 TRILL头之 后, 如果没有发现所述路径映射信息和 /或所述路径映射策略, 则所述方 法还包括:

继续解析内部帧头, 获取路径映射关键信息;

根据所述 TRILL头中的 Egress信息查询等代价多路径 ECMP转发 表, 获取到达该 Egress的所有可用路径;

通过第二预定算法将所述路径映射关键信息映射到一条可用的路径 上;

使用映射后获取的转发路径封装并转发所述单播数据帧。 根据权利要求 4所述的方法, 其中,

所述路径映射关键信息包括以下至少之一: 内层源 MAC、 内层目的 MAC、 虚拟局域网 VLAN信息、 接收接口 Port ID;

所述第二预定算法包括: 对内层 MAC地址进行哈希 Hash, 并使用 路径数对哈希结果取模。

6. 根据权利要求 5所述的方法,其中,在所述根据所述 TRILL头中的 Egress 信息查询 ECMP转发表, 获取到达该 Egress的所有可用路径之后, 还包 括:

按照预订规则对所述所有可用路径进行排序, 其中, 所述预订规则 包括: 按照下一跳 MAC地址的递增或递减顺序。

7. 一种单播数据帧传输装置, 包括:

封装传输模块, 设置为对所述单播数据帧进行多链接透明互连 TRILL封装, 在 TRILL头中添加路径映射信息和 /或路径映射策略, 并 传输封装后的所述单播数据帧;

TRILL解析模块, 设置为传输过程中, 解析所述 TRILL头, 根据所 述路径映射信息通过第一预定算法完成转发路径映射, 或者直接根据所 述路径映射策略完成转发路径映射;

封装转发模块, 设置为使用映射后获取的转发路径封装并转发所述 单播数据帧。

8. 根据权利要求 7所述的装置, 其中, 所述封装传输模块, 还设置为将所 述路径映射信息和 /或所述路径映射策略添加在所述 TRILL头的 options 字段中, 并以 TLV格式封装为具有非必遵属性的逐跳选项。

9. 根据权利要求 8所述的装置, 其中,

所述路径映射信息包括以下至少之一: 所述单播数据帧的目的 MAC, 所述单播数据帧的源 MAC、 使用特定算法对所述单播数据帧的 目的 MAC和 /或所述单播数据帧的源 MAC进行运算后获取的数值、 接 收所述单播数据帧的端口标识 Port ID、 流标识 Flow ID;

所述第一预定算法包括: 使用路径数对所述路径映射信息取模。

10. 根据权利要求 7至 9任一项所述的装置, 其中, 还包括: 内部解析模块, 设置为在解析所述 TRILL头之后, 没有发现所述路 径映射信息及所述路径映射策略时, 继续解析内部帧头, 获取路径映射 关键信息;

路径获取模块,设置为才艮据所述 TRILL头中的 Egress信息查询等代 价多路径 ECMP转发表, 获取到达该 Egress的所有可用路径;

路径映射模块, 设置为通过第二预定算法将所述路径映射关键信息 映射到一条可用的路径上。

11. 根据权利要求 10所述的装置, 其中,

所述路径映射关键信息包括以下至少之一: 内层源 MAC、 内层目的 MAC、 虚拟局域网 VLAN信息、 接收接口 Port ID;

所述第二预定算法包括: 对内层 MAC地址进行哈希 Hash, 并使用 路径数对哈希结果取模。

12. 根据权利要求 11所述的装置, 其中, 还包括:

路径排序模块,设置为按照预订规则对所述所有可用路径进行排序, 其中, 所述预订规则包括: 按照下一兆 MAC地址的递增或递减顺序。

Description:
单播数据帧传输方法^置 技术领域 本发明涉及通信领域, 具体而言, 涉及一种单播数据帧传输方法及装置。 背景技术 TRILL ( Transparent Interconnection over Lots of Links, 多链接透明互连 ) 是 IETF (互联网工程任务组) 推荐的连接层 (L2 ) 网络标准, 用于解决大型 数据中心中 STP ( Spanning Tree protocol, 生成树协议 )的不足。 在 L2网络中, STP通过阻塞冗余链路来避免环路, 但同时也造成了冗余链路带宽的浪费 (被 阻塞 ) 0 TRILL ¾.i± IS-IS ( Intermediate System to Intermediate System ) 路由 协议引入 L2网络,解决了 L2环路问题,同时保留了 L2多路径(或称为 ECMP, Equivalent Cost Multiple Path, 等代价多路径;)。 在 TRILL网络中, 运行 TRILL协议的设备称为路由网桥 ( RBridge )„ 在 TRILL网络的入口, 负责将端系统 ( End System ) 的单播数据帧封装成 TRILL 格式 (即在原始数据帧前面添加 TRILL 头和外部帧头, 封装后的数据帧称为 TRILL数据帧) 并注入 TRILL网络的路由网桥称为 Ingress (可以称之为入口 路由网桥); 而在 TRILL网络的出口, 负责将 TRILL数据帧解封为原始数据帧 并转发给端系统的路由网桥称为 Egress (可以称之为出口路由网桥)。 除了 Ingress和 Egress外, 其他路由网桥负责将 TRILL单播数据帧从 Ingress一跳一 跳地传送到 Egress, 称为传输路由网桥。 在 TRILL网络中, 通过交换拓朴信息路由网桥可以学习到域内 L2网络拓 朴结构, 并计算出到达任何路由网桥的 L2路径, 其中也包括到达同一个路由 网桥的多条等代价路径 (即 ECMP路径)。 多路径提高了网络的冗余度和可靠 性, 也为网络带宽利用率的提高奠定了基础。但 TRILL协议并没有给出传输路 由网桥应该如何在多条路径中选择转发路径。 而对现有的其他 L2转发技术来 说, 因为不存在同一 VLAN ( Virtual Local Area Network, 虚拟局域网) 内的多 路径, 也就不存如何在多路径之间选择路径的问题。 按照 TRILL协议, 传输路由网桥收到 TRILL单播数据帧后, 会去掉外部 帧头并解析 TRILL头获取 Egress信息, 然后才艮据 Egress查找 ECMP转发表, 获取转发路径上的下一个路由网桥, 重新封装外部帧头后转发给下一个路由网 桥。 即传输路由网桥只根据 TRILL头中的 Egress信息查找 ECMP转发路径, 难以在多路径之间实现负载分担。 如图 1所示的网络, A,B,... ,E是路由网桥, H1,H2,... ,H7为端系统, N1,N2 和 N3为以太网, Netl (即子网集合 1 )和 Net2 (即子网集合 2 )分别为 TRILL 网络中的某些子网集合。 假设 HI向 H6发送单播数据帧, H3向 H7发送单播 数据帧, 这两种数据帧到达 A后, A会对它们进行 TRILL封装 (其中 Egress 为 E ),然后将封装后的数据帧转发给 B。作为传输路由网桥, B收到这些 TRILL 数据帧后会解析 TRILL头, 获悉 Egress为 E, 查找 ECMP转发表获取到达 E 的转发路径。 在遇到两条可用转发路径, 又没有其他辅助信息的情况下, B对 这些 4艮文的转发方式共有三种: 1、 将这些数据帧转发给 C; 2、 将这些数据帧 转发给 D; 3、 或者将一部分数据帧 C, 另一部分转发给0。 前两种情况会闲置 另一条可用路径, 造成带宽浪费; 第三中情况, 可能会引起报文乱序甚至重传。 比如 HI发送的前一批数据帧经过 C->Netl->E到达 H6, 而后续的一批数据帧 经过 D->Net2->E到达 H6。 在 Net2的网络延迟时间大于 Netl的情况下, 后面 的数据帧先达到 H6的情况,造成报文乱序甚至重传( Net2和 Netl之间网络延 迟时间之差足够大, 先达到的报文会被丢弃并引起重传)。 数据中心业务量庞 大, 频繁的乱序和重传会严重影响网络质量。 发明内容 本发明的主要目的在于提供一种单播数据帧传 输方法及装置, 以至少解决 上述问题之一。 根据本发明的一个方面, 提供了一种单播数据帧传输方法, 包括: 对单播 数据帧进行 TRILL封装,在 TRILL头中添加路径映射信息和 /或路径映射策略, 并传输封装后的单播数据帧; 在传输过程中, 解析 TRILL头, 根据路径映射信 息通过第一预定算法完成转发路径映射, 或者直接根据路径映射策略完成转发 路径映射; 使用映射后获取的转发路径封装并转发上述单 播数据帧。 路径映射信息和 /或路径映射策略添加在 TRILL 头的 options 字段中, 以 TLV格式封装为具有非必遵属性的逐跳选项。 路径映射信息包括以下至少之一: 单播数据帧的目的 MAC ( Media Access Control, 媒体接入控制)、 单播数据帧的源 MAC、 使用特定算法对单播数据帧 的目的 MAC和 /或单播数据帧的源 MAC进行运算后获取的数值、 接收单播数 据帧的 Port ID、 Flow ID; 第一预定算法包括: 使用路径数对路径映射信息取 模。 在解析 TRILL头之后, 如果没有发现路径映射信息和 /或路径映射策略, 则上述方法还包括: 继续解析内部帧头, 获取路径映射关键信息; 根据 TRILL 头中的 Egress信息查询 ECMP转发表, 获取到达该 Egress的所有可用路径; 通过第二预定算法将路径映射关键信息映射到 一条可用的路径上; 使用映射后 获取的转发路径封装并转发所述单播数据帧。 路径映射关键信息包括以下至少之一: 内层源 MAC、 内层目的 MAC、 VLAN信息、 接收接口 Port ID; 第二预定算法包括: 对内层 MAC地址进行哈 希, 并使用路径数对哈希结果取模。 在才艮据 TRILL头中的 Egress信息查询 ECMP转发表, 获取到达该 Egress 的所有可用路径之后, 还包括: 按照预订规则对所有可用路径进行排序, 其中, 预订规则包括: 按照下一跳 MAC地址的递增或递减顺序。 根据本发明的另一方面, 提供了一种单播数据帧传输装置, 包括: 封装传 输模块, 用于对单播数据帧进行多链接透明互连 TRILL封装, 在 TRILL头中 添加路径映射信息和 /或路径映射策略, 并传输封装后的单播数据帧; TRILL 解析模块, 用于在传输过程中, 解析 TRILL头, 根据路径映射信息通过第一预 定算法完成转发路径映射, 或者直接根据路径映射策略完成转发路径映射 ; 封 装转发模块, 用于使用映射后获取的转发路径封装并转发单 播数据帧。 封装传输模块,还设置为将路径映射信息和 /或路径映射策略添加在 TRILL 头的 options字段中, 并以 TLV格式封装为具有非必遵属性的逐跳选项。 路径映射信息包括以下至少之一: 单播数据帧的目的 MAC、 单播数据帧 的源 MAC、 使用特定算法对单播数据帧的目的 MAC 和 /或单播数据帧的源 MAC进行运算后获取的数值、 接收单播数据帧的 Port ID、 Flow ID; 第一预定 算法包括: 使用路径数对路径映射信息取模。 上述装置还包括: 内部解析模块, 设置为在解析 TRILL头之后, 没有发现 路径映射信息及路径映射策略时,继续解析内 部帧头,获取路径映射关键信息; 路径获取模块, 设置为根据 TRILL头中的 Egress信息查询 ECMP转发表, 获 取到达该 Egress的所有可用路径; 路径映射模块, 设置为通过第二预定算法将 路径映射关键信息映射到一条可用的路径上。 路径映射关键信息包括以下至少之一: 内层源 MAC、 内层目的 MAC、 VLAN信息、 接收接口 Port ID; 第二预定算法包括: 对内层 MAC地址进行哈 希, 并使用路径数对哈希结果取模。 上述装置还包括: 路径排序模块, 设置为按照预订规则对所有可用路径进 行 4 序, 其中, 预订规则包括: 按照下一兆 MAC地址的递增或递减顺序。 通过本发明, 釆用在 TRILL头中添加路径映射信息和 /或路径映射策略, 并相应的增强传输路由网桥对单播 TRILL数据帧解析流程的方案,解决了带宽 浪费及报文乱序甚至重传的问题, 进而达到了可以在多条路径之间映射转发路 径和分担网络负荷, 提高网络带宽利用率的效果。 附图说明 此处所说明的附图用来提供对本发明的进一步 理解, 构成本申请的一部 分, 本发明的示意性实施例及其说明用于解释本发 明, 并不构成对本发明的不 当限定。 在附图中: 图 1是 TRILL网络中多路径拓朴结构示意图; 图 2是根据本发明实施例的单播数据帧传输方法 流程图; 图 3是根据本发明实施例的 TRILL头封装格式示意图; 图 4是根据本发明优选实施例的单播数据帧传输 法的流程图; 图 5是才艮据本发明实例的单播数据帧在 Ingress上的转发路径处理流程图; 图 6 是根据本发明实例的单播数据帧在传输路由网 桥上的路径映射流程 图; 图 7是根据本发明实施例的单播数据帧传输装置 结构框图; 图 8是根据本发明优选实施例的单播数据帧传输 置的结构框图。 具体实施方式 下文中将参考附图并结合实施例来详细说明本 发明。 需要说明的是, 在不 冲突的情况下, 本申请中的实施例及实施例中的特征可以相互 组合。 图 2是根据本发明实施例的单播数据帧传输方法 流程图。 如图 2所示, 根据本发明实施例的单播数据帧传输方法包括 : 步骤 S202, 对单播数据帧进行 TRILL封装, 在 TRILL头中添加路径映射 信息和 /或路径映射策略, 并传输封装后的单播数据帧; 步 4聚 S204, 在传输过程中, 解析 TRILL头, 才艮据路径映射信息通过第一 预定算法完成转发路径映射, 或者直接根据路径映射策略完成转发路径映射 ; 步骤 S206, 使用映射后获取的转发路径封装并转发上述单 播数据帧。 上述方法通过在 TRILL头的中添加路径映射信息和 /或路径映射策略, 并 相应的增强了传输路由网桥对单播 TRILL数据帧 (即 TRILL封装后的单播数 据帧)解析流程, 解决了由于转发路径不确定所造成的带宽浪费 及报文乱序甚 至重传的问题, 实现了在多条路径之间映射转发路径和分担网 络负荷, 提高了 网络带宽利用率的效果。 在具体实施过程中, 可以根据具体需要选择是使用路 径映射信息配合相应算法来完成映射, 还是直接 居路径映射策略来完成映 射。 优选地, 如图 3 所示, 上述路径映射信息和 /或路径映射策略可以添加在

TRILL头的 options (即选项信息) 字段中, 以 TLV ( TLV是一种编码方式, TLV分别代表 Type、 Length, Value, 即类型、 长度、 值) 格式封装为具有非 必遵 (no-critical, 或者说非强制性) 属性的逐兆选项。 出于扩展性的考虑,本发明中优先将上述路径 映射信息和 /或路径映射策略 添加在 TRILL头的 options字段中, 以 TLV格式封装为具有非必遵属性的逐跳 选项。 优选地, 上述路径映射信息可以包括以下至少之一: 单播数据帧的目的 MAC (即 MAC地址;)、 单播数据帧的源 MAC、 使用特定算法对单播数据帧的 目的 MAC和 /或所述单播数据帧的源 MAC进行运算后获取的数值、 接收单播 数据帧的端口标识( Port ID )、 流标识( Flow ID ); 上述第一预定算法可以包括: 使用路径数对上述路径映射信息取模。 在具体实施过程中, 可以根据实际需要, 对路径映射信息及第一预定算法 进行扩展, 以达到不同的目的。 优选地, 如图 4所示, 在步骤 S204中, 在解析 TRILL头之后, 如果没有 发现路径映射信息和 /或路径映射策略, 则可以进行以下处理: 步骤 S208, 继续解析内部帧头, 获取路径映射关键信息; 步骤 S210, 根据 TRILL头中的 Egress信息查询 ECMP转发表, 获取到达 该 Egress的所有可用路径; 步骤 S212,通过第二预定算法将上述路径映射关键信 映射到一条可用的 路径上; 最后转到步骤 S206,使用映射后获取的转发路径封装并转发上 单播数据 帧。 上述步 4聚进一步增强了对 TRILL数据帧的解析流程, 当在 TRILL头中没 有发现路径映射信息和 /或路径映射策略时, 就进一步解析内部帧头, 获取路径 映射关键信息, 完成路径映射, 再次增强了传输的可靠性。 需要说明的是根据路径映射信息通过第一预定 算法完成转发路径映射过 程跟上述过程很相似, 区别在于上述过程中是根据路径映射关键信息 通过第二 预定算法完成的转发路径映射。 优选地, 上述路径映射关键信息可以包括以下至少之一 : 内层源 MAC、 内层目的 MAC、 VLAN信息、 接收接口 Port ID; 上述第二预定算法可以包括: 对内层 MAC地址进行哈希(Hash, 也称为散列;), 并使用路径数对哈希结果取 模。 同样的, 在具体实施过程中, 上述路径映射关键信息及第二预定算法也可 以根据实际需要进行扩展。 优选地, 如图 4所示, 步骤 S210之后还可以进一步包括: 步骤 S214, 按照预订规则对上述所有可用路径进行排序, 上述预定规则可 以包括: 按照下一跳 MAC地址的递增或递减顺序。 在映射前先对所有可用路径进行整理, 居不同的规则对所有可用路径进 行排序, 可以大大提高映射的效率, 更快的找到所需的路径。 而排序规则的制 定可以根据实际情况灵活的进行改变。 下面结合实例及图 5、 图 6对上述优选实施例进行详细说明。 本实例中釆用使用路径映射信息配合相应算法 来完成映射的方案, 主要对 单播数据帧进行了以下处理:

( 1 )接收并解析单播数据帧, 接收到数据帧后, 对数据帧进行解析, 对 于 TRILL单播数据帧, 提取 Egress信息和路径映射信息 (包括从 TRILL头的 options字段或内层帧头中提取), 对于原始数据帧, 提取目的 MAC和 VLAN 信息。

( 2 ) 查找 ECMP转发表获取转发路径, 根据 Egress信息或内层帧头的目 的 MAC和 VLAN信息, 查找 ECMP转发表或 MAC表, 获取可以到达目的地 的所有转发路径。

( 3 )进行路径映射, 利用处理 ( 1 ) 中提取的路径映射信息, 完成对处理 ( 2 ) 中获取的转发路径的映射, 从中选定一条转发路径。

( 4 )封装并转发数据帧, 利用处理 (3 ) 中选取的那条转发路径, 完成对 处理 ( 1 ) 中接收到的数据帧的封装, 然后按选定的转发路径转发数据帧。 具体来说, 如图 5所示, Ingress对原始数据帧的处理流程主要包括: 步骤 S502, 接收单播原始数据帧, 接收到单播数据帧后, 路由网桥对数据 帧进行必要的合法性检查, 丢弃非法数据帧, 进一步处理合法数据帧。 步骤 S504, 获取帧头信息, 解析步骤 S502中接收到的合法数据帧, 获取 帧头中的信息(比如, 目的 MAC、 源 MAC、 VLAN等)或接收接口的 Port ID 或数据帧所属的数据流的 Flow ID 等可用于路径映射的信息 (即路径映射信 息)。 步骤 S506, 查询 L2转发表获取转发路径, 利用步骤 S504中的目的 MAC 和 VLAN信息(或 Flow ID和 VLAN等信息;), 查询 ECMP转发表, 获取所有 可用的转发路径。 步骤 S508, 进行路径映射, 利用步骤 S504中获取的路径映射信息, 釆用 第一预定算法 (比如, 对目的 MAC哈希后, 用可用路径数目对哈希值取模 ) 对可用的转发路径进行映射, 选定一条转发路径。 步骤 S510, 判断是否支持路径映射功能, 查询设备功能信息, 确定本地 ( Ingress ) 是否支持 options方式的路径映射功能, 如果支持继续步骤 S512, 否则转至步骤 S514。 步骤 S512, 在 TRILL头中添加路径映射信息, 按照 TLV格式, 在 TRILL 头的 options 字段增加非强制性 (no-critical, 即非必遵) 的一个或多个逐兆 ( hop-by-hop )选项, 选项中包含步骤 S504中的部分(或全部)路径映射信息。 步骤 S514, 完成 TRILL封装和数据帧转发, 用步骤 S508中选定的转发路 径完成原始数据帧的 TRILL封装, 并按选定的转发路径转发数据帧。 如图 6所示, 传输路由网桥对单播数据帧的处理流程主要包 括: 步骤 S602, 接收并解析单播 TRILL数据帧, 接收到 TRILL数据帧后, 对 数据帧进行解析, 提取 Egress信息和路径映射信息。 步骤 S604, 查找 ECMP转发表获取转发路径, 根据 Egress信息或内层帧 头的目的 MAC和 VLAN信息, 查找 ECMP转发表, 获取可以到达目的地的所 有转发路径。 步骤 S606, 检查 TRILL头的选项域, 遍历选项域, 获取路径映射相关的 选项。 步骤 S608, 判断是否包含本地支持的路径映射信息, 如果包含, 继续步骤 S610, 否则转至步 4聚 S612。 步骤 S610, 根据 TRILL头中指定的信息映射路径, 利用 TRILL头中指定 的某个本地支持的路径映射选项, 对步骤 S604 中的路径进行映射, 获取一条 转发路径, 转至步 4聚 S614。 步骤 S612, 根据原始帧头信息映射路径, 解析原始帧的帧头信息, 利用帧 头中的信息(比如, 目的 MAC地址或源 MAC地址或 VLAN信息;), 釆用预先 定义的映射算法(比如, 对目的 MAC哈希后, 用可用路径数目对哈希值取模 ) 对步 4聚 S604获取的转发路径进行映射, 选定一条转发路径。 以背景技术中所举的例子为例, 当 H6的 MAC地址和 H7的 MAC地址分 别做哈希后, 只要两者的哈希结果具有不同的奇偶性, B就会将发往 H6的播 数据帧发送到 C (或 D ), 而将发往 H7的数据帧发送到 D (或 C ), 从而实现 多路径间的负荷分担。 步骤 S614,根据映射的路径完成报文封装与转发,根 路径映射选定的转 发路径, 完成对 TRILL数据帧的重新封装, 并按选定的转发路径转发数据帧。 图 7是根据本发明实施例的单播数据帧传输装置 结构框图。如图 7所示, 根据本发明实施例的单播数据帧传输装置包括 : 封装传输模块 702 , 设置为对单播数据帧进行 TRILL封装, 在 TRILL头 中添加路径映射信息和 /或路径映射策略, 并传输封装后的单播数据帧 (即 TRILL数据帧;); TRILL解析模块 704 , 与封装传输模块 702相连, 设置为在传输过程中, 解析 TRILL头, 居路径映射信息通过第一预定算法完成转发路 径映射, 或者 直接根据路径映射策略完成转发路径映射; 封装转发模块 706 , 与 TRILL解析模块 704相连, 设置为使用映射后获取 的转发路径封装并转发单播数据帧。 上述装置设置于路由网桥中, 在进行单播数据帧传输时,会在 TRILL头的 中添加路径映射信息和 /或路径映射策略,并在传输过程中相应的使 增强了的 解析流程对单播 TRILL数据帧进行解析,从而解决了由于转发路 不确定所造 成的带宽浪费及报文乱序甚至重传的问题, 实现了在多条路径之间映射转发路 径和分担网络负荷, 提高了网络带宽利用率的效果。 优选地, 封装传输模块 702 , 还设置为将路径映射信息和 /或路径映射策略 添加在 TRILL头的 options字段中, 并以 TLV格式封装为具有非必遵属性的逐 跳选项。 出于扩展性的考虑,封装传输模块 702会将上述路径映射信息和 /或路径映 射策略添加在 TRILL头的 options字段中, 以 TLV格式封装为具有非必遵属性 的逐兆选项。 优选地, 上述路径映射信息可以包括以下至少之一: 单播数据帧的目的 MAC, 单播数据帧的源 MAC、 使用特定算法对单播数据帧的目的 MAC和 /或 所述单播数据帧的源 MAC进行运算后获取的数值、 接收单播数据帧的端口标 识( Port ID )、 流标识( Flow ID ); 上述第一预定算法可以包括: 使用路径数对 上述路径映射信息取模。 在具体实施过程中, 可以根据实际需要, 对路径映射信息及第一预定算法 进行扩展, 以达到不同的目的。 优选地, 居本发明优选实施例的单播数据帧传输装置还 可以进一步包 括: 内部解析模块 708 , TRILL解析模块 704相连, 设置为在解析 TRILL头之 后, 没有路径映射信息及路径映射策略时, 继续解析内部帧头, 获取路径映射 关键信息; 路径获取模块 710 , 与内部解析模块 708相连, 设置为根据 TRILL头中的

Egress信息查询 ECMP转发表, 获取到达该 Egress的所有可用路径; 路径映射模块 712 , 与路径获取模块 710相连, 设置为通过第二预定算法 将路径映射关键信息映射到一条可用的路径上 。 上述模块, 可以在在 TRILL头中没有发现路径映射信息和 /或路径映射策 略时, 通过进一步解析内部帧头, 获取路径映射关键信息, 来完成路径映射, 进一步增强了传输的可靠性。 需要说明的是, TRILL解析模块 704在完成路径映射时, 所起的功能与上 述模块的很相近, 区别仅在于路径映射信息和路径映射关键信息 的不同, 第一 预定算法和第二预定算法的不同, 当然, 第一预定算法和第二预定算法也可能 是同一个算法。 优选地, 上述路径映射关键信息可以包括以下至少之一 : 内层源 MAC、 内层目的 MAC、 VLAN信息、 接收接口 Port ID; 上述第二预定算法可以包括: 对内层 MAC地址进行哈希, 并使用路径数对哈希结果取模。 同样的, 在具体实施过程中, 上述路径映射关键信息及第二预定算法也可 以根据实际需要进行扩展。 优选地, 居本发明优选实施例的单播数据帧传输装置还 可以进一步包 括: 路径排序模块 714 , 与路径获取模块 710相连, 设置为按照预订规则对所 有可用路径进行排序, 其中, 预订规则可以包括: 按照下一跳 MAC地址的递 增或递减顺序。 路径映射模块 712在进行路径映射前, 可以使用路径_悱序模块 714先对所 有可用路径进行整理, 居不同的规则对所有可用路径进行排序, 这样可以大 大提高路径映射模块 712完成映射的效率, 更快的找到所需的路径。 而排序规 则的制定可以根据实际情况灵活的进行改变。 从以上的描述中, 可以看出, 本发明通过增强传输路由网桥对单播 TRILL 数据帧解析流程和 /或在 TRILL头的 options字段中添加路径映射信息(或 /和策 略) 的方式, 提出了在 TRILL网络中解决 ECMP多路径之间的路径选择和负 荷分担的方法。 与现有的 L2路径选择技术相比, 本发明具有如下优点: 1 ) 实 现了 ECMP多条路径之间的负荷分担; 2 ) 实现多路径负荷分担的同时尽量避 免了报文乱序、 丢报和重传等问题; 3 )扩展性好, 通过在 options字段中加入 不同的路径映射信息和策略, 可以实现不同的路径映射方式和负载分担粒度 , 比如通过加入 Flow ID, 可将不同的流映射到不同的路径上。 此夕卜, 本发明中 的增强传输路由网桥解析单播 TRILL 数据帧的流程, 只需要路由网桥本地实 施, 不涉及其他路由网桥, 不需要修改 TRILL协议, 与标准的 TRILL协议完 全兼容。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以 用通用的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多 个计算装置所组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码 来实现, 从而, 可以将它们存储在存储装置中由计算装置来执 行, 并且在某些 情况下, 可以以不同于此处的顺序执行所示出或描述的 步骤, 或者将它们分别 制作成各个集成电路模块, 或者将它们中的多个模块或步骤制作成单个集 成电 路模块来实现。 这样, 本发明不限制于任何特定的硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领 域的技术人员来说, 本发明可以有各种更改和变化。 凡在本发明的 ^"神和原则 之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之 内。