一种实现IPv6前缀分配的方法和装置的制作方法

文档序号:7753353阅读:173来源:国知局
专利名称:一种实现IPv6前缀分配的方法和装置的制作方法
技术领域
本发明涉及通信领域,具体涉及一种实现IPv6前缀(Prefix)分配的方法和装置。
背景技术
Internet的高速发展与规模的急剧扩大,使现有的IPv4在扩展性上面临很多问题,例如地址空间不足等。于是,人们开发了 IPv6,目的便是用于解决上述问题。IPv6协议族中的邻居发现协议(Neighbor Discovery Protocol)可被简称为ND 协议,可以被用来完成主机的IPv6地址配置、地址解析和路由器发现等功能,易于实现并大大简化了网络部署。在IPv6的部署场景中,对于用户站点(Customer's Sites)而言,作为其网关的用户侧设备(Customer premises equipment,CPE)需要向位于服务提供商一侧的运营商边缘设备(Provider Edge device, ΡΕ)申请IPv6前缀,用于站点的地址分配。目前,用户站点IPv6前缀的分配无法通过ND协议本身完成,而是需要通过动态主机配置协议版本6 (Dynamic Host configuration Protocol version 6, DHCPv6)的Prefix Delegation扩展选项功能来实现。上述的现有用户站点IPv6前缀分配方法,除ND协议族本身,还需要引入额外的机制,多种机制的共存给设备间的互操作带来严重影响;另外,也增加设备实现及运行的开销并带来不稳定因素。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现IPv6前缀分配的方法和装置,采用ND协议来完成IPv6前缀的分配,不需要额外的机制。为达到上述目的,本发明的技术方案是这样实现的一种实现IPv6前缀分配的方法,该方法包括将分配的IPv6前缀置于路由器通告(Router Advertisement, RA)报文中的PIO 字段,并在RA报文中设置IPv6前缀分配标识;将携带有IPv6前缀以及IPv6前缀分配标识的RA报文发送给IPv6前缀请求方。所述设置IPv6前缀分配标识的方法为将PIO字段中L位和A位的值置为0 ;或者,在PIO字段中的保留字段设置表示分配IPv6前缀的标识位;或者,在RA报文的其它位置设置表示分配IPv6前缀的标识位。该方法进一步包括所述IPv6前缀请求方对接收到的RA报文的处理判断收到的RA报文中是否设置有IPv6前缀分配标识,在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀已存在于本地数据库时,刷新本地数据库中相应IPv6前缀条目的老化计时器;在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀不存在于本地数据库时,将该RA报文中的IPv6前缀加入本地数据库,并为该IPv6前缀设置相应的老化计时器。该方法进一步包括所述IPv6前缀请求方对接收到的IPv6前缀的本地数据库维护处理在本地数据库中的IPv6前缀条目的老化计时器超时时,针对该IPv6前缀条目启动抑制计时器;在抑制计时器超时之前,判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,则删除所述抑制计时器;否则,将所述IPv6前缀条目从本地数据库中删除。将所述IPv6前缀置于RA报文中之前,该方法进一步包括接收来自IPv6前缀请求方的路由器查询(Router Solicitation, RS)报文,根据所接收到的RS报文确定要分配的IPv6前缀。一种实现IPv6前缀分配的装置,该装置包括处理模块、发送模块;其中,所述处理模块,用于将分配的IPv6前缀置于RA报文中的PIO字段,并在RA报文中设置IPv6前缀分配标识;所述发送模块,用于将所述处理模块完成处理的RA报文发送给IPv6前缀请求方。所述处理模块在设置IPv6前缀分配标识时,用于将PIO字段中L位和A位的值置为0 ;或者,在PIO字段中的保留字段设置表示分配IPv6前缀的标识位;或者,在RA报文的其它位置设置表示分配IPv6前缀的标识位。所述IPv6前缀请求方包括IPv6前缀维护单元、老化计时器管理单元;这两个单元彼此交互,用于IPv6前缀维护单元判断收到的RA报文中是否设置有IPv6前缀分配标识,在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀已存在于本地数据库时,IPv6前缀维护单元通知老化计时器管理单元刷新本地数据库中相应IPv6前缀条目的老化计时器;在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀不存在于本地数据库时,IPv6前缀维护单元将该RA报文中的IPv6前缀加入本地数据库,并通知老化计时器管理单元为该IPv6 前缀设置相应的老化计时器。所述IPv6前缀请求方进一步包括抑制计时器管理单元,其与IPv6前缀维护单元、 老化计时器管理单元彼此交互,用于老化计时器管理单元在本地数据库中的IPv6前缀条目的老化计时器超时时,通知抑制计时器管理单元针对该IPv6前缀条目启动抑制计时器;在抑制计时器超时之前,老化计时器管理单元判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,老化计时器管理单元通知抑制计时器管理单元删除所述抑制计时器;否则,老化计时器管理单元通知IPv6前缀维护单元将所述IPv6前缀条目从本地数据库中删除。该装置进一步包括读取模块,用于接收来自IPv6前缀请求方的RS报文并发送给所述处理模块;所述处理模块,进一步用于根据所接收到的RS报文确定要分配的IPv6前缀。本发明实现IPv6前缀分配的方法和装置,提供了一种简易的基于ND协议来完成用户站点IPv6前缀分配的操作思路,不需要额外的机制,实现方法简单,从而解决了网络部署中多种分配机制引入的设备间互操作问题,并减少了设备的开销,使得运行更加稳定和健壮。


图1为本发明一实施例实现IPv6前缀分配的装置图;图2为本发明一实施例实现IPv6前缀分配的流程图;图3为本发明一实施例的IPv6前缀本地数据库维护流程图;图4为本发明实现IPv6前缀分配的流程简图。
具体实施例方式总体而言,可以进行如图1所示的设置。参见图1,图1为本发明一实施例实现 IPv6前缀分配的装置图,该装置包括位于PE上的功能实体读取模块;处理模块;发送模块;以及,位于CPE上的功能实体接收模块。具体应用时,PE中的读取模块用于接收来自对端CPE的RS报文,并读取报文中的源地址等信息,之后将获取的信息交由处理模块做进一步处理。处理模块能够根据所接收到的RS报文信息确定是否以及如何选定IPv6前缀,并能够将选定的IPv6前缀置于RA报文的前缀信息选项(Prefix InformationOption, ΡΙΟ) 字段中,并将PIO字段中L位和A位的值置为0。发送模块能够将处理模块生成的包含IPv6前缀以及L位和A位置0的RA报文发送给对端CPE,作为对所接收到的RS报文的回应。CPE中的接收模块用于接收来自对端PE的RA报文,并读取报文中的PIO字段,根据读取的Pio字段内容进行IPv6前缀维护。如判断PIO字段中的I位和A位是否为0, 如果是,进一步读取PIO字段中的IPv6前缀,并判断该IPv6前缀条目是否已经存在于本地数据库中,如果存在,则刷新该IPv6前缀条目的老化计时器的值;如果不存在,则将该IPv6 前缀条目加入本地数据库并设置相应的老化计时器,同时进入本地数据库维护流程。在进行本地数据库维护时,如果本地数据库中某IPv6前缀条目的老化计时器超时,则针对该IPv6前缀条目启动抑制计时器,并向对端PE发送RS报文。在抑制计时器超时之前,判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,则删除抑制计时器;否则,将该IPv6前缀条目从本地数据库中删除。参见图2,图2为本发明一实施例实现IPv6前缀分配的流程图,该流程包括以下步骤步骤202 =CPE发送RS报文至PE之后,PE中的读取模块接收该RS报文并读取其中的源地址等信息,之后交由处理模块做进一步处理。步骤204 =PE中的处理模块根据所接收到的RS报文信息确定是否以及如何选定 IPv6前缀,并将选定的IPv6前缀置于RA报文的PIO字段中,还将PIO字段中L位和A位的值置为0。步骤206 =PE中的发送模块将处理模块生成的RA报文发送给对端CPE,作为对所接收到的RS报文的回应。步骤208 =CPE中的接收模块接收来自对端PE的RA报文,并读取报文中的PIO字段。步骤210 判断收到的RA报文的PIO字段中L位和A位的值是否均为0,如果均为 0,则转入步骤212 ;否则,转入步骤218。步骤212 判断所述PIO字段中的IPv6前缀的值是否已存在于本地数据库,如果已存在,则转入步骤214 ;否则,转入步骤216。步骤214 刷新本地数据库中相应IPv6前缀条目的老化计时器。结束本流程。步骤216 将收到的所述IPv6前缀加入本地数据库,并为该IPv6前缀设置相应的老化计时器,同时还可以进入本地数据库维护流程。结束本流程。步骤218 将所述RA报文按照现有的ND协议规定处理。图2中,步骤210至步骤216可以由CPE中的接收模块统一完成,也可以由CPE 中的相应处理模块根据接收模块所发送的通知执行相应操作,如可以在CPE中设置老化计时器管理单元、抑制计时器管理单元、IPv6前缀维护单元,其中的老化计时器管理单元、 IPv6前缀维护单元彼此配合操作,以执行步骤210至步骤216所包含的操作,如步骤210 :IPv6前缀维护单元判断收到的RA报文的PIO字段中L位和A位的值是否均为0,如果均为0,则转入步骤212 ;否则,转入步骤218。步骤212 :IPv6前缀维护单元判断所述PIO字段中的IPv6前缀的值是否已存在于本地数据库,如果已存在,则转入步骤214 ;否则,转入步骤216。步骤214 :IPv6前缀维护单元通知老化计时器管理单元刷新本地数据库中相应 IPv6前缀条目的老化计时器。结束本流程。步骤216 :IPv6前缀维护单元将收到的所述IPv6前缀加入本地数据库,并通知老化计时器管理单元为该IPv6前缀设置相应的老化计时器,同时还可以进入本地数据库维护流程。结束本流程。步骤218 :IPv6前缀维护单元将所述RA报文按照现有的ND协议规定处理。参见图3,图3为本发明一实施例的IPv6前缀本地数据库维护流程图,该流程包括以下步骤步骤302 在本地数据库中某IPv6前缀条目的老化计时器超时时,针对该IPv6前缀条目启动抑制计时器。步骤304 向对端PE发送RS报文。步骤306 在抑制计时器超时之前,判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,则转入步骤308 ;否则,转入步骤310。步骤308 删除所述抑制计时器。步骤310 将所述IPv6前缀条目从本地数据库中删除。需要说明的是,图3所示的IPv6前缀本地数据库维护操作可以由CPE执行。具体而言,可以应用CPE中的老化计时器管理单元、抑制计时器管理单元、IPv6前缀维护单元彼此配合操作,执行图3所示的流程,如老化计时器管理单元在本地数据库中某IPv6前缀条目的老化计时器超时时,通知抑制计时器管理单元针对该IPv6前缀条目启动抑制计时器。 在抑制计时器超时之前,老化计时器管理单元判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,老化计时器管理单元通知抑制计时器管理单元删除所述抑制计时器;否则,老化计时器管理单元通知IPv6前缀维护单元将所述IPv6前缀条目从本地数据库中删除。需要说明的是,将PIO字段中L位和A位的值置为0的目的在于设置IPv6前缀分配标识,以使收到RA报文的功能实体能够根据该IPv6前缀分配标识获知该RA报文用于分配IPv6前缀。在实际应用中,设置IPv6前缀分配标识的方式多种多样,如在PIO字段中的保留字段设置以数字或字符串等标识位表示的IPv6前缀分配标识,或在RA报文的其它位置设置类似的IPv6前缀分配标识。结合以上技术描述可知,本发明实现IPv6前缀分配的操作思路可以表示如图4所示。参见图4,图4为本发明实现IPv6前缀分配的流程简图,该流程包括以下步骤步骤410 将分配的IPv6前缀置于RA报文中的PIO字段,并在RA报文中设置IPv6 前缀分配标识。步骤420 将携带有IPv6前缀以及IPv6前缀分配标识的RA报文发送给IPv6前
缀请求方。综上所述可见,无论是方法还是装置,本发明实现IPv6前缀分配的技术,提供了一种简易的基于ND协议来完成用户站点IPv6前缀分配的操作思路,不需要额外的机制,实现方法简单,从而解决了网络部署中多种分配机制引入的设备间互操作问题,并减少了设备的开销,使得运行更加稳定和健壮。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种实现IPv6前缀分配的方法,其特征在于,该方法包括将分配的IPv6前缀置于路由器通告RA报文中的PIO字段,并在RA报文中设置IPv6 前缀分配标识;将携带有IPv6前缀以及IPv6前缀分配标识的RA报文发送给IPv6前缀请求方。
2.根据权利要求1所述的方法,其特征在于,所述设置IPv6前缀分配标识的方法为将PIO字段中L位和A位的值置为0 ;或者,在PIO字段中的保留字段设置表示分配IPv6前缀的标识位;或者,在RA报文的其它位置设置表示分配IPv6前缀的标识位。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括所述IPv6前缀请求方对接收到的RA报文的处理判断收到的RA报文中是否设置有IPv6前缀分配标识,在设置有IPv6前缀分配标识, 并且RA报文中的IPv6前缀已存在于本地数据库时,刷新本地数据库中相应IPv6前缀条目的老化计时器;在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀不存在于本地数据库时,将该RA报文中的IPv6前缀加入本地数据库,并为该IPv6前缀设置相应的老化计时器。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括所述IPv6前缀请求方对接收到的IPv6前缀的本地数据库维护处理在本地数据库中的IPv6前缀条目的老化计时器超时时,针对该IPv6前缀条目启动抑制计时器;在抑制计时器超时之前,判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,则删除所述抑制计时器;否则,将所述IPv6前缀条目从本地数据库中删除。
5.根据权利要求1至4任一项所述的方法,其特征在于,将所述IPv6前缀置于RA报文中之前,该方法进一步包括接收来自IPv6前缀请求方的路由器查询RS报文,根据所接收到的RS报文确定要分配的IPv6前缀。
6.一种实现IPv6前缀分配的装置,其特征在于,该装置包括处理模块、发送模块;其中,所述处理模块,用于将分配的IPv6前缀置于RA报文中的PIO字段,并在RA报文中设置IPv6前缀分配标识;所述发送模块,用于将所述处理模块完成处理的RA报文发送给IPv6前缀请求方。
7.根据权利要求6所述的装置,其特征在于,所述处理模块在设置IPv6前缀分配标识时,用于将PIO字段中L位和A位的值置为0 ;或者,在PIO字段中的保留字段设置表示分配IPv6前缀的标识位;或者,在RA报文的其它位置设置表示分配IPv6前缀的标识位。
8.根据权利要求7所述的装置,其特征在于,所述IPv6前缀请求方包括IPv6前缀维护单元、老化计时器管理单元;这两个单元彼此交互,用于IPv6前缀维护单元判断收到的RA报文中是否设置有IPv6前缀分配标识,在设置有 IPv6前缀分配标识,并且RA报文中的IPv6前缀已存在于本地数据库时,IPv6前缀维护单元通知老化计时器管理单元刷新本地数据库中相应IPv6前缀条目的老化计时器;在设置有IPv6前缀分配标识,并且RA报文中的IPv6前缀不存在于本地数据库时,IPv6前缀维护单元将该RA报文中的IPv6前缀加入本地数据库,并通知老化计时器管理单元为该IPv6前缀设置相应的老化计时器。
9.根据权利要求8所述的装置,其特征在于,所述IPv6前缀请求方进一步包括抑制计时器管理单元,其与IPv6前缀维护单元、老化计时器管理单元彼此交互,用于老化计时器管理单元在本地数据库中的IPv6前缀条目的老化计时器超时时,通知抑制计时器管理单元针对该IPv6前缀条目启动抑制计时器;在抑制计时器超时之前,老化计时器管理单元判断所述IPv6前缀条目所对应的老化计时器是否被刷新,如果判断结果为是,老化计时器管理单元通知抑制计时器管理单元删除所述抑制计时器;否则,老化计时器管理单元通知IPv6前缀维护单元将所述IPv6前缀条目从本地数据库中删除。
10.根据权利要求6至9任一项所述的装置,其特征在于,该装置进一步包括读取模块, 用于接收来自IPv6前缀请求方的RS报文并发送给所述处理模块;所述处理模块,进一步用于根据所接收到的RS报文确定要分配的IPv6前缀。
全文摘要
本发明公开了一种实现IPv6前缀分配的方法和装置,均可将分配的IPv6前缀置于路由器通告报文中的PIO字段,并在路由器通告报文中设置IPv6前缀分配标识;将携带有IPv6前缀以及IPv6前缀分配标识的路由器通告报文发送给IPv6前缀请求方。本发明实现IPv6前缀分配的方法和装置,提供了一种简易的基于ND协议来完成用户站点IPv6前缀分配的操作思路,不需要额外的机制,实现方法简单,从而解决了网络部署中多种分配机制引入的设备间互操作问题,并减少了设备的开销,使得运行更加稳定和健壮。
文档编号H04L29/12GK102299974SQ20101021926
公开日2011年12月28日 申请日期2010年6月25日 优先权日2010年6月25日
发明者秦超, 蔡磊 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1