报文转发方法、装置及计算机可读存储介质与流程

文档序号:16672044发布日期:2019-01-18 23:38阅读:138来源:国知局
报文转发方法、装置及计算机可读存储介质与流程

本发明涉及报文处理领域,尤其涉及一种报文转发方法、装置及计算机可读存储介质。



背景技术:

目前,网络通信设备传输的报文包括本地网卡硬件eth-mac地址、网际协议ip地址、用户数据报协议udp、保留字段、报文有效载荷等,在现有报文封装头部载荷中包括各项路由明细如源mac地址、ip地址等过多造成传输效率降低的冗余信息,对于一些带宽资源有限的客户,虽然采取优化虚拟可扩展局域网vxlan隧道等方式可提升整体报文传输效率,然而单个报文对应有效资源并未得到改善,即还是出现报文封装头部载荷过大,带宽利用率不够合理,造成网络通信设备传输报文效率降低的技术问题。



技术实现要素:

本发明的主要第二在于提供一种报文转发方法、装置及计算机可读存储介质,旨在解决现有报文封装头部载荷过大,带宽利用率不够合理,造成网络通信设备传输报文效率降低的技术问题。

为实现上述第二,本发明提供一种报文转发方法,所述报文转发方法包括:

当检测到待转发报文时,本地第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道;

第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

获取第二节点的第二路由明细,并获取所述第二路由明细与第二节点远程标签池中第二标签的第二映射关系;

将待转发报文、第一标签和第二标签进行封装得到封装报文,通过vxlan隧道发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的所述封装报文给目标用户。

优选地,所述第二节点接收并解封装所述封装报文,并基于第一映射关系转发解封装后的所述封装报文给目标用户步骤包括:

所述第二节点接收并解封装所述封装报文,获取第二标签、第一标签;

基于第二标签、第一标签、第一映射关系与第二映射关系获取第二路由明细;

所述第二节点基于第二路由明细转发解封装后的所述封装报文给目标用户。

优选地,所述封装报文还包括虚拟可扩展局域网vxlan字段、增加字段,所述vxlan字段包括第一保留字段与第二保留字段、其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。

优选地,所述第一节点获取待转发报文对应的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射步骤之前包括:

本地对应第一用户通过第一节点获取第一路由明细;

所述第一用户获取第二路由明细,并获取第一路由明细与第二路由明细对应的路由条目,以供第一节点基于该路由条目转发待转发报文。

优选地,所述本地对应第一用户通过第一节点获取第一路由明细步骤之前包括:

判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据或者地址解析协议arp数据,其中,路由明细包括第一路由明细与第二路由明细。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层已知单播转发,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层组播转发;

当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;

广播或未知单播转发,所述第二标签为确定的预设第二标签。

此外,为实现上述第二,本发明还提供一种报文转发装置,所述报文转发装置包括:存储器、处理器,通信总线以及存储在所述存储器上的报文转发程序,

所述通信总线用于实现处理器与存储器间的通信连接;

所述处理器用于执行所述报文转发程序,以实现以下步骤:

当检测到待转发报文时,本地第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道;

第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

获取第二节点的第二路由明细,并获取所述第二路由明细与第二节点远程标签池中第二标签的第二映射关系;

将待转发报文、第一标签和第二标签进行封装得到封装报文,通过vxlan隧道发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的所述封装报文给目标用户。

优选地,所述第二节点接收并解封装所述封装报文,并基于第一映射关系转发解封装后的所述封装报文给目标用户步骤包括:

所述第二节点接收并解封装所述封装报文,获取第二标签、第一标签;

基于第二标签、第一标签、第一映射关系与第二映射关系获取第二路由明细;

所述第二节点基于第二路由明细转发解封装后的所述封装报文给目标用户。

优选地,所述封装报文还包括虚拟可扩展局域网vxlan字段、增加字段,所述vxlan字段包括第一保留字段与第二保留字段、其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。

优选地,所述第一节点获取待转发报文对应的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射步骤之前包括:

本地对应第一用户通过第一节点获取第一路由明细;

所述第一用户获取第二路由明细,并获取第一路由明细与第二路由明细对应的路由条目,以供第一节点基于该路由条目转发待转发报文。

优选地,所述本地对应第一用户通过第一节点获取第一路由明细步骤之前包括:

判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据或者地址解析协议arp数据,其中,路由明细包括第一路由明细与第二路由明细。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层已知单播转发,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层组播转发;

当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。

优选地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;

广播或未知单播转发,所述第二标签为确定的预设第二标签。

此外,为实现上述第二,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序可被一个或者一个以上的处理器执行以用于:

当检测到待转发报文时,本地第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道;

第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

获取第二节点的第二路由明细,并获取所述第二路由明细与第二节点远程标签池中第二标签的第二映射关系;

将待转发报文、第一标签和第二标签进行封装得到封装报文,通过vxlan隧道发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的所述封装报文给目标用户。

本发明通过第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;第一节点获取第二节点的第二路由明细,并根据第二路由明细获取第二节点远程标签池中关联的第二映射关系以及该第二映射关系所映射的第二标签;第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的报文给目标用户。由于本发明中,通过修改报文的内部格式,将报文中第一节点与第二节点对应的冗余的第一路由明细与第二路由明细用标签的概念代替并转发,并在转发后能够有效解封装对应的报文,因而能够有效提高了报文传输的效率,解决现有报文封装头部载荷过大,带宽利用率不够合理,造成网络通信设备传输报文效率降低的技术问题。

附图说明

图1为本发明报文转发方法第一实施例的流程示意图;

图2为本发明报文转发方法第二实施例的流程示意图;

图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图;

图4是本发明实施例报文转发的流程示意图;

图5是本发明实施例报文转发的流程示意图;

本发明第二的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种报文转发方法,在本发明报文转发方法的第一实施例中,参照图1,所述报文转发方法包括:

步骤s10,第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

其中,所述第一节点获取待转发报文对应本地的第一路由明细步骤之前包括:

当检测到待转发报文时,第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道。

目前,可利用虚拟可扩展局域网vxlan隧道传输报文,即通过一种网络协议将其它网络协议的报文封装后,在网络中传输,封装后的报文在网络中的传输路径,称为隧道,隧道是一种点对点连接,在隧道的两端需要对报文进行封装与解封装。当检测到待转发报文时,本地第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道,首先建立一个vxlan隧道的组网,第一节点与第二节点为evpn节点,evpn是基于边界网关协议bgp携带属性所协商的协议,在两个节点之间建立bgp-evpn邻居后,vxlan隧道已经建立,本申请中,待转发报文可是来源于挂载在本地第一节点的第一用户,其中,挂载在第一节点的用户可为多个,将第一用户的待转发报文经过封装后通过本地第一节点经由以太网evpn转发给远程的第二节点,远程的第二节点获取该封装的报文后,对封装的报文进行解封装,基于解封装后的报文得到第二用户的信息,并将该解封装后的报文发送给第二用户,其中,挂载在第二节点的用户也可为多个。

如图3所示,传统vxlan报文除包括本地网卡硬件eth-mac地址、网际协议ip地址、用户数据报协议udp、报文有效载荷等内容外,还包括保留字段内容,以满足不同报文需求,其中,本地网卡硬件eth-mac地址、网际协议ip地址、用户数据报协议udp是传输报文必须的数据,可提供转发的路径信息,在本申请中,重新设计报文结构,保留报文的本地网卡硬件eth-mac地址、网际协议ip地址、用户数据报协议udp、报文有效载荷内容,将保留字段的第一保留字段设计为第二标签,在保留字段的第二保留字段设计为option字段以作为组播扩展使用,其中,保留字段还包括vni标识信息,另外,如图4所示,在传统vxlan报文头后增加4字节做为第一标签使用。

步骤s20,第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

在转发待转发报文前,第一节点与挂载的第一用户进行通信以基于arp,获取第一用户对应的第一路由明细,第一路由明细包括mac地址,ip地址等信息,其中,根据报文转发的属性不同,该第一路由明细并不相同,用以具体实施例进行说明,当报文转发是二层转发时,该第一路由明细包括mac地址而不包括ip地址,当报文转发是三层转发时,该第一路由明细包括mac地址以及ip地址,第二路由明细与第一路由明细属性匹配相同,即是当第一路由明细包括mac地址,ip地址时,第二路由明细也包括mac地址,ip地址,另外,在转发待转发报文前,第一用户与第二用户进行通信或者第一节点与第二节点进行通信,因而能够获取第二用户对应的第二路由明细,从而第一节点获得封装报文需要的网络标识vni和隧道下一跳信息,另外,需要说明的是,第一节点设置第一标签池,该第一标签池可是存储空间,该第一标签池设置各个第一标签,该第一标签池中各个第一标签可是随机分配但对应唯一,在转发待转发报文之前,第一节点为第一节点对应的路由明细分配对应的第一标签,该第一标签可是随机分配的,该第一标签与路由明细的第一映射关系经由第一用户同步到第二用户,同时,第二节点设置第二标签池,该第二标签池设置各个第二标签,第二节点为第二节点对应的路由明细分配对应的第二标签,该第二标签可是随机分配的,在第二用户接收到第一节点同步过来的第一标签与第一映射关系时,该第二用户将获取的第二标签与第二路由明细的第二映射关系同步至第一用户,以供第一用户将第二映射关系与第二标签发送至第二节点,另外,需要说明的是,上述所有的同步过程也可是第一节点与第二节点进行的同步操作,而不一定是第一用户与第二用户进行同步操作。

其中,网络侧挂载的第一用户需要与第一节点进行通信,以实现第一节点基于对应的arp地址解析协议,获取第一用户对应的mac等第一路由明细。

步骤s30,第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的报文给目标用户。

当在本地端获取到第一标签和第二标签后,第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,本申请中报文格式如图所示的封装报文的格式,与现有的报文相比,封装报文中,在保留字段中增加了第一标签与option字段,其中,option字段用以区分为option字段作为组播扩展使用,在传统vxlan报文头后增加4字节做为第一标签使用,在该报文有效负载形式与之前的负载形式相同。在负载封装完成后,通过vxlan隧道发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的所述封装报文给目标用户。

在本发明中,通过通过第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;第一节点获取第二节点的第二路由明细,并根据第二路由明细获取第二节点远程标签池中关联的第二映射关系以及该第二映射关系所映射的第二标签;第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的报文给目标用户。由于本发明中,通过修改报文的内部格式,将报文中第一节点与第二节点对应的冗余的第一路由明细与第二路由明细用标签的概念代替并转发,并在转发后能够有效解封装对应的报文,因而能够有效提高了报文传输的效率,解决现有报文封装头部载荷过大,带宽利用率不够合理,造成网络通信设备传输报文效率降低的技术问题。

进一步地,在本发明报文转发方法的第一实施例的基础上,提供报文转发方法第二实施例,在第二实施例中,所述方法还包括:

若第一节点接收到第三节点发送的封装报文时,所述第一节点接收并解封装所述封装报文;

所述第一节点基于所述解封装的报文获取第三节点的第三映射关系以及该第三映射关系所映射的第三标签;

基于第三标签、第一标签、第一映射关系与第三映射关系获取第三路由明细,并基于第三路由明细转发所述解封装的报文给目标用户。

若第一节点是接收端,即若第一节点接收到第三节点发送的封装报文时,第一节点接收并解封装所述第三节点所发送的封装报文,即可获取所述封装报文的报文有效载荷以及第三标签,由于挂载在第一节点处的用户很多,因而在接收并解封对应报文后,第三节点获取第一映射关系与第一标签、第三映射关系与第三标签,以准确发送给对应的目的用户。

在本实施例中,通过若第一节点接收到第三节点发送的封装报文时、所述第一节点接收并解封装所述封装报文;所述第一节点基于所述解封装的报文获取第三节点的第三映射关系以及该第三映射关系所映射的第三标签;基于第三标签、第一标签、第一映射关系与第三映射关系获取第三路由明细,并基于第三路由明细转发所述解封装的报文给目标用户。因而能够准确将对应的报文发送至目的用户,提升了用户体验。

进一步地,在本发明报文转发方法的第一实施例的基础上,提供报文转发方法第三实施例,在第三实施例中,所述封装报文还包括第一保留字段、第二保留字段、增加字段,其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。

如图所示,所述封装报文保留字段包括第一保留字段、第二保留字段,第一保留字段可提供24位的转发标签字段,但是第二标签可只是占用1位的字段,第二保留字段可为8位的可选option字段,作为存放可识别二、三层报文,组播和广播报文的标识,增加字段包括第一标签,增加字段可是4位的字段,第一标签可只是占用一个字段,即与现有的报文比较,增加了增加字段存放第一标签,并在原有的第一保留字段存放第二标签,而不是存放字节数目更多的mac地址或者ip地址,因而节约了资源,使得报文转发速度更快。

在本实施例中,通过所述封装报文还包括第一保留字段、第二保留字段、增加字段,其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。由于有效介绍报文的字段构成,因而能够使得报文转发速度更快。

进一步地,在本发明报文转发方法的第一实施例的基础上,提供报文转发方法第四实施例,在第四实施例中,所述第一节点获取待转发报文对应本地的第一路由明细步骤之前包括:

判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层已知单播转发,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,标签池中的标签与物理mac地址、ip地址进行映射,当该待转发报文为二层单播转发时,标签池中的标签与物理mac地址进行映射即可,另外,可选option字段因二层转发的类型不同而不同。

在本实施例中,通过判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细,根据转发类型的不同而预置不同的映射,因而能够在二层转发与三层转发时均实现提升报文转发的速度。

进一步地,在本发明报文转发方法的第四实施例的基础上,提供报文转发方法第五实施例,在第五实施例中,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层组播转发;

当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。

所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;

当是广播或未知单播转发,所述第二标签为确定的预设第二标签。

当所述待转发报文不是三层转发时,判断该待转发报文为二层组播转发还是广播、未知单播转发,由于不是三层转发,因而标签与mac地址进行映射,当待转发报文为二层组播转发时,由于目标用户地址不确定,因而在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据,以供将报文组播至第二节点对应的所有用户,若待转发报文为二层转发是广播、未知单播转发时,所述第二标签为确定的预设第二标签,特别地,该第二标签可是全1的标签。

另外,待转发报文可是协议报文,当待转发报文为协议报文时,在第二保留字段可是用来标识转发的优先级顺序,用来确定协议报文的优先转发。本发明还实现协议的兼容,当报文保留字段首8位为0x08标识为普通报文场景,当报文保留字段首字段8位为0x88时,为本发明所用字段。

综上所述,本发明修改报文的内部格式,将报文中冗余的部分用label的概念代替并转发,在一定程度上提高了报文负载的效率,以128字节报文为例,普通报文冗余信息达到80字节,信息涵盖利用率只有37.5%,使用本发明转发报文冗余信息减少了28字节,使信息涵盖利用率达到59.3%,提高了用户的使用体验。

在本实施例中,通过当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。所述判断所述待转发报文是否为三层转发步骤之后包括:当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;当是广播或未知单播转发,所述第二标签为确定的预设第二标签。提升了用户体验。

本发明提供一种报文转发装置,该装置包括:

同步模块,用于第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

第一获取模块,用于第一节点获取第二节点的第二路由明细,并根据第二路由明细获取第二节点远程标签池中关联的第二映射关系以及该第二映射关系所映射的第二标签;

发送模块,用于第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的报文给目标用户。

进一步地,所述装置还包括:

接收模块,用于若第一节点接收到第三节点发送的封装报文时,所述第一节点接收并解封装所述封装报文;

第二获取模块,用于所述第一节点基于所述解封装的报文获取第三节点的第三映射关系以及该第三映射关系所映射的第三标签;

第三获取模块,用于基于第三标签、第一标签、第一映射关系与第三映射关系获取第三路由明细,并基于第三路由明细转发所述解封装的报文给目标用户。

进一步地,所述报文转发装置,还包括:所述封装报文还包括第一保留字段、第二保留字段、增加字段,其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。

进一步地,所述报文转发装置,还包括:

建立模块,用于当检测到待转发报文时,第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道。

进一步地,所述报文转发装置,还包括:

判断模块,用于判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

进一步地,判断模块包括:

第一判断单元,用于当所述待转发报文不是三层转发时,判断该待转发报文是否为二层已知单播转发,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

进一步地,判断模块包括:

第二判断单元,用于当所述待转发报文不是三层转发时,判断该待转发报文是否为二层组播转发;

预置单元,用于当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。

进一步地,判断模块包括:

第三判断单元,用于当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;

确定单元,用于当是广播或未知单播转发时,所述第二标签为确定的预设第二标签。

参照图3,图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。

本发明实施例报文转发装置可以是pc,也可以是智能手机、平板电脑、电子书阅读器、mp3(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)播放器、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面3)播放器、便携计算机等终端设备。

如图3所示,该报文转发装置可以包括:处理器1001,例如cpu,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,该报文转发装置还可以包括用户接口、网络接口、摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。用户接口可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。

本领域技术人员可以理解,图3中示出的报文转发装置结构并不构成对报文转发装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及报文转发程序。操作系统是管理和控制报文转发装置硬件和软件资源的程序,支持报文转发程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与报文转发装置中其它硬件和软件之间通信。

在图3所示的报文转发装置中,处理器1001用于执行存储器1005中存储的报文转发程序,实现以下步骤:

第一节点获取待转发报文对应本地的第一路由明细,将所述第一路由明细与本地标签池中的第一标签进行映射,并将所述第一路由明细与第一标签的第一映射关系同步到第二节点;

第一节点获取第二节点的第二路由明细,并根据第二路由明细获取第二节点远程标签池中关联的第二映射关系以及该第二映射关系所映射的第二标签;

第一节点将待转发报文、第一标签和第二标签进行封装得到封装报文,发送封装报文至第二节点,以供第二节点接收并解封装所述封装报文,并基于第一映射关系与第二映射关系转发解封装后的报文给目标用户。

进一步地,所述方法还包括:

若第一节点接收到第三节点发送的封装报文时,所述第一节点接收并解封装所述封装报文;

所述第一节点基于所述解封装的报文获取第三节点的第三映射关系以及该第三映射关系所映射的第三标签;

基于第三标签、第一标签、第一映射关系与第三映射关系获取第三路由明细,并基于第三路由明细转发所述解封装的报文给目标用户。

进一步地,所述封装报文还包括第一保留字段、第二保留字段、增加字段,其中,第一保留字段包括第二标签,第二保留字段包括可选option字段,增加字段包括第一标签。

进一步地,所述第一节点获取待转发报文对应本地的第一路由明细步骤之前包括:

当检测到待转发报文时,第一节点与远程第二节点建立虚拟可扩展局域网vxlan隧道。

进一步地,所述第一节点获取待转发报文对应本地的第一路由明细步骤之前包括:

判断所述待转发报文是否为三层转发,当该待转发报文为三层转发时,预置相应路由明细为包括物理mac地址、ip地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

进一步地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层已知单播转发,当为二层已知单播转发时,预置相应路由明细为包括物理mac地址的数据,其中,路由明细包括第一路由明细与第二路由明细。

进一步地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为二层组播转发;

当待转发报文为二层组播转发时,预置相应路由明细为包括物理mac地址的数据,并在第二保留字段预置组播地址池的数据,第一保留字段预置每组地址池对应的组播地址数据。

进一步地,所述判断所述待转发报文是否为三层转发步骤之后包括:

当所述待转发报文不是三层转发时,判断该待转发报文是否为广播或未知单播转发;

当是广播或未知单播转发,所述第二标签为确定的预设第二标签。

本发明报文转发装置具体实施方式与上述报文转发方法各实施例基本相同,在此不再赘述。

本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述所述的报文转发方法的步骤。

本发明计算机可读存储介质具体实施方式与上述报文转发方法各实施例基本相同,在此不再赘述。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利处理范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1