电子渠道拥塞的检测方法及检测装置
技术领域
本发明涉及互联网领域,特别涉及一种电子渠道拥塞的检测方法及检测装置。
背景技术
随着互联网的发展,不同类型的服务平台之间、服务平台与服务器之间、不同服务器之间的数据交换越来越频繁,数据交换量也越来越大。各种服务平台、服务器通过数据交换给客户提供各项服务,服务平台可以包括购物平台、支付平台等。
电子渠道指的是服务平台与服务器之间的电子通道,包括各种网络设备、防火墙设备、负载均衡设备等。电子渠道的性能,特别是电子渠道拥塞状态可能导致用户的服务请求无法送达服务器,或服务器无法给用户提供需要的业务,或服务器反馈大量重复信息对用户造成不必要的骚扰,可见,电子渠道的拥塞状态严重制约了平台用户的使用体验。
现有技术中,通常采用定时采集服务器接入服务器平台的路由器接入端口的带宽占用情况来检测电子渠道的拥塞程度。服务器接入服务平台路由器的方式有两种,一种是非专线接入,另一种是专线接入。
非专线接入指的是多个服务器复用同一个路由器接口,这种情况下,通过路由器接口带宽占用情况通常无法实时的准确判断分配给每个服务器的带宽的占用情况,因此无法准确检测电子渠道的拥塞状态。
专线接入指的是服务器通过独占一个路由器接入端口的带宽来接入服务平台。大部分专线的带宽资源充裕,很少会因数据交换量太大而占满;但是,服务平台与服务器之间的其他设备的故障或性能不足也会造成电子渠道的拥塞。可见,专线接入时,通过检测路由器的带宽占用情况不足以检测电子渠道的拥塞状况。现实中,亟需提供一种实时且较为准确、全面的检测电子渠道拥塞的方法。
发明内容
本发明实施例中提供了一种电子渠道拥塞的检测方法和检测装置,能解决现有技术中无法实时、准确检测电子渠道拥塞状态,用户的使用体验低的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
一方面,提供了一种电子渠道拥塞的检测方法,所述方法包括:
从路由器检测端口的检测数据流中获取TCP报文,所述检测数据流是路由器接入端口与服务器之间交互数据流的镜像;
获取所述TCP报文所属的电子渠道以及所述电子渠道对应的性能参数值;
获取所述TCP报文的响应参数值,将所述响应参数值的加权值作为检测值;
将所述检测值与所述性能参数值相比较,若性能超限,则确定所述TCP报文所属的电子渠道拥塞;
所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;
其中,所述性能参数值用于指示所述电子渠道通畅时的性能。
可选的,所述从检测数据流中获取TCP报文之前,所述方法还包括:
将所述路由器接入端口与所述服务器之间交互数据流镜像至所述路由器检测端口;
从所述路由器检测端口接收所述检测数据流。
可选的,所述从路由器检测端口的检测数据流中获取TCP报文之前,所述方法还包括:
生成所述电子渠道性能基线;
所述生成电子渠道的性能基线包括:
从所述路由器检测端口接收所述检测数据流;
选取多个参考时刻,在每一个所述参考时刻,从所述检测数据流中获取所述电子渠道对应的多条TCP报文的响应参数值,获取多条TCP报文的响应参数值的加权值作为参考值;
将多个所述参考时刻对应的参考值拟合为一条曲线,作为所述电子渠道性能基线;
其中,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;
所述性能基线在所述参考时刻的取值为所述参考时刻的性能参数值。
可选的,所述性能超限包括:
若当前检测时刻的检测值超过对应时刻的性能参数值的幅度大于第一阈值,则确认所述性能超限。
可选的,所述性能超限包括:
将检测值超过所述对应时刻的性能参数值的幅度大于第一阈值的检测时刻作为超限时刻,若在预设时长内,所述超限时刻的个数大于等于第二阈值,则确认所述性能超限。
可选的,所述性能超限包括:
将检测值超过所述对应时刻的性能参数值的幅度大于第一阈值的检测时刻作为超限时刻,若所述超限时刻的个数大于等于第三阈值,且多个所述超限时刻为连续的检测时刻,则确认所述性能超限。
另一方面,提供了一种电子渠道拥塞的检测装置,所述装置包括:
TCP报文获取单元,用于从路由器检测端口的检测数据流中获取TCP报文,所述检测数据流是路由器接入端口与服务器之间的交互数据流的镜像;
性能参数值获取单元,用于获取所述TCP报文所属的电子渠道以及所述电子渠道对应的性能参数值;
检测值获取单元,用于获取所述TCP报文的响应参数值,将所述响应参数值的加权值作为检测值,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;
比较单元,用于将所述检测值与所述性能参数值相比较,若性能超限,则确定所述TCP报文所属的电子渠道拥塞;
所述性能基线指示所述电子渠道通畅时的性能曲线;
其中,所述性能参数值用于指示所述电子渠道通畅时的性能。
可选的,所述装置还包括:
镜像单元,用于将所述路由器接入端口与所述服务器之间交互数据流镜像至所述路由器检测端口;
接收单元,用于从所述路由器检测端口接收所述检测数据流。
可选的,所述装置还包括生成单元,用于生成所述电子渠道性能基线;
所述生成单元包括:
接收子单元,用于从所述路由器检测端口接收所述检测数据流;
参考值获取子单元,用于选取多个参考时刻,在每一个所述参考时刻:从所述检测数据流中获取所述电子渠道对应的多条TCP报文的响应参数值,获取多条TCP报文的响应参数值的加权值作为参考值;
拟合子单元,用于将多个所述参考时刻对应的参考值拟合为一条曲线,作为所述电子渠道性能基线;
其中,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;
所述性能基线在所述参考时刻的取值为所述参考时刻的性能参数值。
可选的,所述比较单元用于:
若当前检测时刻的检测值超过所述对应时刻的性能参数值的幅度大于第一阈值,则确认所述性能超限。
本发明的实施例中公开了一种电子渠道拥塞检测方法,通过检测端口的检测数据流的来获取响应参数,进而获取检测值,将检测值与性能参数值相比较,来检测电子渠道拥塞状态。由于检测数据流时接入端口与服务器之间交互数据流的镜像,因此对于接入端口的正常业务无干扰,不影响现有的电子渠道上的业务;此外,检测的响应参数有多个,因此可以较为全面、准确的检测电子渠道拥塞状态,从而提高用户的使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1所示为本发明实施例的电子渠道拥塞检测方法的流程图;
图2所示为本发明实施例的获取电子渠道性能基线的示意图;
图3所示为本发明实施例的电子渠道性能基线的示意图;
图4所示为本发明实施例的性能超限的示意图;
图5所示为本发明实施例的性能超限的示意图;
图6所示为本发明实施例的电子渠道拥塞的检测装置。
具体实施方式
本发明如下实施例提供了一种电子渠道拥塞的检测方法及检测装置,能实时、准确检测电子渠道拥塞状态,能提高用户的使用体验。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1所示为本发明实施例的电子渠道拥塞检测方法的流程图,如图1所示,本发明实施例提供了一种电子渠道拥塞检测方法,所述方法包括:
步骤101,从路由器检测端口的检测数据流中获取TCP报文,所述检测数据流是路由器接入端口与服务器之间交互数据流的镜像。
所述从检测数据流中获取TCP报文之前,所述方法还包括:
将所述路由器接入端口与所述服务器之间交互数据流镜像至所述路由器检测端口;
从所述路由器检测端口接收所述检测数据流。
数据镜像功能也可以是路由器本身的功能,也可以是额外设备提供的功能。
将路由器接入端口与服务器之间交互数据流镜像至路由器的检测端口,对于接入端口的正常业务无干扰,不影响现有的电子渠道上的业务。
步骤102,获取所述TCP报文所属的电子渠道以及所述电子渠道对应的性能参数值。
其中,所述性能参数值用于指示所述电子渠道通畅时的性能。
服务平台可能与多个服务商有业务交互,每家服务商可能有多个服务器,每个服务器都可能有多条电子渠道与服务平台有数据交互以保证业务正常交进行,每一条电子渠道都有相应的性能参数值来指示其状态。
步骤103,获取所述TCP报文的响应参数值,将所述响应参数值的加权值作为检测值。
其中,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比。
其中,应用延时可以包括多个应用时延,例如应用延时1和应用延时2。
获取检测值之前可以给每个响应参数设置对应的权重值,响应参数对应的权重值可以根据网络状态、用户需求以及经验值进行设置。例如,Q1=服务器往返时延,其权重值为q1,Q2=网关往返时延,其权重值为q2,Q3=应用延时1,其权重值为q3,Q4=应用延时2,其权重值为q4,Q5=服务器TCP重传比,其权重值为q5,Q6=及网关TCP重传比,其权重值为q6。
因此检测值=Q1×q1+Q2×q2+Q3×q3+Q4×q4+Q5×q5+Q6×q6。
上述TCP报文的相应参数中,网关往返时延对电子渠道的状态影响最大,因此通常网关往返时延的权重值最高。在本发明一个实施例中,为节约***资源,也可以设置网关往返时延的权重值为1,而其他响应参数的权重值为0,在检测响应参数时也只需要检测网关往返时延。
步骤104,将所述检测值与所述性能参数值相比较,若性能超限,则确定所述TCP报文所属的电子渠道拥塞;
本发明实施例的电子渠道拥塞的检测方法,从检测端口的检测数据流中获取TCP报文,对原有业务无影响,同时根据多个响应参数值来检测电子渠道拥塞状态,较为全面、准确,从而能提高用户的使用体验。
在步骤101之前,所述从路由器检测端口的检测数据流中获取TCP报文之前,所述方法还包括:
生成所述电子渠道性能基线;
所述生成电子渠道的性能基线包括:
从所述路由器检测端口接收所述检测数据流;
选取多个参考时刻,在每一个所述参考时刻,从所述检测数据流中获取所述电子渠道对应的多条TCP报文的响应参数值,获取多条TCP报文的响应参数值的加权值作为参考值;
将多个所述参考时刻对应的参考值拟合为一条曲线,作为所述电子渠道性能基线;
其中,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比。所述性能基线在所述参考时刻的取值为所述参考时刻的性能参数值。
实际应用中,电子渠道性能基线无法准确的检测出来,因此本发明实施例中采用了拟合曲线。
图2所示为本发明实施例的获取电子渠道性能基线的示意图,如图2所示,T1、T2、T3、T4……Tn为多个参考时刻,本发明实施例中,相邻两个参考时刻之间的间隔为1秒,在本发明其他实施例中,相邻两个参考时刻之间的间隔也可以为其他时长,间隔时长越短,性能基线就越准确。
如图2所示,T1时刻的参考值为X1,T2时刻的参考值为X2……将多个参考时刻对应的参考值拟合为曲线A1。
为了使性能基线较为准确,本发明实施例中,从T1至Tn可以是72小时,也可以是七天甚至更长。性能基线可以是24小时的性能基线,也可以是七天的性能基线。
本发明实施例提供了几种方式的检测性能超限的方法,第一种方法包括:
若当前检测时刻的检测值超过对应时刻的性能参数值的幅度大于第一阈值,则确认所述性能超限。
本发明实施例还提供了第二种检测性能超限的方法,包括:
将检测值超过所述对应时刻的性能参数值的幅度大于第一阈值的检测时刻作为超限时刻,若在预设时长内,所述超限时刻的个数大于等于第二阈值,则确认所述性能超限。
第三种检测性能超限的方法,包括:
将检测值超过所述对应时刻的性能参数值的幅度大于第一阈值的检测时刻作为超限时刻,若所述超限时刻的个数大于等于第三阈值,且多个所述超限时刻为连续的检测时刻,则确认所述性能超限。
图3所示为本发明实施例的性能超限的示意图,如图3所示,性能基线为24小时性能基线,每间隔1秒检测一次。为便于示例,图3中仅截取了一段时长的性能基线A2。
根据第一种检测方法,第一阈值设置为50%。在Ta时刻,检测值超过电子渠道性能基线在Ta时刻的性能参数值的幅度60%,则确认Ta性能超限,认为该电子渠道拥塞。
该检测方式仅根据一个检测时刻即认为电子渠道拥塞,实时性更强,但是可能会有误判。
如图4所示,第一阈值设置为50%。图4中仅截取了一段时长的性能基线A3。性能基线A3上方的B1为超过性能基线A3幅度50%的线,则在B1上方的检测值对应的检测时刻均为超限时刻。
曲线B1是为了便于示例,以及便于用户直观查看而设置的曲线,实际应用中可以不显示。
根据第二种检测方法,在预设的100秒内,如果累积有90个超限时刻,则认为性能超限。
如图4所示,M1-M2时长为100秒,该时长内有累计超过90个超限时刻,认为M1-M2时间段内性能超限,电子渠道拥塞。图4仅为示意性的表示出M1-M2时间段内超限时刻的个数,并未示出超过90个超限时刻。
根据第三种检测方法,如果有90个超限时刻,且这些超限时刻为连续检测时刻,则认为性能超限。
图5所示为本发明实施例的性能超限的示意图,如图5所示,性能基线为24小时性能基线,每间隔1秒检测一次。为便于示例,图5中仅截取了一段时长的性能基线A3。性能基线A3上方的B1为超过性能基线A3幅度50%的线。如图5所示,Y1-Yn为多个连续的检测时刻,且个数超过90个,则认为Y1-Yn时间段内性能超限,电子渠道拥塞。
图5仅为示意性的表示出Y1-Yn时间段内超限时刻的个数,并未示出连续的90个超限时刻。
第二种和第三种检测方法,根据累计超限时刻或连续超限时刻来检测性能超限,可以避免误判。
本发明实施例的电子渠道拥塞检测方法,对于接入端口的正常业务无干扰,不影响现有的电子渠道上的业务;此外,检测的响应参数有多个,因此可以较为全面、准确的检测电子渠道拥塞状态,提高用户的使用体验。
图6所示为本发明实施例的电子渠道拥塞的检测装置,如图6所示,所述装置包括:
TCP报文获取单元601,用于从路由器检测端口的检测数据流中获取TCP报文,所述检测数据流是路由器接入端口与服务器之间的交互数据流的镜像;
性能参数值获取单元602,用于获取所述TCP报文所属的电子渠道以及所述电子渠道对应的性能参数值;
检测值获取单元603,用于获取所述TCP报文的响应参数值,将所述响应参数值的加权值作为检测值,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;
比较单元604,用于将所述检测值与所述性能参数值相比较,若性能超限,则确定所述TCP报文所属的电子渠道拥塞。
可选的,所述装置还包括:
镜像单元,用于将所述路由器接入端口与服务器之间交互数据流镜像至所述路由器检测端口;
接收单元,用于从所述路由器检测端口接收所述检测数据流。
可选的,所述装置还包括生成单元,用于生成所述电子渠道性能基线;
可选的,所述生成单元包括:
接收子单元,用于从所述路由器检测端口接收所述检测数据流;
参考值获取子单元,用于选取多个参考时刻,在每一个所述参考时刻:从所述检测数据流中获取所述电子渠道对应的多条TCP报文的响应参数值,获取多条TCP报文的响应参数值的加权值作为参考值;
拟合子单元,用于将多个所述参考时刻对应的参考值拟合为一条曲线,作为所述电子渠道性能基线;
其中,所述TCP报文的响应参数包括:服务器往返时延、网关往返时延、应用延时、服务器TCP重传比以及网关TCP重传比;所述性能参数值用于指示所述电子渠道通畅时的性能。
可选的,所述比较单元用于:
若当前检测时刻的检测值超过所述对应时刻的性能参数值的幅度大于第一阈值,则确认所述性能超限。
本发明实施例的电子渠道拥塞检测装置,从检测端口的检测数据流中获取TCP报文,对原有业务无影响,同时根据多个响应参数值来检测电子渠道拥塞状态,较为全面、准确,从而提高用户的使用体验。
本发明的实施例中公开了一种电子渠道拥塞检测方法和检测装置,从检测端口的检测数据流中获取TCP报文,对原有业务无影响,同时根据多个响应参数值与性能参数值的比较来检测电子渠道拥塞状态,较为全面、准确,从而能提高用户的使用体验。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件的方式来实现,通用硬件包括通用集成电路、通用CPU、通用存储器、通用元器件等,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。