一种报文发送方法、设备及计算机可读存储介质与流程

文档序号:17600683发布日期:2019-05-07 20:15阅读:124来源:国知局
一种报文发送方法、设备及计算机可读存储介质与流程
本申请涉及通信
技术领域
,特别是涉及一种报文发送方法、设备及计算机可读存储介质。
背景技术
:目前,当用户终端访问网络资源时,服务器会对用户终端进行radius(remoteauthenticationdial-inuserservice,远程认证拨号用户服务)认证流程。在常见的组网中,通常设置有接入设备和多台服务器,接入设备通常为路由器或交换机等,接入设备可以与多台radius服务器连接。接入设备在运行过程中,会向radius服务器发送各种radius协议报文,radius协议报文可以包括认证请求、计费开始请求和计费停止请求等,以使radius服务器对用户终端进行认证、计费和断开连接等处理。例如,用户终端上线时,会向接入设备发送携带有用户名和密码的连接请求,接入设备则会获取该用户名和密码,并随机选择某一radius服务器发送认证请求。该radius服务器对用户名和密码进行认证,然后向接入设备发送认证响应消息,以告知接入设备该用户终端是否认证成功。如果认证成功,则接入设备允许该用户终端接入,以使该用户终端能够访问网络资源。然而,接入设备通常是随机选择一台服务器发送radius协议报文,如果接入设备则向某台radius服务器发送radius协议报文的速率超过了radius服务器当前的处理速率,会导致报文的丢包率较高。技术实现要素:本申请实施例的目的在于提供一种报文发送方法、设备及计算机可读存储介质,以避免向radius服务器发送报文的速率超过radius服务器的处理能力的上限,从而降低丢包率。具体技术方案如下:第一方面,提供了一种报文发送方法,所述方法应用于接入设备,所述接入设备与多个远程认证拨号用户服务radius服务器连接,所述方法包括:获取各radius服务器对应的报文处理速率;根据当前向各radius服务器发送radius协议报文的报文发送速率、以及所述各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器;如果存在报文发送速率超过报文处理速率的第一radius服务器,则以所述第一radius服务器对应的第一报文处理速率向所述第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。可选的,所述获取各radius服务器对应的报文处理速率,包括:针对每一radius服务器,当达到预设的第一监测周期时,在向所述radius服务器发送的认证请求中添加目标指示信息,所述目标指示信息用于指示请求报文处理速率;将添加有所述目标指示信息的认证请求发送给所述radius服务器;接收所述radius服务器发送的认证响应消息,所述认证响应消息中携带有所述radius服务器的报文处理速率。可选的,所述获取各radius服务器对应的报文处理速率,包括:针对每一radius服务器,接收所述radius服务器在达到预设的第二监测周期时发送的通知报文,所述通知报文中携带有所述radius服务器的报文处理速率。可选的,所述获取各radius服务器对应的报文处理速率之后,所述方法还包括:根据获取到的所述各radius服务器对应的报文处理速率、以及所述各radius服务器的服务器标识,生成报文处理速率表,所述报文处理速率表用于存储报文处理速率和服务器标识的对应关系;所述根据当前向各radius服务器发送radius协议报文的报文发送速率、以及所述各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器,包括:根据当前向各radius服务器发送radius协议报文的报文发送速率和所述报文处理速率表,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。第二方面,提供了一种报文发送方法,所述方法应用于远程认证拨号用户服务radius服务器,所述radius服务器与接入设备连接,所述方法包括:获取本设备当前的资源利用率;根据预先存储的资源利用率和报文处理速率的对应关系,确定所述当前的资源利用率对应的报文处理速率;将确定出的报文处理速率发送给所述接入设备。可选的,所述获取本设备当前的资源利用率之前,还包括:接收所述接入设备发送的认证请求,所述认证请求中携带有目标指示信息,所述目标指示信息用于指示请求报文处理速率;所述将确定出的报文处理速率发送给所述接入设备,包括:将确定出的报文处理速率添加到认证响应消息中,向所述接入设备发送携带有确定出的报文处理速率的认证响应消息。可选的,所述获取本设备当前的资源利用率,包括:当达到预设的第二监测周期时,获取本设备当前的资源利用率。第三方面,提供了一种报文发送装置,所述装置应用于接入设备,所述接入设备与多个远程认证拨号用户服务radius服务器连接,所述装置包括:获取模块,用于获取各radius服务器对应的报文处理速率;判断模块,用于根据当前向各radius服务器发送radius协议报文的报文发送速率、以及所述各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器;发送模块,用于如果存在报文发送速率超过报文处理速率的第一radius服务器,则以所述第一radius服务器对应的第一报文处理速率向所述第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。可选的,所述获取模块,具体用于:针对每一radius服务器,当达到预设的第一监测周期时,在向所述radius服务器发送的认证请求中添加目标指示信息,所述目标指示信息用于指示请求报文处理速率;将添加有所述目标指示信息的认证请求发送给所述radius服务器;接收所述radius服务器发送的认证响应消息,所述认证响应消息中携带有所述radius服务器的报文处理速率。可选的,所述获取模块,具体用于:针对每一radius服务器,接收所述radius服务器在达到预设的第二监测周期时发送的通知报文,所述通知报文中携带有所述radius服务器的报文处理速率。可选的,所述装置还包括:生成模块,用于根据获取到的所述各radius服务器对应的报文处理速率、以及所述各radius服务器的服务器标识,生成报文处理速率表,所述报文处理速率表用于存储报文处理速率和服务器标识的对应关系;所述判断模块,具体用于根据当前向各radius服务器发送radius协议报文的报文发送速率和所述报文处理速率表,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。第四方面,提供了一种报文发送装置,所述装置应用于远程认证拨号用户服务radius服务器,所述radius服务器与接入设备连接,所述装置包括:获取模块,用于获取本设备当前的资源利用率;确定模块,用于根据预先存储的资源利用率和报文处理速率的对应关系,确定所述当前的资源利用率对应的报文处理速率;发送模块,用于将确定出的报文处理速率发送给所述接入设备。可选的,所述装置还包括:接收模块,用于接收所述接入设备发送的认证请求,所述认证请求中携带有目标指示信息,所述目标指示信息用于指示请求报文处理速率;所述发送模块,具体用于:将确定出的报文处理速率添加到认证响应消息中,向所述接入设备发送携带有确定出的报文处理速率的认证响应消息。可选的,所述获取模块,具体用于:当达到预设的第二监测周期时,获取本设备当前的资源利用率。第五方面,提供了一种接入设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法步骤。第七方面,提供了一种远程认证拨号用户服务radius服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现第二方面所述的方法步骤。第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第二方面所述的方法步骤。第九方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的报文发送方法。第十方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第二方面所述的报文发送方法。本申请实施例提供了一种报文发送方法和装置,其中,接入设备可以获取各radius服务器对应的报文处理速率,然后根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。这样,可以避免向radius服务器发送radius协议报文的速度超过radius服务器的处理速率,从而降低丢包率。当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种网络系统的示意图;图2为本申请实施例提供的一种报文发送方法的流程图;图3为本申请实施例提供的一种报文发送方法的流程图;图4为本申请实施例提供的一种报文发送装置的结构示意图;图5为本申请实施例提供的一种报文发送装置的结构示意图;图6为本申请实施例提供的一种报文发送装置的结构示意图;图7为本申请实施例提供的一种报文发送装置的结构示意图;图8为本申请实施例提供的一种接入设备的结构示意图;图9为本申请实施例提供的一种radius服务器的结构示意图;具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请实施例提供了一种报文发送方法,该方法可以由接入设备和radius服务器共同实现。其中,接入设备可以是安装有radius客户端的路由器或交换机等设备,接入设备可以包括nas(networkattachedstorage,网络附属存储)设备,bras(broadbandremoteaccessserver,宽带远程接入服务器)设备和其他服务器设备等。如图1所示,为本申请实施例提供的一种网络系统的示意图。该网络系统包括用户终端、接入设备和多个radius服务器。该接入设备分部与用户终端和多个radius服务器连接。接入设备与radius服务器之间可以传输radius协议报文,以使radius服务器对用户终端进行认证、计费和断开连接等。相应的,接入设备向radius服务器发送的radius协议报文可以包括认证请求、计费开始请求和计费停止请求等,本申请实施例不做限定。为了便于理解,本申请首先对用户上线-下线过程进行说明,具体的处理过程为:用户终端向接入设备发送携带有用户名和密码的连接请求。接入设备则会获取该用户名和密码,并向某一radius服务器发送认证请求。该radius服务器对用户名和密码进行认证,然后向接入设备发送认证响应消息,以告知接入设备该用户终端是否认证成功。如果认证成功,则接入设备允许该用户终端接入,并向该radius服务器发送计费开始请求。radius服务器返回计费开始响应消息,并开始对该用户终端户进行计费。当用户下线时,用户终端会向接入设备发送断开连接请求,然后,接入设备可以向radius服务器发送计费停止请求,radius服务器返回计费结束响应消息,并停止对该用户终端进行计费。本申请实施例提供的报文发送方法中,接入设备可以获取各radius服务器对应的报文处理速率,然后根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。这样,可以避免向radius服务器发送radius协议报文的速度超过radius服务器的处理速率,从而降低丢包率。如图2所示,本申请实施例提供的数据包的识别方法中,接入设备的处理过程具体可以包括以下步骤。步骤201,获取各radius服务器对应的报文处理速率。其中,报文处理速率可以是radius服务器在单位时间内能够处理的报文的个数,例如,报文处理速率可以是50个/秒。在实施中,接入设备可以获取各radius服务器对应的报文处理速率,例如,接入设备可以与radius服务器进行通信,以获取该radius服务器的报文处理速率;或者,技术人员可以在接入设备中配置各radius服务器对应的报文处理速率。为了提高调整报文发送速率的准确度,本申请实施例中,接入设备可以通过与radius服务器进行通信,获取radius服务器当前的报文处理速率,以便根据各radius服务器当前的报文处理速率,对报文发送速率进行调整。本申请实施例提供了两种可能的实现方式,具体如下。方式一、接入设备可以主动请求报文处理速率,具体包括以下步骤:步骤一、针对每一radius服务器,当达到预设的第一监测周期时,接入设备在需要向radius服务器发送的认证请求中添加目标指示信息,目标指示信息用于指示请求报文处理速率。在实施中,接入设备中可以预先存储有报文分配规则(为了便于区分,可称为第一报文分配规则),该第一报文分配规则可以包括各radius服务器对应的报文分配比例。当有大量用户上线/下线时,接入设备会持续发送大量的radius协议报文,此时,接入设备可以根据第一报文分配规则,确定各radius服务器对应的报文分配比例,然后按照该报文分配比例,向各radius服务器发送radius协议报文。例如,网络系统包括radius服务器a和radius服务器b,对应的报文分配比例为2:1,则可以向radius服务器a发送两个报文,然后向radius服务器b发送一个报文,依次循环。另外,接入设备中还可以存储有监测周期(为了便于区分,可称为第一监测周期),以使接入设备周期性的获取报文处理速率。具体的,当达到第一监测周期时,如果接入设备需要向该radius服务器发送认证请求,则接入设备会在该认证请求中添加目标指示信息,该目标指示信息用于指示请求报文处理速率。基于此,本申请实施例对现有的认证请求进行了扩展,增加了tlv字段。tlv字段的格式可以如表一所示。表一typelengthvalue其中,type字段为类型字段,可以为1字节,用于携带目标指示信息,即,用于表示该认证请求是否用于请求报文处理速率。例如,type字段的值为1,表示该认证请求用于请求报文处理速率,此时,该认证请求除了具有现有功能以外,还用于请求该radius服务器的报文处理速率;type字段的值为0,表示该认证请求不用于请求报文处理速率,此时,该认证请求仅具有现有功能。length字段为长度字段,用于表示tlv字段的长度。valu字段为属性值字段,用于携带报文处理速率。步骤二、将添加有目标指示信息的认证请求发送给radius服务器。在实施中,接入设备可以根据预先存储的radius服务器的地址信息,接入设备根据该地址信息,将添加有目标指示信息的认证请求发送给该radius服务器。步骤三、接收该radius服务器发送的认证响应消息。其中,认证响应消息中携带有该radius服务器的报文处理速率。在实施中,接入设备可以接收radius服务器发送的认证响应消息,然后对该认证响应消息进行解析,获取该认证响应消息携带的报文处理速率,从而得到该radius服务器当前的报文处理速率。这样,当达到第一监测周期时,接入设备可以获取各radius服务器的报文处理速率。方式二、radius服务器可以主动上报报文处理速率,具体的步骤为:针对每一radius服务器,接收radius服务器在达到预设的第二监测周期时发送的通知报文。其中,该通知报文中携带有radius服务器的报文处理速率。在实施中,radius服务器中可以预先设置有监测周期(为了便于区分,可称为第二监测周期)。每当达到第二监测周期时,radius服务器可以确定本设备当前的报文处理速率,然后可以向接入设备发送通知报文。接入设备则会接收到该radius服务器发送的通知报文,然后对该通知报文进行解析,获取该通知报文携带的报文处理速率。其中,各radius服务器中设置的第二监测周期可以是相同的。可选的,接入设备获取到各radius服务器对应的报文处理速率后,可以以表格的形式进行存储,具体的处理过程为:根据获取到的各radius服务器对应的报文处理速率、以及各radius服务器的服务器标识,确定报文处理速率表,报文处理速率表用于存储报文处理速率和服务器标识的对应关系。在实施中,接入设备中可以预先存储有各radius服务器的服务器标识,其中,服务器标识可以为ip(internetprotocol,互联网协议)地址,也可以为其他标识,本申请实施例不做限定。接入设备获取到各radius服务器对应的报文处理速率、以及各radius服务器的服务器标识后,可以以表格的形式进行存储,即建立报文处理速率表,该报文处理速率表用于存储报文处理速率和服务器标识的对应关系。如表二所示,为本申请实施例提供的报文处理速率表的示例。表二其中,报文处理速率为65536表示不限制报文处理速率,即该radius服务器对报文处理速率没有设置上线,表二中,编号为5~12的radius服务器对报文处理速率没有设置限制。后续,当达到第一监测周期或第二监测周期后,接入设备可以根据获取到的各radius服务器的报文处理速率,对该报文处理速率表进行更新。步骤202,根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。在实施中,接入设备在发送radius协议报文的过程中,针对每个radius服务器,接入设备可以检测当前向该radius服务器发送radius协议报文的报文发送速率。例如,接入设备可以分别统计与当前时间最接近的预设数目个单位时间的报文发送速率,然后计算平均值,将该平均值作为当前向该radius服务器发送radius协议报文的报文发送速率。接入设备可以将该报文发送速率与该radius服务器对应的报文处理速率进行比较,从而判断该radius服务器对应的报文发送速率是否超过报文处理速率。这样,接入设备可以判断各radius服务器中,是否存在报文发送速率超过报文处理速率的radius服务器(为了便于区分,可称为第一radius服务器)。可选的,对于上述建立报文处理速率表的情况,相应的,步骤202的处理过程可以如下:根据当前向各radius服务器发送radius协议报文的报文发送速率和报文处理速率表,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。在实施中,针对每个radius服务器,接入设备可以在确定当前向该radius服务器发送radius协议报文的报文发送速率后,可以根据该radius服务器的标识,查询上述报文处理速率表,从而得到该radius服务器对应的报文处理速率。然后,接入设备可以将该报文发送速率与该radius服务器对应的报文处理速率进行比较,从而判断该radius服务器对应的报文发送速率是否超过报文处理速率。这样,接入设备可以判断各radius服务器中,是否存在报文发送速率超过报文处理速率的第一radius服务器。例如,服务器标识为192.3.1.201的radius服务器,其报文处理速率为80,如果当前向该radius服务器发送radius协议报文的报文发送速率为82,则该radius服务器对应的报文发送速率超过其报文处理速率,该radius服务器中可能会存在丢包的情况。步骤203,如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。在实施中,如果存在报文发送速率超过报文处理速率的第一radius服务器,则接入设备可以以第一radius服务器对应的第一报文处理速率(或者小于该第一报文处理速率的速率)向第一radius服务器发送radius协议报文,而不是按照上述第一报文分配规则,向第一radius服务器发送radius协议报文,从而避免第一radius服务器中发生丢包的情况。对于当前需要发送的其他radius协议报文,接入设备可以按照预设的报文分配规则(为了便于区分,可称为第二报文分配规则),将这些报文发送至其他radius服务器。例如,存在radius服务器a、radius服务器b、radius服务器c,对应的报文处理速率依次为100个/秒、200个/秒、300个/秒,接入设备按照2:2:3的分配规则进行报文发送。当前接入设备的总报文发送速率为420个/秒,则radius服务器a、radius服务器b、radius服务器c对应的报文发送速率分别为:120个/秒、120个/秒和180个/秒。此时,会判定radius服务器a对应的报文发送速率大于其报文处理速率时,接入设备会以100个/秒的速率向radius服务器a发送,对于其他320个radius协议报文,接入设备按照2:3的规则向radius服务器b、radius服务器c进行发送,则radius服务器b对应的报文发送速率为128,radius服务器c对应的报文发送速率为192。如图3所示,本申请实施例提供的数据包的识别方法中,radius服务器的处理过程具体可以包括以下步骤。步骤301,获取本设备当前的资源利用率。在实施中,radius服务器可以监测本设备的资源利用率,该资源利用率可以包括cpu利用率、内存利用率、缓存利用率中的一种或多种,还可以包括其他参数,本申请实施例不做限定。步骤302,根据预先存储的资源利用率和报文处理速率的对应关系,确定当前的资源利用率对应的报文处理速率。在实施中,radius服务器中可以预先存储有资源利用率和报文处理速率的对应关系,该对应关系可以由技术人员根据radius服务器的实际处理性能进行设定。例如,当cpu使用率为0%—20%时,对应的报文处理速率为200,当cpu使用率为20%—40%时,对应的报文处理速率为100,当cpu使用率为40%—60%时,对应的报文处理速率为80,当cpu使用率为60%—80%时,对应的报文处理速率为50,当cpu使用率为80%—100%时,对应的报文处理速率为10。本申请实施例对该对应关系不做限定。radius服务器获取到本设备当前的资源利用率后,可以根据该资源利用率和报文处理速率的对应关系,确定当前的资源利用率对应的报文处理速率。步骤303,将确定出的报文处理速率发送给接入设备。在实施中,radius服务器可以将确定出的报文处理速率发送给接入设备。其中,radius服务器上报报文处理速率的方式可以是多种多样的,本申请实施例提供了两种可行的处理方式,具体如下。方式一,radius服务器可以在接收到接入设备的请求后,上报报文处理速率,具体的处理过程包括以下步骤:步骤一、接收接入设备发送的认证请求。其中,认证请求中携带有目标指示信息,目标指示信息用于指示请求报文处理速率。在实施中,radius服务器可以接收接入设备发送的认证请求,然后对认证请求进行解析,以获取类型字段,进而判断是否携带有目标指示信息。如果携带有目标指示信息,则可以执行步骤二,如果未携带有目标指示信息,则只对用户终端进行认证处理。例如,radius服务器可以判断类型字段的取值是否为1,如果取值为1,则说明接入设备请求报文处理速率,如果取值为0,则说明接入设备未请求报文处理速率。步骤二、将确定出的报文处理速率添加到认证响应消息中,向接入设备发送携带有确定出的报文处理速率的认证响应消息。在实施中,radius服务器可以在认证响应消息添加报文处理速率,类型的,本申请实施例对现有的认证响应消息进行了扩展,增加了tlv字段。tlv字段的格式可以如表一所示。此处不再赘述。方式二,radius服务器可以主动上报报文处理速率,具体的步骤为:当达到预设的第二监测周期时,获取本设备当前的资源利用率。在实施中,radius服务器中可以预先设置有第二监测周期。每当达到第二监测周期时,radius服务器可以执行获取本设备当前的资源利用率的步骤,以确定自身当前的报文处理速率,并通知接入设备。针对方式二,radius服务器可以通过coa(changeofauthorization,授权变更)报文携带报文处理速率,相应的,本申请实施例对现有的coa报文进行了扩展,增加了tlv字段。tlv字段的格式可以如表一所示。此处不再赘述。本申请实施例中,接入设备可以获取各radius服务器对应的报文处理速率,然后根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。这样,可以避免向radius服务器发送radius协议报文的速度超过radius服务器的处理速率,从而降低丢包率。与现有技术相比,现有技术中的丢包率较高,如果认证请求出现丢包,则会导致用户终端认证不通过,影响用户正常上网。如果计费开始请求出现丢包,则会导致radius服务器无法对用户终端进行计费,类似的,如果计费停止请求出现丢包,则会导致radius服务器不能及时停止对用户终端的计费,从而导致计费不准确。而本申请中,可以避免向radius服务器发送radius协议报文的速度超过radius服务器的处理速率,从而降低丢包率,能够避免因认证报文丢包而导致用户无法正常上网、以及因计费开始请求/计费停止请求丢包而导致计费不准确等问题。基于相同的技术构思,如图4所示,本申请实施例还提供了一种报文发送装置,该装置应用于接入设备,接入设备与多个远程认证拨号用户服务radius服务器连接,该装置包括:获取模块410,用于获取各radius服务器对应的报文处理速率;判断模块420,用于根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器;发送模块430,用于如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。可选的,获取模块410,具体用于:针对每一radius服务器,当达到预设的第一监测周期时,在向radius服务器发送的认证请求中添加目标指示信息,目标指示信息用于指示请求报文处理速率;将添加有目标指示信息的认证请求发送给radius服务器;接收radius服务器发送的认证响应消息,认证响应消息中携带有radius服务器的报文处理速率。可选的,获取模块410,具体用于:针对每一radius服务器,接收radius服务器在达到预设的第二监测周期时发送的通知报文,通知报文中携带有radius服务器的报文处理速率。可选的,如图5所示,该装置还包括:生成模块440,用于根据获取到的各radius服务器对应的报文处理速率、以及各radius服务器的服务器标识,生成报文处理速率表,报文处理速率表用于存储报文处理速率和服务器标识的对应关系;判断模块420,具体用于根据当前向各radius服务器发送radius协议报文的报文发送速率和报文处理速率表,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。基于相同的技术构思,如图6所示,本申请实施例还提供了一种报文发送装置,该装置应用于远程认证拨号用户服务radius服务器,radius服务器与接入设备连接,该装置包括:获取模块610,用于获取本设备当前的资源利用率;确定模块620,用于根据预先存储的资源利用率和报文处理速率的对应关系,确定当前的资源利用率对应的报文处理速率;发送模块630,用于将确定出的报文处理速率发送给接入设备。可选的,如图7所示,该装置还包括:接收模块640,用于接收接入设备发送的认证请求,认证请求中携带有目标指示信息,目标指示信息用于指示请求报文处理速率;发送模块630,具体用于:将确定出的报文处理速率添加到认证响应消息中,向接入设备发送携带有确定出的报文处理速率的认证响应消息。可选的,获取模块610,具体用于:当达到预设的第二监测周期时,获取本设备当前的资源利用率。本申请实施例中,接入设备可以获取各radius服务器对应的报文处理速率,然后根据当前向各radius服务器发送radius协议报文的报文发送速率、以及各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。如果存在报文发送速率超过报文处理速率的第一radius服务器,则以第一radius服务器对应的第一报文处理速率向第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。这样,可以避免向radius服务器发送radius协议报文的速度超过radius服务器的处理速率,从而降低丢包率。本申请实施例还提供了一种接入设备,如图8所示,包括处理器8001、通信接口8002、存储器8003和通信总线8004,其中,处理器8001,通信接口8002,存储器8003通过通信总线8004完成相互间的通信,存储器8003,用于存放计算机程序;处理器8001,用于执行存储器8003上所存放的程序时,实现如下步骤:获取各radius服务器对应的报文处理速率;根据当前向各radius服务器发送radius协议报文的报文发送速率、以及所述各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器;如果存在报文发送速率超过报文处理速率的第一radius服务器,则以所述第一radius服务器对应的第一报文处理速率向所述第一radius服务器发送radius协议报文,并按照预设的报文分配规则,将当前需要发送的其他radius协议报文发送至其他radius服务器。可选的,所述获取各radius服务器对应的报文处理速率,包括:针对每一radius服务器,当达到预设的第一监测周期时,在向所述radius服务器发送的认证请求中添加目标指示信息,所述目标指示信息用于指示请求报文处理速率;将添加有所述目标指示信息的认证请求发送给所述radius服务器;接收所述radius服务器发送的认证响应消息,所述认证响应消息中携带有所述radius服务器的报文处理速率。可选的,所述获取各radius服务器对应的报文处理速率,包括:针对每一radius服务器,接收所述radius服务器在达到预设的第二监测周期时发送的通知报文,所述通知报文中携带有所述radius服务器的报文处理速率。可选的,所述获取各radius服务器对应的报文处理速率之后,所述方法还包括:根据获取到的所述各radius服务器对应的报文处理速率、以及所述各radius服务器的服务器标识,生成报文处理速率表,所述报文处理速率表用于存储报文处理速率和服务器标识的对应关系;所述根据当前向各radius服务器发送radius协议报文的报文发送速率、以及所述各radius服务器对应的报文处理速率,判断是否存在报文发送速率超过报文处理速率的第一radius服务器,包括:根据当前向各radius服务器发送radius协议报文的报文发送速率和所述报文处理速率表,判断是否存在报文发送速率超过报文处理速率的第一radius服务器。本申请实施例还提供了一种radius服务器,如图9所示,包括处理器9001、通信接口9002、存储器9003和通信总线9004,其中,处理器9001,通信接口9002,存储器9003通过通信总线9004完成相互间的通信,存储器9003,用于存放计算机程序;处理器9001,用于执行存储器9003上所存放的程序时,实现如下步骤:获取本设备当前的资源利用率;根据预先存储的资源利用率和报文处理速率的对应关系,确定所述当前的资源利用率对应的报文处理速率;将确定出的报文处理速率发送给所述接入设备。可选的,所述获取本设备当前的资源利用率之前,还包括:接收所述接入设备发送的认证请求,所述认证请求中携带有目标指示信息,所述目标指示信息用于指示请求报文处理速率;所述将确定出的报文处理速率发送给所述接入设备,包括:将确定出的报文处理速率添加到认证响应消息中,向所述接入设备发送携带有确定出的报文处理速率的认证响应消息。可选的,所述获取本设备当前的资源利用率,包括:当达到预设的第二监测周期时,获取本设备当前的资源利用率。上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现接入设备所执行的报文发送方法步骤。在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述接入设备所执行的报文发送方法。在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现radius服务器所执行的报文发送方法步骤。在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述radius服务器所执行的报文发送方法。在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1