一种报文传输方法和装置与流程

文档序号:12729501阅读:331来源:国知局
一种报文传输方法和装置与流程
本申请涉及通信
技术领域
,尤其涉及一种报文传输方法和装置。
背景技术
:VXLAN(VirtualeXtensibleLocalAreaNetwork,可扩展虚拟局域网络)是基于IP网络、采用“MAC(MediaAccessControl,媒体访问控制)inUDP(UserDatagramProtocol,用户数据报协议)”封装形式的二层VPN(VirtualPrivateNetwork,虚拟专用网络)技术。VXLAN可以基于已有的服务提供商或者企业IP网络,为分散的站点提供二层互联,并能够为不同的租户提供业务隔离。VXLAN主要应用于数据中心网络,如图1所示,为数据中心网络的组网示意图,数据中心网络可以使用头端复制方式或者核心复制方式。当通过IP核心网络进行二层互联的站点较多时,通常采用核心复制方式,从而可以减小VTEP(VXLANTunnelEndPoint,VXLAN隧道端点)设备的压力。为了实现核心复制方式,同一个VXLAN内的所有VTEP设备均加入到同一个组播组。基于核心复制方式,VTEP设备1收到主机1的广播报文后,将广播报文发送到站点2,并为广播报文封装组播隧道头,将封装后的报文发送给P设备。P设备对报文进行复制,通过组播隧道a分别发送给VTEP设备2和VTEP设备3。VTEP设备2在接收到封装后的报文时,从报文中学习到主机1的IP地址,并将主机1的IP地址与组播隧道a进行关联。这样,针对主机3发送给主机1的单播报文,由于该单播报文的目的IP地址与组播隧道a关联,因此,VTEP设备2为该单播报文封装组播隧道头,并将封装后的报文发送给P设备。P设备对报文进行复制,通过组播隧道a分别发送给VTEP设备1和VTEP设备3。显然,在上述方式下,会造成带宽资源的浪费,增加P设备的处理开销。技术实现要素:本申请提供一种报文传输方法,应用于本端边缘设备,本设备与对端边缘设备之间存在组播隧道,所述方法包括:在通过组播隧道接收到第一类报文后,从所述第一类报文中解析出源主机的地址信息,利用所述源主机的地址信息生成转发表项,所述转发表项的出接口为所述组播隧道对应的单播隧道的信息;其中,本设备创建有所述组播隧道对应的单播隧道,所述单播隧道是本设备与所述对端边缘设备之间的单播隧道;在接收到目的为所述源主机的第二类报文后,通过所述第二类报文的目的地址查询所述转发表项,得到与所述目的地址匹配的出接口;若得到的出接口为单播隧道的信息,则通过所述单播隧道发送所述第二类报文。本申请提供一种报文传输装置,应用于本端边缘设备,所述本端边缘设备与对端边缘设备之间存在组播隧道,所述装置具体包括:生成模块,用于在通过所述组播隧道接收到第一类报文后,从所述第一类报文中解析出源主机的地址信息,利用所述源主机的地址信息生成转发表项,所述转发表项的出接口为所述组播隧道对应的单播隧道的信息;其中,所述本端边缘设备创建有所述组播隧道对应的单播隧道,且所述单播隧道是所述本端边缘设备与所述对端边缘设备之间的单播隧道;发送模块,用于在接收到目的为所述源主机的第二类报文后,通过所述第二类报文的目的地址查询所述转发表项,得到与所述目的地址匹配的出接口;若得到的出接口为单播隧道的信息,则通过所述单播隧道发送所述第二类报文。基于上述技术方案,本申请实施例中,在VXLAN的核心复制网络中,可以在本端边缘设备与对端边缘设备之间创建与组播隧道对应的单播隧道,针对从组播隧道接收到的报文,可以将报文对应的转发表项关联到该单播隧道。这样,在接收到与该转发表项匹配的单播报文后,可以使用单播隧道来传输该单播报文,而不是使用组播隧道来传输该单播报文,从而减少带宽资源的浪费,节省网络带宽,减轻P设备的处理开销,提高核心复制网络的应用价值和前景。附图说明为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1是数据中心网络的组网示意图;图2是本申请一种实施方式中的报文传输方法的流程图;图3是本申请一种实施方式中的本端边缘设备的硬件结构图;图4是本申请一种实施方式中的报文传输装置的结构图。具体实施方式在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本申请实施例中提出一种报文传输方法,该方法可以应用于包括本端边缘设备和对端边缘设备的网络,如该方法可以应用于VXLAN的核心复制网络(即采用核心复制方式的VXLAN数据中心网络)。其中,该网络中包括多个边缘设备(如VTEP设备),而这多个边缘设备包括本端边缘设备和对端边缘设备,本端边缘设备的数量为一个,而对端边缘设备的数量可以为一个或者多个。针对每个对端边缘设备,本端边缘设备与该对端边缘设备之间存在组播隧道。本端边缘设备和对端边缘设备是相对的,例如,当边缘设备A与边缘设备B之间建立有组播隧道时,若边缘设备A是本端边缘设备,则边缘设备B是对端边缘设备,若边缘设备B是本端边缘设备,则边缘设备A是对端边缘设备。在一个例子中,针对本端边缘设备与对端边缘设备之间的组播隧道,本端边缘设备还可以创建与该组播隧道对应的单播隧道,而且,该单播隧道可以是该本端边缘设备与该对端边缘设备之间的单播隧道。其中,该单播隧道的源地址可以为该本端边缘设备的地址信息,且该单播隧道的目的地址可以为该对端边缘设备的地址信息。而且,本端边缘设备的地址信息可以是该组播隧道使用的针对该本端边缘设备的地址信息,且对端边缘设备的地址信息可以是该组播隧道使用的针对该对端边缘设备的地址信息。例如,若边缘设备A与边缘设备B之间建立有组播隧道,该组播隧道在边缘设备A使用的地址信息为地址A,在边缘设备B使用的地址信息为地址B,则边缘设备A可以创建与该组播隧道对应的单播隧道,该单播隧道的源地址为边缘设备A的地址A,该单播隧道的目的地址为边缘设备B的地址B。而且,边缘设备B也可以创建与该组播隧道对应的单播隧道,该单播隧道的源地址为边缘设备B的地址B,该单播隧道的目的地址为边缘设备A的地址A。在一个例子中,针对“本端边缘设备创建与该组播隧道对应的单播隧道”的过程,可以包括但不限于如下方式:基于本地的配置信息,获取到本设备的地址信息以及对端边缘设备的地址信息,并利用本设备的地址信息以及对端边缘设备的地址信息创建与该组播隧道对应的单播隧道。或者,在通过该组播隧道接收到第一类报文后,从该第一类报文中解析出对端边缘设备的地址信息,并利用本设备的地址信息以及该对端边缘设备的地址信息创建与该组播隧道对应的单播隧道。或者,在通过该组播隧道接收到对端边缘设备发送的隧道报文后,从该隧道报文中解析出该对端边缘设备的地址信息,并利用本设备的地址信息以及该对端边缘设备的地址信息创建与该组播隧道对应的单播隧道。针对第一种方式,本地的配置信息中可以包含组播隧道使用的地址信息(本设备的地址信息以及对端边缘设备的地址信息),因此,本端边缘设备可以从配置信息中解析出本设备的地址信息和对端边缘设备的地址信息,并利用本设备的地址信息和对端边缘设备的地址信息创建与组播隧道对应的单播隧道。针对第二种方式,第一类报文是对端边缘设备发送的封装有组播隧道头的报文。具体的,对端边缘设备在接收到源主机发送的原始报文(如广播报文、或者组播报文、或者未知单播报文等)后,会为接收到的原始报文封装组播隧道头,并将封装后的报文(即第一类报文)发送给P设备,由P设备对第一类报文进行复制,并通过组播隧道发送给本端边缘设备,这样,本端边缘设备就可以接收到第一类报文。对端边缘设备发送第一类报文的过程在后续过程说明。本端边缘设备在接收到第一类报文之后,可以从第一类报文中解析出组播隧道头,而该组播隧道头中的源地址信息就是对端边缘设备的地址信息。此外,本端边缘设备还可以获取到组播隧道使用的本设备的地址信息,继而利用本设备的地址信息和对端边缘设备的地址信息创建与组播隧道对应的单播隧道。针对第三种方式,本端边缘设备在接收到源主机发送的原始报文(如广播报文、或者组播报文、或者未知单播报文等)后,会为接收到的原始报文封装组播隧道头,并将封装后的报文(即第一类报文)发送给P设备,由P设备对第一类报文进行复制,并通过组播隧道发送给对端边缘设备,这样,对端边缘设备可以接收到第一类报文。对端边缘设备在接收到第一类报文后,生成隧道报文,该隧道报文的内层为ICMP(InternetControlMessageProtocol,网际控制报文协议)数据,外层为组播隧道头,在该组播隧道头中,源地址信息为对端边缘设备的组播隧道使用的地址信息。然后,对端边缘设备通过组播隧道向本端边缘设备发送隧道报文。本端边缘设备在接收到该隧道报文之后,可以从该隧道报文中解析出组播隧道头,而该组播隧道头中的源地址信息就是对端边缘设备的地址信息。此外,本端边缘设备还可以获取到组播隧道使用的本设备的地址信息,继而利用本设备的地址信息和对端边缘设备的地址信息创建与组播隧道对应的单播隧道。在一个例子中,本端边缘设备在通过组播隧道接收到第一类报文之后,还可以生成隧道报文,并通过该组播隧道向对端边缘设备发送该隧道报文,以使对端边缘设备根据该隧道报文创建与组播隧道对应的单播隧道,具体创建过程与上述第三种方式类似,在此不再赘述。在另一个例子中,本端边缘设备在通过组播隧道接收到第一类报文之后,还可以判断本设备之前是否已经通过组播隧道向对端边缘设备发送过第一类报文,如果否,则可以生成隧道报文,并通过该组播隧道向对端边缘设备发送该隧道报文,以使对端边缘设备根据该隧道报文创建与组播隧道对应的单播隧道,具体创建过程在此不再赘述。其中,该隧道报文的内层为ICMP数据,外层为组播隧道头。而且,在该组播隧道头中,源地址信息为本端边缘设备的该组播隧道使用的地址信息。在上述应用场景下,参见图2所示,为本申请实施例中提出的报文传输方法的流程图,该方法可以应用于本端边缘设备,该方法可以包括以下步骤:步骤201,在通过组播隧道接收到第一类报文后,从该第一类报文中解析出源主机的地址信息,并利用该源主机的地址信息生成转发表项,其中,该转发表项的出接口为该组播隧道对应的单播隧道的信息(如隧道标识等)。在一个例子中,对端边缘设备在接收到源主机发送的原始报文(如广播报文、或者组播报文、或者未知单播报文等)后,会为接收到的原始报文封装组播隧道头,并将封装后的报文(即第一类报文)发送给P设备,由P设备对第一类报文进行复制,并通过组播隧道发送给本端边缘设备。本端边缘设备在通过组播隧道接收到第一类报文后,可以剥掉第一类报文的组播隧道头,得到第一类报文中的原始报文,而该原始报文的源地址信息就是源主机的地址信息。本端边缘设备在得到源主机的地址信息后,可以利用源主机的地址信息生成转发表项,该转发表项的匹配项为源主机的地址信息,出接口为该组播隧道对应的单播隧道的信息,这样,就可以将源主机的地址信息关联到单播隧道。步骤202,在接收到目的为该源主机的第二类报文后,通过该第二类报文的目的地址查询该转发表项,得到与该目的地址匹配的出接口;若得到的该出接口为单播隧道的信息,则通过该单播隧道发送该第二类报文。在一个例子中,当与本端边缘设备连接的主机向源主机发送报文时,本端边缘设备可以接收到该报文,该报文是目的为该源主机的第二类报文,该第二类报文是一个单播报文,且该第二类报文的目的地址信息为源主机的地址信息。在一个例子中,针对“本端边缘设备通过该单播隧道发送该第二类报文”的过程,本端边缘设备可以为该第二类报文封装单播隧道头,该单播隧道头的源地址信息为该单播隧道的源地址(即本端边缘设备的地址信息),该单播隧道头的目的地址信息为该单播隧道的目的地址(即对端边缘设备的地址信息)。之后,本端边缘设备可以通过该单播隧道将封装后的第二类报文发送给对端边缘设备,在这个发送过程中,P设备不会对封装后的第二类报文进行复制。在一个例子中,转发表项可以包括但不限于MAC表项和/或ARP(AddressResolutionProtocol,地址解析协议)表项,地址信息(如本设备的地址信息、对端边缘设备的地址信息等)可以包括但不限于IP地址和/或MAC地址,地址(如源地址、目的地址等)也可以包括但不限于IP地址和/或MAC地址。在一个例子中,本端边缘设备在创建与组播隧道对应的单播隧道之后,还可以为该单播隧道设置老化定时器,该老化定时器的老化时间可以根据实际经验进行配置,如3600秒等。在老化定时器超时之前,本端边缘设备在每次通过该单播隧道发送第二类报文时,均更新该老化定时器的老化时间(即老化定时器重新计时)。在老化定时器超时时,则本端边缘设备可以删除该单播隧道。在本端边缘设备删除该单播隧道之后,若又存在使用该单播隧道的需求,则本端边缘设备还可以采用上述方式,重新创建与组播隧道对应的单播隧道。这样,实现单播隧道的按需生成与删除,可以防止隧道资源的浪费。基于上述技术方案,本申请实施例中,在VXLAN的核心复制网络中,可以在本端边缘设备与对端边缘设备之间创建与组播隧道对应的单播隧道,针对从组播隧道接收到的报文,可以将报文对应的转发表项关联到该单播隧道。这样,在接收到与该转发表项匹配的单播报文后,可以使用单播隧道来传输该单播报文,而不是使用组播隧道来传输该单播报文,从而减少带宽资源的浪费,节省网络带宽,减轻P设备的处理开销,提高核心复制网络的应用价值和前景。以下结合具体的应用场景,对本申请实施例的上述技术方案进行详细说明。以图1为本应用场景的组网示意图,在本应用场景下,以VXLAN的核心复制网络(即采用核心复制方式的VXLAN数据中心网络)为例,而且,以VTEP设备1为对端边缘设备,VTEP设备2为本端边缘设备为例进行说明。如图1所示,VTEP设备2与VTEP设备1之间建立有组播隧道a,该组播隧道a的路径可以为VTEP设备2-P设备-VTEP设备1;VTEP设备2与VTEP设备3之间建立有组播隧道a,该组播隧道a的路径可以为VTEP设备2-P设备-VTEP设备3。当然,其它VTEP设备也有相应的组播隧道,对此不再赘述。假设组播隧道a在VTEP设备1上使用的IP地址为13.1.1.1,组播隧道a在VTEP设备2上使用的IP地址为10.1.1.2。组播隧道a在VTEP设备1上使用的MAC地址为MAC-1,组播隧道a在VTEP设备2上使用的MAC地址为MAC-2。在上述应用场景下,本申请实施例中提出的报文传输方法可以包括:步骤1、主机1发送报文1,报文1可以为广播报文、组播报文、未知单播报文,报文1的源IP地址为主机1的IP地址A,源MAC地址为主机1的MAC-A。步骤2、VTEP设备1接收到主机1的报文1后,将报文1发送到站点2,并为报文1封装组播隧道头,将封装后的报文(将其称为报文2)发送给P设备。在一个例子中,针对“VTEP设备1为报文1封装组播隧道头”的过程,该组播隧道头从外到内依次为:IP头、UDP头、VXLAN头。UDP头可以包括源端口标识、目的端口标识等,VXLAN头可以包括VXLAN标识等,对于UDP头、VXLAN头,在此不再赘述。IP头可以包括源IP地址、源MAC地址、目的IP地址、目的MAC地址等内容,源IP地址可以为组播隧道a在VTEP设备1上使用的IP地址13.1.1.1,源MAC地址可以为组播隧道a在VTEP设备1上使用的MAC-1,目的IP地址为组播IP地址,目的MAC地址为组播MAC地址。步骤3、P设备在接收到报文2后,对该报文2进行复制,并通过组播隧道a将报文2分别发送给VTEP设备2和VTEP设备3。对于VTEP设备3的处理,在此应用场景下不再赘述,以下对VTEP设备2的处理进行详细说明。步骤4、VTEP设备2在通过组播隧道a接收到报文2之后,从该报文2中解析出报文1,并将该报文1发送到站点3,对此发送过程不再赘述。步骤5、VTEP设备2在通过组播隧道a接收到报文2之后,创建与该组播隧道a对应的单播隧道1。其中,该单播隧道1的源IP地址为组播隧道a在VTEP设备2上使用的IP地址10.1.1.2,源MAC地址为组播隧道a在VTEP设备2上使用的MAC-2,而且,目的IP地址为组播隧道a在VTEP设备1上使用的IP地址13.1.1.1,目的MAC地址为组播隧道a在VTEP设备1上使用的MAC-1。在一个例子中,VTEP设备2在通过组播隧道a接收到报文2之后,可以从报文2中解析出组播隧道头,而在该组播隧道头的IP头部分,源IP地址为组播隧道a在VTEP设备1上使用的IP地址13.1.1.1,源MAC地址为组播隧道a在VTEP设备1上使用的MAC-1,因此,VTEP设备2可以从该组播隧道头中解析出IP地址13.1.1.1和MAC-1,IP地址13.1.1.1就可以作为单播隧道1的目的IP地址,MAC-1就可以作为单播隧道1的目的MAC地址。在一个例子中,VTEP设备2还可以从本地的VXLAN配置中获取到组播隧道a在VTEP设备2上使用的IP地址10.1.1.2,以及组播隧道a在VTEP设备2上使用的MAC-2,因此,该IP地址10.1.1.2就可以作为单播隧道1的源IP地址,而该MAC-2就可以作为单播隧道1的源MAC地址。综上所述,VTEP设备2可以创建与该组播隧道a对应的单播隧道1。步骤6、VTEP设备2生成隧道报文,并通过组播隧道a向VTEP设备1发送该隧道报文。其中,该隧道报文的内层为ICMP数据,外层为组播隧道头。在组播隧道头中,从外到内依次为:IP头、UDP头、VXLAN头。UDP头可以包括源端口标识、目的端口标识,VXLAN头可以包括VXLAN标识,对于UDP头、VXLAN头,在此不再赘述。IP头可以包括源IP地址、源MAC地址、目的IP地址、目的MAC地址等,源IP地址可以为组播隧道a在VTEP设备2上使用的IP地址10.1.1.2,源MAC地址可以为组播隧道a在VTEP设备2上使用的MAC-2,目的IP地址为组播IP地址,目的MAC地址为组播MAC地址。步骤7、VTEP设备1在通过组播隧道a接收到隧道报文后,创建与该组播隧道a对应的单播隧道2。其中,该单播隧道2的源IP地址为组播隧道a在VTEP设备1上使用的IP地址13.1.1.1,源MAC地址为组播隧道a在VTEP设备1上使用的MAC-1。而且,目的IP地址为组播隧道a在VTEP设备2上使用的IP地址10.1.1.2,目的MAC地址为组播隧道a在VTEP设备2上使用的MAC-2。在一个例子中,VTEP设备1在通过组播隧道a接收到该隧道报文后,可以从该隧道报文中解析出组播隧道头,而在该组播隧道头的IP头部分,源IP地址为组播隧道a在VTEP设备2上使用的IP地址10.1.1.2,源MAC地址为组播隧道a在VTEP设备2上使用的MAC-2,因此,VTEP设备1可以从该组播隧道头中解析出IP地址10.1.1.2和MAC-2,而且,该IP地址10.1.1.2就可以作为单播隧道2的目的IP地址,该MAC-2就可以作为单播隧道2的目的MAC地址。在一个例子中,VTEP设备1还可以从本地的VXLAN配置中获取到组播隧道a在VTEP设备1上使用的IP地址13.1.1.1,以及,组播隧道a在VTEP设备1上使用的MAC-1,因此,该IP地址13.1.1.1就可以作为单播隧道2的源IP地址,而该MAC-1就可以作为单播隧道2的源MAC地址。综上所述,VTEP设备1可以创建与该组播隧道a对应的单播隧道2。在一个例子中,VTEP设备1通过组播隧道a接收到隧道报文后,若隧道报文的目的IP地址(VTEP设备2的IP地址10.1.1.2)与组播隧道a的源IP地址相同,隧道报文的目的MAC地址(VTEP设备2的MAC-2)与组播隧道a的源IP地址相同,VTEP设备1还可以向VTEP设备2发送响应报文。步骤8、VTEP设备2在通过组播隧道a接收到报文2之后,从该报文2中解析出报文1,并从报文1中学习主机1的IP地址A和/或主机1的MAC-A。步骤9、VTEP设备2在转发表项中记录主机1的IP地址A和/或主机1的MAC-A,与出接口的对应关系,且该出接口可以为该单播隧道1的信息。其中,该转发表项可以包括MAC表项、ARP表项。若转发表项为MAC表项,则在MAC表项中记录主机1的MAC-A与出接口的对应关系。若转发表项为ARP表项,则在ARP表项中记录主机1的IP地址A、主机1的MAC-A与出接口的对应关系。如表1所示,为MAC表项的一个示例,如表2所示,为ARP表项的一个示例。其中,表1和表2只是一个示例,对此结构不做限制。表1MAC地址出接口MAC-A单播隧道1表2IP地址MAC地址出接口IP地址AMAC-A单播隧道1步骤10、主机3向主机1发送报文3,该报文3为单播报文,且报文3的源IP地址为主机3的IP地址B,源MAC地址为主机3的MAC-B。而且,报文3的目的IP地址为主机1的IP地址A,目的MAC地址为主机1的MAC-A。步骤11、VTEP设备2在接收到主机3的报文3后,通过目的IP地址(即IP地址A)、目的MAC地址(即MAC-A)查询表2所示的转发表项,得到与该目的IP地址、该目的MAC地址匹配的出接口,且该出接口为单播隧道1。步骤12、VTEP设备2通过该单播隧道1发送该报文3。具体的,VTEP设备2为报文3封装单播隧道头,得到报文4,并通过单播隧道1将报文4发送给VTEP设备1,在这个发送过程中,P设备不会对报文4进行复制。在一个例子中,针对“VTEP设备2为报文3封装单播隧道头”的过程,该单播隧道头从外到内依次为:IP头、UDP头、VXLAN头。UDP头可以包括源端口标识、目的端口标识等,VXLAN头可以包括VXLAN标识等,对于UDP头、VXLAN头,在此不再赘述。IP头可以包括源IP地址、源MAC地址、目的IP地址、目的MAC地址等内容,源IP地址可以为单播隧道1的源IP地址(10.1.1.2),源MAC地址可以为单播隧道1的源MAC地址(MAC-2),目的IP地址可以为单播隧道1的目的IP地址(13.1.1.1),不是组播IP地址,目的MAC地址可为单播隧道1的目的MAC地址(MAC-1),不是组播MAC地址。步骤13、VTEP设备1从单播隧道1接收到报文4后,从该报文4中解析出报文3,并将报文3发送给主机1。至此,完成报文的传输过程。基于与上述方法同样的申请构思,本申请实施例还提供一种报文传输装置,该报文传输装置应用在本端边缘设备上。该报文传输装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的本端边缘设备的处理器,读取非易失性存储器中对应的计算机程序指令形成的。从硬件层面而言,如图3所示,为本申请提出报文传输装置所在的本端边缘设备的一种硬件结构图,除了图3所示的处理器、非易失性存储器外,本端边缘设备还可以包括其他硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,该本端边缘设备还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。如图4所示,为本申请提出的报文传输装置的结构图,所述装置包括:生成模块11,用于在通过所述组播隧道接收到第一类报文后,从所述第一类报文中解析出源主机的地址信息,利用所述源主机的地址信息生成转发表项,所述转发表项的出接口为所述组播隧道对应的单播隧道的信息;其中,所述本端边缘设备创建有所述组播隧道对应的单播隧道,且所述单播隧道是所述本端边缘设备与所述对端边缘设备之间的单播隧道;发送模块12,用于在接收到目的为所述源主机的第二类报文后,通过所述第二类报文的目的地址查询所述转发表项,得到与所述目的地址匹配的出接口;若得到的出接口为单播隧道的信息,则通过所述单播隧道发送所述第二类报文。在一个例子中,所述装置还包括(在图中未体现):创建模块,用于在通过所述组播隧道接收到第一类报文后,从所述第一类报文中解析出所述对端边缘设备的地址信息,利用所述本端边缘设备的地址信息和所述对端边缘设备的地址信息创建与所述组播隧道对应的单播隧道;或者,在通过所述组播隧道接收到所述对端边缘设备发送的隧道报文后,从所述隧道报文中解析出所述对端边缘设备的地址信息,利用所述本端边缘设备的地址信息和所述对端边缘设备的地址信息创建与所述组播隧道对应的单播隧道;其中,所述创建模块创建的所述单播隧道的源地址为所述本端边缘设备的地址信息,所述单播隧道的目的地址为所述对端边缘设备的地址信息;所述本端边缘设备的地址信息是所述组播隧道使用的针对所述本端边缘设备的地址信息;所述对端边缘设备的地址信息是所述组播隧道使用的针对所述对端边缘设备的地址信息。在一个例子中,所述生成模块11,还用于在通过所述组播隧道接收到第一类报文后,若所述本端边缘设备之前未通过所述组播隧道向所述对端边缘设备发送过第一类报文,则生成隧道报文;其中,所述隧道报文的内层为网际控制报文协议ICMP数据,外层为组播隧道头;在所述组播隧道头中,源地址信息为本设备的所述组播隧道使用的地址信息;所述发送模块12,还用于通过组播隧道向对端边缘设备发送所述隧道报文,以使对端边缘设备根据所述隧道报文创建与所述组播隧道对应的单播隧道。在一个例子中,所述创建模块,还用于在创建与所述组播隧道对应的单播隧道之后,为所述单播隧道设置老化定时器;在所述老化定时器超时之前,每次通过所述单播隧道发送第二类报文时,均更新所述老化定时器的老化时间;在所述老化定时器超时时,则删除所述单播隧道。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可以采用完全硬件实施例、完全软件实施例、或者结合软件和硬件方面的实施例的形式。而且,本申请可以采用在一个或者多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1