欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 数据收发方法、装置及数据收发系统独创技术48265字

数据收发方法、装置及数据收发系统

2021-02-01 10:40:25

数据收发方法、装置及数据收发系统

  技术领域

  本申请实施例涉及计算机技术领域,具体涉及数据收发方法、装置及数据收发系统。

  背景技术

  随着网络的迅速发展,万维网成为大量信息的载体,个人信息不可避免地被记录在网络上,访问过的网页,来往的电子邮件信息等都有可能泄露或被非法获取。通过网络渠道泄露个人隐私的事件,在当下网络生活中可谓形式多样,层出不穷。因此越来越多的人采用代理服务器访问互联网,借此来隐藏身份,保证安全。

  由于代理服务器和源站服务器之间可能存在地理位置距离远、归属不同的网络运营商、线路受损、线路过载等问题,用户与源站之间的通信会出现传输慢、响应慢、传输中断等现象。影响了用户的上网体验。

  现有技术在用户和源站之间部署加速网络系统,由网络加速节点自身来选择连接到源站的最优路径,从而降低路径探测数量,优化路径选取的质量。其实现方法是从加速节点入口探测加速节点出口的时延,以及从加速节点出口探测源站的时延。此方法在一定程度上加快了路径选取的效率,但该加速系统还存在时延的环节。比如加速节点出口到源站之间的速度探测,还有加速节点入口到加速节点出口之间,不仅要探测两者之间的速度,还要探测加速节点出口是否可用。这些因素都会影响加速效果。

  发明内容

  本申请实施例的目的在于提出了一种改进的数据收发方法、装置及数据收发系统,来解决以上背景技术部分提到的技术问题。

  第一方面,本申请实施例提供了一种应用于代理服务器的数据收发方法,该方法包括:接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,确定访问源站服务器对应的代理加速服务器;将访问请求数据发送到代理加速服务器;响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  在一些实施例中,基于地址信息,确定访问源站服务器对应的代理加速服务器,包括:基于地址信息,从预设的归属地查询库中,查找访问源站服务器的归属地;从预设的表征归属地和代理加速服务器的对应关系的映射表中查找归属地对应的代理加速服务器;若查找到归属地对应的代理加速服务器,将查找到的代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在一些实施例中,在从预设的表征归属地和代理加速服务器的对应关系的映射表中查找归属地对应的代理加速服务器之后,方法包括:若查找不到归属地对应的代理加速服务器,将默认代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在一些实施例中,方法还包括:响应于确定当前时间达到预设的更新时间,对归属地查询库和/或映射表进行更新。

  在一些实施例中,将访问请求数据发送到代理加速服务器,包括:将访问请求数据进行压缩,得到压缩后的访问请求数据;将压缩后的访问请求数据发送到代理加速服务器。

  在一些实施例中,将反馈数据发送至用户端,包括:响应于确定反馈数据为压缩后的反馈数据,对压缩后的反馈数据进行解压,得到解压后的反馈数据;将解压后的反馈数据发送至用户端。

  在一些实施例中,在基于地址信息,确定访问源站服务器对应的代理加速服务器之后,方法还包括:响应于接收到用户端发送的通信数据,将通信数据发送到代理加速服务器。

  在一些实施例中,将通信数据发送到代理加速服务器,包括:对通信数据进行压缩,得到压缩后的通信数据;将压缩后的通信数据发送到代理加速服务器。

  第二方面,本申请实施例提供了一种应用于代理加速服务器的数据收发方法,该方法包括:接收代理服务器发送的访问请求数据;从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,将访问请求数据发送至访问源站服务器;接收访问源站服务器发送的与访问请求数据对应的反馈数据;将反馈数据发送至代理服务器。

  在一些实施例中,在接收代理服务器发送的访问请求数据之后,方法还包括:响应于确定访问请求数据为压缩后的数据,将访问请求数据进行解压,得到解压后的访问请求数据。

  在一些实施例中,在从访问请求数据中解析出访问源站服务器的地址信息之后,方法还包括:响应于接收到代理服务器发送的通信数据,基于地址信息,将通信数据发送至访问源站服务器。

  在一些实施例中,将通信数据发送至访问源站服务器,包括:响应于确定通信数据为压缩后的通信数据,对压缩后的通信数据进行解压,得到解压后的通信数据;将解压后的通信数据发送至访问源站服务器。

  在一些实施例中,将反馈数据发送至代理服务器,包括:对反馈数据进行压缩,得到压缩后的反馈数据;将压缩后的反馈数据发送至代理服务器。

  第三方面,本申请实施例提供了一种数据收发系统,该系统包括:用户端、代理服务器、代理加速服务器和访问源站服务器;其中,用户端用于向代理服务器发送访问请求数据;代理服务器用于接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,确定访问源站服务器对应的代理加速服务器;将访问请求数据发送到代理加速服务器;代理加速服务器用于接收访问请求数据;从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,将访问请求数据发送至访问源站服务器;访问源站服务器用于接收代理加速服务器发送的访问请求数据,并将访问请求数据对应的反馈数据发送至代理加速服务器;代理加速服务器还用于接收反馈数据,并将反馈数据发送至代理服务器;代理服务器还用于接收反馈数据,并将反馈数据发送至用户端。

  第四方面,本申请实施例提供了一种应用于代理服务器的数据收发装置,该装置包括:第一解析模块,用于接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息;确定模块,用于基于地址信息,确定访问源站服务器对应的代理加速服务器;第一发送模块,用于将访问请求数据发送到代理加速服务器;第一接收模块,用于响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  第五方面,本申请实施例提供了一种应用于代理加速服务器的数据收发装置,该装置包括:第二接收模块,用于接收代理服务器发送的访问请求数据;第二解析模块,用于从访问请求数据中解析出访问源站服务器的地址信息;第三发送模块,用于基于地址信息,将访问请求数据发送至访问源站服务器;第三接收模块,用于接收访问源站服务器发送的与访问请求数据对应的反馈数据;第四发送模块,用于将反馈数据发送至代理服务器。

  第六方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面或第二方面中任一实现方式描述的方法。

  第七方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面或第二方面中任一实现方式描述的方法。

  本申请实施例提供的数据收发方法、装置及数据收发系统,通过在用户端和代理加速服务器之间设置代理服务器,代理服务器可以根据访问请求数据中包括的访问源站的地址信息,选择相应的代理加速服务器,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  附图说明

  通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

  图1是本申请可以应用于其中的示例性系统架构图;

  图2是根据本申请的应用于代理服务器的数据收发方法的一个实施例的流程图;

  图3是根据本申请的应用于代理服务器的数据收发方法的归属地查询库的一个示例性示意图;

  图4是根据本申请的应用于代理服务器的数据收发方法的归属地和代理加速服务器的映射表的一个示例性示意图;

  图5是根据本申请的应用于代理加速服务器的数据收发方法的一个实施例的流程图;

  图6是根据本申请的数据收发系统的一个实施例的时序图;

  图7是根据本申请的应用于代理服务器的数据收发装置的一个实施例的结构示意图;

  图8是根据本申请的应用于代理加速服务器的数据收发装置的一个实施例的结构示意图;

  图9是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

  具体实施方式

  下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

  需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

  图1示出了可以应用本申请实施例的数据收发方法的示例性系统架构100。

  如图1所示,系统架构100可以包括用户端101、网络102、代理服务器103、代理加速服务器104和访问源站服务器105。网络102用以在用户端101、代理服务器103、代理加速服务器104和访问源站服务器105之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

  用户可以使用用户端101通过网络102与代理服务器103交互,以接收或发送消息等。用户端101上可以安装有各种通讯客户端应用,例如搜索类应用、网页浏览器应用、购物类应用、即时通信工具等。

  用户端101可以是各种电子设备,包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。

  代理服务器103可以是采用各种代理方式的服务器,例如socks代理服务器,代理服务器103可以对用户端101上传的以及代理加速服务器104下发的各种数据进行处理并转发。例如对用户端发送的访问请求数据进行解析,根据解析结果确定代理加速服务器,并将访问请求数据发送至确定出的代理加速服务器。

  代理加速服务器104用于对某个归属地的访问源站服务器105进行加速,将用户请求的数据发送至访问源站服务器105,以及将访问源站服务器105反馈的数据发送至代理服务器103。

  代理加速服务器104的数量通常为多个,由代理服务器103从多个代理加速服务器104中选择用户访问的源站所对应的代理加速服务器。

  需要说明的是,本申请实施例所提供的两种数据收发方法可以由代理服务器103、代理加速服务器104分别执行,相应地,本申请实施例所提供的两种数据收发装置可以分别设置于代理服务器103、代理加速服务器104中。

  应该理解,图1中的用户端、网络、代理服务器、代理加速服务器和访问源站服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的用户端、网络、代理服务器、代理加速服务器和访问源站服务器。

  继续参考图2,其示出了根据本申请的应用于代理服务器的数据收发方法的一个实施例的流程200。该方法包括以下步骤:

  步骤201,接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息。

  在本实施例中,数据收发方法的执行主体(例如图1所示的代理服务器103)可以接收用户端(例如图1所示的用户端101)发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息。其中,访问请求数据用于请求在用户端与访问源站服务器之间建立通信链路,用户可以通过使用用户端与访问源站服务器进行交互。访问请求数据中可以包含访问源站服务器的地址信息,地址信息可以包括但不限于以下至少一种:IP地址、域名等。

  步骤202,基于地址信息,确定访问源站服务器对应的代理加速服务器。

  在本实施例中,所示执行主体可以基于地址信息,确定访问源站服务器(例如图1所示的访问源站服务器105)对应的代理加速服务器(例如图1所示的代理加速服务器104)。其中,代理加速服务器用于对访问源站服务器的访问进行加速。通常,访问源站服务器通过地址信息与代理加速服务器建立对应关系,例如根据预先建立的对应关系表确定地址信息对应的代理加速服务器。

  在本实施例的一些可选的实现方式中,步骤202可以如下执行:

  首先,基于地址信息,从预设的归属地查询库中,查找访问源站服务器的归属地。

  其中,归属地查询库用于表征访问源站服务器的地址信息与访问源站服务器的归属地的对应关系。作为示例,如图3所示,其示出了归属地查询库的一个示例性示意图,归属地查询库包括访问源站服务器的IP地址、IP归属地以及运营商的标识。

  然后,从预设的表征归属地和代理加速服务器的对应关系的映射表中查找归属地对应的代理加速服务器。

  其中,归属地查询库用于表征访问源站服务器的地址信息与访问源站服务器的归属地的对应关系。通常,归属地与代理加速服务器为一对多的关系,即确定了归属地,既可确定代理加速服务器。

  作为示例,如图4所示,其示出了归属地和代理加速服务器的映射表的一个示例性示意图,该映射表包括访问源站服务器的IP归属地、代理加速服务器的标识以及对应的运营商的标识。

  最后,若查找到归属地对应的代理加速服务器,将查找到的代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  本实现方式通过使用上述归属地查询库和映射表,可以快速、准确地确定访问源站服务器对应的代理加速服务器,通过维护归属地查询库和映射表,可以使代理服务器自动选择对应的代理加速服务器,提升整个链路的通信速度。

  在本实施例的一些可选的实现方式中,上述执行主体若查找不到归属地对应的代理加速服务器,将默认代理加速服务器确定为访问源站服务器对应的代理加速服务器。如果查询结果返回的是默认代理加速服务器,说明访问源站服务器对应的国家地区未部署代理加速服务器。

  通过使用默认代理加速服务器,可以在查找不到归属地对应的代理加速服务器的情况下,自动分配一个代理加速服务器,提高通信速度。

  在本实施例的一些可选的实现方式中,上述执行主体可以响应于确定当前时间达到预设的更新时间,对归属地查询库和/或映射表进行更新。其中,上述执行主体可以根据预设的更新周期确定当前是否达到更新时间。例如,更新周期为每天、每周等。上述执行主体可以在技术人员的手动操作下进行更新,也可以自动更新。通过设置更新时间,可以无需对归属地查询库和/或映射表进行实时更新,减少更新时延及带宽占用率,提高通信速度。

  步骤203,将访问请求数据发送到代理加速服务器。

  在本实施例中,上述执行主体可以将访问请求数据发送到代理加速服务器。具体地,上述执行主体可以将访问请求数据直接发送到代理加速服务器,也可以对访问请求数据进行预设处理后发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,上述执行主体可以首先将访问请求数据进行压缩,得到压缩后的访问请求数据。然后,上述执行主体可以将压缩后的访问请求数据发送到代理加速服务器。其中,对数据进行压缩的方法是目前广泛使用的公知技术,这里不再赘述。

  通过对访问请求数据进行压缩再发送,可以减小传输的数据量,有助于提高数据通信的速度。

  步骤204,响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  在本实施例中,上述执行主体可以响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  具体地,代理加速服务器可以进一步将访问请求数据发送至访问源站服务器,访问源站服务器对访问请求数据做出响应,将反馈数据发送给代理加速服务器,代理加速服务器再将访问请求数据发送给上述执行主体,上述执行主体再将访问请求数据发送给用户端。

  在本实施例的一些可选的实现方式中,上述执行主体可以按照如下步骤将反馈数据发送至用户端:

  首先,响应于确定反馈数据为压缩后的反馈数据,对压缩后的反馈数据进行解压,得到解压后的反馈数据。具体地,接收的反馈数据可以包括是否为压缩数据的标记,通过识别该标记,可以确定反馈数据是否需要解压缩。

  然后,将解压后的反馈数据发送至用户端。

  通过接收压缩的反馈数据再将解压后的反馈数据发送给用户端,可以减小传输的数据量,有助于提高数据通信的速度。

  在本实施例的一些可选的实现方式中,在步骤202之后,上述执行主体还可以响应于接收到用户端发送的通信数据,将通信数据发送到代理加速服务器。其中,通信数据为用户端与访问源站服务器之间传输的各种数据,例如用户端上传的数据、用户端与访问源站服务器实时通信的数据、用户端发送的各种指令等。

  本实现方式在用户端与访问源站服务器建立通信链路后,进一步使用代理服务器和代理加速服务器与访问源站服务器进行通信,可以进一步在通信的过程中,无需实时探测节点间的时延,提升整个链路的通信速度。

  在本实施例的一些可选的实现方式中,上述执行主体可以按照如下步骤将通信数据发送到代理加速服务器:

  首先,对通信数据进行压缩,得到压缩后的通信数据。

  然后,将压缩后的通信数据发送到代理加速服务器。

  通过对通信数据进行压缩再发送,可以减小传输的数据量,有助于提高数据通信的速度。

  本申请的上述实施例提供的方法,通过在用户端和代理加速服务器之间设置代理服务器,代理服务器可以根据访问请求数据中包括的访问源站的地址信息,选择相应的代理加速服务器,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  进一步参考图5,其示出了根据本申请的应用于代理加速服务器的数据收发方法的一个实施例的流程500。该方法包括以下步骤:

  步骤501,接收代理服务器发送的访问请求数据。

  在本实施例中,数据收发方法的执行主体(例如图1所示的代理加速服务器104)可以接收代理服务器(例如图1所示的代理服务器103)。其中,访问请求数据是由用户端(例如图1所示的用户端101)发送给代理服务器,再由代理服务器发送给上述执行主体的。关于访问请求数据的描述,请参考上述图2对应实施例,这里不再赘述。

  步骤502,从访问请求数据中解析出访问源站服务器的地址信息。

  在本实施例中,上述执行主体可以从访问请求数据中解析出访问源站服务器的地址信息。

  在本实施例中,步骤502与图2对应实施例中的步骤201中描述的解析方法基本一致,这里不再赘述。

  步骤503,基于地址信息,将访问请求数据发送至访问源站服务器。

  在本实施例中,上述执行主体可以基于地址信息,将访问请求数据发送至访问源站服务器(例如图1所示的访问源站服务器105)。

  步骤504,接收访问源站服务器发送的与访问请求数据对应的反馈数据。

  在本实施例中,上述执行主体可以接收访问源站服务器发送的与访问请求数据对应的反馈数据。具体地,访问源站服务器可以对访问请求数据做出响应,将反馈数据发送给上述执行主体。

  步骤505,将反馈数据发送至代理服务器。

  在本实施例中,上述执行主体可以将反馈数据发送至代理服务器。代理服务器进一步将反馈数据发送至用户端。

  在本实施例的一些可选的实现方式中,在不再501之后,上述执行主体还可以响应于确定访问请求数据为压缩后的数据,将访问请求数据进行解压,得到解压后的访问请求数据。具体地,接收的访问请求数据可以包括是否为压缩数据的标记,通过识别该标记,可以确定访问请求数据是否需要解压缩。

  通过接收压缩的访问请求数据再将解压后的访问请求数据发送给用户端,可以减小传输的数据量,有助于提高数据通信的速度。

  在本实施例的一些可选的实现方式中,在步骤502之后,上述执行主体还可以响应于接收到代理服务器发送的通信数据,基于地址信息,将通信数据发送至访问源站服务器。其中,通信数据为用户端与访问源站服务器之间传输的各种数据,例如用户端上传的数据、用户端与访问源站服务器实时通信的数据、用户端发送的各种指令等。

  本实现方式在用户端与访问源站服务器建立通信链路后,进一步使用代理服务器和代理加速服务器与访问源站服务器进行通信,可以进一步在通信的过程中,无需实时探测节点间的时延,提升整个链路的通信速度。

  在本实施例的一些可选的实现方式中,上述执行主体可以按照如下步骤将通信数据发送到访问源站服务器:

  首先,响应于确定通信数据为压缩后的通信数据,对压缩后的通信数据进行解压,得到解压后的通信数据。

  然后,将解压后的通信数据发送至访问源站服务器。

  通过接收压缩的通信数据再将解压后的通信数据发送给访问源站服务器,可以减小传输的数据量,有助于提高数据通信的速度。

  在本实施例的一些可选的实现方式中,步骤505可以如下执行:

  首先,对反馈数据进行压缩,得到压缩后的反馈数据。

  然后,将压缩后的反馈数据发送至代理服务器。

  通过对反馈数据进行压缩再发送,可以减小传输的数据量,有助于提高数据通信的速度。

  本申请的上述图5所示实施例提供的方法,通过在用户端和代理加速服务器之间设置代理服务器,代理加速服务器可以根据访问请求数据中包括的访问源站的地址信息,将访问请求数据发送至访问源站服务器并接收访问源站服务器发送的反馈数据,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  进一步参考图6,其示出了本申请的数据收发系统的一个实施例的时序图600。该数据收发系统包括:用户端(如图1所示的用户端101)、代理服务器(如图1所示的代理服务器103)、代理加速服务器(如图1所示的代理加速服务器104)和访问源站服务器(如图1所示的访问源站服务器105)。

  其中,用户端用于向代理服务器发送访问请求数据。访问源站服务器用于对用户端发送的访问请求数据进行响应并发送反馈数据。代理服务器用于执行上述图2对应实施例描述的方法,代理加速服务器用于执行上述图5对应实施例描述的方法。

  如图6所示,在步骤601中,用户端向代理服务器发送访问请求数据。

  其中,访问请求数据用于请求在用户端与访问源站服务器之间建立通信链路,用户可以通过使用用户端与访问源站服务器进行交互。访问请求数据中可以包含访问源站服务器的地址信息,地址信息可以包括但不限于以下至少一种:IP地址、域名等。

  在步骤602中,代理服务器接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息。

  在步骤603中,代理服务器基于地址信息,确定访问源站服务器对应的代理加速服务器。

  其中,代理加速服务器用于对访问源站服务器的访问进行加速。通常,访问源站服务器通过地址信息与代理加速服务器建立对应关系,例如根据预先建立的对应关系表确定地址信息对应的代理加速服务器。

  在步骤604中,代理服务器将访问请求数据发送到代理加速服务器。

  具体地,代理服务器可以将访问请求数据直接发送到代理加速服务器,也可以对访问请求数据进行预设处理后发送到代理加速服务器。

  在步骤605中,代理加速服务器接收访问请求数据。

  在步骤606中,代理加速服务器从访问请求数据中解析出访问源站服务器的地址信息。

  在步骤607中,代理加速服务器基于地址信息,将访问请求数据发送至访问源站服务器。

  在步骤608中,访问源站服务器接收代理加速服务器发送的访问请求数据,并将访问请求数据对应的反馈数据发送至代理加速服务器。

  具体地,访问源站服务器可以对访问请求数据做出响应,将反馈数据发送给上述执行主体。

  在步骤609中,代理加速服务器接收反馈数据,并将反馈数据发送至代理服务器。

  在步骤610中,代理服务器接收反馈数据,并将反馈数据发送至用户端。

  在本实施例的一些可选的实现方式中,代理服务器还用于:基于地址信息,从预设的归属地查询库中,查找访问源站服务器的归属地;从预设的表征归属地和代理加速服务器的对应关系的映射表中查找归属地对应的代理加速服务器;若查找到归属地对应的代理加速服务器,将查找到的代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在本实施例的一些可选的实现方式中,代理服务器还用于:若查找不到归属地对应的代理加速服务器,将默认代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在本实施例的一些可选的实现方式中,代理服务器还用于:响应于确定当前时间达到预设的更新时间,对归属地查询库和/或映射表进行更新。

  在本实施例的一些可选的实现方式中,代理服务器还用于:将访问请求数据进行压缩,得到压缩后的访问请求数据;将压缩后的访问请求数据发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,代理服务器还用于:响应于确定反馈数据为压缩后的反馈数据,对压缩后的反馈数据进行解压,得到解压后的反馈数据;将解压后的反馈数据发送至用户端。

  在本实施例的一些可选的实现方式中,代理服务器还用于:响应于接收到用户端发送的通信数据,将通信数据发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,代理服务器还用于:对通信数据进行压缩,得到压缩后的通信数据;将压缩后的通信数据发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,代理加速服务器还用于:响应于确定访问请求数据为压缩后的数据,将访问请求数据进行解压,得到解压后的访问请求数据。

  在本实施例的一些可选的实现方式中,代理加速服务器还用于:响应于接收到代理服务器发送的通信数据,基于地址信息,将通信数据发送至访问源站服务器。

  在本实施例的一些可选的实现方式中,代理加速服务器还用于:响应于确定通信数据为压缩后的通信数据,对压缩后的通信数据进行解压,得到解压后的通信数据;将解压后的通信数据发送至访问源站服务器。

  在本实施例的一些可选的实现方式中,代理加速服务器还用于:对反馈数据进行压缩,得到压缩后的反馈数据;将压缩后的反馈数据发送至代理服务器。

  本申请的上述实施例提供的系统,通过在用户端和代理加速服务器之间设置代理服务器,代理服务器可以根据访问请求数据中包括的访问源站的地址信息,选择相应的代理加速服务器,代理加速服务器根据访问请求数据与访问源站进行通信,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  进一步参考图7,作为对上述各图所示方法的实现,本申请提供了一种数据收发装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

  如图7所示,本实施例的数据收发装置700包括:第一解析模块701,用于接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息;确定模块702,用于基于地址信息,确定访问源站服务器对应的代理加速服务器;第一发送模块703,用于将访问请求数据发送到代理加速服务器;第一接收模块704,用于响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  在本实施例中,第一解析模块701可以接收用户端(例如图1所示的用户端101)发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息。其中,访问请求数据用于请求在用户端与访问源站服务器之间建立通信链路,用户可以通过使用用户端与访问源站服务器进行交互。访问请求数据中可以包含访问源站服务器的地址信息,地址信息可以包括但不限于以下至少一种:IP地址、域名等。

  在本实施例中,确定模块702可以基于地址信息,确定访问源站服务器(例如图1所示的访问源站服务器105)对应的代理加速服务器(例如图1所示的代理加速服务器104)。其中,代理加速服务器用于对访问源站服务器的访问进行加速。通常,访问源站服务器通过地址信息与代理加速服务器建立对应关系,例如根据预先建立的对应关系表确定地址信息对应的代理加速服务器。

  在本实施例中,第一发送模块703可以将访问请求数据发送到代理加速服务器。具体地,上述第一发送模块703可以将访问请求数据直接发送到代理加速服务器,也可以对访问请求数据进行预设处理后发送到代理加速服务器。

  在本实施例中,第一接收模块704可以响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  具体地,代理加速服务器可以进一步将访问请求数据发送至访问源站服务器,访问源站服务器对访问请求数据做出响应,将反馈数据发送给代理加速服务器,代理加速服务器再将访问请求数据发送给上述装置700,上述装置700再将访问请求数据发送给用户端。

  在本实施例的一些可选的实现方式中,确定模块可以包括:第一查找单元(图中未示出),用于基于地址信息,从预设的归属地查询库中,查找访问源站服务器的归属地;第二查找单元(图中未示出),用于从预设的表征归属地和代理加速服务器的对应关系的映射表中查找归属地对应的代理加速服务器;第一确定单元(图中未示出),用于若查找到归属地对应的代理加速服务器,将查找到的代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在本实施例的一些可选的实现方式中,确定模块还可以包括:第二确定单元(图中未示出),用于若查找不到归属地对应的代理加速服务器,将默认代理加速服务器确定为访问源站服务器对应的代理加速服务器。

  在本实施例的一些可选的实现方式中,装置还可以包括:更新模块(图中未示出),用于响应于确定当前时间达到预设的更新时间,对归属地查询库和/或映射表进行更新。

  在本实施例的一些可选的实现方式中,第一发送模块703可以包括:第一压缩单元(图中未示出),用于将访问请求数据进行压缩,得到压缩后的访问请求数据;第一发送单元(图中未示出),用于将压缩后的访问请求数据发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,第一接收模块704可以包括:第一解压单元(图中未示出),用于响应于确定反馈数据为压缩后的反馈数据,对压缩后的反馈数据进行解压,得到解压后的反馈数据;第二发送单元(图中未示出),用于将解压后的反馈数据发送至用户端。

  在本实施例的一些可选的实现方式中,装置还可以包括:第二发送模块(图中未示出),用于响应于接收到用户端发送的通信数据,将通信数据发送到代理加速服务器。

  在本实施例的一些可选的实现方式中,第二发送模块可以包括:第二压缩单元(图中未示出),用于对通信数据进行压缩,得到压缩后的通信数据;第三发送单元(图中未示出),用于将压缩后的通信数据发送到代理加速服务器。

  本申请的上述实施例提供的装置,通过在用户端和代理加速服务器之间设置代理服务器,代理服务器可以根据访问请求数据中包括的访问源站的地址信息,选择相应的代理加速服务器,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  进一步参考图8,作为对上述各图所示方法的实现,本申请提供了一种数据收发装置的一个实施例,该装置实施例与图5所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

  如图8所示,本实施例的数据收发装置800包括:第二接收模块801,用于接收代理服务器发送的访问请求数据;第二解析模块802,用于从访问请求数据中解析出访问源站服务器的地址信息;第三发送模块803,用于基于地址信息,将访问请求数据发送至访问源站服务器;第三接收模块804,用于接收访问源站服务器发送的与访问请求数据对应的反馈数据;第四发送模块805,用于将反馈数据发送至代理服务器。

  在本实施例中,第二接收模块801可以接收代理服务器(例如图1所示的代理服务器103)。其中,访问请求数据是由用户端(例如图1所示的用户端101)发送给代理服务器,再由代理服务器发送给上述装置800的。关于访问请求数据的描述,请参考上述图2对应实施例,这里不再赘述。

  在本实施例中,第二解析模块802可以从访问请求数据中解析出访问源站服务器的地址信息。

  在本实施例中,第二解析模块802与图7对应实施例中的关于第一解析模块701中描述的解析方法基本一致,这里不再赘述。

  在本实施例中,第三发送模块803可以基于地址信息,将访问请求数据发送至访问源站服务器(例如图1所示的访问源站服务器105)。

  在本实施例中,第三接收模块804可以接收访问源站服务器发送的与访问请求数据对应的反馈数据。具体地,访问源站服务器可以对访问请求数据做出响应,将反馈数据发送给上述第三接收模块804。

  在本实施例中,第四发送模块805可以将反馈数据发送至代理服务器。代理服务器进一步将反馈数据发送至用户端。

  在本实施例的一些可选的实现方式中,装置800还可以包括:解压模块(图中未示出),用于响应于确定访问请求数据为压缩后的数据,将访问请求数据进行解压,得到解压后的访问请求数据。

  在本实施例的一些可选的实现方式中,装置800还可以包括:第五发送模块(图中未示出),用于响应于接收到代理服务器发送的通信数据,基于地址信息,将通信数据发送至访问源站服务器。

  在本实施例的一些可选的实现方式中,第五发送模块包括:第二解压单元(图中未示出),用于响应于确定通信数据为压缩后的通信数据,对压缩后的通信数据进行解压,得到解压后的通信数据;第四发送单元(图中未示出),用于将解压后的通信数据发送至访问源站服务器。

  在本实施例的一些可选的实现方式中,第四发送模块805可以包括:第三压缩单元(图中未示出),用于对反馈数据进行压缩,得到压缩后的反馈数据;第五发送单元(图中未示出),用于将压缩后的反馈数据发送至代理服务器。

  本申请的上述实施例提供的装置,通过在用户端和代理加速服务器之间设置代理服务器,代理加速服务器可以根据访问请求数据中包括的访问源站的地址信息,将访问请求数据发送至访问源站服务器并接收访问源站服务器发送的反馈数据,从而无需实时探测服务器节点间的时延,提升整个链路的数据传输速度。

  下面参考图9,其示出了适于用来实现本申请实施例的电子设备的计算机系统900的结构示意图。图9示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

  如图9所示,计算机系统900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统900操作所需的各种程序和数据。CPU901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。

  以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。

  特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的方法中限定的上述功能。

  需要说明的是,本申请所述的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

  可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

  附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

  描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一解析模块、确定模块、第一发送模块和第一接收模块。其中,这些模块的名称在某种情况下并不构成对该单元本身的限定,例如,第一解析模块还可以被描述为“用于接收用户端发送的访问请求数据,并从所述访问请求数据中解析出访问源站服务器的地址信息的模块”。

  作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收用户端发送的访问请求数据,并从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,确定访问源站服务器对应的代理加速服务器;将访问请求数据发送到代理加速服务器;响应于接收到代理加速服务器发送的、来自访问源站服务器的反馈数据,将反馈数据发送至用户端。

  此外,当上述一个或者多个程序被该电子设备执行时,还可以使得该电子设备:接收代理服务器发送的访问请求数据;从访问请求数据中解析出访问源站服务器的地址信息;基于地址信息,将访问请求数据发送至访问源站服务器;接收访问源站服务器发送的与访问请求数据对应的反馈数据;将反馈数据发送至代理服务器。

  以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

《数据收发方法、装置及数据收发系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)