一种组播报文转发方法及装置制造方法及图纸

技术编号:20520046 阅读:23 留言:0更新日期:2019-03-06 03:48
本发明专利技术提供了一种组播报文转发方法及装置,涉及数据通信领域,用于解决现有技术中组播报文转发效率低的问题,本发明专利技术实施例中的组播报文转发方法包括:获取携带有第一位串和标签的待转发组播报文,所述第一位串的每一位分别与其中一个目标位转发出口路由器的唯一标识符对应;根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串;根据所述第二位串,确定转发至每一下一跳节点的位串分片;将所述位串分片封装至所述待转发组播报文中,并将进行位串分片封装后的待转发组播报文发送至所述位串分片对应的下一跳节点。本发明专利技术上述实施例,提高了组播报文转发效率。

【技术实现步骤摘要】
一种组播报文转发方法及装置
本专利技术涉及数据通信领域,尤其是一种组播报文转发方法及装置。
技术介绍
BIER(BitIndexedExplicitReplication,位索引显式复制)是组播数据报文转发的一种新的架构,为组播数据报文在组播域中提供最优转发。其基本思想是:当组播报文到达BFIR(Bit-ForwardingIngressRouter,位转发入口路由器)时,BFIR先确定报文将发往哪些BFER(Bit-ForwardingEgressRouter,位转发出口路由器),然后为组播报文封装“BIERheader(BIER报文头)”,其中包含一个BitString(位串),BitString中的每一位都代表一个BFER的全局ID(唯一标识符),称为BFR-ID。针对每一个位,由单播协议确定其单播转发的出向。BitString中的所有位最终可能一起确定多个出向,报文将向这多个出向复制,但对于通过同一个转发出向转发的多个BFER,需要将标示这些BFER的Bit(位)从报文中提取出来,只复制一份报文向这个出向转发,报文中包含的BitString将仅能包含单播转发至该出向的那些位,避免报文在后续节点上重复复制。更具体说,BIER转发有以下技术需要具体关注:1、BSL和SI:一个报文能转发至的BFER的个数,取决于BitString的长度(BitStringLength,位串长度,简称BSL)。有可能,BIER域中包含的BFER个数会超过BSL,为了支持这种情况,在BIERheader中再引入SI(SetIdentifier,集合标识),SI与BitString一起确定报文要转发至哪些BFER。若SI为n,BitString中的第K个bit为1(记最低位为第1位),则报文将会发给BFR-ID为n*BSL+K的BFER。2、报文转发流程:目前draft-ietf-bier-architecture-05描述了BIER域内转发BIER封装报文的规则:1)、确定报文的BitString、BSL和SI,这些信息即确定了报文的目的BFERs集。其中BitString在报文头中,BSL和SI可以通过增加BIER标签来表达;2)、使用单播路由信息,确定至每个BFER的下一跳(有可能某些BFR-ID无效或者无可达转发信息,则这些BFR-ID的下一跳为空);3)、按相同下一跳对BFERs划分,形成下一跳能够转发的BitString分片,将该BitString分片存储于F-BM表中(ForwardingBitMap,转发比特掩码表);4)、对于每个下一跳,根据此下一跳确定的F-BM表,将原始报文BitString中包含在F-BM表里的所有Bit取出,并封装在转发报文中,向此下一跳转发。原始报文中已经转发的Bit清零;5)、继续遍历原始报文BitString的非0的Bit位,重复上述2、3、4操作,直到报文BitString中的全部Bit为0,完成报文的转发。这种转发规则将导致很差的转发性能,因为需要对报文的BitString多次遍历,处理完某个下一跳对应的BitString分片后,才能确定其它下一跳对应的BitString分片;而且目前某些转发芯片无法完成上述的遍历操作。
技术实现思路
本专利技术实施例要解决的技术问题是提供一种组播报文转发方法及装置,用以实现提高组播报文的转发效率。为解决上述技术问题,本专利技术实施例提供的组播报文转发方法,包括:获取携带有第一位串和标签的待转发组播报文,所述第一位串的每一位分别与其中一个目标位转发出口路由器的唯一标识符对应;根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串;根据所述第二位串,确定转发至每一下一跳节点的位串分片;将所述位串分片封装至所述待转发组播报文中,并将进行位串分片封装后的待转发组播报文发送至所述位串分片对应的下一跳节点。优选地,根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串的步骤包括:根据所述标签,确定本地存储的标签表中与所述标签对应的第一唯一标识符;判断所述第一位串中是否存在与所述第一唯一标识符相对应的位;若存在,则将所述第一位串中与所述第一唯一标识符对应的位进行清除处理,获得进行位清除处理后的第二位串;若不存在,则将所述第一位串确定为所述第二位串。优选地,根据所述第二位串,确定转发至每一下一跳节点的位串分片的步骤包括:获取本地存储的转发比特掩码表,所述转发比特掩码表中包含有至少一个下一跳节点分别对应的第三位串;按照预定顺序依次将每一第三位串与所述第二位串进行按位与操作,获得每一第三位串与第二位串的交集位;根据所述交集位,确定转发至每一第三位串对应的下一跳节点的位串分片。优选地,在所述转发比特掩码表中,每一下一跳节点对应的第三位串的数量均为至少两个,且每一下一跳节点对应的至少两个第三位串的位串长度类别不同。优选地,按照预定顺序依次将每一第三位串与所述第二位串进行按位与操作的步骤包括:根据所述标签,分别确定出每一下一跳节点对应的至少两个第三位串中用于与所述第二位串进行按位与操作的其中一个第三位串;按照预定顺序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作。优选地,按照预定顺序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作的步骤包括:判断是否为首次对进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作;若为,则按照下一跳节点的名称排序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作;若不为,则按照前次按位与操作过程中确定出的交集位的位数量排序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作。根据本专利技术的另一方面,本专利技术实施例还提供了一种组播报文转发装置,包括:第一获取模块,用于获取携带有第一位串和标签的待转发组播报文,所述第一位串的每一位分别与其中一个目标位转发出口路由器的唯一标识符对应;第二获取模块,用于根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串;确定模块,用于根据所述第二位串,确定转发至每一下一跳节点的位串分片;发送模块,用于将所述位串分片封装至所述待转发组播报文中,并将进行位串分片封装后的待转发组播报文发送至所述位串分片对应的下一跳节点。优选地,第二获取模块包括:第一确定单元,用于根据所述标签,确定本地存储的标签表中与所述标签对应的第一唯一标识符;判断单元,用于判断所述第一位串中是否存在与所述第一唯一标识符相对应的位;第一获取单元,用于若存在,则将所述第一位串中与所述第一唯一标识符对应的位进行清除处理,获得进行位清除处理后的第二位串;第二确定单元,用于若不存在,则将所述第一位串确定为所述第二位串。优选地,确定模块包括:第二获取单元,用于获取本地存储的转发比特掩码表,所述转发比特掩码表中包含有至少一个下一跳节点分别对应的第三位串;第三获取单元,用于按照预定顺序依次将每一第三位串与所述第二位串进行按位与操作,获得每一第三位串与第二位串的交集位;第三确定单元,用于根据所述交集位,确定转发至每一第三位串对应的下一跳节点的位串分片。优选地,在所述转发比特掩码表中,每一下一跳节点对应的第三位串的数量均为至少两个,且每一下一跳节本文档来自技高网
...

【技术保护点】
1.一种组播报文转发方法,其特征在于,包括:获取携带有第一位串和标签的待转发组播报文,所述第一位串的每一位分别与其中一个目标位转发出口路由器的唯一标识符对应;根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串;根据所述第二位串,确定转发至每一下一跳节点的位串分片;将所述位串分片封装至所述待转发组播报文中,并将进行位串分片封装后的待转发组播报文发送至所述位串分片对应的下一跳节点。

【技术特征摘要】
1.一种组播报文转发方法,其特征在于,包括:获取携带有第一位串和标签的待转发组播报文,所述第一位串的每一位分别与其中一个目标位转发出口路由器的唯一标识符对应;根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串;根据所述第二位串,确定转发至每一下一跳节点的位串分片;将所述位串分片封装至所述待转发组播报文中,并将进行位串分片封装后的待转发组播报文发送至所述位串分片对应的下一跳节点。2.根据权利要求1所述的组播报文转发方法,其特征在于,根据所述标签,对所述第一位串的位进行处理,获得进行位处理后的第二位串的步骤包括:根据所述标签,确定本地存储的标签表中与所述标签对应的第一唯一标识符;判断所述第一位串中是否存在与所述第一唯一标识符相对应的位;若存在,则将所述第一位串中与所述第一唯一标识符对应的位进行清除处理,获得进行位清除处理后的第二位串;若不存在,则将所述第一位串确定为所述第二位串。3.根据权利要求1所述的组播报文转发方法,其特征在于,根据所述第二位串,确定转发至每一下一跳节点的位串分片的步骤包括:获取本地存储的转发比特掩码表,所述转发比特掩码表中包含有至少一个下一跳节点分别对应的第三位串;按照预定顺序依次将每一第三位串与所述第二位串进行按位与操作,获得每一第三位串与第二位串的交集位;根据所述交集位,确定转发至每一第三位串对应的下一跳节点的位串分片。4.根据权利要求3所述的组播报文转发方法,其特征在于,在所述转发比特掩码表中,每一下一跳节点对应的第三位串的数量均为至少两个,且每一下一跳节点对应的至少两个第三位串的位串长度类别不同。5.根据权利要求4所述的组播报文转发方法,其特征在于,按照预定顺序依次将每一第三位串与所述第二位串进行按位与操作的步骤包括:根据所述标签,分别确定出每一下一跳节点对应的至少两个第三位串中用于与所述第二位串进行按位与操作的其中一个第三位串;按照预定顺序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作。6.根据权利要求5所述的组播报文转发方法,其特征在于,按照预定顺序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作的步骤包括:判断是否为首次对进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作;若为,则按照下一跳节点的名称排序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作;若不为,则按照前次按位与操作过程中确定出的交集位的位数量排序依次将进行位串长度类别确定后的每一第三位串和第二位串进行按位与操作。7.一种组播报文转发装置,其特...

【专利技术属性】
技术研发人员:李黄蔡宁朱永庆龚霞
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1