CN106209407A - 进行会话备份的方法与设备 - Google Patents
进行会话备份的方法与设备 Download PDFInfo
- Publication number
- CN106209407A CN106209407A CN201510228348.0A CN201510228348A CN106209407A CN 106209407 A CN106209407 A CN 106209407A CN 201510228348 A CN201510228348 A CN 201510228348A CN 106209407 A CN106209407 A CN 106209407A
- Authority
- CN
- China
- Prior art keywords
- information
- network equipment
- subscriber equipment
- equipment
- utility cession
- 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.)
- Granted
Links
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请的目的是提供一种在用户设备端进行会话备份的方法与设备;向第一网络设备发送用户设备关于目标应用的第一访问请求;接收所述第一网络设备基于所述第一访问请求返回的包含了待备份的应用会话信息的第一访问响应信息;从所述第一访问响应信息中抽取所述应用会话信息;存储所述应用会话信息。与现有技术相比,本申请可以实现不借助专门的备份设备,而是直接存储在访问请求对应的用户设备中,从而简化了备份设备的部署,降低了成本,并由于不存在多个备份设备,也避免了主备专用线路设置的开销,并且,在网络设备集群环境下,可以实现会话信息全分布式存储,并能够很好的解决由于信息备份带来的集群扩容受限的问题。
Description
技术领域
本申请涉及计算机领域,尤其涉及进行会话备份的技术。
背景技术
在现有技术中,通常是将一个集群设备对应的需要备份的会话信息统一备份在所述集群对应的一个或是若干个设备中,例如,在集群中设置一个或多个用于备份的中央控制设备来实现会话备份,由此,增加了整个集群运行的复杂程度;同时,用于备份的设备本身由于是全量备份,也会存在存储数据冗余问题;并且若是设置了多个全量备份设备,各个设备之间还会存在专用线路开销;进一步,当集群扩容时,上述各类弊端将更加凸显。
发明内容
本申请的目的是提供进行会话备份的方法与设备。
根据本申请的一个方面,提供了一种在用户设备端进行会话备份的方法,其中,所述方法包括:
向第一网络设备发送用户设备关于目标应用的第一访问请求;
接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
从所述第一访问响应信息中抽取所述应用会话信息;
存储所述应用会话信息。
根据本申请的另一方面,还提供了一种在第一网络设备端进行会话备份的方法,其中,所述方法包括:
接收用户设备发出的关于目标应用的第一访问请求;
生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;
将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
根据本申请的另一方面,还提供了一种在第二网络设备端进行会话备份的方法,其中,所述方法包括:
接收用户设备发送的会话恢复请求,其中,所述会话恢复请求包括关于所述用户设备经由第一网络设备与目标应用的会话的应用会话信息,所述第一网络设备与所述第二网络设备属于同一集群;
根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
根据本申请的再一方面,还提供了一种进行会话备份的用户设备,其中,所述用户设备包括:
第一装置,用于向第一网络设备发送用户设备关于目标应用的第一访问请求;
第二装置看,用于接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
第三装置,用于从所述第一访问响应信息中抽取所述应用会话信息;
第四装置,用于存储所述应用会话信息。
根据本申请的又一方面,还提供了一种进行会话备份的第一网络设备,其中,所述第一网络设备包括:
第十装置,用于接收用户设备发出的关于目标应用的第一访问请求;
第十一装置,用于生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
第十二装置,用于根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;
第十三装置,用于将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
根据本申请的又一方面,还提供了一种进行会话备份的第二网络设备,其中,所述第二网络设备包括:
第十八装置,用于接收用户设备发送的会话恢复请求,其中,所述会话恢复请求包括关于所述用户设备经由第一网络设备与目标应用的会话的应用会话信息,所述第一网络设备与所述第二网络设备属于同一集群;
第十九装置,用于根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
根据本申请的再一方面,还提供了一种进行会话备份的第三网络设备,其中,所述第三网络设备包括:根据本申请的又一方面提供的一种进行会话备份的第一网络设备,以及根据本申请的又一方面提供的一种进行会话备份的第二网络设备。
根据本申请的又一方面,还提供了一种进行会话备份的系统,其中,所述系统包括:根据本申请的再一方面提供的一种进行会话备份的用户设备,根据本申请的又一方面提供的一种进行会话备份的第一网络设备,以及根据本申请的又一方面提供的一种进行会话备份的第二网络设备。
与现有技术相比,本申请中,所述用户设备向所述第一网络设备发送关于目标应用的第一访问请求,通过接收所述第一网络设备返回的的对应的第一访问响应信息,并抽取包含在所述第一访问响应信息中的应用会话信息,进而将待备份的应用会话信息存储在对应的所述用户设备中,在此,所述会话信息的存储不需要借助专门的备份设备,例如所述第一网络设备所属集群未含用于存储会话备份信息的模块,而是直接存储在访问请求对应的用户设备中,从而简化了备份设备的部署,降低了成本,并且,对于会话信息的备份,由于不存在多个备份设备,也避免了主备专用线路设置的开销,并且,在网络设备集群环境下,可以实现会话信息全分布式存储,并能够很好的解决由于信息备份带来的集群扩容受限的问题。而且,所述第一网络设备基于接收的所述用户设备的第一访问请求生成所述应用会话信息,并将所述应用会话信息添加在获得的所述第一访问响应信息中发送给所述用户设备,从而配合着所述用户设备,共同完成了所述应用会话信息的备份。进一步地,当所述第一网络设备经检测出现故障时,所述第二网络设备基于所述用户设备发送的恢复请求及对应的备份的应用会话信息,及时替代所述第一网络设备完成相应的数据访问,保证了数据访问正常进行而不受第一网络设备故障影响。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一个方面的进行会话备份的用户设备和第一网络设备的系统示意图;
图2示出根据本申请一个优选实施例的进行会话备份的用户设备和第一网络设备的系统示意图;
图3示出根据本申请另一个优选实施例的进行会话备份的用户设备和第二网络设备的系统示意图。
图4示出根据本申请另一个方面的一种在用户设备端和第一网络设备端进行会话备份的方法流程图;
图5示出根据本申请一个优选实施例的一种在用户设备端和第一网络设备端进行会话备份的方法流程图;
图6示出根据本申请另一个优选实施例的一种在用户设备端和第二网络设备端进行会话备份的方法流程图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
图1示出根据本申请一个方面的进行会话备份的用户设备和第一网络设备的系统示意图。其中,所述用户设备1包括第一装置11、第二装置12、第三装置13和第四装置14;所述第一网络设备2包括第十装置21、第十一装置22、第十二装置23和第十三装置24
其中,所述用户设备1的第一装置11向第一网络设备发送用户设备关于目标应用的第一访问请求;所述用户设备1的第二装置12接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;所述用户设备1的第三装置13从所述第一访问响应信息中抽取所述应用会话信息;所述用户设备1的第四装置14存储所述应用会话信息;所述第一网络设备2的第十装置21接收用户设备发出的关于目标应用的第一访问请求;所述第一网络设备2的第十一装置22生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;所述第一网络设备2的第十二装置23根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;所述第一网络设备2的第十三装置24将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
具体地,所述用户设备1的第一装置11向第一网络设备2发送用户设备关于目标应用的第一访问请求。相应的,所述第一网络设备2的第十装置21接收所述用户设备1发出的该第一访问请求。在此,所述第一访问请求包括但不限于所述用户设备1向所述目标应用发出的建立网络通信连接的请求,例如,用户设备1向目标应用对应服务器建立网络通信连接的请求,如建立TCP(传输控制协议)连接的请求等;或是,所述用户设备1向所述目标应用发出的直接进行数据传输的请求,例如,UDP(用户数据报协议)数据传输的访问请求等。所述第一网络设备2包括具有一定网络功能的设备,所述网络功能包括但不限于NAT(网络地址转换)功能、VPN(虚拟专用网络)功能等。在本申请中,优选地,所述第一网络设备2是所述用户设备1的网关设备,进一步,所述第一网络设备2有一个地址信息,如IP地址信息,可被所述用户设备1辨识。在此,优选地,以所述第一网络设备2为实现NAT网络功能的网关设备,且所述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求为例,假设所述用户设备1处于一定的局域网中,并对应一个私有地址1.1.1.1:2345,同时,存在一个该局域网外的目标应用A,所述目标应用A可能存在于其他局域网中,或是直接存在于广域网中,且该目标应用A对应一个公有地址3.3.3.3:80,当所述用户设备1,可以具体到用户设备1的某个进程,希望访问该局域网外的目标应用A时,用户设备1会向所述目标应用发起TCP连接请求,如用户设备1发送一个SYN(同步序列号)报文,此第一访问请求会先到达与所述用户设备1所在局域网对应的网关设备,如所述具有NAT网络功能的第一网络设备2中。
接着,所述第一网络设备2的第十一装置22生成关于所述用户设备1经由所述第一网络设备2与所述目标应用的会话的应用会话信息。
具体地,以所述第一网络设备2为实现NAT网络功能的网关设备,且所述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求为例,假设用户设备1处于一定的局域网中,并对应一个私有地址1.1.1.1:2345,同时,存在一个该局域网外的目标应用B,所述目标应用B可能存在于其他局域网中,或是直接存在于广域网中,且该目标应用B对应一个公有地址8.8.8.8:80。在此,第十一装置22接收到的所述用户设备1向所述目标应用B发出的所述第一访问请求,如建立TCP连接的SYN报文,基于NAT网络功能,所述第一网络设备2对所述建立TCP连接的报文对应的源地址即1.1.1.1:2345,进行网络地址转换,配置一个可以在广域网上使用的公有地址7.7.7.7:80,再将所述第一访问请求以该公有地址7.7.7.7:80为源地址,去连接所述目标应用B对应的公有地址8.8.8.8:80。在此,基于对应的NAT功能,所述第一网络设备2的第十一装置22生成了相应的应用会话信息,例如:
{Orig:1.1.1.1:2345->8.8.8.8:80
Nat:7.7.7.7:80->8.8.8.8:80}
进而,将所述应用会话信息存储在所述第一网络设备2中。
在本申请中,待备份的所述应用会话信息包括用户设备1通过第一网络设备2完成与所述目标应用通信的会话信息,当所述第一网络设备对应于实现所述NAT功能时,所述应用会话信息即为NAT会话信息,类似的,当所述第一网络设备对应于实现其他网络功能,如VPN功能时,所述应用会话信息即为其他网络功能对应的会话信息,例如,所述用户设备1与第一网络设备2基于SSL(安全套接层协议层)协商,实现VPN功能时,所述应用会话信息就可以包括相关密钥信息等。
在此,在实际应用中,所述第二网络设备2可以包括多个具有相同网络功能的网络设备组成的集群设备;或是所述第二网络设备2可能与多个与其具有相同网络功能的其他网络设备,共同组成对应的集群设备。
在此,本领域技术人员应能理解上述所述第一网络设备2为实现NAT网络功能的网关设备仅为举例,其他现有的或今后可能出现的其他第一网络设备2如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
在此,本领域技术人员应能理解上述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求仅为举例,其他现有的或今后可能出现的其他内容的第一访问请求如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
接着,所述第十二装置23根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息。
具体地,基于所述第一网络设备2对应的所述NAT变换,生成了所述应用会话信息;同样,基于所述NAT变换确定的新的源地址,所述第一网络设备2将从所述用户设备1处获得的第一访问请求进一步发送到对应的目标应用。接着,所述目标应用对所述第一访问请求进行回复,即做出第一访问响应信息,例如,当所述第一访问请求是建立TCP连接的请求时,所述目标应用A会向所述用户设备1发送一个SYN+ACK报文,表示同意用户设备1发送的连接请求。在此,由于从所述第一网络设备2发出的第一访问请求变换后的新的源地址实际对应的是所述第二网络设备2,所以基于变换后的新的源地址,所述第一访问响应信息将会首先由所述第一网络设备2的第十二装置23获取。
接着,所述第十三装置24将所述第一访问响应信息发送至所述用户设备1,其中,所述第一访问响应信息包含所述应用会话信息。具体地,当所述第一网络设备2获得所述第一访问响应信息后,会在相应的存储记录中,寻找之前已经存储的、并与该第一访问响应信息对应的应用会话信息。并将所述应用会话信息添加到所述第一访问响应信息中,例如,当所述第一访问响应信息对应所述TCP报文,如SYN+ACK报文时,将所述应用会话信息放入到TCP选项中。进而,将添加了待备份的所述应用会话信息的第一访问响应信息发送至所述用户设备1。
与此相对应的,所述用户设备1的第二装置12接收所述第一网络设备基于所述第一访问请求返回的、并包含了所述应用会话信息的第一访问响应信息。在此,所述第一访问响应信息,如所述TCP报文,其TCP选项字段可以自定义,进而可以基于所述第一网络设备2实现的不同网络功能,设置不同的TCP选项。
接着,所述第三装置13从所述第一访问响应信息中抽取所述应用会话信息。具体地,在所述第一网络设备2中,所述应用会话信息会基于一定的格式放入到第一访问响应信息,如所述TCP报文中。所述应用会话信息是所述第一网络设备2发挥相应网络功能的信息记录,也是本申请中需要备份保存的数据信息,当所述第三装置13接收了所述第一访问响应信息后,将会从所述第一访问响应信息,如具体的TCP报文信息中解析出对应的应用会话信息。在此,所述用户设备1可以具体地解析出应用会话信息本身的具体信息内容,也可以仅仅将一个所述应用会话信息整体抽取出来,并不做具体内容的解析。
接着,所述第四装置14存储所述应用会话信息。具体地,将所述解析出的应用会话信息存储在所述用户设备1相应的存储装置、或是对应的数据库中,甚至是与所述用户设备1对应的外部存储设备中。例如,可以在所述用户设备1中设置一个linux的内核模块用来存储需备份的应用会话信息。在此,具体地,利用linux的netfilter(数据报筛选系统)机制,截取所有数据报文,安装和网关之间的格式,解析出第一网络设备2,即网关设备中产生的会话信息;以TCP为例,在SYN+ACK报文中解析TCP选项,发现自定义选项后,继续解析选项内容,按照预定义格式解析出会话内容,并保存在本地会话表中。
在本申请中,所述用户设备1向所述第一网络设备2发送关于目标应用的第一访问请求,通过接收所述第一网络设备返回的的对应的第一访问响应信息,并抽取包含在所述第一访问响应信息中的应用会话信息,进而将待备份的应用会话信息存储在对应的所述用户设备1中,在此,所述会话信息的存储不需要借助专门的备份设备,例如所述第一网络设备所属集群未含用于存储会话备份信息的模块,而是直接存储在访问请求对应的用户设备中,从而简化了备份设备的部署,降低了成本,并且,对于会话信息的备份,由于不存在多个备份设备,也避免了主备专用线路设置的开销,并且,在网络设备集群环境下,可以实现会话信息全分布式存储,并能够很好的解决由于信息备份带来的集群扩容受限的问题。而且,所述第一网络设备基于接收的所述用户设备的第一访问请求生成所述应用会话信息,并将所述应用会话信息添加在获得的所述第一访问响应信息中发送给所述用户设备,从而配合着所述用户设备,共同完成了所述应用会话信息的备份。
优选地,所述用户设备1还包括第五装置(见图2),所述第五装置基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息。
具体地,以所述用户设备1与所述目标应用之间建立TCP连接为例,当所述用户设备1接收了包含所述应用会话信息的第一访问响应信息后,将会向所述第一网络设备2发送一个ACK报文,表示同意与所述目标应用对应的服务器建立通信连接。进而,基于建立好的连接,所述用户设备1与所述目标应用可以进行实际数据传输,而所述第一网络设备2对应的网络功能将在所述数据传输中完成,若是后续所述实际数据传输出现故障,优选地,将会启用在所述用户设备1备份的应用会话信息寻找新的相应的网络设备来替代所述第一网络设备2。
优选地,所述第一网络设备2还包括第十四装置(未示出),所述第十四装置基于预设的格式信息,将所述应用会话信息添加至所述第一访问响应信息。具体地,以所述第一访问响应信息对应所述TCP报文,如SYN+ACK报文为例,所述应用会话信息将被添加到TCP报文的选项中,选项中的具体字段,以及各个字段对应的字节位数等格式信息可以预设,并可以基于需要予以变化,例如,可以由所述用户设备1与所述第一网络设备2、或是其他相关的网络设备共同协商指定。在此,进一步,可以基于所述第一网络设备2对应的不同网络功能,设置不同的TCP选项,例如,在NAT场景下,当所述应用会话信息为:
{Orig:1.1.1.1:2345->8.8.8.8:80
Nat:7.7.7.7:80->8.8.8.8:80}
在此,可以约定所述TCP选项的类型、字节长度、NAT的IP信息、NAT的端口信息等,例如,包含NAT的IP信息,即所述变换后的新的源地址:7.7.7.7,且对应以4字节记录,并约定所述TCP选项包含NAT的端口信息,即所述端口80,且对应以两字节记录。
在此,本申请中,可以基于TCP选项对应的格式信息的灵活设置,使得各种功能的网络设备发挥作用的信息都能够以所述应用会话信息的形式保存在所述第一访问响应信息中,并由所述用户设备1获取并存储。
优选地,所述第一网络设备2还包括第十五装置(未示出),所述第十五装置基于所述应用会话信息,对所述第一访问响应信息进行转换处理;
其中,所述第十三装置24将转换后的所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
具体地,以所述第二网络设备2对应于网络功能NAT为例,若所述用户设备1经由所述第一网络设备2与所述目标应用C的会话的应用会话信息是:
{Orig:1.1.1.1:2345->10.10.10.10:80
Nat:9.9.9.9:80->10.10.10.10:80}
其中,所述目标应用C的设备所接收到的第一访问请求,其源地址信息实际上是在所述第一网络设备2经过NAT变换的新地址9.9.9.9:80,所以,所述目标应用C只能基于该地址,将所述第一访问响应信息送达至第一网络设备2,进而,基于寻找到的相应的应用会话信息,可知,所述NAT变换的新地址9.9.9.9:80与局域网中所述实际地址信息为1.1.1.1:2345的用户设备1对应,进而对所述第一访问响应信息进行9.9.9.9:80->1.1.1.1:2345的转换处理。进而,所述第十三装置24基于所述转换处理的结果,确定对应的用户设备1,从而将包含了所述应用会话的第一访问响应信息发送至所述用户设备1。
图2示出根据本申请一个优选实施例的进行会话备份的用户设备和第一网络设备的系统示意图。其中,所述系统包括所述用户设备1和第一网络设备2,所述用户设备1包括第一装置11’、第二装置12’、第三装置13’、第四装置14’、第五装置15’、第六装置16’和第七装置17’;所述第一网络设备2包括第十装置21’、第十一装置22’、第十二装置23’、第十三装置24’、第十六装置26’和第十七装置27’。
其中,所述用户设备1的第一装置11’向第一网络设备2发送用户设备关于目标应用的第一访问请求;所述用户设备1的第二装置12’接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;所述用户设备1的第三装置13’从所述第一访问响应信息中抽取所述应用会话信息;所述用户设备1的第四装置14’存储所述应用会话信息;所述用户设备1的第五装置15’基于所述第一访问响应信息,向所述第一网络设备发送对应的应答信息;所述用户设备1的第六装置16’向所述第一网络设备发送通信检测请求信息;所述用户设备1的第七装置17’接收所述第一网络设备发送的相应的检测响应信息;所述第一网络设备2的第十装置21’接收用户设备发出的关于目标应用的第一访问请求;所述第一网络设备2的第十一装置22’生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;所述第一网络设备2的第十二装置23’根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;所述第一网络设备2的第十三装置24’将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息;所述第一网络设备2的第十六装置26’接收所述用户设备发送的通信检测请求信息;所述第一网络设备2的第十七装置27’向所述用户设备发送响应的检测响应信息。在此,所述用户设备1的第一装置11’、第二装置12’、第三装置13’和第四装置14’与图1中所述用户设备1的第一装置11、第二装置12、第三装置13和第四装置14的内容对应相同或基本相同;并且所述第一网络设备2的第十装置21’、第十一装置22’、第十二装置23’和第十三装置24’与图1中第一网络设备2的第十装置21、第十一装置22、第十二装置23和第十三装置24的内容对应相同或基本相同。为简明起见,故在此不再赘述,并以引用的方式包含于此。
具体地,所述第五装置15’基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息。进一步,优选地,当所述用户设备1与所述目标应用建立了正常的网络通信连接,或是进行正常的数据访问或传输后,基于所述应用会话信息,所述第一网络设备一般会发挥正常的网络功能。但是在实际应用中,所述第一网络设备2可能会出现故障,从而无法正常工作。为了提前应对可能出现的设备障碍,本申请中,可以优选地,对所述第二网络设备2进行检测。例如,所述用户设备1和所述第一网络设备2之间可以基于周期性、或是其他可能的触发条件,进行心跳探测,从而检测所述第二网络设备2是否时效。在此,所述第六装置16’向所述第一网络设备2发送通信检测请求信息,例如,发送所述心跳探测报文,在此,所述心跳探测报文可以是利用普通UDP封装的报文格式,若是所述第一网络设备2运行正常,则会通过所述第十六装置26’接收所述用户设备1发送的通信检测请求信息,并且基于所述第十七装置27’向所述用户设备1发送响应的检测响应信息,当所述用户设备1的第七装置17’接收到所述第一网络设备2发送的相应的检测响应信息时,则判断所述第一网络设备2正常运行。此外,若是所述第一网络设备2失效,则无法接收到来自所述用户设备1的心跳探测报文,从而不会向所述用户设备1发送响应的探测响应信息。
在此,本领域技术人员应能理解上述心跳探测仅为举例,其他现有的或今后可能出现的其他通信检测方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
图3示出根据本申请另一个优选实施例的一种在用户设备端和第二网络设备端进行会话备份的方法流程图。其中,所述系统包括所述用户设备1和第二网络设备3,所述用户设备1包括第一装置11”、第二装置12”第三装置13”、第四装置14”、第五装置15”、第六装置16”、第七装置17”、第八装置18”和第九装置19”;所述第二网络设备3包括第十八装置31”和第十九装置32”。
其中,所述用户设备1的第一装置11”向第一网络设备2发送用户设备关于目标应用的第一访问请求;所述用户设备1的第二装置12”接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;所述用户设备1的第三装置13”从所述第一访问响应信息中抽取所述应用会话信息;所述用户设备1的第四装置14”存储所述应用会话信息;所述用户设备1的第五装置15”基于所述第一访问响应信息,向所述第一网络设备发送对应的应答信息;所述用户设备1的第六装置16”向所述第一网络设备发送通信检测请求信息;所述用户设备1的第七装置17”接收所述第一网络设备发送的相应的检测响应信息;若未接收到所述检测响应信息,所述用户设备1的第八装置18”向与所述第一网络设备同一集群的第二网络设备发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息;所述用户设备1的第九装置19”根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话;所述第二网络设备3的第十八装置31”接收用户设备发送的会话恢复请求,其中,所述会话恢复请求包括关于所述用户设备经由第一网络设备与目标应用的会话的应用会话信息,所述第一网络设备与所述第二网络设备属于同一集群;所述第二网络设备3的第十九装置32”根据所述应用会话信息经由所述第二网络设备3恢复所述用户设备1与所述目标应用的会话。
在此,所述用户设备1的第一装置11”、第二装置12”第三装置13”、第四装置14”、第五装置15”、第六装置16”和第七装置17”与图2中所述用户设备1的第一装置11’、第二装置12’、第三装置13’、第四装置14’、第五装置15’、第六装置16’和第七装置17’的内容对应相同或基本相同。为简明起见,故在此不再赘述,并以引用的方式包含于此。
具体地,若是所述用户设备1向所述第一网络设备2发送了通信检测请求信息,例如发送了所述心跳探测报文,若所述第一网络设备2并没有回复相应的检测响应信息,则可以判断所述第一网络设备2失效。在此,对于所述第一网络设备2失效的判断可以基于实际情况具体设定一定的条件,例如,设置在用户设备1发出所述心跳探测报文后T1时间内,没有收到所述第一网络设备2的相应的检测响应信息,则判断所述第一网络设备2失效;又如,设置当用户设备1发出所述心跳探测报文后T2时间内,若是没有收到所述第一网络设备2的相应的检测响应信息,则再次发送一个心跳探测报文,依次类推,约定当第N次发送后T2时间内若是仍没有收到所述第一网络设备2的相应的检测响应信息,则判断所述第一网络设备2失效。若是所述第一网络设备2失效,为了保证原有的数据通信或是数据访问不被终端,将会寻找所述第一网络设备2的替代设备,即所述第二网络设备3,在此,所述第二网络设备3是与所述第一网络设备2在同一集群中,具有相同网络功能的设备。所述第二网络设备3的选择可以是随机的,也可以是基于一定的集群负载平衡分析做出的优选。在此,所述用户设备1的第八装置18”向与所述第一网络设备2同一集群的第二网络设备3发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息。所述会话恢复请求即包含所述用户设备1经由第一网络设备2与目标应用的会话的应用会话信息。在此,优选地,基于所述用户设备1与所述第二网络设备3之间自定义的会话恢复请求,所述应用会话信息将在所述第二网络设备3强制重建,即所述应用会话信息中包含的原本所述第一网络设备1的设备端口信息等都不改变,在此,所述自定义的会话恢复请求可以是自定义的UDP报文形式。从而所述第二网络设备3的第十八装置31”接收用户设备1发送的会话恢复请求;并且所述用户设备1与所述目标应用之间的会话经由所述第二网络设备3重新建立,例如,所述第二网络设备3的第十九装置32”将基于所述获取的应用会话信息,重新替代所述第一网络设备2进行与目标应用的数据通信或数据访问,并将目标应用的响应结果转送到所述用户设备1,进而,所述用户设备1的第九装置19”根据所述应用会话信息经由所述第二网络设备3恢复所述用户设备1与所述目标应用的会话。
在此,当所述第一网络设备2经检测出现故障时,所述第二网络设备3基于所述用户设备发送的恢复请求及对应的备份的应用会话信息,及时替代所述第一网络设备完成相应的数据访问,保证了数据访问正常进行而不受第一网络设备故障影响。
优选地,所述第二网络设备3还包括第二十装置(未示出)、第二十一装置(未示出)和第二十二装置(未示出),其中,第二十装置接收所述用户设备1关于所述目标应用的第二访问请求;第二十一装置获取所述目标应用基于所述第二访问请求返回的第二访问响应信息;第二十二装置将所述第二访问响应信息提供至所述用户设备1。
具体地,当所述应用会话信息将在所述第二网络设备3强制重建后,所述用户设备1再次向所述目标应用发出第二访问请求,基于所述应用会话信息,所述第二网络设备3的第二十装置接收所述用户设备1关于所述目标应用的第二访问请求,进而所述第二网络设备3将所述第二访问请求发送到对应的目标应用,并且由所述第二网络设备3的第二十一装置获取所述目标应用基于所述第二访问请求返回的第二访问响应信息,进而通过所述第二十二装置将所述第二访问响应信息提供至所述用户设备1。即所述第二网络设备3基于获取的备份应用会话信息,替代了失效的第一网络设备2完成了相应工作。
在此,所述与第一网络设备2具有相同网络功能的第二网络设备3,基于所述用户设备1中备份的应用会话信息,能够及时地接管失效的第一网络设备2的相关工作,由于所述所述备份的应用会话信息直接保存在所述访问请求发起的用户设备1中,会话恢复的效率更快。
图4示出根据本申请另一个方面的一种在用户设备端和第一网络设备端进行会话备份的方法流程图。
其中,所述一种在用户设备端和第一网络设备端进行会话备份的方法包括步骤S41、步骤S42、步骤S44、步骤S46、步骤S43和步骤S45。
具体地,在步骤S41中,所述用户设备1向所述第一网络设备2发送用户设备关于目标应用的第一访问请求;在步骤S42中,所述第一网络设备2生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;在步骤S44中,所述第一网络设备2根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;在步骤S46中,所述第一网络设备2将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息;在步骤S43中,所述用户设备1从所述第一访问响应信息中抽取所述应用会话信息;在步骤S45中,所述用户设备1存储所述应用会话信息。
具体地,在步骤S41中,所述用户设备1向第一网络设备2发送用户设备关于目标应用的第一访问请求。相应的,所述第一网络设备2会接收所述用户设备1发出的该第一访问请求。在此,所述第一访问请求包括但不限于所述用户设备1向所述目标应用发出的建立网络通信连接的请求,例如,用户设备1向目标应用对应服务器建立网络通信连接的请求,如建立TCP(传输控制协议)连接的请求等;或是,所述用户设备1向所述目标应用发出的直接进行数据传输的请求,例如,UDP(用户数据报协议)数据传输的访问请求等。所述第一网络设备2包括具有一定网络功能的设备,所述网络功能包括但不限于NAT(网络地址转换)功能、VPN(虚拟专用网络)功能等。在本申请中,优选地,所述第一网络设备2是所述用户设备1的网关设备,进一步,所述第一网络设备2有一个地址信息,如IP地址信息,可被所述用户设备1辨识。在此,优选地,以所述第一网络设备2为实现NAT网络功能的网关设备,且所述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求为例,假设所述用户设备1处于一定的局域网中,并对应一个私有地址1.1.1.1:2345,同时,存在一个该局域网外的目标应用A,所述目标应用A可能存在于其他局域网中,或是直接存在于广域网中,且该目标应用A对应一个公有地址3.3.3.3:80,当所述用户设备1,可以具体到用户设备1的某个进程,希望访问该局域网外的目标应用A时,用户设备1会向所述目标应用发起TCP连接请求,如用户设备1发送一个SYN(同步序列号)报文,此第一访问请求会先到达与所述用户设备1所在局域网对应的网关设备,如所述具有NAT网络功能的第一网络设备2中。
接着,在步骤S42中,所述第一网络设备2生成关于所述用户设备1经由所述第一网络设备2与所述目标应用的会话的应用会话信息。
具体地,以所述第一网络设备2为实现NAT网络功能的网关设备,且所述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求为例,假设用户设备1处于一定的局域网中,并对应一个私有地址1.1.1.1:2345,同时,存在一个该局域网外的目标应用B,所述目标应用B可能存在于其他局域网中,或是直接存在于广域网中,且该目标应用B对应一个公有地址8.8.8.8:80。在此,所述第一网络设备2接收到的所述用户设备1向所述目标应用B发出的所述第一访问请求,如建立TCP连接的SYN报文,基于NAT网络功能,所述第一网络设备2对所述建立TCP连接的报文对应的源地址即1.1.1.1:2345,进行网络地址转换,配置一个可以在广域网上使用的公有地址7.7.7.7:80,再将所述第一访问请求以该公有地址7.7.7.7:80为源地址,去连接所述目标应用B对应的公有地址8.8.8.8:80。在此,基于对应的NAT功能,所述第一网络设备2生成了相应的应用会话信息,例如:
{Orig:1.1.1.1:2345->8.8.8.8:80
Nat:7.7.7.7:80->8.8.8.8:80}
进而,将所述应用会话信息存储在所述第一网络设备2中。
在本申请中,待备份的所述应用会话信息包括用户设备1通过第一网络设备2完成与所述目标应用通信的会话信息,当所述第一网络设备对应于实现所述NAT功能时,所述应用会话信息即为NAT会话信息,类似的,当所述第一网络设备对应于实现其他网络功能,如VPN功能时,所述应用会话信息即为其他网络功能对应的会话信息,例如,所述用户设备1与第一网络设备2基于SSL(安全套接层协议层)协商,实现VPN功能时,所述应用会话信息就可以包括相关密钥信息等。
在此,在实际应用中,所述第二网络设备2可以包括多个具有相同网络功能的网络设备组成的集群设备;或是所述第二网络设备2可能与多个与其具有相同网络功能的其他网络设备,共同组成对应的集群设备。
在此,本领域技术人员应能理解上述所述第一网络设备2为实现NAT网络功能的网关设备仅为举例,其他现有的或今后可能出现的其他第一网络设备2如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
在此,本领域技术人员应能理解上述第一访问请求为用户设备1向目标应用对应的服务器发出建立TCP连接的请求仅为举例,其他现有的或今后可能出现的其他内容的第一访问请求如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
接着,在步骤S44中,所述第一网络设备2根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息。
具体地,基于所述第一网络设备2对应的所述NAT变换,生成了所述应用会话信息;同样,基于所述NAT变换确定的新的源地址,所述第一网络设备2将从所述用户设备1处获得的第一访问请求进一步发送到对应的目标应用。接着,所述目标应用对所述第一访问请求进行回复,即做出第一访问响应信息,例如,当所述第一访问请求是建立TCP连接的请求时,所述目标应用A会向所述用户设备1发送一个SYN+ACK报文,表示同意用户设备1发送的连接请求。在此,由于从所述第一网络设备2发出的第一访问请求变换后的新的源地址实际对应的是所述第二网络设备2,所以基于变换后的新的源地址,所述第一访问响应信息将会首先由所述第一网络设备2获取。
接着,在步骤S46中,所述第一网络设备2将所述第一访问响应信息发送至所述用户设备1,其中,所述第一访问响应信息包含所述应用会话信息。具体地,当所述第一网络设备2获得所述第一访问响应信息后,会在相应的存储记录中,寻找之前已经存储的、并与该第一访问响应信息对应的应用会话信息。并将所述应用会话信息添加到所述第一访问响应信息中,例如,当所述第一访问响应信息对应所述TCP报文,如SYN+ACK报文时,将所述应用会话信息放入到TCP选项中。进而,将添加了待备份的所述应用会话信息的第一访问响应信息发送至所述用户设备1。在此,所述第一访问响应信息,如所述TCP报文,其TCP选项字段可以自定义,进而可以基于所述第一网络设备2实现的不同网络功能,设置不同的TCP选项。
接着,在步骤S43中,所述用户设备1从所述第一访问响应信息中抽取所述应用会话信息。具体地,在所述第一网络设备2中,所述应用会话信息会基于一定的格式放入到第一访问响应信息,如所述TCP报文中。所述应用会话信息是所述第一网络设备2发挥相应网络功能的信息记录,也是本申请中需要备份保存的数据信息,当所述用户设备1接收了所述第一访问响应信息后,将会从所述第一访问响应信息,如具体的TCP报文信息中解析出对应的应用会话信息。在此,所述用户设备1可以具体地解析出应用会话信息本身的具体信息内容,也可以仅仅将一个所述应用会话信息整体抽取出来,并不做具体内容的解析。
接着,在步骤S45中,所述用户设备1存储所述应用会话信息。具体地,将所述解析出的应用会话信息存储在所述用户设备1相应的存储装置、或是对应的数据库中,甚至是与所述用户设备1对应的外部存储设备中。例如,可以在所述用户设备1中设置一个linux的内核模块用来存储需备份的应用会话信息。在此,具体地,利用linux的netfilter(数据报筛选系统)机制,截取所有数据报文,安装和网关之间的格式,解析出第一网络设备2,即网关设备中产生的会话信息;以TCP为例,在SYN+ACK报文中解析TCP选项,发现自定义选项后,继续解析选项内容,按照预定义格式解析出会话内容,并保存在本地会话表中。
在本申请中,所述用户设备1向所述第一网络设备2发送关于目标应用的第一访问请求,通过接收所述第一网络设备返回的的对应的第一访问响应信息,并抽取包含在所述第一访问响应信息中的应用会话信息,进而将待备份的应用会话信息存储在对应的所述用户设备1中,在此,所述会话信息的存储不需要借助专门的备份设备,例如所述第一网络设备所属集群未含用于存储会话备份信息的模块,而是直接存储在访问请求对应的用户设备中,从而简化了备份设备的部署,降低了成本,并且,对于会话信息的备份,由于不存在多个备份设备,也避免了主备专用线路设置的开销,并且,在网络设备集群环境下,可以实现会话信息全分布式存储,并能够很好的解决由于信息备份带来的集群扩容受限的问题。而且,所述第一网络设备基于接收的所述用户设备的第一访问请求生成所述应用会话信息,并将所述应用会话信息添加在获得的所述第一访问响应信息中发送给所述用户设备,从而配合着所述用户设备,共同完成了所述应用会话信息的备份。
优选地,所述在用户设备端和第一网络设备端进行会话备份的方法还包括步骤S47(与图5中步骤S57的内容对应相同或基本相同),在步骤S47中,所述用户设备1基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息。
具体地,以所述用户设备1与所述目标应用之间建立TCP连接为例,当所述用户设备1接收了包含所述应用会话信息的第一访问响应信息后,将会向所述第一网络设备2发送一个ACK报文,表示同意与所述目标应用对应的服务器建立通信连接。进而,基于建立好的连接,所述用户设备1与所述目标应用可以进行实际数据传输,而所述第一网络设备2对应的网络功能将在所述数据传输中完成,若是后续所述实际数据传输出现故障,优选地,将会启用在所述用户设备1备份的应用会话信息寻找新的相应的网络设备来替代所述第一网络设备2。
优选地,所述在用户设备端和第一网络设备端进行会话备份的方法还包括步骤S48(未示出),在步骤S48中,基于预设的格式信息,所述第一网络设备2将所述应用会话信息添加至所述第一访问响应信息。具体地,以所述第一访问响应信息对应所述TCP报文,如SYN+ACK报文为例,所述应用会话信息将被添加到TCP报文的选项中,选项中的具体字段,以及各个字段对应的字节位数等格式信息可以预设,并可以基于需要予以变化,例如,可以由所述用户设备1与所述第一网络设备2、或是其他相关的网络设备共同协商指定。在此,进一步,可以基于所述第一网络设备2对应的不同网络功能,设置不同的TCP选项,例如,在NAT场景下,当所述应用会话信息为:
{Orig:1.1.1.1:2345->8.8.8.8:80
Nat:7.7.7.7:80->8.8.8.8:80}
在此,可以约定所述TCP选项的类型、字节长度、NAT的IP信息、NAT的端口信息等,例如,所述TCP选项包含NAT的IP信息,即所述变换后的新的源地址:7.7.7.7,且对应以4字节记录,并约定所述TCP选项包含NAT的端口信息,即所述端口80,且对应以两字节记录。
在此,本申请中,可以基于TCP选项对应的格式信息的灵活设置,使得各种功能的网络设备发挥作用的信息都能够以所述应用会话信息的形式保存在所述第一访问响应信息中,并由所述用户设备1获取并存储。
优选地,所述在用户设备端和第一网络设备端进行会话备份的方法还包括步骤S49(未示出),在步骤S49中,基于所述应用会话信息,所述第一网络设备2对所述第一访问响应信息进行转换处理;其中,所述步骤S46包括所述第一网络设备2将转换后的所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
具体地,以所述第二网络设备2对应于网络功能NAT为例,若所述用户设备1经由所述第一网络设备2与所述目标应用C的会话的应用会话信息是:
{Orig:1.1.1.1:2345->10.10.10.10:80
Nat:9.9.9.9:80->10.10.10.10:80}
其中,所述目标应用C的设备所接收到的第一访问请求,其源地址信息实际上是在所述第一网络设备2经过NAT变换的新地址9.9.9.9:80,所以,所述目标应用C只能基于该地址,将所述第一访问响应信息送达至第一网络设备2,进而,基于寻找到的相应的应用会话信息,可知,所述NAT变换的新地址9.9.9.9:80与局域网中所述实际地址信息为1.1.1.1:2345的用户设备1对应,进而对所述第一访问响应信息进行9.9.9.9:80->1.1.1.1:2345的转换处理。进而,在步骤S46中,所述第一网路设备2基于所述转换处理的结果,确定对应的用户设备1,从而将包含了所述应用会话的第一访问响应信息发送至所述用户设备1。
图5示出根据本申请一个优选实施例的一种在用户设备端和第一网络设备端进行会话备份的方法流程图。
其中,所述一个优选实施例的一种在用户设备端和第一网络设备端进行会话备份的方法包括步骤S51、步骤S52、步骤S54、步骤S56、步骤S53、步骤S55、步骤S57、步骤S59和步骤S58。
具体地,在步骤S51中,所述用户设备1向第一网络设备2发送用户设备1关于目标应用的第一访问请求;在步骤S52中,所述第一网络设备2生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;在步骤S54中,所述第一网络设备2根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;在步骤S56中,所述第一网络设备2将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息;在步骤S53中,所述用户设备1从所述第一访问响应信息中抽取所述应用会话信息;在步骤S55中,所述用户设备1存储所述应用会话信息;在步骤S57中,所述用户设备1基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息;在步骤S59中,所述用户设备1向所述第一网络设备发送通信检测请求信息;在步骤S58中,所述第一网络设备2向所述用户设备1发送响应的检测响应信息。
在此,所述步骤S51、步骤S52、步骤S54、步骤S56、步骤S53和步骤S55与图4中所述步骤S41、步骤S42、步骤S44、步骤S46、步骤S43和步骤S45的内容对应相同或基本相同。为简明起见,故在此不再赘述,并以引用的方式包含于此。
具体地,在步骤S57中,所述用户设备1基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息。进一步,优选地,当所述用户设备1与所述目标应用建立了正常的网络通信连接,或是进行正常的数据访问或传输后,基于所述应用会话信息,所述第一网络设备一般会发挥正常的网络功能。但是在实际应用中,所述第一网络设备2可能会出现故障,从而无法正常工作。为了提前应对可能出现的设备障碍,本申请中,可以优选地,对所述第二网络设备2进行检测。例如,所述用户设备1和所述第一网络设备2之间可以基于周期性、或是其他可能的触发条件,进行心跳探测,从而检测所述第二网络设备2是否时效。在此,在步骤S59中,所述用户设备1向所述第一网络设备2发送通信检测请求信息。例如,发送所述心跳探测报文,若是所述第一网络设备2运行正常,则所述第一网络设备2接收所述用户设备1发送的通信检测请求信息,并且在步骤S58中,所述第一网络设备2向所述用户设备1发送响应的检测响应信息,当所述用户设备1接收到所述第一网络设备2发送的相应的检测响应信息时,则判断所述第一网络设备2正常运行。此外,若是所述第一网络设备2失效,则无法接收到来自所述用户设备1的心跳探测报文,从而不会向所述用户设备1发送响应的探测响应信息。
在此,本领域技术人员应能理解上述心跳探测仅为举例,其他现有的或今后可能出现的其他通信检测方式如可适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
图6示出根据本申请另一个优选实施例的一种在用户设备端和第二网络设备端进行会话备份的方法流程图。
其中,所述另一个优选实施例的一种在用户设备端和第二网络设备端进行会话备份的方法包括步骤S601、步骤S603、步骤S605、步骤S607、步骤S609、步骤S611、步骤S613、步骤S615和步骤S602。
其中,在步骤S601中,所述用户设备1向第一网络设备2发送用户设备关于目标应用的第一访问请求;在步骤S603中,所述用户设备1接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;在步骤S605中,所述用户设备1从所述第一访问响应信息中抽取所述应用会话信息;在步骤S607中,所述用户设备1存储所述应用会话信息;在步骤S609中,所述用户设备1基于所述第一访问响应信息,向所述第一网络设备2发送对应的应答信息;在步骤S611中,所述用户设备1向所述第一网络设备2发送通信检测请求信息;在步骤S613中,所述第一网络设备2向所述用户设备1发送响应的检测响应信息;在步骤S615中,若未接收到所述检测响应信息,所述用户设备1向与所述第一网络设备同一集群的第二网络设备发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息;在步骤S602中,根据所述应用会话信息经由所述第二网络设备3恢复所述用户设备1与所述目标应用的会话。
在此,所述步骤S601、步骤S605、步骤S607、步骤S609、步骤S611与图5中所述步骤S51、步骤S53、步骤S55、步骤S57、步骤S59的内容分别对应相同或基本相同。为简明起见,故在此不再赘述,并以引用的方式包含于此。
具体地,在步骤S603中,所述用户设备1接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息。此步骤S603可以与图5中所述步骤S56相对应,所述第一访问响应信息由所述第一网络设备2发出,由所述用户设备1接收。在步骤S613中,所述第一网络设备2向所述用户设备1发送响应的检测响应信息。此步骤S613可以与图5中所述步骤S58相对应,所述检测响应信息由所述第一网络设备2发出,由所述用户设备1接收。
接着,若是所述用户设备1向所述第一网络设备2发送了通信检测请求信息,例如发送了所述心跳探测报文,在此,所述心跳探测报文可以是利用普通UDP封装的报文格式,若所述第一网络设备2并没有回复相应的检测响应信息,则可以判断所述第一网络设备2失效。在此,对于所述第一网络设备2失效的判断可以基于实际情况具体设定一定的条件,例如,设置在用户设备1发出所述心跳探测报文后T1时间内,没有收到所述第一网络设备2的相应的检测响应信息,则判断所述第一网络设备2失效;又如,设置当用户设备1发出所述心跳探测报文后T2时间内,若是没有收到所述第一网络设备2的相应的检测响应信息,则再次发送一个心跳探测报文,依次类推,约定当第N次发送后T2时间内若是仍没有收到所述第一网络设备2的相应的检测响应信息,则判断所述第一网络设备2失效。若是所述第一网络设备2失效,为了保证原有的数据通信或是数据访问不被终端,将会寻找所述第一网络设备2的替代设备,即所述第二网络设备3,在此,所述第二网络设备3是与所述第一网络设备2在同一集群中,具有相同网络功能的设备。所述第二网络设备3的选择可以是随机的,也可以是基于一定的集群负载平衡分析做出的优选。在此,在步骤S615中,若未接收到所述检测响应信息,所述用户设备1向与所述第一网络设备同一集群的第二网络设备发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息。在此,优选地,基于所述用户设备1与所述第二网络设备3之间自定义的会话恢复请求,所述应用会话信息将在所述第二网络设备3强制重建,即所述应用会话信息中包含的原本所述第一网络设备1的设备端口信息等都不改变,在此,所述自定义的会话恢复请求可以是自定义的UDP报文形式。从而,所述第二网络设备3接收用户设备1发送的会话恢复请求;并且所述用户设备1与所述目标应用之间的会话经由所述第二网络设备3重新建立,例如,在步骤S602中,所述第二网络设备3将基于所述获取的应用会话信息,重新替代所述第一网络设备2进行与目标应用的数据通信或数据访问,并将目标应用的响应结果转送到所述用户设备1,进而,所述用户设备1根据所述应用会话信息经由所述第二网络设备3恢复所述用户设备1与所述目标应用的会话。
在此,当所述第一网络设备2经检测出现故障时,所述第二网络设备3基于所述用户设备发送的恢复请求及对应的备份的应用会话信息,及时替代所述第一网络设备完成相应的数据访问,保证了数据访问正常进行而不受第一网络设备故障影响。
优选地,另一个优选实施例的一种在用户设备端和第二网络设备端进行会话备份的方法还包括步骤S604(未示出)、S606(未示出)和S608(未示出)。其中,在步骤S604中,所述第二网络设备3接收所述用户设备1关于所述目标应用的第二访问请求;在步骤S606中,所述第二网络设备3获取所述目标应用基于所述第二访问请求返回的第二访问响应信息;在步骤S608中,所述第二网络设备3将所述第二访问响应信息提供至所述用户设备1。
具体地,当所述应用会话信息将在所述第二网络设备3强制重建后,所述用户设备1再次向所述目标应用发出第二访问请求,基于所述应用会话信息,所述第二网络设备3接收所述用户设备1关于所述目标应用的第二访问请求,进而所述第二网络设备3将所述第二访问请求发送到对应的目标应用,并且由所述第二网络设备3获取所述目标应用基于所述第二访问请求返回的第二访问响应信息,进而将所述第二访问响应信息提供至所述用户设备1。即所述第二网络设备3基于获取的备份应用会话信息,替代了失效的第一网络设备2完成了相应工作。
在此,所述与第一网络设备2具有相同网络功能的第二网络设备3,基于所述用户设备1中备份的应用会话信息,能够及时地接管失效的第一网络设备2的相关工作,由于所述备份的应用会话信息直接保存在所述访问请求发起的用户设备1中,会话恢复的效率更快。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (22)
1.一种在用户设备端进行会话备份的方法,其中,所述方法包括:
向第一网络设备发送用户设备关于目标应用的第一访问请求;
接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
从所述第一访问响应信息中抽取所述应用会话信息;
存储所述应用会话信息。
2.根据权利要求1所述的方法,其中,所述方法还包括:
基于所述第一访问响应信息,向所述第一网络设备发送对应的应答信息。
3.根据权利要求2所述的方法,其中,所述方法还包括:
向所述第一网络设备发送通信检测请求信息;
接收所述第一网络设备发送的相应的检测响应信息。
4.根据权利要求3所述的方法,其中,所述方法还包括:
若未接收到所述检测响应信息,向与所述第一网络设备同一集群的第二网络设备发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息;
根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
5.一种在第一网络设备端进行会话备份的方法,其中,所述方法包括:
接收用户设备发出的关于目标应用的第一访问请求;
生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;
将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
6.根据权利要求5所述的方法,其中,所述方法还包括:
基于预设的格式信息,将所述应用会话信息添加至所述第一访问响应信息。
7.根据权利要求5或6所述的方法,其中,所述方法还包括:
基于所述应用会话信息,对所述第一访问响应信息进行转换处理;
其中,所述将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息包括:
将转换后的所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
8.根据权利要求5至7中任一项所述的方法,其中,所述方法还包括:
接收所述用户设备发送的通信检测请求信息;
向所述用户设备发送响应的检测响应信息。
9.一种在第二网络设备端进行会话备份的方法,其中,所述方法包括:
接收用户设备发送的会话恢复请求,其中,所述会话恢复请求包括关于所述用户设备经由第一网络设备与目标应用的会话的应用会话信息,所述第一网络设备与所述第二网络设备属于同一集群;
根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
10.根据权利要求9所述的方法,其中,所述方法还包括:
接收所述用户设备关于所述目标应用的第二访问请求;
获取所述目标应用基于所述第二访问请求返回的第二访问响应信息;
将所述第二访问响应信息提供至所述用户设备。
11.一种进行会话备份的用户设备,其中,所述用户设备包括:
第一装置,用于向第一网络设备发送用户设备关于目标应用的第一访问请求;
第二装置,用于接收所述第一网络设备基于所述第一访问请求返回的第一访问响应信息,其中,所述第一访问响应信息包含关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
第三装置,用于从所述第一访问响应信息中抽取所述应用会话信息;
第四装置,用于存储所述应用会话信息。
12.根据权利要求11所述的用户设备,其中,所述用户设备还包括:
第五装置,用于基于所述第一访问响应信息,向所述第一网络设备发送对应的应答信息。
13.根据权利要求12所述的用户设备,其中,所述用户设备还包括:
第六装置,用于向所述第一网络设备发送通信检测请求信息;
第七装置,用于接收所述第一网络设备发送的相应的检测响应信息。
14.根据权利要求13所述的用户设备,其中,所述用户设备还包括:
第八装置,用于若未接收到所述检测响应信息,向与所述第一网络设备同一集群的第二网络设备发送会话恢复请求,其中,所述会话恢复请求包括所述应用会话信息;
第九装置,用于根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
15.一种进行会话备份的第一网络设备,其中,所述第一网络设备包括:
第十装置,用于接收用户设备发出的关于目标应用的第一访问请求;
第十一装置,用于生成关于所述用户设备经由所述第一网络设备与所述目标应用的会话的应用会话信息;
第十二装置,用于根据所述应用会话信息获取所述目标应用基于所述第一访问请求返回的第一访问响应信息;
第十三装置,用于将所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
16.根据权利要求15所述的第一网络设备,其中,所述第一网络设备还包括:
第十四装置,用于基于预设的格式信息,将所述应用会话信息添加至所述第一访问响应信息。
17.根据权利要求15或16所述的第一网络设备,其中,所述第一网络设备还包括:
第十五装置,用于基于所述应用会话信息,对所述第一访问响应信息进行转换处理;
其中,所述第十三装置用于:
将转换后的所述第一访问响应信息发送至所述用户设备,其中,所述第一访问响应信息包含所述应用会话信息。
18.根据权利要求15至17中任一项所述的第一网络设备,其中,所述第一网络设备还包括:
第十六装置,用于接收所述用户设备发送的通信检测请求信息;
第十七装置,用于向所述用户设备发送响应的检测响应信息。
19.一种进行会话备份的第二网络设备,其中,所述第二网络设备包括:
第十八装置,用于接收用户设备发送的会话恢复请求,其中,所述会话恢复请求包括关于所述用户设备经由第一网络设备与目标应用的会话的应用会话信息,所述第一网络设备与所述第二网络设备属于同一集群;
第十九装置,用于根据所述应用会话信息经由所述第二网络设备恢复所述用户设备与所述目标应用的会话。
20.根据权利要求19所述的第二网络设备,其中,所述第二网络设备还包括:
第二十装置,用于接收所述用户设备关于所述目标应用的第二访问请求;
第二十一装置,用于获取所述目标应用基于所述第二访问请求返回的第二访问响应信息;
第二十二装置,用于将所述第二访问响应信息提供至所述用户设备。
21.一种进行会话备份的第三网络设备,包括如权利要求15至18中任一项所述的第一网络设备,以及如权利要求19或20所述的第二网络设备。
22.一种进行会话备份的系统,包括如权利要求11至14中任一项所述的用户设备、如权利要求15至18中任一项所述的第一网络设备,以及如权利要求19或20所述的第二网络设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510228348.0A CN106209407B (zh) | 2015-05-07 | 2015-05-07 | 进行会话备份的方法与设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510228348.0A CN106209407B (zh) | 2015-05-07 | 2015-05-07 | 进行会话备份的方法与设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106209407A true CN106209407A (zh) | 2016-12-07 |
CN106209407B CN106209407B (zh) | 2020-03-10 |
Family
ID=57459673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510228348.0A Active CN106209407B (zh) | 2015-05-07 | 2015-05-07 | 进行会话备份的方法与设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106209407B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111480317A (zh) * | 2017-12-15 | 2020-07-31 | 诺基亚技术有限公司 | 核心网络中的无状态网络功能支持 |
CN113726874A (zh) * | 2021-08-27 | 2021-11-30 | 杭州迪普科技股份有限公司 | 一种会话表的备份方法、主机设备及双机热备系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201682522U (zh) * | 2010-02-08 | 2010-12-22 | 阿里巴巴集团控股有限公司 | 会话信息存储系统及应用服务器 |
CN102255747A (zh) * | 2011-06-09 | 2011-11-23 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN103067491A (zh) * | 2012-12-26 | 2013-04-24 | 飞天诚信科技股份有限公司 | 一种实现文件共享的方法及装置 |
US20140258715A1 (en) * | 2013-03-11 | 2014-09-11 | International Business Machines Corporation | Session Attribute Propagation through Secure Database Server Tiers |
-
2015
- 2015-05-07 CN CN201510228348.0A patent/CN106209407B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201682522U (zh) * | 2010-02-08 | 2010-12-22 | 阿里巴巴集团控股有限公司 | 会话信息存储系统及应用服务器 |
CN102255747A (zh) * | 2011-06-09 | 2011-11-23 | 中国电信股份有限公司 | 呼叫业务处理方法与系统 |
CN103067491A (zh) * | 2012-12-26 | 2013-04-24 | 飞天诚信科技股份有限公司 | 一种实现文件共享的方法及装置 |
US20140258715A1 (en) * | 2013-03-11 | 2014-09-11 | International Business Machines Corporation | Session Attribute Propagation through Secure Database Server Tiers |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111480317A (zh) * | 2017-12-15 | 2020-07-31 | 诺基亚技术有限公司 | 核心网络中的无状态网络功能支持 |
CN113726874A (zh) * | 2021-08-27 | 2021-11-30 | 杭州迪普科技股份有限公司 | 一种会话表的备份方法、主机设备及双机热备系统 |
CN113726874B (zh) * | 2021-08-27 | 2023-10-27 | 杭州迪普科技股份有限公司 | 一种会话表的备份方法、主机设备及双机热备系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106209407B (zh) | 2020-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1586065B (zh) | 利用网络地址转换的对等网络通信方法、设备及系统 | |
CN105939239B (zh) | 虚拟网卡的数据传输方法及装置 | |
CN110012125A (zh) | 集群网络通信方法、装置、存储介质和设备 | |
CN106856434A (zh) | 访问请求转换的方法和装置 | |
CN105430059A (zh) | 智能客户端路由 | |
CN106464564A (zh) | 网络分组封装和路由 | |
CN111314450B (zh) | 数据的传输方法、装置、电子设备和计算机存储介质 | |
CN102831163A (zh) | 数据传送方法及数据传送系统 | |
TW201223203A (en) | Data center network system and packet forwarding method thereof | |
CN103516587B (zh) | 即时通信客户端断线重连的方法和装置 | |
US20090028144A1 (en) | Dedicated network interface | |
CN106572197A (zh) | 一种网络地址转换方法、装置及系统 | |
CN105634832B (zh) | 一种服务器的备份方法和装置 | |
CN103944906A (zh) | 一种iOS上针对APP的HTTP流量引导的方法 | |
CN111064804B (zh) | 网络访问方法和装置 | |
CN108156274A (zh) | 一种vpn网络中使设备获得域名解析结果的方法及装置 | |
CN102143018B (zh) | 消息循环的检测方法、路由代理设备及组网系统 | |
CN110225045A (zh) | 全链路数据鉴权方法、装置、设备及存储介质 | |
CN111131357A (zh) | 投屏处理方法、装置和设备 | |
CN111245918A (zh) | 一种服务请求的传输方法和装置 | |
CN112738095A (zh) | 一种检测非法外联的方法、装置、系统、存储介质及设备 | |
CN104935681B (zh) | Sip注册服务器地址的获得方法、设备及系统 | |
CN106209407A (zh) | 进行会话备份的方法与设备 | |
CN101702712B (zh) | 一种探测技术与语音呼叫备份联动方法及装置 | |
CN103812957B (zh) | 地址解析协议arp记录管理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1230816 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |