发送报文的方法、装置及系统转让专利

申请号 : CN201911051664.X

文献号 : CN112751769B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘冰彭书萍

申请人 : 华为技术有限公司

摘要 :

公开了一种发送报文的方法、装置及系统,属于通信领域。该方法包括:第一设备接收包括虚拟局域网的网络标识和原始报文的第一报文,虚拟局域网包括第一主机和第二主机;根据第二主机的标识和网络标识获取第一标识,第一标识用于标识第二设备,第一设备与第二设备之间存在SRv6隧道,第一标识包括指示标识,用于指示第二设备将通过SRv6隧道转发的报文格式转换成通过第一NVO3隧道转发的报文格式;通过SRv6隧道向第二设备发送包括第一标识和原始报文的SRv6报文。该方法能够保证位于同一虚拟局域网内但在不同物理局域网的主机之间的正常通信。

权利要求 :

1.一种发送报文的方法,其特征在于,所述方法包括:第一设备接收第一报文,所述第一报文包括虚拟局域网的网络标识和原始报文,所述原始报文是第一主机发送给第二主机的报文,所述虚拟局域网包括所述第一主机和所述第二主机;

所述第一设备根据所述第二主机的标识和所述网络标识获取第一标识,所述第一标识用于标识第二设备,所述第一设备与所述第二设备之间存在互联网协议第6版段路由SRv6隧道,所述第一设备是所述SRv6隧道的入口设备,所述第二设备与所述第二主机接入的网络设备之间存在第一基于三层的网络虚拟化NVO3隧道,所述第一标识包括指示标识,所述指示标识用于指示所述第二设备将通过所述SRv6隧道转发的报文格式转换成通过所述第一NVO3隧道转发的报文格式;

所述第一设备通过所述SRv6隧道向所述第二设备发送SRv6报文,所述SRv6报文包括第一标识和所述原始报文。

2.根据权利要求1所述的方法,其特征在于,所述第一设备根据所述第二主机的标识和所述网络标识获取第一标识,包括:所述第一设备根据所述第二主机的标识和所述网络标识获取所述第二设备的设备标识;

所述第一设备根据所述网络标识和所述设备标识,从映射关系表中获取第一标识,所述映射关系表用于保存网络标识、设备标识与第一标识的对应关系。

3.如权利要求1所述的方法,其特征在于,所述第一标识还用于标识所述第二主机接入的网络设备,所述第一设备根据所述第二主机的标识和所述网络标识获取第一标识,包括:所述第一设备根据所述第二主机的标识和所述网络标识获取所述第二设备的设备标识;

所述第一设备根据所述网络标识、所述设备标识和所述第二主机的标识,从映射关系表中获取第一标识,所述映射关系表用于保存网络标识、设备标识、主机的标识与第一标识的对应关系。

4.如权利要求1至3任一项所述的方法,其特征在于,所述SRv6报文还包括第一元数据,所述第一设备发送所述SRv6报文之前,还包括;

所述第一设备获取所述第一元数据,所述第一元数据包括所述原始报文的附加信息或所述原始报文经过的网络设备的设备信息中的至少一者。

5.如权利要求4所述的方法,其特征在于,所述第一报文还包括第二元数据,所述第一设备获取所述第一元数据,包括:

根据第二NVO3隧道对应的协议类型和所述第一报文中的包括所述第二元数据的字段类型,对所述第二元数据进行格式转换,得到所述第一元数据,所述第二NVO3隧道是所述第一设备与所述第一主机接入的网络设备之间的隧道。

6.如权利要求1至3任一项所述的方法,其特征在于,所述SRv6报文的段列表Segment List字段包括所述第一标识。

7.如权利要求2所述的方法,其特征在于,所述第一设备接收第一报文之前,还包括:所述第一设备接收所述第二设备发送的通知报文,所述通知报文包括所述第一标识、所述网络标识和所述设备标识;

所述第一设备将所述第一标识、所述网络标识和所述设备标识之间的对应关系保存在映射关系表中。

8.如权利要求1、2、3和7任一项所述的方法,其特征在于,所述第二设备为与所述第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

9.如权利要求1、2、3和7任一项所述的方法,其特征在于,所述第一设备为与所述第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

10.一种发送报文的方法,其特征在于,所述方法包括:第二设备通过与第一设备之间的互联网协议第6版段路由SRv6隧道接收SRv6报文,所述第一设备是所述SRv6隧道的入口设备,所述SRv6报文包括第一标识和原始报文,所述原始报文是第一主机发送给第二主机的报文,所述第一标识用于标识所述第二设备,所述第二设备与所述第二主机接入的网络设备之间存在第一基于三层的网络虚拟化NVO3隧道,所述第一标识包括指示标识;

所述第二设备根据所述第一标识将所述SRv6报文转换为第二报文,所述第二报文是通过所述第一NVO3隧道转发的报文,所述第二报文包括虚拟局域网的网络标识和所述原始报文,所述虚拟局域网包括所述第一主机和所述第二主机;

所述第二设备通过所述第一NVO3隧道向所述第二主机发送所述第二报文。

11.如权利要求10所述的方法,其特征在于,所述第二设备根据所述第一标识将所述SRv6报文转换为第二报文,包括:所述第二设备根据所述第一标识,从映射关系表中获取所述虚拟局域网的网络标识和所述第一NVO3隧道的封装类型,所述映射关系表用于保存第一标识、网络标识与封装类型的对应关系;

所述第二设备根据所述虚拟局域网的网络标识和所述封装类型对所述SRv6报文的格式进行转换,以得到第二报文。

12.如权利要求10或11所述的方法,其特征在于,所述SRv6报文还包括第一元数据,所述第一元数据包括所述原始报文的附加信息或所述原始报文经过的网络设备的设备信息中的至少一者,所述第二报文还包括第三元数据;

所述第二设备通过所述第一NVO3隧道向所述第二主机发送所述第二报文之前,还包括:

所述第二设备根据所述第一NVO3隧道对应的协议类型和所述SRv6报文中的包括所述第一元数据的字段类型,对所述第一元数据进行格式转换,得到所述第三元数据。

13.如权利要求10或11所述的方法,其特征在于,所述第一标识还用于标识与所述第二主机接入的网络设备,所述第二报文还包括所述第二主机接入的网络设备的设备标识。

14.如权利要求10或11所述的方法,其特征在于,所述第一标识为段标识符SID。

15.如权利要求10或11所述的方法,其特征在于,所述第二设备接收互联网协议第6版段路由SRv6报文之前,还包括:所述第二设备向所述第一设备发送通知报文,所述通知报文包括所述第一标识、所述第二设备的设备标识和所述虚拟局域网的网络标识。

16.如权利要求10或11所述的方法,其特征在于,所述第二设备为与所述第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

17.如权利要求10或11所述的方法,其特征在于,所述第一设备为与所述第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

18.一种发送报文的装置,其特征在于,所述装置包括:接收单元,用于接收第一报文,所述第一报文包括虚拟局域网的网络标识和原始报文,所述原始报文是第一主机发送给第二主机的报文,所述虚拟局域网包括所述第一主机和所述第二主机;

处理单元,用于根据所述第二主机的标识和所述网络标识获取第一标识,所述第一标识用于标识第二设备,所述装置与所述第二设备之间存在互联网协议第6版段路由SRv6隧道,所述装置是所述SRv6隧道的入口设备,所述第二设备与所述第二主机接入的网络设备之间存在第一基于三层的网络虚拟化NVO3隧道,所述第一标识包括指示标识,所述指示标识用于指示所述第二设备将通过所述SRv6隧道转发的报文格式转换成通过所述第一NVO3隧道转发的报文格式;

发送单元,用于通过所述SRv6隧道向所述第二设备发送SRv6报文,所述SRv6报文包括第一标识和所述原始报文。

19.根据权利要求18所述的装置,其特征在于,所述处理单元,用于:根据所述第二主机的标识和所述网络标识获取所述第二设备的设备标识;

根据所述网络标识和所述设备标识,从映射关系表中获取第一标识,所述映射关系表用于保存网络标识、设备标识与第一标识的对应关系。

20.如权利要求19所述的装置,其特征在于,所述第一标识还用于标识所述第二主机接入的网络设备;所述处理单元,用于:根据所述第二主机的标识和所述网络标识获取所述第二设备的设备标识;

根据所述网络标识、所述设备标识和所述第二主机的标识,从所述映射关系表中获取第一标识,所述映射关系表用于保存网络标识、设备标识、主机的标识与第一标识的对应关系。

21.如权利要求18至20任一项所述的装置,其特征在于,所述处理单元,还用于;

获取第一元数据,所述第一元数据包括所述原始报文的附加信息或所述原始报文经过的网络设备的设备信息中的至少一者。

22.如权利要求21所述的装置,其特征在于,所述第一报文还包括第二元数据,所述处理单元,用于:

根据第二NVO3隧道对应的协议类型和所述第一报文中的包括所述第二元数据的字段类型,对所述第二元数据进行格式转换,得到所述第一元数据,所述第二NVO3隧道是所述装置与所述第一主机接入的网络设备之间的隧道。

23.如权利要求18至20任一项所述的装置,其特征在于,所述SRv6报文的段列表Segment List字段包括所述第一标识。

24.如权利要求19所述的装置,其特征在于,所述接收单元,还用于接收所述第二设备发送的通知报文,所述通知报文包括所述第一标识、所述网络标识和所述设备标识;

所述处理单元,还用于将所述第一标识、所述网络标识和所述设备标识之间的对应关系保存在映射关系表中。

25.如权利要求18、19、20和24任一项所述的装置,其特征在于,所述第二设备为与所述第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

26.如权利要求18、19、20和24任一项所述的装置,其特征在于,所述装置为与所述第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

27.一种发送报文的装置,其特征在于,所述装置包括:接收单元,用于通过与第一设备之间的互联网协议第6版段路由SRv6隧道接收SRv6报文,所述第一设备是所述SRv6隧道的入口设备,所述SRv6报文包括第一标识和原始报文,所述原始报文是第一主机发送给第二主机的报文,所述第一标识用于标识所述装置,所述装置与所述第二主机接入的网络设备之间存在第一基于三层的网络虚拟化NVO3隧道,所述第一标识包括指示标识;

处理单元,用于根据所述第一标识将所述SRv6报文转换为第二报文,所述第二报文是通过所述第一NVO3隧道转发的报文,所述第二报文包括虚拟局域网的网络标识和所述原始报文,所述虚拟局域网包括所述第一主机和所述第二主机;

发送单元,用于通过所述第一NVO3隧道向所述第二主机发送所述第二报文。

28.如权利要求27所述的装置,其特征在于,所述处理单元,用于:根据所述第一标识,从映射关系表中获取所述虚拟局域网的网络标识和所述第一NVO3隧道的封装类型,所述映射关系表用于保存第一标识、网络标识与封装类型的对应关系;

根据所述虚拟局域网的网络标识和所述封装类型对所述SRv6报文的格式进行转换,以得到第二报文。

29.如权利要求27或28所述的装置,其特征在于,所述SRv6报文还包括第一元数据,所述第一元数据包括所述原始报文的附加信息或所述原始报文经过的网络设备的设备信息中的至少一者,所述第二报文还包括第三元数据;

所述处理单元,还用于根据所述第一NVO3隧道对应的协议类型和所述SRv6报文中的包括所述第一元数据的字段类型,对所述第一元数据进行格式转换,得到所述第三元数据。

30.如权利要求27或28所述的装置,其特征在于,所述第一标识还用于标识与所述第二主机接入的网络设备,所述第二报文还包括所述第二主机接入的网络设备的设备标识。

31.如权利要求27或28所述的装置,其特征在于,所述第一标识为段标识符SID。

32.如权利要求27或28所述的装置,其特征在于,所述发送单元,还用于向所述第一设备发送通知报文,所述通知报文包括所述第一标识、所述装置的设备标识和所述虚拟局域网的网络标识。

33.如权利要求27或28所述的装置,其特征在于,所述装置为与所述第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

34.如权利要求27或28所述的装置,其特征在于,所述第一设备为与所述第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。

35.一种发送报文的系统,其特征在于,所述系统包括如权利要求18至26任一项所述的装置和如权利要求27至34任一项所述的装置。

36.一种非易失性计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序通过处理器进行加载来执行如权利要求1‑17任一项所述的方法。

说明书 :

发送报文的方法、装置及系统

技术领域

[0001] 本申请涉及通信领域,特别涉及一种发送报文的方法、装置及系统。

背景技术

[0002] 同一虚拟局域网中的用户(该用户为设备或虚拟机)可以分布在不同的物理局域网中,物理局域网可以连接到广域网上,这样对于属于同一虚拟局域网但位于不同的物理
局域网的两个用户,该两个用户之间的通信需要借助广域网来实现。
[0003] 为了便于说明称上述两个用户为第一用户和第二用户,第一用户所在的第一物理局域网通过第一网关连接到广域网的第一边缘路由器(edge router,PE),第二用户所在的
第二物理局域网通过第二网关连接到广域网的第二PE。在第一物理局域网中第一用户所连
接的第一路由器与第一PE之间建立有第一基于三层的网络虚拟化(network 
virtualization over layer 3,NVO3)隧道,在第二物理局域网中第二用户所连接的第二
路由器与第二PE之间建立有第二NVO3隧道,第一PE和第二PE之间建立有多协议标签交换
(multi‑protocol label switching,MPLS)隧道,在第一PE和第二PE中保存有标识该虚拟
局域网的虚拟扩展局域网网络标识符(virtual extensible local area network 
identifier,VNI)与标识该虚拟局域网的MPLS标签之间的映射关系。
[0004] 这样第一用户向第二用户发送第一报文时,第一路由器接收第一报文,在第一报文中添加第一NVO3隧道的报文头得到第二报文,该报文头包括标识该虚拟局域网的VNI,通
过第一NVO3隧道向第一PE发送第二报文。第一PE接收第二报文,获取与第二报文包括的该
VNI相对应的MPLS标签,去除第二报文中添加的报文头得到第一报文,在第一报文中添加
MPLS报文头得到第三报文,该MPLS报文头包括标识该虚拟局域网的MPLS标签,向第二PE发
送第三报文。第二PE接收到第三报文,获取与第三报文中的该MPLS标签相对应的VNI,去除
第三报文中的MPLS报文头得到第一报文,在第一报文中添加该VNI对应的第二NVO3隧道的
报文头得到第四报文,该报文头包括该VNI,通过该VNI对应的第二NVO3隧道向第二路由器
发送第四报文。第二路由器接收第四报文,去除第四报文中的第二NVO3隧道的报文头得到
第一报文,第二路由器向第二用户发送第一报文。
[0005] 在实现本申请的过程中,发明人发现相关技术至少存在以下问题:
[0006] 目前虚拟局域网的VNI长度为24比特,MPLS标签的有效长度为20比特,VNI长度大于MPLS标签的长度,这样VNI能够标识的虚拟局域网数目M大于MPLS标签能够标识的虚拟局
域网数目N,当有N个虚拟局域网使用了所有的MPLS标签时,其他的虚拟局域网无MPLS标签
可用,这样导致该虚拟局域网内不在同一物理局域网的用户无法通信。

发明内容

[0007] 本申请提供了一种发送报文的方法、装置及系统,以保证位于同一虚拟局域网内但在不同物理局域网的主机之间能够正常通信,所述技术方案如下:
[0008] 第一方面,本申请提供了一种发送报文的方法,在所述方法中,第一设备接收第一报文,第一报文包括虚拟局域网的网络标识和原始报文,原始报文是第一主机发送给第二
主机的报文,虚拟局域网包括第一主机和第二主机。第一设备根据第二主机的标识和该网
络标识获取第一标识,第一标识用于标识第二设备,第一设备与第二设备之间存在互联网
协议第6版段路由SRv6隧道,第一设备是该SRv6隧道的入口设备,第二设备与第二主机接入
的网络设备之间存在第一基于三层的网络虚拟化NVO3隧道,第一标识包括指示标识,指示
标识用于指示第二设备将通过该SRv6隧道转发的报文格式转换成通过第一NVO3隧道转发
的报文格式。第一设备通过该SRv6隧道向第二设备发送SRv6报文,该SRv6报文包括第一标
识和原始报文。
[0009] 在SRv6网络中,用于标识第二设备的第一标识的长度通常是128比特,长于MPLS标签的长度,第一标识能够标识的虚拟局域网的数量不会小于VNI能够标识的虚拟局域网的
数量,从而克服了部分虚拟局域网可能无MPLS标签可用,这部分虚拟局域网内不在同一物
理局域网的用户无法通信的技术问题。保证位于同一虚拟局域网内但在不同物理局域网的
主机之间能够正常通信。
[0010] 在一种可能的实现方式中,第一设备根据第二主机的标识和该网络标识获取第二设备的设备标识。第一设备根据该网络标识和该设备标识,从映射关系表中获取第一标识,
该映射关系表用于保存网络标识、设备标识与第一标识的对应关系。如此使得第一设备在
接收到第一报文后,可以准确获取到第一标识,第一设备能够将第一标识随在SRv6报文中
发送给第二设备。
[0011] 在另一种可能的实现方式中,第一标识还用于标识第二主机接入的网络设备,第一设备根据第二主机的标识和该网络标识获取第二设备的设备标识。第一设备根据该网络
标识和该设备标识,从该映射关系表中获取第一标识,该映射关系表用于保存网络标识、设
备标识、主机的标识与第一标识的对应关系。
[0012] 在另一种可能的实现方式中,该SRv6报文还包括第一元数据,第一设备获取第一元数据,第一元数据包括原始报文的附加信息或原始报文经过的网络设备的设备信息中的
至少一者。
[0013] 在另一种可能的实现方式中,第一报文还包括第二元数据,根据第二NVO3隧道对应的协议类型和第一报文中的包括第二元数据的字段类型,对第二元数据进行格式转换,
得到第一元数据,第二NVO3隧道是第一设备与第一主机接入的网络设备之间的隧道。这样
可以将第一报文中的元数据传输给第二主机,避免发生丢失元数据现象。
[0014] 在另一种可能的实现方式中,该SRv6报文的段列表Segment List字段包括第一标识。
[0015] 在另一种可能的实现方式中,第一标识为段标识符SID,由于SID的长度较长,这样保证第二设备通过第一标识可以区分出目前存在的各虚拟局域网。
[0016] 在另一种可能的实现方式中,第一设备接收第二设备发送的通知报文,该通知报文包括第一标识、该网络标识和该设备标识。第一设备将第一标识、该网络标识和该设备标
识之间的对应关系保存在映射关系表中,这样保证第一设备在接收到第一主机的第一报文
时可以获取到第一标识,以基于第一标识实现与第二主机之间的通信。
[0017] 在另一种可能的实现方式中,第二设备为与第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,合设设备包括PE具有的功能和
GW具有的功能。在第二设备为GW、合设设备、Spine或TOR的情况下,第二设备与第二主机接
入的网络设备之间的NVO3隧道包括一段隧道,如此可以减小报文在不同隧道之间进行格式
转换的次数。
[0018] 在另一种可能的实现方式中,第一设备为与第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,合设设备包括PE具有的功能和GW具有的功能。在第一设备为GW、合设设
备、Spine或TOR的情况下,第一设备与第一主机接入的网络设备之间的NVO3隧道包括一段
隧道,如此可以减小报文在不同隧道之间进行格式转换的次数。
[0019] 第二方面,本申请提供了一种发送报文的方法,在所述方法中,第二设备通过与第一设备之间的互联网协议第6版段路由SRv6隧道接收SRv6报文,所述第一设备是所述SRv6
隧道的入口设备,该SRv6报文包括第一标识和原始报文,原始报文是第一主机发送给第二
主机的报文,第一标识用于标识第二设备,第二设备与第二主机接入的网络设备之间存在
第一基于三层的网络虚拟化NVO3隧道,第一标识包括指示标识。第二设备根据第一标识,将
该SRv6报文转换成第二报文,第二报文包括虚拟局域网的网络标识和原始报文,该虚拟局
域网包括第一主机和第二主机。第二设备通过第一NVO3隧道向第二主机发送第二报文。
[0020] 在SRv6网络中,用于标识第二设备的第一标识的长度通常是128比特,长于MPLS标签的长度,第一标识能够标识的虚拟局域网的数量不会小于VNI能够标识的虚拟局域网的
数量,从而克服了部分虚拟局域网可能无MPLS标签可用,这部分虚拟局域网内不在同一物
理局域网的用户无法通信的技术问题。保证位于同一虚拟局域网内但在不同物理局域网的
主机之间能够正常通信。
[0021] 在一种可能的实现方式中,第二设备根据第一标识,从映射关系表中获取虚拟局域网的网络标识和第一NVO3隧道的封装类型,映射关系表用于保存第一标识、网络标识与
封装类型的对应关系。第二设备根据虚拟局域网的网络标识和该封装类型对SRv6报文的格
式进行转换,以得到第二报文。由于映射关系表用于保存第一标识、网络标识与封装类型的
对应关系,这样第二网络设备根据第一标识便确定第二主机所在的虚拟局域网,以及实现
将SRv6报文的格式转换成第一NVO3隧道对应的报文格式的第二报文。
[0022] 在另一种可能的实现方式中,该SRv6报文还包括第一元数据,第一元数据包括原始报文的附加信息或原始报文经过的网络设备的设备信息中的至少一者,第二报文还包括
第三元数据。第二设备根据第一NVO3隧道对应的协议类型和SRv6报文中的包括第一元数据
的字段类型,对第一元数据进行格式转换,得到第三元数据。这样可以将SRv6报文中的元数
据传输给第二主机,避免发生丢失元数据现象。
[0023] 在另一种可能的实现方式中,第一标识还用于标识与第二主机接入的网络设备,第二报文还包括第二主机接入的网络设备的设备标识。这样根据第一标识可以得到该网络
设备的设备标识,避免了第二设备再获取该网络设备的标识,可以提高发送报文的效率。
[0024] 在另一种可能的实现方式中,第一标识为段标识符SID,由于SID的长度较长,这样保证第二设备通过第一标识可以区分出目前存在的各虚拟局域网。
[0025] 在另一种可能的实现方式中,第二设备向第一设备发送通知报文,通知报文包括第一标识、第二设备的设备标识和虚拟局域网的网络标识。这样使得第一设备中保存有第
一标识。
[0026] 在另一种可能的实现方式中,第二设备为与第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,所述合设设备包括所述PE具有
的功能和所述GW具有的功能。在所述第二设备为GW、合设设备、Spine或TOR的情况下,第二
设备与第二主机接入的网络设备之间的NVO3隧道包括一段隧道,如此可以减小报文在不同
隧道之间进行格式转换的次数。
[0027] 在另一种可能的实现方式中,第一设备为与所述第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,所述合设设备包括所述PE具有的功能和所述GW具有的功能。在所述
第一设备为GW、合设设备、Spine或TOR的情况下,第一设备与第一主机接入的网络设备之间
的NVO3隧道包括一段隧道,如此可以减小报文在不同隧道之间进行格式转换的次数。
[0028] 第三方面,本申请提供了一种发送报文的方法,在所述方法中,第一设备接收第二设备发送的通知报文,该通知报文包括第一标识、虚拟局域网的网络标识和第二设备的设
备标识,第一标识用于标识第二设备,第一标识包括指示标识,该指示标识用于指示第二设
备将通过SRv6隧道转发的报文格式转换成通过第一NVO3隧道转发的报文格式,该SRv6隧道
是第一设备与第二设备之间的SRv6隧道,第一NVO3隧道为第二设备与第二主机接入的网络
设备之间的隧道,第二主机属于所述虚拟局域网。第一设备将第一标识、该网络标识和该设
备标识之间的对应关系保存在映射关系表中。这样保证第一设备在接收到第一主机的第一
报文时可以从该映射关系表中获取到第一标识,基于第一标识实现向第二主机发送第一报
文。
[0029] 第四方面,本申请提供了一种发送报文的方法,在所述方法中,第二设备接收路由信息,所述路由信息包括第二主机属于的虚拟局域网的网络标识;第二设备获得第一标识,
第一标识用于标识第二设备,第一标识包括指示识标,该指示标识用于指示第二设备将通
过SRv6隧道转发的报文格式转换成通过第一NVO3隧道转发的报文格式,该SRv6隧道是第一
设备与第二设备之间的SRv6隧道,第一NVO3隧道为第二设备与第二主机接入的网络设备之
间的隧道。第二设备向第一设备发送通知报文,该通知报文包括第一标识、第二设备的设备
标识和虚拟局域网的网络标识。这样使得第一设备中保存有第一标识,以保证第一设备在
接收到第一主机的第一报文时,基于第一标识实现向第二主机发送第一报文。
[0030] 第五方面,本申请提供了一种发送报文的装置,用于执行第一方面或第一方面的任意一种可能实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的
任意一种可能实现方式的方法的单元。或者,所述装置包括用于执行第三方面的方法的单
元。
[0031] 第六方面,本申请提供了一种发送报文的装置,用于执行第二方面或第二方面的任意一种可能实现方式中的方法。具体地,所述装置包括用于执行第二方面或第二方面的
任意一种可能实现方式的方法的单元。或者,所述装置包括用于执行第四方面的方法的单
元。
[0032] 第七方面,本申请提供了一种发送报文的装置,所述装置包括:处理器、存储器和收发器。其中,所述处理器、所述存储器和所述收发器之间可以通过总线系统相连。所述存
储器用于存储一个或多个程序,所述处理器用于执行所述存储器中的一个或多个程序,完
成第一方面或第一方面的任意可能实现方式中的方法;或者,所述处理器用于执行所述存
储器中的一个或多个程序,完成第三方面的方法。
[0033] 第八方面,本申请提供了一种发送报文的装置,所述装置包括:处理器、存储器和收发器。其中,所述处理器、所述存储器和所述收发器之间可以通过总线系统相连。所述存
储器用于存储一个或多个程序,所述处理器用于执行所述存储器中的一个或多个程序,完
成第二方面或第二方面的任意可能实现方式中的方法;或者,所述处理器用于执行所述存
储器中的一个或多个程序,完成第三方面的方法。
[0034] 第九方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有程序代码,当其在计算机上运行时,使得计算机执行上述第一方面、第二方面、第三方面、
第四方面、第一方面的任意可能实现方式或第二方面的任意可能实现方式中的方法。
[0035] 第十方面,本申请提供了一种包含程序代码的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面、第二方面、第三方面、第四方面、第一方面的任意可
能实现方式或第二方面的任意可能实现方式中的方法。
[0036] 第十一方面,本申请提供了一种发送报文的系统,包括第五方面所述的装置和第六方面所述的装置;或者,包括第七方面所述的装置和第八方面所述的装置。

附图说明

[0037] 图1是本申请实施例提供的一种网络架构示意图;
[0038] 图2是本申请实施例提供的另一种网络架构示意图;
[0039] 图3是本申请实施例提供的另一种网络架构示意图;
[0040] 图4是本申请实施例提供的另一种网络架构示意图;
[0041] 图5是本申请实施例提供的另一种网络架构示意图;
[0042] 图6是本申请实施例提供的一种连通通信路径的方法流程图;
[0043] 图7是本申请实施例提供的一种发送报文的方法流程图;
[0044] 图8是本申请实施例提供的一种在第一种网络架构中的报文传输过程的示意图;
[0045] 图9是本申请实施例提供的一种在第二种网络架构中的报文传输过程的示意图;
[0046] 图10是本申请实施例提供的一种在第三种网络架构中的报文传输过程的示意图;
[0047] 图11是本申请实施例提供的一种在第四种网络架构中的报文传输过程的示意图;
[0048] 图12是本申请实施例提供的一种在第一种网络架构中的另一种报文传输过程的示意图;
[0049] 图13是本申请实施例提供的一种NVO3隧道对应的报文头结构示意图;
[0050] 图14是本申请实施例提供的另一种NVO3隧道对应的报文头结构示意图;
[0051] 图15是本申请实施例提供的一种SRv6报文头结构示意图;
[0052] 图16是本申请实施例提供的一种在第三种网络架构中的另一种报文传输过程的示意图;
[0053] 图17是本申请实施例提供的一种发送报文的装置结构示意图;
[0054] 图18是本申请实施例提供的另一种发送报文的装置结构示意图;
[0055] 图19是本申请实施例提供的另一种发送报文的装置结构示意图;
[0056] 图20是本申请实施例提供的另一种发送报文的装置结构示意图;
[0057] 图21是本申请实施例提供的一种发送报文的系统结构示意图。

具体实施方式

[0058] 虚拟局域网中的主机可以分布在不同的物理局域网中,主机可以是终端设备、服务器或位于服务器上的虚拟机等。物理局域网可以连接到广域网,这样同一虚拟局域网且
位于不同物理局域网中的两个主机之间可以通过广域网进行通信。
[0059] 可选的,物理局域网是数据中心网络或在园区中部署的局域网。
[0060] 参见图1,假设第一主机和第二主机位于同一虚拟局域网,但第一主机和第二主机分别位于第一物理局域网和第二物理局域网。第一主机接入到位于第一物理局域网中的一
个网络设备,为了便于说明称该网络设备为第一网络设备。第二主机接入到第二物理局域
网中的一个网络设备,为了便于说明称该网络设备为第二网络设备。
[0061] 假设第一主机需要向第二主机发送报文,则在第二设备与第二网络设备之间可以建立有第一NVO3隧道,第一设备与第二设备之间可以建立有互联网协议第6版段路由
(segment routing internet protocol version 6,SRv6)隧道,第一网络设备与第一设备
之间可以建立有第二NVO3隧道,该SRv6隧道穿过整个广域网。
[0062] 第一网络设备为第二NVO3隧道的入口设备,第一设备为第二NVO3的出口设备,第二NVO3隧道的传输方向为从第一网络设备传输至第一设备的方向。第一设备是该SRv6隧道
的入口设备,第二设备是该SRv6隧道的出口设备,该SRv6隧道的传输方向为从第一设备传
输至第二设备的方向。第二设备为第一NVO3隧道的入口设备,第二网络设备为第一NVO3隧
道的出口设备,第一NVO3隧道的传输方向为从第二设备传输至第二网络设备的方向。
[0063] 第一设备可以位于第一物理局域网和/或位于广域网中,第二设备可以位于第二物理局域网和/或位于广域网中。第一设备可以将通过第二NVO3隧道转发的报文格式转换
成通过SRv6隧道转发的报文格式。第二设备可以将通过SRv6隧道转发的报文格式转换成通
过第一NVO3隧道转发的报文格式。
[0064] 这样虽然第一主机位于第一物理局域网,第二主机位于第二物理局域网,但第一主机可以通过第二NVO3隧道、SRv6隧道和第一NVO3隧道,向第二主机发送报文。第一主机向
第二主机发送报文的详细实现过程,可以参见图所示的实施例,在此先不详细说明。
[0065] 第二主机也可以向第一主机发送报文,第二主机发送报文的过程与第一主机向第二主机发送报文的过程相反。所以在本申请实施例仅以第一主机向第二主机发送报文的过
程为例进行说明,而第二主机向第一主机发送报文的过程,可以参见第一主机向第二主机
发送报文的过程。
[0066] 可选的,图1所示的网络架构的拓扑可以包括多种结构,接下来列举了如下几种网络拓扑结构的示例,分别为:
[0067] 第一种网络架构,参见图2,第一物理局域网的拓扑和第二物理局域网的拓扑可以相同,第一物理局域网包括第一骨干交换机(Spine)、第一网关(gateway,GW)和至少一个第
一叶子交换机(top of rack,TOR)等。第二物理局域网包括第二Spine、第二GW和至少一个
第二TOR等。在第一物理局域网中每个第一TOR可以与第一Spine连接,第一Spine与第一GW
连接,第一GW与广域网的第一PE连接,如此实现将第一物理局域网连接到广域网。在第二物
理局域网中每个第二TOR可以与第二Spine连接,第二Spine与第二GW连接,第二GW连接到广
域网,如此实现将第二物理局域网连接到广域网。位于第一物理局域网中的第一主机可以
接入到第一物理局域网中的一个第一TOR或者第一主机可以接入到一个路由器并通过该路
由器连到第一物理局域网中的一个第一TOR,以及位于第二物理局域网中的第二主机可以
接入到第二物理局域网中的一个第二TOR或第二主机可以接入到一个路由器并通过该路由
器连接到第二物理局域网中的一个第二TOR。
[0068] 在第一种网络架构中,第一设备可以为第一PE、第一GW、第一Spine或第一TOR等,第二设备可以为第二PE、第二GW、第二Spine或第二TOR等。也就是说,该SRv6隧道可以是第
一PE和第二PE之间的隧道,第一GW和第二GW之间的隧道、第一Spine和第二Spine之间的隧
道,第一TOR和第二TOR之间的隧道,第一PE与第二GW之间的隧道,第一Spine与第二GW之间
的隧道,或第一TOR与第二GW之间的隧道等。
[0069] 在该SRv6隧道的入口设备不是第一TOR的情况下,第一设备为第一Spine、第一GW或第一PE,第一网络设备可以为第一主机接入第一TOR。或者,在该SRv6隧道的入口设备为
第一TOR的情况下,即第一设备为第一TOR,第一网络设备可以为第一主机接入的路由器。
[0070] 在该SRv6隧道的出口设备不是第二TOR的情况下,第二设备为第二Spine、第二GW或第二PE,第二网络设备可以为第二主机接入第二TOR。或者,在该SRv6隧道的入口设备为
第二TOR的情况下,即第二设备为第二TOR,第二网络设备可以为第二主机接入的路由器。
[0071] 在第一设备是第一PE、第一GW或第一Spine等情况下,第二NVO3隧道为第一主机接入的第一TOR与第一设备之间的隧道。可选的,在第一设备为第一PE的情况下,第二NVO3隧
道可以包括两段NVO3隧道,分别为第一段NVO3隧道和第二段NVO3隧道,第一段NVO3隧道为
第一主机接入的第一TOR与第一GW之间的NVO3隧道,第二段NVO3隧道为第一GW与第一PE之
间的NVO3隧道。
[0072] 在第一设备是第一TOR的情况下,第二NVO3隧道是第一主机接入的路由器与第一TOR之间的隧道。
[0073] 在第二设备是第二PE、第二GW或第二Spine等情况下,第一NVO3隧道为第二主机接入的第二TOR与第二设备之间的隧道。可选的,在第二设备为第二PE的情况下,第一NVO3隧
道可以包括两段NVO3隧道,分别为第三段NVO3隧道和第四段NVO3隧道,第三段NVO3隧道为
第二PE与第二GW之间的NVO3隧道,第四段NVO3隧道为第二GW与第二主机接入的第二TOR之
间的NVO3隧道。
[0074] 在第二设备是第二TOR的情况下,第一NVO3隧道是第二主机接入的路由器与第二TOR之间的隧道。
[0075] 第二种网络架构,参见图3,相比第一种网络架构,在第二种网络架构中采用第一合设设备代替位于广域网的第一PE和位于第一物理局域网的第一GW,以及采用第二合设设
备代替位于广域网的第二PE和位于第二物理局域网的第二GW。第一合设设备具有第一PE的
功能和第一GW的功能,第一合设设备即位于广域网中也位于第一物理局域网中,第二合设
设备具有第二PE的功能和第二GW的功能,第二合设设备即位于广域网中也位于第二物理局
域网中。在第二种网络架构中,第一物理局域网包括第一Spine和至少一个第一TOR设备等。
第二物理局域网包括第二Spine和至少一个第二TOR等。在第一物理局域网中每个第一TOR
可以与第一Spine连接,第一Spine与第一合设设备连接,如此实现将第一物理局域网连接
到广域网。在第二物理局域网中每个第二TOR可以与第二Spine连接,第二Spine与第二合设
设备连接,如此实现将第二物理局域网连接到广域网。位于第一物理局域网中的第一主机
可以接入到一个第一TOR,以及位于第二物理局域网中的第二主机可以接入到一个第二
TOR。
[0076] 在第二种网络架构中,第一设备可以为第一合设设备,第二设备可以为第二合设设备。也就是说,该SRv6隧道可以是第一合设设备和第二合设设备之间的隧道。第一网络设
备为第一主机接入的第一TOR,第二NVO3隧道为第一主机接入的第一TOR与第一合设设备之
间的隧道。第二网络设备为第二主机接入的第二TOR,第一NVO3隧道为第二合设设备与第二
主机接入的第二TOR之间的隧道。
[0077] 第三种网络架构,参见图4,第一物理局域网的拓扑与第二物理局域网的拓扑不同,第一物理局域网包括用户网络边缘设备(customer edge,CE)等设备。第二物理局域网
包括第二Spine、第二GW和至少一个第二TOR等。在第一物理局域网中每个CE与广域网的第
一PE连接,如此实现将第一物理局域网连接到广域网。在第二物理局域网中每个第二TOR可
以与第二Spine连接,第二Spine与第二GW连接,第二GW连接到广域网的第二PE,如此实现将
第二物理局域网连接到广域网。位于第一物理局域网中的第一主机可以接入到一个CE,以
及位于第二物理局域网中的第二主机可以接入到一个第二TOR或者第二主机接入到路由器
且通过该路由器连接到第二TOR。
[0078] 在第二种网络架构中,第一设备可以为第一PE,第二设备可以为第二PE、第二GW、第二Spine或第二TOR等。也就是说,该SRv6隧道可以是第一PE和第二PE之间的隧道,第一PE
和第二GW之间的隧道、第一PE和第二Spine之间的隧道,或第一PE和第二TOR之间的隧道等。
[0079] 第一网络设备可以为第一主机接入的CE。第二NVO3隧道为第一主机接入的CE与第一设备之间的隧道。
[0080] 在第二设备是第二PE、第二GW或第二Spine等情况下,第二网络设备可以为第二主机接入的第二TOR,第一NVO3隧道为第二主机接入的第二TOR与第二设备之间的隧道。可选
的,在第二设备为第二PE的情况下,第一NVO3隧道可以包括两段NVO3隧道,即包括第二PE与
第二GW之间的第三段NVO3隧道和第二GW与第二TOR之间的第四段NVO3隧道。
[0081] 在第二设备是第二TOR的情况下,第二网络设备为第二主机接入的路由器,第一NVO3隧道是第二主机接入的路由器与第二TOR之间的隧道。
[0082] 第四种网络架构,参见图5,相比第三种网络架构,在第四种网络架构采用第二合设设备代替位于广域网的第二PE和位于第二物理局域网的第二GW,第二合设设备具有第二
PE的功能和第二GW的功能,第二合设设备即位于广域网中也位于第二物理局域网中。在第
四种网络架构中,第一物理局域网包括CE等设备。第二物理局域网包括第二Spine和至少一
个第二TOR等。在第一物理局域网中每个CE与广域网的第一PE连接,如此实现将第一物理局
域网连接到广域网。在第二物理局域网中每个第二TOR可以与第二Spine连接,第二Spine与
第二合设设备连接,如此实现将第二物理局域网连接到广域网。位于第一物理局域网中的
第一主机可以接入到一个CE,以及位于第二物理局域网中的第二主机可以接入到一个第二
TOR。
[0083] 在第四种网络架构中,第一设备可以为第一PE,第二设备可以为第二合设设备。也就是说,该SRv6隧道可以是第一PE和第二合设设备之间的隧道。第一网络设备为第一主机
接入的CE,第二NVO3隧道为第一主机接入的CE与第一设备之间的隧道。第二网络设备为第
二主机接入的第二TOR,第一NVO3隧道为第二合设设备与第二主机接入的第二TOR之间的隧
道。
[0084] 可选的,第一NVO3隧道可以为虚拟扩展局域网(virtual extensible local area network,VXLAN)隧道、虚拟局域网(virtual local area Network,VLAN)隧道或QinQ隧道
等,第二NVO3隧道可以为VXLAN隧道、VLAN隧道或QinQ隧道等。其中,QinQ隧道又可称为堆栈
虚拟局域网(Stacked VLAN)隧道。第一NVO3隧道的隧道类型可以与第二NVO3隧道的隧道类
型相同或不同。
[0085] 可选的,第一NVO3隧道对应的协议类型可以为VXLAN、基于通用路由封装的网络虚拟化(network virtualization using generic routing encapsulation,NVGRE)、通用网
络虚拟化封装(generic network virtualization encapsulation,GENEVE)或VXLAN通用
扩展协议(generic protocol extension for VXLAN,VXLAN‑GPE)等,第一NVO3隧道对应的
协议类型可以为VXLAN、NVGRE、GENEVE或VXLAN‑GPE等。第一NVO3隧道对应的协议类型可以
与第二NVO3隧道对应的协议类型相同或不同。
[0086] 在第二NVO3隧道包括第一段NVO3隧道和第二段NVO3隧道的情况下,第一段NVO3隧道对应的协议类型和第二段NVO3隧道对应的协议类型可以相同或不同。
[0087] 在第一NVO3隧道包括第三段NVO3隧道和第四段NVO3隧道的情况下,第三段NVO3隧道对应的协议类型和第四段NVO3隧道对应的协议类型可以相同或不同。
[0088] 在上述任一种网络架构中,第一主机会事先连接到第一设备,在第一主机连接到第一设备上时,第一设备会在第一主机接入的第一网络设备与第一设备之间建立第二NVO3
隧道,且第一设备会保存第一主机属于的虚拟局域网的网络标识。第二NVO3隧道的建立过
程如下:
[0089] 第一主机向第一网络设备发送第一主机的标识和第一主机属于的虚拟局域网的网络标识。第一网络设备保存第一主机的标识与该虚拟局域网的网络标识之间的对应关
系,向第一设备发送路由信息,该路由信息包括第一网络设备的设备标识和该虚拟局域网
的网络标识。第一设备接收该路由信息,建立第二NVO3隧道,在建立第二NVO3隧道后,第一
设备会保存有该虚拟局域网的网络标识。
[0090] 可选的,在应用于图2所示的第一种网络架构中,在第一设备为第一PE的情况下,建立的第二NVO3隧道包括两段,建立过程可以为:第一网络设备向第一GW发送第一路由信
息,第一路由信息包括第一网络设备的设备标识和该虚拟局域网的网络标识。第一GW根据
第一网络设备的设备标识和该虚拟局域网的网络标识,建立第一网络设备与第一GW之间的
第一段NVO3隧道。第一GW向第一设备发送第二路由信息,第二路由信息包括第一GW的设备
标识和该虚拟局域网的网络标识,第一设备根据第一GW的设备标识和该虚拟局域网的网络
标识建立第一GW与第一设备之间的第二段NVO3隧道,如此得到第二NVO3隧道包括两段NVO3
隧道。
[0091] 在应用于图2所示的第一种网络架构中且第一设备为第一GW、第一Spine或第一TOR的情况下,建立的第二NVO3隧道为一段隧道。或者,在应用于图3所示的第二种网络架
构、4所示的第三种网络架构或图5所示和第四种网络架构中,建立的第二NVO3隧道为一段
隧道。
[0092] 可选的,在本申请实施例中出现的设备标识可以为设备的地址,该地址可以为互联网协议地址(internet protocol,IP)地址或媒体介入控制层(media access control,
MAC)地址等。例如,第一网络设备的设备标识可以为第一网络设备的地址,即可以为第一网
络设备的IP地址或MAC地址。在本申请实施例其他内容出现的设备标识的概念就不再一一
说明。
[0093] 当第一主机连接到第一设备后,在第二主机启动上线并接入到第二网络设备的情况下,或者,第二主机从第二物理局域网中的其他网络设备迁移到第二网络设备的情况下,
需要连通第一设备与第二网络设备之间的通信路径,该通信路径包括第一设备与第二设备
之间的SRv6隧道以及第二设备与第二网络设备的第一NVO3隧道。这样第一主机需要向第二
主机发送报文时,第一主机可以通过第二NVO3隧道和该通信路径向第二主机发送报文。
[0094] 可选的,参见图6,对于第一设备与第二网络设备之间的通信路径,可以通过如下步骤101至105的过程连通该通信路径,该方法包括:
[0095] 步骤101:第二主机向第二网络设备发送地址解析协议(address resolution protocol,ARP)报文,该ARP报文包括第二主机的标识和第二主机属于的虚拟局域网的网络
标识。
[0096] 在第二主机启动上线并接入到第二网络设备的情况下,或者,在第二主机从第二物理局域网的第三网络设备迁移到第二网络设备上的情况下,第二主机向第二网络设备发
送ARP报文。第三网络设备是第二物理局域网中的除第二网设备之外的其他网络设备。
[0097] 第二主机从第三网络设备迁移到第二网络设备是指第二主机断开与已接入的第三网络设备之间的连接并建立与第四网络设备之间的连接。
[0098] 步骤102:第二网络设备向第二设备发送路由信息,该路由信息包括第二主机的标识、该虚拟局域网的网络标识和第二网络设备的设备标识。
[0099] 可选的,第二网络设备可以为第二主机接入的第二TOR,或者可以为第二主机接入的路由器。
[0100] 可选的,在第二设备为第二PE的情况下,第二网络设备向第二GW发送第三路由信息,第三路由信息包括第二主机的标识、该虚拟局域网的网络标识和第二网络设备的设备
标识。第二GW根据该虚拟局域网的网络标识和第二网络设备的设备标识,建立第二GW与第
二网络设备之间的第四段NVO3隧道。以及,第二GW向第二设备发送第四路由信息,第四路由
信息包括第二GW的设备标识和该虚拟局域网的网络标识。
[0101] 步骤103:第二设备接收该路由信息,根据该路由信息建立与第二网络设备之间的第一NVO3隧道,以及生成第一标识,将第一标识、第一NVO3隧道对应的封装类型和该虚拟局
域网的网络标识之间的对应关系保存在第一映射关系表中。
[0102] 可选的,第一标识用于标识第二设备,且第一标识包括指示标识,该指示标识用于指示第二设备将通过该SRv6隧道转发的报文格式转换成通过第一NVO3隧道转发的报文格
式。或者,
[0103] 第一标识用于标识第二设备以及第二网络设备,且第一标识包括指示标识,该指示标识用于指示第二设备将通过该SRv6隧道转发的报文格式转换成通过第一NVO3隧道转
发的报文格式。
[0104] 第一设备是该SRv6隧道的入口设备。且第一设备中保存该虚拟局域网络的网络标识,这样使得第一设备用于传输属于该虚拟局域网的主机的报文。
[0105] 在本步骤中,在第一标识用于标识第二设备的情况下,第二设备接收到该路由信息后,根据该第二网络设备的设备标识和该虚拟局域网的网络标识,建立与第二网络设备
之间的与该虚拟局域网相对应的第一NVO3隧道,获取第一NVO3隧道对应的封装类型。根据
该虚拟局域网的网络标识和第一NVO3隧道对应的封装类型,查询第二设备中的第一映射关
系表,第一映射关系表用于保存第一标识、NVO3隧道对应的封装类型与虚拟局域网的网络
标识之间的对应关系。如果没有查询出对应的第一标识,生成第一标识,以及,将第一标识、
第一NVO3隧道对应的封装类型和该虚拟局域网的网络标识之间的对应关系保存在第一映
射关系表中。如果查询出对应的第一标识,则结束操作。
[0106] 其中,如果在第一映射关系表中查询出对应的第一标识,表明在执行本步骤之前第二物理局域网中的与第二主机位于同一虚拟局域网的其他主机已向第二设备发送路由
信息,并在本步骤之前已生成该第一标识,并已向第一设备发送第一标识,因此可以结束操
作。
[0107] 在本步骤中,在第一标识用于标识第二设备以及第二网络设备的情况下,第二设备接收到该路由信息后,根据该第二网络设备的设备标识和该虚拟局域网的网络标识,建
立与第二网络设备之间的与该虚拟局域网相对应的第一NVO3隧道。第二设备获取第一NVO3
隧道对应的封装类型,根据该虚拟局域网的网络标识、第一NVO3隧道对应的封装类型和第
二网络设备的设备标识,查询第一映射关系表,第一映射关系表用于保存第一标识、NVO3隧
道对应的封装类型、虚拟局域网的网络标识与网络设备的设备标识之间的对应关系。如果
没有查询出对应的第一标识,则第二设备生成第一标识,将第一标识、第一NVO3隧道对应的
封装类型、该虚拟局域网的网络标识和第二网络设备的设备标识对应保存在第一路由信息
表中。如果查询出对应的第一标识,则结束操作。
[0108] 如果从第一映射关系表中查询出对应的第一标识,表明在执行本步骤之前第二物理局域网中的与第二主机位于同一虚拟局域网的其他主机已接入第二网络设备,并向第二
设备发送路由信息,并在本步骤之前已生成该第一标识,且已向第一设备发送第一标识,因
此可以结束操作。
[0109] 可选的,在第二设备为第二PE的情况下,第二设备与第二网络设备之间的第一NVO3隧道包括两段NVO3隧道,分别为第二设备与第二GW之间的第三段NVO3隧道和第二GW与
第二网络设备之间的第四段NVO3隧道,而第一NVO3隧道对应的封装类型为第三段NVO3隧道
对应的封装类型。
[0110] 可选的,在第二设备为第二PE的情况下,第二设备接收第四路由信息,第四路由信息包括第二GW的设备标识和该虚拟局域网的网络标识,第二设备根据第二GW的设备标识和
该虚拟局域网的网络标识建立第二设备与第二GW之间的第三段NVO3隧道,如此得到第一
NVO3隧道包括的两段隧道,分别为第二设备与第二GW之间的第三段NVO3隧道和第二GW与第
二网络设备之间的第四段NVO3隧道。
[0111] 可选的,在第二设备为第二GW、第二Spine、第二TOR或第二合设设备等情况下,第一NVO3隧道为一段隧道。
[0112] 在本步骤中,第二设备还执行如下操作:第二设备根据第二主机的标识,查询第二设备中的第一路由信息表,第一路由信息表用于保存主机的标识与网络设备的设备标识之
间的对应关系;如果查询出对应的第三网络设备的设备标识,则将查询出的第三网络设备
的设备标识更新为第二网络设备的设备标识;如果没有查询出对应的第三网络设备的设备
标识,将第二主机的标识和第二网络设备的设备标识对应保存在第一路由信息表中。
[0113] 在第一路由信息表中保存有包括第二主机的标识与第三网络设备的设备标识的记录,表明第二主机从第三网络设备迁移到第二网络设备。在第二主机接入到第三网络设
备时,第二主机向第三网络设备发送包括第二主机的标标识和该虚拟局域网的网络标识的
ARP报文。以及,第三网络设备接收该ARP报文后,向第二设备发送路由信息,第二设备将第
二主机的标识和第三网络设备的设备标识之间的对应关系保存在第一路由信息表中,因此
在本步骤中第一路由信息表已保存包括第二主机的标识的记录。
[0114] 第一路由信息表中没有保存包括第二主机的标识的记录,表明第二主机启动上线,因此从第一路由信息表中查询不出对应的第三网络设备的设备标识。
[0115] 第一标识的长度大于该虚拟局域网的网络标识的长度。通常虚拟局域网的网络标识为VNI或虚拟子网标识(virtual subnet identifier,VSID),VNI的长度和VSID的长度均
为24比特。所以第一标识的长度大于24比特。这样通过第一标识可以标识出目前已出现的
所有虚拟局域网,这样可能保证分布在不同物理局域网但位于同一虚拟局域网的主机之间
可以通过第一标识进行通信。
[0116] 可选的,在第一标识用于标识第二设备的情况下,第一标识可以包括第二设备的设备标识和该指示标识。在第一标识用于标识第二设备以及第二网络设备的情况下,第一
标识可以包括第二设备的设备标识、该指示标识和第二网络设备的设备标识。
[0117] 第一标识可以为段标识符(segment identifier,SID),SID的长度可以为180比特远大于虚拟局域网的网络标识,因此第一标识可以标识目前的各虚拟局域网。
[0118] 可选的,第一NVO3隧道对应的封装类型可以为VXLAN封装类型、NVGRE封装类型、VXLAN‑GPE封装类型或GENEVE封装类型等。
[0119] 步骤104:第二设备向第一设备发送通知报文,该通知报文包括第一标识、该虚拟局域网的网络标识、第二设备的设备标识和第二主机的标识。
[0120] 参见图1至3所述的任一网络架构,在第二设备为第二GW、第二Spine或第二TOR的情况下,第二设备向第二PE发送通知报文,第二PE向第一设备发送该通知报文。
[0121] 参见图1至5所述的任一网络架构,在第二设备为第二PE或第二合设设备的情况下,第二PE或第二合设设备向第一设备发送该通知报文。
[0122] 可选的,在上述图1至5所示的任一网络架构中,第二PE或第二合设设备向第一设备发送通知报文的过程可以为:
[0123] 第二PE或第二合设设备向广域网中的各PE发送该通知报文。在第一设备为第一PE或第一合设设备时,第一设备接收到该通知报文,第一设备判断自身是否保存有该通知报
文包括的该虚拟局域网的网络标识,如果判断出保存有该通知报文包括的该虚拟局域网的
网络标识,则执行如下步骤105。如果判断出没有保存该通知报文包括的该虚拟局域网的网
络标识,则丢弃该通知报文。对于广域网中的其他PE,其他PE在判断出没有保存该通知报文
包括的该虚拟局域网的网络标识,则丢弃该通知报文并结束操作。
[0124] 在上述图2所示的第一种网络架构中,在第一设备为第一GW、第一Spine或第一TOR等情况下,第二PE向第一设备发送通知报文的过程可以为:
[0125] 第二PE向广域网中的PE发送该通知报文。PE接收到该通知报文,向与其相连的物理局域网发送该通知报文。位于该物理局域网中的第一设备接收该通知报文,判断自身是
否保存有该通知报文包括的该虚拟局域网的网络标识,如果判断出保存有该通知报文包括
的该虚拟局域网的网络标识,则执行如下步骤105。如果判断出没有保存该通知报文包括的
该虚拟局域网的网络标识,则丢弃该通知报文并结束操作。
[0126] 步骤105:第一设备接收该通知报文,将该通知报文包括的第一标识、第二设备的设备标识和该虚拟局域网的网络标识对应保存在第二映射关系表中,以及将第二主机的标
识和第二设备的设备标识对应保存在第二路由信息表中。
[0127] 在第一标识用于标识第二设备的情况下,第一设备将该通知报文包括的第一标识、第二设备的设备标识和该虚拟局域网的网络标识对应保存在第二映射关系表中。在第
一标识用于标识第二设备和第二网络设备的情况下,第一设备将该通知报文包括第一标
识、该虚拟局域网的网络标识、第一设备的设备标识和第二主机的标识对应保存在第二映
射关系表中。
[0128] 第一设备在接收到该通知报文后,如果第一设备与第二设备之间还没有建立SRv6隧道,则第一设备根据第二设备的设备标识,建立第一设备与第二设备之间的SRv6隧道,且
该SRv6隧道的传输方向为从第一设备传输至第二设备的方向,这样在执行本完步骤就连通
了第一设备与第二网络设备之间的通信路径。在第一设备与第二设备之间存在传输方向为
从第一设备传输至第二设备的SRv6隧道,这样在执行完本步骤也连通了第一设备与第二网
络设备之间的通信路径。
[0129] 以上步骤101至105的流程,以第二主机为例进行说明,第二物理局域网中的其他主机在启动上线时或者该其他主机从一个网络设备迁移到另一个网络设备时,同第二主机
一样也执行上述步骤。在图2所示的第一种网络架构或图3所示的第二种网络架构中,第一
物理局域网中的主机在启动上线时或从一个网络设备迁移到另一个网络设备时,同第二主
机一样也执行上述步骤。
[0130] 参见图7,本申请实施例提供了一种发送报文的方法,该方法应用于图1至5所示的任一网络架构中,该方法在连通第一设备与第二网络设备之间的通信路径后,例如,采用图
6所示的方法连通第一设备与第二网络设备之间的通信路径后,第一主机可以向第二主机
发送报文,该报文可以为数据面的报文。该方法包括:
[0131] 步骤201:第一网络设备接收第一主机发送的原始报文,该原始报文包括第二主机的标识,向第一设备发送第一报文,第一报文包括第一主机属于的虚拟局域网的网络标识
和该原始报文。
[0132] 可选的,参见图8,在应用于第一种网络架构中且第一设备为第一GW、第一Spine或第一TOR的情况下,或者,参见图9至图11,在应用于第二种网络架构、第三种网络架构或第
四种网络架构的情况下,第一网络设备接收第一主机发送的原始报文,原始报文包括以太
网(ether net,ETH)报文头和净何数据(Payload),根据该原始报文包括的第一主机的标
识,从第一主机的标识与虚拟局域网络的网络标识的对应关系中获取第一主机属于的虚拟
局域网的网络标识。根据该虚拟局域网的网络标识,确定第一网络设备与第一设备之间的
与该虚拟局域网相对应的第二NVO3隧道。在原始报文中添加第二NVO3隧道对应的报文头
(如图8至11所示的NVO31),得到第一报文,该报文头包括该虚拟局域网的网络标识(如图8
至11所示的VNI)。通过第二NVO3隧道向第一设备发送第一报文。
[0133] 可选的,参见图12,在应用第一种网络架构中以及在第一设备为第一PE的情况下,第二NVO3隧道包括第一网络设备与第一GW之间的第一段NVO3隧道和第一GW与第一设备之
间的第二段NVO3隧道,第一网络设备根据该虚拟局域网的网络标识,确定第一网络设备与
第一GW之间的与该虚拟局域网相对应的第一段NVO3隧道。在原始报文中添加第一段NVO3隧
道对应的报文头(如图12所示的NVO311),得到第三报文,该报文头包括该虚拟局域网的网
络标识(如图12所示的VNI),通过第一段NVO3隧道向第一GW发送第三报文。第一GW接收第三
报文,从第三报文中读取该虚拟局域网的网络标识,从第三报文中去除第一段NVO3隧道对
应的报文头得到原始报文,根据该虚拟局域网的网络标识,确定第一GW与第一设备之间的
与该虚拟局域网相对应的第二段NVO3隧道,在原始报文中添加第二段NVO3隧道对应的报文
头(如图12所示的NVO312),得到第一报文,该报文头包括该虚拟局域网的网络标识,通过第
二段NVO3隧道向第一设备发送第一报文。
[0134] 可选的,在第二NVO3隧道对应的协议类型为VXLAN‑GPE或GENEVE的情况下,第一网络设备还获取第二元数据,第二元数据可以是原始报文的附加信息或第一网络设备的设备
信息等至少一个。相应的,第一报文中的第二NVO3隧道对应的报文头中还包括第二元数据。
[0135] 可选的,第二元数据包括应用的标识、用户组的标识(identity,ID)或随路操作管理和维护(in‑situ operations administration and maintenance,iOAM)等中的至少一
个。第二元数据除了包括上述列举的几种数据中的一种或多种,还可以包括其他种类的数
据,在此不再一一列举。
[0136] 可选的,在第二元数据可以是原始报文的附加信息的情况下,第一网络设备接收第一主机发送的第二元数据。
[0137] 可选的,在第二NVO3隧道对应的协议类型为VXLAN‑GPE的情况下,第二NVO3隧道对应的报文头包括VXLAN通用扩展协议扩展报头(VXLAN‑GPE Shim Header)字段,该VXLAN‑
GPE Shim Header字段包括第二元数据。
[0138] 可选的,参见图13,VXLAN‑GPE Shim  Header字段包括类型字段,长度字段(Length)和内容字段(Protocol Specific Fields),类型字段包括两个子字段,其中一个
为类型(Type)子字段,另一个为下一协议报头(Next Protocol)子字段。其中,内容字段包
括第二元数据,该长度字段包括该内容字段中的第二元数据的长度。该类型字段包括该内
容字段的数据类型,且该类型字段中的两个子字段包括的内容组合在一起得到该数据类
型。
[0139] 可选的,在第二NVO3隧道对应的协议类型为GENEVE的情况下,第二NVO3隧道对应的报文头包括通用网络虚拟化封装报头(GENEVE Header)字段,该GENEVE Header字段包括
第二元数据。
[0140] 参见图14,GENEVE Header字段包括类型字段,长度字段(Length)和内容字段(Variable Option Data),类型字段包括两个子字段,其中一个为可选类型(Option 
Class)子字段,另一个为类型(Type)子字段。其中,内容字段包括第二元数据,该长度字段
包括该内容字段中的第二元数据的长度,该类型字段包括该内容字段的数据类型。该类型
字段包括该内容字段的数据类型,且该类型字段中的两个子字段包括的内容组合在一起得
到该数据类型。
[0141] 步骤202:第一设备接收第一报文,根据第二主机的标识和该虚拟局域网的网络标识获取第一标识,将第一报文转换成SRv6报文,该SRv6报文包括第一标识和该原始报文。
[0142] 在本步骤中,可以通过如下2021至2023的操作来完成,该2021至2023的操作可以为:
[0143] 2021:第一设备根据第二主机的标识和该虚拟局域网的网络标识,获取第二设备的设备标识。
[0144] 第一设备接收第一报文,从第一报文中的第二NVO3隧道对应的报文头获取该虚拟局域网的网络标识,从第一报文中去除第二NVO3隧道对应的报文头,得到原始报文。从原始
报文中读取第二主机的标识,根据第二主机的标识,从第二路由信息表中获取第二设备的
设备标识。
[0145] 第一设备在获取到第二设备的设备标识后,根据第二设备的设备标识确定出第一设备与第二设备之间的SRv6隧道。
[0146] 2022:第一设备根据该虚拟局域网的网络标识和第二设备的设备标识,从第二映射关系表中获取第一标识。
[0147] 可选的,在第二映射关系表用于保存网络标识、设备标识、第二主机的标识与第一标识的对应关系
[0148] 第一设备根据该虚拟局域网的网络标识、第二设备的设备标识和第二主机的标识,从第二映射关系表中获取第一标识。
[0149] 2023:第一设备在原始报文中添加SRv6报文头,得到SRv6报文,该SRv6报文头包括第一标识。
[0150] 参见图15所示的SRv6报文头,又可称为段路由报头,该SRv6报文头包括如下字段,分别为下一层头部标识(Next Header)、段路由头部长度(header extended length,Hdr 
Ext Len)、路由类型(RoutingType)、剩余的SRv6端个数(Segment Left)、最后一个段实体
序列号(Last Entry)、段路由头部标识符(Flags)、SRv6报文的类型标识(Tag)、段列表
(Segment List)和可选择的类型长度值(optional type length value,OTLV)等。Segment 
List中包括n+1个SID,分别为第0个SID至第n个SID,n为大于0的整数。可选的,每个SID可以
包括128比特长度的互联网协议第6版(internet protocol version 6,IPV6)地址
(128bits IPv6 address)。
[0151] 可选的,SRv6报文头中的Segment List字段包括第一标识。第一标识可以为一个SID,第一标识可以为Segment List字段中的最后一个SID,即第0个SID。
[0152] 参见图15,Segment List字段包括n+1个子字段,分别为Segment List[0]、Segment List[1]、……、Segment List[n],第0个SID至第n个SID分别位于Segment List
[0]至Segment List[n]中。
[0153] 可选的,第一设备还可以获取第一元数据,相应的,该SRv6报文头还可以包括第一元数据。
[0154] 可选的,SRv6报文头中的IPv6逐跳选项报头包括第一元数据,或者,SRv6报文头中的目的选项报头包括第一元数据,或者,SRv6报文头中的段路由报头包括第一元数据。
[0155] 可选的,IPv6逐跳选项报头包括TLV字段、目的选项报头包括TLV字段、段路由报头均包括TLV字段。可以使用IPv6逐跳选项报头中的TLV字段,目的选项报头的TLV字段或者段
路由报头的TLV字段包括第一元数据。
[0156] 可选的,对于上述任一个TLV字段,该TLV字段包括类型字段(type)、长度字段(length)和内容字段(value),内容字段包括第一元数据,该类型字段包括该内容字段的数
据类型,该长度字段包括该内容字段中的第一元数据的长度。
[0157] 可选的,第一设备可以获取自己的设备信息作为第一元数据。和/或,在第一报文还包括第二元数据的情况下,第一设备根据第二NVO3隧道对应的协议类型和第一报文中的
包括第二元数据的字段类型,对第二元数据进行格式转换,得到第一元数据。
[0158] 可选的,对第二元数据的进行格式转换的过程可以为:
[0159] 在第一报文中,第二NVO3隧道对应的报文头包括类型字段、长度字段和内容字段。第一设备获取第二NVO3隧道对应的协议类型,以及获取该内容字段中包括的第二元数据,
该类型字段包括的该内容字段的数据类型和该长度字段包括的该内容字段中的第二元数
据的长度。
[0160] 根据第二NVO3隧道对应的该内容字段的数据类型和该协议类型,从NVO3隧道对应的协议类型、NVO3隧道对应的内容字段的数据类型与SRv6隧道对应的内容字段的数据类型
的对应关系中,获取该SRv6隧道对应的内容字段的数据类型,设置该SRv6报文头中的类型
字段包括该SRv6隧道对应的内容字段的数据类型。
[0161] 根据第二NVO3隧道对应的协议类型,从NVO3隧道对应的协议类型、内容字段的长度转换规则与内容字段的格式转换规则的对应关系中,获取对应的内容字段的长度转换规
则和格式转换规则。该长度转换规则用于描述在第二NVO3隧道对应的报文头中第二元数据
的长度与在SRv6报文头中第一元数据的长度之间的转换关系,该格式转换规则用于描述在
第二NVO3隧道对应的报文头中第二元数据的格式与在SRv6报文头中第一元数据的格式之
间的转换关系。根据该长度转换规则和第二元数据的长度,获取第一元数据的长度,设置该
SRv6报文头中的长度字段包括第一元数据的长度。根据该格式转换规则对第二元数据的格
式进行转换,得到第一元数据,设置该SRv6报文头中的内容字段包括第一元数据。
[0162] 其中,在SRv6报文头中的长度字段包括的第一元数据的长度以字节为单位。
[0163] 在第二NVO3隧道对应的协议类型为VXLAN‑GPE的情况下,在第二NVO3隧道对应的报文头中,长度字段包括的第二元数据的长度也是以字节为单位,但该长度不包括内容字
段的前四个字节的长度。所以该长度转换规则为L1=L2‑4,其中L2为该SRv6报文头中的长
度字段包括的第一元数据的长度。L1为在第二NVO3隧道对应的报文头中的长度字段包括的
第二元数据的长度。
[0164] 在第二NVO3隧道对应的协议类型为GENEVE的情况下,在第二NVO3隧道对应的报文头中的长度字段包括的第二元数据的长度以四个字节为单位,且该长度不包括内容字段的
前四个字节的长度。所以该长度转换规则为L3=(L2‑4)/4,其中L2为该SRv6报文头中的长
度字段包括第一元数据的长度。L3为在第二NVO3隧道对应的报文头中的长度字段包括的第
二元数据的长度。
[0165] 步骤203:第一设备通过第一设备与第二设备之间的SRv6隧道向第一设备发送该SRv6报文。
[0166] 可选的,在SRv6隧道中向第一设备传输该SRv6报文的过程中,对于该SRv6报文经过的网络设备,该网络设备接收到该SRv6报文,可以在该SRv6报文的SRv6报文头中添加元
数据,添加的元数据可以为该网络设备的设备信息,然后再转发该SRv6报文。
[0167] 需要说明的是,在图8所示的第一种网络架构中或在图9所示的第二种网络架构中,第一设备可以为第一合设设备、第一GW、第一Spine或第一TOR,也就是SRv6隧道的入口
设备可以为第一合设设备、第一GW、第一Spine或第一TOR,这样第二NVO3隧道包括一段NVO3
隧道,因此这样只需要对第一报文进行一次报文格式的转换,然后就可以在通过SRv6隧道
发送转换后的SRv6报文。这样减小了报文格式转换的次数,提高了发送报文的效率。
[0168] 步骤204:第二设备接收该SRv6报文,根据该SRv6报文包括的第一标识的指示,转换该SRv6报文的格式,以得到第二报文,第二报文包括该虚拟局域网的网络标识和原始报
文。
[0169] 在本步骤中,可以通过如下2041至2042的操作来完成,该2041至2042的操作可以为:
[0170] 2041:第二设备从该SRv6报文中获取第一标识,根据第一标识从第一映射关系表中获取对应的虚拟局域网的网络标识和第一NVO3隧道对应的封装类型。
[0171] 第二设备从该SRv6报文中的SRv6报文头中获取第一标识,在第一标识用于标识第二设备的情况下,从该SRv6报文中的原始报文中读取第二主机的标识,根据第二主机的标
识,从第一路由信息表中获取第二主机接入的第二网络设备的设备标识。
[0172] 在第一标识用于标识第二设备和第二网络设备的情况下,根据第一标识从第一映射关系表中获取对应的虚拟局域网的网络标识、第一NVO3隧道对应的封装类型和第二网络
设备的设备标识。
[0173] 2042:第二设备根据该虚拟局域网的网络标识和该封装类型对该SRv6报文的格式进行转换,以得到第二报文。
[0174] 在本步骤中,参见图8‑12,在第二设备为第二GW、第二Spine或第二TOR的情况下,或者,在第二设备为第二合设设备的情况下,第一NVO3隧道包括一段隧道,从该SRv6报文中
去除SRv6报文头,得到原始报文,根据该封装类型,在该原始报文中添加第一NVO3隧道对应
的报文头(如图8‑12所示的NVO32),该报文头包括该虚拟局域网的网络标识(如图8‑12所示
的VNI),以得到第二报文。
[0175] 参见图16,在第二设备为第二PE的情况下,第一NVO3隧道包括第二设备与第二GW之间的第三段NVO3隧道和第二GW与第二网络设备之间的第四段NVO3隧道,第一NVO3隧道对
应的封装类型为第三段NVO3隧道对应的封装类型。根据第三段NVO3隧道对应的封装类型,
在该原始报文中添加第三段NVO3隧道对应的报文头(如图16所示的NVO321),该报文头包括
该虚拟局域网的网络标识(如图16所示的VNI),以得到第二报文。
[0176] 可选的,参见图8至12,以及参见图16,第二设备还可以在第一NVO3隧道对应的NVO3报文头的外层添加IP报文头,该IP报文头可以包括第二网络设备的标识。也就是说,第
二报文包括IP报文头,第一NVO3隧道对应的报文头和原始报文。
[0177] 可选的,在第一报文还包括第一元数据,以及第一NVO3隧道对应的协议类型为VXLAN‑GPE封装类型或GENEVE封装类型的情况下,第二设备根据第一NVO3隧道对应的协议
类型和该SRv6报文中的包括第一元数据的字段类型,对第一元数据进行格式转换,得到第
三元数据。相应的,第二报文还包括第三元数据。
[0178] 可选的,第一NVO3隧道对应的报文头还包括第三元数据。
[0179] 可选的,对第一元数据的进行格式转换的过程可以为:
[0180] SRv6报文头包括类型字段、长度字段和内容字段。第二设备获取该内容字段中包括第一元数据,该类型字段包括的该内容字段的数据类型和该长度字段包括的该内容字段
中的第一元数据的长度。以及,第二设备获取第一NVO3隧道对应的协议类型。
[0181] 根据该内容字段的数据类型和该协议类型,从NVO3隧道对应的协议类型、NVO3隧道对应的内容字段的数据类型与SRv6隧道对应的内容字段的数据类型的对应关系中,获取
该第一NVO3隧道对应的内容字段的数据类型,设置第一NVO3隧道对应的报文头中的类型字
段包括第一NVO3隧道对应的内容字段的数据类型。
[0182] 根据第一NVO3隧道对应的协议类型,从NVO3隧道对应的协议类型、内容字段的长度转换规则与内容字段的格式转换规则的对应关系中,获取对应的内容字段的长度转换规
则和格式转换规则。根据该长度转换规则和第一元数据的长度,获取第三元数据的长度,设
置第一NVO3隧道对应的报文头中的长度字段包括第三元数据的长度。根据该格式转换规则
对第一元数据的格式进行转换,得到第三元数据,设置第一NVO3隧道对应的报文头中的内
容字段包括第三元数据。
[0183] 步骤205:第二设备通过第一NVO3隧道向第二主机发送第二报文。
[0184] 可选的,在第二设备为第二合设设备、第二GW、第二Spine或第二TOR的情况下,第二设备可以根据第二网络设备的设备标识和该虚拟局域网的网络标识,确定第二设备与第
二网络设备之间的该虚拟局域网相对应的第一NVO3隧道,通过第一NVO3隧道向第二网络设
备发送第二报文。第二网络设备接收第二报文,去除第二报文中的IP报文头和第一NVO3隧
道对应的报文头,得到原始报文,根据原始报文包括的第二主机的标识,向第二主机发送原
始报文。
[0185] 由于第一NVO3隧道包括一段隧道,这样在第二网络设备接收到第二报文之前,第二报文只经过一次报文格式的转换,减小了报文格式转换的次数,提高了传输第二报文的
效率。
[0186] 可选的,参见图16,在第二设备为第二PE的情况下,第一NVO3隧道包括第二设备与第二GW之间的第三段NVO3隧道和第二GW与第二网络设备之间的第四段NVO3隧道,第二网络
设备通过第三段NVO3隧道向第二GW发送第二报文。第二GW接收第二报文,从第二报文中读
取该虚拟局域网的网络标识和第二网络设备的设备标识,从第二报文中去除IP报文头和第
三段NVO3隧道对应的报文头得到原始报文;根据该虚拟局域网的网络标识,确定第二GW与
第二网络设备之间的与该虚拟局域网相对应的第四段NVO3隧道,在原始报文中添加第四段
NVO3隧道对应的报文头(如图16所示的NVO322),以及添加IP报文头,得到第四报文,第四段
NVO3隧道对应的报文头包括该虚拟局域网的网络标识,该IP报文头包括第二网络设备的设
备标识,通过第四段NVO3隧道向第二网络设备发送第四报文。第二网络设备接收第四报文,
去除第四报文中的IP报文头和第四段NVO3隧道对应的报文头,得到原始报文,根据原始报
文包括的第二主机的标识,向第二主机发送原始报文。
[0187] 在本申请实施例中,第一网络在接收到第一报文,根据第一报文包括的第二主机的标识和第二主机属于的虚拟局域网的网络标识,获取第一标识,第一标识用于标识第二
设备。在SRv6网络中用于标识第二设备的第一标识长度较长,除了可以标识第二设备还可
以标识目前出现的各虚拟局域网,通过第一标识可以标识第一主机和第二主机属于的虚拟
局域网,第一标识包括指示标识,该指示标识用于指示第二设备将通过该SRv6隧道转发的
报文格式转换成通过该虚拟局域网对应的第一NVO3隧道转发的报文格式,因此将第一报文
转换成SRv6报文,该SRv6报文包括第一标识和第一报文中的原始报文,通过与第二设备之
间的SRv6隧道发送该SRv6报文。这样第二设备在接收到该SRv6报文后,根据第一标识可以
获取到该虚拟局域网的网络标识,以及确定出第二设备与第二网络设备之间的第一NVO3隧
道,以及对第一报文进行转换得到第二报文,第二报文包括该虚拟局域网的网络标识,通过
第一NVO3隧道向第二主机发送第二报文。其中,由于第一标识可以标识目前的所有虚拟局
域网,这样第二设备在接收到第二报文时,通过第一标识可以映射出不同的虚拟局域网,从
而保证第二设备能够成功地确定出第一NVO3隧道,并向第二主机发送第二报文,这样对于
任一虚拟局域网,该虚拟局域网中的不在同一物理局域网的主机之间均可以实现通信。
[0188] 参见图17,本申请实施例提供了一种发送报文的装置300,所述装置300可以部署在上述任一实施例中的第一设备上,例如可以部署在如图6所示实施例中的第一设备上或
部署在如图7所示实施例中的第一设备上,包括:
[0189] 接收单元301,用于接收第一报文,第一报文包括虚拟局域网的网络标识和原始报文,原始报文是第一主机发送给第二主机的报文,虚拟局域网包括第一主机和第二主机;
[0190] 处理单元302,用于根据第二主机的标识和该网络标识获取第一标识,第一标识用于标识第二设备,所述装置300与第二设备之间存在SRv6隧道,所述装置300是SRv6隧道的
入口设备,第二设备与第二主机接入的网络设备之间存在第一NVO3隧道,第一标识包括指
示标识,该指示标识用于指示第二设备将通过SRv6隧道转发的报文格式转换成通过第一
NVO3隧道转发的报文格式;
[0191] 发送单元303,用于通过SRv6隧道向第二设备发送SRv6报文,SRv6报文包括第一标识和原始报文。
[0192] 可选的,处理单元302获取第一标识的详细实现过程,可以参见图7所示实施例的步骤202中的第一设备获取第一标识的相关内容。
[0193] 可选的,处理单元302,用于:
[0194] 根据第二主机的标识和该网络标识获取第二设备的设备标识;
[0195] 根据该网络标识和该设备标识,从映射关系表中获取第一标识,映射关系表用于保存网络标识、设备标识与第一标识的对应关系。
[0196] 可选的,处理单元302从该映射关系表中获取第一标识的详细实现过程,可以参见图7所示实施例中的步骤2021‑2023中的第一设备获取第一标识的相关内容。
[0197] 可选的,第一标识还用于标识第二主机接入的网络设备;处理单元302,用于根据第二主机的标识和该网络标识获取第二设备的设备标识,根据该网络标识、该设备标识和
第二主机的标识,从该映射关系表中获取第一标识,映射关系表用于保存网络标识、设备标
识、主机的标识与第一标识的对应关系。
[0198] 可选的,处理单元302,还用于;
[0199] 获取第一元数据,第一元数据包括原始报文的附加信息或原始报文经过的网络设备的设备信息中的至少一者。
[0200] 可选铁,第一报文还包括第二元数据,处理单元302,用于:
[0201] 根据第二NVO3隧道对应的协议类型和第一报文中的包括第二元数据的字段类型,对第二元数据进行格式转换,得到第一元数据,第二NVO3隧道是所述装置300与第一主机接
入的网络设备之间的隧道。
[0202] 可选的,处理单元302对第二元数据进行格式转换的详细实现过程,可以参见图7所示实施例中的步骤302中的第一设备对第二元数据进行格式转换的相关内容。
[0203] 可选的,SRv6报文的段列表Segment List字段包括第一标识。
[0204] 可选的,第一标识为段标识符SID。
[0205] 可选的,接收单元301,还用于接收第二设备发送的通知报文,通知报文包括第一标识、该网络标识和该设备标识;
[0206] 处理单元302,还用于将第一标识、该网络标识和该设备标识之间的对应关系保存在映射关系表中。
[0207] 可选的,处理单元302向映射关系表保存该对应关系的详细实现过程,可以参见图6所示实施例中的步骤105中的第一设备执行的相关内容。
[0208] 可选的,第二设备为与第二主机之间存在连接的边缘路由器PE、网关GW、合设设备、骨干交换机Spine或叶子交换机TOR,合设设备包括PE具有的功能和GW具有的功能。
[0209] 可选的,所述装置300为与第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,合设设备包括PE具有的功能和GW具有的功能。
[0210] 在本申请实施例中。接收单元接收第一报文,处理单元根据第二主机的标识和该网络标识获取第一标识,由于第一标识用于标识第二设备,以及用于指示第二设备将通过
该SRv6隧道转发的报文格式转换成通过虚拟局域网的第一NVO3隧道转发的报文格式,该虚
拟局域网是第一标识所标识的第一主机和第二主机属于的虚拟局域网;又由于发送单元发
送给第二设备的SRv6报文包括第一标识,这样第二设备根据SRv6报文中的第一标识可以将
SRv6报文的格式转换成通过第一NVO3隧道转发的报文格式,以得到第一NVO3隧道对应的第
二报文。第一NVO3隧道是该虚拟局域网对应的NVO3隧道,第二设备在该虚拟局域网对应的
第一NVO3隧道上向第二主机发送第二报文,这样位于同一虚拟局域网的第一主机和第二主
机虽然位于不同的物理局域网中,但可以正常通信。从而保证位于同一虚拟局域网内但在
不同物理局域网的主机之间能够正常通信。另外,由于处理单元根据第二NVO3隧道对应的
协议类型和第一报文中的包括第二元数据的字段类型,对第二元数据进行格式转换,得到
第一元数据,这样可以在SRv6报文中添加第一元数据,避免元数据的丢失。
[0211] 参见图18,本申请实施例提供了一种发送报文的装置400,所述装置400可以部署在上述任一实施例中的第二设备上,例如可以部署在如图6所示实施例中的第二设备上或
部署在如图7所示实施例中的第二设备上,包括:
[0212] 接收单元401,用于通过与第一设备之间的SRv6隧道接收SRv6报文,第一设备是该SRv6隧道的入口设备,该SRv6报文包括第一标识和原始报文,原始报文是第一主机发送给
第二主机的报文,第一标识用于标识所述装置400,所述装置400与第二主机接入的网络设
备之间存在第一NVO3隧道,第一标识包括指示标识;
[0213] 处理单元402,用于根据第一标识将SRv6报文转换成第二报文,第二报文包括虚拟局域网的网络标识和原始报文,虚拟局域网包括第一主机和第二主机;
[0214] 发送单元403,用于通过第一NVO3隧道向第二主机发送第二报文。
[0215] 可选的,处理单元402将SRv6报文转换为第二报文的详细实现过程,可以参见图7所示实施例的步骤204中的第二设备转换SRv6报文的相关内容。
[0216] 可选的,处理单元402,用于:
[0217] 根据第一标识,从映射关系表中获取虚拟局域网的网络标识和第一NVO3隧道的封装类型,映射关系表用于保存第一标识、网络标识与封装类型的对应关系;
[0218] 根据虚拟局域网的网络标识和该封装类型对SRv6报文的格式进行转换,以得到第二报文。
[0219] 可选的,处理单元402将映射关系表中获取网络标识和封装类型,以转换SRv6报文的详细实现过程,可以参见图7所示实施例的步骤2041至242中的第二设备执行的相关内
容。
[0220] 可选的,SRv6报文还包括第一元数据,第一元数据包括原始报文的附加信息或原始报文经过的网络设备的设备信息中的至少一者,第二报文还包括第三元数据;
[0221] 处理单元402,还用于根据第一NVO3隧道对应的协议类型和SRv6报文中的包括第一元数据的字段类型,对第一元数据进行格式转换,得到第三元数据。
[0222] 可选的,处理单元402对第一元数据进行格式转换的详细实现过程,可以参见图7所示实施例的步骤204中的第二设备对第一元数据进行格式转换的相关内容。
[0223] 可选的,第一标识还用于标识与第二主机接入的网络设备,第二报文还包括第二主机接入的网络设备的设备标识。
[0224] 可选的,第一标识为SID。
[0225] 可选的,发送单元402,还用于向第一设备发送通知报文,通知报文包括第一标识、所述装置400的设备标识和虚拟局域网的网络标识。
[0226] 可选的,发送单元402发送通知报文的详细实现过程,可以参见图6所示实施例中的步骤103和104中的第二设备发送通知报文的详细实现过程。
[0227] 可选的,所述装置400为与第二主机之间存在连接的PE、GW、合设设备、Spine或TOR,该合设设备包括该PE具有的功能和该GW具有的功能。
[0228] 可选的,第一设备为与第一主机之间存在连接的PE、GW、合设设备、Spine或TOR,合设设备包括该PE具有的功能和该GW具有的功能。
[0229] 在本申请实施例中,接收单元通过与第一设备之间的SRv6隧道接收SRv6报文,该SRv6报文包括第一标识和原始报文。由于第一标识用于标识所述装置400,用于标识所述装
置400的第一标识长度较长,还可以标识第一主机和第二主机属于虚拟局域网,从而该第一
标识可以用于指示所述装置400将通过该SRv6隧道转发的报文格式转换成通过该虚拟局域
网对应的第一NVO3隧道转发的报文格式,这样处理单元根据SRv6报文中的第一标识可以将
SRv6报文的格式转换成通过第一NVO3隧道转发的报文格式,以得到第一NVO3隧道对应的第
二报文。第一NVO3隧道是该虚拟局域网对应的NVO3隧道,发送单元在该虚拟局域网对应的
第一NVO3隧道上向第二主机发送第二报文,位于同一虚拟局域网的第一主机和第二主机虽
然位于不同的物理局域网中,但可以正常通信。从而保证位于同一虚拟局域网内但在不同
物理局域网的主机之间能够正常通信。另外,由于处理单元根据第一NVO3隧道对应的协议
类型和SRv6报文中的包括第一元数据的字段类型,对第一元数据进行格式转换,得到第三
元数据,这样可以在第二报文中添加第三元数据,避免元数据的丢失。
[0230] 参见图19,本申请实施例提供了一种发送报文的装置500示意图。该装置500可以是上述任一实施例中的第一设备,例如可以是如图6所示实施例中的第一设备或在如图7所
示实施例中的第一设备。该装置500包括至少一个处理器501,总线系统502,存储器503以及
至少一个收发器504。
[0231] 该装置500是一种硬件结构的装置,可以用于实现图17所述的装置300中的功能模块。例如,本领域技术人员可以想到图17所示的装置300中的处理单元302可以通过该至少
一个处理器501调用存储器503中的代码来实现,图17所示的装置300中的接收单元301和发
送单元303可以通过该收发器504来实现。
[0232] 可选的,该装置500还可用于实现上述任一实施例中采集分析设备的功能。
[0233] 可选的,上述处理器501可以是一个通用中央处理器(central processing unit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application‑
specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集
成电路。
[0234] 上述总线系统502可包括一通路,在上述组件之间传送信息。
[0235] 上述收发器504,用于与其他设备或通信网络通信。
[0236] 上述存储器503可以是只读存储器(read‑only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存
储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器
(electrically erasable programmable read‑only memory,EEPROM)、只读光盘(compact 
disc read‑only memory,CD‑ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光
碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或
存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但
不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成
在一起。
[0237] 其中,存储器503用于存储执行本申请方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,从而实现本专利方法中的
功能。
[0238] 在具体实现中,作为一种实施例,处理器501可以包括一个或多个CPU,例如图19中的CPU0和CPU1。
[0239] 在具体实现中,作为一种实施例,该装置500可以包括多个处理器,例如图19中的处理器501和处理器507。这些处理器中的每一个可以是一个单核(single‑CPU)处理器,也
可以是一个多核(multi‑CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用
于处理数据(例如计算机程序指令)的处理核。
[0240] 参见图20,本申请实施例提供了一种发送报文的装置600示意图。该装置600可以是上述任一实施例中的第二设备,例如可以是如图6所示实施例中的第二设备或在如图7所
示实施例中的第二设备。该装置600包括至少一个处理器601,总线系统602,存储器603以及
至少一个收发器604。
[0241] 该装置600是一种硬件结构的装置,可以用于实现图18所述的装置400中的功能模块。例如,本领域技术人员可以想到图18所示的装置400中的处理单元402可以通过该至少
一个处理器601调用存储器603中的代码来实现,图18所示的装置400中的接收单元401和发
送单元403可以通过该收发器604来实现。
[0242] 可选的,该装置600还可用于实现上述任一实施例中采集分析设备的功能。
[0243] 可选的,上述处理器601可以是一个通用中央处理器(central processing unit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application‑
specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集
成电路。
[0244] 上述总线系统602可包括一通路,在上述组件之间传送信息。
[0245] 上述收发器604,用于与其他设备或通信网络通信。
[0246] 上述存储器603可以是只读存储器(read‑only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存
储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器
(electrically erasable programmable read‑only memory,EEPROM)、只读光盘(compact 
disc read‑only memory,CD‑ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光
碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或
存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但
不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成
在一起。
[0247] 其中,存储器603用于存储执行本申请方案的应用程序代码,并由处理器601来控制执行。处理器601用于执行存储器603中存储的应用程序代码,从而实现本专利方法中的
功能。
[0248] 在具体实现中,作为一种实施例,处理器601可以包括一个或多个CPU,例如图20中的CPU0和CPU1。
[0249] 在具体实现中,作为一种实施例,该装置600可以包括多个处理器,例如图20中的处理器601和处理器607。这些处理器中的每一个可以是一个单核(single‑CPU)处理器,也
可以是一个多核(multi‑CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用
于处理数据(例如计算机程序指令)的处理核。
[0250] 参见图21,本申请实施例提供了一种发送报文的系统700,所述系统700包括:如图17所示的装置300和如图18所述的装置400,或者,所述系统700包括:如图19所述的装置500
和如图20所述的装置600。
[0251] 可选的,参见图21,如图17所述的装置300或如图19所述的装置500可以为第一设备701,如图19所述的装置400或如图20所述的装置600可以为第二设备702。例如如图17所
述的装置300或如图19所述的装置500可以是如图6所示实施例中的第一设备或在如图7所
示实施例中的第一设备,如图19所述的装置400或如图20所述的装置600可以是如图6所示
实施例中的第二设备或在如图7所示实施例中的第二设备。
[0252] 可选的,该系统还可以包括第一主机、第二主机、第一主机接入的网络设备或第二主机接入的网络设备中的至少一个。
[0253] 本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读
存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0254] 以上所述仅为本申请一个实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。