IPoE用户表的恢复方法及装置与流程

文档序号:21182324发布日期:2020-06-20 17:53阅读:363来源:国知局
IPoE用户表的恢复方法及装置与流程

本申请涉及通信技术领域,尤其涉及一种ipoe用户表的恢复方法及装置。



背景技术:

如图1所示,是一种典型的bras(broadbandremoteaccessserver,宽带接入服务器)组网,bras作为中继设备,对终端进行ipoe(ipoverethernet,基于以太的ip转发)认证,当认证通过后,bras转发终端与dhcp(dynamichostconfigurationprotocol,动态主机配置协议)服务器之间的dhcp协议报文,以使终端获取到dhcp服务器分配的ip地址,从而能够正常上网。同时,bras会生成该终端对应的ipoe用户表,并根据ipoe用户表转发该终端的流量。

ipoe认证是通过dhcp协议来触发的,如果出现异常情况在bras认证的终端显示下线了,而终端实际在线的情况下,异常恢复后终端的流量到达bras后,bras是无法转发的。因此目前的bras具有支持异常用户恢复的功能,即在终端异常下线的情况下,bras将ipoe用户表的相关信息记录到异常用户恢复表中,在异常恢复后,终端的流量到达bras,bras根据流量的ip地址、mac地址等相关信息匹配异常用户恢复表,如果命中则模拟终端与dhcp服务器进行完整的dhcp协议交互,以生成ipoe用户表,从而实现了用户流量的正常转发。

但在一种应用场景下,bras虽然作为中继设备,但是不会对终端进行ipoe认证,直接转发终端与dhcp服务器之间的dhcp协议报文。dhcp服务器收到dhcp协议报文后,把dhcp协议报文携带的信息发送给aaa服务器,由aaa服务器进行认证。aaa服务器认证通过后,dhcp服务器再给终端分配ip地址。在该场景下,由于dhcp服务器向aaa服务器发送的信息是加密的,考虑到会存在攻击,因此每个用户账号dhcp服务器只会分配一个ip地址,并且bras在重启之后,是无法通知dhcp服务器需要释放哪些地址,这样就会导致如果bras上的终端下线后,在还没有通知dhcp服务器释放该终端的ip地址的情况下,该bras进行了重启,那么后续该用户通过终端再发起认证,认证是无法通过的。如果有终端的流量到达bras后触发异常用户恢复,bras模拟终端与dhcp服务器进行完整的dhcp协议交互也会失败,进而无法生成ipoe用户表,导致终端无法访问网络。



技术实现要素:

有鉴于此,本申请提供了一种ipoe用户表的恢复方法及装置,用以解决现有技术中,bras在重启之后,终端无法访问网络的问题。

第一方面,本申请提供了一种ipoe用户表的恢复方法,该方法应用于bras宽带接入服务器,该方法包括:

在所述bras重启后,若接收到第一终端发送的流量,则确定所述第一终端的地址信息,所述地址信息包括所述第一终端的ip地址;

若异常用户恢复表中存在包括所述第一终端的地址信息的第一表项,则向dhcp服务器发送dhcp通告报文,所述dhcp通告报文携带所述第一终端的地址信息;

接收所述dhcp服务器发送的对应于所述dhcp通告报文的响应报文,所述响应报文携带所述dhcp服务器的ip地址和地址池配置信息;

若所述dhcp服务器的ip地址与所述bras上配置的dhcp服务器的ip地址一致,且所述地址池配置信息与所述第一终端的ip地址属于同一网段,则将所述第一表项添加至ipoe用户表。

结合第一方面,在第一种可能的实现方式中,在所述bras重启后,所述方法还包括:若接收到第二终端发送的dhcp请求报文,则确定所述异常用户恢复表中是否存在包括所述dhcp请求报文中携带的所述第二终端的mac地址的第二表项;如果所述异常用户恢复表存在所述第二表项,则从所述第二表项中获取所述第二终端的mac地址对应的所述第二终端的ip地址,并删除所述第二表项;向所述dhcp服务器发送释放报文,所述释放报文携带所述第二终端的mac地址和所述第二终端的ip地址,以使得dhcp服务器根据所述第二终端的mac地址和所述第二终端的ip地址释放为所述第二终端分配的ip地址。

结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,在确定所述异常用户恢复表中是否存在包括所述dhcp请求报文中携带的所述第二终端的标识的第二表项之后,所述方法包括:如果所述异常用户恢复表不存在所述第二表项,则向所述dhcp服务器发送所述dhcp请求报文。

结合第一方面或第一方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述地址信息还包括:所述第一终端的mac地址。

结合第一方面或第一方面的第一种可能的实现方式或第二种可能的实现方式,在第四种可能的实现方式中,所述地址池配置信息包括:网关地址和子网地址。

第二方面,本申请提供了一种ipoe用户表的恢复装置,该装置应用于bras宽带接入服务器,该装置包括:

确定单元,用于在所述bras重启后,若接收到第一终端发送的流量,则确定所述第一终端的地址信息,所述地址信息包括所述第一终端的ip地址;

发送单元,用于若异常用户恢复表中存在包括所述第一终端的地址信息的第一表项,则向dhcp服务器发送dhcp通告报文,所述dhcp通告报文携带所述第一终端的地址信息;

接收单元,用于接收所述dhcp服务器发送的对应于所述dhcp通告报文的响应报文,所述响应报文携带所述dhcp服务器的ip地址和地址池配置信息;

添加单元,用于若所述dhcp服务器的ip地址与所述bras上配置的dhcp服务器的ip地址一致,且所述地址池配置信息与所述第一终端的ip地址属于同一网段,则将所述第一表项添加至ipoe用户表。

结合第二方面,在第一种可能的实现方式中,所述确定单元,还用于若接收到第二终端发送的dhcp请求报文,则确定所述异常用户恢复表中是否存在包括所述dhcp请求报文中携带的所述第二终端的mac地址的第二表项;所述装置还包括:处理单元,用于如果所述异常用户恢复表存在所述第二表项,则从所述第二表项中获取所述第二终端的mac地址对应的所述第二终端的ip地址,并删除所述第二表项;所述发送单元,还用于向所述dhcp服务器发送释放报文,所述释放报文携带所述第二终端的mac地址和所述第二终端的ip地址,以使得dhcp服务器根据所述第二终端的mac地址和所述第二终端的ip地址释放为所述第二终端分配的ip地址。

结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述发送单元还用于,如果所述异常用户恢复表不存在所述第二表项,则向所述dhcp服务器发送所述dhcp请求报文。

结合第二方面或第二方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述地址信息还包括:所述第一终端的mac地址。

结合第二方面或第二方面的第一种可能的实现方式或第二种可能的实现方式,在第四种可能的实现方式中,所述地址池配置信息包括:网关地址和子网地址。

通过应用本申请提供的一种ipoe用户表的恢复方法及装置,在bras重启后,若接收到终端发送的流量,若异常用户恢复表中存在包括该终端的地址信息的表项,则向dhcp服务器发送dhcp通告报文,在接收到dhcp服务器发送的携带dhcp服务器的ip地址和地址池配置信息的对应于dhcp通告报文的响应报文后,若确定该dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且该地址池配置信息与该终端的ip地址属于同一网段,则将异常用户恢复表中存在包括该终端的地址信息的表项添加至ipoe用户表,以使得bras在重启之后,终端可以正常访问网络。

附图说明

图1为现有技术中提供的一种bras组网示意图;

图2为本申请实施例提供的一种ipoe用户表的恢复方法的流程图;

图3为本申请实施例提供的一种ipoe用户表的恢复装置结构图;

图4为本申请实施例提供的一种bras硬件结构图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

下面对本申请实施例提供的ipoe用户表的恢复方法进行详细地说明。参见图3,图3为本申请实施例示出的一种ipoe用户表的恢复方法的流程图。该方法应用于bras。本申请实施例提供的ipoe用户表的恢复方法可包括如下步骤:

步骤201,在bras重启后,若接收到第一终端发送的流量,则确定第一终端的地址信息。

其中,该地址信息包括第一终端的ip地址。

优选地,该地址信息可以包括:第一终端的ip地址和第一终端的mac地址,以提高后续匹配异常用户恢复表项的准确性。

步骤202,若异常用户恢复表中存在包括第一终端的地址信息的第一表项,则向dhcp服务器发送dhcp通告报文。

其中,该dhcp通告报文携带第一终端的地址信息。

在一个例子中,bras在正常运行时,会定时保存ipoe用户表到存储介质中,当bras设备重启后,可以从存储介质中读取之前存储的ipoe用户表作为异常用户恢复表。

ipoe用户表或异常用户恢复表至少包括如下字段:

ip字段表示:dhcp服务器分配给终端的ip地址;

mac字段:终端的mac地址;

vlan字段:终端的接入vlan;

interface字段:终端接入的接口;

aging字段:该ipoe表项的老化时间。

基于此,bras在接收到第一终端发送的流量,并确定第一终端的地址信息后,可以利用第一终端的地址信息在异常用户恢复表进行匹配。若异常用户恢复表中不存在包括第一终端的地址信息的第一表项,则认为第一终端在bras重启前是未通过认证的终端,且dhcp服务器未给第一终端分配过ip地址,所以丢弃第一终端发送的流量。若异常用户恢复表中存在包括第一终端的地址信息的第一表项,则第一终端在bras重启前是通过认证的终端,且dhcp服务器给第一终端分配过ip地址,所以向dhcp服务器发送携带第一终端的地址信息的dhcp通告报文,以从dhcp服务器查询第一终端的地址信息对应的地址池配置信息及dhcp服务器的ip地址。

根据dhcp协议可知,dhcp服务器在接收到dhcp通告报文后,可以进行查询并进行回复。基于此,在本实施例中,dhcp服务器向bras发送对应于dhcp通告报文的响应报文,该响应报文携带该dhcp服务器的ip地址和根据第一终端的地址信息查询到的地址池配置信息。

步骤203,接收dhcp服务器发送的对应于dhcp通告报文的响应报文。

其中,该响应报文携带dhcp服务器的ip地址和地址池配置信息。

在一个例子中,地址池配置信息可以包括:网关地址和子网地址。

步骤204,若dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且地址池配置信息与第一终端的ip地址属于同一网段,则将第一表项添加至ipoe用户表。

在一个例子中,若dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址不一致,或地址池配置信息与第一终端的ip地址不属于同一网段,则认为该终端为非法终端,所以不将包括第一终端的地址信息的第一表项添加至ipoe用户表中,并丢弃第一终端发送的流量。若dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且地址池配置信息与第一终端的ip地址属于同一网段,则认为第一终端在bras重启前是通过认证的终端,且dhcp服务器给第一终端分配过ip地址,所以将包括第一终端的地址信息的第一表项添加至ipoe用户表,这样bras可根据ipoe用户表中的该第一表项转发该第一终端的流量。

优选的,在bras重启后,本实施例提供的ipoe用户表的恢复方法还可以包括:

若bras接收到第二终端发送的dhcp请求报文,则确定异常用户恢复表中是否存在包括dhcp请求报文中携带的第二终端的mac地址的第二表项。

如果异常用户恢复表不存在第二表项,则认为dhcp服务器没有给第二终端分配过ip地址,所以bras向dhcp服务器发送dhcp请求报文,以模拟第二终端与dhcp服务器进行完整的dhcp协议交互,生成ipoe用户表项,实现第二终端的流量转发。

如果异常用户恢复表存在第二表项,则认为dhcp服务器给第二终端分配过ip地址,但是第二终端要求重新分配,故需要先有dhcp服务器先释放之前已分配给第二终端的ip地址,所以bras从第二表项中获取第二终端的mac地址对应的第二终端的ip地址,然后删除第二表项。并向dhcp服务器发送释放报文。该释放报文携带第二终端的mac地址和第二终端的ip地址。

dhcp服务器在接收到该释放报文后,根据第二终端的mac地址和第二终端的ip地址释放为第二终端分配的ip地址。

bras在发送释放报文后,只需要等待第二终端重传dhcp请求报文,按照异常用户恢复表不存在第二表项的情况进行处理即可。

通过应用本申请提供的一种ipoe用户表的恢复方法,在bras重启后,若接收到终端发送的流量,若异常用户恢复表中存在包括该终端的地址信息的表项,则向dhcp服务器发送dhcp通告报文,在接收到dhcp服务器发送的携带dhcp服务器的ip地址和地址池配置信息的对应于dhcp通告报文的响应报文后,若确定该dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且该地址池配置信息与该终端的ip地址属于同一网段,则将异常用户恢复表中存在包括该终端的地址信息的表项添加至ipoe用户表,以使得bras在重启之后,终端可以正常访问网络。

基于同一发明构思,本申请实施例还提供了与上述ipoe用户表的恢复方法对应的ipoe用户表的恢复装置。参见图3,图3为本申请实施例提供的一种ipoe用户表的恢复装置结构图,该装置应用于bras,该装置包括:

确定单元310,用于在bras重启后,若接收到第一终端发送的流量,则确定第一终端的地址信息,其中,该地址信息包括所述第一终端的ip地址。

优选地,该地址信息还可以包括:第一终端的mac地址。

发送单元320,用于若异常用户恢复表中存在包括第一终端的地址信息的第一表项,则向dhcp服务器发送dhcp通告报文,其中,该dhcp通告报文携带第一终端的地址信息。

接收单元330,用于接收dhcp服务器发送的对应于dhcp通告报文的响应报文,其中,该响应报文携带dhcp服务器的ip地址和地址池配置信息。

优选地,该地址池配置信息可以包括:网关地址和子网地址。

添加单元340,用于若dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且地址池配置信息与第一终端的ip地址属于同一网段,则将第一表项添加至ipoe用户表。

优选地,确定单元310,还用于若接收到第二终端发送的dhcp请求报文,则确定异常用户恢复表中是否存在包括该dhcp请求报文中携带的所述第二终端的mac地址的第二表项。相应的,装置还包括:

处理单元350,用于如果异常用户恢复表存在第二表项,则从第二表项中获取第二终端的mac地址对应的第二终端的ip地址,并删除该第二表项。

发送单元320,还用于向dhcp服务器发送释放报文,其中,该释放报文携带第二终端的mac地址和第二终端的ip地址,以使得dhcp服务器根据第二终端的mac地址和第二终端的ip地址释放为第二终端分配的ip地址。

优选地,发送单元320还用于,如果异常用户恢复表不存在第二表项,则向dhcp服务器发送该dhcp请求报文。

因此,通过应用本申请实施例提供的一种ipoe用户表的恢复装置,在bras重启后,若接收到终端发送的流量,若异常用户恢复表中存在包括该终端的地址信息的表项,则向dhcp服务器发送dhcp通告报文,在接收到dhcp服务器发送的携带dhcp服务器的ip地址和地址池配置信息的对应于dhcp通告报文的响应报文后,若确定该dhcp服务器的ip地址与bras上配置的dhcp服务器的ip地址一致,且该地址池配置信息与该终端的ip地址属于同一网段,则将异常用户恢复表中存在包括该终端的地址信息的表项添加至ipoe用户表,以使得bras在重启之后,终端可以正常访问网络。

基于同一发明构思,本申请实施例还提供了一种bras,如图4所示,包括处理器410、收发器420和机器可读存储介质430,机器可读存储介质430存储有能够被处理器410执行的机器可执行指令,处理器410被机器可执行指令促使执行本申请实施例所提供的ipoe用户表的恢复方法。前述图3所示的ipoe用户表的恢复装置,可采用如图4所示的bras硬件结构实现。

上述计算机可读存储介质430可以包括随机存取存储器(英文:randomaccessmemory,简称:ram),也可以包括非易失性存储器(英文:non-volatilememory,简称:nvm),例如至少一个磁盘存储器。可选的,计算机可读存储介质430还可以是至少一个位于远离前述处理器410的存储装置。

上述处理器410可以是通用处理器,包括中央处理器(英文:centralprocessingunit,简称:cpu)、网络处理器(英文:networkprocessor,简称:np)等;还可以是数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(英文:field-programmablegatearray,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

本申请实施例中,处理器410通过读取机器可读存储介质430中存储的机器可执行指令,被机器可执行指令促使能够实现处理器410自身以及调用收发器420执行前述本申请实施例描述的ipoe用户表的恢复方法。

另外,本申请实施例提供了一种机器可读存储介质430,机器可读存储介质430存储有机器可执行指令,在被处理器410调用和执行时,机器可执行指令促使处理器410自身以及调用收发器420执行前述本申请实施例描述的ipoe用户表的恢复方法。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

对于ipoe用户表的恢复装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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