CN113301079A - 一种数据的获取方法、系统、计算设备及存储介质 - Google Patents

一种数据的获取方法、系统、计算设备及存储介质 Download PDF

Info

Publication number
CN113301079A
CN113301079A CN202010496624.2A CN202010496624A CN113301079A CN 113301079 A CN113301079 A CN 113301079A CN 202010496624 A CN202010496624 A CN 202010496624A CN 113301079 A CN113301079 A CN 113301079A
Authority
CN
China
Prior art keywords
link
available
network
access data
data
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
Application number
CN202010496624.2A
Other languages
English (en)
Other versions
CN113301079B (zh
Inventor
王晗宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010496624.2A priority Critical patent/CN113301079B/zh
Publication of CN113301079A publication Critical patent/CN113301079A/zh
Application granted granted Critical
Publication of CN113301079B publication Critical patent/CN113301079B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例提供一种数据的获取方法、系统、计算设备及存储介质,本申请实施例适用于计算设备,计算设备设置在第一网络外,该计算设备接收访问数据,根据可用第一链路发送访问数据,以从第一网络中获取响应数据。不存在可用第一链路,根据可用第二链路,发送访问数据,以从第一网络中获取响应数据。由于计算设备设置在第一网络外,且数据响应方提供第一网络,则在计算设备从第一网络中获取响应数据时,能够使得优先提供第一链路,并通过第一链路来获取数据,充分利用了第一链路,可以满足具有使用第一链路的需求。同时,在第一链路无法使用的情况下,还可以及时自动切换到其它链路上,如第二链路,来稳定地获取数据。

Description

一种数据的获取方法、系统、计算设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据的获取方法、系统、计算设备及存储介质。
背景技术
随着互联网高速发展,其服务类型和商业模式也变得多样化,越来越多的用户体会到互联网带来的便利,从而会通过互联网来实现生活所需的诉求,特别是,通过互联网进行线上娱乐,例如,线上视频直播娱乐、线上视频观影娱乐等等。
然而,随着用户的增多,势必会导致访问资源的数据量增大,从而带来巨大的访问压力。而用户对于网络服务体验的需求也越来越高。为了解决这些问题,会将资源分布在不同的服务节点上,使得用户能够从最近服务节点上获取到自己想要的访问资源。在分布资源到服务节点上时,需要持续对服务节点上资源进行更新,但会因为无法稳定实现资源更新,从而造成用户的体验感较差。
发明内容
本申请的多个方面提供一种数据的获取方法、系统、计算设备及存储介质,用以能够较为稳定的提供传输资源,提高用户的服务体验。
本申请实施例提供一种数据的获取方法,适用于计算设备,所述计算设备设置在第一网络外,所述方法包括:接收访问数据,确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取响应数据,所述第一网络是数据响应方提供的网络;当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络。
本申请实施例还提供一种数据的获取方法,包括:获取多个第一目的地址对应的多个第一链路,所述第一链路是指第一网络提供的链路;获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;从所述多个第一链路中选择出可用第一链路以及从所述多个第二链路中选择出可用第二链路;设置所述可用第一链路的传输优先级高于所述可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定所述访问数据对应的第一目的地址以及所述第一目的地址对应的可用第一链路,来进行访问数据的发送;所述接收设备设置在第一网络外,所述源设备设置在所述第一网络内,所述第一网络是所述源设备提供方提供的网络;所述第二网络是其它方提供的网络。
本申请实施例还提供一种数据的获取系统,包括:第一存储设备以及第二存储设备;所述第一存储设备,接收访问数据,若本地中没有所述访问数据对应所述响应数据,则将所述访问数据发送至所述第二存储设备;所述第二存储设备,接收所述访问数据,若本地中没有所述访问数据对应所述响应数据,则确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取所述响应数据,所述第二设备设置在第一网络外,所述第一网络是数据响应方提供的网络;当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络。
本申请实施例还提供一种数据的获取系统,包括:第一设备以及第二设备;所述第一设备,接收访问数据,则将所述访问数据发送至所述第二设备;所述第二设备,接收所述访问数据,确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;当确定存在所述可用第一链路,则将所述可用第一链路发送至所述第一设备,以使所述第一设备根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取所述响应数据,所述第二设备设置在第一网络外,所述第一网络是数据响应方提供的网络;当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则将所述可用第二链路发送至所述第一设备,以使所述第一设备则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络。
本申请实施例还提供一种计算设备,包括:存储器、处理器以及通信组件;所述计算设备设置在第一网络外;所述存储器,用于存储计算机程序;所述通信组件,用于接收访问数据;所述处理器,用于执行所述计算机程序,以用于:确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;所述通信组件,用于当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取响应数据,所述第一网络是数据响应方提供的网络;所述处理器,用于当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络;所述通信组件,用于根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据。
本申请实施例还提供一种计算设备,包括:存储器以及处理器;所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以用于:获取多个第一目的地址对应的多个第一链路,所述第一链路是指第一网络提供的链路;获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;从所述多个第一链路中选择出可用第一链路以及从所述多个第二链路中选择出可用第二链路;设置所述可用第一链路的传输优先级高于所述可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定所述访问数据对应的第一目的地址以及所述第一目的地址对应的可用第一链路,来进行访问数据的发送;所述接收设备设置在第一网络外,所述源设备设置在所述第一网络内,所述第一网络是所述源设备提供方提供的网络;所述第二网络是其它方提供的网络。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器实现上述方法中的步骤。
本申请实施例适用于计算设备,计算设备设置在第一网络外,该计算设备接收访问数据,确定存在对应的可用第一链路,根据可用第一链路发送访问数据,以从第一网络中获取响应数据。不存在可用第一链路,确定对应的可用第二链路,并根据可用第二链路,发送访问数据,以从第一网络中获取响应数据。其中第一链路是指第一网络提供的链路,第一网络是数据响应方提供的网络,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。由于计算设备设置在第一网络外,且数据响应方提供第一网络,则在计算设备从第一网络中获取响应数据时,能够使得优先提供第一链路,并通过第一链路来获取数据,充分利用了第一链路,可以满足具有使用第一链路的需求,并通过第一网络提供的第一链路能够加快获取数据的速度。同时,在第一链路无法使用的情况下,还可以及时自动切换到其它链路上,如第二链路,来稳定地获取数据,提高获取数据的稳定性,提高用户的体验感。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1A为本申请一示例性实施例的数据的获取系统的结构示意图;
图1B为本申请一示例性实施例的数据的获取系统的结构示意图;
图1C为本申请一示例性实施例的数据的获取系统的结构示意图;
图1D为本申请一示例性实施例的数据的获取系统的结构示意图;
图2为本申请一示例性实施例的数据的获取方法的流程示意图;
图3为本申请又一示例性实施的数据的获取方法的示意图;
图4为本申请一示例性实施例的转发节点的示意图;
图5为本申请一示例性实施例的数据的获取方法的流程示意图;
图6为本申请又一示例性实施例提供的数据的获取装置的结构示意图;
图7为本申请又一示例性实施例提供的数据的获取装置的结构示意图;
图8为本申请一示例性实施例提供的计算设备的结构示意图;
图9为本申请一示例性实施例提供的计算设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了降低设备的成本费用,在CDN(Content Delivery Network,内容分发网络)中,将网站内L2服务节点大规模地外迁到了网站外L2服务节点,即采用大量网站外的服务设备来作为服务节点,但随之而来的便是CDN回源网站内OSS(Object Storage Service,对象存储服务)的带宽结算费用也开始大幅增长。为了减少带宽结算费用降低成本,为网站外L2服务节点建设了一批的专线线路。
然而,在传统的CDN回源方案中是采用一个静态配置无法动态更改的回源方式,因此当回源线路异常无法及时切换,导致用户回源失败,使用户服务受损。且,也无法兼容上述专线线路。
本申请实施例适用于计算设备,计算设备设置在第一网络外,该计算设备接收访问数据,确定存在对应的可用第一链路,根据可用第一链路发送访问数据,以从第一网络中获取响应数据。不存在可用第一链路,确定对应的可用第二链路,并根据可用第二链路,发送访问数据,以从第一网络中获取响应数据。其中第一链路是指第一网络提供的链路,第一网络是数据响应方提供的网络,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。由于计算设备设置在第一网络外,且数据响应方提供第一网络,则在计算设备从第一网络中获取响应数据时,能够使得优先提供第一链路,并通过第一链路来获取数据,充分利用了第一链路,可以满足具有使用第一链路的需求,并通过第一网络提供的第一链路能够加快获取数据的速度。同时,在第一链路无法使用的情况下,还可以及时自动切换到其它链路上,如第二链路,来稳定地获取数据,提高获取数据的稳定性,提高用户的体验感。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1A为本申请一示例性实施例提供的一种数据的获取系统的结构示意图。如图1A所示,该获取系统100A可以包括:第一设备101以及第二设备102。
其中,第一设备101是指可以在网络虚拟环境中提供计算处理服务的设备,可以是指利用网络进行数据传输、处理以及数据获取的设备。在物理实现上,第一设备101可以是任何能够提供计算服务,响应服务请求,并进行数据处理以及获取的设备,例如可以是云服务器、云主机、虚拟中心、常规服务器等等。第一设备101的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
第二设备102是指可以在网络虚拟环境中提供计算处理服务的设备,可以是指利用网络进行数据传输以及数据调度的设备。在物理实现上,第二设备102可以是任何能够提供计算服务,响应服务请求,并进行数据调度的设备,例如可以是云服务器、云主机、虚拟中心、常规服务器等等。第二设备102的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
在本申请实施例中,第一设备101,设置在第一网络外,接收访问数据,则将访问数据发送至第二设备102。第二设备102,接收访问数据,确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路。当确定存在可用第一链路,则将可用第一链路发送至第一设备101,以使第一设备101根据可用第一链路发送访问数据,以从第一网络中获取响应数据,第一网络是数据响应方提供的网络。当不存在可用第一链路,确定访问数据对应的可用第二链路,则将可用第二链路发送至第一设备,以使第一设备则根据可用第二链路,发送访问数据,以从第一网络中获取响应数据,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。
另,该系统100A还包括:第三设备103,第三设备103是指可以在网络虚拟环境中提供计算处理服务的设备,可以是指利用网络提供数据的设备。在物理实现上,第三设备103可以是任何能够提供计算服务,响应服务请求,并进行数据提供的设备,例如可以是云服务器、云主机、虚拟中心、常规服务器等等。第三设备103的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
其中,第一设备101通过可用第一链路或可用第二链路将访问数据发送至第三设备103,该第三设备103也可以称为源站,或源设备,是具有访问资源的源头的设备。第三设备103接收到访问数据后,会获取响应数据,并将响应数据按照可用链路返回至第一设备101。此外,第二设备102,获取多个第一目的地址对应的多个第一链路,第一链路是指第一网络提供的链路;获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;从多个第一链路中选择出可用第一链路以及从多个第二链路中选择出可用第二链路;设置可用第一链路的传输优先级高于可用第二链路的传输优先级。
此外,基于该系统100A,本申请一示例性实施例还提供的一种数据的获取系统的结构示意图。如图1B所示,该获取系统100B可以包括:第一设备101、第二设备102、第三设备103以及第四设备104。
由于前文已经详细阐述过了第一设备101、第二设备102和第三设备103,此处就在赘述。仅说明:
第四设备104,也可以称为执行设备。第四设备104是指可以在网络虚拟环境中提供计算处理服务的设备,可以是指利用网络进行访问策略执行的设备。在物理实现上,第四设备104可以是任何能够提供计算服务,响应服务请求,并进行访问策略执行的设备,例如可以是云服务器、云主机、虚拟中心、常规服务器等等。第四设备104的构成主要包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似。
其中,第二设备102,确定第一目的地址与第一可用链路的对应关系;确定第二目的地址与第二可用链路的对应关系;将对应关系以及链路的优先级关系作为访问策略下发至执行设备,以使执行设备根据访问策略确定第一设备发送的访问数据的可用链路。
第四设备104接收到访问策略后,第一设备101在接收到访问数据,可以向第四设备104获取访问数据对应的可用链路,先获取可用第一链路,在可用第一链路不存在的情况下,再获取可用第二链路。从而使得第一设备101根据可用链路来获取响应数据。此时,第二设备102只进行访问策略的生成或规划,并下发给第四设备104,不再负责给第一设备101提供可用链路。
需要说明的是,无论对于系统100A还是系统100B而言,其中的第一设备101是可以存在多个的,第三设备103也是可以存在多个的。而对于第二设备102其本身可以是个服务集群,存在多个服务节点,其也可以是个单个服务器。
此外,基于该系统100A,本申请一示例性实施例还提供的一种数据的获取系统的结构示意图。如图1C所示,该获取系统100C可以包括:第一存储设备106以及第二存储设备(即上述第一设备101)。
由于前文已经详细阐述过了第一设备101,此处就在赘述。另第一存储设备106架构与第一设备101构架类似,此处也不再赘述。
在本申请实施例中,第一存储设备106,接收访问数据,若本地中没有访问数据对应响应数据,则将访问数据发送至第二存储设备;第二存储设备,接收访问数据,若本地中没有访问数据对应响应数据,则确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路;当确定存在可用第一链路,则根据可用第一链路发送访问数据,以获取响应数据;当不存在可用第一链路,确定访问数据对应的可用第二链路,则根据可用第二链路,发送访问数据,以获取响应数据,第二链路是指由第二网络提供的链路。
另,该系统100C还包括:第三设备103,其功能与系统100A中相同,此处就不再赘述。
其中,该系统100C还包括:访问设备105。访问设备105可以是有一定计算能力的设备,可以实现向第一存储设备106发送访问数据的功能,并从第一存储设备106获取到响应数据。访问设备105的基本结构可以包括:至少一个处理器。处理器的数量可以取决于具有一定计算能力装置的配置和类型。具有一定计算能力装置也可以包括存储器,该存储器可以为易失性的,例如RAM,也可以为非易失性的,例如只读存储器(Read-Only Memory,ROM)、闪存等,或者也可以同时包括两种类型。存储器内通常存储有操作系统(OperatingSystem,OS)、一个或多个应用程序,也可以存储有程序数据等。除了处理单元和存储器之外,具有一定计算能力装置还包括一些基本配置,例如网卡芯片、IO总线、显示组件以及一些外围设备等。可选地,一些外围设备可以包括,例如键盘、输入笔等。其它外围设备在本领域中是众所周知的,在此不做赘述。可选地,访问设备105可以为智能终端,例如,手机、台式电脑、笔记本、平板电脑等。
此外,基于该系统100C,本申请一示例性实施例还提供的一种数据的获取系统的结构示意图。如图1D所示,该获取系统100D除了包括系统100C中的各个设备,还可以包括:查询设备(即上述第四设备104,也可以称为执行设备)以及上述第二设备102。
其中,访问设备105,响应于用户指示,确定访问数据的目的名称,向查询设备发送目的名称;查询设备,接收目的名称,查询目的名称对应的第三目的地址以及可用第三链路,并发送第三目的地址以及可用第三链路至访问设备105;访问设备105,根据第三目的地址以及可用第三链路,将访问数据发送至第一存储设备106。
需要说明的是,该查询设备接收上述第二设备102下发的访问策略,从而使得查询设备根据该访问策略,来确定上述第三目的地址以及可用第三链路给访问设备105去访问。
其中,第一存储设备106,确定访问数据的目的名称,向查询设备发送目的名称;查询设备,接收目的名称,查询目的名称对应的第四目的地址,并发送第四目的地址以及可用第四链路至第一存储设备106;第一存储设备106,根据第四目的地址以及可用第四链路,将访问数据发送至第二存储设备。
需要说明的是,该查询设备接收上述第二设备102下发的访问策略,从而使得查询设备根据该访问策略,来确定上述第四目的地址以及可用第四链路给访问设备105去访问。
在本申请实施例的应用场景中,用户通过访问设备105,如电脑,向第一设备101,如存储服务器,也可以称为存储服务节点,发送访问数据,用于获取一个点播电影视频数据。用户通过访问设备105安装的浏览器发送访问数据。第一设备101,接收到访问数据后,会先在本地查询是否有缓存的点播电影视频数据。没有的话,则向第二设备102,如调度中心,发送该访问数据,或者该访问数据的域名,以使第二设备102能够获取到该域名,并确定域名对应的网络地址IP。第二设备102再根据网络地址IP确定对应链路,此时,第二设备102会先确定专线IP对应的专线链路即第一链路,然后将该专线链路发送至第一设备101。以使第一设备101将访问数据通过该专线链路发送至第三设备103,如源网站,来获取到点播电影视频数据。在没有专线链路时或者专线链路异常时,第二设备102可以再去确定对应的第二链路,如三方网络运营商(即其它方网络运营商)提供的网络链路给第一设备101。第一设备101根据该网络链路,从源网站获取点播电影视频数据。第一设备101将获取到的点播电影视频数据返回至访问设备105,使得访问设备105接收到该数据后,通过web界面展示给用户进行电影观看。
另,调度中心还可以创建访问策略,并将访问策略下发至第四设备104(即执行设备),如执行器。第一设备101可以将访问数据,或者该访问数据的域名,发送至执行器。以使执行器来确定域名对应的网络地址IP,再根据网络地址IP确定对应链路。此时,执行器按照上述描述的方式,先确定专线链路,在没有专线链路或者专线链路异常的情况下,在确定第二链路。执行器将可用链路发送至第一设备101,第一设备101根据该可用链路,从源网站获取点播电影视频数据,并返回至访问设备105。
为了能够提高用户的体验度,除了部署了第一设备101外,还可以部署第一存储设备106,如存储服务器,也可以称为存储服务节点。由此,用户通过访问设备105发送访问数据先到第一存储设备106。第一存储设备106,接收到访问数据后,会先在本地查询是否有缓存的点播电影视频数据。没有的话,则向第一设备101发送访问数据。从而使得第一设备101来获取点播电影视频数据,获取过程,前文已经阐述过了,此处就不再赘述(如,通过执行器来确定可用链路,或者自身直接获取可用链路)。仅说明,在第一设备101获取到点播电影视频数据后,先发送给第一存储设备106,第一存储设备106进行存储后,在发送至访问设备105。
需要说明的是,上述系统还可以应用在其它场景中,例如,视频直播、线上购物等等,此处就不再一一赘述。
在上述本实施例中,第一设备101、第二设备102、第三设备103、第四设备104、访问设备105以及第一存储设备106进行网络连接,该网络连接可以是无线连接。若第一设备101、第二设备102、第三设备103、第四设备104、访问设备105以及第一存储设备106是通信连接,该移动网络的网络制式可以为2G(GSM)、2.5G(GPRS)、3G(WCDMA、TD-SCDMA、CDMA2000、UTMS)、4G(LTE)、4G+(LTE+)、WiMax、5G等中的任意一种。
下面结合方法实施例,针对数据的获取过程进行详细说明。
图2为本申请一示例性实施例的数据的获取方法的流程示意图。本申请实施例提供的该方法200由计算设备执行,如,服务器或服务节点,计算设备设置在第一网络外。该方法200包括以下步骤:
201:接收访问数据,确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路。
202:当确定存在可用第一链路,则根据可用第一链路发送访问数据,以从第一网络中获取响应数据,第一网络是数据响应方提供的网络。
203:当不存在可用第一链路,确定访问数据对应的可用第二链路,则根据可用第二链路,发送访问数据,以从第一网络中获取响应数据,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。
需要说明的是,根据前文可知,该执行主体可以是设置在CDN网络中的,用于直接从源网站或源设备中获取资源的服务节点或服务器,从而缓存在自己本地中,以提供给用户资源。同时,该CDN网络还可以提供更多其它服务节点或服务器,这些其它服务节点可以用来从执行主体中获取资源,然后提供给用户。即服务节点构成一层节点,其它服务节点构成其它层节点,从而形成多层服务节点。无论是服务节点还是其它服务节点都可以是缓存服务器。但执行主体是不属于网站(即第一网络)内提供的设备,即不属于网站内提供的自主机房设备,可以由其它三方机器提供商提供,所以该执行主体不能使用网站内的自主创建的网络,即执行主体属于设置在网站外的设备,可以称为L2服务器、L2服务节点或L2缓存服务器等。其它服务节点可以称为L1服务器、L1服务节点或L1缓存服务器等。虽然执行主体是其它三方机器提供商提供,但是该执行主体由该提供商售卖给数据响应方的,即执行主体的计算设备与源设备均属于数据响应方。
以下针对上述步骤进行详细阐述:
201:接收访问数据,确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路。
其中,访问数据是指通过网络来获取到对应的资源的数据,例如,点播电影视频请求,可以以数据包的形式发送。
链路是指网络中数据的传输路径。
第一网络属于提供该方法200的提供方,也就是说,第一网络是自主创建的网络,即自主网络。第一链路,也可以称为专线链路是将执行主体,如L2缓存服务器,连接到自主网络的专属线路,或者专属路径。可以通过物理连接,将上述L2缓存服务器接入自主网络,比如,通过光纤网线,将L2缓存服务器接入自主网络的机房内,其中,L2缓存服务器在接入的过程中,还可以通过物理交换机等设备进行路径转发,实现将L2缓存服务器接入到自主网络内。由于第一网络是自主网络,显然地,利用自主网络建立的专线链路对应的数据传输费用,也可以称为宽带费用,小于第二网络(三方网络运营商)提供的第二链路对应的数据传输费用或者说是带宽费用,以从获取第一网络中的数据。从而在充分利用专线链路的同时,降低带宽费用。还需说明的是,对于专线链路而言,自主网络可以提供用于进入该自主网络的其链路接口,用于通过物理连接,来实现专线链路的打通。
基于此,例如,根据前文所述,在只有一层服务节点时,即L2缓存服务器。L2缓存服务器接收用户的电脑发送的访问数据,该访问数据可以是点播电影视频请求。L2缓存服务器接收到该请求后,确定是否存在该请求对应的专线链路。
在具有多层服务节点时,例如,具有L1缓存服务器以及L2缓存服务器。L1缓存服务器接收用户的电脑发送的访问数据,在其本地没有访问数据要获取的资源时,将访问数据发送至L2缓存服务器。则L2缓存服务器接收到访问数据进行处理,确定是否存在该请求对应的专线链路。
其中,确定是否存在访问数据对应的可用第一链路,包括:根据访问数据,确定访问数据对应的至少一个第一目的地址;根据至少一个第一目的地址确定对应的至少一个第一链路;根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,第一目的地址是指目的地的网络地址,且该网络地址与专线链路对应,也可以称为BGP(Border Gateway Protocol,边界网关协议)IP(Internet Protocol,网际互连协议)地址,或者专线IP地址(即与第一链路对应的地址),如源网站的专线IP地址。需要说明的是,对于BGP而言,自主网络可以通过该BGP边界网关协议,进行对应的路由选择,使得智能选择对应的链路进行数据响应和返回。
性能数据是指用于确定链路质量的数据,例如,链路的当前数据传输量(可以是当前带宽数据),以及链路的当前丢失数据情况(可以通过丢包率来确定)。
性能数据的获取方式可以包括:通过获取日志来获取性能数据。该日志可以是监测日志,日志中记录了这些性能数据。
例如,L2缓存服务器可以从探测服务器获取探测日志。该探测服务器用于测试各个L2缓存服务器到源网站之间的链路,并记录下各个链路的性能数据。测试方式可以是探测服务器通过各个链路发送数据包,以此来确定当前链路的质量,是否存在丢包的情况,丢包率是多少,以及响应时间是多少,还可以通过响应时间来预估当前带宽等等。
此外,还可以通过监测L2缓存服务器的回源情况,如,监测L2缓存服务器向源网站发送获取数据请求的情况,可以通过获取L2缓存服务器的回源日志来进行监测,该日志可以记录各个链路发送请求的数据量、响应数据量,从确定出传输量以及丢包率等;和/或监测源网站的响应情况,也可以通过获取源网站的流量日志来进行监测。
在L2缓存服务器获取到日志后,对日志中的数据进行日志处理,去除掉冗余数据、无效数据等。然后可以根据数据的类型进行数据汇总。如,以每个链路ID为基准,确定每个链路的发送数据量、响应数据量。在根据每个链路预定的总传输数据量,来确定当前各个链路的还有多少余量可以用来进行数据传输,以及当前链路的丢包率是多少等,从而通过权重算法来确定链路的质量。为了降低计算量,这些日志在获取到时,也可以是已经被处理过的日志,那么可以直接从日志中获取到性能数据。
需要说明的是,这些日志也可以通过其它方式获取,但是都是为了获取性能数据。
例如,根据前文所述,L2缓存服务器接收到点播电影视频请求,确定该请求对应的标识,根据该标识,如网址,确定该电影视频资源的源网站专线IP地址。并根据该IP地址,确定对应的专线链路。并通过各个日志中的性能数据,确定对应专线链路的质量,将质量好的作为可用专线链路。
需要说明的是,对于确定出来的IP地址可以是多个,也可以是一个。对于IP地址对应的链路也可以是多少个链路,也可以是一个链路,这些链路可以包括专线链路以及三方网络运营商提供的链路,也可以只包括专线链路,也可以只包括三方网络运营商提供的链路。L2缓存服务器中可以存储有多个链路,每个链路有对应的ID,以及对应的IP地址;也可以从日志中获取各个IP地址对应的链路,即日志中记录的各个链路都有对应的IP地址。
为了更好地获取到目的地地址,可以通过下述方式实现:
具体的,根据访问数据,确定访问数据对应的至少一个第一目的地址,包括:获取访问数据携带的目的名称;确定目的名称对应的至少一个第一目的地址。
其中,目的名称,也可以称为域名,是指要访问的目的名称,或者要访问的机组名称。L2缓存服务器可以在本地建立目的名称以及目的地址的对应关系,从而用于确定目的地址。在建立对应关系之前,L2缓存服务器可以接收OSS API(Application ProgrammingInterface,应用程序接口)Server(OSS接口服务器,也可以称为接口服务器)下发的源网站域名以及CDN网络中其它服务节点的域名。L2缓存服务器在接收到这些域名后,会从DNS(Domain Name System,域名系统)服务器处查询到各个域名对应的IP地址,并建立对应关系。应理解,每个域名可以对应多个IP地址,可以包括专线IP地址和/或第二链路对应的IP地址。
基于此,根据前文所述,L2缓存服务器接收到点播电影视频请求,获取该请求携带的域名,根据对应关系确定该域名对应的多个专线IP地址,从而根据上述方式确定对应的专线链路。除了上述通过综合方式来确定链路质量,为了简单以及更有效的方式来确定可用链路,还可以通过以下方式实现:
具体的,根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路,包括:根据至少一个第一链路的当前数据传输量,确定出至少一个第一链路中是否存在可用链路;在存在可用链路的情况下,将可用链路作为可用第一链路。
例如,根据前文所述,L2缓存服务器在确定出来请求对应的多个专线链路后,可以直接根据日志中获取到的对应链路的当前传输量,来直接确定对应链路的可用性。如,专线链路1:当前传输量80个数据包,预定传输量100个数据包,当前可用传输量为20个数据包。专线链路2:当前传输量70个数据包,预定传输量100个数据包,当前可用传输量为30个数据包。专线链路3:当前传输量50个数据包,预定传输量100个数据包,当前可用传输量为50个数据包。那么确定专线链路3作为可用链路。
需要说明的是,当前数据传输量不但可以确定对应链路是否可用,也可以确定其质量好不好,可以直接将当前可用传输量作为衡量标准。可用专线链路可以是多个,且多个专线链路的质量是相同的,此时可以将这多个专线链路作为可用链路,随机选择一个即可。也可以最终选择预置数量的可用链路,例如,上述例子中,可以选择两个可用链路的话,将链路按照质量进行排序,按照顺序选择前两个链路作为可用链路,再随机从这两个链路中选择一个,或者这两个中较好质量的链路作为最终链路,另一个作为备用链路,以备在前一个链路无法发送数据时,切换该备用链路。
除了通过传输量来确定是否可用链路,为了提高链路的质量,还可以通过数据丢失情况,来进一步选择更好的链路。
具体的,该方法200还可以包括:根据至少一个第一链路的当前丢失数据情况,从可用链路中确定出是否存在可用第一链路。
例如,根据前文所述,L2缓存服务器在根据对应链路的当前传输量确定出专线链路后,如,专线链路3:当前可用传输量为50个数据包,专线链路4:当前可用传输量为50个数据包。再根据丢包率来确定最终可用专线链路。如专线链路3的当前丢包率为1%。专线链路的当前丢包率为4%,则确定可用链路为专线链路3。
通过性能数据来确定可用链路可以实现负载均衡的效果,能够提高不同源网站的数据处理能力。
为了更加方便地确定可用链路,减少L2缓存服务器的计算资源的占用,保证L2缓存服务器的存储服务。还可以通过其它设备来确定可用第一链路,并告知L2缓存服务器。具体方式如下:
确定访问数据是否存在对应的可用第一链路,包括:向查询设备发送查询请求;通过查询设备确定是否存在访问数据对应的至少一个第一目的地址;通过查询设备确定存在第一目的地址,则通过查询设备确定是否存在至少一个第一目的地址确定对应的至少一个第一链路;通过查询设备根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,查询设备是指用于确定可用链路的设备,如调度中心,可以为一个服务集群,由多个服务器组成。查询设备可以建立上述域名与IP地址的对应关系,具体建立过程前文已经阐述过了,此处就不再赘述。由于查询设备可以从本地获取到多个链路,每个链路有对应的ID,以及对应的IP地址;也可以从日志中获取各个IP地址对应的链路,即日志中记录的各个链路都有对应的IP地址。那么查询设备就可以确定可用链路了。
例如,根据前文所述,L2缓存服务器接收到点播电影视频请求,获取该请求携带的域名,并将该域名发送至调度中心,调度中心确定域名对应的多个专线IP地址,并根据专线IP地址确定多个专线链路。再根据日志,确定多个专线链路中的可用专线链路。调度中心在将该可用专线链路(如,链路ID)以及对应的专线IP地址发送至L2缓存服务器,使得L2缓存服务器进行数据发送。
此外,当CDN网络中具有多层服务节点时,如L1缓存服务器以及L2缓存服务器。此时,L1缓存服务器在向L2缓存服务器发送访问数据前,也可以通过查询设备,查询到访问数据携带的域名对应的L2缓存服务器IP地址,L2缓存服务器IP地址可以是三方网络运营商的IP地址。然后也可以再通过查询设备确定该IP地址对应的链路(如,链路ID),并发送给L1缓存服务器。L1缓存服务器根据本地路由来确定对应链路以及L2缓存服务器IP地址,以及确定L1缓存服务器的源IP地址,并将访问数据通过该链路发送至L2缓存服务器IP地址。
为了更好地提高用户体验感,使得用户能够快速获取到其想要的资源,如电影资源。该方法200还包括:根据访问数据,确定访问数据所需的响应数据;在本地存储区域中查找是否存在响应数据;当不存在响应数据,执行确定是否存在访问数据对应的可用第一链路的步骤。
例如,根据前文所述,L2缓存服务器在接收到点播电影视频请求,确定该请求要获取的资源ID,如电影视频ID,并在本地存储区域查找该电影视频,如果查找到,则将该视频直接返回至用户,或者通过L1缓存服务器返回至用户。如果未查找到则确定专线链路,从源网站处获取该视频。
202:当确定存在可用第一链路,则根据可用第一链路发送访问数据,以从第一网络中获取响应数据,第一网络是数据响应方提供的网络。
例如,根据前文所述,L2缓存服务器在确定了可用专线链路后,也确定了该专线链路对应的目的专线IP地址,并通过其本地路由,从路由中选择对应的可用链路以及对应的专线IP地址,从而确定出L2缓存服务器的源IP地址。并基于此,L2缓存服务器就可以从该源IP地址,通过该专线链路,发送点播电影视频请求至目的专线IP地址。应理解,路由中记录了多个链路,每个链路具有对应的ID,以及对应的源IP地址以及目的IP地址。
为了提高L2缓存服务器发送数据的成功率,提高发送数据的速率以及提高用户体验感,在专线链路出现异常的情况下,需要通过切换第二链路,来实现数据发送。
具体的,该方法200还包括:当通过第一链路发送访问数据后,确定第一链路是否发生异常;当确定第一链路发生异常,则执行确定访问数据对应的可用第二链路的步骤。
异常的确定方法可以包括:在预定时间内,L2缓存服务器没有接收到响应数据,则确定该第一链路发生异常。此时,L2缓存服务器可以通过备用的可用第一链路进行数据发送,或者直接切换到第二链路进行数据发送。
203:当不存在可用第一链路,确定访问数据对应的可用第二链路,则根据可用第二链路,发送访问数据,以从第一网络中获取响应数据,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。
其中,第二链路是指第二网络提供的路径,如三方网络运营商提供的网络路径。三方网络运营商可以为多个。
例如,根据前文所述,L2缓存服务器接收到点播电影视频请求,未查找到对应的专线链路,或者专线链路不可用(包括异常情况),确定点播电影视频请求对应的三方网络运营商提供的链路。
其中,确定访问数据对应的可用第二链路,包括:根据访问数据,确定访问数据对应的至少一个第二目的地址;根据至少一个第二目的地址确定对应的至少一个第二链路;根据确定的至少一个第二链路的性能数据,确定可用第二链路。
其中,第二目的地址是指目的地的网络地址,且该网络地址与第二链路对应,如,源网站的三方网络运营商IP地址(即三方网络运营商的IP地址)。由于前文已经阐述过确定可用第一链路的具体方式,该方式与确定可用第二链路相似,此处就在赘述。仅说明,日志中包括专线链路以及第二链路的数据,从而确定出各个链路对应的性能数据。L2缓存服务器根据性能数据确定出可用第二链路。
为了更好地获取到目的地地址,可以通过下述方式实现:
根据访问数据,确定访问数据对应的至少一个第二目的地址,包括:获取访问数据携带的目的名称;确定目的名称对应的至少一个第二目的地址。
由于前文已经阐述过确定第一目的地址的具体方式,该方式与确定第二目的地址相似,此处就在赘述。仅说明,L2缓存服务器也会从DNS服务器处查询到各个域名对应的三方网络运营商IP地址,生成对应关系,即这个对应关系中不仅有域名与专线IP地址,还有域名与三方网络运营商IP地址。即一个域名可以对应多个IP地址。
为了更加方便地确定可用链路,减少L2缓存服务器的计算资源的占用,保证L2缓存服务器的存储服务。还可以通过其它设备来确定可用第二链路,并告知L2缓存服务器。具体方式如下:
确定访问数据对应的可用第二链路,包括:向查询设备发送查询请求;通过查询设备确定是否存在访问数据对应的至少一个第二目的地址;通过查询设备确定存在第二目的地址,通过查询设备确定是否存在至少一个第二目的地址确定对应的至少一个第二链路;通过查询设备根据确定的至少一个所述第二链路的性能数据,确定可用第二链路。
由于前文已经阐述过通过查询设备确定可用第一链路的具体方式,该方式与确定相似可用第二链路,此处就在赘述。仅说明,查询设备可以建立上述域名与IP地址(包括专线IP地址以及三方网络运营商IP地址)的对应关系,具体建立过程前文已经阐述过了,此处就不再赘述。查询设备可以从本地获取到多个链路,每个链路有对应的ID,以及对应的IP地址(包括专线IP地址以及三方网络运营商IP地址);也可以从日志中获取各个IP地址(包括专线IP地址以及三方网络运营商IP地址)对应的链路,即日志中记录的各个链路都有对应的IP地址(包括专线IP地址以及三方网络运营商IP地址)。那么查询设备就可以确定可用链路了。
在确定的可用第二链路为多个时,或者为多个不同三方网络运营商提供的链路时,可以随机选择其中一个第二链路作为可用链路,其它作为备用链路,在该可用链路异常时,切换到备用链路。为了提高通过可用第二链路发送数据的效率,和/或降低带宽成本等,可以采取以下方式来实现:
具体的,该方法200还包括:当确定的第二链路为至少两个的情况下,从第二链路中随机选择一个链路作为第二链路;或按照预定选择链路类型,从第二链路中选择对应类型的一个链路作为第二链路。
其中,该预定选择链路类型是能够快速发送数据的链路,即这种类型的链路具有较高的传输速率,可以属于多个不同三方网络运营商中的一个其它运营商提供的链路,即该运营商提供的链路普遍具有高传输速率。
或者,预定选择链路类型是能够提供较高性价比的链路,即该类型链路在传输速率上较好且同时带宽费用也不算太高,从而满足性价比需求。如,从多个确定的第二链路中,选择出性价较好的第二链路,作为可用第二链路,其它链路作为备用链路,以备该链路异常时,进行链路的切换。
例如,根据前文所述,L2缓存服务器从多个确定的第二链路中选择一个作为可用链路,或者选择性价比需要,选择出性价较好的第二链路,作为可用第二链路。
需要说明的是,根据前文可知,也可以是查询设备来进行选择,并告知L2缓存服务器,以使L2缓存服务器进行数据发送。
如果在可用第二链路均不可用,即出现异常时,为了能够保证资源获取的服务,还可以通过以下方式进行实现:
具体的,该方法200还包括:当通过第二链路发送访问数据后,确定第二链路是否发生异常;当确定第二链路发生异常,则将访问数据发送至转发节点,以使转发节点根据访问数据,重新确定访问数据对应的新链路,并发送访问数据。
其中,第二链路发生异常的确定方式可以为:在预定时间内,L2缓存服务器没有接收到响应数据,则确定该第二链路发生异常。
转发节点,也可以称为动态父节点,是指用来将访问数据转发至源网站的服务节点,如转发服务器。
例如,根据前文所述,如图4所示,L2缓存服务器在通过确定的可用第二链路(实线表示的链路)发送点播电影视频请求至源网站(即源站,如源站1)后,预定时间内,如1s内,未接收到响应数据,则确定该链路发生异常。则L2缓存服务器确定转发服务器(即转发节点)的IP地址以及对应的转发链路。L2缓存服务器根据确定转发链路,如图4中虚线(细线)所示,将点播电影视频请求发送至转发服务器。转发服务器在根据点播电影视频请求携带的域名,确定源网站的IP地址以及对应新链路(图4中虚线粗线所示)进行该点播电影视频请求的转发。应理解的是,转发服务器确定IP地址以及对应链路的方式与L2缓存服务器确定IP地址以及对应链路的方式相同此处就不再赘述。仅说明,转发服务器也可以是先确定专线链路,在确定第二链路。
需要说明的是,L2缓存服务器与转发节点的对应关系可以是预先设置好的。即L2缓存服务器本地可以预置有其对应的转发节点的IP地址、标识、对应的链路等等。也可以根据日志动态去选择当前转发节点,被选择的转发节点当前需要转发数据量较少,以及L2缓存服务器与该转发节点之间的链路质量较好等等,作为选择转发节点的考虑因素,从而最终通过权重算法来确定对应的转发节点,并确定转发节点IP地址以及对应的链路。其中,转发节点可以是多个,以供L2缓存服务器去选择。
此外,也可以通过查询设备,来确定转发节点、转发节点的IP地址、标识、对应的链路等等,确定方式与L2缓存服务器的确定方式相同,此处就不再赘述。查询设备接收L2缓存服务器发送的请求或消息,该请求或消息携带域名,以进行转发节点的确定,在确定转发节点以后,需要告知L2缓存服务器转发节点的IP地址、标识、对应的链路。以使L2缓存服务器发送访问数据至转发节点。
为了降低调度中心的计算资源的占用率,调度中心可以将上述确定可用第一链路的方式、确定第二链路的方式、链路切换的条件以及使用动态父节点的方式和条件等作为访问策略下发至执行设备,如执行服务器,或者也可以称为执行器。
执行器接收到该访问策略后等待缓存服务器的访问,从而根据访问策略确定对应的可用链路,并进行发送。
例如,如图3所示,根据前文所述,调度中心从接口服务器获取多个域名,并从DNS服务器处获取域名对应的多个IP地址(包括专线IP地址以及三方网络运营商IP地址),并建立上述对应关系,进行域名解析。调度中心从各个服务器本地或者监测设备本地获取到各个日志,并进行日志处理,将处理后的日志以及对应关系存储至其本地的数据中心,可以是数据库。调度中心根据处理后的日志,进行数据聚合,获取到各个链路的性能数据,并且确定各个链路对应的IP地址。从而形成域名、IP地址以及对应链路之间的对应关系,可以通过不同的存储表来存储这些对应关系。调度中心根据上述第二链路的确定方式对其进行了规划,生成第二链路的访问策略。调度中心根据上述动态父节点(即转发节点)的确定方式对其进行了规划,生成动态父节点的访问策略。调度中心根据上述第一链路的确定方式对其进行了规划,生成第一链路的访问策略。同时调度中心还在各个策略中确定了策略之间切换的条件,并将这些内容下发至执行器(如,执行服务器)。调度中心将第二链路的访问策略、动态父节点的访问策略以及策略之间的切换条件下发至执行器的执行组件1中,该执行组件1为内部pharos组件,用于确定第二链路以及动态父节点。调度中心将第一链路的访问策略以及策略之间的切换条件下发至执行器的执行组件2中,该执行组件2为ipharos API接口组件,用于确定第一链路。当L2缓存服务器需要确定访问数据的链路时,发送域名至该执行器,由执行器内部的组件来确定对应的链路,并返回至L2缓存服务器(即图4中的节点1和节点2),L2缓存服务器可以将查询到的访问策略存储在beacon模块中。L2缓存服务器在接收到访问数据时,可以先通过tengine模块来解析该数据,获取到该数据的内容,例如域名以及要获取的资源标识之类的,并通过资源标识在本地swift模块中查找是否有存储的对应资源。没有的话通过查询得到访问策略,在由swift模块发送消息给tproxy模块,由tproxy模块根据beacon模块中的访问策略,查找路由,确定L2缓存服务器源IP地址,并通过可用链路发送访问数据至源网站IP地址。
还需要说明的是,在CDN网络中,存在多层服务节点时,L1缓存服务器以及L2缓存服务器时。如图4所示,L1缓存服务器接收到访问数据后,也可以将域名发送至执行设备,进行链路的确定,这种实现方式与L2缓存服务器通过执行设备确定链路的方式相同,此处就在赘述。另外,图3中节点的bind模块是为了存储Local DNS的访问策略。Local DNS的访问策略是不具有专线链路的,可以正常执行非专线链路的访问,例如直接执行确定可用第二链路,来进行数据发送。由此,本申请实施例可以根据服务需求,使用不同的访问策略来进行数据访问。
应理解,在需要访问策略切换时,执行设备中各个组件之间进行切换,如在确定第二链路时,则由执行组件1切换到执行组件2,由执行组件2来确定第二链路。为了保证L2缓存服务器访问域名对应的源站IP地址时,能够充分使用专线链路来进行访问,可以通过以下方式实现:
具体的,该方法200还包括:定期获取第一链路对应的待更新第一目的地址;确定待更新第一目的地址对应的待更新第一链路;对待更新第一链路进行更新。
例如,如图3所示,根据前文所述,L2缓存服务器接收接口服务器下发的第一链路对应的IP,即专线IP地址作为待更新第一目的地址。L2缓存服务器将接收到的专线IP地址更新到其本地路由中,由本地路由确定该专线IP地址对应的专线链路作为待更新第一链路以及源IP地址,并进行路由的更新。应理解,路由并不能决定可用链路,可以根据确定的可用链路,来执行发送。
需要说明的是,无论是针对查询设备还是L2缓存服务器,对于访问策略的规划和创建都是可以实施更新或定时更新的。也就是说,对于查询设备而言,执行设备可以实时或者定时接收到更新的访问策略。L2缓存服务器也可以实时或者定时更新本地的访问策略
另,还需要说明的是,无论是针对查询设备还是L2缓存服务器,在确定可用链路都可以出现以下情况,如,域名只有对应的专线IP地址,没有三方网络运营商IP地址。此时,无论是针对查询设备还是L2缓存服务器只需要指定L2缓存服务器通过该专线IP地址以及对应的专线链路来发送访问数据。如,域名只有对应的三方网络运营商IP地址,没有专线IP地址。此时,无论是针对查询设备还是L2缓存服务器只需要指定L2缓存服务器通过该三方网络运营商IP地址以及对应的三方网络运营商提供的链路来发送访问数据。当三方网络运营商提供的链路为多个时,可以进行链路选择,当三方网络运营商提供的链路为一个时,就根据这一个进行数据发送。
基于上述相同的发明构思,图5示出了本申请另一示例性实施例提供的又一种数据的获取方法的流程示意图。本申请实施例提供的该方法500由调度中心执行,如,调度服务器或调度集群,该方法500包括以下步骤:
501:获取多个第一目的地址对应的多个第一链路,第一链路是指第一网络提供的专线链路。
502:获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路。
503:从多个第一链路中选择出可用第一链路以及从多个第二链路中选择出可用第二链路。
504:设置可用第一链路的传输优先级高于可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定访问数据对应的第一目的地址以及第一目的地址对应的可用第一链路,来进行访问数据的发送,接收设备设置在第一网络外,源设备设置在第一网络内,第一网络是源设备提供方提供的网络;第二网络是其它方提供的网络。
由于前文已经详细阐述过步骤501-504的具体实施方式,此处就不再赘述。仅说明,步骤504中,优先级是表示先确定可用第一链路,在可用第一链路不可用的前提下,确定可用第二链路。接收设备是指前文方法200中所述的计算设备。
此外,该方法500还包括:获取目的名称以及与目的名称对应的第一目的地址,并建立目的名称与第一目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第一目的地址;获取目的名称以及与目的名称对应的第二目的地址,并建立目的名称与第二目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第二目的地址。
此外,该方法500还包括:确定第一目的地址与第一可用链路的对应关系;确定第二目的地址与所述第二可用链路的对应关系;将对应关系以及链路的优先级关系作为访问策略下发至执行设备,以使执行设备根据访问策略确定访问数据的可用链路。
其中,从多个第一链路中选择出可用第一链路,包括:基于多个第一链路的性能数据,从多个第一链路中选择出可用第一链路;从多个第二链路中选择出可用第二链路,包括:基于多个第二链路的性能数据,从多个第二链路中选择出可用第二链路。
此外,该方法500还包括:获取各个链路的日志,从日志中获取性能数据。
此外,该方法500还包括:在可用第一链路异常的情况下,选择对应的可用第二链路来进行访问数据的发送。
此外,该方法500还包括:在可用第二链路异常的情况下,设置将访问数据发送至转发节点,以使转发节点重新确定访问数据对应的新链路,并发送访问数据。
此外,该方法500还包括:获取多个第三目的地址对应的多个第三链路,第三链路是指由第二网络提供的链路;从多个第三链路中选择出可用第三链路,以使接收到的访问数据在访问分发设备的情况下,则直接确定访问数据对应的第三目的地址以及第三目的地址对应的可用第三链路,来进行访问数据的发送。
需要说明的是,第三目的地址是指前文中的三方网络运营商IP地址,即L1缓存服务器以L2缓存服务器作为目的地的IP地址。第三链路也是三方网络运营商提供的链路,也是指L1缓存服务器以L2缓存服务器作为目的地,由L1缓存服务器至L2缓存服务器之间的链路。
由于前文已经详细阐述过程上述步骤的具体实施方式,此处就不再赘述。另,本方法500未能详细描述的内容,还可以参照上述方法200中的各个步骤。
图6为本申请一示例性实施例提供的数据的获取装置的结构框架示意图。该装置600可以应用于计算设备中,例如,服务器或服务节点。计算设备设置在第一网络外。该装置600包括接收模块601、发送模块602以及确定模块603;以下针对各个模块的功能进行详细的阐述:
接收模块601,用于接收访问数据,确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路。
发送模块602,用于当确定存在可用第一链路,则根据可用第一链路发送访问数据,以从第一网络中获取响应数据,第一网络是数据响应方提供的网络。
确定模块603,用于当不存在可用第一链路,确定访问数据对应的可用第二链路,则根据可用第二链路,发送访问数据,以从第一网络中获取响应数据,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。
另,确定模块603,还用于根据访问数据,确定访问数据所需的响应数据;该装置600还包括:查找模块,用于在本地存储区域中查找是否存在响应数据;当不存在响应数据,执行确定是否存在访问数据对应的可用第一链路的步骤。
其中,接收模块601包括:第一确定单元,用于根据访问数据,确定访问数据对应的至少一个第一目的地址;根据至少一个第一目的地址确定对应的至少一个第一链路;根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,第一确定单元,用于根据至少一个第一链路的当前数据传输量,确定出至少一个第一链路中是否存在可用链路;在存在可用链路的情况下,将可用链路作为可用第一链路。
此外,确定模块603,还用于根据至少一个第一链路的当前丢失数据情况,从可用链路中确定出是否存在可用第一链路。
其中,第一确定单元,用于获取访问数据携带的目的名称;确定目的名称对应的至少一个第一目的地址。
其中,确定模块603,包括:第二确定单元,用于根据访问数据,确定访问数据对应的至少一个第二目的地址;根据至少一个第二目的地址确定对应的至少一个第二链路;根据确定的至少一个第二链路的性能数据,确定可用第二链路。
其中,第二确定单元,用于获取访问数据携带的目的名称;确定目的名称对应的至少一个第二目的地址。
其中,接收模块601包括:第一发送单元,用于向查询设备发送查询请求;第一确定单元,用于通过查询设备确定是否存在访问数据对应的至少一个第一目的地址;通过查询设备确定存在第一目的地址,则通过查询设备确定是否存在至少一个第一目的地址确定对应的至少一个第一链路;通过查询设备根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,确定模块603,包括:第二发送单元,用于向查询设备发送查询请求;第二确定单元,用于通过查询设备确定是否存在访问数据对应的至少一个第二目的地址;通过查询设备确定存在第二目的地址,通过查询设备确定是否存在至少一个第二目的地址确定对应的至少一个第二链路;通过查询设备根据确定的至少一个第二链路的性能数据,确定可用第二链路。
其中,确定模块603,还用于当通过第一链路发送访问数据后,确定第一链路是否发生异常;当确定第一链路发生异常,则执行确定访问数据对应的可用第二链路的步骤。
此外,该装置600还包括:选择模块,用于当确定的第二链路为至少两个的情况下,从第二链路中随机选择一个链路作为第二链路;或按照预定选择链路类型,从第二链路中选择对应类型的一个链路作为第二链路。
此外,确定模块603,还用于当通过第二链路发送访问数据后,确定第二链路是否发生异常;当确定第二链路发生异常,则将访问数据发送至转发节点,以使转发节点根据访问数据,重新确定访问数据对应的新链路,并发送访问数据。
此外,该装置600还包括:获取模块,用于定期获取第一链路对应的待更新第一目的地址;确定模块603,还用于确定待更新第一目的地址对应的待更新第一链路;对待更新第一链路进行更新。
计算设备属于CDN网络中的缓存节点设备。计算设备发送访问数据至CDN网络中的源设备,计算设备与所述源设备均属于数据响应方。
图7示出了本申请又一示例性实施例提供的又一种数据的获取装置的结构框架示意图。该装置700可以应用于调度中心执行,如,调度服务器或调度集群。该装置700包括:获取模块701、选择模块702以及设置模块703,以下针对各个模块的功能进行详细的阐述:
获取模块701,用于获取多个第一目的地址对应的多个第一链路,第一链路是指第一网络提供的链路。
获取模块701,用于获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路。
选择模块702,用于从多个第一链路中选择出可用第一链路以及从多个第二链路中选择出可用第二链路。
设置模块703,用于设置可用第一链路的传输优先级高于可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定访问数据对应的第一目的地址以及第一目的地址对应的可用第一链路,来进行访问数据的发送,接收设备设置在第一网络外,源设备设置在第一网络内,第一网络是源设备提供方提供的网络;第二网络是其它方提供的网络。
此外,该装置700还包括:创建模块,用于获取目的名称以及与目的名称对应的第一目的地址,并建立目的名称与第一目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第一目的地址;获取目的名称以及与目的名称对应的第二目的地址,并建立目的名称与第二目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第二目的地址。
此外,该装置700还包括:确定模块,用于确定第一目的地址与第一可用链路的对应关系;确定第二目的地址与所述第二可用链路的对应关系;下发模块,用于将对应关系以及链路的优先级关系作为访问策略下发至执行设备,以使执行设备根据访问策略确定访问数据的可用链路。
其中,选择模块702,用于基于多个第一链路的性能数据,从多个第一链路中选择出可用第一链路;基于多个第二链路的性能数据,从多个第二链路中选择出可用第二链路。
此外,获取模块701,还用于:获取各个链路的日志,从日志中获取性能数据。
此外,选择模块702,还用于:在可用第一链路异常的情况下,选择对应的可用第二链路来进行访问数据的发送。
此外,设置模块703,还用于在可用第二链路异常的情况下,设置将访问数据发送至转发节点,以使转发节点重新确定访问数据对应的新链路,并发送访问数据。
此外,获取模块701,还用于:获取多个第三目的地址对应的多个第三链路,第三链路是指由第二网络提供的链路;选择模块702,还用于从多个第三链路中选择出可用第三链路,以使接收到的访问数据在访问分发设备的情况下,则直接确定访问数据对应的第三目的地址以及第三目的地址对应的可用第三链路,来进行访问数据的发送。
需要说明的是,对于装置700未能提及的部分内容,可以参照上述装置600的内容。
以上描述了图6所示的获取装置600的内部功能和结构,在一个可能的设计中,图6所示的获取装置600的结构可实现为计算设备,如,服务器或服务节点。计算设备设置在第一网络外。如图8所示,该设备800可以包括:存储器801、处理器802以及通信组件803;
存储器801,用于存储计算机程序。
通信组件803,用于接收访问数据。
处理器802,用于执行计算机程序,以用于:确定是否存在访问数据对应的可用第一链路,第一链路是指第一网络提供的链路。
通信组件803,用于当确定存在可用第一链路,则根据可用第一链路发送访问数据,以从第一网络中获取响应数据,第一网络是数据响应方提供的网络。
处理器802,用于当不存在可用第一链路,确定访问数据对应的可用第二链路,第二链路是指由第二网络提供的链路,第二网络是其它方提供的网络。
通信组件803,用于根据可用第二链路,发送访问数据,以从第一网络中获取响应数据。
另,处理器802,还用于根据访问数据,确定访问数据所需的响应数据;在本地存储区域中查找是否存在响应数据;当不存在响应数据,执行确定是否存在访问数据对应的可用第一链路的步骤。
其中,处理器802,具体用于:根据访问数据,确定访问数据对应的至少一个第一目的地址;根据至少一个第一目的地址确定对应的至少一个第一链路;根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,处理器802,具体用于:根据至少一个第一链路的当前数据传输量,确定出至少一个第一链路中是否存在可用链路;在存在可用链路的情况下,将可用链路作为可用第一链路。
此外,处理器802,还用于:根据至少一个第一链路的当前丢失数据情况,从可用链路中确定出是否存在可用第一链路。
其中,处理器802,具体用于:获取访问数据携带的目的名称;确定目的名称对应的至少一个第一目的地址。
其中,处理器802,具体用于:根据访问数据,确定访问数据对应的至少一个第二目的地址;根据至少一个第二目的地址确定对应的至少一个第二链路;根据确定的至少一个第二链路的性能数据,确定可用第二链路。
其中,处理器802,具体用于:获取访问数据携带的目的名称;确定目的名称对应的至少一个第二目的地址。
其中,处理器802,具体用于:向查询设备发送查询请求;第一确定单元,用于通过查询设备确定是否存在访问数据对应的至少一个第一目的地址;通过查询设备确定存在第一目的地址,则通过查询设备确定是否存在至少一个第一目的地址确定对应的至少一个第一链路;通过查询设备根据确定的至少一个第一链路的性能数据,确定是否存在可用第一链路。
其中,处理器802,具体用于:向查询设备发送查询请求;第二确定单元,用于通过查询设备确定是否存在访问数据对应的至少一个第二目的地址;通过查询设备确定存在第二目的地址,通过查询设备确定是否存在至少一个第二目的地址确定对应的至少一个第二链路;通过查询设备根据确定的至少一个第二链路的性能数据,确定可用第二链路。
其中,处理器802,还用于:当通过第一链路发送访问数据后,确定第一链路是否发生异常;当确定第一链路发生异常,则执行确定访问数据对应的可用第二链路的步骤。
此外,处理器802,还用于:当确定的第二链路为至少两个的情况下,从第二链路中随机选择一个链路作为第二链路;或按照预定选择链路类型,从第二链路中选择对应类型的一个链路作为第二链路。
此外,处理器802,还用于:当通过第二链路发送访问数据后,确定第二链路是否发生异常;当确定第二链路发生异常,则将访问数据发送至转发节点,以使转发节点根据访问数据,重新确定访问数据对应的新链路,并发送访问数据。
此外,处理器802,还用于:定期获取第一链路对应的待更新第一目的地址;确定待更新第一目的地址对应的待更新第一链路;对待更新第一链路进行更新。
其中,计算设备属于CDN网络中的缓存节点设备。计算设备发送访问数据至CDN网络中的源设备,计算设备与源设备均属于数据响应方。另外,本发明实施例提供了一种计算机存储介质,计算机程序被一个或多个处理器执行时,致使一个或多个处理器实现图2方法实施例中数据的获取方法的步骤。
以上描述了图7所示的获取装置700的内部功能和结构,在一个可能的设计中,图7所示的获取装置700的结构可实现为计算设备,如,调度服务器或调度集群。如图9所示,该设备900可以包括:存储器901以及处理器902;
存储器901,用于存储计算机程序;
处理器902,用于执行计算机程序,以用于:获取多个第一目的地址对应的多个第一链路,所述第一链路是指第一网络提供的链路;获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;从多个第一链路中选择出可用第一链路以及从多个第二链路中选择出可用第二链路;设置可用第一链路的传输优先级高于可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定访问数据对应的第一目的地址以及第一目的地址对应的可用第一链路,来进行访问数据的发送,接收设备设置在第一网络外,源设备设置在第一网络内,第一网络是所述源设备提供方提供的网络,第二网络是其它方提供的网络。
此外,处理器902,还用于:获取目的名称以及与目的名称对应的第一目的地址,并建立目的名称与第一目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第一目的地址;获取目的名称以及与目的名称对应的第二目的地址,并建立目的名称与第二目的地址之间的对应关系,以使根据对应关系,确定访问数据携带的目的名称对应的第二目的地址。
此外,处理器902,还用于:确定第一目的地址与第一可用链路的对应关系;确定第二目的地址与所述第二可用链路的对应关系;将对应关系以及链路的优先级关系作为访问策略下发至执行设备,以使执行设备根据访问策略确定访问数据的可用链路。
其中,处理器902,具体用于:基于多个第一链路的性能数据,从多个第一链路中选择出可用第一链路;基于多个第二链路的性能数据,从多个第二链路中选择出可用第二链路。
此外,处理器902,还用于:获取各个链路的日志,从日志中获取性能数据。
此外,处理器902,还用于:在可用第一链路异常的情况下,选择对应的可用第二链路来进行访问数据的发送。
此外,处理器902,还用于:在可用第二链路异常的情况下,设置将访问数据发送至转发节点,以使转发节点重新确定访问数据对应的新链路,并发送访问数据。
此外,处理器902,还用于:获取多个第三目的地址对应的多个第三链路,第三链路是指由第二网络提供的链路;从多个第三链路中选择出可用第三链路,以使接收到的访问数据在访问分发设备的情况下,则直接确定访问数据对应的第三目的地址以及第三目的地址对应的可用第三链路,来进行访问数据的发送。
需要说明的是,对于该设备900未能提及的部分内容,可以参照上述设备800的内容。
另外,本发明实施例提供了一种计算机存储介质,计算机程序被一个或多个处理器执行时,致使一个或多个处理器实现图5方法实施例中数据的获取方法的步骤。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如201、202、203等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程多媒体数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程多媒体数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程多媒体数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程多媒体数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (33)

1.一种数据的获取方法,其特征在于,适用于计算设备,所述计算设备设置在第一网络外,所述方法包括:
接收访问数据,确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;
当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取响应数据,所述第一网络是数据响应方提供的网络;
当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路,所述第二网络是其它方提供的网络。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述访问数据,确定所述访问数据所需的响应数据;
在本地存储区域中查找是否存在所述响应数据;
当不存在所述响应数据,执行所述确定是否存在所述访问数据对应的可用第一链路的步骤。
3.根据权利要求1所述的方法,其特征在于,所述确定是否存在所述访问数据对应的可用第一链路,包括:
根据所述访问数据,确定所述访问数据对应的至少一个第一目的地址;
根据至少一个所述第一目的地址确定对应的至少一个所述第一链路;
根据确定的至少一个所述第一链路的性能数据,确定是否存在所述可用第一链路。
4.根据权利要求3所述的方法,其特征在于,所述根据确定的至少一个所述第一链路的性能数据,确定是否存在所述可用第一链路,包括:
根据至少一个所述第一链路的当前数据传输量,确定出至少一个第一链路中是否存在可用链路;
在存在可用链路的情况下,将所述可用链路作为所述可用第一链路。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
根据至少一个所述第一链路的当前丢失数据情况,从所述可用链路中确定出是否存在可用第一链路。
6.根据权利要求3所述的方法,其特征在于,所述根据所述访问数据,确定所述访问数据对应的至少一个第一目的地址,包括:
获取所述访问数据携带的目的名称;
确定所述目的名称对应的至少一个所述第一目的地址。
7.根据权利要求1所述的方法,其特征在于,所述确定所述访问数据对应的可用第二链路,包括:
根据所述访问数据,确定所述访问数据对应的至少一个第二目的地址;
根据至少一个所述第二目的地址确定对应的至少一个所述第二链路;
根据确定的至少一个所述第二链路的性能数据,确定所述可用第二链路。
8.根据权利要求7所述的方法,其特征在于,所述根据所述访问数据,确定所述访问数据对应的至少一个第二目的地址,包括:
获取所述访问数据携带的目的名称;
确定所述目的名称对应的至少一个所述第二目的地址。
9.根据权利要求1所述的方法,其特征在于,所述确定所述访问数据是否存在对应的可用第一链路,包括:
向查询设备发送查询请求;
通过查询设备确定是否存在所述访问数据对应的至少一个第一目的地址;
通过查询设备确定存在第一目的地址,则通过查询设备确定是否存在至少一个所述第一目的地址确定对应的至少一个所述第一链路;
通过查询设备根据确定的至少一个所述第一链路的性能数据,确定是否存在所述可用第一链路。
10.根据权利要求1所述的方法,其特征在于,所述确定所述访问数据对应的可用第二链路,包括:
向查询设备发送查询请求;
通过查询设备确定是否存在所述访问数据对应的至少一个第二目的地址;
通过查询设备确定存在所述第二目的地址,通过查询设备确定是否存在至少一个所述第二目的地址确定对应的至少一个所述第二链路;
通过查询设备根据确定的至少一个所述第二链路的性能数据,确定所述可用第二链路。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当通过所述第一链路发送所述访问数据后,确定所述第一链路是否发生异常;
当确定所述第一链路发生异常,则执行所述确定所述访问数据对应的可用第二链路的步骤。
12.根据权利要求1或11所述的方法,其特征在于,所述方法还包括:
当确定的所述第二链路为至少两个的情况下,从所述第二链路中随机选择一个链路作为第二链路;或
按照预定选择链路类型,从所述第二链路中选择对应类型的一个链路作为第二链路。
13.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当通过所述第二链路发送所述访问数据后,确定所述第二链路是否发生异常;
当确定所述第二链路发生异常,则将所述访问数据发送至转发节点,以使所述转发节点根据所述访问数据,重新确定所述访问数据对应的新链路,并发送所述访问数据。
14.根据权利要求1所述的方法,其特征在于,所述方法还包括:
定期获取所述第一链路对应的待更新第一目的地址;
确定所述待更新第一目的地址对应的待更新第一链路;
对所述待更新第一链路进行更新。
15.根据权利要求1所述的方法,其特征在于,所述计算设备属于CDN网络中的缓存节点设备。
16.根据权利要求15所述的方法,其特征在于,所述计算设备发送所述访问数据至所述CDN网络中的源设备,所述计算设备与所述源设备均属于所述数据响应方。
17.一种数据的获取方法,其特征在于,包括:
获取多个第一目的地址对应的多个第一链路,所述第一链路是指第一网络提供的链路;
获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;
从所述多个第一链路中选择出可用第一链路以及从所述多个第二链路中选择出可用第二链路;
设置所述可用第一链路的传输优先级高于所述可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定所述访问数据对应的第一目的地址以及所述第一目的地址对应的可用第一链路,来进行访问数据的发送,所述接收设备设置在第一网络外,所述源设备设置在所述第一网络内,所述第一网络是所述源设备提供方提供的网络,所述第二网络是其它方提供的网络。
18.根据权利要求17所述的方法,其特征在于,所述方法还包括:
获取目的名称以及与目的名称对应的第一目的地址,并建立所述目的名称与第一目的地址之间的对应关系,以使根据所述对应关系,确定所述访问数据携带的目的名称对应的第一目的地址;
获取所述目的名称以及与目的名称对应的第二目的地址,并建立所述目的名称与第二目的地址之间的对应关系,以使根据所述对应关系,确定所述访问数据携带的目的名称对应的第二目的地址。
19.根据权利要求17或18所述的方法,其特征在于,所述方法还包括:
确定所述第一目的地址与所述第一可用链路的对应关系;
确定所述第二目的地址与所述第二可用链路的对应关系;
将所述对应关系以及链路的优先级关系作为访问策略下发至执行设备,以使所述执行设备根据访问策略确定所述访问数据的可用链路。
20.根据权利要求17所述的方法,其特征在于,从所述多个第一链路中选择出可用第一链路,包括:
基于多个第一链路的性能数据,从所述多个第一链路中选择出可用第一链路;
从所述多个第二链路中选择出可用第二链路,包括:
基于多个第二链路的性能数据,从所述多个第二链路中选择出可用第二链路。
21.根据权利要求20所述的方法,其特征在于,所述方法还包括:
获取各个链路的日志,从所述日志中获取性能数据。
22.根据权利要求17所述的方法,其特征在于,所述方法还包括:
在所述可用第一链路异常的情况下,选择对应的所述可用第二链路来进行访问数据的发送。
23.根据权利要求17所述的方法,其特征在于,所述方法还包括:
在所述可用第二链路异常的情况下,设置将访问数据发送至转发节点,以使所述转发节点重新确定所述访问数据对应的新链路,并发送所述访问数据。
24.根据权利要求17所述的方法,其特征在于,所述方法还包括:
获取多个第三目的地址对应的多个第三链路,第三链路是指由第二网络提供的链路;
从所述多个第三链路中选择出可用第三链路,以使接收到的访问数据在访问分发设备的情况下,则直接确定所述访问数据对应的第三目的地址以及所述第三目的地址对应的可用第三链路,来进行访问数据的发送。
25.一种数据的获取系统,包括:第一存储设备以及第二存储设备;
所述第一存储设备,接收访问数据,若本地中没有所述访问数据对应所述响应数据,则将所述访问数据发送至所述第二存储设备;
所述第二存储设备,接收所述访问数据,若本地中没有所述访问数据对应所述响应数据,则确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;
当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取所述响应数据,所述第二设备设置在第一网络外,所述第一网络是数据响应方提供的网络;
当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络。
26.根据权利要求25所述的系统,其特征在于,所述系统还包括:访问设备以及查询设备;
所述访问设备,响应于用户指示,确定访问数据的目的名称,向所述查询设备发送所述目的名称;
所述查询设备,接收所述目的名称,查询所述目的名称对应的第三目的地址以及可用第三链路,并发送所述第三目的地址以及可用第三链路至所述访问设备;
所述访问设备,根据所述第三目的地址以及可用第三链路,将所述访问数据发送至所述第一存储设备。
27.根据权利要求25所述的系统,其特征在于,
所述第一存储设备,确定访问数据的目的名称,向所述查询设备发送所述目的名称;
所述查询设备,接收所述目的名称,查询所述目的名称对应的第四目的地址,并发送所述第四目的地址以及可用第四链路至所述第一存储设备;
所述第一存储设备,根据所述第四目的地址以及可用第四链路,将所述访问数据发送至所述第二存储设备。
28.一种数据的获取系统,包括:第一设备以及第二设备;
所述第一设备,接收访问数据,则将所述访问数据发送至所述第二设备;
所述第二设备,接收所述访问数据,确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;
当确定存在所述可用第一链路,则将所述可用第一链路发送至所述第一设备,以使所述第一设备根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取所述响应数据,所述第二设备设置在第一网络外,所述第一网络是数据响应方提供的网络;
当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,则将所述可用第二链路发送至所述第一设备,以使所述第一设备则根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络。
29.根据权利要求28所述的系统,其特征在于,
所述第二设备,获取多个第一目的地址对应的多个第一链路;
获取多个第二目的地址对应的多个第二链路;
从所述多个第一链路中选择出可用第一链路以及从所述多个第二链路中选择出可用第二链路;
设置所述可用第一链路的传输优先级高于所述可用第二链路的传输优先级。
30.根据权利要求28所述的系统,其特征在于,所述系统还包括:执行设备;
所述第二设备,确定所述第一目的地址与所述第一可用链路的对应关系;
确定所述第二目的地址与所述第二可用链路的对应关系;
将所述对应关系以及链路的优先级关系作为访问策略下发至所述执行设备,以使所述执行设备根据访问策略确定第一设备发送的所述访问数据的可用链路。
31.一种计算设备,包括:存储器、处理器以及通信组件;所述计算设备设置在第一网络外;
所述存储器,用于存储计算机程序;
所述通信组件,用于接收访问数据;
所述处理器,用于执行所述计算机程序,以用于:
确定是否存在所述访问数据对应的可用第一链路,所述第一链路是指第一网络提供的链路;
所述通信组件,用于当确定存在所述可用第一链路,则根据所述可用第一链路发送所述访问数据,以从所述第一网络中获取响应数据,所述第一网络是数据响应方提供的网络;
所述处理器,用于当不存在所述可用第一链路,确定所述访问数据对应的可用第二链路,所述第二链路是指由第二网络提供的链路;所述第二网络是其它方提供的网络;
所述通信组件,用于根据所述可用第二链路,发送所述访问数据,以从所述第一网络中获取响应数据。
32.一种计算设备,包括:存储器以及处理器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序,以用于:
获取多个第一目的地址对应的多个第一链路,所述第一链路是指第一网络提供的链路;
获取多个第二目的地址对应的多个第二链路,第二链路是指由第二网络提供的链路;
从所述多个第一链路中选择出可用第一链路以及从所述多个第二链路中选择出可用第二链路;
设置所述可用第一链路的传输优先级高于所述可用第二链路的传输优先级,以使接收设备接收到的访问数据在访问源设备的情况下,优先确定所述访问数据对应的第一目的地址以及所述第一目的地址对应的可用第一链路,来进行访问数据的发送,所述接收设备设置在第一网络外,所述源设备设置在所述第一网络内,所述第一网络是所述源设备提供方提供的网络,第二网络是其它方提供的网络。
33.一种存储有计算机程序的计算机可读存储介质,其特征在于,计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器实现权利要求1-24任一项所述方法中的步骤。
CN202010496624.2A 2020-06-03 2020-06-03 一种数据的获取方法、系统、计算设备及存储介质 Active CN113301079B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010496624.2A CN113301079B (zh) 2020-06-03 2020-06-03 一种数据的获取方法、系统、计算设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010496624.2A CN113301079B (zh) 2020-06-03 2020-06-03 一种数据的获取方法、系统、计算设备及存储介质

Publications (2)

Publication Number Publication Date
CN113301079A true CN113301079A (zh) 2021-08-24
CN113301079B CN113301079B (zh) 2022-11-18

Family

ID=77318100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010496624.2A Active CN113301079B (zh) 2020-06-03 2020-06-03 一种数据的获取方法、系统、计算设备及存储介质

Country Status (1)

Country Link
CN (1) CN113301079B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422599A (zh) * 2021-12-22 2022-04-29 中国电信股份有限公司 数据的传输方法、系统、电子设备及可读介质
CN114499935A (zh) * 2021-12-17 2022-05-13 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质
CN114726859A (zh) * 2022-03-07 2022-07-08 网宿科技股份有限公司 回源请求的传输方法、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137006A (zh) * 2010-12-31 2011-07-27 华为技术有限公司 Cdn网络中的数据传输方法及设备
US20180295640A1 (en) * 2015-03-17 2018-10-11 Wangsu Science & Technology Co., Ltd. Method, device, and system for content delivery network-based mobile terminal traffic processing
US20180324105A1 (en) * 2015-05-08 2018-11-08 Ooma, Inc. Gateway Address Spoofing for Alternate Network Utilization
CN108965203A (zh) * 2017-05-18 2018-12-07 腾讯科技(深圳)有限公司 一种资源访问方法及服务器
CN109150576A (zh) * 2017-06-28 2019-01-04 华为技术有限公司 一种内容数据传输方法及设备
CN109769040A (zh) * 2018-12-14 2019-05-17 平安普惠企业管理有限公司 内容分发网络服务切换方法、装置、设备及存储介质
CN110581801A (zh) * 2018-06-08 2019-12-17 阿里巴巴集团控股有限公司 内容分发网络的网络调整方法以及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102137006A (zh) * 2010-12-31 2011-07-27 华为技术有限公司 Cdn网络中的数据传输方法及设备
US20180295640A1 (en) * 2015-03-17 2018-10-11 Wangsu Science & Technology Co., Ltd. Method, device, and system for content delivery network-based mobile terminal traffic processing
US20180324105A1 (en) * 2015-05-08 2018-11-08 Ooma, Inc. Gateway Address Spoofing for Alternate Network Utilization
CN108965203A (zh) * 2017-05-18 2018-12-07 腾讯科技(深圳)有限公司 一种资源访问方法及服务器
CN109150576A (zh) * 2017-06-28 2019-01-04 华为技术有限公司 一种内容数据传输方法及设备
CN110581801A (zh) * 2018-06-08 2019-12-17 阿里巴巴集团控股有限公司 内容分发网络的网络调整方法以及装置
CN109769040A (zh) * 2018-12-14 2019-05-17 平安普惠企业管理有限公司 内容分发网络服务切换方法、装置、设备及存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114499935A (zh) * 2021-12-17 2022-05-13 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质
CN114499935B (zh) * 2021-12-17 2023-08-29 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质
CN114422599A (zh) * 2021-12-22 2022-04-29 中国电信股份有限公司 数据的传输方法、系统、电子设备及可读介质
CN114422599B (zh) * 2021-12-22 2024-04-30 中国电信股份有限公司 数据的传输方法、系统、电子设备及可读介质
CN114726859A (zh) * 2022-03-07 2022-07-08 网宿科技股份有限公司 回源请求的传输方法、电子设备及存储介质

Also Published As

Publication number Publication date
CN113301079B (zh) 2022-11-18

Similar Documents

Publication Publication Date Title
CN112087312B (zh) 一种提供边缘服务的方法、装置和设备
US11563713B2 (en) Domain name server allocation method and apparatus
CN113301079B (zh) 一种数据的获取方法、系统、计算设备及存储介质
CN102281190B (zh) 负载均衡装置组网方法以及服务器、客户端接入方法
CN102137014A (zh) 资源管理方法、系统和资源管理器
CN102025630A (zh) 负载均衡方法及负载均衡系统
CN102868935A (zh) 在内容分发网络中响应多源的调度方法
CN112256495A (zh) 数据传输方法、装置、计算机设备及存储介质
CN108173976A (zh) 域名解析方法及装置
JP2023523473A (ja) ユーザプレーン機能の決定方法、情報提供方法、機器及び媒体
US20210337452A1 (en) Sharing geographically concentrated workload among neighboring mec hosts of multiple carriers
CN104348798A (zh) 一种分配网络的方法、装置、调度服务器和系统
CN110719273A (zh) 回源节点的确定方法、服务器及计算机可读存储介质
CN105681413A (zh) 一种cdn与isp协同处理数据的方法及装置
CN112953982A (zh) 一种服务处理的方法、服务配置的方法以及相关装置
CN105554125A (zh) 一种利用cdn实现网页适配的方法及其系统
EP4033719A1 (en) System for providing exact communication delay protection of request response for distributed service
CN113296924A (zh) 一种内容分发方法、设备、系统及存储介质
US20220279036A1 (en) Method, apparatus and system for processing an access request in a content delivery system
CN109873855A (zh) 一种基于区块链网络的资源获取方法和系统
CN110581873B (zh) 一种跨集群重定向方法及监控服务器
US20230275974A1 (en) Network functionality (nf) aware service provision based on service communication proxy (scp)
CN115665262A (zh) 一种请求处理方法、装置、电子设备及存储介质
CN116418724A (zh) 服务访问方法、装置及负载均衡系统
WO2019242459A1 (zh) 节点切换方法、网络节点、网络系统及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant