数据传输方法、装置、系统、服务器、电子设备及介质与流程

文档序号:17003597发布日期:2019-03-02 01:55阅读:202来源:国知局
数据传输方法、装置、系统、服务器、电子设备及介质与流程

本发明涉及数据处理技术领域,尤其涉及一种数据传输方法、装置、系统、服务器、电子设备及介质。



背景技术:

随着科学技术的不断发展,人们对生活品质的追求也不断提高,网络在近几年进入了飞速发展的阶段,满足了人们对娱乐的需求。一般来说,用户访问的网站模式为client/server,即客户端/服务器的方式,用户访问网站数据资源需要网络运营商的接入服务,具体过程为用户请求在客户端发起,经由网络提供者的各层路由器接入运营商的网络,在网站所在的服务器中获得网站数据资源。为了保证不同地区不同网络的接入的用户都能顺利从服务器中获取网站数据资源,拥有较多用户和访问量的互联网提供商,通常会选择在某一特定运营商内部的idc(internetdatacenter,互联网数据中心)数据机房设置多个服务器,每一个服务器用于服务不同地区的用户,但是当其他运营商的用户想在某一区域进行游戏时,经常存在跨运营商使用的情况,这种情况下当用户需要进行相关的数据资源访问时,需要通过其他运营商进行跨网络访问,对于省级无开放端口的地域,则需要跨越同一运营商下的其他集团公司的端口进行访问,这种情况就容易造成较高的用户时延和较大的丢包数量。

目前网络游戏的发展又更为迅速,得益于互联网技术的巨大发展和家庭宽带技术的普及,网络游戏让玩家有着更为丰富的游戏体验。网络游戏,即onlinegame,可理解为在线游戏,即通过电信运营商的网络作为传输媒介,以游戏运营商服务器和用户计算机为处理终端,以游戏客户端软件为信息交互窗口的旨在实现娱乐、休闲、交流和取得虚拟成就的具有可持续性的个体性多人在线游戏。不同于以往的单机游戏等,网络游戏首先是具有良好的互动效果的,除了游戏中实时互动的界面和操作,具有上百万用户的大型网络游戏也形成了用户群体的沟通模式,玩家在游戏的同时进行语音、视频、社区交流等多种分享活动,这样就形成了良好的互动模式;其次网络游戏具有巨大的游戏架构,游戏内容和场景在架空的基础上向现实无限逼近,使玩家在游戏世界的竞争交流中体验与现实世界类似的复杂关系。因此网络游戏在除了在画面质量、音效质量方面有越来越高的要求之外,对响应速度和数据交换能力也提出的很高的要求。最后是网络游戏玩家的队伍增长速度可观,根据2016年6月ccnic《第38次中国互联网发展状况调查统计报告》,中国的网络游戏用户规模达到3.91亿,占整体网民的55.1%,因此网络游戏有着巨大的用户群体且在稳步发展。

这种现状及需求对于运营商来讲就形成了巨大的挑战,分析传统网络用户需求,为用户提供规模性流量和低时延要求非常重要。举例来说,在多人的角色扮演游戏中,当网络的时延超过200ms时,玩家的游戏体验就会受到影响,而在即时的战略游戏和枪战等射击类游戏中在100ms会受到影响。由此可以看出即时类游戏想要有良好的用户体验对于网络的要求是极高的。因此如果当特定运营商的用户想在某一区域进行数据资源访问,尤其是进行数据资源访问时,跨运营商访问会造成更高的用户时延和更大的丢包数量。为了获得更好的用户体验,需要在用户访问网站时进行网站加速。

现有技术中网站的加速可以是使用vpn(virtualprivatenetwork,虚拟专用网)完成,如图1所示,网络中部署的宽带网(sinonet)作为一个路由器,起到的作用是多点连接电信、教育、联通、移动等网络,接收到用户发起的请求后,将该请求转发至不同的网络中,即存在跨网络的业务请求完成过程中,为用户分配一个虚拟网卡,通过isp(internetserviceprovider,互联网服务提供商)线路将请求转发至sinonet,再经过sinonet的出口至vpn服务器最后转发到目标网络中,但是使用vpn时,sinonet能够转发的数据量是有限的,当出现sinonet需要转发的数据量超过自身能够承受的数据量时,超过自身能够承受的数据量的那部分数据无法完成加速。

还可以是使用lsp(layeringserviceprovider,分层服务提供商)完成,lsp的加速原理是从用户使用的带宽中分离出一部分流量进行打包封装,然后通过路由将其分配给lsp服务器,lsp服务器根据用户请求中携带的网站名称,和预先保存的网站名称及网站地址的对应关系,对用户请求中的网站名称对应的网站网址进行加速服务,但是lsp服务器中如果针对一个网站名称保存了多个网站地址,也就是针对一个网站保存了多个ip和多个端口,lsp服务器在该网站名称对应的多个ip和多个端口中,确定对哪一个ip和端口进行加速服务的过程比较复杂,延长了用户的等待时间。



技术实现要素:

本发明提供一种数据传输方法、装置、系统、服务器、电子设备及介质,用以解决现有技术中存在可能对全部数据无法加速和用户等待时间长的问题。

为了解决上述存在的问题,本发明提供了一种数据传输方法,应用于服务器,该方法包括:

接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。

进一步地,所述将所述ip地址和端口号的信息发送给lsp服务器之前,所述方法还包括:

根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,进行后续步骤。

进一步地,所述方法还包括:

根据所述目标网站的目标业务类型,预测剩余流量值;

根据所述剩余流量值和获取到的链路带宽,确定接收所述剩余流量值的剩余接收时长;

根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述接收lsp服务器加速后的数据包后,所述方法还包括:

根据接收所述数据包的时间点,以及每个存储时间段与存储节点的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标存储节点;

将所述数据包存储到所述目标存储节点,并针对所述目标服务器的所述ip地址和端口号,保存所述目标存储节点的标识信息,及所述目标存储时间段。

进一步地,所述确定存储间隔包括:

根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;

根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

进一步地,所述方法还包括:

针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;

按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;

向用户依次发送每个数据包组。

进一步地,所述确定发送速率包括:

在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;

根据确定的所述用户对应的上一次发送速率或为所述用户分配的访问所述目标网站的带宽,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

进一步地,所述排序后的每个数据包进行分组,并组合为对应的数据包组之后,所述向用户依次发送每个数据包组之前,所述方法还包括:

判断用户所在网络是否处于拥塞状态;

如果是,根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率;

在每个数据包组中确定与所述目标网站无关的无用数据包;

按照所述丢包率,丢弃每个数据包组中的无用数据包。

进一步地,所述根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率包括:

根据所述发送速率,为所述用户分配的访问所述目标网站的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为所述用户分配的访问所述目标网站的带宽,s为发送速率。

进一步地,所述确定为所述用户分配的访问目标网站的宽带包括:

根据确定为所述用户分配的访问目标网站的带宽,其中kx为为所述用户分配的访问目标网站的带宽,kx-1为上一次为所述用户分配的访问目标网站的带宽,b为获取到的链路带宽,s为发送速率。

本发明提供了一种数据传输装置,应用于服务器,所述装置包括:

第一接收模块,用于接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

第一发送模块,用于将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

第二接收模块,用于接收所述lsp服务器加速后的数据包;

第二发送模块,用于将所述数据包转发给所述用户。

本发明提供了一种服务器,包括存储器、处理器和收发机;

所述处理器,用于读取所述存储器中的程序,控制所述收发机接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

所述处理器,还用于控制所述收发机将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

所述处理器,还用于控制所述收发机接收所述lsp服务器加速后的数据包,并控制所述收发机将所述数据包转发给所述用户。

进一步地,所述处理器,还用于根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,控制所述收发机将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器。

进一步地,所述处理器,还用于根据所述目标网站的目标业务类型,预测剩余流量值;根据所述剩余流量值和获取到的链路带宽,确定接收所述剩余流量值的剩余接收时长;根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述处理器,还用于根据接收所述数据包的时间点,以及每个存储时间段与存储节点的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标存储节点;将所述数据包存储到所述目标存储节点,并针对所述目标服务器的所述ip地址和端口号,保存所述目标存储节点的标识信息,及所述目标存储时间段。

进一步地,所述处理器,具体用于根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

进一步地,所述处理器,还用于针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;控制所述收发机向用户依次发送每个数据包组。

进一步地,所述处理器,具体用于在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;根据确定的所述用户对应的上一次发送速率或为所述用户分配的访问所述目标网站的带宽,获取到的当前带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

进一步地,所述处理器,还用于判断用户所在网络是否处于拥塞状态;如果是,根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率;在每个数据包组中确定与所述目标网站无关的无用数据包;按照所述丢包率,丢弃每个数据包组中的无用数据包。

进一步地,所述处理器,具体用于根据所述发送速率,为所述用户分配的访问所述目标网站的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为所述用户分配的访问所述目标网站的带宽,s为发送速率。

进一步地,所述处理器,具体用于根据确定为所述用户分配的访问目标网站的带宽,其中kx为为所述用户分配的访问目标网站的带宽,kx-1为上一次为所述用户分配的访问目标网站的带宽,b为获取到的链路带宽,s为发送速率。

本发明提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述任一权利要求所述方法的步骤。

本发明提供了一种计算机可读存储介质,其存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行上述任一所述方法的步骤。

本发明提供了一种数据传输系统,所述数据传输系统包括:服务器和lsp服务器;其中,

服务器,用于接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器;

lsp服务器,用于对所述ip地址和端口号的所述目标服务器发送的数据包进行加速,将加速后的数据包发送给所述服务器;

所述服务器,还用于接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。

本发明提供一种数据传输方法、装置、系统、服务器、电子设备及介质,所述方法包括:服务器接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。在本发明实施例中,服务器将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp服务器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中使用vpn完成网站的数据加速的示意图;

图2为本发明实施例1提供的一种数据传输过程的示意图;

图3为本发明实施例4提供的一种网络架构示意图;

图4为本发明实施例9提供的一种数据传输系统的结构示意图;

图5为本发明实施例10提供的一种数据传输系统的结构示意图;

图6为本发明实施例11提供的一种服务器的示意图;

图7为本发明实施例12提供的一种电子设备的示意图;

图8为本发明实施例提供的一种数据传输装置示意图。

具体实施方式

为了缩短用户的等待时间,实现对目标网站的数据的加速,本发明实施例提供了一种数据传输方法、装置、系统、服务器、电子设备及介质。

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1:

图2为本发明实施例1提供的一种数据传输过程的示意图,该过程包括以下步骤:

s201:接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息。

本发明实施例提供的数据传输方法应用于服务器。

具体地,当用户想要访问目标网站时,会向服务器发送对目标网站的访问请求,并在访问请求中携带有目标网站对应的目标服务器的ip地址和端口号的信息。该服务器接收到用户发送的对目标网站的访问请求,可以识别用户发送的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,从而确定用户想要访问的目标网站。

该服务器可以部署在运营商核心网与用户所在的本地城域网之间,并且可以部署一个或多个服务器。

s202:将所述ip地址和端口号的信息发送给lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速。

服务器识别到访问请求中携带的目标服务器的ip地址和端口号的信息,会将目标服务器的ip地址和端口号的信息发送给lsp服务器。具体地,服务器可以是直接将目标服务器的ip地址和端口号的信息发送给lsp服务器,也可以是将用户发送的访问请求转发给lsp服务器。

lsp服务器可以根据目标服务器的ip地址和端口号,向目标服务器发送对目标网站的访问请求,由于目标服务器上部署有目标网站,因此目标服务器接收到lsp服务器发送的对目标网站的访问请求后,可以将目标网站的数据包发送给lsp服务器,lsp服务器对该ip地址和端口号的目标服务器发送的数据包进行加速。

在本发明实施例中,lsp服务器部署在目标服务器与服务器之间。lsp服务器对目标服务器发送的数据包加速完成后,会将加速后的数据包发送给服务器。

lsp服务器为对网站数据进行加速的服务器,并且lsp服务器是基于分层服务提供程序实现对数据的加速。所述lsp服务器对目标服务器发送的数据包加速的过程属于现有技术,在本发明实施例中不做赘述。

s203:接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。

服务器接收到lsp服务器加速后的数据包,将数据包转发给用户,用户通过服务器转发的数据包,实现对目标网站内容的加载和访问。

当然为了进一步提高对目标网站的数据包的加载速度,缩短用户的等待时间,服务器将ip地址和端口号的信息发送给lsp服务器,还可以自身将用户的访问请求转发给目标服务器,并接收目标服务器发送的数据包,此时,相当于存在两条链路接收目标服务器发送的数据包,因此可以进一步提高对目标网站的数据包的加载速度,并且如果出现lsp服务器发生故障导致无法对目标网站加速的情况,则可以使用服务器接收目标服务器发送的数据包,避免由于lsp服务器故障出现无法使用户访问目标网站的情况。

服务器将用户的访问请求转发给目标服务器,及服务器接收目标服务器发送的数据包的过程均属于现有技术,在本发明实施例中不做赘述。

在本发明实施例中,服务器将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,lsp服务器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。

实施例2:

为了进一步提高加速效率,缩短用户的等待时间,在上述实施例的基础上,本发明实施例中,所述将所述ip地址和端口号的信息发送给lsp服务器之前,所述方法还包括:

根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,进行后续步骤。

lsp服务器在对数据包加速时,可以是对与用户所在网络同网的目标网站进行加速,也可以是对与用户所在网络异网的目标网站进行加速,但是由于通常情况下异网的时延远远超过同网的时延,所以lsp服务器对异网下的目标网站的数据包进行加速是很有必要的,并且lsp服务器自身的资源不是无限的,所以lsp服务器将自身的资源尽可能地为异网下的目标网站的数据包进行加速,可以有效地提高加速效率。

当服务器判断目标网站所在网络与用户所在网络为异网时,将目标网站对应的目标服务器的ip地址和端口号的信息发送给lsp服务器,使lsp服务器能够具有充足的资源来对目标网站的数据包进行加速,提高了加速效率,进一步缩短了用户的等待时间。

下面以一个具体的实施例进行说明,用户将对a游戏网站的访问请求发送给服务器,服务器识别访问请求中携带a游戏网站对应的a游戏服务器的ip地址和端口号的信息,及用户的源ip地址,服务器确定a游戏网站所在网络的运营商与用户所在网络的运营商不同,则确定a游戏网站所在网络与用户所在网络为异网,将a游戏服务器的ip地址和端口号的信息发送给lsp服务器,lsp服务器对a游戏服务器发送的数据包进行加速,将加速后的数据包发送给服务器,服务器将接收到的加速后的数据包转发给用户。

服务器根据用户的访问请求中携带的目标服务器的ip地址,可以确定目标网站所在网络的运营商,并且根据用户的访问请求中携带的用户的源ip地址,可以确定用户所在网络的运营商,当目标网站所在网络的运营商与用户所在网络的运营商相同时,则认为目标网站所在网络与用户所在网络为同网,服务器直接将用户的访问请求发送给目标服务器;如果目标网站所在网络的运营商与用户所在网络的运营商不同时,则认为目标网站所在网络与用户所在网络为异网,服务器将ip地址和端口号的信息发送给lsp服务器,由lsp服务器对目标服务器发送的数据包进行加速。

为了有效的减少时延,并保证数据传输的安全性,具体地,服务器将用户的访问请求转发给目标服务器的过程为,服务器将访问请求先通过用户所在网络的运营商的传输网,转发给目标网站所在网络的运营商的传输网,然后目标网站所在网络的运营商的传输网将访问请求转发至目标网站对应的目标服务器,从而使目标服务器接收到服务器发送的用户的访问请求。

同样地,服务器接收目标服务器发送的数据包的过程为,目标服务器将数据包先通过目标网站所在网络的运营商的传输网,转发给用户所在网络的运营商的传输网,然后用户所在网络的运营商的传输网将数据包转发至服务器,从而使服务器接收目标服务器发送的数据包。

在本发明实施例中,服务器当判断目标网站所在网络与用户所在网络为异网时,将目标网站对应的目标服务器的ip地址和端口的信息发送给lsp服务器,使lsp服务器能够具有充足的资源来对目标服务器的数据包进行加速,提高了加速效率,进一步缩短了用户的等待时间。

实施例3:

为了节省服务器的资源,提高加速效率,在上述各实施例的基础上,本发明实施例中,所述方法还包括:

根据所述目标网站的目标业务类型,预测剩余流量值;

根据所述剩余流量值和获取到的链路带宽,确定接收所述剩余流量值的剩余接收时长;

根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述接收lsp服务器加速后的数据包后,所述方法还包括:

根据接收所述数据包的时间点,以及每个存储时间段与存储节点的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标存储节点;

将所述数据包存储到所述目标存储节点,并针对所述目标服务器的所述ip地址和端口号,保存所述目标存储节点的标识信息,及所述目标存储时间段。

为了降低对服务器资源的占用,节省服务器的资源,提高加速效率。在本发明实施例中可以存在多个独立于服务器的存储节点,服务器可以将加速后的数据包存储到其对应的目标存储节点中。

网站的业务类型至少包括:网页、流媒体、文件传输和应用等业务类型。服务器中可以预先保存网站与业务类型的对应关系,从而确定目标网站的目标业务类型。

服务器根据目标网站的目标业务类型,预测剩余流量值,可以是服务器中保存有不同业务类型的网站与网站加载流量值的关系,所以服务器根据目标网站的目标业务类型,确定目标网站的目标网站加载流量值,将目标网站加载流量值作为目标网站的剩余流量值。

服务器获取其位于用户所在网络的链路带宽,服务器根据目标网站的剩余流量值和链路带宽,确定接收剩余流量值的剩余接收时长的过程可以是,将剩余流量值和当前带宽的比值作为剩余接收时长。

服务器根据接收到用户的访问请求的时间,以及确定的存储时间间隔,可以确定第一个存储时间段,再根据剩余接收时长,可以进而确定在剩余接收时长内的每个存储时间段,从而根据在不同的存储时间段接收到的目标网站的数据包进行存储。

每个存储节点可以为服务器中的存储空间,也可以是外置的存储磁盘阵列等,可以预先设置一个存储节点或多个存储节点,较优地是预先设置多个存储节点,以避免某一存储节点故障导致数据传输过程无法正常进行。

如果存储节点为外置的存储磁盘阵列,则存储磁盘阵列可以为服务器磁盘阵列,每个服务器磁盘阵列可以部署在网络中的任意位置,只要能与服务器进行数据交互即可。较优地,每个服务器磁盘阵列为部署在服务器与用户之间的网络边缘处的每个第二级服务器,可以提供容错能力和降低数据包存储所需的时间。

服务器接收到lsp服务器发送的加速后的数据包后,确定该数据包的目标存储节点的过程为服务器根据接收到该数据包的时间点,确定与该时间点匹配的目标存储时间段,根据每个存储时间段与存储节点的对应关系,确定目标存储时间段对应的目标存储节点,将该数据包存储到目标存储节点中。

如果每个目标存储节点为每个第二级服务器时,服务器将数据包存储到第二级服务器时,第二级服务器会针对该数据包向服务器发送认证信息,告知服务器已接收到该数据包。对应的,如果服务器在设定的认证接收时间长度内,未接收到第二级服务器发送的认证信息,则认为当前网络性能不佳出现网络拥塞,导致服务器无法正常接收认证信息,这时服务器可以采用拥塞控制方法来降低向第二级服务器发送的数据量,缓解网络拥塞,其中,认证接收时间长度保存在服务器中,认证接收时间长度为任意时间长度,如可以为300毫秒、1秒或5秒等。

服务器在本地针对该ip地址和端口号的目标服务器发送的每个数据包,保存每个数据包的目标存储节点的标识信息,及目标存储时间段,以方便在标识信息对应的目标存储节点中获取对应的数据包,并按照顺序将数据包发送给用户。服务器还可以针对目标网站的ip地址和端口号,保存每个数据包的标识信息和每个数据包的数据量。

具体地,服务器中预先保存有一个分区表,分区表中可以针对目标网站对应的目标服务器的ip地址和端口号,保存每个数据包的目标存储节点的标识信息,目标存储时间段,每个数据包的标识信息及每个数据包的数据量。

还以上述具体的实施例对本发明实施例进行说明,服务器确定a游戏网站的目标业务类型为网游应用,根据预测的剩余流量值和获取到的当前带宽,确定接收剩余流量值的剩余接收时长为1秒钟,并确定时间间隔为200ms(毫秒)。服务器接收到用户对a游戏网站的访问请求的时间为2017年8月2日10时0分5秒500毫秒,则服务器确定共有5个存储时间段,分别为第一存储时间段2017年8月2日10时0分5秒500毫秒至2017年8月2日10时0分5秒700毫秒,第二存储时间段2017年8月2日10时0分5秒700毫秒至2017年8月2日10时0分5秒900毫秒,第三存储时间段2017年8月2日10时0分5秒900毫秒至2017年8月2日10时0分6秒100毫秒,第四存储时间段2017年8月2日10时0分6秒100毫秒至2017年8月2日10时0分6秒300毫秒,和第五存储时间段2017年8月2日10时0分6秒300毫秒至2017年8月2日10时0分6秒500毫秒。

服务器中保存的每个存储时间段与存储节点的对应关系为,第一存储时间段与第一存储节点存在对应关系,第二存储时间段与第二存储节点存在对应关系,第三存储时间段与第三存储节点存在对应关系,第四存储时间段与第四存储节点存在对应关系和第五存储时间段与第五存储节点存在对应关系,也就是第一存储节点中保存距访问请求的时间0到200毫秒内的数据包,第二存储节点中保存距访问请求的时间200毫秒到400毫秒内的数据包,第三存储节点中保存距访问请求的时间400毫秒到600毫秒的数据包,第四存储节点中保存距访问请求的时间600毫秒到800毫秒的数据包,第五存储节点中保存距访问请求的时间800毫秒到1000毫秒。服务器如果接收到的数据包的时间点为2017年8月2日10时0分550毫秒,则确定与该时间点匹配的目标存储时间段为第一存储时间段,则将该数据包存储到第一存储时间段对应的第一存储节点中。服务器针对a游戏网站,保存该数据包的标识信息、该数据包对应的第一存储节点的标识信息及第一存储时间段。

由于本发明实施例中可以存在多个独立于服务器的存储节点,服务器可以将加速后的数据包存储到其对应的目标存储节点中,降低了对服务器资源的占用,节省了服务器的资源,提高了加速效率。

实施例4:

存储间隔可以是固定的,并且存储间隔预先保存在服务器中,为了提高数据传输的灵活性,在上述各实施例的基础上,本发明实施例中,所述确定存储间隔包括:

根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;

根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

服务器根据目标网站对应的目标业务类型的目标系数值,确定目标网站对应的存储时间间隔时,考虑到不同业务类型的网站的数据包大小的不同,为每个业务类型的网站设置了对应的系数值,实现了不同网站的数据包的弹性存储,提高了数据传输的灵活性。

不同业务类型的网站对应的服务器通常每次发送的数据包的大小不完全相同,也就是数据包的数据量不完全相同,所以针对每个业务类型预先保存有对应的每个系数值,其中每个业务类型对应的每个系数值可以相同或不同,较佳地,每个业务类型对应的每个系数值不同。例如由于应用业务类型的网站的数据包的数据量,通常大于网页业务类型的网站的数据包的数据量,所以为应用业务类型的网站设置的系数值,可以大于为网页业务类型的网站设置的系数值。

在本发明实施例中,业务类型对应的系数值不小于0且不大于1,同样地,目标业务类型对应的目标系数值也不小于0且不大于1。

下面以一个具体的实施例对上述各实施例进行说明,图3为本发明实施例提供的一种网络架构示意图,用户所在网络的运营商部署了一个服务器,三个第二级服务器,及用户所在小区的第三级服务器,其中三个第二级服务器分别为第一第二级服务器,第二第二级服务器及第三第二级服务器,每个第二级服务器分别负责不同区域内的数据传输,并且第三第二级服务器负责用户所在区域内的数据传输。其中在图3中省略了每个服务器与其所在网络的运营商的传输网络间部署的路由器,不同运营商的传输网之间部署的路由器,以及第二级服务器与第三级服务器之间部署的基站。

用户通过用户所在小区的第三级服务器发送对目标网站的访问请求,其中访问请求中携带目标网站对应的目标服务器的ip地址和端口号的信息,第三级服务器将访问请求发送给第三第二级服务器,第三第二级服务器将访问请求通过用户所在网络的运营商的传输网转发给服务器,服务器可以为第一级服务器,服务器确定目标网站所在网络的运营商与用户所在网络的运营商不同,目标网站所在网络与用户所在网络为异网,服务器将目标服务器的ip地址和端口号的信息发送给lsp服务器,lsp服务器根据ip地址和端口号与目标服务器建立连接,并对目标网站发送的数据包加速。

在图3中,每个存储节点为每个第二级服务器,服务器将lsp服务器发送的加速后的数据包,存储到与接收到该数据包的时间点匹配的目标存储时间段对应的目标存储节点中。

由于本发明实施例中,服务器根据目标网站对应的目标业务类型的目标系数值,确定目标网站对应的存储时间间隔时,考虑到不同业务类型的网站的数据包大小的不同,为每个业务类型的网站设置了对应的系数值,实现了不同网站的数据包的弹性存储,提高了数据传输的灵活性。

实施例5:

为了缩短用户的等待时间,在上述各实施例的基础上,本发明实施例中,所述方法还包括:

针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;

按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;

向用户依次发送每个数据包组。

服务器按照发送速率,对排序后的每个数据包分组并组合为对应的数据包组,向用户依次发送每个数据包组,提高了每次发送数据的效率,缩短了用户的等待时间。

服务器可以是当目标网站的数据全部加载完成后,可以根据目标网站的ip地址和端口号,在存储目标网站的数据包的每个目标存储节点中获取目标网站的每个数据包。

当每个目标存储节点为服务器内的存储空间时,服务器可以针对每个目标存储节点对应的每个存储目录位置,通过访问自身的每个存储目标位置获取目标网站的每个数据包。

当每个目标存储节点为服务器磁盘阵列时,服务器可以针对每个目标存储节点对应的每个服务器磁盘阵列的ip地址,通过访问每个服务器磁盘阵列的ip地址在每个服务器磁盘阵列中获取目标网站的每个数据包;也可以是服务器当确定目标网站的数据全部加载完成后,向每个服务器磁盘阵列发送数据包获取请求,并且在数据包获取请求中携带目标网站对应的目标服务器的ip地址和端口号的信息,每个服务器磁盘阵列中针对网站的服务器的ip地址和端口号,保存有网站的每个数据包的标识信息,从而根据数据包获取请求中目标服务器的ip地址和端口号的信息,在自身保存的每个数据包中,确定目标网站的数据包,并将目标网站的每个数据包发送给服务器。

当服务器在每个目标存储节点中获取目标网站的每个数据包后,按照每个目标存储时间段及接收到每个数据包的时间点,对每个目标存储时间段进行排序,并对每个目标存储时间段内的每个数据包进行排序,按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组,向用户依次发送每个数据包组。

服务器在确定发送速率时,可以是根据获取到的链路带宽直接确定的,也可以是根据获取到的链路带宽及预设的发送速率预测算法确定的。

服务器在确定发送速率时,可以是在每次向用户发送数据包组之前都进行一次发送速率的确定,也可以仅在第一次向用户发送数据包组之前进行发送速率的确定。

当每个目标存储节点为每个第二级服务器时,因为每个第二级服务器部署在网络边缘,则服务器可以将数据包组依次发送给离用户所在区域较近的第二级服务器,由离用户所在区域较近的第二级服务器将数据包组转发给用户,从而进一步提高数据传输效率,缩短用户的等待时间。

还以上述图3为例,当服务器确定目标网站的数据全部加载完成,对每个目标存储时间段进行排序,并针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序,按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组,向用户依次发送每个数据包组,如图3所示的网络架构,服务器通过用户所在网络的运营商的传输网将数据包组发送给第三第二级服务器,第三第二级服务器将数据包组转发给用户所在小区的第三级服务器,用户所在小区的第三级服务器将数据包发送给用户。

在本发明实施例中,当服务器确定目标网站的数据加载完成后,按照确定的发送速率,将排序后的每个存储节点中存储的目标网站的每个数据包分组并组合为对应的数据包组,向用户依次发送每个数据包组,提高了每次发送数据的效率,缩短了用户的等待时间。

实施例6:

为了缩短用户的等待时间,在上述各实施例的基础上,本发明实施例中,所述确定发送速率包括:

在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;

根据确定的所述用户对应的上一次发送速率或为所述用户分配的访问所述目标网站的带宽,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

服务器根据接收两个数据包的接收时间差值,上一次的发送速率和链路带宽,确定发送速率,并按照发送速率,对排序后的每个数据包分组并组合为对应的数据包组,提高了每次发送数据的效率,缩短了用户的等待时间。

因为排序后的数据包中任意相邻的两个数据包为按照时间顺序依次接收到的两个数据包,则根据该两个数据包中任一数据包的数据量,和接收该两个数据包的接收时间差值,可以确定实际接收速率。较佳地,因为该两个数据包的接收时间差值可以表征为接收时间点较晚的数据包的接收时间,故为了使确定的实际接收速率更加准确,服务器可以根据该两个数据包中接收时间点较晚的数据包的数据量,和接收该两个数据包的接收时间差值,来确定的实际接收速率。

服务器在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,可以是在同一存储时间段内选择的相邻的两个数据包,也可以是在不同且相邻的两个存储时间段内选择的相邻的两个数据包。

例如,该任意相邻的两个数据包为第一数据包和第二数据包,且接收第一数据包的第一时间点早于接收第二数据包的第二时间点,则将第二时间点与第一时间点的差值,确定为第一数据包和第二数据包的接收时间差值,若选择第二数据包确定实际接收速率,则确定的实际接收速率为第二数据包的数据量与接收时间差的比值。

服务器可以根据确定的实际接收速率与获取到的链路带宽,确定链路带宽的实际利用率,从而根据链路带宽的实际利用率,确定发送速率。具体地,服务器可以将确定的实际接收速率与获取到的链路带宽的比值,直接确定为当前带宽的实际利用率。

服务器在根据链路带宽的实际利用率,确定发送速率时,可以是根据链路带宽的实际利用率,及确定的所述用户对应的上一次发送速率,确定发送速率,也可以是根据链路带宽的实际利用率,及为所述用户分配的访问所述目标网站的带宽,确定发送速率。

具体地,服务器可以将链路带宽的实际利用率,与确定的所述用户对应的上一次发送速率的乘积,直接确定为发送速率,也可以是将链路带宽的实际利用率,与为所述用户分配的访问所述目标网站的带宽的乘积,直接确定为发送速率。

服务器可以在每次向用户发送数据包组之前都进行一次发送速率的确定,也可以仅在第一次向用户发送数据包组之前进行发送速率的确定。如果服务器检测到当前网络中正在处理的数据较多,并且在一定时间内当前网络状况不会发生变化,则为了节约服务器的计算资源,服务器可以仅在第一次向用户发送数据包组前确定发送速率。如果服务器检测到当前网络状况良好,并且服务器计算资源空闲,则为了保证提高每次发送数据包的成功率,服务器可以在每次向用户发送数据包组前都进行发送速率的确定。

如果服务器仅在第一次向用户发送数据包组前确定发送速率,或者是服务器当前要发送的数据包组为第一个数据包组时,则服务器可以根据为所述用户分配的访问所述目标网站的带宽,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。为所述用户分配的访问目标网站的带宽可以是根据获取到的链路带宽直接确定的,也可以是根据获取到的链路带宽及预设的带宽分配算法确定的。服务器根据获取到的链路带宽直接确定时,可以直接将获取到的链路带宽作为为用所述户分配的访问目标网站的带宽。服务器在根据获取到的链路带宽及预设的带宽分配算法确定为所述用户分配的访问目标网站的带宽,可以是根据获取到的链路带宽和预设的该目标网站的权重值,为所述用户分配访问目标网站的带宽等,其中目标网站的权重值预先保存在服务器中,目标网站的权重值为不大于1的正数。

如果服务器在每次向用户发送数据包组前都进行发送速率的确定,或者服务器当前要发送的数据包组非第一个数据包组时,则在服务器每次向用户发送数据包组前,根据确定的所述用户对应的上一次发送速率,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。服务器中可以保存有所述用户对应的上一次发送速率,当服务器根据确定的所述用户对应的上一次发送速率,确定发送速率后,可以是根据确定的发送速率,对当前保存的所述用户对应的上一次发送速率进行更新,也就是,服务器中保存的所述用户对应的上一次发送速率是变化的。

服务器在排序后的数据包中任意选择相邻的两个数据包时,可以在未发送的数据包中进行选择,以保证确定的发送速率更加准确。

由于本发明实施例中服务器根据接收两个数据包的接收时间差值,为所述用户分配的访问目标网站的带宽和链路带宽,确定发送速率,并按照发送速率,对排序后的每个数据包分组并组合为对应的数据包组,提高了每次发送数据的效率,缩短了用户的等待时间。

实施例7:

为了提高数据传输的准确性及缩短用户的等待时间,在上述各实施例的基础上,本发明实施例中,所述排序后的每个数据包进行分组,并组合为对应的数据包组之后,所述向用户依次发送每个数据包组之前,所述方法还包括:

判断用户所在网络是否处于拥塞状态;

如果是,根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率;

在每个数据包组中确定与所述目标网站无关的无用数据包;

按照所述丢包率,丢弃每个数据包组中的无用数据包。

当服务器确定用户所在网络处于拥塞状态时,按照确定的丢包率,丢弃每个数据包组中与目标网站无关的无用数据包,降低每个数据包组的数据长度,提高了在拥塞状态的发送成功率,从而提高了数据传输的准确性及缩短了用户的等待时间。

网络的拥塞状态是转发的数据量大并且转发节点的资源有限,而造成的网络传输性能下降的情况,服务器可以检测用户所在网络是否处于拥塞状态。

服务器检测用户所在网络是否处于拥塞状态的过程属于现有技术,在本发明实施例中不做赘述。

目标网站在发送数据包时,会在发送的数据包中携带数据包的包类型,包类型用来描述数据包为何种类型,服务器根据数据包携带中携带的包类型,确定数据包中的数据是否与目标网站无关,从而确定数据包是否为无用数据包。如果服务器根据某一数据包携带的该数据包的包类型,确定该数据包中的数据包与目标网站无关,则确定数据包为无用数据包。

服务器确定丢包率时,可以在每次向用户发送数据包组之前都进行一次丢包率的确定,也可以是仅在第一次向用户发送数据包组之前进行丢包率的确定。

具体地,因为丢包率是服务器在根据剩余接收时长、发送速率及为所述用户分配的访问目标网站的带宽确定的,则如果服务器在每次向用户发送数据包组之前都进行一次发送速率的确定,那么服务器可以在每次向用户发送数据包组之前都进行一次丢包率的确定;如果服务器仅在第一次向用户发送数据包组之前进行发送速率的确定,那么服务器可以仅在第一次向用户发送数据包组之前进行丢包率的确定。

如果服务器仅在第一次向用户发送数据包之前进行丢包率的确定,则具体地,所述根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率包括:

根据所述发送速率,为所述用户分配的访问所述目标网站的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为所述用户分配的访问所述目标网站的带宽,s为发送速率。

如果服务器在每次向用户发送数据包组之前都进行一次丢包率的确定,则具体地,公式中的s即发送速率可以为当次向用户发送数据包组之前确定的发送速率。

此外,在确定丢包率时,还可以将用户所在网络数据传输的时延量作为丢包率的参考参数。

由于本发明实施例中当服务器确定用户所在网络处于拥塞状态时,按照确定的丢包率,丢弃每个数据包组中与目标网站无关的无用数据包,降低每个数据包组的数据长度,提高了在拥塞状态的发送成功率,从而提高了数据传输的准确性及缩短了用户的等待时间。

实施例8:

为了进一步缩短用户的等待时间,在上述各实施例的基础上,在本发明实施例中,所述确定为用户分配的访问目标网站的宽带包括:

根据公式确定为所述用户分配的访问目标网站的带宽,其中kx为为所述用户分配的访问目标网站的带宽,kx-1为上一次为所述用户分配的访问目标网站的带宽,b为获取到的链路当前带宽,s为发送速率。

服务器根据确定的为所述用户分配的访问目标的带宽,确定丢包率,提高了确定的丢包率的结果的准确性,从而进一步缩短了用户的等待时间。

如果是第一次为所述用户分配访问目标网站的带宽,则上一次为用户分配的访问目标网站的带宽可以是根据获取到的链路带宽及目标网站的目标业务类型的权重值确定的。

由于本发明实施例中,服务器根据确定的为所述用户分配的访问目标的带宽,确定丢包率,提高了确定的丢包率的结果的准确性,从而进一步缩短了用户的等待时间。

实施例9:

图4为本发明实施例提供的一种数据传输系统的结构示意图,如图4所示,

所述数据传输系统包括:服务器41和lsp服务器42;其中,

服务器41,用于接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器42;

lsp服务器42,用于对所述ip地址和端口号的所述目标服务器发送的数据包进行加速,将加速后的数据包发送给所述服务器41;

所述服务器41,还用于接收所述lsp服务器42加速后的数据包,并将所述数据包转发给所述用户。

为了缩短用户的等待时间,在该系统中部署了服务器41和lsp服务器42。本发明实施例中的lsp服务器42为基于分层服务提供程序完成网站的数据的加速的服务器。

具体地,当用户想要访问目标网站时,会向服务器41发送对目标网站的访问请求,并在访问请求中携带有目标网站对应的目标服务器的ip地址和端口号的信息。该服务器41接收到用户发送的对目标网站的访问请求,可以识别用户发送的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,从而确定用户想要访问的目标网站。

该服务器41可以部署在运营商核心网与用户所在的本地城域网之间,并且可以部署一个或多个服务器41。

服务器41识别到访问请求中携带的目标服务器的ip地址和端口号的信息,会将目标服务器的ip地址和端口号的信息发送给lsp服务器42。具体地,服务器41可以是直接将目标服务器的ip地址和端口号的信息发送给lsp服务器42,也可以是将用户发送的访问请求转发给lsp服务器42。

lsp服务器42可以根据目标服务器的ip地址和端口号,向目标服务器发送对目标网站的访问请求,由于目标服务器上部署有目标网站,因此目标服务器接收到lsp服务器42发送的对目标网站的访问请求后,可以将目标网站的数据包发送给lsp服务器42,lsp服务器42对该ip地址和端口号的目标网站发送的数据包进行加速。

在本发明实施例中,lsp服务器42部署在目标服务器与服务器41之间。lsp服务器42对目标服务器发送的数据包加速完成后,会将加速后的数据包发送给服务器41。

lsp服务器42为对网站数据进行加速的服务器,并且lsp服务器42是基于分层服务提供程序实现对数据的加速。所述lsp服务器42对目标服务器发送的数据包加速的过程属于现有技术,在本发明实施例中不做赘述。

服务器41接收到lsp服务器42加速后的数据包,将数据包转发给用户,用户通过服务器41转发的数据包,实现对目标网站内容的加载和访问。

当然为了进一步提高对目标网站的数据包的加载速度,缩短用户的等待时间,服务器41将ip地址和端口号的信息发送给lsp服务器42,还可以自身将用户的访问请求转发给目标服务器,并接收目标服务器发送的数据包,此时,相当于存在两条链路接收目标网站发送的数据包,因此可以进一步提高对目标网站的数据包的加载速度,并且如果出现lsp服务器42发生故障导致无法对目标网站加速的情况,则可以使用服务器41接收目标服务器发送的数据包,避免由于lsp服务器42故障无法使用户访问目标网站的情况出现。

服务器41将用户的访问请求转发给目标网站,及服务器41接收目标网站发送的数据包的过程均属于现有技术,在本发明实施例中不做赘述。

在本发明实施例中,服务器将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp服务器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。

实施例10:

服务器可以分为第一级服务器和第二级服务器,在上述实施例的基础上,本发明实施例中,图5为本发明实施例提供的一种数据传输系统的结构示意图,如图5所示,所述服务器41包括:第一级服务器51和至少一个第二级服务器52;其中,

第一级服务器51,用于接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站的ip地址和端口号的信息;将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器42;

lsp服务器42,用于对所述ip地址和端口号的所述目标网站发送的数据包进行加速,将加速后的数据包发送给所述第一级服务器51;

所述第一级服务器51,还用于接收所述lsp服务器42加速后的数据包,并将所述数据包转发给所述用户。

所述第一级服务器51,还用于根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,将所述ip地址和端口号的信息发送给lsp服务器42。

所述第一级服务器51,还用于根据所述目标网站的目标业务类型,预测剩余流量值;根据所述剩余流量值和获取到的当前带宽,确定接收所述剩余流量值的剩余接收时长;根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述第一级服务器51,还用于根据接收所述数据包的时间点,以及每个存储时间段与第二级服务器52的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标第二级服务器52;将所述数据包存储到所述目标第二级服务器52,并针对所述目标网站的所述ip地址和端口号,保存所述目标第二级服务器52的标识信息,及所述目标存储时间段;

所述至少一个第二级服务器52,用于接收并存储所述第一级服务器51发送的所述数据包。

所述第一级服务器51,具体用于根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

所述至少一个第二级服务器52,还用于将自身存储的所述目标网站的每个数据包发送给所述第一级服务器51;

所述第一级服务器51,还用于针对每个第二级服务器52每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;根据预设的数据发送策略,在所述至少一个第二级服务器52中选择一个第二级服务器52依次发送每个数据包组;

所述第二级服务器52,还用于向所述用户发送接收到的每个数据包组。

所述第一级服务器51,具体用于在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;根据为用户分配的访问所述目标网站的带宽,获取到的当前带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

所述第一级服务器51,还用于判断用户所在网络是否处于拥塞状态;如果是,根据所述剩余接收时长,所述发送速率及为用户分配的访问所述目标网站的带宽,确定丢包率;在每个数据包组中确定与所述目标网站无关的无用数据包;按照所述丢包率,丢弃每个数据包组中的无用数据包。

所述第一级服务器51,具体用于根据所述发送速率,为用户针对所述目标网站分配的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为用户分配的访问所述目标网站的带宽,s为发送速率。

实施例11:

在上述各实施例的基础上,本发明实施例还提供了一种服务器,如图6所示,包括处理器601、存储器602和收发机603;

所述处理器601,用于读取存储器602中的程序,执行下列过程:

控制所述收发机接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

所述处理器,还用于控制所述收发机将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

所述处理器,还用于控制所述收发机接收所述lsp服务器加速后的数据包,并控制所述收发机将所述数据包转发给所述用户。

基于同一发明构思,本发明实施例中还提供了一种服务器,由于上述服务器解决问题的原理与数据传输方法相似,因此上述电子设备的实施可以参见方法的实施,重复之处不再赘述。

在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器601代表的一个或多个处理器和存储器602代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。收发机603可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器601负责管理总线架构和通常的处理,存储器602可以存储处理器601在执行操作时所使用的数据。

可选的,处理器601可以是cpu(中央处埋器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或cpld(complexprogrammablelogicdevice,复杂可编程逻辑器件)。

所述处理器601,还用于根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,控制所述收发机603将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器。

所述处理器601,还用于根据所述目标网站的目标业务类型,预测剩余流量值;根据所述剩余流量值和获取到的链路带宽,确定接收所述剩余流量值的剩余接收时长;根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述处理器601,还用于根据接收所述数据包的时间点,以及每个存储时间段与存储节点的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标存储节点;将所述数据包存储到所述目标存储节点,并针对所述目标服务器的所述ip地址和端口号,保存所述目标存储节点的标识信息,及所述目标存储时间段。

所述处理器601,具体用于根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

所述处理器601,还用于针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;控制所述收发机603向用户依次发送每个数据包组。

所述处理器601,具体用于在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;根据确定的所述用户对应的上一次发送速率或为所述用户分配的访问所述目标网站的带宽,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

所述处理器601,还用于判断用户所在网络是否处于拥塞状态;如果是,根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率;在每个数据包组中确定与所述目标网站无关的无用数据包;按照所述丢包率,丢弃每个数据包组中的无用数据包。

所述处理器601,具体用于根据所述发送速率,为所述用户分配的访问所述目标网站的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为所述用户分配的访问所述目标网站的带宽,s为发送速率。

所述处理器601,具体用于根据确定为所述用户分配的访问目标网站的带宽,其中kx为为所述用户分配的访问目标网站的带宽,kx-1为上一次为所述用户分配的访问目标网站的带宽,b为获取到的链路带宽,s为发送速率。

在本发明实施例中,处理器执行存储器上所存放的程序时,实现将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp加速器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。。

实施例:

在上述各实施例的基础上,本发明实施例中还提供了一种电子设备,如图7所示,包括:处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信;

所述存储器703中存储有计算机程序,当所述程序被所述处理器701执行时,使得所述处理器701执行如下步骤:

接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。

本发明实施例提供的电子设备具体可以为服务器。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口702用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述处理器可以是通用处理器,包括中央处理器、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

在本发明实施例中,处理器执行存储器上所存放的程序时,实现将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp加速器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。。

实施例:

在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:

接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

接收所述lsp服务器加速后的数据包,并将所述数据包转发给所述用户。

上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(mo)等、光学存储器如cd、dvd、bd、hvd等、以及半导体存储器如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd)等。

在本发明实施例中提供的计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp加速器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。。

图8为本发明实施例提供的一种数据传输装置示意图,该装置包括:

第一接收模块81,用于接收用户发送的对目标网站的访问请求,其中所述访问请求中携带有所述目标网站对应的目标服务器的ip地址和端口号的信息;

第一发送模块82,用于将所述ip地址和端口号的信息发送给分层服务提供商lsp服务器,使lsp服务器对所述ip地址和端口号的所述目标服务器发送的数据包进行加速;

第二接收模块83,用于接收所述lsp服务器加速后的数据包;

第二发送模块84,用于将所述数据包转发给所述用户。

所述装置还包括:

判断模块,用于根据所述ip地址,及所述访问请求中携带的用户的源ip地址,判断所述目标网站所在网络与所述用户所在网络是否异网,如果是,触发所述发送模块82。

所述装置还包括:

确定保存模块,用于根据所述目标网站的目标业务类型,预测剩余流量值;根据所述剩余流量值和获取到的链路带宽,确定接收所述剩余流量值的剩余接收时长;根据接收到所述访问请求的时间,确定的存储间隔,以及所述剩余接收时长,确定每个存储时间段;

所述确定保存模块,还用于根据接收所述数据包的时间点,以及每个存储时间段与存储节点的对应关系,确定与所述时间点匹配的目标存储时间段对应的目标存储节点;将所述数据包存储到所述目标存储节点,并针对所述目标服务器的所述ip地址和端口号,保存所述目标存储节点的标识信息,及所述目标存储时间段。

所述确定保存模块,具体用于根据所述目标业务类型,及业务类型与系数值的对应关系,确定所述目标业务类型对应的目标系数值;根据所述剩余接收时长,所述目标系数值,及公式wdf=m*hc,确定存储间隔,其中所述wdf为存储间隔,m为所述目标系数值,hc为所述剩余接收时长。

所述确定保存模块,还用于针对每个目标存储节点每个目标存储时间段,将该目标存储时间段存储的所述目标网站的每个数据包进行排序;按照确定的发送速率,对排序后的每个数据包进行分组,并组合为对应的数据包组;向用户依次发送每个数据包组。

所述确定保存模块,具体用于在排序后的数据包中任意选择两个相邻的第一数据包和第二数据包,确定所述第一数据包和第二数据包中任一数据包的数据量,并确定接收所述第一数据包和第二数据包的接收时间差值;根据确定的所述用户对应的上一次发送速率或为所述用户分配的访问所述目标网站的带宽,获取到的链路带宽,所述接收时间差值,及所述任一数据包的数据量,确定发送速率。

所述装置还包括:

确定丢弃模块,用于判断用户所在网络是否处于拥塞状态;如果是,根据所述剩余接收时长,所述发送速率及为所述用户分配的访问所述目标网站的带宽,确定丢包率;在每个数据包组中确定与所述目标网站无关的无用数据包;按照所述丢包率,丢弃每个数据包组中的无用数据包。

所述确定丢弃模块,用于根据所述发送速率,为所述用户分配的访问所述目标网站的带宽及公式确定丢包率,其中所述f为丢包率,hc为所述剩余接收时长,k为为所述用户分配的访问所述目标网站的带宽,s为发送速率。

所述确定丢弃模块,具体用于根据确定为所述用户分配的访问目标网站的带宽,其中kx为为所述用户分配的访问目标网站的带宽,kx-1为上一次为所述用户分配的访问目标网站的带宽,b为获取到的链路带宽,s为发送速率。

在本发明实施例中服务器将用户的访问请求中携带的目标网站对应的目标服务器的ip地址和端口号的信息,发送给lsp服务器,使lsp服务器对ip地址和端口号的目标服务器发送的数据包进行加速,所以lsp加速器不需要在多个ip和多个端口确定哪一个是需要进行加速的,所以缩短了用户的等待时间,另外lsp服务器的数据转发能力远远超过路由器的数据转发能力,所以有效的避免了数据无法加速的问题。。

对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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