【技术实现步骤摘要】
一种报文转发方法及装置
[0001]本申请涉及通信
,尤其涉及一种报文转发方法及装置。
技术介绍
[0002]段路由(Segment Routing,SR)是基于源路由的理念而设计的在网络中转发数据包的一种协议。SR将网络路径划分为一个个段,为这些段或节点分配段标识(Segment Identifier,SID),通过在数据包中携带依次排列的段标识,能够让数据包通过段标识指示的转发路径传输。
[0003]段路由与互联网协议第六版(Segment Routing Internet Protocol version6, SRv6是指将SR技术与互联网协议第六版(internet protocol version 6,IPv6) 协议结合起来,按照IPv6地址的格式定义为实例化的SRv6 SID,基于IPv6 的转发面来实现SR的功能。
[0004]在SRv6网络中,任一条主路径上的源节点在需要确定该路径对应的 TI
‑
LFA FRR(Topology
‑
IndepEndent Loop
‑
free Alternate Fast Reroute,拓扑无关无环备份快速重路由)路径时,需要获取到整个SRv6网络中的各个网络节点的END SID(即,既支持多协议标签交换(Multiprotocol Label Switching, MPLS)段路由(Segment Routing with MPLS,MPLS SR)又支持SRv6的网络节点的段标识)和端
【技术保护点】
【技术特征摘要】
1.一种报文转发方法,其特征在于,所述方法应用于SRv6网络中的任一主路径上的源节点,所述方法包括:根据获取到的所述SRv6网络中的除所述源节点之外的其他网络节点的段标识信息和链路段标识信息,确定该主路径对应的TI
‑
LFA FRR路径和该TI
‑
LFA FRR路径对应的约束路径信息,其中,在任一其他网络节点既支持MPLS SR又支持SRv6时,该其他网络节点的段标识信息为该其他网络节点的End SID,该其他网络节点的链路段标识信息为该其他网络节点的End.X SID;在任一其他网络节点支持MPLS SR但不支持SRv6时,该其他网络节点的段标识信息为该其他网络节点的Node SID,该其他网络节点的链路段标识信息为该其他网络节点的Adj SID,该约束路径信息中包括有该TI
‑
LFA FRR路径上的至少一个指定网络节点的段标识信息和/或链路段标识信息,且所有指定网络节点的总数量不大于3个,所有指定网络节点中不包括所述源节点和该主路径上的目的节点;在接收到业务报文、且监测到该主路径发生故障时,若该约束路径信息中存在至少一个支持MPLS SR但不支持SRv6的指定网络节点的段标识信息和/或链路段标识信息,则根据该约束路径信息和预设的封装规则,对所述业务报文进行封装,并将封装后的业务报文转发给下一跳网络节点,其中,所述下一跳网络节点为所述源节点基于该TI
‑
LFA FRR路径对应的备份转发表确定出的。2.根据权利要求1所述的方法,其特征在于,在所有的指定节点的总数量为1个时,根据该约束路径信息和预设的封装规则,对所述业务报文进行封装,具体包括:在根据该约束路径信息确定出该约束路径信息中包括的指定网络节点支持MPLS SR但不支持SRv6时,为所述业务报文封装第一MPLS标签信息,得到封装后的业务报文,其中,所述第一MPLS标签信息包括该约束路径信息中包括的指定网络节点的Node SID和/或Adj SID。3.根据权利要求1所述的方法,其特征在于,在所有的指定节点的总数量为2个时,根据该约束路径信息和预设的封装规则,对所述业务报文进行封装,具体包括:针对该约束路径信息中的第一个指定网络节点和第二个指定网络节点,若根据该约束路径信息确定出该第一个指定网络节点既支持MPLS SR又支持SRv6、且该第二个指定网络节点支持MPLS SR但不支持SRv6,则为所述业务报文封装第一IPv6头、第一SRH头和第二MPLS标签信息,得到封装后的业务报文,其中,所述第一IPv6头中的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第一个指定网络节点的End SID和/或End.X SID,所述第一SRH头中的段列表信息包括有该第一个指定网络节点的End SID和/或End.X SID,所述第二MPLS标签信息包括该约束路径信息中包括的该第二个指定网络节点的Node SID和/或Adj SID,所述第二MPLS标签信息位于所述第一SRH头的后面;若根据该约束路径信息确定出该第一个指定网络节点支持MPLS SR但不支持SRv6、且该第二个指定网络节点既支持MPLS SR又支持SRv6,则为所述业务报文封装第三MPLS标签信息、第二IPv6头和第二SRH头,得到封装后的业务报文,其中,所述第三MPLS标签信息包括该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,所述第二IPv6头中的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该二个指定网络节点的End SID和/或End.X SID,所述第二SRH头中的段列表信息包括有该第二个指定网络节点的End SID和/或End.X SID,所述第三MPLS标签信息位于所述第二SRH头
的前面;若根据该约束路径信息确定出该第一个指定网络节点和该第二个指定网络节点均支持MPLS SR但不支持SRv6,则为所述业务报文封装第四MPLS标签信息,其中,所述第四MPLS标签信息中依次包括有:该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,以及该第二个指定网络节点的Node SID和/或Adj SID。4.根据权利要求1所述的方法,其特征在于,在所有的指定节点的总数量为3个时,根据该约束路径信息和预设的封装规则,对所述业务报文进行封装,具体包括:针对该约束路径信息中的第一个指定网络节点、第二个指定网络节点和第三个指定网络节点,若根据该约束路径信息确定出该第一个指定网络节点既支持MPLS SR又支持SRv6、该第二个指定网络节点支持MPLS SR但不支持SRv6、且该第三个指定网络节点既支持MPLS SR又支持SRv6,则为所述业务报文封装第三IPv6头、第三SRH头、第五MPLS标签信息、第四IPv6头和第四SRH头,得到封装后的业务报文,其中,所述第三IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第一个指定网络节点的End SID和/或End.X SID,所述第三SRH头中的段列表信息包括有该第一个指定网络节点的End SID和/或End.X SID,所述第五MPLS标签信息包括该约束路径信息中包括的该第二个指定网络节点的Node SID和/或Adj SID,所述第四IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第三个指定网络节点的End SID和/或End.X SID,所述第四SRH头中的段列表信息包括有该第三个指定网络节点的End SID和/或End.X SID,所述第五MPLS标签信息位于所述第四IPv6头的前面,且位于所述第三SRH头的后面;若根据该约束路径信息确定出该第一个指定网络节点和该第二个指定网络节点既支持MPLS SR又支持SRv6、且第三个指定网络节点支持MPLS SR但不支持SRv6,则为所述业务报文封装第五IPv6头、第五SRH头和第六MPLS标签信息,得到封装后的业务报文,其中,所述第五IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第一个指定网络节点的End SID和/或End.X SID,所述第五SRH头中依次包括有:该第二个指定网络节点的End SID和/或End.X SID,以及该第一个指定网络节点的End SID和/或End.X SID,所述第六MPLS标签信息包括该约束路径信息中包括的该第三个指定网络节点的Node SID和/或Adj SID,所述第六MPLS标签信息位于所述第五SRH头的后面;若根据该约束路径信息确定出该第一个指定网络节点既支持MPLS SR又支持SRv6、且该第二个指定网络节点和该第三个指定网络节点均支持MPLS SR但不支持SRv6,则为所述业务报文封装第六IPv6头、第六SRH头和第七MPLS标签信息,得到封装后的业务报文,其中,所述第六IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第一个指定网络节点的End SID和/或End.X SID,所述第六SRH头中的段列表信息包括有该第一个指定网络节点的End SID和/或End.X SID,所述第七MPLS标签信息中依次包括有:该约束路径信息中包括的该第二个指定网络节点的Node SID和/或Adj SID,以及该第三个指定网络节点的Node SID和/或Adj SID,所述第七MPLS标签信息位于所述第六SRH头的后面;若根据该约束路径信息确定出该第一个指定网络节点支持MPLS SR但不支持SRv6、该第二个指定网络节点和该第三个指定网络节点均既支持MPLS SR又支持SRv6,则为所述业
务报文封装第八MPLS标签信息、第七IPv6头和第七SRH头,得到封装后的业务报文,其中,所述第八MPLS标签信息包括该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,所述第七IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第二个指定网络节点的End SID和/或End.X SID,所述第七SRH头中依次包括有:该约束路径信息中包括的该第三个指定网络节点的End SID和/或End.X SID,以及该第二个指定网络节点的End SID和/或End.X SID,所述第八MPLS标签信息位于所述第七IPv6头的前面;若根据该约束路径信息确定出该第一个指定网络节点支持MPLS SR但不支持SRv6、该第二个指定网络节点既支持MPLS SR又支持SRv6、且该第三个指定网络节点支持MPLS SR但不支持SRv6,则为所述业务报文封装第九MPLS标签信息、第八IPv6头、第八SRH头和第十MPLS标签信息,得到封装后的业务报文,其中,所述第九MPLS标签信息包括该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,所述第八IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第二个指定网络节点的End SID和/或End.X SID,所述第八SRH头中的段列表信息包括有该第二个指定网络节点的End SID和/或End.X SID,所述第十MPLS标签信息包括该约束路径信息中包括的该第三个指定网络节点的Node SID和/或Adj SID,所述第九MPLS标签信息位于所述第八IPv6头的前面,且所述第十MPLS标签信息位于所述第八SRH头的前面;若根据该约束路径信息确定出该第一个指定网络节点和该第二个指定网络节点均支持MPLS SR但不支持SRv6、且该第三个指定网络节点既支持MPLS SR又支持SRv6,则为所述业务报文封装第十一MPLS标签信息、第九IPv6头和第九SRH头,得到封装后的业务报文,其中,所述第十一MPLS标签信息中依次包括有:该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,以及该第二个指定网络节点的Node SID和/或Adj SID,所述第九IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的该第三个指定网络节点的End SID和/或End.X SID所述第九SRH头中的段列表信息包括有该第三个指定网络节点的End SID和/或End.X SID,所述第十一MPLS标签信息位于所述第九IPv6头的前面;若根据该约束路径信息确定出该第一个指定网络节点、该第二个指定网络节点和该第三个指定网络节点均支持MPLS SR但不支持SRv6,则为所述业务报文封装第十二MPLS标签信息,得到封装后的业务报文,其中,所述第十二MPLS标签信息中依次包括有:该约束路径信息中包括的该第一个指定网络节点的Node SID和/或Adj SID,该约束路径信息中包括的该第二个指定网络节点的Node SID和/或Adj SID,以及该约束路径信息中包括的该第三个指定网络节点的Node SID和/或Adj SID。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到所述业务报文、且监测到该主路径发生故障时,若该约束路径信息中不存在支持MPLS SR但不支持SRv6的指定网络节点的段标识信息和/或链路段标识信息,则为所述业务报文封装第十IPv6头和第十SRH头,得到封装后的业务报文;其中,所述第十IPv6头的源IPv6地址为所述源节点的IPv6地址,目的IPv6地址为该约束路径信息中包括的第一个指定网络节点的End SID和/或End.X SID,所述第十SRH头中包括有该约束路径信息中包括的所有的指定网络节点的End SID和/或End.X SID,所有的指
定网络节点的End SID和/或End.X SID按照该TI
‑
LFA FRR路径上的所有的指定网络节...
【专利技术属性】
技术研发人员:翟翔,
申请(专利权)人:新华三技术有限公司合肥分公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。