《一种多链路透明互联网络中报文转发方法和装置.pdf》由会员分享,可在线阅读,更多相关《一种多链路透明互联网络中报文转发方法和装置.pdf(15页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104301232 A (43)申请公布日 2015.01.21 CN 104301232 A (21)申请号 201410593010.0 (22)申请日 2014.10.29 H04L 12/741(2013.01) (71)申请人 杭州华三通信技术有限公司 地址 310052 浙江省杭州市滨江区长河路 466 号 (72)发明人 周万 (74)专利代理机构 北京德琦知识产权代理有限 公司 11018 代理人 谢安昆 宋志强 (54) 发明名称 一种多链路透明互联网络中报文转发方法和 装置 (57) 摘要 本发明提供了一种多链路透明互联网络中报 文转发方法, 该方。
2、法包括 : 边缘节点获得 TRILL 网 络中各边缘节点下挂NVE设备的NVE信息, 并生成 NVE信息表, 根据生成的NVE信息表生成转发信息 表 ; 该边缘节点接收到下挂 NVE 设备发送的数据 报文时, 根据所述转发信息表转发该数据报文。 基 于同样的发明构思, 本申请还提出一种多链路透 明互联网络中报文转发装置, 在部署 overlay 网 络时, 使用TRILL网络作为underlay网络承载, 简 化部署过程。 (51)Int.Cl. 权利要求书 3 页 说明书 9 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书9页 附图2页 。
3、(10)申请公布号 CN 104301232 A CN 104301232 A 1/3 页 2 1. 一种多链路透明互联 TRILL 网络中报文转发方法, 应用于 TRILL 网络中的任一边缘 节点上, 其特征在于, 该方法包括 : 边缘节点获得 TRILL 网络中各边缘节点下挂网络虚拟化边缘 NVE 设备的 NVE 信息, 并 生成 NVE 信息表, 所述 NVE 信息表包括 : 边缘节点的昵称、 因特网协议 IP 地址、 端口号 ; 该边缘节点根据 NVE 信息表生成转发信息表 ; 该转发信息表包括 : 目的 IP 地址、 源 IP 地址、 操作指示和出端口号 ; 该边缘节点接收到下挂NV。
4、E设备发送的数据报文时, 若确定该数据报文的目的IP地址 在NVE信息表中对应的昵称不为本节点的昵称, 则剥离该数据报文的MAC头, 根据该数据报 文的目的 IP 地址和源 IP 地址在转发信息表中查找对应的操作指示和出端口号, 根据所述 操作指示替换指定的 IP 头、 封装指定的 TRILL 头和 MAC 头 ; 并从所述出端口号对应的出端 口转发封装后的数据报文。 2. 根据权利要求 1 所述的方法, 其特征在于, 所述 NVE 信息表还包括 : MAC 地址 ; 所述方法进一步包括 : 若确定该数据报文的目的IP地址在NVE信息表中对应的昵称为本节点的昵称, 则根据 该数据报文的目的 I。
5、P 地址在转发信息表中查找对应的操作指示和出端口号, 根据所述操 作指示替换指定的 MAC 头, 并从所述出端口号对应的出端口转发替换指定的 MAC 头后的数 据报文。 3.根据权利要求1所述的方法, 其特征在于, 边缘节点获得TRILL网络中各边缘节点下 挂 NVE 设备的 NVE 信息, 并生成 NVE 信息表, 包括 : 该边缘节点学习到本地 NVE 设备的 NVE 信息时, 生成 NVE 信息表 ; 并将生成的本地 NVE 设备对应的 NVE 信息表项内容同步给其它节点 ; 该边缘节点接收到远端边缘节点同步的 NVE 信息表项内容时, 将获得的 NVE 信息表项 内容增加到本地的 NV。
6、E 信息表中。 4. 根据权利要求 1 所述的方法, 其特征在于, 所述方法进一步包括 : 该边缘节点接收到下挂 NVE 设备发送的 ARP 请求报文时, 将本边缘节点的 MAC 地址响 应给所述 NVE 设备, 使所述 NVE 设备使用该边缘节点的 MAC 地址作为目的 MAC 地址发送数 据报文。 5. 根据权利要求 1-4 任意一项所述的方法, 其特征在于, 所述方法进一步包括 : 该边缘节点接收到 TRILL 网络中的其他节点发送的报文时, 若确定该报文的 TRILL 头 中的出昵称为本边缘节点的昵称, 则剥掉MAC头和TRILL头, 对剥掉TRILL头的报文替换IP 头并封装MAC头。
7、 ; 其中, 替换后的IP头中的源IP地址为根据该报文中的入昵称和源端口号 在NVE信息表中匹配到的IP地址, 目的IP地址为根据该报文的出昵称和目的端口号在NVE 信息表中匹配到的IP地址 ; 封装的MAC头的源MAC地址为本边缘节点的MAC地址, 目的MAC 地址为根据该报文的出昵称和目的端口号在 NVE 信息表中匹配到的 MAC 地址 ; 该边缘节点将替换IP头并封装MAC头的报文, 通过接收到的报文携带的目的端口号对 应的端口转发。 6. 一种多链路透明互联 TRILL 网络中报文转发装置, 应用于 TRILL 网络中的任一边缘 节点上, 其特征在于, 该装置包括 : 获取单元、 生成。
8、单元、 接收单元、 处理单元和发送单元 ; 所述获取单元, 用于获得TRILL网络中各边缘节点下挂网络虚拟化边缘NVE设备的NVE 权 利 要 求 书 CN 104301232 A 2 2/3 页 3 信息 ; 所述生成单元, 用于根据所述获取单元获得的 NVE 信息生成 NVE 信息表, 根据 NVE 信息 表生成转发信息表 ; 该转发信息表包括 : 目的 IP 地址、 源 IP 地址、 操作指示和出端口号 ; 所 述 NVE 信息表包括 : 边缘节点的昵称、 因特网协议 IP 地址、 端口号 ; 所述接收单元, 用于接收下挂 NVE 设备发送的数据报文 ; 所述处理单元, 用于当所述接收单。
9、元接收到的所述数据报文时, 若确定该数据报文的 目的IP地址在所述生成单元生成的NVE信息表中对应的昵称不为本节点的昵称, 则剥离该 数据报文的 MAC 头, 根据该数据报文的目的 IP 地址和源 IP 地址在转发信息表中查找对应 的操作指示和出端口号, 根据所述操作指示替换指定的 IP 头、 封装指定的 TRILL 头和 MAC 头 ; 并从所述出端口号对应的出端口转发封装后的数据报文 ; 所述发送单元, 进一步用于将所述处理单元封装后的数据报文从所述出端口号对应的 出端口转发。 7. 根据权利要求 6 所述的装置, 其特征在于, 所述生成单元, 进一步用于生成的 NVE 信息表还包括 : 。
10、MAC 地址 ; 所述处理单元, 进一步用于若确定该数据报文的目的IP地址在NVE信息表中对应的昵 称为本节点的昵称, 则根据该数据报文的目的 IP 地址在转发信息表中查找对应的操作指 示和出端口号, 根据所述操作指示替换指定的 MAC 头 ; 所述发送单元, 进一步用于将所述处理单元替换指定的 MAC 头后的数据报文, 从所述 出端口号对应的出端口转发。 8. 根据权利要求 6 所述的装置, 其特征在于, 所述获取单元, 具体用于学习到本地 NVE 设备的 NVE 信息时, 触发所述生成单元生成 NVE 信息表, 并将生成的本地 NVE 设备对应的 NVE 信息表项内容同步给其它节点 ; 所。
11、述接收单元, 用于接收远端边缘节点同步的 NVE 信息表项内容 ; 所述生成单元, 具体用于当所述接收单元接收到远端边缘节点同步的 NVE 信息表项内 容时, 将获得的 NVE 信息表项内容增加到本地的 NVE 信息表中。 9. 根据权利要求 6 所述的装置, 其特征在于, 所述接收单元, 进一步用于接收本边缘节点下挂 NVE 设备发送的 ARP 请求报文 ; 所述发送单元, 用于当所述接收单元接收到下挂NVE设备发送的ARP请求报文时, 将本 边缘节点的 MAC 地址响应给所述 NVE 设备, 使所述 NVE 设备使用该边缘节点的 MAC 地址作 为目的 MAC 地址发送数据报文。 10. 。
12、根据权利要求 6-9 任意一项所述的装置, 其特征在于, 所述接收单元, 进一步用于接收 TRILL 网络中的其他节点发送的报文 ; 所述处理单元, 进一步用于当所述接收单元接收到所述报文时, 若确定该报文的 TRILL 头中的出昵称为本边缘节点的昵称, 则剥掉 MAC 头和 TRILL 头, 对剥掉 TRILL 头的报文替换 IP 头并封装 MAC 头 ; 其中, 替换后的 IP 头中的源 IP 地址为根据该报文中的入昵称和源端 口号在 NVE 信息表中匹配到的 IP 地址, 目的 IP 地址为根据该报文的出昵称和目的端口号 在 NVE 信息表中匹配到的 IP 地址 ; 封装的 MAC 头的。
13、源 MAC 地址为本边缘节点的 MAC 地址, 目的 MAC 地址为根据该报文的出昵称和目的端口号在 NVE 信息表中匹配到的 MAC 地址 ; 并 将替换 IP 头并封装 MAC 头的报文 ; 权 利 要 求 书 CN 104301232 A 3 3/3 页 4 所述发送单元, 进一步用于通过接收到的报文携带的目的端口号对应的端口转发所述 处理单元处理后的报文。 权 利 要 求 书 CN 104301232 A 4 1/9 页 5 一种多链路透明互联网络中报文转发方法和装置 技术领域 0001 本发明涉及通信技术领域, 特别涉及一种多链路透明互联网络中报文转发方法和 装置。 背景技术 000。
14、2 在部署叠加 (Overlay) 网络时有两种情况 : 0003 1、 当 在 现 有 的 网 络 中 搭 建 Overlay 网 络 时, 基 于 因 特 网 协 议 (Internet Protocol, IP) 的底层 (underlay) 网络已构建好, 只需要部署虚拟 overlay 网络即可, 是增 量部署 ; 0004 2、 当 underlay 网络和 overlay 网络都是全新部署的时候, 例如新建数据中心, 此 时 underlay 网络, 即普通 IP 网络的构建非常复杂, 工作量巨大。 发明内容 0005 有鉴于此, 本申请提供一种多链路透明互联网络中报文转发方法和。
15、装置, 以解决 新建 overlay 网络和 underlay 网络时, underlay 网络搭建的工作量巨大的问题。 0006 为解决上述技术问题, 本申请的技术方案是这样实现的 : 0007 一种多链路透明互联 TRILL 网络中报文转发方法, 应用于 TRILL 网络中的任一边 缘节点上, 该方法包括 : 0008 边缘节点获得 TRILL 网络中各边缘节点下挂网络可视实体 NVE 设备的 NVE 信息, 并生成 NVE 信息表, 所述 NVE 信息表包括 : 边缘节点的昵称、 因特网协议 IP 地址、 端口号 ; 0009 该边缘节点根据 NVE 信息表生成转发信息表 ; 该转发信息。
16、表包括 : 目的 IP 地址、 源 IP 地址、 操作指示和出端口号 ; 0010 该边缘节点接收到下挂 NVE 设备发送的数据报文时, 若确定该数据报文的目的 IP 地址在NVE信息表中对应的昵称不为本节点的昵称, 则剥离该数据报文的MAC头, 根据该数 据报文的目的 IP 地址和源 IP 地址在转发信息表中查找对应的操作指示和出端口号, 根据 所述操作指示替换指定的 IP 头、 封装指定的 TRILL 头和 MAC 头 ; 并从所述出端口号对应的 出端口转发封装后的数据报文。 0011 一种多链路透明互联 TRILL 网络中报文转发装置, 应用于 TRILL 网络中的任一边 缘节点上, 该。
17、装置包括 : 获取单元、 生成单元、 接收单元、 处理单元和发送单元 ; 0012 所述获取单元, 用于获得 TRILL 网络中各边缘节点下挂网络可视实体 NVE 设备的 NVE 信息 ; 0013 所述生成单元, 用于根据所述获取单元获得的 NVE 信息生成 NVE 信息表, 根据 NVE 信息表生成转发信息表 ; 该转发信息表包括 : 目的 IP 地址、 源 IP 地址、 操作指示和出端口 号 ; 所述 NVE 信息表包括 : 边缘节点的昵称、 因特网协议 IP 地址、 端口号 ; 0014 所述接收单元, 用于接收下挂 NVE 设备发送的数据报文 ; 0015 所述处理单元, 用于当所述。
18、接收单元接收到的所述数据报文时, 若确定该数据报 说 明 书 CN 104301232 A 5 2/9 页 6 文的目的IP地址在所述生成单元生成的NVE信息表中对应的昵称不为本节点的昵称, 则剥 离该数据报文的 MAC 头, 根据该数据报文的目的 IP 地址和源 IP 地址在转发信息表中查找 对应的操作指示和出端口号, 根据所述操作指示替换指定的 IP 头、 封装指定的 TRILL 头和 MAC 头 ; 并从所述出端口号对应的出端口转发封装后的数据报文 ; 0016 所述发送单元, 进一步用于将所述处理单元封装后的数据报文从所述出端口号对 应的出端口转发。 0017 由上面的技术方案可知, 。
19、本申请中使用 TRILL 网络作为承载 overlay 网络的 underlay网络, 并给出了作为undelay网络的TRILL网络中报文转发的过程, 本申请在部署 overlay 网络时, 使用 TRILL 网络作为 underlay 网络承载, 简化部署过程。 附图说明 0018 图 1 为本申请实施例中 TRILL 网络中报文转发流程示意图 ; 0019 图 2 为本申请实施例中 TRILL 网络中任一边缘节点获得各边缘节点下挂 NVE 设备 的 NVE 信息的流程示意图 ; 0020 图 3 为本申请实施例中 TRILL 网络示意图 ; 0021 图 4 为本申请实施例中应用于上述技。
20、术的装置结构示意图。 具体实施方式 0022 为了使本发明的目的、 技术方案及优点更加清楚明白, 下面结合附图并据实施例, 对本发明的技术方案进行详细说明。 0023 参 见 图 1,图 1 为 本 申 请 实 施 例 中 多 链 路 透 明 互 联 (TRansparent Interconnection of Lots of Links, TRILL)网络中报文转发流程示意图。 具体步骤包括 : 0024 步骤 101, 边缘节点获得 TRILL 网络中各边缘节点下挂网络虚拟化边缘 (Network Virtual Edge, NVE) 设备的 NVE 信息, 并生成 NVE 信息转发表。。
21、 0025 参见图2, 图2为本申请实施例中TRILL网络中任一边缘节点获得各边缘节点下挂 NVE 设备的 NVE 信息的流程示意图。具体步骤包括 : 0026 步骤 201, 边缘节点学习到本地 NVE 设备的 NVE 信息时, 生成 NVE 信息表。 0027 TRILL 网络中的各边缘节点在下挂 NVE 设备的端口上配置使能 NVE 设备的自动发 现功能。 各NVE设备将自身的NVE信息通告给与其直连的边缘节点。 通告时可以使用链路层 发现协议 (Link Layer Discovery Protocol, LLDP), 地址解析协议 (Address Resolution Protoc。
22、ol, ARP), 动态主机配置协议(Dynamic Host Confi guration Protocol, DHCP)等协议 进行通告。 0028 边缘节点接收到下挂 NVE 设备通告的 NVE 信息时, 在本地进行存储, 可以以本地 NVE 信息表的形式存储, 存储时, 还需存储学习到该 NVE 信息的端口的端口号, 即本边缘节 点与该 NVE 设备相连的端口的端口号。 0029 参见图 3, 图 3 为本申请实施例中 TRILL 网络示意图。图 3 中, 节点 A 到节点 F 的 昵称分别为 A 到 F, 节点 C、 节点 D、 节点 E 和节点 F 为边缘节点, 各节点之间运行通告。
23、协议, 如 TRILL- 中间系统到中间系统 (Intermediate System-to-Intermediate System, ISIS), 用于将本地学习到的下挂 NVE 设备的 NVE 信息同步给其它节点。 说 明 书 CN 104301232 A 6 3/9 页 7 0030 节点 C、 节点 D、 节点 E 和节点 F 下挂 NVE 设备的端口上配置使能 NVE 设备自动发 现功能, 各 NVE 设备分别将自身的 NVE 信息通过给与其直连的边缘节点。 0031 以 NVE 设备 1 和 NVE 设备 5 通告 NVE 信息为例。NVE 设备 1 将 NVE 信息 (IP 地址。
24、 1.1.1.1、 MAC 地址 0-0-1) 通告给节点 C, NVE 设备 5 将 NVE 信息 (IP 地址 1.1.1.5、 MAC 地 址 0-0-5) 通告给节点 C, 节点 C 学习到 NVE 设备 1 的 NVE 信息的端口号为 1, 学习到 NVE 设 备 2 的 NVE 信息的端口号为 2。 0032 边缘节点 C 接收到 NVE 设备 1 和 NVE 设备 5 通告的 NVE 信息时, 以本地 NVE 信息 表的形式进行存储。参见表 1, 表 1 为节点 C 上生成的本地 NVE 设备的 NVE 信息表包含的内 容。 0033 昵称MACIP端口 C0-0-11.1.1.。
25、1 1 C0-0-51.1.1.5 2 0034 表 1 0035 步骤202, 该边缘节点将生成的本地NVE设备对应的NVE信息表项内容同步给其它 节点。 0036 仍然以图 3 中的节点 C 为例, 节点 C 将本地 NVE 设备对应的 NVE 信息表项内容通 过 TRILL ISIS LSP 泛洪给节点 A, 节点 B, 节点 D, 节点 F 和节点 E。 0037 节点 A 和节点 B 接收到泛洪的 NVE 信息表项内容, 只是为了继续向其它边缘节点 泛洪该 NVE 信息, 不会用于后续转发信息表项的生成。 0038 步骤 203, 该边缘节点接收到远端边缘节点同步的 NVE 信息表项。
26、内容时, 将获得的 NVE 信息表项内容增加到本地的 NVE 信息表中。 0039 该边缘节点接收到其它节点同步的 NVE 信息表项内容时, 直接存储到本地 NVE 设 备对应的 NVE 信息表中, 也可以以远端 NVE 信息表的形式进行存储。 0040 本申请实施例中以本地 NVE 信息表和远端 NVE 信息表存储在一张 NVE 信息表中为 例, 通过存储的 NVE 信息表项中的昵称, 区别任一条 NVE 信息表项为本地 NVE 信息表项和远 端 NVE 信息表项。 0041 仍以图 3 为例, 节点 C、 节点 D、 节点 E 和节点 F 之间会同步各自学习到的下挂 NVE 设备的 NVE。
27、 信息而生成的 NVE 信息表内容, 以节点 C 接收到节点 D、 节点 E 和节点 F 同步的 NVE 信息表内容为例。参见表 2, 表 2 为节点 C 上 NVE 设备表包含的内容。 0042 昵称MAC 地址 IP 地址端口号 C0-0-11.1.1.11 C0-0-51.1.1.52 D0-0-21.1.1.21 说 明 书 CN 104301232 A 7 4/9 页 8 E0-0-31.1.1.31 F0-0-41.1.1.41 0043 表 2 0044 根据实际同步的NVE信息表项内容生成表2, 如果同步的NVE信息表内容中不包括 MAC 地址, 则表 2 中昵称为 D、 E、。
28、 F 对应的表项不包括 MAC 地址。 0045 步骤 102, 该边缘节点根据 NVE 信息表生成转发信息表。 0046 本步骤中转发信息表包括 : 目的 IP 地址、 操作指示和出端口号。 0047 本申请具体实施例中, 针对远端边缘节点下挂的 NVE 设备与本边缘节点下挂 NVE 设备的 NVE 信息生成转发信息表项存在不同, 下面详细描述针对每一条 NVE 信息生成转发 信息表项的过程 : 0048 (1)、 由于本申请具体实施例中, 边缘节点接收到本地 NVE 设备向远端 NVE 设备发 送的数据报文时, 需要修改 IP 头的封装, 修改后的 IP 头封装为目的端口号和源端口号, 因。
29、 此, 本申请实施例中生成的目的 IP 地址为远端 NVE 设备的 IP 地址的转发信息表时还应该 包括源 IP 地址, 包括的源 IP 地址本地 NVE 设备的 IP 地址 ; 0049 当所述目的 IP 地址为远端 NVE 设备的 IP 地址时, 所述操作指示为替换 IP 头、 封 装 TRILL 头和 MAC 头 ; 替换后的 IP 头的源端口号为所述源 IP 地址在 NVE 信息表中对应的 端口号, 目的端口号为所述目的 IP 地址在 NVE 信息表中对应的端口号 ; 封装的 TRILL 头、 MAC 头, 以及出端口号根据所述目的 IP 地址在 NVE 信息表中对应的昵称确定 ; 0。
30、050 其中, 所述封装的 TRILL 头、 MAC 头, 以及出端口号根据所述目的 IP 地址在 NVE 信 息表中对应的昵称确定, 具体包括 : 0051 所述 TRILL 头的入昵称为本边缘节点的昵称, 出昵称为所述目的 IP 地址在 NVE 信 息表中对应的昵称在 TRILL 路由表 ( 目的 nickname, 下一跳 nickname) 中对应的下一跳昵 称 ; 0052 所述 MAC 头的源 MAC 地址为本边缘节点的 MAC 地址, 目的 MAC 地址为所述下一跳 昵称在 TRILL 邻接表 ( 下一跳 nickname, MAC 地址, 出端口号 ) 中对应的 MAC 地址 。
31、; 0053 所述出端口号为所述下一跳昵称在 TRILL 邻接表 ( 下一跳 nickname, MAC 地址, 出 端口号 ) 中对应的端口号。 0054 (2)、 当所述目的 IP 地址为本地 NVE 设备的 IP 地址时, 所述操作指示为替换 MAC 头 ; 0055 所述替换 MAC 头包括 : 替换源 MAC 地址为本边缘节点的 MAC 地址, 目的 MAC 地址为 所述目的IP地址在NVE信息表中对应的MAC地址 ; 所述出端口号为所述目的IP地址在NVE 信息表中对应的端口号。 0056 下面仍以图 3 为例, 图 3 中的节点 C 根据获得的 NVE 信息生成的转发信息表包含 。
32、的内容见表 3。 0057 表 3 中, 第 1 条和第 2 条转发信息表项为根据本地 NVE 设备对应的 NVE 设备表项 生成的转发信息表项, 以第 1 条转发信息表项的生成为例。 0058 第 1 条转发信息表项中的 IP 地址和出端口号为该条 NVE 信息, 即表 2 中的第 1 条 NVE 信息表项中的 IP 地址和端口号 ; 操作指示中替换的目的 MAC 地址为表 2 中第 1 条 NVE 说 明 书 CN 104301232 A 8 5/9 页 9 信息中的 MAC 地址, 替换的源 MAC 地址为节点 C 的 MAC 地址。 0059 表 3 中第 3、 第 4 和第 5 条转。
33、发信息表项是以本地 NVE 设备 1 和远端各 NVE 设备对 应的 NVE 信息生成转发信息表项为例, 以第 3 条转发信息表项的生成为例。 0060 第 3 条转发信息表项中的目的 IP 地址为远端 NVE 设备对应的 NVE 信息表项, 即表 2 中第 3 条 NVE 信息表项中的 IP 地址 ; 表 2 中第 3 条 NVE 信息表项中的昵称 D 在 TRILL 路 由表 (D, A) 中对应的下一跳昵称 A, 下一跳昵称 A 在 TRILL 邻接表 (A, MAC0-0-a, 出端口号 3) 对应的 MAC 地址为 MAC0-0-a 和出端口号 3, 源 IP 地址对应表 2 中的第。
34、 1 条 NVE 信息表 项, 源端口号为表 2 第 1 条 NVE 信息表项中的端口号, 目的端口号为表 2 中第 3 条 NVE 信息 表项中的端口号, 则替换 IP 头时, 源端口号为 1, 目的端口号为 1, 封装的 TRILL 头时, 入昵 称为 C, 出昵称为 A ; 封装 MAC 头时, 目的 MAC 地址为 MAC0-0-a, 源 MAC 地址为 MAC0-0-c ; 出 端口号为 3。 0061 0062 表 3 0063 步骤 103, 该边缘节点接收到下挂 NVE 设备发送的数据报文时, 若确定该数据报文 的目的 IP 地址在 NVE 信息表中对应的昵称不为本节点的昵称,。
35、 则剥离该数据报文的 MAC 说 明 书 CN 104301232 A 9 6/9 页 10 头, 根据该数据报文的目的 IP 地址和源 IP 地址在转发信息表中查找对应的操作指示和出 端口号, 根据所述操作指示替换指定的IP头、 封装指定的TRILL头和MAC头 ; 并从所述出端 口号对应的出端口转发封装后的数据报文。 0064 若确定该数据报文的目的IP地址在NVE信息表中对应的昵称为本节点的昵称, 则 根据该数据报文的目的 IP 地址在转发信息表中查找对应的操作指示和出端口号, 根据所 述操作指示替换指定的 MAC 头, 并从所述出端口号对应的出端口转发替换指定的 MAC 头后 的数据报。
36、文。 0065 该边缘节点接收到 TRILL 网络中的其他节点发送的报文时, 若确定该报文的 TRILL 头中的出昵称为本边缘节点的昵称, 则剥掉 MAC 头和 TRILL 头, 对剥掉 TRILL 头的报 文替换 IP 头并封装 MAC 头 ; 其中, 替换后的 IP 头中的源 IP 地址为根据该报文中的入昵称 和源端口号在 NVE 信息表中匹配到的 IP 地址, 目的 IP 地址为根据该报文的出昵称和目的 端口号在 NVE 信息表中匹配到的 IP 地址 ; 封装的 MAC 头的源 MAC 地址为本边缘节点的 MAC 地址, 目的 MAC 地址为根据该报文的出昵称和目的端口号在 NVE 信息。
37、表中匹配到的 MAC 地 址 ; 0066 该边缘节点将替换IP头并封装MAC头的报文, 通过接收到的报文携带的目的端口 号对应的端口转发。 0067 边缘节点下挂 NVE 设备需要向其它 NVE 设备发送数据报文之前, 需确定本地是否 存在所述其它 NVE 设备的对应的 ARP 表项, 如果是, 根据该 ARP 表项直接向所述其它 NVE 设 备发送数据报文 ; 否则, 会发送 ARP 请求报文请求所述其它 NVE 设备的 IP 地址, 该 ARP 请求 报文的目标端 IP 地址为所述其它 NVE 设备的 IP 地址。 0068 边缘节点侦听到下挂 NVE 设备发送的 ARP 请求报文时, 。
38、进行 ARP 代答, 代答的 MAC 地址为本边缘节点的 MAC 地址, 不是目标端 IP 地址对应的 MAC 地址。边缘节点代答功能防 止 ARP 请求报文广播到 TRILL 网络中, 避免了网络资源的浪费。 0069 仍以图 3 为例, 详细说明报文在 TRILL 网络中报文转发过程 : 0070 首先以 NVE 设备 1 向 NVE 设备 5 发送数据报文为例。若 NVE 设备 1 本地存在 NVE 设备 5 的 IP 地址 1.1.1.5 对应的 ARP 表项, 则发送的数据报文的内容见表 4。 0071 0072 表 4 0073 本申请实施例中的 NVE 设备为一个服务器中的虚拟交。
39、换机, 该虚拟交换机下挂虚 拟机, NVE 设备为下挂虚拟机发送的报文封装 MAC 头, 和 IP 头, 并发送给与其直连的边缘节 点。 0074 节 点 C 接 收 到 表 4 对 应 的 数 据 报 文 时, 根 据 该 数 据 报 文 的 目 的 IP 地 址 (DIP1.1.1.5) 在 NVE 信息表中查找到对应的昵称 C, 确定目的 IP 地址对应的昵称为本节点 的昵称, 则根据该数据报文的目的IP地址在转发信息表中查找, 由表3可知, 查找到的转发 信息表项为第 2 条, 则根据查找到的转发信息表项转发数据报文。 0075 该条转发信息表项中的操作指示为替换目的MAC地址为0-0。
40、-5, 替换源MAC地址为 说 明 书 CN 104301232 A 10 7/9 页 11 0-0-c, 则根据操作指示处理该数据报文后的数据报文内容见表 5。 0076 0077 表 5 0078 节点C将表5对应的数据报文通过查找到的转发信息表现中出端口号对应的端口 发送, 即发送给了 NVE 设备 5。 0079 然后以 NVE 设备 1 向 NVE 设备 3 发送数据报文为例, 若 NVE 设备 1 本地存在 NVE 设备 3 的 IP 地址 1.1.1.3 对应的 ARP 表项, 则发送的数据报文的内容见表 6。 0080 0081 表 6 0082 节点 C 接收到表 6 对应的。
41、数据报文时, 根据该数据报文的目的 IP 地址在 NVE 信息 表中确定对应的昵称 E 不为本节点的昵称 C, 则剥掉该数据报文的 MAC 头 ; 并根据该数据报 文的目的 IP 地址 (DIP1.1.1.3) 和源 IP 地址在转发信息表中查找, 由表 3 可知, 查找到的 转发信息表项为第 4 条, 则根据查找到的转发信息表项转发该剥掉 MAC 头的数据报文。 0083 该条转发信息表项中的操作指示为 : 替换 IP 头、 源端口号为 1, 目的端口号为 1 ; 封装 TRILL 头, 入昵称为 C, 出昵称为 E ; 封装 MAC 头, DMAC 为 0-0-a, SMAC 为 0-0-。
42、c ; 则根据 操作指示处理剥掉 MAC 头的数据报文后的报文内容见表 7。 0084 0085 表 7 0086 表 7 对应的报文通过查找到的转发信息表项中的出端口号 3 对应的端口 3 发送。 0087 由表 7 的报文对应的封装格式, 可见, 本申请实施例中 TRILL 头内封装的是 IP 头, 不是现有实现中的 MAC 头, 使 overlay 网络在部署时, TRILL 网络作为 underlay 网络时, 部 署更简单。 0088 节点 A 接收到表 7 对应的报文时, 剥掉 MAC 头, 并根据该报文的 TRILL 头中的出昵 称确定本节点不为该报文的出节点, 则根据 TRIL。
43、L 路由表和 TRILL 邻接表为该剥掉 MAC 头 的报文封装 MAC 头并转发, 同现有实现。 0089 节点A根据出昵称E在TRILL路由表中确定下一跳昵称为E, 并且根据下一跳昵称 E 在 TRILL 邻接表中确定对应的 MAC 地址为 0-0-e, 和出端口号为 5。则使用目的 MAC 地址 0-0-e 和源 MAC 地址对剥掉 MAC 地址的报文进行 MAC 封装。节点 A 将处理后的报文通过端 口 6 发送。对表 7 对应的报文进行上述处理后的报文的内容见表 8。 说 明 书 CN 104301232 A 11 8/9 页 12 0090 0091 表 8 0092 节点 E 接。
44、收到表 8 对应的报文, 根据该报文的 TRILL 头中的出昵称确定本节点为 该报文的出节点, 则剥离 MAC 头和 TRILL 头, 并替换 IP 头, 封装 MAC 头, 其中, 替换后的 IP 头中的源 IP 地址为根据该报文中的入昵称和源端口号在 NVE 信息表中匹配到的 IP 地址 1.1.11, 目的 IP 地址为根据该报文的出昵称和目的端口号在 NVE 信息表中匹配到的 IP 地址 1.1.1.3 ; 封装的 MAC 头的源 MAC 地址为本边缘节点的 MAC 地址 0-0-e, 目的 MAC 地址 为根据该报文的出昵称和目的端口号在NVE信息表中匹配到的MAC地址0-0-3 ;。
45、 则节点E通 过上述操作处理后的报文内容见表 9。 0093 0094 表 9 0095 节点 E 将表 9 对应的报文通过接收的报文中的 IP 头中的目的端口号 1 对应的端 口发送给 NVE 设备 3。 0096 基于同样的发明构思, 本申请还提出一种多链路透明互联网络中报文转发装置, 应用于TRILL网络中的任一边缘节点上。 参见图4, 图4为本申请实施例中应用于上述技术 的装置结构示意图。该装置包括 : 获取单元 401、 生成单元 402、 接收单元 403、 处理单元 404 和发送单元 405 ; 0097 获取单元 401, 用于获得 TRILL 网络中各边缘节点下挂网络可视实。
46、体 NVE 设备的 NVE 信息 ; 0098 生成单元 402, 用于根据获取单元 401 获得的 NVE 信息生成 NVE 信息表, 根据 NVE 信息表生成转发信息表 ; 该转发信息表包括 : 目的 IP 地址、 源 IP 地址、 操作指示和出端口 号 ; 所述 NVE 信息表包括 : 边缘节点的昵称、 因特网协议 IP 地址、 端口号 ; 0099 接收单元 403, 用于接收下挂 NVE 设备发送的数据报文 ; 0100 处理单元 404, 用于当接收单元 403 接收到的所述数据报文时, 若确定该数据报文 的目的 IP 地址在生成单元 402 生成的 NVE 信息表中对应的昵称不为。
47、本节点的昵称, 则剥离 该数据报文的 MAC 头, 根据该数据报文的目的 IP 地址和源 IP 地址在转发信息表中查找对 应的操作指示和出端口号, 根据所述操作指示替换指定的IP头、 封装指定的TRILL头和MAC 头 ; 并从所述出端口号对应的出端口转发封装后的数据报文 ; 0101 发送单元 405, 进一步用于将处理单元 404 封装后的数据报文从所述出端口号对 应的出端口转发。 0102 较佳地, 0103 生成单元 402, 进一步用于生成的 NVE 信息表还包括 : MAC 地址 ; 说 明 书 CN 104301232 A 12 9/9 页 13 0104 处理单元 404, 进。
48、一步用于若确定该数据报文的目的 IP 地址在 NVE 信息表中对应 的昵称为本节点的昵称, 则根据该数据报文的目的 IP 地址在转发信息表中查找对应的操 作指示和出端口号, 根据所述操作指示替换指定的 MAC 头 ; 0105 发送单元 405, 进一步用于将处理单元 404 替换指定的 MAC 头后的数据报文, 从所 述出端口号对应的出端口转发。 0106 较佳地, 0107 获取单元 401, 具体用于学习到本地 NVE 设备的 NVE 信息时, 触发生成单元 402 生 成 NVE 信息表, 并将生成的本地 NVE 设备对应的 NVE 信息表项内容同步给其它节点 ; 0108 接收单元 。
49、403, 用于接收远端边缘节点同步的 NVE 信息表项内容 ; 0109 生成单元402, 具体用于当接收单元403接收到远端边缘节点同步的NVE信息表项 内容时, 将获得的 NVE 信息表项内容增加到本地的 NVE 信息表中。 0110 较佳地, 0111 接收单元 403, 进一步用于接收本边缘节点下挂 NVE 设备发送的 ARP 请求报文 ; 0112 发送单元 405, 用于当接收单元 403 接收到下挂 NVE 设备发送的 ARP 请求报文时, 将本边缘节点的 MAC 地址响应给所述 NVE 设备, 使所述 NVE 设备使用该边缘节点的 MAC 地 址作为目的 MAC 地址发送数据报文。 0113 较佳地, 0114 接收单元 403, 进一步用于接收 TRILL 网络中的其他节点发送的报文 ; 0115 处理单元 40。