基于以太网点对点协议的IPv6路由建立方法及接入服务器的制作方法

文档序号:7748432阅读:190来源:国知局
专利名称:基于以太网点对点协议的IPv6路由建立方法及接入服务器的制作方法
技术领域
本发明涉及接入控制技术领域,具体涉及基于以太网点对点协议(PPPoE,Point to Point Protocol over Ethernet)的IPv6路由建立方法及宽带远程接入服务器(BRAS, Broadband Remote Access Server)。
背景技术
以太网点对点协议(PPPoE,Point to Point Protocol over Ethernet)作为接入控制协议最为合适。随着IPv6网络的部署,PPPoE支持IPv6势在必行。图1为简单的企业网接入因特网的组网图,如图1所示,宽带远程接入服务器 (BRAS, Broadband Remote Access Server)是 PPPoE 服务器,客户设备(CE,Customer Equipment)是企业网关,实际中BRAS —般接入数量相当多的CE,是点对多点的组网方式。 IPv4网络中,CE局域网(LAN,LocalArea Network)侧的局域网地址通常是10. Χ. Χ. X等私有IP地址,这类地址由用户自己配置,不受运营商干预,比较稳定。CE的非对称数字用户环路(ADSL, Asymmetrical Digital Subscriber Line)侧的接口运行 PPPoE 协议,从运营商处获得公网地址,如果企业的局域网内的个人计算机(PC,PersonalComputer)机想访问外网,则需要在CE ADLS侧的接口下配置网络地址转换(NAT,Network Address Translation) 功能,以将出口报文的源IPv4地址由私网地址转换成公网地址。IPv4技术有几个优势第一、企业网内的私有地址稳定性好;第二、由于NAT技术的使用,运营商的BRAS只需知道到 CE的路由即可,这可通过PPPoE自动实现。在IPv6网络中,由于不存在NAT技术,因此企业局域网的地址必须由运营商分配或是干预,该任务由BRAS实现,可采用DHCPv6的前缀委派(prefix delegate)技术完成。 BRAS作为PPPoE服务器通过DHCPv6协议告知CE企业局域网的IPv6公网前缀,这样,就要求BRAS必须知道到企业局域网的路由,否则无法完成下行流量的转发。目前,有如下解决方案方案一、在BRAS上配置静态路由,使得通过DHCPv6分配的IPv6前缀和下一跳即 CE的ADSL侧接口本地链路地址关联起来。这里,CE的ADSL侧接口也可称作CE的PPPoE接口。该方案的缺点是随着PPPoE客户端数量的增加,静态路由配置工作量变大,且 PPPoE客户端具有动态接入的特性,这样更增加了静态理由配置工作的复杂度。方案二、在BRAS、CE上运行IPv6动态路由协议,让CE将企业网内部的路由通告给 BRAS。该方案的缺点是传统的IPv4协议对BRAS、CE并没有严格的动态路由协议要求,BRAS属于特殊设备,不同于传统路由器,一般不支持动态路由协议,且CE有可能是低端设备,如果运行如开放式最短路径优先版本3(0SPFv3,Open Shortest Path First Version3)这样的动态路由协议会导致配置复杂和设备负担过重。另外,即使对于IPv6,CE也只需支持默认的静态路由,无需支持动态路由协议。方案三、CE使用邻居发现(ND,Neighbor Discovery)代理技术,BRAS认为所有CE 的地址和企业网内部的地址属于一个大的IPv6直连网段,因此通过ND技术即可找到每个 IPv6地址对应的ADLS链路。该方案的缺点是=PPPoE适用于广域网,而ND是基于局域网组播能力的协议,在广域网中使用ND会引起很大的组播报文负担,且BRAS要学习到数量巨大的ND表项,另外,由于BRAS侧与CE相连的接口的IPv6前缀必须与CE的ADSL侧接口本地链路地址前缀一致, 这样,BRAS侧与CE相连的接口的IPv6前缀的配置也不够灵活。

发明内容
本发明提供基于PPPoE的IPv6路由建立方法及BRAS,以使得BRAS无需支持动态路由协议和ND代理功能,即可实现BRAS成功转发下行IPv6流量,同时降低BRAS的配置负担。本发明的技术方案是这样实现的一种基于以太网点对点协议PPPoE的IPv6路由建立方法,在宽带远程接入服务器 BRAS上配置IPv6前缀池,该方法包括BRAS与客户设备CE建立PPPoE会话,与CE进行PPPoE协商和认证过程;BRAS接收CE发来的动态主机配置协议DHCPv6请求报文,将从IPv6前缀池中取出的一个前缀返回给CE,同时,将该前缀加入自身的IPv6路由表中,且设置该前缀的下一跳为CE的PPPoE接口本地链路地址,以使得CE将所述前缀分配给第一用户主机,从而第一用户主机根据所述前缀生成自身的IPv6地址并使用该IP v6地址与其它用户主机交互IPv6数据报文;BRAS根据自身的IPv6路由表转发IPv6数据报文。所述BRAS接收CE发来的DHCPv6请求报文之后、将从前缀池中取出的一个前缀返回给CE之前进一步包括BRAS从前缀池中随机取出一个前缀。预先在BRAS上配置CE的PPPoE用户名与IPv6前缀的关联关系;所述BRAS与CE进行PPPoE协商和认证过程包括CE与BRAS开始PPPoE协商和认证过程,且在该过程中,CE将自身的PPPoE用户名通知BRAS,BRAS根据CE的PPPoE用户名和所述关联关系,从IPv6前缀池中取出一个前缀, 并缓存该前缀;且,所述BRAS将从前缀池中取出的一个前缀返回给CE为BRAS将缓存的前缀返回给CE。所述BRAS将该前缀加入自身的IPv6路由表中之后进一步包括BRAS发现所述CE与自身间的连接断开,根据所述CE的PPPoE接口本地链路地址查找到对应的IPv6路由,将该路由删除,同时,将分配给所述CE的前缀重新添加到前缀池中。所述BRAS将该前缀加入自身的IPv6路由表中之后进一步包括BRAS接收到CE发来的前缀释放报文,根据所述CE的PPPoE接口本地链路地址查找到对应的IPv6路由,将该路由删除,同时,将分配给所述CE的前缀重新添加到前缀池中。
所述BRAS根据自身的IPv6路由表转发IPv6数据报文包括BRAS接收其它用户主机发来的IPv6数据报文,报文的目的IP地址为第一用户主机的IPv6地址,BRAS在自身的IPv6路由表中查找该目的IP地址的前缀对应的下一跳,根据该下一跳将该IPv6数据报文转发给所述CE,以使得所述CE根据报文的目的IP地址将报
文转发给第一用户主机。一种宽带远程接入服务器BRAS,该服务器包括IPv6前缀池模块保存配置的多个IPv6前缀;前缀分配模块与CE建立PPPoE会话,与CE进行PPPoE协商和认证过程,认证通过,接收CE发来的DHCPv6请求报文,将从IPv6前缀池模块中取出的一个前缀返回给CE,同时,在IPv6路由表模块中添加新的路由,该路由的目的前缀为所取出的前缀,下一跳为所述CE的PPPoE接口本地链路地址;IPv6路由表模块保存IPv6路由;IPv6数据转发模块接收IPv6数据报文,根据IPv6路由表模块中保存的IPv6路由转发该报文。所述IPv6前缀池模块进一步用于,保存CE的PPPoE用户名与IPv6前缀的关联关系;且,所述前缀分配模块进一步用于,在PPPoE协商和认证过程中获取CE的PPPoE 用户名,根据该用户名和IPv6前缀池模块中的所述关联关系,从IPv6前缀池模块中取出一个前缀,并缓存该前缀,以便在接收到所述CE的DHCPv6请求报文后,将该前缀返回给CE。该服务器进一步包括前缀释放模块发现与所述CE的连接断开,则根据CE的PPPoE接口本地链路地址的前缀,在IPv6路由表模块中查找到对应的路由,将该路由删除,同时,将该路由中的IPv6 前缀添加到IPv6前缀池模块。与现有技术相比,本发明中,BRAS无需支持动态路由协议和ND代理功能,同时 BRAS上只需配置IPv6前缀池,配置简单,减轻了运营商的维护成本;另外,也无需CE支持动态路由协议和ND代理功能,同时CE的配置保持不变,简化了客户的网络配置,减轻了客户负担。


图1为现有的简单的企业网接入因特网的组网图示意图;图2为本发明实施例提供的基于PPPoE的IPv6路由建立方法流程图;图3为本发明实施例提供的BRAS的组成图。
具体实施例方式下面结合附图及具体实施例对本发明再作进一步详细的说明。图2为本发明实施例提供的基于PPPoE的IPv6路由建立方法流程图,如图2所示, 其具体步骤如下步骤201 在BRAS上配置IPv6前缀池,该前缀池中包含多个互不相同的IPv6前
这里,可由网管等在BRAS上配置IPv6前缀池,另外,网管等还可在BRAS上配置CE 的PPPoE用户名与IPv6前缀的关联关系。步骤202 任一 CE (设为CEl)上线,通过PPPoE发现过程与BRAS建立PPPoE会话。PPPoE发现过程如下01 =CEl广播PPPoE有效发现初始(PADI)报文,报文包含服务名称类型 (Service-Name)标签,以提出所要求提供的服务。02 =BRAS接收PADI报文,响应PPPoE有效发现提供(PADO)报文,该报文包含接入设备名称类型标签以及一个或多个服务名称类型标签,表明自身可提供的服务种类。步骤03 =CEl根据接收到的所有PADO报文,选择一个合适的BRAS,向所选择的 BRAS发送PPPoE有效发现请求(PADR)报文,该报文中包含服务名称类型标签,以确定向 BRAS请求的服务。选择BRAS的原则是根据PADO报文中接入设备名称类型标签和服务名称类型标签的内容。 04 =BRAS接收PADR报文准备开始PPP会话,响应PPPoE有效发现会话确认(PADS) 报文,该报文包含PPPOE会话标识号码和服务名称类型标签,以确认向用户提供的服务。当CEl接收到PADS报文后,双方就进入PPP会话阶段。步骤203 =CEl与BRAS进行PPPOE协商和认证过程。通常,整个协商过程分为三部分链路控制协议(LCP,Link ControlProtocol)协商、口令验证协议(PAP,Password Authentication Protocol)协商、因特网协议控制协议 (IPCP, Internet Protocol Control Protocol)协商。步骤204 PPPOE协商和认证过程成功完成,CEl向BRAS发送DHCPv6请求 (Solicit)报文,以请求BRAS分配IPv6前缀和网络配置参数,报文的源地址为CEl的PPPoE 接口本地链路地址。步骤205 =BRAS接收DHCPv6请求报文,从IPv6前缀池中取出一个前缀,将该前缀携带在响应报文中发送给CEl,同时,将取出的前缀加入自身的IPv6路由表中,且设置该前缀的下一跳为CEl的PPPoE接口本地链路地址。这里,若BRAS上未配置CEl的PPPoE用户名与IPv6前缀的关联关系,则BRAS可从IPv6前缀池中随机取出一个前缀。若BRAS上配置了 CE的PPPoE用户名与IPv6前缀的关联关系,则BRAS可根据该关联关系,确定CEl的PPPoE用户名对应的IPv6前缀,从IPv6前缀池中取出该前缀。其中, CEl在PPPOE协商和认证过程中会将自身的PPPoE用户名提供给BRAS,BRAS可在获得CEl 的PPPoE用户名后,立即根据该用户名从IPv6前缀池中取出一个前缀,并缓存该前缀,之后在收到CEl发送的DHCPv6请求报文后,将该前缀携带在响应报文中发送给CE1。步骤206 =CEl接收响应报文,保存该报文中的IPv6前缀。步骤207 =CEl接收用户主机1发来的路由器请求(RS,Router Solicit)报文,将自身保存的IPv6前缀携带在路由器通告(RA,Router Advertisement)报文中返回给用户主机1。步骤208 用户主机1接收RA报文,采用地址无状态自动配置方式根据报文中的 IPv6前缀生成自身的IPv6地址。
这里,用户主机1可根据IPv6前缀和自身的媒体接入控制(MAC,MediaAccess Control)地址生成自身的IPv6地址,也可以根据IPv6前缀和自身生成的随机数生成自身的IPv6地址。步骤209 用户主机1使用自身生成的IPv6地址与其它用户主机交互IPv6数据报文。步骤210 =BRAS接收到其它用户主机发来的IPv6数据报文,报文的目的IP地址为用户主机1的IPv6地址,BRAS在自身的IPv6路由表中查找该目的IP地址的前缀对应的下一跳,根据该下一跳将该IPv6数据报文转发给CEl。步骤211 =CEl根据IPv6数据报文的目的IPv6地址,将报文转发给用户主机1。步骤212 :BRAS发现CEl与自身间的连接断开,则根据CEl的PPPoE接口本地链路地址的前缀查找到对应的IPv6路由,将该路由删除,同时,将该路由中的IPv6前缀即为 CEl分配的IPv6前缀重新添加到IPv6前缀池中。为CEl分配的IPv6前缀重新添加到IPv6前缀池中后,该前缀可以继续分配给其它CE使用。BRAS通过PPP保活报文也可以检测CE是否还存在,如果不存在,则执行步骤212。另外,DHCPv6本身支持前缀释放,例如CE也可以向BRAS发送前缀释放请求报文, BRAS收到该报文后,则执行步骤212。以下给出一个本发明的应用示例设CEl的PPPoE接口本地链路地址是FE80::200:FF:FE56,BRAS上配置有一个 IPv6前缀池。当CEl通过PPPoE协商和认证后,运行DHCPv6协议,向BRAS发送请求报文, BRAS收到请求报文,将前缀2002: :/48分配给CEl,同时将前缀2002: :/48添加到IPv6路由表中,并将2002: :/48的下一跳设置为FE80::200:FF:FE56。在IPv6路由表中添加的新路由可如下目的前缀2002: :/48协议DHCPv6下一跳FE80 200 FF FE56优先级0接口标识虚拟模板(VT,VirtualTemplate) 1路径花代价20若有其它用户主机如CE2与CEl同时接入BRAS,则BRAS可将另一前缀如 2003: :/48分配给CE2,并添加新的IPv6路由,路由的前缀为2003: /48,下一跳为CE2的 PPPoE接口本地链路地址。从本发明实施例可以看出BRAS无需支持动态路由协议、也无需支持ND代理功能,且BRAS上只需配置一个IPv6前缀池,配置简单,运营商的维护成本较低;CE的配置保持不变,同时也无需支持动态路由协议和ND代理功能。且,IPv6前缀池中的前缀可以在不同时刻分配给不同的CE使用。图3为本发明实施例提供的BRAS的组成图,如图3所示,其主要包括IPv6前缀池模块31、前缀分配模块32、IPv6路由表模块33和IPv6数据转发模块34,其中IPv6前缀池模块31 保存配置的多个IPv6前缀。
前缀分配模块32 与CE建立PPPoE会话,与CE进行PPPoE协商和认证过程,认证通过,接收CE发来的DHCPv6请求报文,将从IPv6前缀池模块31中取出的一个前缀返回给 CE,同时,在IPv6路由表模块33中添加新的路由,该路由的目的前缀为所取出的前缀,下一跳为所述CE的PPPoE接口本地链路地址。IPv6路由表模块33 保存IPv6路由。IPv6数据转发模块34 接收IPv6数据报文,根据IPv6路由表模块33中保存的 IPv6路由转发该报文。其中,IPv6前缀池模块31还可用于,保存CE的PPPoE用户名与IPv6前缀的关联关系;同时,前缀分配模块32进一步用于,在PPPoE协商和认证过程中获取CE的PPPoE用户名,根据该用户名和IPv6前缀池模块31中保存的关联关系,从IPv6前缀池模块31中取出一个前缀,并缓存该前缀,以便在接收到所述CE的DHCPv6请求报文后,将该前缀返回给 CE。在实际应用中,BRAS还可包括前缀释放模块当发现与一个CE的连接断开时,根据该CE的PPPoE接口本地链路地址的前缀,在IPv6路由表模块中查找到对应的路由,将该路由删除,同时,将该路由中的 IPv6前缀添加到IPv6前缀池模块31。本发明实施例中,CE与BRAS之间的链路可以是ADSL、甚高速数字用户环路(VDSL, Very-high-bit-rate Digital Subscriber loop)等。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种基于以太网点对点协议PPPoE的IPv6路由建立方法,其特征在于,在宽带远程接入服务器BRAS上配置IPv6前缀池,该方法包括BRAS与客户设备CE建立PPPoE会话,与CE进行PPPoE协商和认证过程;BRAS接收CE 发来的动态主机配置协议DHCPv6请求报文,将从IPv6前缀池中取出的一个前缀返回给CE, 同时,将该前缀加入自身的IPv6路由表中,且设置该前缀的下一跳为CE的PPPoE接口本地链路地址,以使得CE将所述前缀分配给第一用户主机,从而第一用户主机根据所述前缀生成自身的IPv6地址并使用该IP v6地址与其它用户主机交互IPv6数据报文;BRAS根据自身的IPv6路由表转发IPv6数据报文。
2.根据权利要求1所述的方法,其特征在于,所述BRAS接收CE发来的DHCPv6请求报文之后、将从前缀池中取出的一个前缀返回给CE之前进一步包括BRAS从前缀池中随机取出一个前缀。
3.根据权利要求1所述的方法,其特征在于,预先在BRAS上配置CE的PPPoE用户名与 IPv6前缀的关联关系;所述BRAS与CE进行PPPoE协商和认证过程包括CE与BRAS开始PPPoE协商和认证过程,且在该过程中,CE将自身的PPPoE用户名通知 BRASjBRAS根据CE的PPPoE用户名和所述关联关系,从IPv6前缀池中取出一个前缀,并缓存该前缀;且,所述BRAS将从前缀池中取出的一个前缀返回给CE为BRAS将缓存的前缀返回给CE。
4.根据权利要求1所述的方法,其特征在于,所述BRAS将该前缀加入自身的IPv6路由表中之后进一步包括BRAS发现所述CE与自身间的连接断开,根据所述CE的PPPoE接口本地链路地址查找到对应的IPv6路由,将该路由删除,同时,将分配给所述CE的前缀重新添加到前缀池中。
5.根据权利要求1所述的方法,其特征在于,所述BRAS将该前缀加入自身的IPv6路由表中之后进一步包括BRAS接收到CE发来的前缀释放报文,根据所述CE的PPPoE接口本地链路地址查找到对应的IPv6路由,将该路由删除,同时,将分配给所述CE的前缀重新添加到前缀池中。
6.根据权利要求1所述的方法,其特征在于,所述BRAS根据自身的IPv6路由表转发IPv6数据报文包括BRAS接收其它用户主机发来的IPv6数据报文,报文的目的IP地址为第一用户主机的 IPv6地址,BRAS在自身的IPv6路由表中查找该目的IP地址的前缀对应的下一跳,根据该下一跳将该IPv6数据报文转发给所述CE,以使得所述CE根据报文的目的IP地址将报文转发给第一用户主机。
7.一种宽带远程接入服务器BRAS,其特征在于,该服务器包括IPv6前缀池模块保存配置的多个IPv6前缀;前缀分配模块与CE建立PPPoE会话,与CE进行PPPoE协商和认证过程,认证通过,接收CE发来的DHCPv6请求报文,将从IPv6前缀池模块中取出的一个前缀返回给CE,同时,在 IPv6路由表模块中添加新的路由,该路由的目的前缀为所取出的前缀,下一跳为所述CE的 PPPoE接口本地链路地址;IPv6路由表模块保存IPv6路由;IPv6数据转发模块接收IPv6数据报文,根据IPv6路由表模块中保存的IPv6路由转发该报文。
8.根据权利要求7所述的服务器,其特征在于,所述IPv6前缀池模块进一步用于,保存CE的PPPoE用户名与IPv6前缀的关联关系; 且,所述前缀分配模块进一步用于,在PPPoE协商和认证过程中获取CE的PPPoE用户名,根据该用户名和IPv6前缀池模块中的所述关联关系,从IPv6前缀池模块中取出一个前缀,并缓存该前缀,以便在接收到所述CE的DHCPv6请求报文后,将该前缀返回给CE。
9.根据权利要求7所述的服务器,其特征在于,该服务器进一步包括前缀释放模块发现与所述CE的连接断开,则根据CE的PPPoE接口本地链路地址的前缀,在IPv6路由表模块中查找到对应的路由,将该路由删除,同时,将该路由中的IPv6前缀添加到IPv6前缀池模块。
全文摘要
本发明公开了基于以太网点对点协议的IPv6路由建立方法及接入服务器。方法包括在BRAS上配置IPv6前缀池,BRAS与CE建立PPPoE会话,与CE进行PPPoE协商和认证过程;BRAS接收CE发来的DHCPv6请求报文,将从IPv6前缀池中取出的一个前缀返回给CE,同时,将该前缀加入自身的IPv6路由表中,且设置该前缀的下一跳为CE的PPPoE接口本地链路地址,以使得CE将所述前缀分配给第一用户主机,从而第一用户主机根据所述前缀生成自身的IPv6地址并使用该IPv6地址与其它用户主机交互IPv6数据报文;BRAS根据自身的IPv6路由表转发IPv6数据报文。本发明使得BRAS无需支持动态路由协议和ND代理功能,即可实现BRAS成功转发下行IPv6流量,同时降低BRAS的配置负担。
文档编号H04L29/12GK102238075SQ20101016869
公开日2011年11月9日 申请日期2010年5月5日 优先权日2010年5月5日
发明者王司晨 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1