一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

保活周期调整方法、装置及车辆与流程

2021-12-04 02:13:00 来源:中国专利 TAG:


1.本公开实施例涉及车辆通信技术领域,更具体地,涉及一种保活周期调整方法、装置及车辆。


背景技术:

2.通过共享车辆出行在日常生活中占据了越来越重要的地位。通常,为了保持服务器与共享车辆之间的连接,针对与共享车辆间建立的连接,服务器一般会开启保活(keepalive)功能,即,服务器根据预设的保活周期,向车辆发起保活处理,以确定当前连接是否正常,若当前连接不正常,则服务器会关闭当前连接;若当前连接正常,则服务器会继续保持该连接,以便于车辆与服务器之间及时进行数据交互。
3.然而,以上由服务器进行保活探测以保持连接可用的方法往往需要在服务器上固定设置保活周期的时长,而不能针对不同车辆以及不同网络环境分别进行配置,因此,现有方法至少存在保活周期设置不够灵活的问题。


技术实现要素:

4.本公开的一个目的是提供一种用于灵活调整保活周期的新的技术方案。
5.根据本公开的第一方面,提供了保活周期调整方法的一个实施例,应用于车辆,所述方法包括:
6.获取所述车辆的状态信息,其中,所述状态信息表示所述车辆是否处于数据交互空闲状态;
7.获取所述车辆对应的目标标识,其中,所述目标标识表示所述车辆在预设周期内是否进行过第一保活周期调整处理;
8.根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长,其中,所述目标保活周期时长为所述车辆与服务器之间建立的连接的保活周期的目标时长。
9.可选地,所述根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长,包括:
10.在所述状态信息表示所述车辆处于数据交互空闲状态,并且所述目标标识表示所述车辆在第一预设周期内未进行过所述第一保活周期调整处理的情况下,对所述车辆进行所述第一保活周期调整处理,以获得所述目标保活周期时长。
11.可选地,所述对所述车辆进行所述第一保活周期调整处理,包括:
12.获取所述车辆的当前保活周期时长与第一预设步长值的和值作为第一保活周期时长,其中,所述当前保活周期时长的初始数值为预设数值;
13.设置所述连接的保活周期时长为所述第一保活周期时长,并向所述服务器发送保活周期时长刷新报文;
14.向所述服务器发起保活探测处理,以根据所述第一保活周期时长,获得所述目标
保活周期时长。
15.可选地,所述向所述服务器发起保活探测处理,以根据所述第一保活周期时长,获得所述目标保活周期时长,包括:
16.在所述保活探测处理的目标探测结果表示保活探测失败的情况下,确定所述连接的连接状态为关闭状态;
17.获取导致所述连接关闭的关闭信息;
18.在所述关闭信息表示由所述保活探测处理导致所述连接关闭的情况下,将所述第一保活周期时长与所述第一预设步长值的差值作为所述目标保活周期时长;以及,
19.设置所述目标标识为表示所述车辆在所述第一预设周期内已进行过所述第一保活周期调整处理的信息。
20.可选地,在所述关闭信息表示由所述保活探测处理以外的其他处理导致所述连接关闭的情况下,所述方法还包括:
21.重新建立所述连接,以根据所述第一保活周期时长,获得所述目标保活周期时长。
22.可选地,在所述保活探测处理的目标探测结果表示保活探测成功的情况下,所述根据所述第一保活周期时长,获得所述目标保活周期时长,包括:
23.再次执行所述获取所述车辆的当前保活周期时长与第一预设步长值的和值作为第一保活周期时长步骤,以调整所述第一保活周期时长的数值;
24.根据调整后的所述第一保活周期时长,获得所述目标保活周期时长。
25.可选地,所述目标探测结果通过以下步骤获得:
26.通过所述连接,向所述服务器发送保活探测报文;
27.在接收到所述服务器发送的响应报文的情况下,设置所述目标探测结果为表示保活探测成功的信息;以及,
28.在未接收到所述服务器发送的响应报文,并且所述保活探测报文的重发次数不大于预设次数的情况下,重新发送所述保活探测报文,其中,所述响应报文为所述服务器发送的用于响应所述保活探测报文的报文;
29.在所述重发次数不小于所述预设次数,并且,在所述预设次数的重发处理中,均未收到所述响应报文的情况下,设置所述目标探测结果为表示保活探测失败的信息。
30.可选地,所述获取所述车辆的状态信息,包括:
31.获取当前时刻对应的时间戳,以及,获取所述车辆在当前时刻之前的预设时长内的数据交互状态;
32.在所述时间戳表示当前时刻不处于预设时间范围,并且,所述数据交互状态表示所述车辆在所述预设时长内未与服务器进行数据交互的情况下,设置所述状态信息为表示所述车辆处于数据交互空闲状态的信息。
33.可选地,所述根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长,包括:
34.对所述车辆进行第二保活周期调整处理,以获得所述目标保活周期时长。
35.可选地,所述对所述车辆进行第二保活周期调整处理,以获得所述目标保活周期时长,包括:
36.获取当前保活周期时长作为第二保活周期时长;
37.根据所述第二保活周期时长,向所述服务器发起保活探测处理;
38.在所述保活探测处理的目标探测结果表示保活探测失败,或者,当前获取到的关闭信息表示所述连接存在异常的情况下,确定所述连接的连接状态为关闭状态,以及,获取所述连接对应的目标数据交互空闲时长,其中,所述目标数据交互空闲时长为所述车辆在最近一次向所述服务器进行数据交互时的时刻至当前时刻之间的时长;
39.在所述目标交互空闲时长小于所述第二保活周期时长的情况下,获取所述第二保活周期时长与第二预设步长值的差值,并调整所第二保活周期时长的数值为所述差值;
40.根据调整后的所述第二保活周期时长,获得所述目标保活周期时长。
41.可选地,所述根据调整后的所述第二保活周期时长,获得所述目标保活周期时长,包括:
42.根据调整后的所述第二保活周期时长,重新建立所述车辆与所述服务器之间的连接;
43.并根据调整后的所述第二保活周期时长,向所述服务器发起保活探测处理,以获得所述目标保活周期时长。
44.可选地,所述对所述车辆进行第二保活周期调整处理,以获得所述目标保活周期时长,还包括:
45.在所述保活探测处理的目标探测结果表示保活探测成功,或者,所述关闭信息表示所述连接正常的情况下,设置所述第二保活周期时长为所述目标保活周期时长。
46.根据本公开的第二方面,提供了保活周期调整装置的一个实施例,应用于车辆,所述装置包括:
47.状态信息获取模块,用于获取所述车辆的状态信息,其中,所述状态信息表示所述车辆是否处于空闲状态;
48.目标标识获取模块,用于获取所述车辆对应的目标标识,其中,所述目标标识表示所述车辆在预设周期内是否进行过第一保活周期调整处理;
49.保活周期调整模块,用于根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长,其中,所述目标保活周期时长为所述车辆与服务器之间建立的连接的保活周期的目标时长。
50.根据本公开的第三方面,提供了车辆的一个实施例,包括如本说明书的第二方面所述的保活周期调整装置,或者,
51.所述车辆包括:
52.存储器,用于存储可执行的指令;
53.处理器,用于根据所述指令的控制运行所述车辆执行如本说明书的第一方面所述的保活周期调整方法。
54.本公开实施例的一个有益效果在于,通过获取车辆的状态信息以确定车辆当前是否处于数据交互状态,以及,通过获取标识车辆是否以在预设周期内进行过主动调整保活周期调整处理的第一保活周期调整处理,以根据该状态信息和该目标标识,控制车辆主动进行保活周期调整处理,以使得车辆可以灵活的配置适配当前车辆以及当前网络环境的目标保活周期时长。
55.通过以下参照附图对本说明书的示例性实施例的详细描述,本说明书的其它特征
及其优点将会变得清楚。
附图说明
56.被结合在说明书中并构成说明书的一部分的附图示出了本说明书的实施例,并且连同其说明一起用于解释本说明书的原理。
57.图1是能够实施本公开实施例的共享车辆系统的示意图。
58.图2是本公开实施例提供的保活周期调整方法的流程示意图。
59.图3是本公开实施例提供的保活周期调整处理的调整时机示意图。
60.图4是本公开实施例提供的第一保活周期调整处理的流程示意图。
61.图5是本公开实施例提供的第二保活周期调整处理的流程示意图。
62.图6是本公开实施例提供的保活周期调整装置的方框原理图。
63.图7是本公开实施例提供的保活周期调整装置的硬件结构示意图。
具体实施方式
64.现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
65.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
66.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
67.在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
68.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
69.<硬件配置>
70.图1是能够实施本公开实施例的共享车辆系统的示意图。
71.如图1所示,该系统包括服务器2000、终端设备1000和车辆3000。
72.该服务器2000与终端设备1000,以及服务器2000与车辆3000可以通过网络4000通信连接。车辆3000与服务器2000,以及终端设备1000与服务器2000进行通信所基于的网络4000可以是同一个,也可以是不同的。网络4000可以是无线通信网络也可以是有线通信网络,可以是局域网也可以是广域网。
73.该服务器2000提供处理、数据库、通讯设施的业务点。服务器2000可以是整体式服务器,跨多计算机,计算机数据中心的分散式服务器,云服务器,或者部署在云端的服务器集群等。服务器可以是各种类型的,例如但不限于,网络服务器,新闻服务器,邮件服务器,消息服务器,广告服务器,文件服务器,应用服务器,交互服务器,数据库服务器,或代理服务器。在一些实施例中,每个服务器可以包括硬件,软件,或用于执行服务器所支持或实现的合适功能的内嵌逻辑组件或两个或多个此类组件的组合。该服务器2000具体配置可以包括但不限于处理器2100、存储器2200、接口装置2300、通信装置2400。处理器2100用于执行
采用比如x86、arm、risc、mips、sse等架构的指令集编写的计算机程序。存储器2200例如是rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置2300例如是usb接口、串行接口、并行接口等。通信装置2400例如是能够进行有线通信或无线通信,例如可以包括wifi通信、蓝牙通信、2g/3g/4g/5g通信等。
74.本领域技术人员应当理解,除图1示出的各装置,服务器2000还可以包括其他装置,在此不做限定。
75.本实施例中,终端设备1000例如是手机、便携式电脑、平板电脑、掌上电脑、可穿戴设备等。
76.该终端设备1000安装有用车应用客户端,用户可以通过操作该用车应用客户端,实现使用车辆3000的目的。
77.该终端设备1000可以包括但不限于处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500、输入装置1600、扬声器1700、麦克风1800等等。其中,处理器1100可以是中央处理器cpu、图形处理器gpu、微处理器mcu等,用于执行计算机程序,该计算机程序可以采用比如x86、arm、risc、mips、sse等架构的指令集编写。存储器1200例如包括rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括usb接口、串行接口、并行接口等。通信装置1400例如能够利用光纤或电缆进行有线通信,或者进行无线通信,具体地可以包括wifi通信、蓝牙通信、2g/3g/4g/5g通信等。显示装置1500例如是液晶显示屏、触摸显示屏等。输入装置1600例如可以包括触摸屏、键盘、体感输入等。扬声器1170用于输出音频信号。麦克风1180用于拾取音频信号。
78.应用于本公开实施例中,该终端设备1000可以安装有智能操作系统(例如windows、linux、安卓、ios等系统)和应用软件。
79.本领域技术人员应当理解,尽管在图1中示出了终端设备1000的多个装置,但是,本公开实施例的终端设备1000可以仅涉及其中的部分装置,例如,只涉及处理器1100、存储器1200等。
80.车辆3000可以是图1中所示的自行车,也可以是三轮车、电动自行车、摩托车以及四轮乘用车等各种形态,在此不做限定。
81.该车辆3000可以包括但不限于处理器3100、存储器3200、接口装置3300、通信装置3400、显示装置3500、输入装置3600、扬声器3700、麦克风3800等等。其中,处理器3100可以是微处理器mcu等。存储器3200例如包括rom(只读存储器)、ram(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置3300例如包括usb接口、串行接口、并行接口等。通信装置3400例如能够利用光纤或电缆进行有线通信,或者进行无线通信,具体地可以包括wifi通信、蓝牙通信、2g/3g/4g/5g通信等。显示装置3500例如可以是液晶显示屏、触摸显示屏等。输入装置3600例如可以包括触摸屏、键盘等,也可以是麦克风输入语音信息。车辆3000可以通过扬声器3700输出音频信号,及通过麦克风3800采集音频信号。
82.应用于本公开实施例中,车辆3000的存储器3200用于存储计算机程序,该计算机程序用于控制处理器3100进行操作以执行与服务器2000之间的信息交互,例如:获取车辆3000的唯一标识,生成针对该车辆3000的开锁请求,并将该开锁请求发送至服务器2000;针对该车辆3000向服务器2000发送关锁请求;以及,根据服务器2000发送的费用结算通知进行账单解算等等。该计算机程序如何控制处理器进行操作,这是本领域公知,故在此不再详
细描述。
83.尽管在图1中示出了车辆3000的多个装置,但是,本发明可以仅涉及其中的部分装置,例如,车辆3000只涉及处理器3100、存储器3200和通信装置3400。
84.应当理解的是,尽管图1仅示出一个服务器2000、终端设备1000、车辆3000,但不意味着限制各自的数量,本系统中可以包含多个服务器2000、多个终端设备1000、多个车辆3000。
85.<方法实施例>
86.在现有技术中,一般由服务器进行保活(keepalive)处理,即,在车辆分别与服务器建立tcp连接之后,由服务器根据预先设定的固定保活周期时长,分别对该多个tcp连接进行保活处理。
87.现有的保活方法由于是在服务端统一处理,因此,需要服务器基于同一固定保活周期时长对各tcp连接进行保活处理,而不能根据车辆端自身特性及网络特性的不同而对每一tcp连接的保活周期时长进行灵活配置,这就导致为了适配各个车辆及各种网络环境,服务器需要将该固定保活周期时长设短,以保持更多车辆可以工作,存在浪费功耗及带宽资源的问题;另外,现有方法还会导致在探测感知到某一tcp连接断开的情况下,服务器仅能关闭该tcp连接以释放资源,但并不能重新建立该tcp连接,只能是在车辆端也感知到连接断开的情况下,才能由车辆主动建立连接。
88.为解决现有技术中存在的保活周期不能灵活配置的问题,请参看图2,其是本公开实施例提供的一种保活周期调整方法的流程示意图,该方法可以由车辆实施,更具体地,可以由车辆中的智能车锁实施,例如由图1中的车辆3000实施,下面以图1所示的车辆3000为例,说明本实施例的保活周期调整方法。
89.如图2所示,本实施例的保活周期调整方法可以包括如下步骤s2100

s2300,以下予以详细说明。
90.步骤s2100,获取车辆的状态信息,其中,该状态信息表示车辆是否处于数据交互空闲状态;以及步骤s2200,获取车辆对应的目标标识,其中,该目标标识表示车辆在预设周期内是否进行过第一保活周期调整处理,其中,该第一保活周期调整处理为车辆向服务器发起的保活周期调整处理。
91.在以下说明中,如无特殊说明,将tcp连接简称为连接。区别于现有由服务器发起保活处理的方法,在本公开的实施例中,将保活处理下放到客户端,即,车辆端,由车辆在工作的过程中,根据车辆自身特性以及其所处网络环境的特性,自适应的调整其与服务器之间保持的连接的保活周期,以解决上述问题。
92.具体地,在本公开的实施例中,为了灵活配置保活周期时长,以保持车辆与服务器之间的连接,该方法中由车辆执行的保活调整处理可以包括第一保活周期调整处理和第二保活周期调整处理,其中,第一保活周期调整处理是由车辆主动发起的保活周期时长调整处理,第一保活周期调整处理用于向长时间探测保活周期时长,以在不断开连接的情况下,可以以较长保活周期保持该连接,进而减少车辆及服务器的功耗;第二保活周期调整处理可以是在车辆与服务器通信的过程中,在探测到当前保活周期时长设置不合适的情况下,触发车辆被动进行的保活周期调整处理,以将保活周期缩短至合适时长。
93.请参看图3,其是本公开实施例提供的保活周期调整处理的调整时机示意图。如图
3所示,在本公开的实施例中,为避免保活周期时长的频繁调整,设定在一个完整的第一预设周期t内,车辆仅执行一次第一保活周期调整处理,在第一预设周期内,当车辆执行过第一保活周期调整处理后,可以对应设置车辆的目标标识,以标识车辆已主动进行过保活周期调整处理。另外,如图3所示,第二保活周期调整处理的执行时机可以不受限制,该第一预设周期例如可以为2*24时。
94.在具体实施时,考虑到车辆进行主动保活周期调整处理,即,第一保活周期调整处理时,在向长时间探测保活周期时,存在可能导致连接关闭的问题,因此,为了避免对业务造成影响,在本公告的实施例中,可以先获取车辆的状态信息,以在车辆处于数据交互空闲状态的情况下,再执行该第一保活周期调整处理。
95.考虑到在早晚高峰时段,车辆,尤其是共享车辆的使用频率较高,在该时间段往往需要车辆与服务器之间顺畅进行数据通信,因此,为了减少计算量以及提升处理速度,在本公开的实施例中,可以预先设置绝对忙时范围,在当前时间处于该绝对忙时范围内时,设定车辆处于数据交互非空闲状态,不控制车辆进行第一保活周期调整处理。该绝对忙时范围例如可以为早高峰“7:00~10:00”和晚高峰“17:00~20:00”。
96.根据以上说明可知,在一个实施例中,可以通过以下步骤获得车辆的状态信息:获取当前时刻对应的时间戳,以及,获取该车辆在当前时刻之前的预设时长内的数据交互状态;在该时间戳表示当前时刻不处于预设时间范围,并且,该数据交互状态表示该车辆在该预设时长内未与服务器进行数据交互的情况下,设置该状态信息为表示该车辆处于数据交互空闲状态的信息。
97.该预设时间范围可以为上述绝对忙时范围;另外,在本公开实施例中,为了准确的确定车辆是否处于数据交互空闲状态,可以按照第二预设周期对第一预设周期进行划分,在第一预设周期为2*24时的情况下,该第二预设周期例如可以为4时。
98.该预设时长可以为连续数量的第二预设周期构成的时长,例如,可以设定在n个4小时车辆均未与服务器进行数据交互的情况下,设定下一4小时车辆为数据交互空闲状态。
99.步骤s2300,根据该状态信息和该目标标识,对该车辆进行保活周期调整处理,以获得目标保活周期时长,其中,该目标保活周期时长为该车辆与服务器之间建立的连接的保活周期的目标时长。
100.在经过以上步骤获得车辆的状态信息和目标标识之后,即可根据该状态信息和该目标标识判断车辆当前是否满足进行第一保活周期调整处理的预设条件,若满足,则可控制车辆进行该第一保活周期调整处理,以使车辆根据自身特性及自身所处网络环境的特性,向长时间探测保活周期时长,以节约功耗。
101.请参看图4,其是本公开实施例提供的第一保活周期调整处理的流程示意图。以下结合图4对如何控制车辆进行第一保活周期调整处理进行详细说明。
102.在一个实施例中,在根据该状态信息和该目标标识,对车辆进行保活周期调整处理时,具体可以通过以下步骤获得该目标保活周期时长:在该状态信息表示该车辆处于数据交互空闲状态,并且该目标标识表示该车辆在第一预设周期内未进行过该第一保活周期调整处理的情况下,对该车辆进行该第一保活周期调整处理,以获得该目标保活周期时长。
103.具体地,如图4所示,可以先根据车辆的状态信息和车辆对应的目标标识,判断当前时刻是否可由车辆主动进行保活周期调整处理,若可以,则执行步骤s2310,获取车辆的
当前保活周期时长与第一预设步长值的和值作为第一保活周期时长,其中,该当前保活周期时长的初始数值为预设数值;之后,执行步骤s2320,设置该连接的保活周期时长为第一保活周期时长,并向服务器发送保活周期时长刷新报文;之后,执行步骤s2330,向服务器发起保活探测处理,以根据第一保活周期时长,获得目标保活周期时长。
104.具体地,可以在当前保活周期时长的基础上,按照第一预设步长值增加保活周期时长得到第一保活周期时长,并根据该第一保活周期时长进行保活探测处理,以确定当前第一保活周期时长是否满足要求。
105.在具体实施时,该保活周期时长刷新报文例如可以为“0x83”类型的数据报文,此处不做特殊限定。
106.请继续参看图4,上述步骤s2330具体可以包括:在该保活探测处理的目标探测结果表示保活探测失败的情况下,确定该连接的连接状态为关闭状态,并获取导致该连接关闭的关闭信息;在该关闭信息表示由该保活探测处理导致该连接关闭的情况下,执行步骤s2331,将该第一保活周期时长与该第一预设步长值的差值作为该目标保活周期时长;以及,设置该目标标识为表示该车辆在该第一预设周期内已进行过该第一保活周期调整处理的信息。
107.其中,该目标探测结果可以通过以下步骤获得:通过该连接,向该服务器发送保活探测报文;在接收到该服务器发送的响应报文的情况下,设置该目标探测结果为表示保活探测成功的信息;以及,在未接收到该服务器发送的响应报文,并且该保活探测报文的重发次数不大于预设次数的情况下,重新发送该保活探测报文,其中,该响应报文为该服务器发送的用于响应该保活探测报文的报文;在该重发次数不小于该预设次数,并且,在该预设次数的重发处理中,均未收到该响应报文的情况下,设置该目标探测结果为表示保活探测失败的信息。
108.具体地,保活探测处理,是指在车辆的数据交互空闲时长达到当前设定的保活周期时长的情况下,通过生成保活探测报文,并向服务器发送该保活探测报文,以保持当前连接可用的处理。
109.在本公开的实施例中,在一次保活探测报文探测失败,即,车辆未收到服务器返回的响应报文的情况下,由于该种情况下可能是因为网络抖动或其他网络原因造成的,因此,一般可以按照预设时间间隔,例如,60秒再次发送该保活探测报文,以再次进行保活探测,而若在重发次数达到预设次数,例如,3次的情况下,车辆依然无法收到服务器返回的响应报文,则通常可以说明当前连接已是关闭不可用状态,并设置目标探测结果为表示保活探测失败的信息。
110.在具体实施时,若服务器返回保活探测报文对应的响应报文,则说明当前的第一保活周期时长满足要求,此时可以继续向长时间探测保活周期时长;若不满足,则说明当前的第一保活周期时长过长,会导致连接断开,此时则可将第一保活周期时长与第一预设步长值的差值作为目标保活周期时长。
111.需要说明的是,有关tcp协议中的保活探测报文以及对应响应报文的相关说明在现有技术中有详细说明,此处不再赘述。
112.请继续参看图4,在一个实施例中,在所述关闭信息表示由该保活探测处理以外的其他处理导致该连接关闭的情况下,还可以执行步骤s2332,重新建立该连接,以根据该该
第一保活周期时长,获得该目标保活周期时长。
113.区别于现有技术中在由服务器发起保活处理的情况下,服务器即使探测到连接关闭,也不能重建连接的问题,在本公开的实施例中,由于是车辆端主动进行保活探测,因此,在探测到当前连接关闭的情况下,可以重建连接,以保持车辆和服务器之间的连接可用。
114.另外,如图4所示,在一个实施例中,在该保活探测处理的目标探测结果表示保活探测成功的情况下,该方法还包括:再次执行该获取该车辆的当前保活周期时长与第一预设步长值的和值作为第一保活周期时长步骤,以调整该第一保活周期时长的数值;以及,根据调整后的该第一保活周期时长,获得该目标保活周期时长。
115.具体地,在根据当前时刻的第一保活周期时长成功进行保活探测的情况下,可以根据该第一预设步长值调整该第一保活周期时长,以根据该调整后的第一保活周期时长再次进行保活探测,以向长时间探测保活周期时长,从而获得目标保活周期时长。
116.以上对如何控制车辆进行第一保活周期调整处理进行了详细说明,需要说明的是,在具体实施时,在车辆不满足进行上述第一保活周期调整处理的任意时刻,均可根据需要,在满足设定条件的情况下,控制车辆进行第二保活周期调整处理,即,被动保活周期调整处理,该第二保活周期调整处理可以是在车辆当前所处网络环境发生变化或者其他类似变化从而导致的当前保活周期时长设置不合适,进而被动触发车辆进行的保活周期调整处理,该第二保活周期调整处理缩短保活周期时长,以便于保持车辆与服务器之间建立的连接的畅通性,以下对如何控制车辆进行第二保活周期调整处理进行详细说明。
117.请参看图5,其是本公开实施例提供的第二保活周期调整处理的流程示意图。如图5所示,在一个实施例中,该方法还包括:对该车辆进行第二保活周期调整处理,以获得该目标保活周期时长。
118.具体地,该第二保活周期调整处理包括以下步骤:步骤s2340,获取当前保活周期时长作为第二保活周期时长;步骤s2350,根据该第二保活周期时长,向该服务器发起保活探测处理;在该保活探测处理的目标探测结果表示保活探测失败,或者,当前获取到的关闭信息表示该连接存在异常的情况下,确定该连接的连接状态为关闭状态,以及,获取该连接对应的目标数据交互空闲时长,其中,该目标数据交互空闲时长为该车辆在最近一次向该服务器进行数据交互时的时刻至当前时刻之间的时长;在该目标交互空闲时长小于该第二保活周期时长的情况下,执行步骤s2360,获取该第二保活周期时长与第二预设步长值的差值,并调整所第二保活周期时长的数值为该差值;以根据调整后的该第二保活周期时长,获得该目标保活周期时长。
119.在一个实施例中,如图5所示,所述根据调整后的该第二保活周期时长,获得该目标保活周期时长,包括:根据调整后的该第二保活周期时长,重新建立该车辆与该服务器之间的连接;并根据调整后的该第二保活周期时长,向该服务器发起保活探测处理,以获得该目标保活周期时长。
120.具体地,可以在当前时刻的保活周期时长不能够保持连接的情况下,可以继续按照第二预设步长值缩短第二保活周期时长,并根据缩短后的第二保活周期时长,再次进行保活探测处理,以确定缩短后的第二保活周期时长是否可以保持连接不被关闭。
121.请参看图5,在一个实施例中,可以在该保活探测处理的目标探测结果表示保活探测成功,或者,该关闭信息表示该连接正常的情况下,执行步骤s2370,设置该第二保活周期
时长为该目标保活周期时长。
122.具体地,当前保活周期时长可以为初始值,例如,2小时,或者,也可以是经过上述第一保活周期调整处理后的时长,例如,可以为3.5小时。
123.由于在实际处理中可能发生当前保活周期时长不适配当前网络环境从而导致无法正常维持车辆与服务器之间连接的情况发生,因此,在本公开的实施例中,为了使得车辆端的保活处理可以适配各种工况,可以在车辆处理业务处理或者处于休眠状态的情况下,在探测到当前连接因为保活探测处理而被关闭,或者,在正常发送业务数据时发现当前连接出现异常,例如,不存在的情况下,比较车辆当前连接的空闲时长与当前第二保活周期时长的大小,若该空闲时常小于该第二保活周期时长,则说明因为该第二保活周期时长设置较长,导致无法正常保持车辆与服务器间的连接,从而导致了连接被关闭,因此,此时,需要缩短第二保活周期时长,以在不额外增加车辆功耗的情况下,探测获取合适的目标保活周期时长。
124.需要说明的是,如图5所示,在具体实施时,若车辆与服务器建立连接失败并且连续重试次数超过了预设重试次数,则可以确定连接建立失败,并终止该第二保活周期调整处理,以降低车辆功耗。
125.还需要说明的是,在具体实施时,如图5所示,也可以在车辆与服务器进行通信之前,先根据服务器的域名(domain)判断服务器是否支持车辆端进行保活周期调整处理,若服务器已经被设置为由服务器发起保活处理,即服务器支持下行保活功能,则此时为了避免车辆端和服务器端均发起保活处理而可能导致的互干扰问题,可以由车辆控制关闭自身的保活处理,即关闭上行保活功能;而若服务器未被设置为执行保活处理,则可以由车辆端控制开启自身的保活处理,以使得车辆端可以自适应的灵活调整保活周期时长,以适配车辆自身特性和所处网络环境的特性,进而降低车辆和服务器功耗。
126.综上所述,本公开实施例提供的方法,通过获取车辆的状态信息以确定车辆当前是否处于数据交互状态,以及,通过获取标识车辆是否以在预设周期内进行过主动调整保活周期调整处理的第一保活周期调整处理,以根据该状态信息和该目标标识,控制车辆主动进行保活周期调整处理,以使得车辆可以灵活的配置适配当前车辆以及当前网络环境的目标保活周期时长。
127.<装置实施例>
128.与上述方法实施例相对应,本公开的实施例还提供一种保活周期调整装置,可以应用于车辆,图6是本公开实施例提供的保活周期调整装置的方框原理图。如图6所示,该保活周期调整装置6000包括:状态信息获取模块6100、目标标识获取模块6200和保活周期调整模块6300。
129.该状态信息获取模块6100,用于获取所述车辆的状态信息,其中,所述状态信息表示所述车辆是否处于空闲状态。
130.在一个实施例中,该状态信息获取模块6100在获取所述车辆的状态信息时,可以用于:获取当前时刻对应的时间戳,以及,获取所述车辆在当前时刻之前的预设时长内的数据交互状态;在所述时间戳表示当前时刻不处于预设时间范围,并且,所述数据交互状态表示所述车辆在所述预设时长内未与服务器进行数据交互的情况下,设置所述状态信息为表示所述车辆处于数据交互空闲状态的信息。
131.该目标标识获取模块6200,用于获取所述车辆对应的目标标识,其中,所述目标标识表示所述车辆在预设周期内是否进行过第一保活周期调整处理。
132.该保活周期调整模块6300,用于根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长,其中,所述目标保活周期时长为所述车辆与服务器之间建立的连接的保活周期的目标时长。
133.在一个实施例中,该保活周期调整模块6300在根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长时,可以用于:在所述状态信息表示所述车辆处于数据交互空闲状态,并且所述目标标识表示所述车辆在第一预设周期内未进行过所述第一保活周期调整处理的情况下,对所述车辆进行所述第一保活周期调整处理,以获得所述目标保活周期时长。
134.在一个实施例中,该保活周期调整模块6300在对所述车辆进行所述第一保活周期调整处理时,可以用于:获取所述车辆的当前保活周期时长与第一预设步长值的和值作为第一保活周期时长,其中,所述当前保活周期时长的初始数值为预设数值;设置所述连接的保活周期时长为所述第一保活周期时长,并向所述服务器发送保活周期时长刷新报文;向所述服务器发起保活探测处理,以根据所述第一保活周期时长,获得所述目标保活周期时长。
135.在一个实施例中,该保活周期调整模块6300在向所述服务器发起保活探测处理,以根据所述第一保活周期时长,获得所述目标保活周期时长时,可以用于:在所述保活探测处理的目标探测结果表示保活探测失败的情况下,确定所述连接的连接状态为关闭状态;获取导致所述连接关闭的关闭信息;在所述关闭信息表示由所述保活探测处理导致所述连接关闭的情况下,将所述第一保活周期时长与所述第一预设步长值的差值作为所述目标保活周期时长;以及,设置所述目标标识为表示所述车辆在所述第一预设周期内已进行过所述第一保活周期调整处理的信息。
136.在一个实施例中,在所述关闭信息表示由所述保活探测处理以外的其他处理导致所述连接关闭的情况下,该保活周期调整模块6300可以用于:重新建立所述连接,以根据所述第一保活周期时长,获得所述目标保活周期时长。
137.在一个实施例中,在所述保活探测处理的目标探测结果表示保活探测成功的情况下,该保活周期调整模块6300可以用于:再次执行所述获取所述车辆的当前保活周期时长与第一预设步长值的和值作为第一保活周期时长步骤,以调整所述第一保活周期时长的数值;根据调整后的所述第一保活周期时长,获得所述目标保活周期时长。
138.在一个实施例中,该装置6000还包括目标探测结果获取模块,用于:通过所述连接,向所述服务器发送保活探测报文;在接收到所述服务器发送的响应报文的情况下,设置所述目标探测结果为表示保活探测成功的信息;以及,在未接收到所述服务器发送的响应报文,并且所述保活探测报文的重发次数不大于预设次数的情况下,重新发送所述保活探测报文,其中,所述响应报文为所述服务器发送的用于响应所述保活探测报文的报文;在所述重发次数不小于所述预设次数,并且,在所述预设次数的重发处理中,均未收到所述响应报文的情况下,设置所述目标探测结果为表示保活探测失败的信息.
139.在一个实施例中,该保活周期调整模块6300在根据所述状态信息和所述目标标识,对所述车辆进行保活周期调整处理,以获得目标保活周期时长时,可以用于:对所述车
辆进行第二保活周期调整处理,以获得所述目标保活周期时长。
140.在一个实施例中,该保活周期调整模块6300在对所述车辆进行第二保活周期调整处理,以获得所述目标保活周期时长时,可以用于:获取当前保活周期时长作为第二保活周期时长;根据所述第二保活周期时长,向所述服务器发起保活探测处理;在所述保活探测处理的目标探测结果表示保活探测失败,或者,当前获取到的关闭信息表示所述连接存在异常的情况下,确定所述连接的连接状态为关闭状态,以及,获取所述连接对应的目标数据交互空闲时长,其中,所述目标数据交互空闲时长为所述车辆在最近一次向所述服务器进行数据交互时的时刻至当前时刻之间的时长;在所述目标交互空闲时长小于所述第二保活周期时长的情况下,获取所述第二保活周期时长与第二预设步长值的差值,并调整所第二保活周期时长的数值为所述差值;根据调整后的所述第二保活周期时长,获得所述目标保活周期时长。
141.在一个实施例中,该保活周期调整模块6300在根据调整后的所述第二保活周期时长,获得所述目标保活周期时长时,可以用于:根据调整后的所述第二保活周期时长,重新建立所述车辆与所述服务器之间的连接;并根据调整后的所述第二保活周期时长,向所述服务器发起保活探测处理,以获得所述目标保活周期时长。
142.在一个实施例中,该保活周期调整模块6300在对所述车辆进行第二保活周期调整处理,以获得所述目标保活周期时长时,还可以用于:在所述保活探测处理的目标探测结果表示保活探测成功,或者,所述关闭信息表示所述连接正常的情况下,设置所述第二保活周期时长为所述目标保活周期时长。
143.<设备实施例>
144.与上述方法实施例对应,在本实施例中,还提供一种车辆,其可以包括本公开装置实施例的保活周期调整装置6000,用于实施本公开方法实施例一中的保活周期调整方法。
145.如图7所示,该车辆7000还可以包括处理器7200和存储器7100,该存储器7100用于存储可执行的指令;该处理器7200用于根据指令的控制运行车辆以执行根据本公开任意实施例的保活周期调整方法。
146.以上装置6000的各个模块可以由处理器7200运行该指令以执行根据本发明任意实施例的方法来实现。
147.本说明书的一个实施例或者多个实施例可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本说明书的各个方面的计算机可读程序指令。
148.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd

rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输
的电信号。
149.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
150.用于执行本说明书实施例操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本说明书的各个方面。
151.这里参照根据本说明书实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本说明书的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
152.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
153.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
154.附图中的流程图和框图显示了根据本说明书的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流
程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人物来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
155.以上已经描述了本说明书的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人物来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人物能理解本文披露的各实施例。本技术的范围由所附权利要求来限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献