CN105264834A - 一种在nvo3网络中处理组播报文的方法、装置和nvo3网络 - Google Patents

一种在nvo3网络中处理组播报文的方法、装置和nvo3网络 Download PDF

Info

Publication number
CN105264834A
CN105264834A CN201380000655.2A CN201380000655A CN105264834A CN 105264834 A CN105264834 A CN 105264834A CN 201380000655 A CN201380000655 A CN 201380000655A CN 105264834 A CN105264834 A CN 105264834A
Authority
CN
China
Prior art keywords
multicast message
nve
port
multicast
exit port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201380000655.2A
Other languages
English (en)
Other versions
CN105264834B (zh
Inventor
郝卫国
厉益舟
李振斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN105264834A publication Critical patent/CN105264834A/zh
Application granted granted Critical
Publication of CN105264834B publication Critical patent/CN105264834B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种在NVO3网络中处理组播报文的方法、装置和NVO3网络。所述第一多归NVE接收多归TES发送的第一组播报文,获取所述第一组播报文的入端口和虚拟局域网标识VLAN?ID;根据所述第一组播报文的入端口以及所述VLAN?ID获取所述第一组播报文的虚拟叠加网标识VN?ID;确定所述入端口是否为所述第一组播报文的VN?ID的指定转发者DF;在所述入端口不是所述第一组播报文的VN?ID的DF情况下,为所述第一组播报文封装扩展NVO3头;将所述封装了扩展NVO3头的第一组播报文发送给包括所述第二多归NVE的其他NVE;所述扩展NVO3头中携带所述第一组播报文的VN?ID以及所述入端口对应的链路聚合组标识LAG?ID。本发明能够解决TES多活接入场景下引起的IP地址浪费的问题。

Description

一种在 NV03网络中处理组播报文的方法、 装置和 NV03网络 技术领域 本发明涉及通信领域,尤其涉及一种在基于三层网络的网络虚拟化(英文: network virtual ization over layer 3 , 缩写: NV03 ) 网络中处理组播报文的方法、 装置和 NV03 网络。 背景技术
NV03 能够通过 MAC in IP 封装实现二层虚拟专用网 (英文: virtual private network, 缩写: VPN), 虚拟扩展局域网 (英文: virtual extensible local area network, 缩写: VXLAN)和网络虚拟化通用路由封装(英文: network virtualization generic routing encapsulation, 缩写: NVGRE ) 是实现 NV03组网的两种典型技术。 VXLAN和 NVGRE分别通过 MAC In UDP 和 MAC In GRE封装使不同 VPN内的二层报文能够跨三层 IP网络进行传输, VXLAN和 NVGRE 隧道封装中还分别包括 24bit的虚拟叠加网 (英文: virtual overlay network, 缩写: VN) 标识 (VN ID), 通过给报文中封装 VN ID, 不同虚拟叠加网之间能够实现流量隔离。 数据中心中一个租户可以对应一个或多个虚拟叠加网。
VN的边缘设备称为网络虚拟边缘 (英文: network virtual ization edge , 缩写: NVE ) , 其主要功能就是将租户终端系统 (英文: tenant end system, 缩写: TES ) 加入 虚拟叠加网, NVE能够通过 VN ID隔离不同虚拟叠加网内的流量。 NVE存储有每个虚拟 叠加网有对应的组播和单播转发表,对于本地 TES发送过来的组播流量(包括未知单播、 广播和组播, 这里统称为组播), 根据本地组播转发表, 向其它 TES复制发送, 根据所 述 TES的虚拟叠加网对应的网络侧组播转发表, 向其它远端 NVE进行复制转发; 组播报 文在向远端 NVE发送的时候, 可以通过头结点复制或组播逐跳复制两种方式, 头结点复 制方式采用单播 NV03封装, 隧道的目的 IP为目的 NVE的 IP地址, 采用组播复制方式, 隧道目的 IP为组播 IP地址。 VN和组播 IP地址的对应关系由网络管理员在每个 NVE上 预先设定。 NVE对于 TES发送的单播报文,通过查找单播转发表, 向本地 TES或远端 NVE 进行转发, 在向远端 NVE转发的时候, 需要进行所述单播报文进行单播 NV03封装。
如图 1所示, 为现有技术中 NV03网络的结构示意图。 其中, 各 TES分别通过各自 的 NVE接入 VN。 为了保证 TES的可靠性, 可以将 TES通过多个 NVE接入网络。 如图 1 中, TES1分别通过 NVE1的端口 1和 NVE2的端口 2接入 NV03网络。 这种接入方式被称 为多归接入, 连接 TES1的 NVE1和 NVE2被称为多归 NVE, NVE1的端口 1和 NVE2的端口 2构成跨设备的链路聚合组 (英文: l ink aggregation group, 简称: LAG); TES 1被称 为多归 TES; 多归 NVE之外的 NVE, 被称为多归 NVE的远端 NVE。 当所述多个多归 NVE 均能转发多归 TES 的报文时, 这种接入方式被称为多活 (英文: al l-active 或 active-active ) 接入。
在多活接入场景下, 对于 VN内的组播报文, 需要做到:
1、 各多归 NVE在向本地端口复制转发远端 NVE发送的组播报文时, 避免多归 TES 收到多份远端 NVE发送的组播报文; 以及
2、各多归 NVE之间能够提供水平分割机制,以避免将多归 TES发送的报文经过 NV03 网络又环回到该多归 TES。
现有技术提供了一种水平分割方法, 多归 NVE为每个 LAG分别配置一个 IP地址, 作为该多归 NVE通过所述 LAG中的端口发送报文时的源 IP地址, 所述多归 NVE记录所 述 LAG禾 P IP地址的对应关系。 NV03网络中的 NVE之间彼此通告每个 NVE的 LAG禾口 IP 地址的对应关系, 每个 NVE都记录其他 NVE的 LAG和 IP地址的对应关系。
当第一 NVE收到第二 NVE发送的组播报文后, 根据所述组播报文中的源 IP地址查 找所述第一 NVE记录的 LAG与 IP地址的对应关系, 如果该源 IP地址没有对应的 LAG, 则所述第一 NVE根据所述组播报文中的 VN ID向所有对应所述 VN ID的本地端口复制所 述组播报文; 如果该源 IP地址存在对应的 LAG, 并且所述第一 NVE与所述第二 NVE属于 同一 LAG, 则所述第一 NVE不向所述 LAG对应的本地端口复制所述组播报文。 其中, 所 述本地端口是指连接 TES的端口。
经过研究发现, 上述水平分割方法中多归 NVE需要为每个 LAG分配 IP地址, 如果 网络中 LAG数目很多, 会造成 IP地址的浪费, 并且, 每个多归 NVE需要针对每个其它 多归 NVE的 IP地址进行是否属于同一个 LAG的判断, 如果多归 NVE数目很多, 会降低 报文的转发效率。 发明内容
本发明提供了一种在 NV03网络中处理组播报文的方法、 装置和 NV03网络, 用于解决 TES多活接入场景下引起的 IP地址浪费、 转发性能降低的问题。
本发明第一方面提供了一种在基于三层网络的网络虚拟化 NV03网络中处理组播报 文的方法, 所述方法包括: 接收第一组播报文;
在所述第一组播报文的发送方为本地多归租户终端系统 TES的情况下, 获取所述第 一组播报文的入端口及虚拟局域网标识 VLAN ID, 根据所述入端口和所述 VLAN ID, 获取 所述组播报文的虚拟叠加网标识 VN ID;
确定所述入端口是否为所述 VN ID的指定转发者 DF; 在所述入端口为所述 VN ID的 DF的情况下, 为所述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给其他 NVE; 所述扩展 NV03头中携带所述 第一组播报文的 VN ID以及所述入端口对应的链路聚合组标识 LAG ID。
在所述第一方面的第一种实现方式中, 所述确定所述入端口是否为所述 VN ID的指定转发 者 DF包括: 根据所述入端口和所述第一组播报文的 VN ID查找 DF表, 确定所述入端口是 否为所述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。 基于所述第一方面或所述第一方面的第一种实现方式,在所述第一方面的第二种实 现方式中, 所述方法还包括: 接收第二组播报文, 在所述第二组播报文的发送方为网络虚拟边缘 NVE的情况下, 对所述第二组播报文进行 NV03解封装, 从所述第二组播报文的 NV03头中获取所述第二组 播报文的 VN ID; 查找所述第二组播报文的 VN ID对应的本地组播转发表项, 获取所述本 地组播转发表项中的出端口; 确定所述出端口是否为所述第二组播报文的 VN ID的 DF, 根据所述确定结果对所述解封装后的第二组播报文进行处理。
本发明第二方面提供了一种在基于三层叠加网的网络虚拟化 NV03网络中处理组播 报文的装置, 所述装置包括:
接收模块, 用于接收第一组播报文;
确定模块, 用于确定所述第一组播报文的发送方, 当确定所述组播报文的发送方为 本地多归 TES的情况下, 触发第一虚拟叠加网标识 VN ID获取模块;
所述第一 VN ID获取模块用于获取所述第一组播报文的入端口及虚拟局域网标识 VLAN ID, 根据所述入端口和所述 VLAN ID, 获取所述组播报文的 VN ID;
第一判断模块, 用于确定所述入端口是否为所述 VN ID的指定转发者 DF; 在所述入 端口不为所述 VN ID的 DF的情况下, 触发第一发送模块; 所述第一发送模块, 用于为所述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给其他 NVE; 所述扩展 NV03头中携带所述第一组播报文的 VN ID以及所述入端口对应的链路聚合组标识 LAG ID。
在所述第二方面的第一种实现方式中, 所述确定模块具体用于根据所述入端口和所述第 一组播报文的 VN ID查找 DF表, 确定所述入端口是否为所述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。 基于所述第二方面或所述第二方面的第一种实现方式,在所述第二方面的第二种实 现方式中, 所述装置还包括第二 VN ID获取模块、 出端口获取模块和第二判断模块; 所述接收模块还用于接收第二组播报文; 所述确定模块还用于确定所述第二组播报文的发送方,在确定所述组播报文的发送 方为网络虚拟边缘 NVE的情况下, 触发所述第二 VN ID获取模块; 所述第二 VN ID获取模块用于对所述第二组播报文进行 NV03解封装, 从所述第二组 播报文的 NV03头中获取所述第二组播报文的 VN ID; 所述出端口获取模块用于查找所述第二组播报文的 VN ID对应的本地组播转发表项, 获取所述本地组播转发表项中的出端口; 所述第二判断模块用于确定所述出端口是否为所述第二组播报文的 VN ID的 DF, 根 据所述确定结果对所述解封装后的组播报文进行处理。
本发明第三方面提供了一种在基于三层叠加网的网络虚拟化 NV03网络,所述 NV03网 络包括多归租户终端系统 TES, 第一多归网络虚拟边缘 NVE和第二多归 NVE, 所述多归 TES 分别连接所述第一多归 NVE和第二多归 NVE; 所述 TES用于发送第一组播报文;
所述第一多归 NVE用于接收所述第一组播报文, 确定所述第一组播报文的发送方; 在确定所述第一组播报文由所述多归 TES发送的情况下, 获取所述第一组播报文的入端 口和虚拟局域网标识 VLAN ID; 根据所述第一组播报文的入端口以及所述 VLAN ID获取所 述第一组播报文的虚拟叠加网标识 VN ID; 确定所述入端口是否为所述第一组播报文的 VN ID的指定转发者 DF; 在所述入端口不是所述第一组播报文的 VN ID的 DF情况下, 为所 述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给包括 所述第二多归 NVE的其他 NVE; 所述扩展 NV03头中携带所述第一组播报文的 VN ID以及所 述入端口对应的链路聚合组标识 LAG ID。
在所述第三方面的第一种实现方式中,所述第一多归 NVE根据所述入端口和所述第一组播报文的 VN ID查找 DF表, 确定所述入端口是否为所述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口 与 DF标记。 基于所述第三方面或所述第三方面的第一种实现方式,在所述第三方面的第二种实 现方式中, 所述方法还包括: 所述第二多归 NVE用于发送第二组播报文; 所述第一多归 NVE还用于接收所述第二组播报文, 对所述第二组播报文进行 NV03解封装, 从所述第二 组播报文的 NV03头中获取所述第二组播报文的 VN ID; 查找所述第二组播报文的 VN ID对 应的本地组播转发表项, 获取所述本地组播转发表项中的出端口; 确定所述出端口是否 为所述第二组播报文的 VN ID的 DF, 根据所述确定结果对所述解封装后的第二组播报文 进行处理。
本发明第四方面提供了一种在基于三层叠加网的网络虚拟化 NV03网络中处理组播 报文的装置, 所述装置包括: 处理器、 存储器、 网络接口和总线, 所述处理器、 存储器 和网络接口均与总线连接; 所述存储器用于存储程序指令; 所述处理器用于读取所述存储器上存储的程序指令,根据所述程序指令执行本发明 第三方面的方法。
本发明上述实施例中, 第一多归 NVE在从多归 TES收到第一组播报文的时候, 通过判 断所述第一组播报文的入端口不是所述组播报文中携带的 VN ID的 DF, 则不向本地端口 转发所述第一组播报文, 避免了所述多归 TES环回收到自身发出的第一组播报文, 并且, 通过扩展原有的 NV03头, 利用原有的 LAG ID, 可以避免 IP地址的浪费, 提高转发效率。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中 所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些 实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据 这些附图获得其他的附图。
图 1为现有技术中 NV03网络的结构示意图;
图 2为本发明实施例提供的 NV03网络的结构示意图;
图 3为本发明实施例提供的 NV03网络中处理组播报文的方法的流程示意图; 图 4为本发明实施例提供的一种 NV03网络中处理组播报文的装置的结构示意图; 图 5为本发明实施例提供的另一种 NV03网络中处理组播报文的装置的流程示意图。 具体实施方式 本发明实施例提供了一种 NV03网络, 如图 2所示, 所述 NV03网络 20包括多归 TES 21 以及多个多归 NVE, 例如, 图中的第一多归 NVE 22a和第二多归 NVE 22b, 所述多归 TES 21 分别连接所述第一多归 NVE 22a和第二多归 NVE 22b。 所述第一多归 TES用于发送第一组 播报文;所述第一组播报文包括所有需要通过组播方式在 NV03网络中发送的报文,例如, 广播报文, 组播报或未知单播报文。 所述第一多归 NVE 22a用于接收所述第一组播报文, 确定所述第一组播报文的发送 方, 在确定所述第一组播报文由所述多归 TES发送的情况下, 获取所述第一组播报文的 入端口和 VLAN ID; 根据所述第一组播报文的入端口以及所述 VLAN ID获取所述第一组播 报文的 VN ID; 确定所述入端口是否为所述第一组播报文的 VN ID的 DF; 在所述入端口不 是所述第一组播报文的 VN ID的 DF情况下, 为所述第一组播报文封装扩展 NV03头; 将所 述封装了扩展 NV03头的第一组播报文发送给包括所述第二多归 NVE的其他 NVE; 所述扩展 NV03头中携带所述第一组播报文的 VN ID以及所述入端口对应的链路聚合组标识 LAG ID。 所述第一多归 NVE可以将所述封装了扩展 NV03头的第一组播报文通过头结点 ( head-end ) 复制方式或者组播逐跳复制方式发送给其他 NVE。 如果采用头结点复制方式, 所述第一多归 NVE为每个目的 NVE复制一份报文, 并分别 通过单播 NV03隧道将复制的报文送到每个目的 NVE, 所述 NV03隧道外层目的 IP地址为每 个目的 NVE的单播 IP地址。 如果采用组播逐跳复制方式, 所述第一多归 NVE通过组播 NV03 隧道将报文送到每个目的 NVE, NV03隧道外层目的 IP地址为组播 IP地址。 所述第一多归 NVE上预先设置了 VN ID和组播 IP地址的对应关系。 在采用头结点复制的情况下, LAG ID只需要在每个 NVE上唯一, 扩展 NV03头中 LAG ID 为目的 NVE上分配的 LAG ID。 比如 TES多归接入 NVE1的端口 1、 NVE2的端口 2、 NVE3的端口 3, 则端口 1, 端口 2和端口 3组成一个 LAG, NVE1为包括所述 LAG分配的标识为 10, NVE2为 所述 LAG分配的标识为 20, NVE3为所述 LAG分配的标识为 30, NVE1向 NVE2和 NVE3发送报文 的时候, 扩展 NV03头里面 LAG ID分别填写 20和 30。 在采用组播复制的情况下, LAG ID需要整个网络唯一, 同样对于上面的情况, NVE1、
NVE2、 NVE3都记录该 LAG的标识为 10, NVE1向 NVE2和 NVE3发送报文时候, 扩展 NV03头里 的 LAG ID均填写 10。 在一个实施例中, 所述第一多归 NVE根据所述入端口和所述第一组播报文的 VN ID查 找 DF表, 确定所述入端口是否为所述第一组播报文的 VN ID的指定转发者 DF。 当 DF表中 不存在与所述第一组播报文的 VN ID和所述入端口对应的表项, 或查找到的表项中的 DF 标记表明所述入端口不是 DF时, 确定所述入端口不为所述 VN ID的 DF。 在另一个实施例中, 所述第一多归 NVE还用于记录链路聚合组信息, 所述链路聚合 组信息包括链路聚合组标识以及链路聚合组中包括的端口; 根据所述链路聚合组信息与 所述第二多归 NVE协商, 从所述链路聚合组的所有端口中选择一个端口作为所述多归 TES 21的 VN ID的 DF, 在 DF表中记录协商结果; 所述 VN ID用于标识所述多归 TES 21所属的 VN; 所述 DF表包括 VN ID, 端口与 DF标记, 所述 DF标记用于标识端口是否为某个 VN ID的 DF。 例如, 图 2示出的链路聚合组信息中包括一个链路聚合组, 其 LAG ID为 LAG 1, 包括了第 一端口和第二端口。 所述第一多归 NVE还用于接收所述第二多归 NVE发送的第二组播报文,对所述第二组 播报文进行 NV03解封装, 从所述第二组播报文的 NV03头中获取所述第二组播报文的 VN ID; 查找所述第二组播报文的 VN ID对应的本地组播转发表项, 获取所述本地组播转发 表项中的出端口; 确定所述出端口是否为所述第二组播报文的 VN ID的指定转发者 DF, 根据所述确定结果对所述解封装后的第二组播报文进行处理。 在一个实施例中, 在确定所述出端口不是所述第二组播报文的 VN ID的 DF情况下, 所述第一多归 NVE还用于丢弃所述解封装后的第二组播报文。 在另一个实施例中, 在确定所述出端口是所述第二组播报文的 VN ID的 DF的情况下, 所述第一多归 NVE还用于确定所述第二组播报文和所述出端口是否具有相同的 LAG ID, 所述第二组播报文的 LAG ID是从所述第二组播报文的 NV03头中获得的。 在所述第二组播 报文和所述出端口具有相同的 LAG ID的情况下, 所述第一多归 NVE还用于丢弃所述解封 装后的第二组播报文; 在所述第二组播报文和所述出端口具有不同的 LAG ID的情况下, 所述第一多归 NVE还用于通过所述出端口转发所述解封装后的第二组播报文。 需要说明的是, 本发明实施例中, 本地组播转发表和 DF表中仅包括端口, 当该端口 为接收报文的端口时, 即为入端口, 当该端口用于发送报文时, 即为出端口。 因此, 入 端口和出端口只是针对组播报文的方向作出的区分, 不对本地组播转发表或者 DF表中的 信息产生影响。 本发明上述实施例中, 第一多归 NVE在从多归 TES收到第一组播报文的时候, 通过判 断所述第一组播报文的入端口不是所述组播报文中携带的 VN ID的 DF, 则不向本地端口 转发所述第一组播报文, 避免了所述多归 TES环回收到自身发出的第一组播报文, 并且, 通过扩展原有的 NV03头, 利用原有的 LAG ID, 可以避免 IP地址的浪费, 提高转发效率。 本发明实施例还提供了一种在 NV03网络中处理组播报文的方法,所述方法应用在图 2所示的 NV03网络中, 可以由所述多个多归 NVE中的任意一个执行, 图 3以第一多归 NVE为 例进行说明, 在上述 NV03网络实施例中没有明确的细节, 可以参考本实施例的描述。 如 图 3所示, 所述方法 30包括:
301、 第一多归 NVE接收组播报文。 所述组播报文包括所有需要通过组播方式在 NV03 网络中发送的报文, 例如, 广播报文, 组播报或未知单播报文。
302、 所述第一多归 NVE确定所述组播报文的发送方, 在所述组播报文的发送方为其 他 NVE的情况下, 执行步骤 303, 在所述组播报文的发送方为本地多归 TES的情况下, 执 行步骤 310 在步骤 302中, 在所述组播报文为 NV03封装的报文的情况下, 确定所述组播报文的 发送方为其他 NVE, 在所述组播报文为没有 NV03封装的以太报文, 且所述组播报文的入 端口为 LAG中的端口的情况下, 确定所述组播报文的发送方为多归 TES。 所述其他 NVE为 所述 NV03网络中除所述第一多归 NVE之外的任意 NVE,可以是多归 NVE,也可以是普通 NVE 303、 所述第一多归 NVE对所述组播报文进行 NV03解封装, 从所述第二组播报文的
NV03头中获取所述组播报文的 VN ID 这里的 NV03头既包括正常 NV03头, 也包括扩展 NV03头。 304、 所述第一多归 NVE查找 所述 VN ID对应的本地组播转发表项, 获取所述本地组播转发表项中的出端口。
NVE上预先配置或生成了本地组播转发表,如表 1所示, 每个本地组播转发表项包括 VN ID、 端口以及虚拟局域网标识 (VLAN ID) 表 1
当所述第一多归 NVE从某个端口接收组播报文时, 所述端口被称为入端口, 当所述 第一多归 NVE从某个端口发送组播报文时, 所述端口被称为出端口。 本步骤中, 由于所 述组播报文是从其他 NVE收到的, 需要发送给所述第一多归 NVE连接的 TES, 因此, 所述 端口被称为出端口。 所述第一多归 NVE查找到所述本地组播转发表项后, 从所述本地组播转发表项中获 取所述出端口。 所述第一多归 NVE在将经过 NV03解封装之后的组播报文从查找到的本地 组播转发表项中的出端口发送出去之前,为所述组播报文封装对应的 VLAN ID。
305、 所述第一多归 NVE确定所述出端口是否为所述 VN ID的 DF, 根据所述确定结果 对所述解封装后的组播报文进行处理。 所述根据所述确定结果对所述解封装后的组播报文进行处理,包括在所述出端口为 所述 VN ID的 DF的情况下, 执行步骤 307, 在所述出端口不为所述 VN ID的 DF的情况下, 执行步骤 306。 其中, 所述 DF是由所述第一多归 NVE与第二多归 NVE (指其端口与第一 NVE的端口属 于同一 LAG的其他一个或多个多归 NVE) 协商确定, 或者由管理员预先配置的。 在步骤 305中, 所述第一多归 NVE根据所述 VN ID和所述出端口, 查找 DF表, 根据查 找到的 DF表项确定所述出端口是否为所述 VN ID的 DF。 其中, 所述 DF表是预先配置在所 述第一多归 NVE上, 或者由所述第一多归 NVE预先生成的。 所述 DF表的表项包括 VN ID, 出端口和 DF标记。 所述 DF标记用于标识所述出端口是否为所述 VN ID的 DF。 当 DF表中不 存在与所述 VN ID和所述出端口对应的表项, 或查找到的表项中的 DF标记表明所述出端 口不是 DF时, 确定所述出端口不为所述 VN ID的 DF。
306、 所述第一多归 NVE丢弃所述解封装后的组播报文。 为了避免所述 VN ID的多个多归 NVE均转发组播报文给多归 TES引起的报文重复问题, 当所述第一多归 NVE的出端口不是该 VN ID的指定转发者时, 第一多归 NVE在该出端口上 丢弃所述组播报文, 即所述第一 NVE不向所述本地组播转发表项中的出端口连接的多归 TES发送所述组播报文。
307、 所述第一多归 NVE确定所述组播报文和所述出端口是否具有相同的 LAG ID, 在 所述组播报文和所述出端口具有相同的 LAG ID的情况下, 执行步骤 308, 在所述组播报 文和所述出端口不具有相同的 LAG ID的情况下, 执行步骤 309。 所述组播报文的 LAG ID 是从所述组播报文的 NV03头中获得的。 所述组播报文和所述出端口不具有相同的 LAG ID, 具体包括: 所述 NV03头为没有携 带 LAG ID的正常 NV03头, 或者所述 NV03头中携带的 LAG ID为无效值, 或者所述 NV03头中 携带的 LAG ID与所述所述出端口的 LAG ID不同。 其中, 所述出端口的 LAG ID是预先配置 的。
308、 所述第一多归 NVE丢弃所述解封装后的组播报文。
所述组播报文和所述出端口具有相同的链路聚合组标识, 表明所述组播报文是由与 所述第一多归 NVE属于同一链路聚合组的其他多归 NVE通过所述 VN ID的非 DF端口转 发的、 来自所述出端口连接的多归 TES的组播报文; 为了避免将所述多归 TES发送的组 播报文再环回给所述多归 TES, 所述第一多归 NVE在所述出端口上丢弃所述组播报文, 即不将所述组播报文通过所述出端口转发。
309、 所述第一多归 NVE通过所述出端口转发所述解封装后的组播报文。
所述组播报文和所述出端口具有不同的链路聚合组标识, 表明所述组播报文不是来 自所述出端口的组播报文,将所述组播报文发送给所述出端口不会引起所述出端口连接 的多归 TES的环路, 并且, 由于所述出端口为所述 VN ID对应的 DF, 所述第一多归 NVE 通过所述出端口转发所述组播报文也不会引起所述出端口连接的多归 TES重复收到所述 组播报文。 310、 所述第一多归 NVE获取所述组播报文的入端口和 VLAN ID, 根据所述入 端口和所述 VLAN ID获取所述组播报文的 VN ID。
由于多归 TES发送的组播报文没有经过 NV03封装, 所以报文头中没有携带 VN ID, 此时, 可以根据所述组播报文的入端口和 VLAN ID查找本地组播转发表, 获取所述组播 报文的 VN ID。
本步骤中的本地组播转发表如表 1所示, 由于所述组播报文为从多归 TES接收到的 报文, 则接收所述组播报文的端口被称为入端口。
311、 所述第一多归 NVE确定所述入端口是否为所述 VN ID的 DF, 在所述入端口为 所述 VN ID的 DF的情况下, 执行步骤 312, 在所述入端口不为所述 VN ID的 DF的情况 下, 执行步骤 313。 所述第一多归 NVE根据所述入端口和所述组播报文的 VN ID查找所述 DF表, 确定所述 入端口是否为所述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。 当 DF表中不存在与所述组播报文的 VN ID和所述入端口对应的表项, 或查找到的表项中的 DF标记表明所述入端口不是 DF时, 确定所述入端口不为所述 VN ID的 DF。
312、 所述第一多归 NVE对所述组播报文进行正常 NV03封装后发送给其他 NVE。 本步骤中, 由于所述入端口为所述 VN ID的 DF, 能够转发所述 VN ID的报文, 因此, 所述第一多归 NVE将所述 VN ID封装在所述组播报文的 NV03头后发送给其他 NVE。此外, 所述第一多归 NVE还可以根据本地组播转发表,将所述组播报文通过除所述入端口之外 的其他本地端口组播发送给本地除发送所述组播报文的多归 TES之外的其他 TES。
本实施例所说的正常 NV03封装, 是指封装后的 NV03头中仅携带 VN ID。
313、 所述第一多归 NVE为所述组播报文封装扩展 NV03头, 将所述封装了扩展 NV03 头的组播报文发送给其他 NVE。
本实施例所说的扩展 NV03头, 是携带 VN ID和 LAG ID的 NV03头。 所述 LAG ID为 所述入端口所属 LAG的 LAG ID。 此外, 所述扩展 NV03头中还可以进一步携带标志位, 所述标志位用于表明该扩展 NV03头中携带了 LAG ID。
本步骤中,由于所述入端口不是所述 VN ID的 DF,为了避免发送所述组播报文的 TES 上产生环路, 所述第一多归 NVE不能向本地端口组播发送所述组播报文, 而只能向其他 NVE发送该组播报文。 因此, 所述第一多归 NVE将所述 VN ID和所述入端口的 LAG ID 封装到所述组播报文中, 以便接收到所述组播报文的第二多归 NVE 判断所述第二多归 NVE是否能够向本地端口组播发送所述组播报文。
上述图 3为了清楚地解释本发明的技术方案, 因此包括了第一多归 NVE收到组播报 文之后各种可能的处理流程。 实际应用中, 针对不同的组播报文, 图 3可以分解成以下 处理流程, 每个流程都能够独立构成一个在 NV03网络中处理组播报文的方法:
流程 A, 包括步骤 301, 302, 310, 311和 312, 用于处理第一组播报文, 所述第一 组播报文的特征可以通过对上述步骤的描述获得。
流程 B, 包括步骤 301, 302, 310, 311和 313, 用于处理第二组播报文, 所述第二 组播报文的特征可以通过对上述步骤的描述获得。
流程 C, 包括步骤 301, 302, 303, 304, 305和 306, 用于处理第三组播报文, 所述 第三组播报文的特征可以通过对上述步骤的描述获得。
流程 D, 包括步骤 301, 302, 303, 304, 305, 307和 308, 用于处理第四组播报文, 所述第四组播报文的特征可以通过对上述步骤的描述获得。
流程 E, 包括步骤 301, 302, 303, 304, 305, 307和 309, 用于处理第五组播报文, 所述第五组播报文的特征可以通过对上述步骤的描述获得。
上述第一, 第二, 第三, 第四以及第五仅仅用于示例性说明, 并不用于对组播报文 顺序的限定。 由于上述流程 A-E都能够独立完成对一种组播报文的处理, 因此, 本发明 实施例中的在 NV03 网络中处理组播报文的方法, 只需要至少包括上述流程中的任意一 个即可。 当选择保护其中一个流程的时候, 其他流程中的步骤可以被认为是本发明实施 例所述方法的可选实施方式。
例如, 在一个实施例中, 第一多归 NVE接收第一组播报文, 确定所述第一组播报文 的发送方为本地多归 TES的情况下, 对该第一组播报文执行步骤 310, 311和 313, 则其 他步骤可选。 在另一个实施例中, 所述第一多归 NVE除接收所述第一组播报文外, 还接 收第二组播报文,然后根据所述第二组播报文的特征执行 303-309中的一个或多个步骤。 本发明上述实施例中, 第一多归 NVE在从多归 TES收到第一组播报文的时候, 通过判 断所述第一组播报文的入端口不是所述组播报文中携带的 VN ID的 DF, 则不向本地端口 转发所述第一组播报文, 避免了所述多归 TES环回收到自身发出的第一组播报文, 并且, 通过扩展原有的 NV03头, 利用原有的 LAG ID, 可以避免 IP地址的浪费, 提高转发效率。
本发明实施例另外提供了一种在 NV03 网络中处理组播报文的装置, 用于执行图 3 所示的方法, 如图 4所示, 所述装置 40包括: 接收模块 401,用于接收组播报文。所述组播报文包括所有需要通过组播方式在 NV03 网络中发送的报文, 例如, 广播报文, 组播报或未知单播报文。 确定模块 402, 用于确定所述组播报文的发送方, 在确定所述组播报文的发送方为
NVE的情况下, 触发第二 VN ID获取模块 403, 在确定所述组播报文的发送方为本地多归 TES的情况下, 触发第一 VN ID获取模块 410。 所述确定模块 402具体用于, 在所述组播报文为 NV03封装的报文的情况下, 确定所 述组播报文的发送方为其他 NVE, 在所述组播报文为没有 NV03封装的以太报文, 且所述 组播报文的入端口为 LAG中的端口的情况下, 确定所述组播报文的发送方为多归 TES。 所 述其他 NVE为所述 NV03网络中的任意 NVE, 可以是多归 NVE, 也可以是普通 NVE。 第二 VN ID获取模块 403, 用于对所述组播报文进行 NV03解封装, 从所述组播报文的 NV03头中获取所述第二组播报文的 VN ID。 这里的 NV03头既包括正常 NV03头, 也包括扩展 NV03头。 出端口获取模块 404,用于查找所述第二 VN ID获取模块获取的所述组播报文的 VN ID 对应的本地组播转发表项, 获取所述本地组播转发表项中的出端口。 所述本地组播转发表,如图 3所示实施例中的表 1 第二判断模块 405, 用于确定所述出端口是否为所述 VN ID的 DF; 在所述出端口为所 述 VN ID的 DF的情况下, 触发第三判断模块 407, 在所述出端口不为所述 VN ID的 DF的情 况下, 触发第一丢弃模块 406。 其中, 所述 DF是由所述多个多归 NVE协商确定, 或者由管理员预先配置的。 所述第二判断模块 405具体用于根据所述 VN ID和所述出端口, 查找 DF表, 根据查找 到的 DF表项确定所述出端口是否为所述 VN ID的 DF。 其中, 所述 DF表的表项包括 VN ID, 出端口和 DF标记。 所述 DF标记用于标识所述出 端口是否为所述 VN ID的 DF。 当 DF表中不存在与所述 VN ID和所述出端口对应的表项, 或 查找到的表项中的 DF标记表明所述出端口不是 DF时, 确定所述出端口不为所述 VN ID的 DF。 第一丢弃模块 406,用于在所述第二判断模块 405的触发下丢弃所述解封装后的组播 报文。 为了避免所述 VN ID的多个多归 NVE均转发组播报文给多归 TES引起的报文重复问题, 当所述出端口不是该 VN ID的指定转发者时, 第一丢弃模块 406在该出端口上丢弃所述组 播报文。 第三判断模块 407, 用于确定所述组播报文和所述出端口是否具有相同的 LAG ID, 在所述组播报文和所述出端口具有相同的 LAG ID情况下, 触发第二丢弃模块 408, 在所 述组播报文和所述出端口不具有相同的 LAG ID的情况下, 触发第三发送模块 409。 所述 组播报文的 LAG ID是从所述组播报文的 NV03头中获得的。 所述组播报文和所述出端口不具有相同的 LAG ID, 具体包括: 所述 NV03头为没有携 带 LAG ID的正常 NV03头, 或者所述 NV03头中携带的 LAG ID为无效值, 或者所述 NV03头中 携带的 LAG ID与所述所述出端口的 LAG ID不同。 其中, 所述出端口的 LAG ID是预先配置 的。
第二丢弃模块 408, 用于在所述第三判断模块的触发下丢弃所述解封装后的组播报 文。
所述组播报文和所述出端口具有相同的链路聚合组标识, 表明所述组播报文是由与 装置属于同一链路聚合组的其他多归 NVE通过所述 VN ID的非 DF端口转发的、 来自所 述出端口连接的多归 TES的组播报文; 为了避免将所述多归 TES发送的组播报文再环回 给所述多归 TES, 所述第二丢弃模块 408在所述出端口上丢弃所述组播报文, 即不将所 述组播报文通过所述出端口转发。 第三发送模块 409, 用于通过所述出端口转发所述解封装后的组播报文。
所述组播报文和所述出端口具有不同的链路聚合组标识, 表明所述组播报文不是来 自所述出端口的组播报文,将所述组播报文发送给所述出端口不会引起所述出端口连接 的多归 TES的环路, 并且, 由于所述出端口为所述 VN ID对应的 DF, 所述第三发送模块 409通过所述出端口转发所述组播报文也不会引起所述出端口连接的多归 TES重复收到 所述组播报文。
第一 VN ID获取模块 410, 用于获取所述组播报文的入端口和 VLAN ID, 根据所述入 端口和所述 VLAN ID获取所述组播报文的 VN ID。
由于多归 TES发送的组播报文没有经过 NV03封装, 所以报文头中没有携带 VN ID, 此时, 所述第一 VN ID获取模块 410可以根据所述组播报文的入端口和 VLAN ID查找本 地组播转发表, 获取所述组播报文的 VN ID。
本步骤中的本地组播转发表如表 1所示, 由于所述组播报文为从多归 TES接收到的 报文, 则接收所述组播报文的端口被称为入端口。
第一判断模块 411, 用于确定所述入端口是否为所述 VN ID的 DF, 在所述入端口为 所述 VN ID的 DF的情况下, 触发第二发送模块 412, 在所述入端口不为所述 VN ID的 DF的情况下, 触发第一发送模块 413。 所述第一判断模块 411根据所述入端口和所述 VN ID查找所述 DF表, 确定所述入端口 是否为所述组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。 具体来说, 当 DF表中不存在与所述第一组播报文的 VN ID和所述入端口对应的表项, 或查找到的表项 中的 DF标记表明所述入端口不是 DF时, 确定所述入端口不为所述 VN ID的 DF。
第二发送模块 412, 用于对所述组播报文进行正常 NV03封装后发送给其他 NVE。 本步骤中, 由于所述入端口为所述 VN ID的 DF, 能够转发所述 VN ID的报文, 因此, 所述第二发送模块 412将所述 VN ID封装在所述组播报文的 NV03头后发送给其他 NVE。 此外, 所述第二发送模块 412还可以根据本地组播转发表, 将所述组播报文通过除所述 入端口之外的其他本地端口组播发送给本地除发送所述组播报文的多归 TES之外的其他 TES。
本实施例所说的正常 NV03封装, 是指封装后的 NV03头中仅携带 VN ID。
第一发送模块 413,用于为所述组播报文封装扩展 NV03头,将所述封装了扩展 NV03 头的组播报文发送给其他 NVE。
本实施例所说的扩展 NV03头, 是携带 VN ID和 LAG ID的 NV03头。 所述 LAG ID为 所述入端口所属 LAG的 LAG ID。 此外, 所述扩展 NV03头中还可以进一步携带标志位, 所述标志位用于表明该扩展 NV03头中携带了 LAG ID。
由于所述入端口不是所述 VN ID的 DF, 为了避免发送所述组播报文的 TES上产生环 路, 所述第一发送模块 413不能向本地端口组播发送所述组播报文, 而只能向其他 NVE 发送该组播报文。 因此, 所述第一发送模块 413将所述 VN ID和所述入端口的 LAG ID 封装到所述组播报文中, 以便接收到所述组播报文的多归 NVE判断所述多归 NVE是否能 够向本地端口组播发送所述组播报文。
上述图 4为了清楚地解释本发明的技术方案,因此包括了 NV03网络中处理组播报文 的装置收到组播报文之后需要参与处理所述组播报文的各种可能的模块。 实际应用中, 针对不同的组播报文, 图 4中的模块可以划分为以下几组, 每组都能够独立构成一个在 NV03网络中处理组播报文的装置:
组 A, 包括模块 401, 402, 410, 411和 412, 用于处理第一组播报文, 所述第一组 播报文的特征可以通过对上述模块的描述获得。
组 B, 包括模块 401, 402, 410, 411和 413, 用于处理第二组播报文, 所述第二组 播报文的特征可以通过对上述模块的描述获得。
组 C, 包括模块 401, 402, 404, 404, 405和 406, 用于处理第三组播报文, 所述第 三组播报文的特征可以通过对上述模块的描述获得。
组 D, 包括模块 401, 402, 404, 404, 405, 407和 408, 用于处理第四组播报文, 所述第四组播报文的特征可以通过对上述模块的描述获得。
组 E, 包括模块 401, 402, 404, 404, 405, 407和 409, 用于处理第五组播报文, 所述第五组播报文的特征可以通过对上述模块的描述获得。
上述第一, 第二, 第三, 第四以及第五仅仅用于示例性说明, 并不用于对组播报文 顺序的限定。 上述各组模块, 可以因为处理不同的组播报文被同时调用, 也可以被单独 调用,上述各组模块的任何调用方式在本发明的保护范围之内。 由于上述组 A-组 E都能 够独立完成对一种组播报文的处理, 因此, 本发明实施例中的在 NV03 网络中处理组播 报文的装置, 只需要至少包括上述各组模块中的任意一组即可。 当选择保护其中一组模 块的时候, 其他各组中的模块均被认为是本发明实施例所述装置的可选实施方式。
例如, 在一个实施例中, 接收模块 401接收第一组播报文, 确定模块 402确定所述 第一组播报文的发送方为本地多归 TES的情况下, 触发第一 VN ID获取模块 410, 第一 判断模块 411和第一发送模块 413执行相应的操作。 在另一个实施例中, 所述接收模块 401除接收所述第一组播报文外, 还接收第二组播报文, 然后根据所述第二组播报文的 特征调用模块 403-409中的一个或多个。
如图 5所示, 为本发明实施例中提供的另一种在 NV03网络中处理组播报文的装置 的结构示意图,如图所示,所述在 NV03网络中处理组播报文的装置 50包括处理器 501、 存储器 502、 网络接口 503和总线 504。 所述处理器 501、 存储器 502和网络接口 503 均与总线 504连接。
所述处理器 501用于通过所述网络接口 503接收组播报文,根据所述组播报文的特 征, 执行图 3所示方法中的流程 A-E中的一个或多个。
其中, 处理器 501执行的上述处理过程通常是由一个或多个软件程序控制完成, 所 述一个或多个软件程序的程序指令存放于存储器 502中, 当需要进行上述操作时, 处理 器 51读取所述程序指令, 并根据所述程序指令执行图 3所示方法中的部分或全部步骤。
本发明上述实施例中装置在从多归 TES收到第一组播报文的时候, 通过判断所述第 一组播报文的入端口不是所述组播报文中携带的 VN ID的 DF时, 不向本地端口转发所述 第一组播报文, 避免了所述多归 TES环回收到自身发出的第一组播报文, 并且, 通过扩 展原有的 NV03头, 利用原有的 LAG ID, 可以避免 IP地址的浪费, 提高转发效率。 本发明上述各实施例基于同一发明构思, 因此, 各实施例中的同一术语具有相同的 含义, 可以互相引用。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤可以通过程 序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读取存储介质中, 该程序 在执行时, 执行包括上述方法实施例的步骤; 而前述的存储介质包括: R0M、 RAM, 磁碟 或者光盘等各种可以存储程序代码的介质。
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管 参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其依然 可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分技术特征进行等同替 换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的 范围。

Claims (15)

  1. 权利要求
    1、 一种在基于三层叠加网的网络虚拟化 NV03网络中处理组播报文的方法, 其特征 在于, 包括:
    接收第一组播报文;
    在所述第一组播报文的发送方为本地多归租户终端系统 TES的情况下, 获取所述第 一组播报文的入端口及虚拟局域网标识 VLAN ID, 根据所述入端口和所述 VLAN ID, 获取 所述组播报文的虚拟叠加网标识 VN ID;
    确定所述入端口是否为所述 VN ID的指定转发者 DF; 在所述入端口为所述 VN ID的 DF的情况下, 为所述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给其他 NVE; 所述扩展 NV03头中携带所述 第一组播报文的 VN ID以及所述入端口对应的链路聚合组标识 LAG ID。
  2. 2、根据权利要求 1所述的方法, 其特征在于, 所述确定所述入端口是否为所述 VN ID 的指定转发者 DF包括:
    根据所述入端口和所述第一组播报文的 VN ID查找 DF表, 确定所述入端口是否为所 述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。
  3. 3、 根据权利要求 1或 2所述的方法, 其特征在于, 还包括: 接收第二组播报文, 在所述第二组播报文的发送方为网络虚拟边缘 NVE的情况下, 对所述第二组播报文进行 NV03解封装, 从所述第二组播报文的 NV03头中获取所述第二组 播报文的 VN ID; 查找所述第二组播报文的 VN ID对应的本地组播转发表项, 获取所述本 地组播转发表项中的出端口; 确定所述出端口是否为所述第二组播报文的 VN ID的 DF, 根据所述确定结果对所述解封装后的第二组播报文进行处理。
  4. 4、 根据权利要求 3所述的方法, 其特征在于, 所述根据所述确定结果对所述解封装 后的第二组播报文进行处理包括: 在确定所述出端口不是所述第二组播报文的 VN ID的 DF情况下, 丢弃所述解封装后 的第二组播报文。
    5、 根据权利要求 3所述的方法, 其特征在于, 所述根据所述确定结果对所述解封装 后的第二组播报文进行处理包括: 在确定所述出端口是所述第二组播报文的 VN ID的 DF的情况下, 确定所述第二组播 报文和所述出端口是否具有相同的 LAG ID, 所述第二组播报文的 LAG ID是从所述第二组 播报文的 NV03头中获得的。
  5. 6、 根据权利要求 5所述的方法, 其特征在于, 在所述第二组播报文和所述出端口具有相同的 LAG ID的情况下, 所述方法还包括: 丢弃所述解封装后的第二组播报文。 7、 根据权利要求 5所述的方法, 其特征在于, 在所述第二组播报文和所述出端口具有不同的 LAG ID的情况下, 所述方法还包括: 通过所述出端口转发所述解封装后的第二组播报文。
  6. 8、 一种在基于三层叠加网的网络虚拟化 NV03网络中处理组播报文的装置, 其特征 在于, 包括:
    接收模块, 用于接收第一组播报文;
    确定模块, 用于确定所述第一组播报文的发送方, 当确定所述组播报文的发送方为 本地多归 TES的情况下, 触发第一虚拟叠加网标识 VN ID获取模块;
    所述第一 VN ID获取模块用于获取所述第一组播报文的入端口及虚拟局域网标识 VLAN ID, 根据所述入端口和所述 VLAN ID, 获取所述组播报文的 VN ID;
    第一判断模块, 用于确定所述入端口是否为所述 VN ID的指定转发者 DF; 在所述入 端口不为所述 VN ID的 DF的情况下, 触发第一发送模块; 所述第一发送模块, 用于为所述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给其他 NVE; 所述扩展 NV03头中携带所述第一组播报文的 VN ID以及所述入端口对应的链路聚合组标识 LAG ID。
    9、 根据权利要求 8所述的装置, 其特征在于, 所述确定模块具体用于根据所述入端 口和所述第一组播报文的 VN ID查找 DF表, 确定所述入端口是否为所述第一组播报文的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。
  7. 10、 根据权利要求 8或 9所述的装置, 其特征在于, 还包括第二 VN ID获取模块、 出 端口获取模块和第二判断模块; 所述接收模块还用于接收第二组播报文; 所述确定模块还用于确定所述第二组播报文的发送方,在确定所述组播报文的发送 方为网络虚拟边缘 NVE的情况下, 触发所述第二 VN ID获取模块; 所述第二 VN ID获取模块用于对所述第二组播报文进行 NV03解封装, 从所述第二组 播报文的 NV03头中获取所述第二组播报文的 VN ID; 所述出端口获取模块用于查找所述第二组播报文的 VN ID对应的本地组播转发表项, 获取所述本地组播转发表项中的出端口; 所述第二判断模块用于确定所述出端口是否为所述第二组播报文的 VN ID的 DF, 根 据所述确定结果对所述解封装后的组播报文进行处理。
  8. 11、 根据权利要求 10所述的装置, 其特征在于, 所述装置还包括第一丢弃模块; 所述第二判断模块还用于在确定所述出端口不是所述第二组播报文的 VN ID的 DF情 况下, 触发所述第一丢弃模块; 所述第一丢弃模块用于在所述第二判断模块的触发下丢弃所述解封装后的第二组 播报文。
    12、 根据权利要求 10所述的装置, 其特征在于, 所述装置还包括第三判断模块; 所述第二判断模块还用于在确定所述出端口是所述第二组播报文的 VN ID的 DF的情 况下, 触发所述第三判断模块; 所述第三判断模块用于确定所述第二组播报文和所述出端口是否具有相同的 LAG ID, 所述第二组播报文的 LAG ID是从所述第二组播报文的 NV03头中获得的。
  9. 13、 根据权利要求 12所述的装置, 其特征在于, 所述装置还包括第二丢弃模块; 所述第三判断模块还用于在确定所述第二组播报文和所述出端口具有相同的 LAG ID 的情况下, 触发所述第二丢弃模块; 所述第二丢弃模块用于在所述第三判断模块的触发下丢弃所述解封装后的第二组 播报文。
  10. 14、 根据权利要求 12所述的装置, 其特征在于, 所述装置还包括第三发送模块; 所述第三判断模块还用于在确定所述第二组播报文和所述出端口具有不同的 LAG ID 的情况下, 触发所述第三发送模块; 所述第三发送模块用于通过所述出端口转发所述解封装后的第二组播报文。
    15、 一种基于三层叠加网的网络虚拟化 NV03网络, 所述 NV03网络包括多归租户终端 系统 TES, 第一多归网络虚拟边缘 NVE和第二多归 NVE, 所述多归 TES分别连接所述第一多 归 NVE和第二多归 NVE; 其特征在于: 所述 TES用于发送第一组播报文; 所述第一多归 NVE用于接收所述第一组播报文, 确定所述第一组播报文的发送方; 在确定所述第一组播报文由所述多归 TES发送的情况下, 获取所述第一组播报文的入端 口和虚拟局域网标识 VLAN ID; 根据所述第一组播报文的入端口以及所述 VLAN ID获取所 述第一组播报文的虚拟叠加网标识 VN ID; 确定所述入端口是否为所述第一组播报文的 VN ID的指定转发者 DF; 在所述入端口不是所述第一组播报文的 VN ID的 DF情况下, 为所 述第一组播报文封装扩展 NV03头; 将所述封装了扩展 NV03头的第一组播报文发送给包括 所述第二多归 NVE的其他 NVE; 所述扩展 NV03头中携带所述第一组播报文的 VN ID以及所 述入端口对应的链路聚合组标识 LAG ID。 16、 根据权利要求 15所述的 NV03网络, 其特征在于, 所述第一多归 NVE根据所述入 端口和所述第一组播报文的 VN ID查找 DF表, 确定所述入端口是否为所述第一组播报文 的 VN ID的 DF, 所述 DF表包括 VN ID, 端口与 DF标记。
  11. 17、 根据权利要求 15或 16所述的 NV03网络, 其特征在于, 所述第二多归 NVE用于发送第二组播报文; 所述第一多归 NVE还用于接收所述第二组播报文, 对所述第二组播报文进行 NV03解 封装, 从所述第二组播报文的 NV03头中获取所述第二组播报文的 VN ID; 查找所述第二 组播报文的 VN ID对应的本地组播转发表项, 获取所述本地组播转发表项中的出端口; 确定所述出端口是否为所述第二组播报文的 VN ID的 DF, 根据所述确定结果对所述解封 装后的第二组播报文进行处理。
  12. 18、 根据权利要求 17所述的 NV03网络, 其特征在于, 在确定所述出端口不是所述第二组播报文的 VN ID的 DF情况下, 所述第一多归 NVE还 用于丢弃所述解封装后的第二组播报文。
    19、 根据权利要求 17所述的 NV03网络, 其特征在于, 在确定所述出端口是所述第二组播报文的 VN ID的 DF的情况下, 所述第一多归 NVE还 用于确定所述第二组播报文和所述出端口是否具有相同的 LAG ID, 所述第二组播报文的 LAG ID是从所述第二组播报文的 NV03头中获得的。
  13. 20、 根据权利要求 19所述的 NV03网络, 其特征在于, 在所述第二组播报文和所述出端口具有相同的 LAG ID的情况下, 所述第一多归 NVE 还用于丢弃所述解封装后的第二组播报文。
  14. 21、 根据权利要求 19所述的 NV03网络, 其特征在于, 在所述解封装后的第二组播报文和所述出端口具有不同的 LAG ID的情况下, 所述第 一多归 NVE还用于通过所述出端口转发所述解封装后的第二组播报文。
  15. 22、 一种在基于三层叠加网的网络虚拟化 NV03网络中处理组播报文的装置, 包括处 理器、 存储器、 网络接口和总线, 所述处理器、 存储器和网络接口均与总线连接; 其特 征在于: 所述存储器用于存储程序指令; 所述处理器用于读取所述存储器上存储的程序指令,根据所述程序指令执行权利要 求 1-7中任意一项所述的方法。
CN201380000655.2A 2013-06-28 2013-06-28 一种在nvo3网络中处理组播报文的方法、装置和nvo3网络 Active CN105264834B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/078386 WO2014205784A1 (zh) 2013-06-28 2013-06-28 一种在nvo3网络中处理组播报文的方法、装置和nvo3网络

Publications (2)

Publication Number Publication Date
CN105264834A true CN105264834A (zh) 2016-01-20
CN105264834B CN105264834B (zh) 2018-12-07

Family

ID=52140865

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380000655.2A Active CN105264834B (zh) 2013-06-28 2013-06-28 一种在nvo3网络中处理组播报文的方法、装置和nvo3网络

Country Status (4)

Country Link
US (1) US9768968B2 (zh)
EP (1) EP3001609B1 (zh)
CN (1) CN105264834B (zh)
WO (1) WO2014205784A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019420A (zh) * 2020-09-04 2020-12-01 苏州盛科科技有限公司 一种vxlan边缘节点组播报文转发的实现方法及装置
CN112291116A (zh) * 2020-11-23 2021-01-29 迈普通信技术股份有限公司 链路故障检测方法、装置及网络设备
CN113765815A (zh) * 2020-06-05 2021-12-07 华为技术有限公司 组播报文负载分担的方法、设备和系统

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10462058B2 (en) * 2014-10-24 2019-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Multicast traffic management in an overlay network
US9716660B2 (en) * 2014-12-11 2017-07-25 Intel Corporation Hierarchical enforcement of service flow quotas
CN106209553B (zh) 2015-04-30 2019-07-23 华为技术有限公司 报文处理方法、设备及系统
CN106209636B (zh) 2015-05-04 2019-08-02 新华三技术有限公司 从vlan至vxlan的组播数据报文转发方法和设备
CN106209689B (zh) * 2015-05-04 2019-06-14 新华三技术有限公司 从vxlan至vlan的组播数据报文转发方法和设备
CN106209648B (zh) 2015-05-04 2019-06-14 新华三技术有限公司 跨虚拟可扩展局域网的组播数据报文转发方法和设备
US9749221B2 (en) * 2015-06-08 2017-08-29 International Business Machines Corporation Multi-destination packet handling at overlay virtual network tunneling endpoints
CN106936939B (zh) * 2015-12-31 2020-06-02 华为技术有限公司 一种报文处理方法、相关装置及nvo3网络系统
CN106941437B (zh) * 2016-01-04 2020-11-17 中兴通讯股份有限公司 一种信息传输方法及装置
US10063407B1 (en) 2016-02-08 2018-08-28 Barefoot Networks, Inc. Identifying and marking failed egress links in data plane
US10313231B1 (en) 2016-02-08 2019-06-04 Barefoot Networks, Inc. Resilient hashing for forwarding packets
US10326694B2 (en) * 2016-04-08 2019-06-18 Cisco Technology, Inc. Asymmetric multi-destination traffic replication in overlay networks
CN107733765B (zh) * 2016-08-12 2020-09-08 中国电信股份有限公司 映射方法、系统和相关设备
US10084687B1 (en) 2016-11-17 2018-09-25 Barefoot Networks, Inc. Weighted-cost multi-pathing using range lookups
US10404619B1 (en) 2017-03-05 2019-09-03 Barefoot Networks, Inc. Link aggregation group failover for multicast
US10237206B1 (en) 2017-03-05 2019-03-19 Barefoot Networks, Inc. Equal cost multiple path group failover for multicast
CN107547341B (zh) * 2017-06-23 2020-07-07 新华三技术有限公司 虚拟扩展局域网vxlan的接入方法及装置
US11102108B2 (en) * 2017-08-31 2021-08-24 Oracle International Corporation System and method for a multicast send duplication instead of replication in a high performance computing environment
US11115330B2 (en) * 2018-03-14 2021-09-07 Juniper Networks, Inc. Assisted replication with multi-homing and local bias
US11652748B2 (en) * 2021-07-01 2023-05-16 Vmware, Inc. Multicast routing through multi-tier edge gateways

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络
WO2013067466A1 (en) * 2011-11-03 2013-05-10 Huawei Technologies Co., Ltd. Border gateway protocol extension for the host joining/leaving a virtual private network

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9461841B2 (en) * 2006-01-06 2016-10-04 Nec Corporation Communication system, communication method, node, and program for node
US8724513B2 (en) * 2009-09-25 2014-05-13 Qualcomm Incorporated Methods and apparatus for distribution of IP layer routing information in peer-to-peer overlay networks
US8958292B2 (en) * 2010-07-06 2015-02-17 Nicira, Inc. Network control apparatus and method with port security controls
US8665883B2 (en) * 2011-02-28 2014-03-04 Alcatel Lucent Generalized multi-homing for virtual private LAN services
US20130142201A1 (en) * 2011-12-02 2013-06-06 Microsoft Corporation Connecting on-premise networks with public clouds
CN103580980B (zh) * 2012-07-24 2019-05-24 中兴通讯股份有限公司 虚拟网络自动发现和自动配置的方法及其装置
CN102868642B (zh) * 2012-10-09 2015-11-18 盛科网络(苏州)有限公司 在asic中实现nvgre报文转发的方法和装置
US9350558B2 (en) * 2013-01-09 2016-05-24 Dell Products L.P. Systems and methods for providing multicast routing in an overlay network
WO2014169251A1 (en) * 2013-04-12 2014-10-16 Huawei Technologies Co., Ltd. Service chain policy for distributed gateways in virtual overlay networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013067466A1 (en) * 2011-11-03 2013-05-10 Huawei Technologies Co., Ltd. Border gateway protocol extension for the host joining/leaving a virtual private network
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113765815A (zh) * 2020-06-05 2021-12-07 华为技术有限公司 组播报文负载分担的方法、设备和系统
CN113765815B (zh) * 2020-06-05 2024-03-26 华为技术有限公司 组播报文负载分担的方法、设备和系统
CN112019420A (zh) * 2020-09-04 2020-12-01 苏州盛科科技有限公司 一种vxlan边缘节点组播报文转发的实现方法及装置
CN112291116A (zh) * 2020-11-23 2021-01-29 迈普通信技术股份有限公司 链路故障检测方法、装置及网络设备

Also Published As

Publication number Publication date
EP3001609B1 (en) 2017-08-09
WO2014205784A1 (zh) 2014-12-31
CN105264834B (zh) 2018-12-07
EP3001609A1 (en) 2016-03-30
US20160142220A1 (en) 2016-05-19
US9768968B2 (en) 2017-09-19
EP3001609A4 (en) 2016-06-01

Similar Documents

Publication Publication Date Title
CN105264834A (zh) 一种在nvo3网络中处理组播报文的方法、装置和nvo3网络
CN109218178B (zh) 一种报文处理方法及网络设备
US8565124B2 (en) Node, network, correspondence relationship generation method and frame transfer program
US6839348B2 (en) System and method for distributing multicasts in virtual local area networks
US9306837B1 (en) Source IP-based pruning of traffic toward dually-connected overlay hosts in a data communications environment
US20140369345A1 (en) Method and apparatus for scaling interconnected ip fabric data centers
US9548917B2 (en) Efficient multicast delivery to dually connected (VPC) hosts in overlay networks
US20230121236A1 (en) Segment routing point to multipoint path
EP3528441A1 (en) Message forwarding
CN103354509B (zh) 一种链路连接信息的获取方法和设备
US10367648B2 (en) Multicast forwarding table entry in an overlay network
CN105490957A (zh) 一种负载分担方法及装置
CN108964940A (zh) 消息发送方法及装置、存储介质
US11711230B2 (en) Multicast packet management for a virtual gateway of a distributed tunnel fabric
CN107276905A (zh) 覆盖网络中的非对称多目的地流量复制
CN106209636A (zh) 从vlan至vxlan的组播数据报文转发方法和设备
CN107659484A (zh) 从vlan网络接入vxlan网络的方法、装置及系统
CN104780090A (zh) Vpn组播传输的方法、装置、pe设备
CN105743780A (zh) 报文传输方法及装置
CN103595639B (zh) 一种组播转发表项处理方法及装置
WO2017173989A1 (zh) 组播的分发处理方法、装置、系统及存储介质
CN109039902A (zh) 一种组播报文的转发方法及装置
US11962673B2 (en) Packet tunneling and decapsulation with split-horizon attributes
CN110324247B (zh) 三层组播网络中的组播转发方法、设备及存储介质
CN104780089B (zh) 报文隔离方法以及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant