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

一种维护TCP连接的方法、装置及电子设备与流程

2022-06-12 03:11:45 来源:中国专利 TAG:

一种维护tcp连接的方法、装置及电子设备
技术领域
1.本技术涉及网络安全技术领域,尤其涉及一种维护tcp连接的方法、装置及电子设备。


背景技术:

2.为了保障网络环境的安全,引入了网站应用级入侵防御系统(web application firewall,waf),主要用于将用户端发送的网络访问请求进行过滤之后发送至源站服务器,源站服务器再基于接收到的网络访问请求作出响应。
3.一个waf系统通常需要防护n个源站服务器,一个源站服务器有m个源ip地址,由于只有处于正常工作状态的源站服务器才能对接收的网络访问请求作出响应,因此,waf系统会定时检测每个源站服务器是否处于正常工作状态,waf系统对源站服务器进行检测的过程具体如下:
4.为了检测源站服务器能够处于正常工作状态,waf系统需要创建与源站服务器之间的n*m个传输控制协议(transmission control protocol,tcp)连接,当waf系统与源站服务器的tcp连接创建成功时,表示该源站服务器处于正常工作状态,当waf系统与源站服务器的tcp连接创建失败时,表示该源站服务器处于异常工作状态。
5.当n与m的数量值较大时,将会占据大量的tcp端口用于创建tcp连接,而创建tcp连接需要消耗的资源过多时,将会造成waf系统的资源争夺问题,导致waf系统与源站服务器的tcp连接创建出现异常。


技术实现要素:

6.本技术提供了一种维护tcp连接的方法、装置及电子设备,通过确定源站服务器未响应用户端发送的访问请求,触发waf系统检测未响应用户端的访问请求的源站服务器,确定该源站服务器处于异常工作状态时,主动确定第一i p地址是否处于异常,当第一i p地址为异常时,对源站服务器进行恢复,避免了由于waf系统定期检测大规模的源站服务器造成的waf系统内部进行资源争夺,从而导致waf系统创建的tcp连接失败的问题,确保了waf系统创建与源站服务器的tcp连接正常。
7.第一方面,本技术提供了一种维护tcp连接的方法,所述方法包括:
8.确定源站服务器未响应用户端发送的访问请求,获取所述访问请求对应的响应信息,其中,所述响应信息表征所述源站服务器处于异常工作状态;
9.获取所述响应信息所属的源站服务器对应的第一ip地址以及替换ip地址集;
10.确定基于所述第一ip地址建立tcp连接失败时,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址,并基于所述替换ip地址建立与所述源站服务器之间的tcp连接,直至检测到tcp连接建立成功。
11.在一种可能的设计中,确定源站服务器未响应用户端发送的访问请求,包括:
12.检测到tcp连接建立失败时,确定源站服务器未响应用户端发送的访问请求;或
13.接收到所述源站服务器发送的重置报文时,确定源站服务器未响应用户端发送的访问请求。
14.在一种可能的设计中,确定基于所述第一ip地址建立tcp连接失败,包括:
15.按照预设频率创建与源站服务器之间的tcp连接;
16.在第一预设时间段内,未检测到所述tcp连接创建成功,确定基于所述第一ip地址建立tcp连接失败。
17.在一种可能的设计中,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址之前,包括:
18.将所述第一ip地址标记为异常ip地址,并获取所述异常ip地址关联的端口信息以及基于所述第一ip地址建立tcp连接失败的时间。
19.在一种可能的设计中,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址,包括:
20.获取所述源站服务器的替换ip地址集,按照预设排列顺序从所述替换ip地址集中确定出替换ip地址;
21.将所述第一ip地址切换为所述替换ip地址。
22.在一种可能的设计中,按照预设排列顺序从所述替换ip地址集中确定出替换ip地址,包括:
23.获得所述替换ip地址集中各个ip地址关联的端口信息以及所述第一ip地址关联的第一端口信息;
24.提取出各个端口信息对应的位置以及所述第一端口信息对应的第一位置;
25.计算所述第一端口信息的第一位置与各个端口信息对应的位置之间的差值,并将所有差值按照预设顺序进行排列;
26.获得所述最小差值对应的端口信息关联的ip地址,并将所述ip地址作为替换ip地址。
27.在一种可能的设计中,基于所述替换ip地址建立与所述源站服务器之间的tcp连接之后,包括:
28.在第二预设时间段内,基于所述第一ip地址建立与所述源站服务器之间的第一tcp连接;
29.确定存在所述第一tcp连接成功时,将基于所述替换ip地址建立的tcp连接切换为所述第一tcp连接。
30.第二方面,本技术提供了一种维护tcp连接的装置,所述装置包括:
31.获得模块,用于确定源站服务器未响应用户端发送的访问请求,获取所述访问请求对应的响应信息;
32.替换模块,用于获取所述响应信息所属的源站服务器对应的第一ip地址以及替换ip地址集;
33.连接模块,用于确定基于所述第一ip地址建立tcp连接失败时,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址,并基于所述替换ip地址建立与所述源站服务器之间的tcp连接,直至检测到tcp连接建立成功。
34.在一种可能的设计中,所述获得模块,具体用于检测到tcp连接建立失败时,确定
源站服务器未响应用户端发送的访问请求,或接收到所述源站服务器发送的重置报文时,确定源站服务器未响应用户端发送的访问请求。
35.在一种可能的设计中,所述连接模块,具体用于按照预设频率创建与源站服务器之间的tcp连接,第一预设时间段内,未检测到所述tcp连接创建成功,确定基于所述第一ip地址建立tcp连接失败。
36.在一种可能的设计中,所述连接模块,还用于将所述第一ip地址标记为异常ip地址,并获取所述异常ip地址关联的端口信息以及基于所述第一ip地址建立tcp连接失败的时间。
37.在一种可能的设计中,所述连接模块,还用于获取所述源站服务器的替换ip地址集,按照预设排列顺序从所述替换ip地址集中确定出替换ip地址,所述第一ip地址切换为所述替换ip地址。
38.在一种可能的设计中,所述连接模块,还用于获得所述替换ip地址集中各个ip地址关联的端口信息以及所述第一ip地址关联的第一端口信息,取出各个端口信息对应的位置以及所述第一端口信息对应的第一位置,算所述第一端口信息的第一位置与各个端口信息对应的位置之间的差值,并将所有差值按照预设顺序进行排列,得所述最小差值对应的端口信息关联的ip地址,并将所述ip地址作为替换ip地址。
39.在一种可能的设计中,所述连接模块,还用于在第二预设时间段内,基于所述第一ip地址建立与所述源站服务器之间的第一tcp连接,定存在所述第一tcp连接成功时,将基于所述替换ip地址建立的tcp连接切换为所述第一tcp连接。
40.第三方面,本技术提供了一种电子设备,包括:
41.存储器,用于存放计算机程序;
42.处理器,用于执行所述存储器上所存放的计算机程序时,实现上述的一种维护tcp连接的方法步骤。
43.第四方面,一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述的一种维护tcp连接的方法步骤。
44.上述第一方面至第四方面中的各个方面以及各个方面可能达到的技术效果请参照上述针对第一方面或第一方面中的各种可能方案可以达到的技术效果说明,这里不再重复赘述。
附图说明
45.图1为本技术提供的一种维护tcp连接的方法步骤的流程图;
46.图2为本技术提供的一种维护tcp连接的装置的结构示意图;
47.图3为本技术提供的一种电子设备的结构示意图。
具体实施方式
48.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述。方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。需要说明的是,在本技术的描述中“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单
独存在b这三种情况。a与b连接,可以表示:a与b直接连接和a与b通过c连接这两种情况。另外,在本技术的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
49.在以往的技术中,waf系统为了检测源站服务器需要与源站服务器创建tcp连接,waf系统需要基于定期对所有源站服务器的源ip地址进行检测,再基于检测的结果确定出该源站服务器是否处于正常工作状态,当tcp连接创建成功时,则能够确定该源站服务器处于正常工作状态,当tcp连接创建失败时,则能够确定该源站服务器处于一场工作状态,但是,当源站服务器的数量过多时,waf系统需要检测所有源站服务器对应的源ip地址时,将会耗费大量的资源,造成waf系统内部进行资源争夺的问题,从而导致waf系统创建与源站服务器的tcp连接异常。
50.为了解决上述的问题,本技术实施例提供了一种维护tcp连接的方法,用以节约waf系统在对源站服务器进行检测时需要消耗的waf系统的资源,同时,在waf系统定位出处于异常工作状态的源站服务器时,对该源站服务器进行恢复操作。其中,本技术实施例所述方法和装置基于同一技术构思,由于方法及装置所解决问题的原理相似,因此装置与方法的实施例可以相互参见,重复之处不再赘述。
51.下面结合附图,对本技术实施例进行详细描述。
52.参照图1,本技术提供了一种维护tcp连接的方法,该方法可以避免了由于源站服务器数量过多导致的waf系统的资源紧缺问题,该方法的实现流程如下:
53.步骤s1:确定源站服务器未响应用户端发送的访问请求,获取所述访问请求对应的响应信息。
54.在waf系统对源站服务器进行检测时,当源站服务的数量过多时,waf系统需要检测的源站服务器的源ip地址的数量将会更多,由于waf系统连接的源站服务器在通常情况下只是部分源站服务器出现问题,因此,为了确保waf系统创建与源站服务器的tcp连接处于正常状态,需要确保waf系统创建tcp连接时的资源充足。
55.为了确保waf系统创建tcp连接时的资源充足,本技术实施例采用的方式是基于源站服务器对用户端的访问请求对应的响应信息进行判断,当源站服务器响应了用户端发送的访问请求时,则代表源站服务器当前处于正常工作状态,当源站服务器未响应用户端发送的访问请求时,则代表源站服务器处于异常工作状态,本技术实施例将以源站服务器处于异常工作状态的情况进行说明。
56.当源站服务器未响应用户端发送的访问请求时,waf系统会检测到如下情况:
57.情况一:检测到tcp连接建立失败。
58.情况二:waf系统检测到源站服务器发送的重置报文。
59.以上两种情况都代表源站服务器未响应用户端的访问请求。
60.确定源站服务器未响应用户端的访问请求时,waf系统将从源站服务器获取该访问请求对应的响应信息,响应信息表征该源站服务器处于异常工作状态,由于源站服务器接收到的用户端的访问请求至少为一个,而源站服务器处理各个访问请求时的过程是一致的,因此,本技术实施例将描述源站服务器处理一个访问请求的过程,源站服务器处理其他的访问请求的过程参考本技术实施例,这里不做过多阐述。
61.通过上述的描述,waf系统获取未响应用户端的访问请求的源站服务器的响应信
息,waf系统能够从连接的所有源站服务器中确定出处于异常工作状态的源站服务器,能够使得waf系统只检测处于异常工作状态的源站服务器。
62.步骤s2:获取所述响应信息所属的源站服务器对应的第一ip地址以及替换ip地址集。
63.确定源站服务器未响应用户端发送的访问请求后,已知该源站服务器处于异常工作状态,waf系统为了能够准确的对处于异常的源站服务器进行恢复,需要获得当前源站服务器使用的第一ip地址,以及获得该源站服务器的替换ip地址集,替换ip地址集用于当源站服务器处于异常工作状态且在预设时间内还未恢复时,从替换ip地址集的ip地址中确定出一个ip地址,该ip地址用于替换第一ip地址。
64.从上述的描述可知,一个源站服务器对应着多个ip地址,当waf系统检测源站服务的第一ip地址失败,即建立与该源站服务器的tcp连接失败,则能够用替换ip地址集中的ip地址进行替换,确保了当源站服务器出现异常时,能够通过替换第一ip地址,使得源站服务器处于正常工作状态。
65.步骤s3:确定基于所述第一ip地址建立tcp连接失败时,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址,并基于所述替换ip地址建立与所述源站服务器之间的tcp连接,直至检测到tcp连接建立成功。
66.在上述的描述中,以及获得了源站服务器的第一ip地址以及替换ip地址集,当waf系统检测出源站服务器处于异常工作状态时,为了确保基于第一ip地址创建tcp连接失败,且为了避免不影响源站服务器对访问请求的处理,在第一预设时间段内,waf系统将按照预设频率创建与源站服务器之间的连接,确定在第一预设时间段内,未检测到waf系统成功创建与源站服务器之间的tcp连接后,确定基于第一ip地址建立tcp连接失败。
67.为了能够获知tcp连接建立异常的异常ip地址,则将第一ip地址标记为异常ip地址,并且,waf系统为了能够对基于异常ip地址建立的tcp连接进行恢复,还需要获取该异常ip地址关联的端口信息以及基于第一ip地址建立tcp连接失败的时间。
68.确定第一ip地址为异常ip地址之后,获得上述描述中的替换ip地址集,该替换ip地址集中包括多个ip地址,为了筛选出距离第一ip地址的第一端口信息的第一位置最近的ip地址,使得waf系统的资源调配更加高效,需要获得第一ip地址的第一端口信息对应的第一位置,和各个ip地址的端口信息对应的位置,再计算各个端口的位置与第一位置之间的差值,获得与ip地址同等数量值的差值。
69.将上述描述中与ip地址同等数量值的差值,按照预设顺序进行排列,筛选出最小差值对应的端口信息以及该端口信息关联的ip地址,并将筛选出的ip地址作为替换ip地址,基于替换ip地址建立与源站服务器之间的tcp连接,使得源站服务器处于正常工作状态。
70.在基于替换ip地址建立与源站服务器之间的连接之后,waf系统还会对基于第一ip地址建立的异常tcp连接进行恢复,waf系统将在第二预设时间段内,基于第一ip地址创建与源站服务器之间的第一tcp连接,当基于第一ip地址创建与源站服务器的第一tcp连接正常时,会将基于替换ip地址创建的tcp连接切换为第一tcp连接,从而实现将替换ip地址切换为第一ip地址。
71.通过上述描述的方法,基于源站服务器是否响应用户端的访问请求,确定出源站
服务器是否处于正常工作状态,有利于waf系统实现从多个的源站服务器中定位到处于异常工作状态的源站服务器,使得waf系统具有针对性的对处于异常工作状态的源站服务器进行修复,避免了waf系统由于同一时间检测大量的源站服务器造成资源争夺,导致tcp连接创建异常的问题,提高了waf系统创建正常的tcp连接的概率。
72.基于同一发明构思,本技术实施例中还提供了一种维护tcp连接的装置,该维护tcp连接的装置用于实现了一种维护tcp连接的方法的功能,参照图2,所述装置包括:
73.获得模块201,用于确定源站服务器未响应用户端发送的访问请求,获取所述访问请求对应的响应信息;
74.替换模块202,用于获取所述响应信息所属的源站服务器对应的第一ip地址以及替换ip地址集;
75.连接模块203,用于确定基于所述第一ip地址建立tcp连接失败时,将所述第一ip地址切换为所述替换ip地址集中的替换ip地址,并基于所述替换ip地址建立与所述源站服务器之间的tcp连接,直至检测到tcp连接建立成功。
76.在一种可能的设计中,所述获得模块201,具体用于检测到tcp连接建立失败时,确定源站服务器未响应用户端发送的访问请求,或接收到所述源站服务器发送的重置报文时,确定源站服务器未响应用户端发送的访问请求。
77.在一种可能的设计中,所述连接模块203,具体用于按照预设频率创建与源站服务器之间的tcp连接,第一预设时间段内,未检测到所述tcp连接创建成功,确定基于所述第一ip地址建立tcp连接失败。
78.在一种可能的设计中,所述连接模块203,还用于将所述第一ip地址标记为异常ip地址,并获取所述异常ip地址关联的端口信息以及基于所述第一ip地址建立tcp连接失败的时间。
79.在一种可能的设计中,所述连接模块203,还用于获取所述源站服务器的替换ip地址集,按照预设排列顺序从所述替换ip地址集中确定出替换ip地址,所述第一ip地址切换为所述替换ip地址。
80.在一种可能的设计中,所述连接模块203,还用于获得所述替换ip地址集中各个ip地址关联的端口信息以及所述第一ip地址关联的第一端口信息,取出各个端口信息对应的位置以及所述第一端口信息对应的第一位置,算所述第一端口信息的第一位置与各个端口信息对应的位置之间的差值,并将所有差值按照预设顺序进行排列,得所述最小差值对应的端口信息关联的ip地址,并将所述ip地址作为替换ip地址。
81.在一种可能的设计中,所述连接模块203,还用于在第二预设时间段内,基于所述第一ip地址建立与所述源站服务器之间的第一tcp连接,定存在所述第一tcp连接成功时,将基于所述替换ip地址建立的tcp连接切换为所述第一tcp连接。
82.基于同一发明构思,本技术实施例中还提供了一种电子设备,所述电子设备可以实现前述一种维护tcp连接的装置的功能,参考图3,所述电子设备包括:
83.至少一个处理器301,以及与至少一个处理器301连接的存储器302,本技术实施例中不限定处理器301与存储器302之间的具体连接介质,图3中是以处理器301和存储器302之间通过总线300连接为例。总线300在图3中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线300可以分为地址总线、数据总线、控制总线等,为便
于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。或者,处理器301也可以称为控制器,对于名称不做限制。
84.在本技术实施例中,存储器302存储有可被至少一个处理器301执行的指令,至少一个处理器301通过执行存储器302存储的指令,可以执行前文论述的一种维护tcp连接的方法。处理器301可以实现图2所示的装置中各个模块的功能。
85.其中,处理器301是该装置的控制中心,可以利用各种接口和线路连接整个该控制设备的各个部分,通过运行或执行存储在存储器302内的指令以及调用存储在存储器302内的数据,该装置的各种功能和处理数据,从而对该装置进行整体监控。
86.在一种可能的设计中,处理器301可包括一个或多个处理单元,处理器301可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器301中。在一些实施例中,处理器301和存储器302可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
87.处理器301可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的一种维护tcp连接的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
88.存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器302可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器302是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器302还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
89.通过对处理器301进行设计编程,可以将前述实施例中介绍的一种维护tcp连接的方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行图1所示的实施例的一种维护tcp连接的步骤。如何对处理器301进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
90.基于同一发明构思,本技术实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行前文论述的一种维护tcp连接的方法。
91.在一些可能的实施方式中,本技术提供一种维护tcp连接的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在装置上运行时,程序代码用于使该控制设备执行本说明书上述描述的根据本技术各种示例性实施方式的一种维护tcp
连接的方法中的步骤。
92.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
93.本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
94.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
95.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
96.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

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

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

相关文献