本公开涉及网络技术领域,尤其涉及一种传输链路的续传方法、装置和系统。
背景技术:
ADN(英文:Application Delivery Networking,中文:应用交付网络)是传统的网络负载均衡的升级、扩展,它是一种综合的交付平台设备,其综合了负载平衡、TCP(英文:Transmission Control Protocol,中文:传输控制协议)优化管理、链接管理、SSL(英文:Secure Sockets Layer,中文:安全套接层)、VPN(英文:Virtual Private Network,中文:虚拟专用网络)、压缩优化、智能网络地址转换、高级路由、智能端口镜像等各种技术手段的综合平台。
关于ADN的理解,其实可以按照“应用交付网络”的字面意思理解成是将企业的关键应用交付到网络上,也就是通过综合多种4~7层上的“应用交换”技术将关键应用与基础设施关联起来。这相当于是对传统优化手段的升级,即从简单的偏重于负载均衡单一方案,到如今全面的、从边缘到核心的一些列优化解决方案。ADN利用相应的网络优化和/或加速设备,可以确保用户的业务应用能够快速、安全、可靠地交付给内部员工和外部服务群。目前企业越来越依赖的先进的ADN网络解决方案,可以通过在可扩充的ADN平台上提供可调整的安全性、高可用性和优化性,来确保在当今日新月异的业务环境中保持充分的IT灵活性。
目前,现有ADN网络中,从客户端到源站服务器(或者从源站服务器到客户端)可能经过N跳(即客户端与源站服务器之间可能存在N个服务器),因此在上述的传输链路中的任意一段连接在传输过程中由于连接超时等原因异常断开时,都会导致其他连接级联断开连接。此时,从客户端或者源站的角度看,本次连接就异常断开,如果是在线游戏,表现为游戏掉线,如果是视频会议,表现为视频掉线,均需要重新连接。
目前的ADN网络通常是基于中心化控制,即可以理解为整个ADN网络中的各个节点(服务器)是由ADN网络的控制中心来进行控制的,当ADN网络的传输链接出现故障时通常是由发生故障的相关节点上报给控制中心来进行处理,因此传输链接中的单个节点的处理能力没有被充分利用,造成资源浪费。
技术实现要素:
本公开的为了解决上述的技术问题,提供一种传输链路的续传方法、装置和系统。
为了实现上述目的,根据本公开实施例的第一方面,本公开提供一种传输链路的续传方法,所述方法包括:
当传输链路中的第一服务器与第三服务器的连接断开时,所述第一服务器接收所述第二服务器发送的断点续传请求,所述断点续传请求中包含所述第二服务器的传输缓存的状态信息和所述第二服务器的入端口,所述第三服务器为所述第一服务器与所述第二服务器之间的服务器;
当所述第一服务器根据所述第一服务器的传输缓存的状态信息以及所述第二服务器的传输缓存的状态信息确定满足续传条件时,所述第一服务器向所述第二服务器发送断点续传响应,所述断点续传响应包含所述第一服务器的传输缓存的状态信息和所述第一服务器的出端口;
当所述第二服务器根据所述第二服务器的传输缓存的状态信息以及所述第一服务器的传输缓存的状态信息确定满足续传条件时,所述第二服务器向所述第一服务器发送可进行续传的响应消息;
响应于所述可进行续传的响应消息,所述第一服务器向所述第二服务器建立从所述第一服务器的出端口到所述第二服务器的入端口的补偿连接;
所述第一服务器与所述第二服务器通过所述补偿连接进行续传。
可选的,所述方法还包括:当所述第三服务器与所述第二服务器连接断开时,所述第二服务器接收所述第一服务器发送的断点续传请求,所述断点续传请求中包含所述第一服务器的传输缓存的状态信息和所述第一服务器的出端口;
当所述第二服务器根据所述第二服务器的传输缓存的状态信息以及所述第一服务器的传输缓存的状态信息确定满足续传条件时,所述第二服务器向所述第一服务器发送断点续传响应,所述断点续传响应包含所述第二服务器的传输缓存的状态信息和所述第二服务器的入端口;
当所述第一服务器根据所述第一服务器的传输缓存的状态信息以及所述第二服务器的传输缓存的状态信息确定满足续传条件时,所述第一服务器向所述第二服务器发送可进行续传的响应消息;
所述第一服务器向所述第二服务器建立从所述第一服务器的出端口到所述第二服务器的入端口的补偿连接;
所述第一服务器与所述第二服务器通过所述补偿连接进行续传。
根据本公开实施例的第二方面,本公开提供一种传输链路的续传系统,所述系统包括:第一服务器、第二服务器以及所述第一服务器与所述第二服务器之间的第三服务器,所述第一服务器、所述第二服务器以及所述第三服务器为传输链路中的任意三个连续的服务器;
当所述第一服务器与所述第三服务器的连接断开时,所述第一服务器接收所述第二服务器发送的断点续传请求,所述断点续传请求中包含所述第二服务器的传输缓存的状态信息和所述第二服务器的入端口;
当所述第一服务器根据所述第一服务器的传输缓存的状态信息以及所述第二服务器的传输缓存的状态信息确定满足续传条件时,所述第一服务器向所述第二服务器发送断点续传响应,所述断点续传响应包含所述第一服务器的传输缓存的状态信息和所述第一服务器的出端口;
当所述第二服务器根据所述第二服务器的传输缓存的状态信息以及所述第一服务器的传输缓存的状态信息确定满足续传条件时,所述第二服务器向所述第一服务器发送可进行续传的响应消息;
所述第一服务器响应于所述可进行续传的响应消息,向所述第二服务器建立从所述第一服务器的出端口到所述第二服务器的入端口的补偿连接;
所述第一服务器与所述第二服务器通过所述补偿连接进行续传。
可选的,还包括:当所述第三服务器与所述第二服务器连接断开时,所述第二服务器接收所述第一服务器发送的断点续传请求,所述断点续传请求中包含所述第一服务器的传输缓存的状态信息和所述第一服务器的出端口;
当所述第二服务器根据所述第二服务器的传输缓存的状态信息以及所述第一服务器的传输缓存的状态信息确定满足续传条件时,所述第二服务器向所述第一服务器发送断点续传响应,所述断点续传响应包含所述第二服务器的传输缓存的状态信息和所述第二服务器的入端口;
当所述第一服务器根据所述第一服务器的传输缓存的状态信息以及所述第二服务器的传输缓存的状态信息确定满足续传条件时,所述第一服务器向所述第二服务器发送可进行续传的响应消息;
所述第一服务器向所述第二服务器建立从所述第一服务器的出端口到所述第二服务器的入端口的补偿连接;
所述第一服务器与所述第二服务器通过所述补偿连接进行续传。
根据本公开实施例的第三方面,本公开提供一种传输链路的续传装置,应用于第一服务器,所述装置包括:
接收模块,用于当传输链路中的所述第一服务器与第三服务器的连接断开时,接收第二服务器发送的断点续传请求,所述断点续传请求中包含所述第二服务器的传输缓存的状态信息和所述第二服务器的端口信息;
发送模块,用于当根据所述第一服务器的传输缓存的状态信息以及所述第二服务器的传输缓存的状态信息确定满足续传条件时,向所述第二服务器发送断点续传响应,所述断点续传响应包含所述第一服务器的传输缓存的状态信息和所述第一服务器的端口信息;
所述接收模块,还用于从所述第二服务器接收可进行续传的响应消息,所述响应消息是在所述第二服务器根据所述第二服务器的传输缓存的状态信息以及所述第一服务器的传输缓存的状态信息确定满足续传条件时发送的;
连接建立模块,用于建立所述第一服务器与所述第二服务器之间的补偿连接;
续传模块,用于与所述第二服务器通过所述补偿连接进行续传。
综上所述,本公开提供的传输链路的续传方法中,当连续的三个服务器中的位于中间的服务器与两边任意一个服务器的连接断开时,可以由两边的服务器中连接断开的一方向另一方请求续传,当两边的服务器互相确定满足两者之间的续传条件时,由这两个服务器建立补偿连接,并通过该补偿连接进行续传。本公开能够解决专用网络中,只能通过控制中心完成断点续传带来的单个节点的处理能力没有被充分利用的问题,通过专用网络中的节点就可以实现对传输链路中的异常连接进行补偿以及续传,从而能够利用每个节点被闲置的处理能力,因此能够提高处理资源的利用率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种传输链路的续传方法的流程图;
图2是根据一示例性实施例示出的另一种传输链路的续传方法的流程图;
图3是根据另一示例性实施例示出的一种传输链路的续传方法的流程图;
图4是根据一示例性实施例示出的另一种传输链路的续传方法的流程图;
图5是根据另一示例性实施例示出的一种传输链路的续传方法的流程图;
图6是根据一示例性实施例示出的另一种传输链路的续传方法的流程图;
图7是根据一示例性实施例示出的一种传输链路的续传方法的示意图;
图8是根据一示例性实施例示出的另一种传输链路的续传方法的示意图;
图9是根据一示例性实施例示出的一种传输链路的续传系统的示意图;
图10是根据另一示例性实施例示出的一种传输链路的续传装置的框图;
图11是根据一示例性实施例示出的另一种传输链路的续传装置的框图;
图12是根据一示例性实施例示出的又一种传输链路的续传装置的框图;
图13是根据另一示例性实施例示出的一种传输链路的续传装置的框图;
图14是根据一示例性实施例示出的另一种传输链路的续传装置的框图;
图15是根据一示例性实施例示出的又一种传输链路的续传装置的框图;
图16是本公开一实施例提供的一种传输链路的续传装置的框图;
图17是本公开一实施例提供的另一种传输链路的续传装置的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在介绍本公开提供的传输链路的续传方法之前,首先对本公开所涉及应用场景进行介绍,该应用场景可以包括一个专用网络,该专用网络可以为客户端和源站服务器之间的应用交付网络,例如ADN网络。该专用网络包括至少三个节点,每一个节点可以为一个代理服务器。根据在传输网络中的位置,这些代理服务器可以分为入口服务器、出口服务器以及中转服务器。该代理服务器可以为支持网络连接的请求、缓存、响应以及端口监听的服务器。
图1是根据一示例性实施例示出的一种传输链路的续传方法的流程图,如图1所示,该传输链路的续传方法可以包括以下步骤。
步骤101,当传输链路中的第一服务器与第三服务器的连接断开时,该第一服务器接收该第二服务器发送的断点续传请求,该断点续传请求中包含该第二服务器的传输缓存的状态信息和该第二服务器的入端口,该第三服务器为该第一服务器与该第二服务器之间的服务器。
以专用网络为ADN网络为例,ADN中的每一个代理服务器都会有两个缓存,一个请求缓存、一个响应缓存。缓存空间大小固定,是环形循环队列,队尾覆盖写的方式。每一个代理服务器都会监听一个或者都多个端口,本实施例中称为监听端口,入口服务器监听的是服务端口,对外公开,供客户端连接进来,例如80端口服务HTTP。中转服务器和出口服务器在网内监听特定的端口,供网内传输使用。例如中转服务器监听65330端口,出口服务器监听65331端口。所有的中转服务器在向后连接时本地将使用一个小于65535的一个随机源端口向后连接。每一个代理服务器将维护与其相关的两条连接(即与上一节点以及下一节点之间的连接)。该连接可以为TCP(英文:Transmission Control Protocol,中文:传输控制协议)连接或者UDP(英文:User Datagram Protocol,中文:用户数据报协议)连接。当该连接为UDP连接时,该连接可以被理解为逻辑上的连接。以数据流方向来看,该连接可以包括请求方向或者响应方向。其中,每个代理服务器包含接收模块和上报模块。分别用于接收和上报断点续传请求和续传响应请求。
示例地,当在该第一服务器与该第三服务器之间的连接异常断开时,该第三服务器主动关闭另外一条与该第二服务器连接,该第二服务器在该第三服务器主动关闭它们之间的连接之后,该第二服务器可以确定是第一服务器与该第三服务器之间连接异常断开,因此并不会断开与源站服务器的连接,也不会收其请求缓存和响应缓存,而是记录该第二服务器的传输缓存的状态信息和入端口,并且该第二服务器向第一服务器发送的断点续传请求,该断点续传请求中包含该第二服务器的传输缓存的状态信息和该第二服务器的入端口。
其中,该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的接收中断位置、该第二服务器的响应缓存的可用起始位置、该第二服务器的响应缓存的发送中断位置;该第二服务器的入端口包括:该第二服务器的监听端口。
步骤102,当该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时,该第一服务器向该第二服务器发送断点续传响应,该断点续传响应包含该第一服务器的传输缓存的状态信息和该第一服务器的出端口。
其中,该第一服务器的传输缓存的状态信息可以包括:该第一服务器的请求缓存的发送中断位置、该第一服务器的请求缓存的可用起始位置、该第一服务器的响应缓存的接收中断位置;该第一服务器的出端口可以包括:该第一服务器的随机源端口。
步骤103,当该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时,该第二服务器向该第一服务器发送可进行续传的响应消息。
步骤104,响应于该可进行续传的响应消息,该第一服务器向该第二服务器建立从该第一服务器的出端口到该第二服务器的入端口的补偿连接。
示例地,该第一服务器与该第二服务器建立从该第一服务器的随机源端口到该第二服务器使用的监听端口之间连接,得到该补偿连接。
步骤105,该第一服务器与该第二服务器通过该补偿连接进行续传。
其中,在数据流的请求方向中,该步骤105包括:该第一服务器利用该补偿连接在请求方向从该第二服务器的请求缓存的接收中断位置进行续传;在数据流的响应方向中,该第二服务器利用该补偿连接在响应方向从该第一服务器的响应缓存的接收中断位置进行续传。
图2是根据一示例性实施例示出的另一种传输链路的续传方法的流程图,如图2所示,该传输链路的续传方法还可以包括以下步骤。
步骤106,当该第三服务器与该第二服务器连接断开时,该第二服务器接收该第一服务器发送的断点续传请求,该断点续传请求中包含该第一服务器的传输缓存的状态信息和该第一服务器的出端口。
步骤107,当该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时,该第二服务器向该第一服务器发送断点续传响应,该断点续传响应包含该第二服务器的传输缓存的状态信息和该第二服务器的入端口。
步骤108,当该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时,该第一服务器向该第二服务器发送可进行续传的响应消息。
步骤109,该第一服务器向该第二服务器建立从该第一服务器的出端口到该第二服务器的入端口的补偿连接。
步骤110,该第一服务器与该第二服务器通过该补偿连接进行续传。
其中,该第二服务器的传输缓存的状态信息和第二服务器的入端口可以参照步骤101所示的内容,其中,该第一服务器的传输缓存的状态信息和第一服务器的入端口可以参照步骤102所示的内容。
图3是根据一示例性实施例示出的一种传输链路的续传方法的流程图,如图3所示,在步骤102之前,该传输链路的续传方法还可以包括以下步骤。
步骤111,该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定是否满足续传条件。
在该步骤111中,该第一服务器首先将该第一服务器的请求缓存的可用起始位置和该第二服务器的请求缓存的接收中断位置进行对比。
当该第二服务器的请求缓存的接收中断位置在该第一服务器的请求缓存的可用起始位置的范围内时,该第一服务器确定满足续传条件。
当该第二服务器的请求缓存的接收中断位置不在该第一服务器的请求缓存的可用起始位置的范围内时,该第一服务器确定不满足续传条件。
示例地,当多个代理服务器之间的连接,在请求方向的缓存容量为逐级递减(即多个连续的代理服务器的请求缓存沿请求方向逐个服务器递减)时,可以确认该第二服务器的请求缓存的接收中断位置在该第一服务器的请求缓存的可用起始位置的范围内。
图4是根据一示例性实施例示出的另一种传输链路的续传方法的流程图,如图4所示,在步骤107之前,该传输链路的续传方法还可以包括以下步骤。
步骤112,该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定是否满足续传条件。
在该步骤112中,该第二服务器首先将该第二服务器的响应缓存的可用起始位置和该第一服务器的响应缓存的接收中断位置进行对比。
当该第一服务器的响应缓存的接收中断位置在该第二服务器的响应缓存的可用起始位置的范围内时,该第二服务器确定满足续传条件。
示例地,当多个代理服务器之间的连接,在响应方向的缓存容量为逐级递减(即多个连续的代理服务器的请求缓存沿响应方向逐个服务器递减)时,可以确认该第一服务器的响应缓存的接收中断位置在该第二服务器的响应缓存的可用起始位置的范围内。
当该第一服务器的响应缓存的接收中断位置不在该第二服务器的响应缓存的可用起始位置的范围内时,该第二服务器确定不满足续传条件。
图5是根据另一示例性实施例示出的一种传输链路的续传方法的流程图,如图5所示,该传输链路的续传方法还可以包括以下步骤。
步骤113,在该第一服务器为该传输链路的入口服务器的情况下,当该第一服务器与该第三服务器之间的连接断开时,该第一服务器检测在预设时长内是否收到该第二服务器上报的该断点续传请求。
步骤114,当在该预设时长内未收到该断点续传请求时,该第一服务器关闭该第一服务器与客户端之间的连接。
步骤115,回收该第一服务器的请求缓存和响应缓存。
由此可见,为了区分异常断开连接和正常关闭连接,该入口服务器以是否接收到该出口服务器断点续传的请求为条件。当在一定超时时间内未收到断点续传的请求,则确认该连接为正常关闭连接,进而正常关闭客户端与该入口服务器之间的连接,回收请求缓存与响应缓存。
图6是根据一示例性实施例示出的另一种传输链路的续传方法的流程图,如图6所示,该传输链路的续传方法还可以包括以下步骤。
步骤116,在该第二服务器为该传输链路的出口服务器的情况下,当该第二服务器与该第三服务器之间的连接被关闭时,该第二服务器关闭该第二服务器与源站服务器之间的连接。
步骤117,回收该第二服务器的请求缓存和响应缓存。
由此可见,当该出口服务器与该中转服务器为正常关闭连接时,该出口服务器将不向该入口服务器发送补偿连接请求,并关闭该出口服务器与源站服务器的连接,同时回收该出口服务器的请求缓存与响应缓存。
综上所述,上述方法能够解决专用网络中,只能通过控制中心完成断点续传带来的单个节点的处理能力没有被充分利用的问题,通过专用网络中的节点就可以实现对传输链路中的异常连接进行补偿以及续传,从而能够利用每个节点被闲置的处理能力,因此能够提高处理资源的利用率。
图7是根据一示例性实施例示出的一种传输链路的续传方法的示意图,如图7所示,在该应用场景中,该第一服务器为入口服务器,该第二服务器为出口服务器,该第三服务器为中转服务器。当该入口服务器与该中转服务器之间出现异常连接时,该传输链路的续传方法的具体实施流程如下。
该中转服务器主动关闭另外一条与该出口服务器的连接。该出口服务器在接收到该中转服务器异常连接关闭之后,并不会收其与源站服务器的连接,也不会收其请求缓存和响应缓存,而是记录四个信息:1、该出口服务器的请求缓存的接收中断位置;2、该出口服务器的响应缓存的可用起始位置;3、该出口服务器的响应缓存的发送中断位置;4、该出口服务器中断连接使用的监听端口。然后通过该出口服务器的上报模块,跳过该中转服务器,向该中转服务器的上一跳(入口服务器)的接收模块发送这四个信息。随后,该入口服务器关闭随机源端口,断开与该中转服务器之间的异常连接,但不关闭与客户端的连接,也不会收请求缓存及响应缓存。而是记录这个四个信息:1、该入口服务器的请求缓存的发送中断位置;2、该入口服务器的请求缓存的可用起始位置;3、该入口服务器的响应缓存的接收中断位置;4、该入口服务器使用的随机源端口。
该入口服务器通过接收模块接收到来自该出口服务器的上报信息后,对比该出口服务器请求缓存的接收中断位置和该入口服务器的请求缓存的可用起始位置,如果可以进行补偿,则该入口服务器通过上报模块,跳过该中转服务器,向该出口服务器的接收模块发送上述四个信息。
该出口服务器的接收模块接收来自该入口服务器上报的上述信息后,对比该出口服务器响应缓存的可用起始位置和该入口服务器的响应缓存的接收中断位置,如果满足续传条件,则该出口服务器的上报模块向该入口服务器的接收模块发送可以续传的响应消息,否则发送不可续传的响应而放弃续传。
该入口服务器在接收到可以续传的响应后,向该出口服务器的监听端口发起新的连接,从而建立从入口服务器的随机源端口到该出口服务器的监听端口的补偿连接,然后在请求方向从该出口服务器请求缓存的接收中断位置进行续传。该出口服务器在接收来自入口服务器的补偿连接之后,在响应方向从该入口服务器响应缓存的接收中断位置进行续传。
另外,中转服务器也可以有多个,例如在另一应用场景中,上述的连续三个服务器可以是三个中转服务器,即该第一服务器可以为中转服务器1,该第二服务器可以为中转服务器2,该第三服务器也可以为中转服务器3。当检测到该中转服务器1与该中转服务器2异常断开时,该传输链路的续传方法的具体实施流程与上述实施流程相同,不再赘述。
图8是根据一示例性实施例示出的另一种传输链路的续传方法的示意图,如图8所示,在该应用场景中,该第一服务器为入口服务器,该第二服务器为出口服务器,该第三服务器为中转服务器。当该出口服务器与该中转服务器之间出现异常连接时,该传输链路的续传方法的具体实施流程如下。
该中转服务器主动关闭另外一条与该入口服务器的连接。该入口服务器在接收到该中转服务器异常连接关闭之后,并不会收其与客户端的连接,也不会收其请求缓存和响应缓存,而是记录四个信息:1、该入口服务器的请求缓存的接收中断位置;2、该入口服务器的响应缓存的可用起始位置;3、该入口服务器的响应缓存的发送中断位置;4、该入口服务器中断连接使用的监听端口。然后通过该入口服务器的上报模块,跳过该中转服务器,向该中转服务器的上一跳(出口服务器)的接收模块发送这四个信息。随后,该出口服务器关闭固定出口和监听端口,断开与该中转服务器之间的异常连接,但不关闭与源站服务器的连接,也不会收请求缓存及响应缓存。而是记录这个四个信息:1、该出口服务器的请求缓存的发送中断位置;2、该出口服务器的请求缓存的可用起始位置;3、该出口服务器的响应缓存的接收中断位置;4、该出口服务器使用的随机源端口。
该出口服务器通过接收模块接收到来自该入口服务器的上报信息后,对比该入口服务器请求缓存的接收中断位置和该出口服务器的请求缓存的可用起始位置,如果可以进行补偿,则该出口服务器通过上报模块,跳过该中转服务器,向该入口服务器的接收模块发送上述四个信息。该入口服务器的接收模块接收来自该出口服务器上报的上述信息后,对比该入口服务器响应缓存的可用起始位置和该出口服务器的响应缓存的接收中断位置,如果满足续传条件,则该入口服务器的上报模块向该出口服务器的接收模块发送可以续传的响应消息,否则发送不可续传的响应而放弃续传。该出口服务器在接收到可以续传的响应后,向该入口服务器的随机源端口发起新的连接,从而建立从该出口服务器的监听端口到该入口服务器的随机源端口的补偿连接,然后在请求方向从该入口服务器请求缓存的接收中断位置进行续传。该入口服务器在接收来自出口服务器的补偿连接之后,在响应方向从该出口服务器响应缓存的接收中断位置进行续传。
图9是根据一示例性实施例示出的一种传输链路的续传系统的示意图,如图9所示,该系统包括:第一服务器、第二服务器以及该第一服务器与该第二服务器之间的第三服务器,该第一服务器、该第二服务器以及该第三服务器为传输链路中的任意三个连续的服务器;
当该第一服务器与该第三服务器的连接断开时,该第一服务器接收该第二服务器发送的断点续传请求,该断点续传请求中包含该第二服务器的传输缓存的状态信息和该第二服务器的入端口;
当该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时,该第一服务器向该第二服务器发送断点续传响应,该断点续传响应包含该第一服务器的传输缓存的状态信息和该第一服务器的出端口;
当该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时,该第二服务器向该第一服务器发送可进行续传的响应消息;
该第一服务器响应于该可进行续传的响应消息,向该第二服务器建立从该第一服务器的出端口到该第二服务器的入端口的补偿连接;
该第一服务器与该第二服务器通过该补偿连接进行续传。
可选的,当该第三服务器与该第二服务器连接断开时,该第二服务器接收该第一服务器发送的断点续传请求,该断点续传请求中包含该第一服务器的传输缓存的状态信息和该第一服务器的出端口;
当该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时,该第二服务器向该第一服务器发送断点续传响应,该断点续传响应包含该第二服务器的传输缓存的状态信息和该第二服务器的入端口;
当该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时,该第一服务器向该第二服务器发送可进行续传的响应消息;
该第一服务器向该第二服务器建立从该第一服务器的出端口到该第二服务器的入端口的补偿连接;
该第一服务器与该第二服务器通过该补偿连接进行续传。
其中,该第一服务器的传输缓存的状态信息包括:该第一服务器的请求缓存的发送中断位置、该第一服务器的请求缓存的可用起始位置、该第一服务器的响应缓存的接收中断位置;该第一服务器的出端口包括:该第一服务器的随机源端口;
该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的接收中断位置、该第二服务器的响应缓存的可用起始位置、该第二服务器的响应缓存的发送中断位置;该第二服务器的入端口包括:该第二服务器的监听端口。
可选的,第一服务器确定满足续传条件之前,该第一服务器还用于:
将该第一服务器的请求缓存的可用起始位置和该第二服务器的请求缓存的接收中断位置进行对比;当该第二服务器的请求缓存的接收中断位置在该第一服务器的请求缓存的可用起始位置的范围内时,确定满足续传条件;当该第二服务器的请求缓存的接收中断位置不在该第一服务器的请求缓存的可用起始位置的范围内时,确定不满足续传条件。
可选的,第二服务器确定满足续传条件之前,该第二服务器还用于:
将该第二服务器的响应缓存的可用起始位置和该第一服务器的响应缓存的接收中断位置进行对比;
当该第一服务器的响应缓存的接收中断位置在该第二服务器的响应缓存的可用起始位置的范围内时,确定满足续传条件;
当该第一服务器的响应缓存的接收中断位置不在该第二服务器的响应缓存的可用起始位置的范围内时,确定不满足续传条件。
可选的,该第一服务器用于:与该第二服务器建立该第一服务器的随机源端口与该第二服务器使用的监听端口之间连接,得到该补偿连接。
可选的,该第一服务器用于:利用该补偿连接在请求方向从该第二服务器的请求缓存的接收中断位置进行续传;
可选的,该第二服务器用于:利用该补偿连接在响应方向从该第一服务器的响应缓存的接收中断位置进行续传。
可选的,在该第一服务器为该传输链路的入口服务器的情况下,当该第一服务器与该第三服务器之间的连接断开时,该第一服务器检测在预设时长内是否收到该第二服务器上报的该断点续传请求;
当在该预设时长内未收到该断点续传请求时,该第一服务器关闭该第一服务器与客户端之间的连接;
该第一服务器回收该第一服务器的请求缓存和响应缓存。
可选的,在该第二服务器为该传输链路的出口服务器的情况下,当该第一服务器与该第三服务器之间的连接被关闭时,该第二服务器关闭该第二服务器与源站服务器之间的连接;
该第二服务器回收该第二服务器的请求缓存和响应缓存。
综上所述,上述系统能够解决专用网络中,只能通过控制中心完成断点续传带来的单个节点的处理能力没有被充分利用的问题,通过专用网络中的节点就可以实现对传输链路中的异常连接进行补偿以及续传,从而能够利用每个节点被闲置的处理能力,因此能够提高处理资源的利用率。
图10是根据另一示例性实施例示出的一种传输链路的续传装置的框图,该装置300可以用于执行图1或图2该的方法,该装置300可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部,该服务器可以为上述应用场景中所述的服务器。参见图10,该装置300可以包括:
接收模块310,用于当传输链路中的第一服务器与第三服务器的连接断开时,接收第二服务器发送的断点续传请求,该断点续传请求中包含该第二服务器的传输缓存的状态信息和该第二服务器的端口信息。
发送模块320,用于当根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时,向该第二服务器发送断点续传响应,该断点续传响应包含该第一服务器的传输缓存的状态信息和该第一服务器的端口信息。
该接收模块310,还用于从该第二服务器接收可进行续传的响应消息,该响应消息是在该第二服务器根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时发送的。
连接建立模块330,用于建立该第一服务器与该第二服务器之间的补偿连接。
续传模块340,用于与该第二服务器通过该补偿连接进行续传。
可选的,图11是根据一示例性实施例示出的另一种传输链路的续传装置的框图,当该第一服务器为该第二服务器在请求方向的上游节点,该第一服务器为该第二服务器在响应方向的下游节点时,该装置300可以用于执行图3所述的方法。
其中,该第一服务器的传输缓存的状态信息包括:该第一服务器的请求缓存的发送中断位置、该第一服务器的请求缓存的可用起始位置、该第一服务器的响应缓存的接收中断位置。该第一服务器的端口信息包括:该第一服务器的随机源端口。
该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的接收中断位置、该第二服务器的响应缓存的可用起始位置、该第二服务器的响应缓存的发送中断位置。该第二服务器的端口信息包括:该第二服务器的监听端口。
参见图11,该装置300还可以包括:第一续传判断模块350。
该第一续传判断模块350,用于:
将该第一服务器的请求缓存的可用起始位置和该第二服务器的请求缓存的接收中断位置进行对比;当该第二服务器的请求缓存的接收中断位置在该第一服务器的请求缓存的可用起始位置的范围内时,确定满足续传条件;当该第二服务器的请求缓存的接收中断位置不在该第一服务器的请求缓存的可用起始位置的范围内时,确定不满足续传条件。
该连接建立模块330,用于与该第二服务器建立该第一服务器的随机源端口与该第二服务器使用的监听端口之间连接,得到该补偿连接。
该续传模块340,用于利用该补偿连接在请求方向从该第二服务器的请求缓存的接收中断位置进行续传。
可选的,图12是根据一示例性实施例示出的又一种传输链路的续传的框图,当该第一服务器为该第二服务器在请求方向的下游节点,该第一服务器为该第二服务器在响应方向的上游节点时,该装置300可以用于执行图4所述的方法。
其中,该第一服务器的传输缓存的状态信息包括:该第一服务器的请求缓存的接收中断位置、该第一服务器的响应缓存的可用起始位置、该第一服务器的响应缓存的发送中断位置;该第一服务器的端口信息包括:该第一服务器的监听端口;
该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的发送中断位置、该第二服务器的请求缓存的可用起始位置、该第二服务器的响应缓存的接收中断位置;该第二服务器的端口信息包括:该第二服务器的随机源端口;
参见图12,该装置300还可以包括:第二续传判断模块360,用于:
该第一服务器将该第一服务器的响应缓存的可用起始位置和该第二服务器的响应缓存的接收中断位置进行对比;当该第二服务器的响应缓存的接收中断位置在该第一服务器的响应缓存的可用起始位置的范围内时,确定满足续传条件;当该第二服务器的响应缓存的接收中断位置不在该第一服务器的响应缓存的可用起始位置的范围内时,确定不满足续传条件。
该连接建立模块330,用于与该第二服务器建立该第二服务器的随机源端口与该第一服务器使用的监听端口之间连接,得到该补偿连接。
该续传模块340,用于利用该补偿连接在响应方向从该第一服务器的响应缓存的接收中断位置进行续传。
图13是根据另一示例性实施例示出的一种传输链路的续传装置的框图,该装置400可以用于执行图1或图2该的方法,该装置400可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部,该服务器可以为上述应用场景中所述的服务器。参见图13,该装置400可以包括:
发送模块410,用于当传输链路中的第一服务器与第三服务器的连接断开后,向第一服务器发送的断点续传请求,该断点续传请求中包含第二服务器的传输缓存的状态信息和该第二服务器的端口信息,第三服务器为第一服务器与第二服务器之间的服务器;其中,断点续传请求是在该第三服务器主动断开与该第二服务器的连接后该第二服务器发送的;
接收模块420,用于从该第一服务器接收断点续传响应,该断点续传响应包含该第一服务器的传输缓存的状态信息和该第一服务器的端口信息。其中,该断点续传响应是在该第一服务器根据该第一服务器的传输缓存的状态信息以及该第二服务器的传输缓存的状态信息确定满足续传条件时发送的。
该发送模块410,还用于当根据该第二服务器的传输缓存的状态信息以及该第一服务器的传输缓存的状态信息确定满足续传条件时,向该第二服务器发送可进行续传的响应消息。
连接建立模块430,用于建立该第一服务器与该第二服务器之间的补偿连接。
续传模块440,用于与该第二服务器通过该补偿连接进行续传。
可选的,图14是根据一示例性实施例示出的另一种传输链路的续传装置的框图,当该第一服务器为该第二服务器在请求方向的上游节点,该第一服务器为该第二服务器在响应方向的下游节点时,该装置400可以用于执行图3所述的方法。
其中,该第一服务器的传输缓存的状态信息包括:该第一服务器的请求缓存的发送中断位置、该第一服务器的请求缓存的可用起始位置、该第一服务器的响应缓存的接收中断位置。
该第一服务器的端口信息包括:该第一服务器的随机源端口。
该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的接收中断位置、该第二服务器的响应缓存的可用起始位置、该第二服务器的响应缓存的发送中断位置。
该第二服务器的端口信息包括:该第二服务器的监听端口。
参见图14,该装置400还可以包括:第一续传判断模块450。
该第一续传判断模块450,用于:
将该第一服务器的请求缓存的可用起始位置和该第二服务器的请求缓存的接收中断位置进行对比;当该第二服务器的请求缓存的接收中断位置在该第一服务器的请求缓存的可用起始位置的范围内时,确定满足续传条件;
当该第二服务器的请求缓存的接收中断位置不在该第一服务器的请求缓存的可用起始位置的范围内时,确定不满足续传条件。
该连接建立模块430,用于与该第二服务器建立该第一服务器的随机源端口与该第二服务器使用的监听端口之间连接,得到该补偿连接。
该续传模块440,用于利用该补偿连接在请求方向从该第二服务器的请求缓存的接收中断位置进行续传。
可选的,图15是根据一示例性实施例示出的又一种传输链路的续传装置的框图,当该第一服务器为该第二服务器在请求方向的下游节点,该第一服务器为该第二服务器在响应方向的上游节点时,该装置400可以用于执行图4所述的方法。
其中,该第一服务器的传输缓存的状态信息包括:该第一服务器的请求缓存的接收中断位置、该第一服务器的响应缓存的可用起始位置、该第一服务器的响应缓存的发送中断位置;该第一服务器的端口信息包括:该第一服务器的监听端口;
该第二服务器的传输缓存的状态信息包括:该第二服务器的请求缓存的发送中断位置、该第二服务器的请求缓存的可用起始位置、该第二服务器的响应缓存的接收中断位置;该第二服务器的端口信息包括:该第二服务器的随机源端口;
参见图15,该装置400还可以包括:第二续传判断模块460,用于:
将该第一服务器的响应缓存的可用起始位置和该第二服务器的响应缓存的接收中断位置进行对比;当该第二服务器的响应缓存的接收中断位置在该第一服务器的响应缓存的可用起始位置的范围内时,确定满足续传条件;当该第二服务器的响应缓存的接收中断位置不在该第一服务器的响应缓存的可用起始位置的范围内时,确定不满足续传条件。
该连接建立模块430,用于与该第二服务器建立该第二服务器的随机源端口与该第一服务器使用的监听端口之间连接,得到该补偿连接。
该续传模块440,用于利用该补偿连接在响应方向从该第一服务器的响应缓存的接收中断位置进行续传。
综上所述,上述装置能够解决专用网络中,只能通过控制中心完成断点续传带来的单个节点的处理能力没有被充分利用的问题,通过专用网络中的节点就可以实现对传输链路中的异常连接进行补偿以及续传,从而能够利用每个节点被闲置的处理能力,因此能够提高处理资源的利用率。
另外,本公开还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于上述的传输链路的续传方法的代码部分。
本公开还提供一种非临时性计算机可读存储介质,该非临时性计算机可读存储介质中包括一个或多个程序,该一个或多个程序用于执行上述的传输链路的续传方法。
本公开还提供一种电子设备,该电子设备包括:
上述的非临时性计算机可读存储介质;以及一个或者多个处理器,用于执行所述非临时性计算机可读存储介质中的程序。
图16是本公开一实施例提供的另一种传输链路的续传装置的框图,该装置1600可以是终端设备,如图16所示,该装置1600可以包括:处理器1601,存储器1602,多媒体组件1603,输入/输出(I/O)接口1604,以及通信组件1605。
其中,处理器1601用于控制该装置1600的整体操作,以完成上述图1至图6任一所示的方法的全部或部分步骤。存储器1602用于存储各种类型的数据以支持在该装置1600的操作,这些数据的例如可以包括用于在该装置1600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器1602可以由任何类型的易失性或非易失性存储终端设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件1603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1602或通过通信组件1605发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口1604为处理器1601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件1605用于该装置1600与其他终端设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件1605可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,装置1600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理终端设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的传输链路的续传方法。
在另一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1602,上述指令可由装置1600的处理器1601执行以完成上述的传输链路的续传方法。示例地,该非临时性计算机可读存储介质可以是ROM、随机存取存储器(Random Access Memory,简称RAM)、CD-ROM、磁带、软盘和光数据存储终端设备等。
图17是本公开一实施例提供的另一种传输链路的续传装置的框图,该装置1700可以是一个服务器,由若干台服务器组成的服务器集群,或者可以是一个云计算服务中心。参照图17,装置1700包括处理器1701、存储器1702、I/O接口1703以及网络接口1704,其中该存储器1702可以用于存储可由处理器1701的执行的指令,处理器1702可以执行这些指令,以执行上述的传输链路的续传方法。另外,该装置1700可以操作基于存储在存储器1702的操作系统进行,该操作系统包括但不限于Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。