交换机中IPv6报文的转发方法及装置的制作方法

文档序号:88042阅读:1069来源:国知局
专利名称:交换机中IPv6报文的转发方法及装置的制作方法
技术领域
本发明涉及IPv6报文的转发方法及装置,特别涉及交换机中IPv6报文的转发方法及装置,属于通信领域。
背景技术
随着互联网技术的发展和新应用的不断推出,第四版互联网协议(简称IPv4)越来越显露出其在地址空间、安全性、服务质量(Quality of Service,简称QoS)、以及配置简便性等方面的局限性,因此需要新的协议来从根本上解决目前IPv4协议所面临的问题。由此,第六版互联网协议(IPV6)应运而生。
从IPV4网络向IPV6网络的过渡需要相当长的时期,在这个过程中会存在IPV4和IPV6共存的阶段。现阶段处于IPV6网络发展的初级阶段,IPv4网络仍占主导地位,IPv6网络以“孤岛”的形式存在。现阶段的IPV6网络的部署如图1所示,IPv6孤岛经由IPv4网络互相通信。在这个阶段需要采取IPV4网络和IPV6网络之间的协议转换技术来保证这两种不同的网络之间的互通。
目前普遍采用的IPV4网络和IPV6网络之间的协议转换技术是隧道技术,隧道(tunnel)技术是指将一种协议封装到另外一种协议中以实现互联的目的。隧道的起始端称为隧道入口,隧道的终点称为隧道出口。采用隧道技术的设备部署在IPV6网络和IPV4网络的边缘,负责IPV6报文和IPV4报文的格式转换。对于设在隧道入口的设备来说,需要将从IPv6网络进入IPv4网络的IPv6报文封装上IPv4头,并转发给IPv4网络中的下一跳设备;对于设在隧道出口的设备来说,需要将从IPv4网络进入IPv6网络的IPv4报文解除IPv4头的封装,将解封装后的IPv6报文转发给IPv6网络中的下一跳设备。
因此,对于设在隧道入口处的交换机来说,在收到从IPv6网络进入IPv4网络的IPV6报文后,需要将该IPv6报文封装为IPV4报文,并将该IPv4报文的源地址及目的地址分别设为隧道入口的IPv4地址及隧道出口的IPv4地址。现有的交换机对IPv6路由表及IPv4路由表的查找都是通过硬件实现,由于交换机的硬件限制,无法对收到的IPv6报文连续进行IPv6路由表及IPv4路由表的查找,也即未将IPv6网络的三层(网络层)信息与IPv4网络的二层(数据链路层)信息相关联,因此对所述IPv6报文通过查找IPv6路由表无法获知其进入IPv4网络时下一跳的二层信息,从而需要采取特定的转发方法来获取下一跳的二层信息。
现有的交换机通常采用二次路由的方法来处理从IPv6网络进入IPv4网络的IPv6报文。如图2所示,在IPv6路由表中,将要进入IPv4网络的IPV6报文所对应的下一跳二层信息设置为本机信息,在收到IPv6报文后将IPv6报文进行IPv4封装并通过指定的业务环回口重新发送到交换机。业务环回口的作用是将报文做环回处理,即报文从此口出交换机后,又从此口再次入交换机。对于将要发送到业务环回口的报文,其下一跳的信息包括目的MAC地址(DMAC)、出端口,出vlan(虚拟局域网)等即为交换机本身的信息。当由IPv6报文封装而成的IPv4报文经业务环回口再次入交换机之后,就被视作普通的IPV4报文,通过查找IPV4路由表获得下一跳二层信息,从而转发该报文。
上述方法的不足之处在于1、通过业务环回口进行二次路由,占用了至少一个物理端口;2、为保证足够的带宽,业务环回口可能需要使用多个物理端口进行汇聚,从而浪费了带宽;3、二次路由的处理方法,使报文经过两次转发才能从隧道入口的设备转发给下一跳设备,从而降低了报文转发速率,有可能使转发达不到线速。

发明内容本发明的目的是为克服上述现有技术的缺陷,提供一种交换机中IPv6报文的转发方法及装置,能够有效地节省带宽并提高报文转发速率。
为实现上述发明目的,本发明提供了一种交换机中IPv6报文的转发方法,包括设在隧道入口的交换机收到IPv6报文后,通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头后,转发给所述下一跳二层信息对应的下一跳设备。其中所述下一跳二层信息包括下一跳的目的MAC地址(DMAC)、出端口,出vlan(虚拟局域网)信息。
在上述技术方案中,通过在设在隧道入口的交换机中预先设置与IPv6报文的目的IPv6地址对应的IPv4封装信息及下一跳二层信息,并在收到IPv6报文后通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息,从而能够根据获得的IPv4封装信息及下一跳二层信息对所述IPv6报文进行封装,并转发给下一跳二层信息对应的下一跳设备,而并非现有技术的对IPv6报文作环回处理后再查找下一跳二层信息,从而不需占用交换机的物理端口进行环回处理,节省了带宽,提高了转发速率。
优选地,所述通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息可具体包括查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。
所述通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息也可具体包括查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPV6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;根据所述IPV4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。
为实现发明目的,本发明还提供了一种交换机中IPv6报文的转发装置,包括查找模块,用于在收到IPv6报文后通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;封装模块,与所述查找模块连接,用于根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头;转发模块,与所述封装模块连接,用于将所述封装模块封装后的报文转发给所述下一跳二层信息对应的下一跳设备。其中所述下一跳二层信息包括下一跳的目的MAC地址(DMAC)、出端口,出vlan(虚拟局域网)信息。
在上述技术方案中,通过查找模块查找交换机中预设的、与收到的IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息,从而根据该IPv4封装信息及下一跳二层信息对收到的IPv6报文进行封装和转发给下一跳设备,而并非现有的对收到的IPv6报文进行环回处理后再重新查找下一跳二层信息,从而不需占用交换机的物理端口进行环回处理,节省了带宽,提高了转发速率。
优选地,所述查找模块可用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。
所述查找模块也可包括IPv6路由表查找模块,用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;隧道二层信息表查找模块,与所述IPv6路由表查找模块连接,用于根据所述IPv4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。
综上所述,本发明通过在设在隧道入口的交换机中,预先设置与收到的IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息,从而在收到IPv6报文后能够根据该IPv6报文的目的IPv6地址查找到对应的IPv4封装信息及下一跳二层信息,并根据查找到的信息对IPv6报文进行IPv4封装以及二层头的封装,然后转发给所查找到的下一跳二层信息所对应的下一跳设备。由此可见,本发明无需现有技术中的对IPv6报文进行环回处理后再重新查找对应的下一跳二层信息,因此无需独占物理端口进行环回处理,从而能够节省带宽并提高报文转发速率。
图1为现有的IPv6网络部署示意图;图2为现有的交换机处理IPv6报文的二次路由方法的流程示意图;图3为本发明交换机中IPv6报文的转发方法的实施例一的流程示意图;图4为本发明交换机中IPv6报文的转发方法的实施例二的流程示意图;图5为本发明交换机中IPv6报文的转发方法的实施例三的流程示意图;图6为本发明交换机中IPv6报文的转发装置的实施例一的结构示意图;图7为本发明交换机中IPv6报文的转发装置的实施例二的结构示意图。
具体实施方式下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明的基本构思为现有技术中设于隧道入口的交换机在对收到的IPv6报文进行转发处理时,由于交换机中对IPv6路由表及IPv4路由表的查找都是通过硬件实现,由于交换机的硬件限制,无法对收到的IPv6报文连续进行IPv6路由表及IPv4路由表的查找,因此现有的交换机需要对收到的IPv6报文进行环回处理,即在对收到的IPv6报文进行IPv6路由表查找并进行IPv4封装后,通过业务环回口环回发送回本交换机,然后再进行IPv4路由表查找,获得对应的下一跳二层信息后进行二层封装并转发给对应的下一跳设备。现有技术的这种二次路由的方法需要占用一个甚至多个物理端口进行环回处理,并且大大占用了用户带宽,对报文的环回处理也降低了报文转发速率。本发明旨在针对现有技术的上述缺陷,提供一种交换机中IPv6报文的转发方法及装置,通过在交换机中预先设置与IPv6路由表相关联的下一跳二层信息,从而在收到IPv6报文后能够直接通过查找IPv6路由表获得对应的IPv4封装信息以及下一跳二层信息,而无需占用物理端口进行环回处理,进而能够节省带宽并提高报文转发速率。
基于上述发明构思,本发明提供了一种交换机中IPv6报文的转发方法,参见图3所示的本发明交换机中IPv6报文的转发方法的实施例一的流程示意图,该实施例包括以下步骤在步骤A中,设在隧道入口的交换机收到IPv6报文后,通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;然后在步骤B中,根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头;最后在步骤C中,将加上二层头后的报文转发给所述下一跳二层信息对应的下一跳设备。
在本实施例一中,通过在设在隧道入口的交换机中预先设置与IPv6报文的目的IPv6地址对应的IPv4封装信息及下一跳二层信息,并在收到IPv6报文后通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息,从而能够根据获得的IPv4封装信息及下一跳二层信息对所述IPv6报文进行封装,并转发给下一跳二层信息对应的下一跳设备,而并非现有技术的对IPv6报文作环回处理后再查找下一跳二层信息,从而不需占用交换机的物理端口进行环回处理,节省了带宽,提高了转发速率。
上述实施例一中在交换机中预先设置与IPv6路由表相关联的下一跳二层信息,优选地,所述下一跳二层信息可设置在IPv6路由表中对应的表项中,也可独立设置在隧道二层信息表中。
本发明交换机中IPv6报文的转发方法的实施例二提供了将所述下一跳二层信息设置在IPv6路由表中对应的表项中的实施方式,参见图4所示的流程示意图,与上述实施例一的区别在于步骤A具体为步骤Al,即查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。
这种将所述下一跳二层信息设置在IPv6路由表中对应的表项中的实施方式的优点在于查找方法简便,效率高;其缺点在于需要对现有的IPv6路由表的表项设置及查找流程进行修改,以便能够从IPv6路由表项添加及获取对应的下一跳二层信息。
优选地,本实施例二中预先设置所述下一跳二层信息的方式可为根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;然后根据所述隧道接口的地址属性获取对应的IPv6地址,根据该IPv6地址查找所述交换机中预设的IPv6路由表,获得对应的IPv6路由表项,并将所述下一跳二层信息保存在该IPv6路由表项中。
本发明交换机中IPv6报文的转发方法的实施例三提供了将所述下一跳二层信息独立设置在隧道二层信息表中的实施方式,参见图5所示的流程示意图,与上述实施例一的区别在于步骤A具体包括以下步骤在步骤A10中,查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;然后在步骤A20中,根据所述IPv4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。
这种将所述下一跳二层信息独立设置在隧道二层信息表中的实施方式的优点在于不需要对现有的IPv6路由表的表项设置进行修改,只需增加查找隧道二层信息表的软件操作流程;其缺点在于增加了查表步骤,与上述实施例二相比效率有所下降。
优选地,本实施例三中预先设置所述下一跳二层信息的方式可为根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;将该IPv4地址及所述对应的下一跳二层信息保存在所述隧道二层信息表的对应表项中。
上述实施例二及实施例三中,所述根据预先设置的隧道接口的地址属性获取对应的IPv4地址,在不同的隧道配置方式下对所述隧道接口的地址属性有不同的预先设置方式,从而导致获取所述IPv4地址的方式的不同。
例如,如果所配置的隧道为自动隧道,根据协议规定,自动隧道的接口地址(IPV6地址)中需包含隧道终点的IPV4地址,也即要发送到该隧道终点的IPv6报文对应的IPv4封装信息中的目的IPv4地址。6to4隧道是一种自动隧道方式,其地址格式为2002a.b.c.dxxxxxxxxxxxxxxxxxxxx,其中2002为协议预先设定的前缀,a.b.c.d即为所述隧道终点的IPV4地址。其他类型的自动隧道在地址配置上与6to4隧道同理,即隧道接口的IPV6地址都要包含隧道终点的IPv4地址。因此,在自动隧道的实际应用场景中,所述根据预先设置的隧道接口的地址属性获取对应的IPv4地址即为根据预先设置的隧道接口的IPV6地址提取该IPv6地址中包括的IPv4地址。
再如,如果所配置的隧道为手工隧道,则根据协议规定,手工隧道的隧道接口地址可以是任意的IPV6单播地址,即不一定包含隧道终点的IPV4地址,但手工隧道的隧道接口必须配置用于指示隧道终点的IPv4地址的属性,从该属性可以提取隧道终点的IPV4地址。由此可见,在手工隧道的实际应用场景中,所述根据预先设置的隧道接口的地址属性获取对应的IPv4地址即为根据预先设置的隧道接口的用于指示隧道终点的IPv4地址的属性,提取该属性中包括的IPv4地址。
上述实施例提供了本发明技术方案在不同的下一跳二层信息的预先设置方式以及不同的隧道配置方式下的具体实施方式
,本领域的普通技术人员应当理解,其可以根据具体应用环境,对上述具体实施方式
进行灵活采用或组合,其均应在本发明技术方案所要求保护的范围之内。
进一步地,上述实施例二及实施例三中,所述根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息可具体包括根据该IPv4r地址查找所述交换机中预设的IPv4路由表,如果找到对应表项则从该表项中提取对应的下一跳二层信息,并将预设的所述隧道接口的IPv6地址与所述IPv4地址保存在预设的数据结构中(例如将所述隧道接口的IPv6地址与所述IPv4地址作为一个复合数组元素保存在复合数组RTunnel[]中);如果未找到对应表项则查找获得所述交换机中预设的缺省路由,从该缺省路由中提取对应的下一跳二层信息。
上述实施例二及实施例三中,在更新或删除所述交换机中预设的IPv4路由表项后,还可对相应的所述预先设置的下一跳二层信息进行更新或删除,具体包括查找所述数据结构中是否包括该IPv4路由表项中的目的IPv4地址,如果所述数据结构中未包括该IPv4路由表项中的目的IPv4地址则结束;如果所述数据结构中包括该IPv4路由表项中的目的IPv4地址,则提取该数据结构中与该目的IPv4地址对应的隧道接口的IPv6地址,并查找所述交换机中预设的IPv6路由表中是否包括下一跳的IP地址为所述IPv6地址的表项;如果所述交换机中预设的IPv6路由表中未包括下一跳的IP地址为所述IPv6地址的表项则结束,如果所述交换机中预设的IPv6路由表中包括下一跳的IP地址为所述IPv6地址的表项,则根据所更新或删除的IPv4路由表项中的下一跳二层信息,更新或删除与所述IPv6地址对应的、预先设置的下一跳二层信息。
基于上述发明构思,本发明还提供了一种交换机中IPv6报文的转发装置,参见图6所示的本发明交换机中IPv6报文的转发装置的实施例一的结构示意图,该实施例包括查找模块1,用于在收到IPv6报文后通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;封装模块2,与查找模块1连接,用于根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头;转发模块3,与封装模块2连接,用于将封装模块2封装后的报文转发给所述下一跳二层信息对应的下一跳设备。
在本实施例一中,通过查找模块1查找交换机中预设的、与收到的IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息,从而通过封装模块2根据该IPv4封装信息及下一跳二层信息对收到的IPv6报文进行封装,并通过转发模块3转发给下一跳设备,而并非现有的对收到的IPv6报文进行环回处理后再重新查找下一跳二层信息,从而不需占用交换机的物理端口进行环回处理,节省了带宽,提高了转发速率。
同样地,上述实施例一中所述下一跳二层信息可设置在IPv6路由表中对应的表项中,也可独立设置在隧道二层信息表中。
如果所述下一跳二层信息设置在IPv6路由表中对应的表项中,则查找模块1用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。这种将所述下一跳二层信息设置在IPv6路由表中对应的表项中的实施方式的优点在于查找方法简便,效率高;其缺点在于需要对现有的IPv6路由表的表项设置及查找流程进行修改,以便能够从IPv6路由表项添加及获取对应的下一跳二层信息。优选地,为了对所述下一跳二层信息进行预先设置,该实施例还可包括二层信息提取模块,用于根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;IPv6路由表设置模块,与所述二层信息提取模块连接,用于根据所述隧道接口的地址属性获取对应的IPv6地址,根据该IPv6地址查找所述交换机中预设的IPv6路由表,获得对应的IPv6路由表项,并将所述下一跳二层信息保存在该IPv6路由表项中。
如果所述下一跳二层信息独立设置在隧道二层信息表中,则参见图7所示的本发明交换机中IPv6报文的转发装置的实施例二的结构示意图,查找模块1可包括IPv6路由表查找模块,用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;隧道二层信息表查找模块,与所述IPv6路由表查找模块连接,用于根据所述IPv4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。这种将所述下一跳二层信息独立设置在隧道二层信息表中的实施方式的优点在于不需要对现有的IPv6路由表的表项设置进行修改,只需增加查找隧道二层信息表的软件操作流程;其缺点在于增加了查表步骤,与上述实施例二相比效率有所下降。
优选地,为了对所述下一跳二层信息进行预先设置,该实施例二还可包括二层信息提取模块,用于根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;隧道二层信息表设置模块,与所述二层信息提取模块连接,用于将所述IPv4地址及所述对应的下一跳二层信息保存在所述隧道二层信息表的对应表项中。
上述实施例提供了本发明技术方案在不同的下一跳二层信息的预先设置方式下的具体实施方式
,本领域的普通技术人员应当理解,其可以根据具体应用环境,对上述具体实施方式
进行灵活采用或组合,其均应在本发明技术方案所要求保护的范围之内。
优选地,上述实施例中,所述二层信息提取模块可用于根据该IPv4地址查找所述交换机中预设的IPv4路由表,如果找到对应表项则从该表项中提取对应的下一跳二层信息,并将预设的所述隧道接口的IPv6地址与所述IPv4地址保存在预设的数据结构中;如果未找到对应表项则查找获得所述交换机中预设的缺省路由,从该缺省路由中提取对应的下一跳二层信息。
优选地,上述实施例中,在更新或删除所述交换机中预设的IPv4路由表项后,还可对相应的所述预先设置的下一跳二层信息进行更新或删除,因此所述装置还可包括二层信息更新模块,用于在更新或删除所述交换机中预设的IPv4路由表项后,查找所述数据结构中是否包括该IPv4路由表项中的目的IPv4地址,否则结束;是则提取该数据结构中与该目的IPv4地址对应的隧道接口的IPV6地址,并查找所述交换机中预设的IPv6路由表中是否包括下一跳的IP地址为所述IPv6地址的表项,否则结束,是则根据所更新或删除的IPv4路由表项中的下一跳二层信息,更新或删除与所述IPv6地址对应的、预先设置的下一跳二层信息。
以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。
权利要求
1.一种交换机中IPv6报文的转发方法,其特征在于,包括设在隧道入口的交换机收到IPv6报文后,通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头后,转发给所述下一跳二层信息对应的下一跳设备。
2.根据权利要求
1所述的方法,其特征在于,所述通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息具体包括查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。
3.根据权利要求
2所述的方法,其特征在于,在所述设在隧道入口的交换机收到IPv6报文之前还包括在所述交换机中预先设置所述下一跳二层信息的操作,具体包括根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;然后根据所述隧道接口的地址属性获取对应的IPv6地址,根据该IPv6地址查找所述交换机中预设的IPv6路由表,获得对应的IPv6路由表项,并将所述下一跳二层信息保存在该IPv6路由表项中。
4.根据权利要求
1所述的方法,其特征在于,所述通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息具体包括查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;根据所述IPv4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。
5.根据权利要求
4所述的方法,其特征在于,在所述设在隧道入口的交换机收到IPv6报文之前还包括在所述交换机中预先设置所述下一跳二层信息的操作,具体包括根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;将该IPv4地址及所述对应的下一跳二层信息保存在所述隧道二层信息表的对应表项中。
6.根据权利要求
3或5所述的方法,其特征在于,所述根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息具体包括根据该IPv4地址查找所述交换机中预设的IPv4路由表,如果找到对应表项则从该表项中提取对应的下一跳二层信息,并将预设的所述隧道接口的IPv6地址与所述IPv4地址保存在预设的数据结构中;如果未找到对应表项则查找获得所述交换机中预设的缺省路由,从该缺省路由中提取对应的下一跳二层信息。
7.根据权利要求
6所述的方法,其特征在于,还包括在更新或删除所述交换机中预设的IPv4路由表项后,查找所述数据结构中是否包括该IPv4路由表项中的目的IPv4地址,否则结束;是则提取该数据结构中与该目的IPv4地址对应的隧道接口的IPv6地址,并查找所述交换机中预设的I Pv6路由表中是否包括下一跳的IP地址为所述IPv6地址的表项,否则结束,是则根据所更新或删除的IPv4路由表项中的下一跳二层信息,更新或删除与所述IPv6地址对应的、预先设置的下一跳二层信息。
8.一种交换机中IPv6报文的转发装置,其特征在于,包括查找模块,用于在收到IPv6报文后通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;封装模块,与所述查找模块连接,用于根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头;转发模块,与所述封装模块连接,用于将所述封装模块封装后的报文转发给所述下一跳二层信息对应的下一跳设备。
9.根据权利要求
8所述的装置,其特征在于,所述查找模块用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息以及下一跳二层信息。
10.根据权利要求
9所述的装置,其特征在于,还包括二层信息提取模块,用于根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;IPv6路由表设置模块,与所述二层信息提取模块连接,用于根据所述隧道接口的地址属性获取对应的IPv6地址,根据该IPv6地址查找所述交换机中预设的IPv6路由表,获得对应的IPv6路由表项,并将所述下一跳二层信息保存在该IPv6路由表项中。
11.根据权利要求
8所述的装置,其特征在于,所述查找模块包括IPv6路由表查找模块,用于查找所述交换机中预先设置的IPv6路由表,获得与该IPv6报文对应的IPv6路由表项,从该IPv6路由表项中提取对应的IPv4封装信息;隧道二层信息表查找模块,与所述IPv6路由表查找模块连接,用于根据所述IPv4封装信息中的目的IPv4地址查找所述交换机中预先设置的隧道二层信息表,获得对应的隧道二层信息表项,从该隧道二层信息表项中提取对应的下一跳二层信息。
12.根据权利要求
11所述的装置,其特征在于,还包括二层信息提取模块,用于根据预先设置的隧道接口的地址属性获取对应的IPv4地址,根据该IPv4地址查找所述交换机中预设的IPv4路由表获得对应的下一跳二层信息;隧道二层信息表设置模块,与所述二层信息提取模块连接,用于将所述IPv4地址及所述对应的下一跳二层信息保存在所述隧道二层信息表的对应表项中。
13.根据权利要求
10或12所述的装置,其特征在于所述二层信息提取模块用于根据该IPv4地址查找所述交换机中预设的IPv4路由表,如果找到对应表项则从该表项中提取对应的下一跳二层信息,并将预设的所述隧道接口的IPv6地址与所述IPv4地址保存在预设的数据结构中;如果未找到对应表项则查找获得所述交换机中预设的缺省路由,从该缺省路由中提取对应的下一跳二层信息。
14.根据权利要求
13所述的装置,其特征在于,还包括二层信息更新模块,用于在更新或删除所述交换机中预设的IPv4路由表项后,查找所述数据结构中是否包括该IPv4路由表项中的目的IPv4地址,否则结束;是则提取该数据结构中与该目的IPv4地址对应的隧道接口的IPv6地址,并查找所述交换机中预设的IPv6路由表中是否包括下一跳的IP地址为所述IPv6地址的表项,否则结束,是则根据所更新或删除的IPv4路由表项中的下一跳二层信息,更新或删除与所述IPv6地址对应的、预先设置的下一跳二层信息。
专利摘要
本发明公开了一种交换机中IPv6报文的转发方法,包括设在隧道入口的交换机收到IPv6报文后,通过查找交换机中预先设置的IPv6路由表获得预设的、与该IPv6报文的目的IPv6地址对应的IPv4封装信息以及下一跳二层信息;根据所述IPv4封装信息将该IPv6报文加上IPv4头封装成IPv4报文,并根据所述下一跳二层信息将该IPv4报文加上二层头后,转发给所述下一跳二层信息对应的下一跳设备。本发明还公开了一种交换机中IPv6报文的转发装置。本发明能够有效地节省带宽并提高报文转发速率。
文档编号H04L29/06GK1996929SQ200710063259
公开日2007年7月11日 申请日期2007年1月5日
发明者秦琳, 郑上闽 申请人:杭州华为三康技术有限公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1