CN105991708B - 应用服务器的选取方法、装置和系统 - Google Patents
应用服务器的选取方法、装置和系统 Download PDFInfo
- Publication number
- CN105991708B CN105991708B CN201510070973.7A CN201510070973A CN105991708B CN 105991708 B CN105991708 B CN 105991708B CN 201510070973 A CN201510070973 A CN 201510070973A CN 105991708 B CN105991708 B CN 105991708B
- Authority
- CN
- China
- Prior art keywords
- application server
- application
- speed measurement
- packet loss
- multiplying
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种应用服务器的选取方法、装置和系统。所述方法包括以下步骤:接收应用终端发送的向各应用服务器发起测速请求所得到的每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息;根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据;对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据;根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度。
Description
技术领域
本发明涉及网络通信技术,特别是涉及一种应用服务器的选取方法、装置和系统。
背景技术
传统的应用终端选择应用服务器的过程包括:(1)应用服务器将负载信息和机器健康状况上报给域名服务器;(2)域名服务器收集到所有应用服务器的负载信息和机器健康状况;(3)应用终端向域名客户端获取应用服务器IP(Internet Protocol,网络之间互连的协议)地址,域名客户端向域名服务器发起域名解析请求,获取可用应用服务器的IP列表;(4)域名服务器根据各个应用服务器的负载信息和机器健康状况,选取可用的应用服务器的IP列表下发给域名客户端,域名客户端将可用的应用服务器的IP列表提供给应用终端;(5)应用终端从可用的应用服务器的IP列表中选择一个IP连接。
传统的应用终端选择的应用服务器虽然是可用的应用服务器,但并非最优的应用服务器,没有考虑到应用终端访问应用服务器的网络问题,易造成应用终端访问应用服务器速度缓慢。
发明内容
基于此,有必要针对传统的应用终端选择应用服务器易造成访问速度缓慢的问题,提供一种能提高应用终端访问速度的应用服务器的选取方法。
此外,还提供了一种应用服务器的选取装置。
此外,还提供了一种应用服务器的选取系统。
一种应用服务器的选取方法,包括以下步骤:
接收应用终端发送的向各应用服务器发起测速请求所得到的每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息;
根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据;
对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据;
根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
一种应用服务器的选取方法,包括以下步骤:
获取测速指令;
根据所述测速指令向各应用服务器发起测速请求;
获取每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息;
发送所述每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息至网络路由评测装置,以使所述网络路由评测装置根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据,根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器;
接收所述网络路由评测装置返回的目标应用服务器;
与所述目标应用服务器建立通信连接。
一种应用服务器的选取装置,包括:
参数接收模块,用于接收应用终端发送的向各应用服务器发起测速请求所得到的每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息;
测速数据获取模块,用于根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据;
预测数据获取模块,用于对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据;
选取模块,用于根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
一种应用服务器的选取装置,包括:
指令获取模块,用于获取测速指令;
测速请求发起模块,用于根据所述测速指令向各应用服务器发起测速请求;
参数获取模块,用于获取每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息;
发送模块,用于发送所述每次测速的网络参数及每次各应用服务器对所述测速请求的响应信息至网络路由评测装置,以使所述网络路由评测装置根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据,根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器;
接收模块,用于接收所述网络路由评测装置返回的目标应用服务器;
连接建立模块,用于与目标应用服务器建立通信连接。
一种应用服务器的选取系统,包括应用终端、网络路由评测装置和若干应用服务器;
所述网络路由评测装置用于向所述应用终端下发测速指令;
所述应用终端用于根据所述测速指令向各应用服务器发起测速请求,并接收每次各应用服务器对所述测速请求的响应信息,以及获取每次测速的网络参数,并将每次测速的网络参数和每次各应用服务器对所述测速请求的响应信息发送给所述网络路由评测装置;
所述网络路由评测装置还用于根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对所述应用终端到各应用服务器的测速数据分别进行处理得到所述应用终端接入各应用服务器的预测数据,根据所述预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器,并将所述目标应用服务器发送给所述应用终端;
所述应用终端与所述目标应用服务器建立通信连接。
上述应用服务器的选取方法、装置和系统,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
附图说明
图1为一个实施例中应用服务器的选取方法的应用环境示意图;
图2为一个实施例中应用服务器的选取方法的流程图;
图3为另一个实施例中应用服务器的选取方法的流程图;
图4为应用终端向所有应用服务器发起测速请求的示意图;
图5为应用终端连接目标应用服务器的示意图;
图6为一个实施例中应用服务器的选取装置的结构示意图;
图7为另一个实施例中应用服务器的选取装置的结构示意图;
图8为一个实施例中应用服务器的选取系统的结构示意图;
图9为应用服务器的选取系统的工作时序示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中应用服务器的选取方法的应用环境示意图。如图1所示,该应用环境包括网络路由评测装置110、应用终端120和若干应用服务器130。
网络路由评测装置110可独立存在,也可安装在应用终端120上,也可安装在应用服务器130上。
应用终端120可为智能手机、平板电脑、台式计算机、笔记本电脑、个人数字助理等。应用终端120上可安装各种应用客户端,例如应用客户端可为即时通讯客户端、电子邮件客户端、浏览器客户端等。应用服务器130对应应用客户端,例如应用客户端为即时通讯客户端,则应用服务器130为即时通讯服务器;应用客户端为电子邮件客户端,则应用服务器130为电子邮件服务器。
网络路由评测装置110向应用终端120下发测速指令。
应用终端120上的应用客户端根据该测速指令获取各应用服务器130地址,向各应用服务器地址所对应的各应用服务器130发起测速请求。
应用服务器130接收到该测速请求后,将对测速请求的响应信息返回给应用终端120。该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP(Transmission Control Protocol,传输控制协议)连接数、网络收发包量、CPU(CentralProcessing Unit,中央处理器)负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。负载信息L的计算公式为:
式(1)中,x1为应用服务器当前TCP连接数,x2为网络收发包量,x3为CPU负载情况、x4为内存占用情况,a1、a2、a3、a4分别为第一负载因子、第二负载因子、第三负载因子和第四负载因子,a1、a2、a3、a4可根据需要进行调整。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。机器健康状况H的计算公式为:
式(2)中,y1为应用服务器丢包率,y2为应用服务器应用程序的出错信息,b1为第一健康状态因子,b2为第二健康状态因子,m为应用服务器是否允许访问的标志,当应用服务器是否允许访问的标志允许访问时m为1,应用服务器是否允许访问的标志不允许访问时m为0。
应用终端120接收每次各应用服务器130对该测速请求的响应信息,以及获取每次测速的网络参数,并将每次测速的网络参数和每次各应用服务器130对该测速请求的响应信息发送给网络路由评测装置110。其中,网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到,计算公式为:
式(3)中,z为延时时间,c为延时因子,延时因子可根据需要进行调整。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到,计算公式为:
式(4)中,r为丢包率,d为丢包率因子,丢包率因子可根据需要进行调整。
网络路由评测装置110根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对应用终端到各应用服务器的测速数据分别进行处理得到应用终端接入各应用服务器的预测数据,根据该预测数据选取符合预定要求的应用服务器130作为与应用终端连接的目标应用服务器,并将该目标应用服务器发送给应用终端。具体的,网络路由评测装置110对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。测速数据的计算公式为:
W=w1H+w2L+w3R+w4F (5)
式(5)中,w1、w2、w3和w4分别为机器健康状况H、应用服务器的负载信息L、延时时间所对应的值R、丢包情况F的系数。
网络路由评测装置110将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到应用终端接入应用服务器的预测数据。具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根。时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取。具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N,例如预测数据M为预测数据,W1、W2、W3为测速数据。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根,例如预测数据时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取,例如W1、W2、W3为测速数据,k1、k2、k3分别为W1、W2、W3的个数。
应用终端120与目标应用服务器建立通信连接。
应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
图2为一个实施例中应用服务器的选取方法的流程图。图2中的应用服务器的选取方法应用于图1的应用环境中,以网络路由评测装置角度描述。如图2所示,该应用服务器的选取方法,包括以下步骤:
步骤202,接收应用终端发送的向各应用服务器发起测速请求所得到的每次测速的网络参数及每次各应用服务器对该测速请求的响应信息。
具体的,应用终端每次向各应用服务器地址所对应的各应用服务器发起测速请求后,均接收到各应用服务器对测试请求的响应信息,同时获取每次测速的网络参数,然后将每次测速的网络参数及每次各应用服务器对测速请求的响应信息发送给网络路由评测装置。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。负载信息L的计算公式为:
式(1)中,x1为应用服务器当前TCP连接数,x2为网络收发包量,x3为CPU负载情况、x4为内存占用情况,a1、a2、a3、a4分别为第一负载因子、第二负载因子、第三负载因子和第四负载因子,a1、a2、a3、a4可根据需要进行调整。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。机器健康状况H的计算公式为:
式(2)中,y1为应用服务器丢包率,y2为应用服务器应用程序的出错信息,b1为第一健康状态因子,b2为第二健康状态因子,m为应用服务器是否允许访问的标志,当应用服务器是否允许访问的标志允许访问时m为1,应用服务器是否允许访问的标志不允许访问时m为0。若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值为0。若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到,计算公式为:
式(3)中,z为延时时间,c为延时因子,延时因子可根据需要进行调整。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到,计算公式为:
式(4)中,r为丢包率,d为丢包率因子,丢包率因子可根据需要进行调整。
步骤204,根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据。
本实施例中,步骤204包括:对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
测速数据的计算公式为:
W=w1H+w2L+w3R+w4F (5)
式(5)中,w1、w2、w3和w4分别为机器健康状况H、应用服务器的负载信息L、延时时间所对应的值R、丢包情况F的系数。为了简化计算可将w1、w2、w3和w4均设为1。需要说明的是,若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值H为0,则W也为0,若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响,则采用公式(5)计算。
步骤206,对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据。
本实施例中,步骤206包括:将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N,例如预测数据M为预测数据,W1、W2、W3为测速数据。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根,例如预测数据时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取,例如W1、W2、W3为测速数据,k1、k2、k3分别为W1、W2、W3的个数。
步骤208,根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
步骤208包括:选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。目标应用服务器为最优应用服务器。
上述应用服务器的选取方法,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
图3为另一个实施例中应用服务器的选取方法的流程图。图3中的应用服务器的选取方法应用于图1的应用环境中,以应用终端角度描述。如图3所示,该应用服务器的选取方法,包括以下步骤:
步骤302,获取测速指令。
具体的,应用终端获取到网络路由评测装置下发的测速指令。
步骤304,根据该测速指令向各应用服务器发起测速请求。
具体的,应用终端根据该测速指令按照获取的各应用服务器地址向各应用服务器发起测速请求。
图4为应用终端向所有应用服务器发起测速请求的示意图。如图4所示,该网络路由评测装置410向应用终端420下发测速指令,应用终端420向应用服务器1、应用服务器2、应用服务器3,……,应用服务器N分别发起测速请求。
步骤306,获取每次测速的网络参数及每次各应用服务器对该测速请求的响应信息。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。负载信息L的计算公式为:
式(1)中,x1为应用服务器当前TCP连接数,x2为网络收发包量,x3为CPU负载情况、x4为内存占用情况,a1、a2、a3、a4分别为第一负载因子、第二负载因子、第三负载因子和第四负载因子,a1、a2、a3、a4可根据需要进行调整。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。机器健康状况H的计算公式为:
式(2)中,y1为应用服务器丢包率,y2为应用服务器应用程序的出错信息,b1为第一健康状态因子,b2为第二健康状态因子,m为应用服务器是否允许访问的标志,当应用服务器是否允许访问的标志允许访问时m为1,应用服务器是否允许访问的标志不允许访问时m为0。若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值为0。若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到,计算公式为:
式(3)中,z为延时时间,c为延时因子,延时因子可根据需要进行调整。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到,计算公式为:
式(4)中,r为丢包率,d为丢包率因子,丢包率因子可根据需要进行调整。
步骤308,发送该每次测速的网络参数及每次各应用服务器对该测速请求的响应信息至网络路由评测装置,以使该网络路由评测装置根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据,根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
该根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据包括:对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
测速数据的计算公式为:
W=w1H+w2L+w3R+w4F (5)
式(5)中,w1、w2、w3和w4分别为机器健康状况H、应用服务器的负载信息L、延时时间所对应的值R、丢包情况F的系数。为了简化计算可将w1、w2、w3和w4均设为1。需要说明的是,若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值H为0,则W也为0,若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响,则采用公式(5)计算。
对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据包括:将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N,例如预测数据M为预测数据,W1、W2、W3为测速数据。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根,例如预测数据时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取,例如W1、W2、W3为测速数据,k1、k2、k3分别为W1、W2、W3的个数。
根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器包括:选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。
步骤310,接收该网络路由评测装置返回的目标应用服务器。
具体的,应用终端可向网络路由评测装置发起询问本次预测的目标应用服务器,接收网络路由评测装置返回的目标应用服务器。
步骤312,与该目标应用服务器建立通信连接。
图5为应用终端连接目标应用服务器的示意图。如图5所示,网络路由评测装置410根据应用终端420发送的询问本次预测的目标应用服务器的请求,返回目标应用服务器给应用终端420,该目标应用服务器为应用服务器N,则将应用终端420连接应用服务器N。
上述应用服务器的选取方法,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
为了说明上述应用服务器的选取方法,举例进行说明。例如收集所有Client(应用终端)的测速数据(W=H+L+R+F),如表1所示,共有4条从Client IP(Internet Protocol,网际协议)1.1.1.1到Sever(应用服务器)IP 2.2.2.2的测速数据,经过计算,它们的测速数据值W分别为120、160、200和240,另外,还有4条从Client IP 1.1.1.1到Server IP 3.3.3.3的测速数据,经过计算,它们的测速数据值W分别为160、200、240和280。
表1
算术平均预测算法的处理过程如表2所示,对Client IP 1.1.1.1到Server IP2.2.2.2的4条测速数据(W分别为120、160、200和240)做算术平均,得到Client IP 1.1.1.1接入Server IP 2.2.2.2的预测数据M=(120+160+200+240)/4=180;对Client IP1.1.1.1到Server IP 3.3.3.3的4条测速数据(W分别为160、200、240和280)做算术平均,得到Client IP 1.1.1.1接入Server IP 3.3.3.3的预测数据M=(160+200+240+280)/4=220。这样,根据上述预测数据,就得到了Client IP 1.1.1.1应该选择的最优Server是Server IP 3.3.3.3,当Client IP 1.1.1.1向网络路由质量评测装置发起询问请求,询问本次预测的最优Server(即目标应用服务器)时,网络路由质量评测装置就会返回ServerIP 3.3.3.3。
表2
图6为一个实施例中应用服务器的选取装置的结构示意图。图6中的应用服务器的选取装置应用于图1的应用环境中,以网络路由装置角度描述。该应用服务器的选取装置包括参数接收模块610、测速数据获取模块620、预测数据获取模块630和选取模块640。其中:
参数接收模块610用于接收应用终端发送的向各应用服务器发起测速请求所得到的每次测速的网络参数及每次各应用服务器对该测速请求的响应信息。
具体的,应用终端每次向各应用服务器地址所对应的各应用服务器发起测速请求后,均接收到各应用服务器对测试请求的响应信息,同时获取每次测速的网络参数,然后将每次测速的网络参数及每次各应用服务器对测速请求的响应信息发送给网络路由评测装置。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为6。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值为0。若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到。
测速数据获取模块620用于根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据。本实施例中,测速数据获取模块620还用于对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
预测数据获取模块630用于对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据。本实施例中,预测数据获取模块630还用于将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。
选取模块640用于根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。本实施例中,选取模块640还用于选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。
上述应用服务器的选取装置,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
图7为另一个实施例中应用服务器的选取装置的结构示意图。图7中的应用服务器的选取装置应用于图1的应用环境中,以应用终端角度描述。该应用服务器的选取装置包括指令获取模块710、测速请求发起模块720、参数获取模块730、发送模块740、接收模块750和连接建立模块760。其中:
指令获取模块710用于获取测速指令。
测速请求发起模块720用于根据该测速指令向各应用服务器发起测速请求。
参数获取模块730用于获取每次测速的网络参数及每次各应用服务器对该测速请求的响应信息。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到。
发送模块740用于发送该每次测速的网络参数及每次各应用服务器对该测速请求的响应信息至网络路由评测装置,以使该网络路由评测装置根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据,根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
该根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据包括:对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
测速数据的计算公式为:
W=w1H+w2L+w3R+w4F (5)
式(5)中,w1、w2、w3和w4分别为机器健康状况H、应用服务器的负载信息L、延时时间所对应的值R、丢包情况F的系数。为了简化计算可将w1、w2、w3和w4均设为1。需要说明的是,若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值H为0,则W也为0,若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响,则采用公式(5)计算。
对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据包括:将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N,例如预测数据M为预测数据,W1、W2、W3为测速数据。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根,例如预测数据时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取,例如W1、W2、W3为测速数据,k1、k2、k3分别为W1、W2、W3的个数。
根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器包括:选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。
接收模块750用于接收该网络路由评测装置返回的目标应用服务器。
连接建立模块760用于与目标应用服务器建立通信连接。
上述应用服务器的选取装置,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
图8为一个实施例中应用服务器的选取系统的结构示意图。如图8所示,该应用服务器的选取系统,包括网络路由评测装置810、应用终端820和若干应用服务器830。该应用服务器830包括应用服务器1、应用服务器2、应用服务器3,……,应用服务器N。
网络路由评测装置810用于向所述应用终端下发测速指令。
应用终端820用于根据该测速指令向各应用服务器发起测速请求,并接收每次各应用服务器对该测速请求的响应信息,以及获取每次测速的网络参数,并将每次测速的网络参数和每次各应用服务器对该测速请求的响应信息发送给该网络路由评测装置810。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。负载信息L的计算公式为:
式(1)中,x1为应用服务器当前TCP连接数,x2为网络收发包量,x3为CPU负载情况、x4为内存占用情况,a1、a2、a3、a4分别为第一负载因子、第二负载因子、第三负载因子和第四负载因子,a1、a2、a3、a4可根据需要进行调整。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。机器健康状况H的计算公式为:
式(2)中,y1为应用服务器丢包率,y2为应用服务器应用程序的出错信息,b1为第一健康状态因子,b2为第二健康状态因子,m为应用服务器是否允许访问的标志,当应用服务器是否允许访问的标志允许访问时m为1,应用服务器是否允许访问的标志不允许访问时m为0。若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值为0。若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到,计算公式为:
式(3)中,z为延时时间,c为延时因子,延时因子可根据需要进行调整。
丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到,计算公式为:
式(4)中,r为丢包率,d为丢包率因子,丢包率因子可根据需要进行调整。
该网络路由评测装置810还用于根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据,根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器,并将该目标应用服务器发送给该应用终端820。
本实施例中,该网络路由评测装置810还用于对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
测速数据的计算公式为:
W=w1H+w2L+w3R+w4F (5)
式(5)中,w1、w2、w3和w4分别为机器健康状况H、应用服务器的负载信息L、延时时间所对应的值R、丢包情况F的系数。为了简化计算可将w1、w2、w3和w4均设为1。需要说明的是,若应用服务器是否允许访问的标志为不允许访问,则该应用服务器的机器健康状况值H为0,则W也为0,若应用服务器是否允许访问的标志为允许访问,则该应用服务器的机器健康状况值不受标志影响,则采用公式(5)计算。
该网络路由评测装置810还用于将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。
具体的,算术平均算法是指将N个测速数据相加求和,然后将求得的和除以N,例如预测数据M为预测数据,W1、W2、W3为测速数据。几何平均算法是指将N个测速数据相乘所得的积,然后求所得的积的平方根,例如预测数据时间序列算法是指利用统计的时间序列中找出演变模式,建立数学模型,再对预测指标的未来发展趋势做出定量估算,例如可采用加权平均方式求取,例如W1、W2、W3为测速数据,k1、k2、k3分别为W1、W2、W3的个数。
该网络路由评测装置810还用于选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。目标应用服务器为最优应用服务器。
该应用终端820与该目标应用服务器建立通信连接。
上述应用服务器的选取系统,应用终端通过向各应用服务器发起测速请求,接收返回的响应信息,以及获取到每次测速的网络参数,根据测速的网络参数及响应信息计算应用终端到应用服务器的测速数据,再根据测速数据计算应用终端到应用服务器的预测数据,选取符合预定要求的应用服务器作为目标服务器,而不是随机选取的应用服务器,因综合考虑了测速的网络参数及应用服务器自身的响应信息,选取符合预定要求的应用服务器,均衡了网络资源,提高了网络资源的利用率,提高了应用客户端访问应用服务器的速度,且综合了测速的网络参数及应用服务器响应信息多种因素,选取的结果更加准确。
图9为应用服务器的选取系统的工作时序示意图。结合图8和图9所示,应用服务器的选取系统的工作过程包括:
(1)该网络路由评测装置向该应用终端下发测速指令。
(2)该应用终端用于根据该测速指令向各应用服务器发起测速请求。
(3)应用服务器接收该测速请求,并将响应信息返回给应用终端。
该响应信息包括负载信息和机器健康状况。负载信息L包括应用服务器当前TCP连接数、网络收发包量、CPU负载情况、内存占用情况等,若当前TCP连接数越低、网络收发包量越低、CPU负载越低、内存占用越低,则负载信息L的值越高。负载信息L为将应用服务器当前TCP连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、CPU负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到。其中,第一负载因子、第二负载因子、第三负载因子和第四负载因子可以根据需要调整,例如第一因子、第二因子、第三因子和第四因子均为1,或者第一负载因子为1、第二负载因子为2、第三负载因子为3、第四负载因子为4。
机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志等,应用服务器丢包率越低、应用服务器应用程序的出错信息越少,机器健康状况H的值越高。若应用服务器是否允许访问的标志被设置为不允许访问,则机器健康状况H的值为0,若应用服务器是否允许访问的标志被设置为允许访问,则不影响机器健康状况H的取值。
机器健康状况H为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到。
(4)应用终端接收每次各应用服务器对该测速请求的响应信息,以及获取每次测速的网络参数,并将每次测速的网络参数和每次各应用服务器对该测速请求的响应信息发送给该网络路由评测装置。
网络参数包括延时时间和丢包情况。延时时间是指应用终端发起测速请求至接收到反馈的间隔时间。延时时间所对应的值R与延时时间成反比,延时时间越小,R越大,延时时间所对应的值R为将延时时间倒数乘以延时因子得到。丢包情况是指数据包传输中丢失的情况,可采用丢包率进行衡量,丢包率是指数据包丢失部分与所传数据包总数的比值,丢包情况与丢包率成反比,丢包率越大,丢包情况F越小,丢包情况F为丢包率倒数乘以丢包率因子得到。
(5)该网络路由评测装置根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据,对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据,根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器。
该根据每次测速的网络参数及每次各应用服务器响应信息得到每次应用终端到各应用服务器的测速数据包括:对每次测速的延时时间和丢包情况以及每次应用服务器响应信息中的应用服务器的负载信息和机器健康状况分别乘以各自的系数,再求和得到每次应用终端到应用服务器的测速数据。
对该应用终端到各应用服务器的测速数据分别进行处理得到该应用终端接入各应用服务器的预测数据包括:将应用终端到各应用服务器的测速数据均采用算术平均算法、几何平均算法或时序序列算法进行处理得到该应用终端接入该应用服务器的预测数据。
根据该预测数据选取符合预定要求的应用服务器作为与应用终端连接的目标应用服务器包括:选取符合预定要求为选取预测数据最大的应用服务器作为与应用终端连接的目标应用服务器。
(6)应用终端向网络路由评测装置发起本次预测的目标应用服务器的询问请求。
(7)网络路由评测装置将目标应用服务器返回给应用终端。
(8)该应用终端与该目标应用服务器建立通信连接。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (12)
1.一种应用服务器的选取方法,其特征在于,所述方法包括:
接收应用终端发送的向各应用服务器发起测速请求所得到的测速的网络参数及各应用服务器对所述测速请求的响应信息;
其中,所述应用服务器的数量为至少两个,所述网络参数包括延时时间和丢包情况,所述延时时间是指应用终端发起测速请求至接收到反馈的间隔时间,所述响应信息包括应用服务器的负载信息和机器健康状况,所述负载信息为将应用服务器当前传输控制协议连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、中央处理器负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到;
将所述延时时间的倒数乘以延时因子得到所述延时时间所对应的值;
确定丢包率,所述丢包率是指数据包丢失部分与所传数据包总数的比值;
其中,所述丢包情况为所述丢包率倒数乘以丢包率因子得到;所述机器健康状况为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到;
对所述延时时间所对应的值、所述丢包情况、所述应用服务器的负载信息以及所述机器健康状况,分别乘以各自的系数再求和,得到应用终端到各应用服务器的测速数据;
当所述测速的次数为至少两次时,对所述测速数据进行算术平均处理、几何平均处理或时序序列处理,得到所述应用终端接入各所述应用服务器的预测数据;
选取所述预测数据最大的应用服务器作为与应用终端连接的目标应用服务器;
接收所述应用终端发送的针对所述目标应用服务器的询问请求,返回目标应用服务器的互联网协议地址给所述应用终端,以使所述应用终端基于所述互联网协议地址与所述目标应用服务器建立通信连接。
2.根据权利要求1所述的方法,其特征在于,所述机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志;若应用服务器是否允许访问的标志为不允许访问,则所述应用服务器的机器健康状况值为0。
3.一种应用服务器的选取方法,其特征在于,所述方法包括:
获取测速指令;
根据所述测速指令向各应用服务器发起测速请求;
获取测速的网络参数及各应用服务器对所述测速请求的响应信息;其中,所述应用服务器的数量为至少两个,所述网络参数包括延时时间和丢包情况,所述延时时间是指应用终端发起测速请求至接收到反馈的间隔时间,所述响应信息包括应用服务器的负载信息和机器健康状况,所述负载信息为将应用服务器当前传输控制协议连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、中央处理器负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到;
将所述延时时间的倒数乘以延时因子得到所述延时时间所对应的值;
确定丢包率,所述丢包率是指数据包丢失部分与所传数据包总数的比值;
其中,所述丢包情况为所述丢包率倒数乘以丢包率因子得到;所述机器健康状况为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到;
发送所述测速的网络参数及各应用服务器对所述测速请求的响应信息至网络路由评测装置,以使所述网络路由评测装置对所述延时时间所对应的值、丢包情况、应用服务器的负载信息以及机器健康状况,分别乘以各自的系数再求和,得到应用终端到各应用服务器的测速数据;当所述测速的次数为至少两次时,对所述测速数据进行算术平均处理、几何平均处理或时序序列处理,得到所述应用终端接入各所述应用服务器的预测数据,选取所述预测数据最大的应用服务器作为与应用终端连接的目标应用服务器;
向所述网络路由评测装置发送针对所述目标应用服务器的询问请求;
接收所述网络路由评测装置响应于所述询问请求返回的所述目标应用服务器的互联网协议地址;
基于所述互联网协议地址与所述目标应用服务器建立通信连接。
4.根据权利要求3所述的方法,其特征在于,所述机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志;若应用服务器是否允许访问的标志为不允许访问,则所述应用服务器的机器健康状况值为0。
5.一种应用服务器的选取装置,其特征在于,所述装置包括:
参数接收模块,用于接收应用终端发送的向各应用服务器发起测速请求所得到的测速的网络参数及各应用服务器对所述测速请求的响应信息;其中,所述应用服务器的数量为至少两个,所述网络参数包括延时时间和丢包情况,所述延时时间是指应用终端发起测速请求至接收到反馈的间隔时间,所述响应信息包括应用服务器的负载信息和机器健康状况,所述负载信息为将应用服务器当前传输控制协议连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、中央处理器负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到;将所述延时时间的倒数乘以延时因子得到所述延时时间所对应的值;确定丢包率,所述丢包率是指数据包丢失部分与所传数据包总数的比值;其中,所述丢包情况为所述丢包率倒数乘以丢包率因子得到;所述机器健康状况为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到;
测速数据获取模块,用于对所述延时时间所对应的值、所述丢包情况、所述应用服务器的负载信息以及所述机器健康状况,分别乘以各自的系数再求和,得到应用终端到各应用服务器的测速数据;
预测数据获取模块,用于当所述测速的次数为至少两次时,对所述测速数据进行算术平均处理、几何平均处理或时序序列处理,得到所述应用终端接入各所述应用服务器的预测数据;
选取模块,用于选取所述预测数据最大的应用服务器作为与应用终端连接的目标应用服务器;接收所述应用终端发送的针对所述目标应用服务器的询问请求,返回目标应用服务器的互联网协议地址给所述应用终端,以使所述应用终端基于所述互联网协议地址与所述目标应用服务器建立通信连接。
6.根据权利要求5所述的装置,其特征在于,所述机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志;若应用服务器是否允许访问的标志为不允许访问,则所述应用服务器的机器健康状况值为0。
7.一种应用服务器的选取装置,其特征在于,所述装置包括:
指令获取模块,用于获取测速指令;
测速请求发起模块,用于根据所述测速指令向各应用服务器发起测速请求;
参数获取模块,用于获取测速的网络参数及各应用服务器对所述测速请求的响应信息;其中,所述应用服务器的数量为至少两个,所述网络参数包括延时时间和丢包情况,所述延时时间是指应用终端发起测速请求至接收到反馈的间隔时间,所述响应信息包括应用服务器的负载信息和机器健康状况,所述负载信息为将应用服务器当前传输控制协议连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、中央处理器负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到;将所述延时时间的倒数乘以延时因子得到所述延时时间所对应的值;确定丢包率,所述丢包率是指数据包丢失部分与所传数据包总数的比值;其中,所述丢包情况为所述丢包率倒数乘以丢包率因子得到;所述机器健康状况为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到;
发送模块,用于发送所述测速的网络参数及各应用服务器对所述测速请求的响应信息至网络路由评测装置,以使所述网络路由评测装置对所述延时时间所对应的值、丢包情况、应用服务器的负载信息以及机器健康状况,分别乘以各自的系数再求和,得到应用终端到各应用服务器的测速数据;当所述测速的次数为至少两次时,对所述测速数据进行算术平均处理、几何平均处理或时序序列处理,得到所述应用终端接入各所述应用服务器的预测数据,选取所述预测数据最大的应用服务器作为与应用终端连接的目标应用服务器;向所述网络路由评测装置发送针对所述目标应用服务器的询问请求;
接收模块,用于接收所述网络路由评测装置响应于所述询问请求返回的所述目标应用服务器的互联网协议地址;
连接建立模块,用于基于所述互联网协议地址与目标应用服务器建立通信连接。
8.根据权利要求7所述的装置,其特征在于,所述机器健康状况包括应用服务器丢包率、应用服务器应用程序的出错信息、应用服务器是否允许访问的标志;若应用服务器是否允许访问的标志为不允许访问,则所述应用服务器的机器健康状况值为0。
9.一种应用服务器的选取系统,其特征在于,包括应用终端、网络路由评测装置和若干应用服务器;
所述网络路由评测装置用于向所述应用终端下发测速指令;
所述应用终端用于根据所述测速指令向各应用服务器发起测速请求,并接收各应用服务器对所述测速请求的响应信息,以及获取测速的网络参数,并将测速的网络参数和各应用服务器对所述测速请求的响应信息发送给所述网络路由评测装置;其中,所述应用服务器的数量为至少两个,所述网络参数包括延时时间和丢包情况,所述延时时间是指应用终端发起测速请求至接收到反馈的间隔时间,所述响应信息包括应用服务器的负载信息和机器健康状况,所述负载信息为将应用服务器当前传输控制协议连接数倒数乘以第一负载因子、网络收发包量倒数乘以第二负载因子、中央处理器负载情况倒数乘以第三负载因子、内存占用情况倒数乘以第四负载因子,再将所得的积求和得到;将所述延时时间的倒数乘以延时因子得到所述延时时间所对应的值;确定丢包率,所述丢包率是指数据包丢失部分与所传数据包总数的比值;其中,所述丢包情况为所述丢包率倒数乘以丢包率因子得到;所述机器健康状况为将应用服务器丢包率倒数乘以第一健康状况因子、应用服务器应用程序的出错信息倒数乘以第二健康状况因子,再求取所得积的和,再乘以应用服务器是否允许访问的标志得到;
所述网络路由评测装置还用于对所述延时时间所对应的值、所述丢包情况、所述应用服务器的负载信息以及所述机器健康状况,分别乘以各自的系数再求和,得到应用终端到各应用服务器的测速数据;当所述测速的次数为至少两次时,对所述测速数据进行算术平均处理、几何平均处理或时序序列处理,得到所述应用终端接入各所述应用服务器的预测数据,选取所述预测数据最大的应用服务器作为与应用终端连接的目标应用服务器,并响应于所述应用终端发送的针对所述目标应用服务器的询问请求,将所述目标应用服务器的互联网协议地址发送给所述应用终端;
所述应用终端与所述目标应用服务器建立通信连接。
10.根据权利要求9所述的系统,其特征在于,所述机器健康状况包括应用服务器丢包率、应用服务器中应用程序的出错信息、应用服务器是否允许访问的标志;若应用服务器是否允许访问的标志为不允许访问,则所述应用服务器的机器健康状况值为0。
11.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至2或者3至4中任一项所述应用服务器的选取方法的步骤。
12.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至2或者3至4中任一项所述应用服务器的选取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070973.7A CN105991708B (zh) | 2015-02-10 | 2015-02-10 | 应用服务器的选取方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070973.7A CN105991708B (zh) | 2015-02-10 | 2015-02-10 | 应用服务器的选取方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105991708A CN105991708A (zh) | 2016-10-05 |
CN105991708B true CN105991708B (zh) | 2021-12-10 |
Family
ID=57041619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510070973.7A Active CN105991708B (zh) | 2015-02-10 | 2015-02-10 | 应用服务器的选取方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105991708B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108111431B (zh) * | 2016-11-24 | 2021-09-24 | 腾讯科技(北京)有限公司 | 业务数据发送方法、装置、计算设备及计算机可读存储介质 |
WO2020041988A1 (zh) * | 2018-08-28 | 2020-03-05 | 华为技术有限公司 | 一种服务器节点的选择方法和终端设备 |
CN111510777B (zh) * | 2019-01-30 | 2021-11-23 | 上海哔哩哔哩科技有限公司 | 测量网速的方法、装置、计算机设备及可读存储介质 |
CN110113446B (zh) * | 2019-05-23 | 2022-03-18 | 竞技世界(成都)网络技术有限公司 | 一种客户端寻址方法、装置及系统 |
CN110336888B (zh) * | 2019-07-12 | 2022-08-12 | 深圳市网心科技有限公司 | 一种服务器分配方法、装置、系统及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281190A (zh) * | 2011-07-01 | 2011-12-14 | 杭州斯凯网络科技有限公司 | 负载均衡装置组网方法以及服务器、客户端接入方法 |
CN102340554A (zh) * | 2011-09-29 | 2012-02-01 | 奇智软件(北京)有限公司 | 一种域名系统dns的最优应用服务器选取方法和装置 |
CN102387049A (zh) * | 2011-11-25 | 2012-03-21 | 浪潮电子信息产业股份有限公司 | 一种基于snmp协议的云服务质量评价方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3813956B2 (ja) * | 2003-10-31 | 2006-08-23 | Necアクセステクニカ株式会社 | Adslモデム装置および接続モード選択方法 |
CN101083517A (zh) * | 2006-05-30 | 2007-12-05 | 华为技术有限公司 | 业务网络内提供端到端服务质量保证的装置和方法 |
CN101286921B (zh) * | 2007-05-16 | 2012-07-25 | 清华大学 | 互联网面向用户的跨域的端到端网络路由选择方法 |
CN103139007A (zh) * | 2011-12-05 | 2013-06-05 | 阿里巴巴集团控股有限公司 | 应用服务器性能检测方法及系统 |
CN104253873B (zh) * | 2013-06-25 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 域名访问方法、终端及域名访问系统 |
-
2015
- 2015-02-10 CN CN201510070973.7A patent/CN105991708B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281190A (zh) * | 2011-07-01 | 2011-12-14 | 杭州斯凯网络科技有限公司 | 负载均衡装置组网方法以及服务器、客户端接入方法 |
CN102340554A (zh) * | 2011-09-29 | 2012-02-01 | 奇智软件(北京)有限公司 | 一种域名系统dns的最优应用服务器选取方法和装置 |
CN102387049A (zh) * | 2011-11-25 | 2012-03-21 | 浪潮电子信息产业股份有限公司 | 一种基于snmp协议的云服务质量评价方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105991708A (zh) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105991708B (zh) | 应用服务器的选取方法、装置和系统 | |
CN105812255B (zh) | 回源线路的选择方法及装置 | |
CN109167812B (zh) | 评估服务质量、确定调整策略的方法、服务器及存储介质 | |
CN110247824B (zh) | 一种游戏网络的测试方法及装置、电子设备、存储介质 | |
JP6558374B2 (ja) | スケール数推定装置、スケール数管理システム、スケール数推定方法、スケール数管理方法、および、コンピュータ・プログラム | |
US20110153828A1 (en) | Load balancing apparatus and method for regulating load using the same | |
CN105100152A (zh) | 应用服务器的选取方法和系统、应用客户端 | |
CN105610995A (zh) | Dns服务器的选择方法、dns服务器的选择装置和终端 | |
CN105007336B (zh) | 服务器的负载均衡方法及其系统 | |
US20170163509A1 (en) | Inter-node distance metric method and system | |
CN110113446B (zh) | 一种客户端寻址方法、装置及系统 | |
JP5957419B2 (ja) | QoE推定装置、QoE推定方法及びプログラム | |
WO2017096837A1 (zh) | 节点间距离的度量方法及系统 | |
CN110650195B (zh) | 分布式负载均衡方法以及装置 | |
CN114866480A (zh) | 一种nat负载均衡的实现方法、系统、电子设备及存储介质 | |
CN109525933B (zh) | 位置隐私保护方法及装置 | |
CN114338695A (zh) | 基于多副本的领导者选举方法、装置、设备及存储介质 | |
Zinner et al. | A discrete-time model for optimizing the processing time of virtualized network functions | |
CN111385328A (zh) | 业务请求的处理方法、系统及电子设备 | |
Harjanti et al. | Load balancing analysis using round-robin and least-connection algorithms for server service response time | |
Gupta et al. | Trust estimation in peer-to-peer network using blue | |
TWI526035B (zh) | A method and apparatus for obtaining a real entity address of a network client | |
CN110891077A (zh) | Cdn节点检测方法及装置 | |
CN115086194A (zh) | 云应用的数据传输方法、计算设备及计算机存储介质 | |
CN111130933B (zh) | 页面流量的预估方法、装置及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |