一种保活时间确定方法和电子设备的制造方法_3

文档序号:9791786阅读:来源:国知局
况的方式可以与前面获取第二连接的保活时间的方式相似。如,第一电子设备可以向局域网内发送广播消息,该广播消息可以指示该第一电子设备连接到局域网,该广播消息还可以是指示该第二电子设备返回当前对保活时间的探测情况;这样,第二电子设备检测到该广播消息,则可以返回当前对保活时间的探测情况。
[0080]可选的,当步骤201中,第一电子设备通过向局域网内发送广播消息,来请求获取第二电子设备确定的保活时间时,如果第二电子设备当前未探测到该保活时间,则第二电子设备也可以直接返回当前对该保活时间的探测结果,这样,可以避免第一电子设备再次发送广播消息以获取保活时间的探测情况。相应的,第一电子设备可以接收第二电子设备返回探测情况。
[0081]204,当该探测情况表明获取到该第二电子设备当前探测第二连接的保活时间所采用的第一探测时长时,基于该第一探测时长,探测该第一连接的保活时间。
[0082]需要说明的是,探测时长不同于保活时间。保活时间的探测过程是以一个初始时长作为初始的探测时长对保活时间进行探测,并在探测过程中逐渐增加探测时长,直至最终确定保活时间。而探测时长可以理解为:在探测保活时间的过程中,维持该电子设备与服务器之间的连接不断开的前提下,当前时刻确定出的该连接所可能维持的时长。
[0083]可选的,考虑到在探测保活时间的过程中,一般会逐步增加发送保活请求的时长,因此,探测时长也可以理解为当前时刻之前最近两次发送保活请求的间隔时长。
[0084]为了便于区分,将该第一电子设备从局域网内的第二电子设备获取到的,该第二电子设备探测保活时间所用的探测时长称为第一探测时长。
[0085]可以理解的是,虽然当前时刻局域网内任意一台第二电子设备均未探测到保活时间,但是第二电子设备却可能处于探测该保活时间的过程中。而由于保活时间的探测过程是逐渐增加探测时长的过程,因此,如果第一电子设备获取到第二电子设备当前探测该保活时间所用的探测时长,就可以基于该第二电子设备当前所用的探测时长为基础继续进行保活时间的探测,而无需再从初始时长开始重新探测保活时间,进而有利于减少探测保活时间所耗费的资源。
[0086]为了便于理解本申请实施例的好处,下面对保活时间的探测过程进行介绍。参见图3,其示出了保活时间的探测过程示意图,在电子设备与服务器建立了连接之后,该电子设备对保活时间的探测过程可以如下步骤:
[0087]301,确定探测所用的初始时长以及递增的步长,并以该初始时长作为初始的探测时长;
[0088]其中,确定探测所用的初始时长可以与现有探测保活时间的过程中,确定初始时长的方式相同,如该初始时长可以是预先设定的一个较小的时长。
[0089]302,确定从当前时刻起经该当前确定的探测时长之后所应到达的目标时刻,将该目标时刻确定为当前时刻之后下一次所应发送保活请求的时刻;
[0090]为了便于理解确定该目标时刻的过程,以一个实例进行介绍,以首次探测为例,则当前确定的探测时长为步骤301中的初始时长,假设该初始时长为0.1秒,当前时刻为I点O分00秒,S卩,1:00:00,则从当前时刻推测下一次所应发送保活请求的目标时刻为当前时刻之后的0.10秒所对应的时刻。即目标时刻为I点10秒,8卩1:00:10。
[0091 ] 303,在该目标时刻向服务器发送保活请求。
[0092]304,检测该保活请求是否发送成功,如果是,则执行步骤305;如果否,则进入步骤306;
[0093]305,将当前的探测时长加上预设的步长所得的时长作为更新后的探测时长,并返回步骤302;
[0094]其中,该步长可以理解为循环探测过中,每次所需增加的时间长度。例如,步长可以为0.01秒等。
[0095]如果保活请求发送成功,则说明电子设备与服务器之间的连接仍未中断,为了确定该连接所能维持的最大时长,则可以在当前探测时长的基础上,增加该步长,以得到下一次所用的探测时长。
[0096]例如,仍以步骤302中的例子进行介绍,假如最近一次探测所用的探测时长为初始时长0.1s,而步长为0.01秒,则下一次探测所用的探测时长为0.1秒+0.01秒,即下一次探测时长为0.11秒。相应的,返回步骤302后,确定该目标时刻应该用当前的时刻与该更新的该探测时长0.11秒,来确定目标时刻。
[0097]306,判断重复发送保活请求的次数是否超过预设次数,如果是,则进入步骤307;如果否,则返回步骤303;
[0098]其中,该预设次数可以根据需要设定。在本次探测过程中,如果保活请求发送不成功的情况下,重复发送保活请求的目的是为了避免出现在服务器与电子设备之间的连接不中断时,由于其他原因使得保活请求发送不成功而产生误判的情况。
[0099]307,将当前的探测时长与该步长的时长差作为确定出的保活时间。
[0100]如果在本次探测过程中,连续重复多次发送保活请求均未成功,则说明在当前探测所用的探测时长已经超过了该连接所能维持的最大时长,该连接已经中断,而在上一次探测过程中所采用的探测时长则小于该保活时间,从而将当前的探测时长减去该步长便可以得到保活时间。
[0101]例如,假设上一次探测所用的探测时长为0.15秒,且在该次探测过程中,保活请求能够发送成功,从而说明保活时间不小于该探测时长0.15秒,这样,本次探测所用的探测时长为0.15秒加上步长0.01秒为0.16秒,而本次连续发送多次保活请求均为成功,则说明保活时间小于0.16秒,可以将0.16减去该步长得到上一次所用的探测时长0.15秒,并将该
0.15秒确定为电子设备与服务器之间连接所能维持的最大时长,即保活时间。
[0102]需要说明的是,以上探测保活时间的过程也可以理解为对链路中路由器的NAT列表的老化时间进行探测的过程。
[0103]可以理解的是,图3仅仅是为了便于理解本申请实施例中第二电子设备探测保活时间的过程以及探测时长的概念,而对探测保活时间的一种方式进行了介绍,实际上现有还有其他很多通过保活时间的方式,无论通过哪种方式探测保活时间,探测过程均是一个多次循环过程,而本申请实施例的探测时长可以为任意探测过程中所用的探测时长。
[0104]下面结合图3所示探测保活时间的过程,对本申请实施例中第一电子设备从第二电子设备获取保活时间的探测情况进行介绍。
[0105]在本实施例中,第二电子设备可以以图3所示的方式进行保活时间的探测,假设第二电子设备在探测该保活时间的过程中,第一电子设备加入该局域网,并通过向局域网内发送广播消息,来获取局域网内其他电子设备对保活时间的探测情况。该第二电子设备接收到该广播消息后,确定最近一次探测保活时间所用的探测时长,并将该探测时长发送给第一电子设备。则该第一电子设备接收到该探测时长后,可以直接基于该探测时长对保活时间进行探测。例如,仍以步长为0.01秒为例,假设第二电子设备在接收到该第一电子设备的保活时间时,最近一次发送保活请求的时刻是按照探测时长为0.15秒推测出来时刻,则该第二电子设备确定当前探测保活请求的探测时长为0.15秒,则第一电子设备在该探测时长0.15秒的基础上,继续进行后续的保活时间的探测,具体的,可以将探测时长0.15秒加上该步长0.01秒,得到该第一电子设备当前探测保活时间所对应的探测时长为0.16秒,进而确定当前时刻经该探测时长所应达到的时刻,并在该时刻发送保活请求,然后按照图3按照该步长更新该探测时长,然后利用更新后的探测时长重新确定发送保活请求的时刻,如此循环,直至最终确定出保活时间。由此可见,第一电子设备无需再重复第二电子设备在当前确定的探测时长之前的探测步骤,可以减少第一电子设备发送保活请求的次数,进而提高资源消耗。
[0106]需要说明的是,在第一电子设备基于该探测时长探测保活时间的同时,第二电子设备同样可以继续对保活时间进行探测,在此不加以限制。
[0107]可选的,在图2实施例中,在基于该第一探测时长,探测该第一连接的保活时间之前,该第一电子设备可以与指定服务器建立第一连接,然后可以基于该第一探测时长,对该第一连接的保活时间进行探测。
[0108]可以理解的是,由于局域网内第二电子设备的数量可能会有多个,而这多个第二电子设备探测保活时间的动作
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1