互联网协议第6版IPv6报文处理方法和装置与流程

文档序号:11843527阅读:323来源:国知局
互联网协议第6版IPv6报文处理方法和装置与流程

本发明涉及通信领域,具体而言,涉及一种互联网协议第6版IPv6报文处理方法和装置。



背景技术:

互联网协议第4版(Internet Protocol Version 4,简称为IPv4)经过多年的发展和完善,取得了巨大的成功,然而随着互联网的快速持续发展,当前IPv4存在的地址空间缺乏,路由表急剧膨胀等缺陷和不足使得它不能满足这种日益增长的需要,互联网协议第6版(Internet Protocol Version 6,简称为IPv6)正是为解决IPv4中存在的问题而产生的,其优越的特性为互联网的进一步发展提供了更好的支持,在当前的IPv4网络环境下部署IPv6网点,IPv4/IPv6过渡机制是必然和必须的,其过渡过程是复杂和困难的,IPv6配置的隧道适用于通过IPv4连接孤立的IPv6网络,是IPv4向IPv6过渡的初期最易于采用的技术。

IPv6快速部署(IPv6Rapid Deployment,简称为6RD)使用无状态的地址映射,将IPv6分组封装在IPv4报文中穿越IPv4基础网络,6RD业务提供商使用自己已获得的实际长度可变的地址前缀,其作用域局限在运营商的管理域内,图1是根据本发明实施例的IPv6地址的结构示意图,如图1所示,IPv6地址组成包括:6RD分配前缀,由服务提供商(Service Provide,简称为SP)分配的6RD前缀(图1中的6rd prefix)和通信终端(Communication Edge,简称为CE)的IPv4地址(图1中的IPv4address)构成。

IPv6到IPv4(Internet Protocol Version 4to Internet Protocol Version 6,简称为6to4)隧道是点到多点的自动隧道,主要用于将多个IPv6孤岛通过IPv4网络连接到IPv6网络,6to4隧道通过在IPv6报文的目的地址中嵌入IPv4地址,来实现自动获取隧道终点的IPv4地址;6to4隧道采用特殊的6to4地址,其格式为:2002:abcd:efgh:子网号::接口ID/64,其中2002表示固定的IPv6地址前缀,abcd:efgh表示该6to4隧道对应的32位全球唯一的IPv4源地址,用16进制表示(如1.1.1.1可以表示为0101:0101);2002:abcd:efgh之后的部分唯一标识了一个主机在6to4网络内的位置,通过这个嵌入的IPv4地址可以自动确定隧道的终点,使隧道的建立非常方便,由于6to4地址的64位地址前缀中的16位子网号可以由用户自定义,前缀中的前48位(即固定值0x2002+IPv4地址)已由固定数值、隧道起点或终点设备的IPv4地址确定,使IPv6报文通过隧道进行转发成为可能。

在相关技术中,针对过渡过程已经提出了很多方案,然而这些方案的提出都是适应 某种实际场景的,但是,到目前为止,仍没有一种方案可以解决所有的通信场景问题,因此融合多种过渡技术是当前网络设备必须具备的能力。

针对相关技术中如何融合多种过渡技术实现隧道业务的处理的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明提供了一种互联网协议第6版IPv6报文处理方法和装置,以至少解决相关技术中如何融合多种过渡技术实现隧道业务的处理的问题。

根据本发明的一个方面,提供了一种互联网协议第6版IPv6报文处理方法,包括:接收IPv6报文,确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息,依据确定的业务配置信息对IPv6报文进行处理。

在本发明实施例中,至少两种业务类型包括以下至少之一:IPv6快速部署6RD业务、IPv6到互联网协议第4版IPv4 6to4业务、IPv6通过IPv4连接6in4业务。

在本发明实施例中,在业务类型为6RD业务的情况下,依据确定的业务配置信息对IPv6报文进行处理包括:依据IPv6报文对应的IPv6地址,获取6RD业务对应的业务配置信息,依据6RD业务对应的业务配置信息计算出IPv6地址对应的IPv4地址,依据计算出的IPv4地址对IPv6报文进行封装和转发。

在本发明实施例中,在业务类型为所述6to4业务的情况下,依据确定的业务配置信息对IPv6报文进行处理包括:依据IPv6报文对应的IPv6地址,获取6to4业务的业务配置信息,依据6to4业务对应的业务配置信息计算出IPv6报文对应的IPv6地址对应的IPv4地址,依据计算出的IPv4地址对IPv6报文进行封装和转发,其中,6to4业务的业务配置信息为预设固定值。

在本发明实施例中,业务配置信息包括但不限于:IPv4地址的主机路由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址。

根据本发明的另一方面,提供了一种互联网协议第6版IPv6报文处理装置,包括:接收模块,用于接收IPv6报文,确定模块,用于确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息,处理模块,用于依据确定的业务配置信息对IPv6报文进行处理。

在本发明实施例中,至少两种业务类型包括以下至少之一:IPv6快速部署6RD业务、IPv6到互联网协议第4版IPv4 6to4业务、IPv6通过IPv4连接6in4业务。

在本发明实施例中,处理模块包括:第一获取单元,用于在业务类型为所述6RD业务的情况下,依据IPv6报文对应的IPv6地址,获取6RD业务对应的业务配置信息,第一计算单元,用于依据6RD业务对应的业务配置信息计算出IPv6地址对应的IPv4 地址,第一处理单元,用于依据计算出的IPv4地址对IPv6报文进行封装和转发。

在本发明实施例中,处理模块还包括:第二获取单元,用于在业务类型为6to4业务的情况下,依据IPv6报文对应的IPv6地址,获取6to4业务的业务配置信息,第二计算单元,用于依据6to4业务对应的业务配置信息计算出IPv6报文对应的IPv6地址对应的IPv4地址,第二处理单元,用于依据计算出的IPv4地址对IPv6报文进行封装和转发。

在本发明实施例中,业务配置信息包括但不限于:IPv4地址的主机路由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址。

通过本发明,采用互联网协议第6版IPv6报文处理解决了如何融合多种过渡技术实现隧道业务的处理的问题,进而达到了简捷地融合多种过渡技术实现隧道业务处理的效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的IPv6地址的结构示意图;

图2是根据本发明实施例的互联网协议第6版IPv6报文处理方法的流程图;

图3是根据本发明可选实施例的互联网协议第6版IPv6报文处理方法的优选实施例一的流程图;

图4是根据本发明可选实施例的互联网协议第6版IPv6报文处理方法的优选实施例二的流程图;

图5是根据本发明实施例的互联网协议第6版IPv6报文处理装置的结构框图;

图6是根据本发明实施例的互联网协议第6版IPv6报文处理装置的第一种可选的实施例的结构框图;

图7是根据本发明实施例的互联网协议第6版IPv6报文处理装置的第二种可选的实施例的结构示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

在本实施例中提供了一种互联网协议第6版IPv6报文处理方法,图2是根据本发明实施例的互联网协议第6版IPv6报文处理方法的流程图,如图2所示,该流程包括如下步骤:

步骤S202,接收IPv6报文;

在上述步骤S202中,网络处理器接收IPv6报文,接收IPv6报文是融合多种过渡技术实现隧道业务的处理的前提,其中,上述网络处理器是互联网协议第6版IPv6报文处理方法的执行主体,但是,需要说明的是,本发明实施例的互联网协议第6版IPv6报文处理方法的执行主体并不限于此。

步骤S204,确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息;

在上述步骤S204中,网络处理器确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息,也就是说,网络处理器预先配置了至少两种业务类型,其中,业务类型包括业务配置信息,在接收到IPv6报文后,确定与IPv6报文对应的业务配置信息,其中,通过预先配置业务类型使得网络处理器在接收到IPv6报文后可以确定与IPv6报文对应的业务配置信息,本发明中,通过配置多种业务类型能够融合多种过渡技术,从而通过简捷的方法融合了多种过渡技术来处理IPv6报文。

步骤S206,依据确定的业务配置信息对IPv6报文进行处理。

在上述步骤S206中,网络处理器依据确定的业务配置信息对IPv6报文进行处理,也就是说,网络处理器在确定了与IPv6报文对应的业务配置信息后,依据与IPv6报文对应的业务配置信息对IPv6报文进行处理,这样,通过配置好的业务配置信息对IPv6报文进行处理,那么,配置不同的业务配置信息就可以对IPv6报文进行不同的处理,而不同的过渡技术对应不同的业务类型的业务配置信息,因此,本发明完成了多种过渡技术的融合。

通过上述步骤,接收IPv6报文,确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息,依据确定的业务配置信息对IPv6报文进行处理解决了如何融合多种过渡技术实现隧道业务的处理的问题,降低了融合多种过渡技术的复杂度。

一种可选的实施方式,至少两种业务类型包括以下至少之一:IPv6快速部署6RD业务、IPv6到互联网协议第4版IPv4 6to4业务、IPv6通过IPv4连接6in4业务。

网络处理器配置业务类型可以包括:6RD业务、或6to4业务、或6in4业务,其中,配置6RD业务可以采用以下方式:置位6RD的标志位,配置6RD前缀(6RD prefix),配置6RD隧道IPv4地址的主机路由长度即IPv4address length,计算出IPv4地址的子网路由地址,子网路由地址IPv4Dip Net address=sip&&(32-IPv4address length),其中,sip为源IP地址;将IPv4地址的主机路由长度写入表项IPv4address length,将IPv4地址的主机路由起始位置写入表项IPv4address start;

同样的,配置6to4业务可以包括:置位6RD的标志位,固定写入IPv4地址的子网路由地址IPv4Dip Net address,即IPv4Dip Net address=0,固定写入IPv4地址的主机路由长度IPv4address length,即IPv4address length=0x20,固定写入IPv4地址的主机路由起始位置IPv4address start,即IPv4address start=0x50;这样,将业务配置信息写入到路由表中,使得在接收到IPv6报文后可以从路由表中获取到与IPv6报文对应的业务配置信息,进而完成6RD或6to4隧道的封装和转发。

例如,图3是根据本发明可选实施例的互联网协议第6版IPv6报文处理方法的优选实施例一的流程图,如图3所示,本实施例一为隧道业务的配置步骤,可选地,在本实施例一中,隧道业务的配置步骤如下:

S1,设置6RD业务类型标志位;

S2,配置源IP地址sip,配置6RD前缀(6RD prefix),配置6RD隧道IPv4地址的主机路由长度即IPv4address length;

S3,计算出IPv4地址的子网路由地址,子网路由地址IPv4Dip Net address=sip&&(32-IPv4address length);

S4,将IPv4地址的主机路由长度写入路由表项IPv4address length;

S5,将IPv4地址的主机路由起始位置写入路由表项IPv4address start。

可选地,隧道业务的配置步骤还可以如下:

S1,配置6to4业务类型,设置6RD业务类型标志位;

S2,配置源IP地址sip;

S3,固定写入IPv4地址的子网路由地址,IPv4Dip Net address=0,固定写入IPv4地址的主机路由长度,IPv4address length=0x20,固定写入IPv4地址的主机路由起始位置,IPv4address start=0x50。

一种可选的实施方式,在业务类型为6RD业务的情况下,依据确定的业务配置信息对IPv6报文进行处理包括:依据IPv6报文对应的IPv6地址,获取6RD业务对应的业务配置信息,依据6RD业务对应的业务配置信息计算出IPv6地址对应的IPv4地址,依据计算出的IPv4地址对IPv6报文进行封装和转发。

可选地,在业务类型为6RD业务的情况下,也就是网络处理器预先配置的是6RD业务的情况下,网络处理器依据IPv6报文对应的IPv6地址查找对应的路由表,从查找表中获取6RD业务对应的业务配置信息,依据6RD业务对应的业务配置信息来计算出IPv6地址对应的IPv4地址,其中,IPv4目的地址=子网路由地址+主机路由地址,用公式表示为:IPv4Dip address=IPv4Dip host address+IPv4Dip Net address,根据计算出来的IPv4Dip address查找IPv4的路由表,对IPv6报文进行隧道封装和转发;这样,根据 IPv4目的地址的计算公式计算出IPv4目的地址,进而完成了6RD隧道技术。

一种可选的实施方式,在业务类型为6to4业务的情况下,依据确定的业务配置信息对IPv6报文进行处理包括:依据IPv6报文对应的IPv6地址,获取6to4业务的业务配置信息,依据6to4业务对应的业务配置信息计算出IPv6报文对应的IPv6地址对应的IPv4地址,依据计算出的IPv4地址对IPv6报文进行封装和转发,其中,6to4业务的业务配置信息为预设固定值。

可选地,在业务类型为6to4业务的情况下,也就是网络处理器预先配置的是6to4业务的情况下,网络处理器依据IPv6报文对应的IPv6地址查找对应的路由表,从查找表中获取6to4业务对应的业务配置信息,依据6to4业务对应的业务配置信息来计算出IPv6地址对应的IPv4地址,其中,IPv4目的地址=子网路由地址+主机路由地址,用公式表示为:IPv4Dip address=IPv4Dip host address+IPv4Dip Net address,根据计算出来的IPv4Dip address查找IPv4的路由表,对IPv6报文进行隧道封装和转发;在6to4业务中,6to4业务的业务配置信息为预设固定值,具体为:IPv4地址的子网路由地址IPv4Dip Net address=0,IPv4地址的主机路由长度IPv4address length=0x20,IPv4地址的主机路由起始位置IPv4address start=0x50;这样,根据IPv4目的地址的计算公式计算出IPv4目的地址,进而完成了6to4隧道技术。

例如,图4是根据本发明可选实施例的互联网协议第6版IPv6报文处理方法的优选实施例二的流程图,如图4所示,在本实施例二为对IPv6报文处理的流程图,包括如下步骤:

步骤1,IPv6报文进入网络处理器,进行IPv6目的IP的获取,查找IPv6路由;

步骤2,根据路由结果判断,如果此时6RD标志位置位,按照步骤3的算法进行IPv4地址的计算,否则跳过6RD的处理;

步骤3,进行IPv4主机路由地址的计算,从路由查找结果中获取IPv4address start、IPv4address length,其中要求计算算法中IPv4address start取值范围支持0-127,IPv4address length取值范围支持1-32,计算出IPv4地址的主机路由地址IPv4Dip host address。如果此时是6to4隧道,获取到的IPv4address start恒为0x50,IPv4address length恒为0x20;

步骤4,IPv4目的地址=子网路由地址+主机路由地址,IPv4Dip address=IPv4Dip host address+IPv4Dip Net address,根据计算出来的IPv4Dip address查找IPv4路由表,进行隧道封装和转发。

一种可选的实施方式,业务配置信息包括但不限于:IPv4地址的主机路由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址。

可选地,配置出的业务类型中的业务配置信息中包括但不限于:IPv4地址的主机路 由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址;其中,在6RD业务中,通过开发人员根据业务需求来配置出IPv4地址的主机路由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址;在6to4业务中,开发人员配置6to4业务的业务配置信息为预设固定值;通过上层业务类型的配置,将相关业务配置信息提取出来,写入到对应的路由表中,供网络处理器处理报文时查路由表时使用。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

在本实施例中还提供了一种互联网协议第6版IPv6报文处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图5是根据本发明实施例的互联网协议第6版IPv6报文处理装置的结构框图,如图5所示,该装置包括:接收模块52、确定模块54和处理模块56。

接收模块52,用于接收IPv6报文;

确定模块54,连接至上述接收模块52,用于确定预先配置的至少两种业务类型中与IPv6报文对应的业务配置信息;

处理模块56,连接至上述确定模块54,用于依据确定的业务配置信息对IPv6报文进行处理。

一种可选的实施例,至少两种业务类型包括以下至少之一:IPv6快速部署6RD业务、IPv6到互联网协议第4版IPv4 6to4业务、IPv6通过IPv4连接6in4业务。

图6是根据本发明实施例的互联网协议第6版IPv6报文处理装置的第一种可选的实施例的结构框图,如图6所示,该装置除包括图5所示的所有模块外,上述处理模块56包括:第一获取单元62、第一计算单元64和第一处理单元66。

处理模块56包括:第一获取单元62,用于在业务类型为所述6RD业务的情况下,依据IPv6报文对应的IPv6地址,获取6RD业务对应的业务配置信息,第一计算单元64,连接至第一获取单元62,用于依据6RD业务对应的业务配置信息计算出IPv6地址对应的IPv4地址,第一处理单元66,连接至第一计算单元64,用于依据计算出的IPv4地址对IPv6报文进行封装和转发。

图7是根据本发明实施例的互联网协议第6版IPv6报文处理装置的第二种可选的 实施例的结构框图,如图7所示,该装置除包括图5所示的所有模块外,上述处理模块56包括:第二获取单元72、第二计算单元74和第二处理单元76。

第二获取单元72,用于在业务类型为6to4业务的情况下,依据IPv6报文对应的IPv6地址,获取6to4业务的业务配置信息,第二计算单元74,连接至第二获取单元72,用于依据6to4业务对应的业务配置信息计算出IPv6报文对应的IPv6地址对应的IPv4地址,第二处理单元76,连接至第二计算单元74,用于依据计算出的IPv4地址对IPv6报文进行封装和转发。

一种可选的实施方式,业务配置信息包括但不限于:IPv4地址的主机路由长度、IPv4地址的主机路由起始位置和IPv4地址的子网路由地址。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。

综上所述,本发明实施例提供一种隧道6to4和6RD综合处理的方法,通过寻找一种能涵盖两种甚至更多种(例如6in4)业务类型的算法,配置对应的表项信息,使得网络处理器能方便高效的处理两种业务类型。在软件处理上简化了业务处理流程,节省了代码指令行数。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

本发明提供的6RD算法,通过对6RD算法扩展,该算法可以支持6to4隧道业务,对需要同时支持这两种业务类型的网络,简化了处理流程,优化了代码。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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