基于混合云的数据传输方法、装置、设备及存储介质与流程

文档序号:21406102发布日期:2020-07-07 14:39阅读:185来源:国知局
基于混合云的数据传输方法、装置、设备及存储介质与流程

本发明涉及路由分发领域,尤其涉及一种基于混合云的数据传输方法、装置、设备及存储介质。



背景技术:

随着科技的不断发展,移动应用已经逐步渗透到各行各业中,移动应用中网络连接速率的快慢是判断移动应用优良的标准之一。由于移动应用网络与传统电信网络相比较为复杂,移动应用的网络影响因素有很多,如:用户的移动速度、地理位置、天气情况等,为进一步提高用户体验,互联网公司会在异地建设数据中心,以解决异地机房的容灾问题。此外为了解决跨运营商访问网络带来的网络延迟问题,一个机房一般会同时拥有多家运营商的网络入口,此时,当移动应用访问业务服务器时,通常会通过域名系统(domainnamesystem,dns)的方式查询本地dns服务器,由运营商的本地dns服务器返回查询到的入口网际互连(internetprotocol,ip)地址,最后移动应用直接访问获得的ip地址。

在现有技术中,一旦有跨运营商的场景出现时,由于运营商的服务质量策略会对其他运营商入网的流量做降级处理,使得跨运营商间网络传输的网络延迟高,并且存在位于特殊地区时服务不可用的情况。



技术实现要素:

本发明的主要目的在于解决用户在使用网络时网络延迟的问题。

本发明第一方面提供了一种基于混合云的数据传输方法,包括:尝试接收私有云服务器发送的第一数据包,若成功接收所述第一数据包,则将所述第一数据包缓存在客户端中,若未成功接收所述第一数据包,则接收所述公有云服务器发送的第二数据包,并将所述第二数据包缓存在所述客户端中,所述第一数据包与所述第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,所述目标ip地址列表包括不同延迟时刻的目标ip地址;根据预置因特网包探索器探测所述客户端与所述移动网关之间的连接信息,所述连接信息用于指示所述客户端与所述移动网关之间的连接状态是否为连通;当所述客户端与所述移动网关之间的连接状态为连通时,通过目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;当所述客户端与所述移动网关之间的连接状态不为连通时,通过公有云服务器向所述移动网关发送业务请求;接收所述移动网关发送的回复数据包,所述回复数据包为所述移动网关根据所述业务请求在业务服务器中获取的回复业务数据。

可选的,在本发明第一方面的第一种实现方式中,所述根据预置因特网包探索器探测所述客户端与所述移动网关之间的连接信息,所述连接信息用于指示所述客户端与所述移动网关之间的连接状态是否为连通包括:基于预置因特网包探索器,通过所述客户端向所述移动网关发送回显请求报文;判断所述客户端是否接收到所述回显应答报文,所述回显应答报文为所述私有云服务器根据所述回显请求报文做出的回应报文;若所述客户端接收到所述回显应答报文,则探测到的连接信息为所述客户端与所述移动网关之间的连接状态为连通;若所述客户端接未收到所述回显应答报文,则探测到的连接消息为所述客户端与所述移动网关之间的连接状态为不连通。

可选的,在本发明第一方面的第二种实现方式中,所述当所述客户端与所述移动网关之间的连接状态为连通时,通过目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址包括:当所述客户端与所述移动网关之间的连接状态为连通时,获取目标ip地址列表中多个目标ip地址的延迟时刻;在所述多个目标ip地址的延迟时刻中筛选出最短延迟时刻,并将所述最短延迟时刻对应的目标ip地址作为目标访问ip地址;通过所述目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址。

可选的,在本发明第一方面的第三种实现方式中,所述当所述客户端与所述移动网关之间的连接状态不为连通时,通过公有云服务器向所述移动网关发送业务请求包括:当所述客户端与所述移动网关之间的连接状态不为连通时,接收公有云服务器发送的第三数据包,并将所述第三数据包缓存在所述客户端中,所述第三数据包携带有预置代理服务器的ip地址,所述公有云服务器包括预置代理服务器;基于所述预置代理服务器ip地址,通过所述客户端访问所述预置代理服务器,并向所述预置代理服务器发送业务请求;由所述预置代理服务器向所述移动网关转发所述业务请求。

可选的,在本发明第一方面的第四中实现方式中,所述当所述客户端与所述移动网关之间的连接状态不为连通时,接收公有云服务器发送的第三数据包,并将所述第三数据包缓存在所述客户端中,所述第三数据包携带有预置代理服务器的ip地址,所述公有云服务器包括预置代理服务器包括:当所述客户端与所述移动网关之间的连接状态不为连通时,基于所述客户端的ip地址访问公有云服务器,所述公有云服务器中包括预置代理服务器;在所述公有云服务器中,根据所述客户端中缓存的预置代理服务器域名以及预置映射关系,获取到预置代理服务器的ip地址,所述预置映射关系为所述预置代理服务器域名与对应所述预置代理服务器的ip地址之间的映射关系;接收所述预置代理服务器发送的第三数据包,并将所述第三数据包缓存在所述客户端中,所述第三数据包携带有所述预置代理服务器的ip地址。

可选的,在本发明第一方面的第五种实现方式中,在所述尝试接收私有云服务器发送的第一数据包,若成功接收所述第一数据包,则将所述第一数据包缓存在客户端中,若未成功接收所述第一数据包,则接收所述公有云服务器发送的第二数据包,并将所述第二数据包缓存在所述客户端中,所述第一数据包与所述第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,所述目标ip地址列表包括不同延迟时刻的目标ip地址之前,还包括:通过客户端访问云服务器,并根据所述客户端的业务请求在所述云服务器中创建数据包,所述云服务器为私有云服务器或公有云服务器,所述数据包为第一数据包或第二数据包。

可选的,在本发明第一方面的第六种实现方式中,所述通过客户端访问云服务器,并根据所述客户端的业务请求在所述云服务器中创建数据包,所述云服务器为私有云服务器或公有云服务器,所述数据包为第一数据包或第二数据包包括:获取客户端中缓存的云服务器的ip地址,并基于所述云服务器的ip地址访问云服务器,所述云服务器为私有云服务器或公有云服务器;获取所述客户端的业务请求;根据预置移动网关域名与移动网关的ip地址之间的对应关系以及所述业务请求与所述预置移动网关域名之间的对应关系,在所述云服务器中查询到所述目标ip地址,并创建携带有所述目标ip地址的数据包,所述数据包为第一数据包或第二数据包。

本发明第二方面提供了一种基于混合云的数据传输装置,包括:缓存模块,用于尝试接收私有云服务器发送的第一数据包,若成功接收所述第一数据包,则将所述第一数据包缓存在客户端中,若未成功接收所述第一数据包,则接收所述公有云服务器发送的第二数据包,并将所述第二数据包缓存在所述客户端中,所述第一数据包与所述第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,所述目标ip地址列表包括不同延迟时刻的目标ip地址;探测模块,用于根据预置因特网包探索器探测所述客户端与所述移动网关之间的连接信息,所述连接信息用于指示所述客户端与所述移动网关之间的连接状态是否为连通;第一访问模块,当所述客户端与所述移动网关之间的连接状态为连通时,用于通过目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;第二访问模块,当所述客户端与所述移动网关之间的连接状态不为连通时,用于通过公有云服务器向所述移动网关发送业务请求;接收模块,用于接收所述移动网关发送的回复数据包,所述回复数据包为所述移动网关根据所述业务请求在业务服务器中获取的回复业务数据。

可选的,在本发明第二方面的第一种实现方式中,所述探测模块具体用于:基于预置因特网包探索器,通过所述客户端向所述移动网关发送回显请求报文;判断所述客户端是否接收到所述回显应答报文,所述回显应答报文为所述私有云服务器根据所述回显请求报文做出的回应报文;若所述客户端接收到所述回显应答报文,则探测到的连接信息为所述客户端与所述移动网关之间的连接状态为连通;若所述客户端接未收到所述回显应答报文,则探测到的连接消息为所述客户端与所述移动网关之间的连接状态为不连通。

可选的,在本发明第二方面的第二种实现方式中,所述第一访问模块具体用于:当所述客户端与所述移动网关之间的连接状态为连通时,获取目标ip地址列表中多个目标ip地址的延迟时刻;在所述多个目标ip地址的延迟时刻中筛选出最短延迟时刻,并将所述最短延迟时刻对应的目标ip地址作为目标访问ip地址;通过所述目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址。

可选的,在本发明第二方面的第三种实现方式中,所述第二访问模块包括:缓存单元,当所述客户端与所述移动网关之间的连接状态不为连通时,用于接收公有云服务器发送的第三数据包,并将所述第三数据包缓存在所述客户端中,所述第三数据包携带有预置代理服务器的ip地址,所述公有云服务器包括预置代理服务器;发送单元,用于基于所述预置代理服务器ip地址,通过所述客户端访问所述预置代理服务器,并向所述预置代理服务器发送业务请求;转发单元,用于由所述预置代理服务器向所述移动网关转发所述业务请求。

可选的,在本发明第二方面的第四种实现方式中,所述缓存单元具体用于:当所述客户端与所述移动网关之间的连接状态不为连通时,基于所述客户端的ip地址访问公有云服务器,所述公有云服务器中包括预置代理服务器;在所述公有云服务器中,根据所述客户端中缓存的预置代理服务器域名以及预置映射关系,获取到预置代理服务器的ip地址,所述预置映射关系为所述预置代理服务器域名与对应所述预置代理服务器的ip地址之间的映射关系;接收所述预置代理服务器发送的第三数据包,并将所述第三数据包缓存在所述客户端中,所述第三数据包携带有所述预置代理服务器的ip地址。

可选的,在本发明第二方面的第五种实现方式中,所述基于混合云的数据传输装置还包括:访问模块,用于通过客户端访问云服务器,并根据客户端的业务请求在云服务器中创建数据包,云服务器为私有云服务器或公有云服务器,数据包为第一数据包或第二数据包。

可选的,在本发明第二方面的第六种实现方式中,所述访问模块具体用于:获取客户端中缓存的云服务器的ip地址,并基于所述云服务器的ip地址访问云服务器,所述云服务器为私有云服务器或公有云服务器;获取所述客户端的业务请求;根据预置移动网关域名与移动网关的ip地址之间的对应关系以及所述业务请求与所述预置移动网关域名之间的对应关系,在所述云服务器中查询到所述目标ip地址,并创建携带有所述目标ip地址的数据包,所述数据包为第一数据包或第二数据包。

本发明第三方面提供了一种基于混合云的数据传输设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述基于混合云的数据传输设备执行上述的基于混合云的数据传输方法。

本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的基于混合云的数据传输方法。

本发明提供的技术方案中,尝试接收私有云服务器发送的第一数据包,若成功接收所述第一数据包,则将所述第一数据包缓存在客户端中,若未成功接收所述第一数据包,则接收所述公有云服务器发送的第二数据包,并将所述第二数据包缓存在所述客户端中,所述第一数据包与所述第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,所述目标ip地址列表包括不同延迟时刻的目标ip地址;根据预置因特网包探索器探测所述客户端与所述私有云服务器之间的连接信息,所述连接信息用于指示所述客户端与所述私有云服务器之间的连接状态是否为连通;当所述客户端与所述私有云服务器之间的连接状态为连通时,通过目标访问ip地址访问所述移动网关,所述目标访问ip地址为所述不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;当所述客户端与所述私有云服务器之间的连接状态不为连通时,通过公有云服务器向所述移动网关发送业务请求;接收所述移动网关发送的回复数据包,所述回复数据包为所述移动网关根据所述业务请求在业务服务器中获取的回复业务数据。本发明实施例中,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

附图说明

图1为本发明实施例中基于混合云的数据传输方法的一个实施例示意图;

图2为本发明实施例中基于混合云的数据传输方法的另一个实施例示意图;

图3为本发明实施例中基于混合云的数据传输装置的一个实施例示意图;

图4为本发明实施例中基于混合云的数据传输装置的另一个实施例示意图;

图5为本发明实施例中基于混合云的数据传输设备的一个实施例示意图。

具体实施方式

本发明实施例提供了一种基于混合云的数据传输方法、装置、设备及存储介质,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中基于混合云的数据传输方法的一个实施例包括:

101、尝试接收私有云服务器发送的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,第一数据包与第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,目标ip地址列表包括不同延迟时刻的目标ip地址;

可以理解的是,本发明的执行主体可以为基于混合云的数据传输装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以终端为执行主体为例进行说明。

终端接收私有云服务器发送的携带有访问移动网关的目标网际互连ip地址列表的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,其中,目标ip地址列表包括不同延迟时刻的目标ip地址,目标ip地址为客户端业务请求中需要访问的ip地址。

需要说明的是,私有云是为一个用户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所中。私有云服务器利用局域网稳定而又私密的传输通道,将数据的处理过程从个人终端计算机转移到局域网内的数据中心,用户能够共享和弹性使用计算能力。私有云服务器相当于没有屏显示设备的计算机,移动应用客户端相当于计算机的远程桌面,用户通过移动应用客户端访问私有云服务器,不同用户之间可以通过移动应用客户端进行互连,不同用户的私有云服务器亦能交互。

这里终端接收私有云服务器发送的第一数据包或公有云服务器发送的第二数据包,两个数据包中均包括客户端需要访问移动网关的多个目标ip地址,这里的ip地址是能够访问移动网关的ip地址,移动网关又称为网间连接器或协议转换器,移动网关在网络层上实现网络互连的功效,仅用于两个高层协议不同的网络互连,是一种充当转换重任的计算机系统或设备,通过移动网关即可以实现利用客户端访问目标ip地址的目的。

102、根据预置因特网包探索器探测客户端与移动网关之间的连接信息,连接信息用于指示客户端与移动网关之间的连接状态是否为连通;

终端根据预置因特网包探索器探测客户端与移动网关之间的连接状态是否为连通。

这里终端利用预置因特网包探索器(packetinternetgroper,ping)探测客户端与移动网关之间的连接信息。ping是用于测试网络连接量的程序,其工作在tcp/ip网络体系结构中应用层的一个服务命令,主要是向特定的目的主机发送因特网报文控制协议(internetcontrolmessageprotocol,icmp)的应答请求报文,根据应答请求报文的发送与接收情况,探测本地主机与目的主机之间的网络连接状态。ping的主要原理为首先本地主机向目的主机发送回显请求报文,目的主机接收到该回显请求报文后向本地主机返回一个回显应答报文,若本地主机接收到回显应答报文,则ping成功,说明本地主机与目的主机之间的连接状态为连通。其中,主机等待报文发送的时间不超过1秒。

需要注意的是,ping成功并不一定就代表tcp/ip配置正确,可能还要在本地主机与目的主机之间执行大量数据包交换的操作,直到确定tcp/ip配置的正确性。如果执行ping成功而本地主机与目的主机之间的网络仍无法使用,可能问题在于网络系统的软件配置方面不正确,ping成功只保证当前主机与目的主机间存在一条连通的物理路径。

103、当客户端与移动网关之间的连接状态为连通时,通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;

当客户端与移动网关之间的连接状态为连通时,终端通过不同延迟时刻的目标ip地址中延迟时刻最短的ip地址,即目标访问ip地址访问移动网关。

可以理解的是,当客户端与移动网关之间的连接状态为连通时,说明客户端可以使用通过目标ip地址访问移动网关,也就是说明运营商到自建机房的路线通畅,终端就可以在目标ip地址列表中选取目标访问ip地址,并通过目标访问ip地址访问移动网关。之所以利用目标访问ip地址访问移动网关,是因为在终端获取到多个延迟时刻不同的ip地址后,选取延迟时刻更短的ip地址,降低客户端获取到移动网关ip地址的时间,让客户端更快、更有效的访问移动网关,提高客户端访问移动网关的效率。

104、当客户端与移动网关之间的连接状态不为连通时,通过公有云服务器向移动网关发送业务请求;

当客户端与移动网关之间的连接状态不为连通时,终端通过公有云服务器向移动网关发送业务请求。

当客户端与移动网关之间的连接状态不为连通时,说明客户端不能使用通过获取到的目标ip地址访问移动网关,也就是说明运营商到自建机房的路线不连通,这时终端通过客户端访问公有云服务器中的预置代理服务器,并将客户端所需访问目标ip地址的业务请求发送至预置代理服务器,最终由预置代理服务器向访问的移动网关转发该业务请求。

可以理解的是,公有云通常指第三方提供商为用户提供的能够使用的云,公有云一般可通过互联网使用,公有云的核心属性是共享资源服务。公有云作为一个支撑平台,还能够整合上游的服务提供者和下游最终用户,打造新的价值链和生态系统。公有云服务器是一种利用高速互联网的传输能力,将数据的处理过程从个人计算机或服务器转移到大型的云计算中心,并为用户提供计算能力、存储能力的一种云计算服务器,用户能够像使用电力、自来水等公用设施一样使用计算能力,并按使用量进行计费。

105、接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

终端接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

当移动网关接收到客户端所需访问目标ip地址的业务请求后,移动网关会向相应的业务服务器转发该业务请求,并根据业务请求在业务服务器中获取到所需的业务数据,由业务服务器将查询到的业务数据返回给移动网关,最后再由移动网关返回给客户端,这样就完成了一次通过客户端访问目标ip地址的过程。

本申请中是利用了两种不同的云计算进行移动网关目标ip地址的获取,一种为公有云另一种为私有云,包含私有云和公有云服务的整体解决方案和技术架构被称之为混合云,混合云在私有云和公有云之间通过互联网专线或vpn连接,将私有云和公有云变成一张完整的内部网络,既保障了私有云数据的安全性,又可以利用公有云的产品功能和计算资源的弹性化,是最典型的一种云计算部署方案。

本发明实施例中,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

请参阅图2,本发明实施例中基于混合云的数据传输方法的另一个实施例包括:

201、通过客户端访问云服务器,并根据客户端的业务请求在云服务器中创建数据包,云服务器为私有云服务器或公有云服务器,数据包为第一数据包或第二数据包;

终端通过客户端访问云服务器,并根据客户端的业务请求在云服务器中创建数据包,云服务器为私有云服务器或公有云服务器,数据包为第一数据包或第二数据包。具体的:首先终端获取客户端中缓存的云服务器的ip地址,并基于云服务器的ip地址访问云服务器,云服务器为私有云服务器或公有云服务器;其次终端获取客户端的业务请求;最后终端根据预置移动网关域名与移动网关的ip地址之间的对应关系以及业务请求与预置移动网关域名之间的对应关系,在云服务器中查询到目标ip地址,并创建携带有目标ip地址的数据包,数据包为第一数据包或第二数据包。

需要说明的是,客户端在访问移动网关的过程中,存在服务器域名与服务器ip地址之间的转换,每个服务器域名对应一个服务器ip地址,而显示服务器域名与对应服务器ip地址之间的映射关系的系统为域名系统(domainnamesystem,dns),dns服务用于在网络请求时,将域名转为对应的ip地址,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的ip字符串,因此,终端可以通过在客户端中缓存的云服务器的ip地址,进行对云服务器的访问。这里的云服务器指的是私有云服务器或公有云服务器,终端在私有云服务器中生成的是第一数据包,而在公有云服务器中生成的是第二数据包。

终端获取到客户端的业务请求,即客户端所需访问的目标ip地址,这里的目标ip地址为在访问业务服务器的过程中需要通过的移动网关的ip地址,这里的业务服务器可以指业务企业对应网站,如:腾讯官方网站、佰腾网等。当客户端需要访问业务服务器时,需要通过移动网关进行网络之间的转换,也就是说,移动网关实质上是一个网络通向其他网络的ip地址,如:设定存在网络a和网络b,网络a的ip地址范围为“192.168.1.1~192.168.1.254”,子网掩码为255.255.255.0;网络b的ip地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0,在没有路由器的情况下,两个网络之间是不能进行tcp/ip通信的,即使是两个网络连接在同一台交换机(或集线器)上,tcp/ip协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。因此在进行业务服务器的访问时,需要预先确定移动网关的ip地址。此外,客户端访问每个业务服务器时均有对应的移动网关,存在业务请求与预置移动网关域名之间的对应关系表,供终端查询相应的预置移动网关域名,这里的业务请求为客户端需要访问某个目标业务服务器的指令。

202、尝试接收私有云服务器发送的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,第一数据包与第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,目标ip地址列表包括不同延迟时刻的目标ip地址;

终端尝试接收私有云服务器发送的携带有访问移动网关的目标网际互连ip地址列表的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,其中,目标ip地址列表包括不同延迟时刻的目标ip地址。

这里终端接收私有云服务器发送的第一数据包,该第一数据包中包括客户端需要访问移动网关的多个目标ip地址,这里的ip地址是能够访问移动网关的ip地址,移动网关又称为网间连接器或协议转换器,移动网关在网络层上实现网络互连的功效,仅用于两个高层协议不同的网络互连,是一种充当转换重任的计算机系统或设备,通过移动网关即可以实现利用客户端访问目标ip地址的目的。需要说明的是,当私有云服务器与客户端之间的网络存在异常时,客户端会接收公有服务器发送的第二数据包,从而获取需要访问移动网关的多个ip地址。

此外,这里第一数据包内与第二数据包内携带的是目标ip地址列表,目标ip地址列表中包括多个延迟时刻不同的目标ip地址,再由终端探测出目标ip地址的连接性以及连接速度,筛选出返回可用性最好的目标访问ip地址,利用目标访问ip地址访问移动网关。

203、根据预置因特网包探索器探测客户端与移动网关之间的连接信息,连接信息用于指示客户端与移动网关之间的连接状态是否为连通;

终端根据预置因特网包探索器探测客户端与移动网关之间的连接状态是否为连通。具体的:首先终端基于预置因特网包探索器,通过客户端向移动网关发送回显请求报文;其次终端判断客户端是否接收到回显应答报文,回显应答报文为私有云服务器根据回显请求报文做出的回应报文;若客户端接收到回显应答报文,则终端探测到的连接信息为客户端与移动网关之间的连接状态为连通;若客户端接未收到回显应答报文,则终端探测到的连接消息为客户端与移动网关之间的连接状态为不连通。

终端通过是否接收到移动网关回应的回显应答报文判定移动网关与客户端是否为连通状态,这里的回显应答报文以及回显请求报文均是封装在ip包中,ip协议是一种无连接的,不可靠的数据包协议,它并不能保证数据一定被送达,因此网络借助互联网控制报文协议(internetcontrolmessageprotocol,icmp)确保数据的相互传送,当传送的数据包发送异常的时候,icmp就会将异常信息封装在ip包内,然后回传给源主机。

举例说明:终端通过客户端向移动网关发送一个生存周期ttl=1的回显请求报文,一旦在传输报文的过程中遇到一个路由器,ttl的值就变成了0,所以路由器会将该数据包丢掉,然后产生一个错误类型(超时)的回显应答报文返回为客户端,这时客户端就得到第一个路由节点的ip和相关的连接信息,其次终端再通过客户端向移动网关发送一个ttl=2的回显请求报文,重复上述步骤,客户端得知第二个路由节点的ip和相关的连接信息,如此反复进行该步骤,客户端就可以拿到从客户端到移动网关之间所有路由器的相关连接信息了,若有一个路由器的相关连接信息未接收到,则说明客户端与移动网关之间的连接状态为不连通。

204、当客户端与移动网关之间的连接状态为连通时,通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;

当客户端与移动网关之间的连接状态为连通时,终端通过不同延迟时刻的目标ip地址中延迟时刻最短的ip地址,即目标访问ip地址访问移动网关。具体的:当客户端与移动网关之间的连接状态为连通时,终端首先获取目标ip地址列表中多个目标ip地址的延迟时刻;然后终端在多个目标ip地址的延迟时刻中筛选出最短延迟时刻,并将最短延迟时刻对应的目标ip地址作为目标访问ip地址;最后终端通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址。

可以理解的是,当客户端与移动网关之间的连接状态为连通时,说明客户端可以使用通过目标ip地址访问移动网关,也就是说明运营商到自建机房的路线通畅,终端就可以在目标ip地址列表中选取目标访问ip地址,并通过目标访问ip地址访问移动网关。之所以利用目标访问ip地址访问移动网关,是因为在终端获取到多个延迟时刻不同的ip地址后,选取延迟时刻更短所对应的ip地址,降低客户端获取到移动网关ip地址的时间,让客户端更快、更有效的访问移动网关,提高客户端访问移动网关的效率。

举例说明:当客户端接收到访问移动网关的目标ip地址列表时,得到的信息如下:“64bytesfrom111.13.101.208:icmp_seq=0ttl=49time=31.092ms”,“64bytesfrom111.13.101.208:icmp_seq=1ttl=49time=33.967ms”,“64bytesfrom111.13.101.208:icmp_seq=2ttl=49time=32.905ms”,“64bytesfrom111.13.101.208:icmp_seq=3ttl=49time=35.164ms”,“64bytesfrom111.13.101.208:icmp_seq=4ttl=49time=39.879ms”,由此可以明确目标ip地址列表中的信息:所访问的移动网关的ip地址相同,但每个访问移动网关的ip地址的延迟时刻不同,因此,终端在多个time中筛选出一个延迟时刻最短的最优延迟时刻,即time=31.092时所对应的移动网关的ip地址为目标访问ip地址。

205、当客户端与移动网关之间的连接状态不为连通时,通过公有云服务器向移动网关发送业务请求;

当客户端与移动网关之间的连接状态不为连通时,终端通过公有云服务器向移动网关发送业务请求。具体的:当客户端与移动网关之间的连接状态不为连通时,首终端接收公有云服务器发送携带有预置代理服务器的ip地址的第三数据包,并将第三数据包缓存在客户端中,其中,公有云服务器包括预置代理服务器;其次终端基于预置代理服务器ip地址,通过客户端访问预置代理服务器,并向预置代理服务器发送业务请求;最后终端通过预置代理服务器向移动网关转发业务请求。

这里的预置代理服务器指的是nginx,nginx是一个高性能的超文本传输协议http和反向代理网络服务器。当nginx作为代理服务器时,nginx既可以在内部直接支持超文本预处理器php程序对外进行服务,也可以支持作为http代理服务对外进行服务。客户端通过预置代理服务器向移动网关转发客户端的业务请求,实现客户端访问业务服务器的目的。

在这里终端接收公有云服务器发送携带有预置代理服务器的ip地址的第三数据包,并将第三数据包缓存在客户端中,其中,公有云服务器包括预置代理服务器,具体的:当客户端与移动网关之间的连接状态不为连通时,基于客户端的ip地址访问公有云服务器,公有云服务器中包括预置代理服务器;在公有云服务器中,根据客户端中缓存的预置代理服务器域名以及预置映射关系,获取到预置代理服务器的ip地址,预置映射关系为预置代理服务器域名与对应预置代理服务器的ip地址之间的映射关系;接收预置代理服务器发送的第三数据包,并将第三数据包缓存在客户端中,第三数据包携带有预置代理服务器的ip地址。

这里的预置映射关系指的是预置代理服务器域名与对应预置代理服务器的ip地址之间的映射关系,同步骤201中预置移动网关域名与移动网关的ip地址之间的对应关系是相同的,均可以通过dns系统进行解析,寻找到预置代理服务器域名与相应预置代理服务器的ip地址之间的映射关系,如:预置代理服务器域名为:tencent腾讯,对应的预置代理服务器的ip地址为:https://www.tencent.com/。

206、接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

终端接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

当移动网关接收到客户端所需访问目标ip地址的业务请求后,移动网关会向相应的业务服务器转发该业务请求,并根据业务请求在业务服务器中获取到所需的业务数据,由业务服务器将查询到的业务数据返回给移动网关,最后再由移动网关返回给客户端,这样就完成了一次通过客户端访问目标ip地址的过程。

本申请中是利用了两种不同的云计算进行目标ip地址的获取,一种为公有云另一种为私有云,包含私有云和公有云服务的整体解决方案和技术架构被称之为混合云,混合云在私有云和公有云之间通过互联网专线或vpn连接,将私有云和公有云变成一张完整的内部网络,既保障了私有云数据的安全性,又可以利用公有云的产品功能和计算资源的弹性化,是最典型的一种云计算部署方案。当客户端不能通过私有云服务器与相应的移动网关ip地址相连,进而实现访问业务服务器的目的时,终端就通过公有云服务器中的预置代理服务器转发客户端的业务需求,实现客户端访问业务服务器的目的。

本发明实施例中,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

上面对本发明实施例中基于混合云的数据传输方法进行了描述,下面对本发明实施例中基于混合云的数据传输装置进行描述,请参阅图3,本发明实施例中基于混合云的数据传输装置一个实施例包括:

缓存模块301,用于尝试接收私有云服务器发送的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,第一数据包与第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,目标ip地址列表包括不同延迟时刻的目标ip地址;

探测模块302,用于根据预置因特网包探索器探测客户端与移动网关之间的连接信息,连接信息用于指示客户端与移动网关之间的连接状态是否为连通;

第一访问模块303,当客户端与移动网关之间的连接状态为连通时,用于通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;

第二访问模块304,当客户端与移动网关之间的连接状态不为连通时,用于通过公有云服务器向移动网关发送业务请求;

接收模块305,用于接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

本发明实施例中,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

请参阅图4,本发明实施例中基于混合云的数据传输装置的另一个实施例包括:

缓存模块301,用于尝试接收私有云服务器发送的第一数据包,若成功接收第一数据包,则将第一数据包缓存在客户端中,若未成功接收第一数据包,则接收公有云服务器发送的第二数据包,并将第二数据包缓存在客户端中,第一数据包与第二数据包均为携带有访问移动网关的目标网际互连ip地址列表,目标ip地址列表包括不同延迟时刻的目标ip地址;

探测模块302,用于根据预置因特网包探索器探测客户端与移动网关之间的连接信息,连接信息用于指示客户端与移动网关之间的连接状态是否为连通;

第一访问模块303,当客户端与移动网关之间的连接状态为连通时,用于通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址;

第二访问模块304,当客户端与移动网关之间的连接状态不为连通时,用于通过公有云服务器向移动网关发送业务请求;

接收模块305,用于接收移动网关发送的回复数据包,回复数据包为移动网关根据业务请求在业务服务器中获取的回复业务数据。

可选的,探测模块302还可以具体用于:

基于预置因特网包探索器,通过客户端向移动网关发送回显请求报文;

判断客户端是否接收到回显应答报文,回显应答报文为私有云服务器根据回显请求报文做出的回应报文;

若客户端接收到回显应答报文,则探测到的连接信息为客户端与移动网关之间的连接状态为连通;

若客户端接未收到回显应答报文,则探测到的连接消息为客户端与移动网关之间的连接状态为不连通。

可选的,第一访问模块303还可以具体用于:

当客户端与移动网关之间的连接状态为连通时,获取目标ip地址列表中多个目标ip地址的延迟时刻;

在多个目标ip地址的延迟时刻中筛选出延迟时刻最短的最优延迟时刻,并将最优延迟时刻对应的目标ip地址作为目标访问ip地址;

通过目标访问ip地址访问移动网关,目标访问ip地址为不同延迟时刻的目标ip地址中延迟时刻最短的ip地址。

可选的,第二访问模块304包括:

缓存单元3041,当客户端与移动网关之间的连接状态不为连通时,用于接收公有云服务器发送的第三数据包,并将第三数据包缓存在客户端中,第三数据包携带有预置代理服务器的ip地址,公有云服务器包括预置代理服务器;

发送单元3042,用于基于预置代理服务器ip地址,通过客户端访问预置代理服务器,并向预置代理服务器发送业务请求;

转发单元3043,用于由预置代理服务器向移动网关转发业务请求。

可选的,缓存单元3041还可以具体用于:

当客户端与移动网关之间的连接状态不为连通时,基于客户端的ip地址访问公有云服务器,公有云服务器中包括预置代理服务器;

在公有云服务器中,根据客户端中缓存的预置代理服务器域名以及预置映射关系,获取到预置代理服务器的ip地址,预置映射关系为预置代理服务器域名与对应预置代理服务器的ip地址之间的映射关系;

接收预置代理服务器发送的第三数据包,并将第三数据包缓存在客户端中,第三数据包携带有预置代理服务器的ip地址。

可选的,基于混合云的数据传输装置还包括:

访问模块306,用于通过客户端访问云服务器,并根据客户端的业务请求在云服务器中创建数据包,云服务器为私有云服务器或公有云服务器,数据包为第一数据包或第二数据包。

可选的,访问模块306还可以具体用于:

获取客户端中缓存的云服务器的ip地址,并基于云服务器的ip地址访问云服务器,云服务器为私有云服务器或公有云服务器;

获取客户端的业务请求;

根据预置移动网关域名与移动网关的ip地址之间的对应关系以及业务请求与预置移动网关域名之间的对应关系,在云服务器中查询到目标ip地址,并创建携带有目标ip地址的数据包,数据包为第一数据包或第二数据包。

本发明实施例中,通过访问公有云服务器或私有云服务器,采取不同方式获取客户端需要访问的移动网关的ip地址,减少客户端获取到移动网关的ip地址的时间,降低跨运营商间网络传输的网络延迟。

上面图3和图4从模块化功能实体的角度对本发明实施例中的基于混合云的数据传输装置进行详细描述,下面从硬件处理的角度对本发明实施例中基于混合云的数据传输设备进行详细描述。

图5是本发明实施例提供的一种基于混合云的数据传输设备的结构示意图,该基于混合云的数据传输设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessingunits,cpu)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对基于混合云的数据传输设备500中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在基于混合云的数据传输设备500上执行存储介质530中的一系列指令操作。

基于混合云的数据传输设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如windowsserve,macosx,unix,linux,freebsd等等。本领域技术人员可以理解,图5示出的基于混合云的数据传输设备结构并不构成对基于混合云的数据传输设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行基于混合云的数据传输方法的步骤。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1