CN107547620B - 一种响应时间获取方法及装置 - Google Patents

一种响应时间获取方法及装置 Download PDF

Info

Publication number
CN107547620B
CN107547620B CN201710479551.4A CN201710479551A CN107547620B CN 107547620 B CN107547620 B CN 107547620B CN 201710479551 A CN201710479551 A CN 201710479551A CN 107547620 B CN107547620 B CN 107547620B
Authority
CN
China
Prior art keywords
server
time
response
service message
received
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
Application number
CN201710479551.4A
Other languages
English (en)
Other versions
CN107547620A (zh
Inventor
隋伟
于洪强
许超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Security Technologies Co Ltd
Original Assignee
New H3C Security Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Security Technologies Co Ltd filed Critical New H3C Security Technologies Co Ltd
Priority to CN201710479551.4A priority Critical patent/CN107547620B/zh
Publication of CN107547620A publication Critical patent/CN107547620A/zh
Application granted granted Critical
Publication of CN107547620B publication Critical patent/CN107547620B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本申请实施例提供了一种响应时间获取方法及装置,方法包括:SLB设备将接收的客户端发送给服务器的业务报文转发给服务器,并记录转发业务报文的发送时间;SLB设备记录接收服务器反馈的针对业务报文的响应报文的接收时间;SLB设备计算发送时间和接收时间的时间差,获得针对服务器的计算时间;SLB设备根据针对服务器的计算时间,确定服务器的响应时间。应用本申请实施例,减轻了SLB设备和服务器的负担。

Description

一种响应时间获取方法及装置
技术领域
本申请涉及通信技术领域,特别是涉及一种响应时间获取方法及装置。
背景技术
目前,SLB(Server Load Balance,服务器负载均衡)设备根据服务器的响应时间对流量进行负载均衡处理,也就是,将客户端的流量转发给响应时间最小的服务器处理。
现有技术中,SLB设备获取响应时间的方式为:定时的向各个服务器发送探测报文,接收各个服务器反馈的响应报文,计算接收响应报文的时间和发送探测报文的时间差,将该时间差的绝对值确定为响应时间。
这种情况下,在获取响应时间时,SLB设备和服务器需要额外处理探测报文和响应报文,增加了SLB设备和服务器的负担。
发明内容
本申请实施例的目的在于提供一种响应时间获取方法及装置,以减轻SLB设备和服务器的负担。具体技术方案如下:
一方面,本申请实施例公开了一种响应时间获取方法,应用于SLB设备,所述方法包括:
将接收的客户端发送给服务器的业务报文转发给所述服务器,并记录转发所述业务报文的发送时间;
记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
计算所述发送时间和所述接收时间的时间差,获得针对所述服务器的计算时间;
根据针对所述服务器的计算时间,确定所述服务器的响应时间。
二方面,本申请实施例公开了一种响应时间获取装置,应用于SLB设备,所述装置包括:
转发单元,用于将接收的客户端发送给服务器的业务报文转发给所述服务器,并记录转发所述业务报文的发送时间;
记录单元,用于记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
计算单元,用于计算所述发送时间和所述接收时间的时间差,获得针对所述服务器的计算时间;
确定单元,用于根据针对所述服务器的计算时间,确定所述服务器的响应时间。
三方面,本申请实施例公开了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述的响应时间获取方法步骤。
四方面,本申请实施例公开了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现上述的响应时间获取方法步骤。
本申请实施例中,SLB设备将接收的客户端发送的业务报文转发给服务器,记录转发业务报文的发送时间;另外,记录接收针对业务报文的响应报文的接收时间;计算出发送时间和接收时间的时间差,获得计算时间;最后,根据计算时间,确定响应时间。可见,本申请实施例中,SLB设备利用业务报文获取响应时间,SLB设备和服务器不需要额外处理探测报文和响应报文,减轻了SLB设备和服务器的负担。当然,实施本申请的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为组网的一种示意图;
图2为本申请实施例提供的响应时间获取方法的第一种流程示意图;
图3为本申请实施例提供的响应时间获取方法的第二种流程示意图;
图4为本申请实施例提供的响应时间获取装置的一种结构示意图;
图5为本申请实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示组网,包括客户端100、SLB设备200和服务器300、301…30n等。基于图1所示组网,获取响应时间的过程为:
SLB设备200定时的向服务器300、301…30n发送探测报文;
服务器300、301…30n接收到探测报文后,向SLB设备200反馈响应报文;
SLB设备200接收到服务器300、301…30n反馈的响应报文后,计算接收响应报文的时间和发送探测报文的时间差,将该时间差的绝对值确定为响应时间。
这种情况下,SLB设备和服务器需要额外处理探测报文和响应报文,增加了SLB设备和服务器的负担。
为了减轻SLB设备和服务器的负担,本申请实施例提供了一种响应时间获取方法及装置。参考图2,图2为本申请实施例提供的响应时间获取方法的第一种流程示意图,应用于SLB设备,该方法包括:
S201:将接收的客户端发送给服务器的业务报文转发给服务器,并记录转发业务报文的发送时间;
SLB设备接收到业务报文后,将业务报文转发给该业务报文的目的地址对应的服务器。
这里,业务报文可以为用于建立客户端与服务器间连接的报文,客户端与服务器间通信时就会首先发送业务报文。例如,业务报文可以为SYN(Synchronous,同步)报文,也可以为UDP(User Datagram Protocol,用户数据协议)首报文。
S202:记录接收服务器反馈的针对业务报文的响应报文的接收时间;
在本申请的一个实施例中,若在接收到客户端发送给同一服务器的下一个业务报文前接收到该服务器反馈的针对业务报文的响应报文,则在将响应报文发送给客户端的同时,记录接收针对业务报文的响应报文的接收时间;
若在接收到客户端发送给同一服务器的下一个业务报文后仍未接收到服务器反馈的针对业务报文的响应报文,则确定接收响应报文超时,为提高确定的响应时间的准确性,将接收下一个业务报文的接收时间记录为接收针对业务报文的响应报文的接收时间。
以图1所示组网为例,若业务报文为SYN报文,则下一个业务报文为该SYN报文的重传报文,即另一个SYN报文,响应报文为SYN/ACK(Acknowledgement,确认)报文;这里,SYN报文的重传报文为通过传递该SYN报文的连接传递的另一SYN报文;
SLB设备200接收到客户端100发送给服务器300的一个SYN报文1,将该SYN报文1转发给服务器300,记录下转发该SYN报文1的发送时间t1
若SLB设备200在接收到客户端100发送给服务器300的下一个SYN报文2前接收到服务器300反馈的SYN/ACK报文,则记录下接收到服务器300反馈的SYN/ACK报文的接收时间t2
若SLB设备200在接收到客户端100发送给服务器300的SYN报文1的重传报文(例如SYN报文2)后还未接收到服务器300反馈的SYN/ACK报文,则将接收SYN报文2的接收时间记录为接收到服务器300反馈的SYN/ACK报文的接收时间t2
另外,以图1所示组网为例,若业务报文为UDP首报文,则下一个业务报文为该UDP首报文的重传报文;
SLB设备200接收到客户端100发送给服务器300的一个UDP首报文1,将该UDP首报文1转发给服务器300,并记录下转发该UDP首报文1的发送时间t3
另外,为便于确定是否接收到该UDP首报文1的重传报文,SLB设备200还需要记录下UDP首报文1的摘要信息,这里,摘要信息是基于UDP的全部报文或部分报文生成的记录,具有唯一性;若之后接收到的UDP报文的摘要信息与记录的UDP首报文1的摘要信息相同,则确定接收到UDP报文为UDP首报文的重传报文;
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文前接收到服务器300反馈的UDP首报文1的响应报文,则记录下接收到服务器300反馈的响应报文的接收时间t4
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文后还未接收到服务器300反馈的UDP首报文1的响应报文,将接收UDP首报文1的重传报文的接收时间记录为接收到服务器300反馈的响应报文的接收时间t4
S203:计算发送时间和接收时间的时间差,获得针对服务器的计算时间;
在本申请的一个实施例中,若在接收到客户端发送给同一服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,则将时间差的绝对值确定为针对该服务器的计算时间;
若在接收到客户端发送给同一服务器的下一个业务报文后仍未接收到服务器反馈的针对业务报文的响应报文,此时,确定时间差的绝对值是否大于时间阈值;
若时间差的绝对值大于时间阈值,将时间阈值确定为针对该服务器的计算时间,避免了接收响应报文超时的时间过长导致确定的响应时间不准确的问题;
若时间差的绝对值不大于时间阈值,将时间差的绝对值确定为针对该服务器的计算时间。
仍以S202中的例子进行说明,时间阈值为δ,若业务报文为SYN报文,则下一个业务报文为SYN报文,响应报文为SYN/ACK报文;
若SLB设备200在接收到客户端100发送给服务器300的下一个SYN报文2前接收到服务器300反馈的SYN/ACK报文,则确定针对服务器300的计算时间为t2-t1
若SLB设备200在接收到客户端100发送给服务器300的下一个SYN报文2后还未接收到服务器300反馈的SYN/ACK报文,确定t2-t1>δ是否成立;若成立,则确定针对服务器300的计算时间为δ;若不成立,则确定针对服务器300的计算时间为t2-t1
仍以S202中的例子进行说明,时间阈值为δ,若业务报文为UDP首报文,则下一个业务报文为该UDP首报文的重传报文;
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文前接收到服务器300反馈的UDP首报文1的响应报文,则确定针对服务器300的计算时间为t4-t3
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文后还未接收到服务器300反馈的UDP首报文1的响应报文,确定t4-t3>δ是否成立;若成立,则确定针对服务器300的计算时间为δ;若不成立,则确定针对服务器300的计算时间为t4-t3
S204:根据针对服务器的计算时间,确定服务器的响应时间。
在本申请的一个实施例中,可以将本次获得的针对接收业务报文的服务器的计算时间直接确定为该服务器的响应时间,以保证SLB设备能够快速的获得响应时间。
以S203中的例子进行说明,若业务报文为SYN报文,则下一个业务报文为SYN报文,响应报文为SYN/ACK报文;
若SLB设备200在接收到客户端100发送给服务器300的下一个SYN报文2前接收到服务器300反馈的SYN/ACK报文,确定本次针对服务器300的计算时间为t2-t1,进而确定服务器300的响应时间为t2-t1
若SLB设备200在接收到客户端100发送给服务器300的下一个SYN报文2后还未接收到服务器300反馈的SYN/ACK报文,确定t2-t1>δ是否成立;若成立,则确定本次针对服务器300的计算时间为δ,进而确定服务器300的响应时间为δ;若不成立,则确定本次针对服务器300的计算时间为t2-t1,进而确定服务器300的响应时间为t2-t1
仍以S203中的例子进行说明,时间阈值为δ,若业务报文为UDP首报文,则下一个业务报文为该UDP首报文的重传报文;
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文前接收到服务器300反馈的UDP首报文1的响应报文,则确定本次针对服务器300的计算时间为t4-t3,进而确定服务器300的响应时间为t4-t3
若SLB设备200在接收到客户端100发送给服务器300的UDP首报文1的重传报文后还未接收到服务器300反馈的UDP首报文1的响应报文,确定t4-t3>δ是否成立;若成立,则确定本次针对服务器300的计算时间为δ,进而确定服务器300的响应时间为δ;若不成立,则确定本次针对服务器300的计算时间为t4-t3,进而确定服务器300的响应时间为t4-t3
在本申请的另一个实施例中,为了能够快速的获取的准确的响应时间,SLB设备在获得了针对服务器的计算时间后,若确定本次处理的业务报文为首次接收到的客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间T0
若本次处理的业务报文不为首次接收到的客户端发送给服务器的业务报文,则根据公式
Figure BDA0001329001570000071
确定服务器的响应时间;
其中,T0为服务器的响应时间,N为预定正整数,这里,N可以理解为采样率,T1为上一次确定的服务器的响应时间,T2为本次计算得到的针对服务器的计算时间。
例如,N为3;SLB设备接收到客户端C发送给服务器S的业务报文1后,获得了本次针对服务器S的计算时间T2为t1’,业务报文1为SLB设备接收到的发送给服务器S的第一个业务报文,确定服务器S的响应时间T0为t1’;
之后,SLB设备接收到客户端C发送给服务器S的业务报文2后,获得了本次针对服务器S的计算时间T2为t2’,业务报文2不为SLB设备接收到的发送给服务器S的第一个业务报文,此时,上一次确定的服务器S的响应时间T1为t1’,确定服务器S的响应时间T0
Figure BDA0001329001570000081
之后,SLB设备接收到客户端C发送给服务器S的业务报文3后,获得了本次针对服务器S的计算时间T2为t3’,业务报文3不为SLB设备接收到的发送给服务器S的第一个业务报文,此时,上一次确定的服务器S的响应时间T1为t1’+(t2’-t1’)/3,确定服务器S的响应时间T0
Figure BDA0001329001570000082
之后,SLB设备再接收到客户端C发送给服务器S的业务报文,服务器S的响应时间的确定依次类推。
在本申请的另一个实施例中,参考图3所示的响应时间获取方法的第二种流程示意图,基于图2,该方法中,
S201为:将接收的客户端发送给服务器的多个业务报文转发给服务器,并记录转发各个业务报文的发送时间;
这种情况下,就会记录下多个接收时间,进而获得多个计算时间。
值得一提的是,客户端与服务器间通信时会首先发送业务报文,这使得发送业务报文的密集度较大,依据这多个业务报文确定一个服务器的响应时间,能够有效提高响应时间的准确性。
这种情况下,S204可以包括:
S2041:计算得到的多个针对服务器的计算时间的平均值;
这里,多个计算时间均为针对同一服务器的计算时间。
S2042:将平均值确定为服务器的响应时间。
这里,响应时间为接收业务报文的服务器的响应时间
例如,得到了5个针对服务器300的计算时间,分别为t1’、t2’、t3’、t4’、t5’,则最终确定的服务器300的响应时间T0为(t1’+t2’+t3’+t4’+t5’)/5。
这里,在业务报文的密集度较大的情况下,计算多个计算时间的平均值确定服务器的响应时间,避免了网络环境中偶然因素(例如信号干扰等)的影响,提高了确定的响应时间准确性。
应用上述各个实施例,SLB设备将接收的客户端发送给服务器的业务报文转发给服务器,记录转发业务报文的发送时间;另外,记录接收服务器反馈的针对业务报文的响应报文的接收时间;计算出发送时间和接收时间的时间差,获得计算时间;最后,根据计算时间,确定服务器的响应时间。可见,本申请实施例中,SLB设备利用业务报文获取响应时间,SLB设备和服务器不需要额外处理探测报文和响应报文,减轻了SLB设备和服务器的负担。
与方法实施例对应,本申请实施例还提供了一种响应时间获取装置。
参考图4,图4为本申请实施例提供的响应时间获取装置的一种结构示意图,应用于SLB设备,该装置包括:
转发单元401,用于将接收的客户端发送给服务器的业务报文转发给服务器,并记录转发业务报文的发送时间;
记录单元402,用于记录接收服务器反馈的针对业务报文的响应报文的接收时间;
计算单元403,用于计算发送时间和接收时间的时间差,获得针对服务器的计算时间;
确定单元404,用于根据针对服务器的计算时间,确定服务器的响应时间。
在本申请的一个实施例中,记录单元402,具体可以用于:
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,则记录接收服务器反馈的针对业务报文的响应报文的接收时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,则将接收客户端发送给服务器的下一个业务报文的接收时间记录为接收服务器反馈的针对业务报文的响应报文的接收时间。
在本申请的一个实施例中,计算单元403,具体可以用于:
计算发送时间和接收时间的时间差;
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,将时间差的绝对值确定为针对服务器的计算时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,则当时间差的绝对值大于时间阈值时,将时间阈值确定为针对服务器的计算时间;当时间差的绝对值不大于时间阈值时,将时间差的绝对值确定为针对服务器的计算时间。
在本申请的一个实施例中,转发单元401,具体可以用于:
将接收的客户端发送给服务器的多个业务报文转发给服务器,并记录转发各个业务报文的发送时间;
这种情况下,确定单元404,具体可以用于:
计算得到的多个针对服务器的计算时间的平均值;将平均值确定为服务器的响应时间。
在本申请的一个实施例中,确定单元404,具体可以用于:
若是首次接收到客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间;
若不是首次接收到客户端发送给服务器的业务报文,则根据公式
Figure BDA0001329001570000101
确定服务器的响应时间;
其中,T0为服务器的响应时间,N为预定正整数,T1为上一次确定的服务器的响应时间,T2为本次计算得到的针对服务器的计算时间。
应用上述各个实施例,SLB设备将接收的客户端发送给服务器的业务报文转发给服务器,记录转发业务报文的发送时间;另外,记录接收服务器反馈的针对业务报文的响应报文的接收时间;计算出发送时间和接收时间的时间差,获得计算时间;最后,根据计算时间,确定服务器的响应时间。可见,本申请实施例中,SLB设备利用业务报文获取响应时间,SLB设备和服务器不需要额外处理探测报文和响应报文,减轻了SLB设备和服务器的负担。
本申请实施例还提供了一种电子设备,如图5所示,包括处理器501和机器可读存储介质502,机器可读存储介质502存储有能够被处理器501执行的机器可执行指令。
另外,如图5所示,电子设备还可以包括:通信接口503和通信总线504;其中,处理器501、机器可读存储介质502、通信接口503通过通信总线504完成相互间的通信,通信接口503用于上述电子设备与其他设备之间的通信。
处理器501被机器可执行指令促使实现如下步骤:
将接收的客户端发送给服务器的业务报文转发给服务器,并记录转发业务报文的发送时间;
记录接收服务器反馈的针对业务报文的响应报文的接收时间;
计算发送时间和接收时间的时间差,获得针对服务器的计算时间;
根据针对服务器的计算时间,确定服务器的响应时间。
在本申请的一个实施例中,记录接收服务器反馈的针对业务报文的响应报文的接收时间的步骤,包括:
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,则记录接收服务器反馈的针对业务报文的响应报文的接收时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,则将接收客户端发送给服务器的下一个业务报文的接收时间记录为接收服务器反馈的针对业务报文的响应报文的接收时间。
在本申请的一个实施例中,计算发送时间和接收时间的时间差,获得针对服务器的计算时间的步骤,包括:
计算发送时间和接收时间的时间差;
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,将时间差的绝对值确定为针对服务器的计算时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,当时间差的绝对值大于时间阈值时,将时间阈值确定为针对服务器的计算时间;当时间差的绝对值不大于时间阈值时,将时间差的绝对值确定为针对服务器的计算时间。
在本申请的一个实施例中,将接收的客户端发送给服务器的业务报文转发给服务器的步骤,包括:
将接收的客户端发送给服务器的多个业务报文转发给服务器;
根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
计算得到的多个针对服务器的计算时间的平均值;
将平均值确定为服务器的响应时间。
在本申请的一个实施例中,根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
若是首次接收到客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间;
若不是首次接收到客户端发送给服务器的业务报文,则根据公式
Figure BDA0001329001570000121
根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
若是首次接收到客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间;
若不是首次接收到客户端发送给服务器的业务报文。
需要说明的是,这里电子设备可以为SLB设备。
应用上述各个实施例,电子设备将接收的客户端发送给服务器的业务报文转发给服务器,记录转发业务报文的发送时间;另外,记录接收服务器反馈的针对业务报文的响应报文的接收时间;计算出发送时间和接收时间的时间差,获得计算时间;最后,根据计算时间,确定服务器的响应时间。可见,本申请实施例中,电子设备利用业务报文获取响应时间,电子设备和服务器不需要额外处理探测报文和响应报文,减轻了电子设备和服务器的负担。
上述电子设备提到的通信总线504可以是PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。该通信总线504可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
机器可读存储介质502可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。另外,机器可读存储介质502还可以是至少一个位于远离前述处理器的存储装置。
上述处理器501可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital SignalProcessing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请实施例还提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,机器可执行指令促使处理器实现以下步骤:
将接收的客户端发送给服务器的业务报文转发给服务器,并记录转发业务报文的发送时间;
记录接收服务器反馈的针对业务报文的响应报文的接收时间;
计算发送时间和接收时间的时间差,获得针对服务器的计算时间;
根据针对服务器的计算时间,确定服务器的响应时间。
在本申请的一个实施例中,记录接收服务器反馈的针对业务报文的响应报文的接收时间的步骤,包括:
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,则记录接收服务器反馈的针对业务报文的响应报文的接收时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,则将接收客户端发送给服务器的下一个业务报文的接收时间记录为接收服务器反馈的针对业务报文的响应报文的接收时间。
在本申请的一个实施例中,计算发送时间和接收时间的时间差,获得针对服务器的计算时间的步骤,包括:
计算发送时间和接收时间的时间差;
若在接收到客户端发送给服务器的下一个业务报文前接收到服务器反馈的针对业务报文的响应报文,将时间差的绝对值确定为针对服务器的计算时间;
若在接收到客户端发送给服务器的下一个业务报文后未接收到服务器反馈的针对业务报文的响应报文,当时间差的绝对值大于时间阈值时,将时间阈值确定为针对服务器的计算时间;当时间差的绝对值不大于时间阈值时,将时间差的绝对值确定为针对服务器的计算时间。
在本申请的一个实施例中,将接收的客户端发送给服务器的业务报文转发给服务器的步骤,包括:
将接收的客户端发送给服务器的多个业务报文转发给服务器;
根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
计算得到的多个针对服务器的计算时间的平均值;
将平均值确定为服务器的响应时间。
在本申请的一个实施例中,根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
若是首次接收到客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间;
若不是首次接收到客户端发送给服务器的业务报文,则根据公式
Figure BDA0001329001570000151
根据针对服务器的计算时间,确定服务器的响应时间的步骤,包括:
若是首次接收到客户端发送给服务器的业务报文,则将针对服务器的计算时间确定为服务器的响应时间;
若不是首次接收到客户端发送给服务器的业务报文。
应用上述各个实施例,将接收的客户端发送给服务器的业务报文转发给服务器,记录转发业务报文的发送时间;另外,记录接收服务器反馈的针对业务报文的响应报文的接收时间;计算出发送时间和接收时间的时间差,获得计算时间;最后,根据计算时间,确定服务器的响应时间。可见,本申请实施例中,电子设备利用业务报文获取响应时间,电子设备和服务器不需要额外处理探测报文和响应报文,减轻了处理器所在电子设备和服务器的负担。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、机器可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (6)

1.一种响应时间获取方法,其特征在于,应用于服务器负载均衡SLB设备,所述方法包括:
将接收的客户端发送给服务器的业务报文转发给所述服务器,并记录转发所述业务报文的发送时间,所述业务报文为用户数据协议UDP报文;
记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
计算所述发送时间和所述接收时间的时间差,获得针对所述服务器的计算时间;
根据针对所述服务器的计算时间,确定所述服务器的响应时间,以将后续接收的报文发送给响应时间最小的服务器;
其中,所述记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间的步骤,包括:
若在接收到所述客户端发送给所述服务器的下一个业务报文前接收到所述服务器反馈的针对所述业务报文的响应报文,则记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
若在接收到所述客户端发送给所述服务器的下一个业务报文后未接收到所述服务器反馈的针对所述业务报文的响应报文,则将接收所述客户端发送给所述服务器的下一个业务报文的接收时间记录为接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
所述计算所述发送时间和所述接收时间的时间差,获得针对所述服务器的计算时间的步骤,包括:
计算所述发送时间和所述接收时间的时间差;
若在接收到所述客户端发送给所述服务器的下一个业务报文前接收到所述服务器反馈的针对所述业务报文的响应报文,将所述时间差的绝对值确定为针对所述服务器的计算时间;
若在接收到所述客户端发送给所述服务器的下一个业务报文后未接收到所述服务器反馈的针对所述业务报文的响应报文,当所述时间差的绝对值大于时间阈值时,将所述时间阈值确定为针对所述服务器的计算时间;当所述时间差的绝对值不大于时间阈值时,将所述时间差的绝对值确定为针对所述服务器的计算时间;
所述根据针对所述服务器的计算时间,确定所述服务器的响应时间的步骤,包括:
若是首次接收到所述客户端发送给所述服务器的业务报文,则将针对所述服务器的计算时间确定为所述服务器的响应时间;
若不是首次接收到所述客户端发送给所述服务器的业务报文,则根据公式
Figure FDA0003066747510000021
确定所述服务器的响应时间;
其中,T0为所述服务器的响应时间,N为预定正整数,T1为上一次确定的所述服务器的响应时间,T2为本次计算得到的针对所述服务器的计算时间。
2.根据权利要求1所述的方法,其特征在于,所述将接收的客户端发送给服务器的业务报文转发给所述服务器的步骤,包括:
将接收的客户端发送给服务器的多个业务报文转发给所述服务器;
所述根据针对所述服务器的计算时间,确定所述服务器的响应时间的步骤,包括:
计算得到的多个针对所述服务器的计算时间的平均值;
将所述平均值确定为所述服务器的响应时间。
3.一种响应时间获取装置,其特征在于,应用于服务器负载均衡SLB设备,所述装置包括:
转发单元,用于将接收的客户端发送给服务器的业务报文转发给所述服务器,并记录转发所述业务报文的发送时间,所述业务报文为用户数据协议UDP报文;
记录单元,用于记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
计算单元,用于计算所述发送时间和所述接收时间的时间差,获得针对所述服务器的计算时间;
确定单元,用于根据针对所述服务器的计算时间,确定所述服务器的响应时间,以将后续接收的报文发送给响应时间最小的服务器;
其中,所述记录单元,具体用于:
若在接收到所述客户端发送给所述服务器的下一个业务报文前接收到所述服务器反馈的针对所述业务报文的响应报文,则记录接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
若在接收到所述客户端发送给所述服务器的下一个业务报文后未接收到所述服务器反馈的针对所述业务报文的响应报文,则将接收所述客户端发送给所述服务器的下一个业务报文的接收时间记录为接收所述服务器反馈的针对所述业务报文的响应报文的接收时间;
所述计算单元,具体用于:
计算所述发送时间和所述接收时间的时间差;
若在接收到所述客户端发送给所述服务器的下一个业务报文前接收到所述服务器反馈的针对所述业务报文的响应报文,将所述时间差的绝对值确定为针对所述服务器的计算时间;
若在接收到所述客户端发送给所述服务器的下一个业务报文后未接收到所述服务器反馈的针对所述业务报文的响应报文,则当所述时间差的绝对值大于时间阈值时,将所述时间阈值确定为针对所述服务器的计算时间;当所述时间差的绝对值不大于时间阈值时,将所述时间差的绝对值确定为针对所述服务器的计算时间;
所述确定单元,具体用于:
若是首次接收到所述客户端发送给所述服务器的业务报文,则将针对所述服务器的计算时间确定为所述服务器的响应时间;
若不是首次接收到所述客户端发送给所述服务器的业务报文,则根据公式
Figure FDA0003066747510000041
确定所述服务器的响应时间;
其中,T0为所述服务器的响应时间,N为预定正整数,T1为上一次确定的所述服务器的响应时间,T2为本次计算得到的针对所述服务器的计算时间。
4.根据权利要求3所述的装置,其特征在于,所述转发单元,具体用于:
将接收的客户端发送给服务器的多个业务报文转发给所述服务器,并记录转发所述各个业务报文的发送时间;
所述确定单元,具体用于:
计算得到的多个针对所述服务器的计算时间的平均值;将所述平均值确定为所述服务器的响应时间。
5.一种电子设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-2任一所述的方法步骤。
6.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求1-2任一所述的方法步骤。
CN201710479551.4A 2017-06-22 2017-06-22 一种响应时间获取方法及装置 Active CN107547620B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710479551.4A CN107547620B (zh) 2017-06-22 2017-06-22 一种响应时间获取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710479551.4A CN107547620B (zh) 2017-06-22 2017-06-22 一种响应时间获取方法及装置

Publications (2)

Publication Number Publication Date
CN107547620A CN107547620A (zh) 2018-01-05
CN107547620B true CN107547620B (zh) 2021-06-22

Family

ID=60970913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710479551.4A Active CN107547620B (zh) 2017-06-22 2017-06-22 一种响应时间获取方法及装置

Country Status (1)

Country Link
CN (1) CN107547620B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108600354B (zh) * 2018-04-13 2020-01-07 中国民航信息网络股份有限公司 系统响应时间波动抑制方法和系统
CN111611134A (zh) * 2020-05-21 2020-09-01 中国建设银行股份有限公司 一种时间监控方法、装置、应用端及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937534A (zh) * 2006-09-20 2007-03-28 杭州华为三康技术有限公司 一种实现负载均衡的方法和一种负载均衡设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050174947A1 (en) * 2004-01-12 2005-08-11 Hershy Beck Method and process for video over IP network management
CN105100151B (zh) * 2014-05-14 2018-12-07 中国移动通信集团公司 一种内容分发的方法、设备和系统
US10666534B2 (en) * 2015-06-29 2020-05-26 Citrix Systems, Inc. Systems and methods for measuring round trip time in network devices between the device and an endpoint
CN106470238A (zh) * 2015-08-20 2017-03-01 阿里巴巴集团控股有限公司 应用于服务器负载均衡中的连接建立方法及装置
CN105516342B (zh) * 2015-12-30 2019-02-22 深圳市有信网络技术有限公司 一种p2p穿透同步方法及系统
CN106651569A (zh) * 2016-12-26 2017-05-10 中国建设银行股份有限公司 交易响应时间的获取系统、获取方法及分析方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937534A (zh) * 2006-09-20 2007-03-28 杭州华为三康技术有限公司 一种实现负载均衡的方法和一种负载均衡设备

Also Published As

Publication number Publication date
CN107547620A (zh) 2018-01-05

Similar Documents

Publication Publication Date Title
US20160044527A1 (en) Systems and Methods for Data Transmission
US8442052B1 (en) Forward packet recovery
TWI661717B (zh) 構成從至少一伺服器接收多媒體內容的客戶端終端機下載行為之適應方法及其終端機
US10645145B2 (en) Method and apparatus for accelerating data transmission in a network communication system
WO2018112877A1 (zh) 路径计算和访问请求分发方法、装置及系统
WO2020048147A1 (zh) 数据传输方法及装置
TW200931876A (en) Methods and systems for bandwidth prediction
CN112929241B (zh) 一种网络测试方法及装置
CN107547620B (zh) 一种响应时间获取方法及装置
US10298508B2 (en) Communication system, receiving-side apparatus and transmission-side apparatus
US10680922B2 (en) Communication control apparatus and communication control method
CN107493232B (zh) 一种cdn的访问加速方法及装置
US20150270930A1 (en) Transport accelerator implementing selective utilization of redundant encoded content data functionality
EP3560152B1 (en) Determining the bandwidth of a communication link
TWI658715B (zh) 通信裝置、可用頻寬計算系統、可用頻寬計算方法及程式
US8289868B2 (en) Network device and method of measuring upstream bandwidth employed thereby
US20140200041A1 (en) Evaluation of overall performance of interactive application service
CN114629826B (zh) 一种网络最大带宽估计方法、装置、电子设备及存储介质
CN107547295B (zh) 一种域名缓存表项的老化方法及装置
US10171325B2 (en) Minimum delay value calculating device, information transmitting device, minimum delay value calculating method, and program storage medium
JPWO2014171543A1 (ja) データ送信装置、データ送信方法、及びそのプログラム
CN109274704B (zh) Tcp加速方法和装置、加速效果判断控制器和网关
CN114221886B (zh) 一种数据传输方法、装置、流媒体服务器及发送客户端
CN107547307B (zh) 一种时间参数确定方法及装置
US20230254229A1 (en) Network delay estimation

Legal Events

Date Code Title Description
PB01 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