CN110213315B - 一种路径确定方法和装置 - Google Patents

一种路径确定方法和装置 Download PDF

Info

Publication number
CN110213315B
CN110213315B CN201810542560.8A CN201810542560A CN110213315B CN 110213315 B CN110213315 B CN 110213315B CN 201810542560 A CN201810542560 A CN 201810542560A CN 110213315 B CN110213315 B CN 110213315B
Authority
CN
China
Prior art keywords
node
service node
path information
content request
target service
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.)
Active
Application number
CN201810542560.8A
Other languages
English (en)
Other versions
CN110213315A (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.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co 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 Tencent Technology Shenzhen Co Ltd, Tencent Cloud Computing Beijing Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810542560.8A priority Critical patent/CN110213315B/zh
Publication of CN110213315A publication Critical patent/CN110213315A/zh
Application granted granted Critical
Publication of CN110213315B publication Critical patent/CN110213315B/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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种路径确定方法和装置,在该方法中,当节点集群中的目标服务节点获取内容请求,但本地没有缓存该内容请求对应的内容时,目标服务节点可以获取根据当前的网络质量参数所计算得到的路径信息,由于当前的网络质量参数是根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。该方法可以提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。

Description

一种路径确定方法和装置
技术领域
本申请涉及互联网领域,特别是涉及一种路径确定方法和装置。
背景技术
随着网络技术的发展,用户可以方便从网络中获取所需的内容,例如通过浏览网页获取网页所展示的信息等。保存内容的源服务器一般数量较少且位置固定,例如保存某一网站内容的源服务器只有一台,且设置在深圳的一个机房中。如果处于美国的用户通过终端直接从该源服务器获取该网站的内容,长距离的数据传输带来的时延、丢包率等会严重影响用户体验。
内容分发网络(Content Delivery Network,CDN)可以有效的为用户提供内容获取服务。针对保存内容的源服务器,在CND中可以在不同区域位置设置服务节点,这些服务节点上可以缓存有该源服务器所保存的内容,当得到用户请求获取该源服务器中内容的内容请求时,CDN可以将该内容请求转发到距离该用户网络位置较近的服务节点,使得用户可以就近从该服务节点获取所请求的内容。
然而,有些情况下,虽然用户的内容请求转发到了较近的服务节点,但是,该服务节点中并未缓存该内容请求所对应的内容,从而需要该服务节点从源服务器获取对应的内容以提供给用户。在一些可能的实现方式中,CDN所部属的服务节点与源服务器之间预先设置了静态的数据路径,故当服务节点需要根据用户的请求从源服务器获取对应内容时,服务节点可以通过该数据路径向源服务器发送内容请求和从源服务器获取内容。
这种通过静态的数据路径与源服务器进行数据交互的方式并未考虑实际的网络状况,即不论网络质量如何,服务节点都会通过该数据路径与源服务器进行数据交互,当该数据路径的网络质量不好例如拥堵、断开的情况下,服务节点将无法及时获取甚至不能获取对应的内容,从而影响了用户体验。
发明内容
为了解决上述技术问题,本申请提供了一种路径确定方法,该方法可以实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种路径确定方法,所述方法包括:
目标服务节点获取内容请求,所述目标服务节点处于节点集群中;
所述目标服务节点获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求。
第二方面,本申请实施例提供了一种路径确定装置,所述装置包括第一获取单元、第二获取单元和指示单元:
所述第一获取单元,用于获取内容请求,目标服务节点处于节点集群中;
所述第二获取单元,用于获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
所述指示单元,用于向所述路径信息所指示的下一跳节点转发所述内容请求。
第三方面,本申请实施例提供了一种路径确定方法,所述方法包括:
获取处于节点集群中目标服务节点发送的路径信息请求,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;
根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据当前的网络质量参数计算得到的;所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
向所述目标服务节点发送所述路径信息。
第四方面,本申请实施例提供了一种路径确定装置,所述装置包括第一获取单元、第二获取单元和发送单元:
所述第一获取单元,用于获取处于节点集群中目标服务节点发送的路径信息请求,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;
所述第二获取单元,用于根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据当前的网络质量参数计算得到的;所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
所述发送单元,用于向所述目标服务节点发送所述路径信息。
第五方面,本申请实施例提供了一种用于路径确定的设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行第一方面或第三方面任一项所述的路径确定方法。
第六方面,本申请实施例提供了一种路径确定系统,所述系统包括目标服务节点和路径服务器;
所述目标服务节点,用于获取内容请求,所述目标服务节点处于节点集群中;获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;向所述路径信息所指示的下一跳节点转发所述内容请求;
所述路径服务器,用于获取处于所述节点集群中目标服务节点发送的路径信息请求,所述路径服务器与所述节点集群中的服务节点有数据连接,且具有所述网络质量参数,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据所述网络质量参数计算得到的;向所述目标服务节点发送所述路径信息。
由上述技术方案可以看出,当节点集群中的目标服务节点获取内容请求,但本地没有缓存该内容请求对应的内容时,目标服务节点需要通过回源的方式从源服务器获取该内容请求所对应的内容。目标服务节点可以获取根据当前的网络质量参数所计算得到的路径信息,由于当前的网络质量参数可以是针对节点集群和源服务器根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。可见在需要回源的情况下,通过当前的网络质量参数灵活计算出的路径信息能够体现出当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径,目标服务节点可以根据该路径信息将内容请求灵活地转发给所指示的下一跳节点,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种路径确定方法的应用场景示例图;
图2为本申请实施例提供的一种路径确定方法的流程图;
图3为本申请实施例提供的一种路径确定方法的应用场景示例图;
图4为本申请实施例提供的一种获取路径信息的信令交互图;
图5为本申请实施例提供的一种基于UDP对数据进行压缩的示例图;
图6a为本申请实施例提供的一种路径确定方法的应用场景示例图;
图6b为本申请实施例提供的一种路径确定方法的应用场景示例图;
图7a为本申请实施例提供的一种路径确定方法的应用场景示例图;
图7b为本申请实施例提供的一种路径确定方法的应用场景示例图;
图8为本申请实施例提供的一种路径确定方法的流程图;
图9a为本申请实施例提供的一种路径确定装置的结构图;
图9b为本申请实施例提供的一种路径确定装置的结构图;
图10为本申请实施例提供的一种路径确定装置的结构图;
图11为本申请实施例提供的一种用于路径确定的设备的结构图;
图12为本申请实施例提供的一种用于路径确定的设备的结构图;
图13为本申请实施例提供的一种路径确定系统的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在传统的通过静态的数据路径与源服务器进行数据交互的方式中,不论网络质量如何,服务节点都会通过该静态的数据路径与源服务器进行数据交互,一旦该数据路径的网络质量不好例如拥堵、断开,服务节点通过该静态的路径将无法及时获取甚至不能获取对应的内容,从而影响了用户体验。
为此,本申请实施例提供一种路径确定方法,在需要回源的情况下,该方法通过可更新的网络质量参数能够实现动态计算路径信息,以保证用于转发内容请求的路径为目标服务节点与源服务器之间当前网络质量较优的路径,这样,目标服务节点根据该路径信息将内容请求灵活地转发给该路径信息所指示的下一跳节点,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
本申请实施例提供的路径确定方法可以应用于图1所示的场景中,该场景中可以包括终端101、源服务器102和节点集群103。节点集群103可以部署在终端101与源服务器102之间,节点集群103中的服务节点能够用来转发终端101发送的内容请求以及能够用来转发内容请求所对应的内容。
节点集群103中的服务节点是用来转发内容请求以及该内容请求对应内容的网络设备。
其中,节点集群103可以是由动态加速网络(Dynamic Site Accelerator,简称DSA)提供的遍布全球的优质服务节点构成的,节点集群103可以包括多个服务节点,可以如图1中服务节点1、……、服务节点n所示。其中,每个服务节点可以表示某个地点某个运营商对应的服务器,例如,服务节点1可以表示北京联通运营商对应的服务器、服务节点2可以表示香港电信运营商对应的服务器、……,服务节点n可以表示深圳电信运营商对应的服务器。
在该场景中,用户可以通过终端101发送请求获取源服务器102中内容的内容请求,若目标服务节点获取到该内容请求,例如图1中的服务节点2可以作为目标服务节点,由于该目标服务节点本地没有缓存该内容请求对应的内容时,目标服务节点需要通过回源的方式从源服务器102获取内容请求所对应的内容。
由于节点集群103中可能包括多个服务节点,在回源时,内容请求从当前目标服务节点到源服务器之间可能存在多条路径,在需要转发该内容请求期间,每条路径的网络质量可能有所不同,为了保证目标服务节点可以更快的将内容请求所对应的内容返回给用户,一般情况下,需要获取当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径。为此,目标服务节点可以获取根据当前的网络质量参数所计算得到的路径信息,由于当前的网络质量参数是可更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。
针对路径上的一个服务节点,该服务节点的下一跳节点是转发方向上下一个用来转发或处理内容请求的网络设备。
例如,目标服务节点获取的根据网络质量参数所计算得到的路径信息所标识的路径为图1所示的服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点,该路径信息标识的路径为服务节点2与源服务器之间在需要转发该内容请求期间的较优路径,根据该路径信息的指示,目标服务节点接收到内容请求后需要将该内容请求转发给服务节点3,即根据该路径信息的指示,针对目标服务节点,在目标服务节点向源服务器转发方向上的下一跳节点为服务节点3。
需要说明的是,图1所示的场景仅是一种示例,并不构成对本申请实施例应用场景的限定。
本申请实施例所提到的目标服务节点可以为节点集群中获取到内容请求且待确定出下一跳节点的一个服务节点。
内容请求可以是用户在需要获取源服务器中的内容时,用户通过终端发送的用于请求该内容的请求消息。
回源可以是获取到内容请求的目标服务节点由于某些原因而并未缓存该内容请求所对应的内容,使得目标服务节点需要根据计算出的路径信息的指示向源服务器发送内容请求,并从源服务器获取该内容请求对应内容的过程。
在本申请实施例中,目标服务节点并未缓存该内容请求所对应的内容可能包括以下两种情况。
其中,第一种情况可以是服务节点本地缓存内容请求所对应的内容具有一定的有效期,如果服务节点中缓存的内容超过有效期,则会将该内容从该服务节点的缓存中删除。因此,若目标服务节点获取到内容请求时,目标服务节点中缓存的与内容请求对应的内容已经过期,此时,该内容已经被从目标服务节点的缓存中删除,则目标服务节点中并为缓存该内容请求所对应的内容。
第二种情况可以是用户首次访问该源服务器所保存的内容。用户访问某个源服务器所保存的内容时,会将该内容缓存至节点集群103相应的服务节点中,以便后续再次访问该内容时可以直接从该服务节点中获取该内容,提高访问效率。如果用户首次访问该源服务器所保存的内容,此时,该内容还没有被缓存至节点集群103中相应的服务节点中,因此,处于节点集群103中的目标服务节点中尚未缓存该内容请求所对应的内容。
路径信息可以是用来标识目标服务节点与源服务器之间的路径,根据路径信息可以确定目标服务节点与源服务器之间的路径上包括了哪些节点、节点的网络位置以及转发顺序等。目标服务节点与源服务器之间的路径上包括的节点可以是服务节点,也可以是源服务器。
路径信息所标识的路径可以用来转发内容请求和内容请求对应的内容,一条路径上至少可以包括两个节点,每个节点可以是目标服务节点向源服务器转发方向上用来转发内容请求或者根据内容请求处理数据的网络设备。
例如,目标服务节点获取的路径信息所标识的路径为图1中所示的服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点,该路径信息表示的是在目标服务节点为服务节点2的情况下,目标服务节点与源服务器102之间的路径。该路径中包括了4个节点,其中,服务节点2、服务节点3和服务节点n为用来转发内容请求的网络设备,源服务器102为用来根据内容请求处理数据的网络设备。根据该路径信息可以确定下一跳节点是服务节点3以及服务节点3在网络中的位置,从而将内容请求转发至服务节点3。
路径信息所标识的路径至少可以包括两个节点,根据路径中所包括的节点个数的不同,下一跳节点可能是不同类型的节点。
当路径中仅包括两个节点时,即路径为目标服务节点——源服务器102,那么,对于目标服务节点来说,路径信息所指示的下一跳节点为源服务器102,此时,下一跳节点是根据内容请求处理数据的网络设备。
当路径中包括三个或三个以上节点时,例如,路径为图1所示的服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点,那么,对于目标服务节点来说,路径信息所指示的下一跳节点为服务节点3,此时,下一跳节点是用来转发内容请求的网络设备。
下面结合附图,对本申请实施例提供一种路径确定方法进行详细介绍,为了便于理解,请参见图2,图2为本申请实施例一种路径确定方法的流程图,该方法包括:
S201、目标服务节点获取内容请求。
为了转发内容请求的路径为目标服务节点与源服务器之间当前网络质量较优的路径,本实施例在终端101与源服务器103之间部署了节点集群103,节点集群103中的服务节点可以部署在国内、国外不同区域位置。其中,目标服务节点正是处于节点集群103中。由于内容请求所请求的内容未缓存在目标服务节点中,这就需要目标服务节点从源服务器获取内容请求所请求的内容,即回源。
在本实施例中,节点集群103实际上是一种虚拟网络,对于向节点集群103中的服务节点发送内容请求的网络设备例如边缘服务节点来说,该网络设备所知晓的是该网络设备向源服务器102发送内容请求,并不知晓该内容请求可能会被节点集群103中的服务节点转发。节点集群103仅位于源服务器102之前,在节点集群103和源服务器102可以没有其他网络设备。
S202、目标服务节点获取该目标服务节点与该内容请求所请求内容对应的源服务器之间的路径信息。
其中,路径信息可以为根据当前的网络质量参数计算得到,网络质量参数用于标识节点集群中服务节点间的网络质量和节点集群中服务节点与源服务器间的网络质量。
网络质量参数可以通过一定的网络质量检测方式获得,例如,可以通过节点集群中服务节点间相互拨测以及节点集群中服务节点与源服务器间相互拨测获得。
在本实施例中,网络质量参数可以是实时更新的,也可以是以预设周期进行更新的,这样,计算出的路径信息能够体现出当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径。
S203、目标服务节点向该路径信息所指示的下一跳节点转发该内容请求。
由于路径信息所标识的路径为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点可以根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。
例如,图1中所示的服务节点2为目标服务节点,该路径信息所标识的路径为服务节点2——服务节点3——服务节点n——源服务器102,则该路径信息所指示的下一跳节点为服务节点3,那么,目标服务节点将会向服务节点3转发该内容请求。
可以理解的是,根据路径中所包括的节点个数的不同,下一跳节点可能是不同类型的节点。例如下一跳节点可以是节点集群中的一个服务节点,节点集群中的服务节点是用来转发内容请求的网络设备;下一跳节点还可以是源服务器,源服务器是根据内容请求处理数据的网络设备。
有些情况下,在内容请求从目标服务节点向源服务器转发期间,集群中服务节点间的网络质量和节点集群中服务节点与源服务器间的网络质量可能比较稳定,目标服务节点获取的路径信息在整个回源期间都可以作为较优路径。
在这种情况下,为了减少计算量、提高回源效率,根据目标服务节点计算的路径信息所标识路径中的服务节点都可以根据该路径信息转发该内容请求。即目标服务节点获取该路径信息后,可以将该路径信息携带在内容请求中,S203的一种实现方式可以是:目标服务节点向该路径信息所指示的下一跳节点转发携带有该路径信息的内容请求,以便该路径信息所标识路径中的服务节点可以根据该路径信息转发该内容请求。
例如,S202获取的路径信息所标识的路径为服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点。根据该路径信息的指示可以确定下一跳节点为服务节点3,则服务节点2可以将该路径信息携带在内容请求中,并向服务节点3转发携带有该路径信息的内容请求。服务节点3在获取该内容请求后,根据该路径信息的指示,对于服务节点3来说,其下一跳节点为服务节点n,则服务节点3可以将该路径信息携带在内容请求中,并向服务节点n转发携带有该路径信息的内容请求。以此类推,服务节点n可以向源服务器102转发该内容请求。
有些情况下,集群中服务节点间的网络质量和节点集群中服务节点与源服务器间的网络质量可能波动比较大,例如某一条路径可能在第一时间段内网络质量较好,而在第二时间段内可能出现网络断开的情况,这就可能会导致当前目标服务节点获取的路径信息所标识的路径可能仅在当前目标服务节点向下一跳节点转发内容请求期间网络质量较好,而在之后的时间段内网络质量不好,如果该下一跳节点仍旧按照该路径信息所标识的路径转发内容请求,可能会无法及时获取或者无法获取内容请求对应的内容。
在这种情况下,为了保证每一跳的服务节点都可以按照网络质量较好的路径转发内容请求,可以每一跳重新计算一次路径信息,从而可以按照获取的新计算的路径信息的指示转发内容请求。
例如,S202获取的路径信息所标识的路径为服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点。根据该路径信息的指示可以确定下一跳节点为服务节点3,则服务节点2可以向服务节点3转发该内容请求。服务节点3在获取该内容请求后,可以将服务节点3作为目标服务节点,重新执行S202得到新的路径信息,新的路径信息可能与之前获取的路径信息可能相同,也可能不同。若新的路径信息所标识的路径为服务节点3——服务节点n-1——源服务器102,新的路径信息所指示的下一跳节点为服务节点n-1,这样,服务节点3可以向服务节点n-1转发该内容请求。与之前获取的路径信息所标识的路径相比,新的路径信息所指示的服务节点3的下一跳节点为服务节点n-1,而不是原来的服务节点n。
可见,每一跳计算一次路径信息,这样的路径信息所标识的路径可以体现出每一跳当前目标服务节点与源服务器之间的较优路径,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
当内容请求根据路径信息被转发到源服务器时,源服务器可以获取该内容请求对应的内容,并将该内容沿路径信息所标识的路径原路返回给目标服务器。
例如,若内容请求从目标服务节点被转发至源服务器102的路径为服务节点2——服务节点3——服务节点n——源服务器102,其中,服务节点2为目标服务节点,那么,与该内容请求对应的内容从源服务器102被转发至目标服务节点的路径为源服务器102——服务节点n——服务节点3——服务节点2。
由上述技术方案可以看出,当节点集群中的目标服务节点获取内容请求,但本地没有缓存该内容请求对应的内容时,目标服务节点需要通过回源的方式从源服务器获取该内容请求所对应的内容。目标服务节点可以获取根据网络质量参数所计算得到的路径信息,由于当前的网络质量参数可以是针对节点集群和源服务器根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。可见在需要回源的情况下,通过当前的网络质量参数灵活计算出的路径信息能够体现出当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径,目标服务节点可以根据该路径信息将内容请求灵活地转发给所指示的下一跳节点,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
上述实施例介绍了一种路径确定方法,该方法主要通过目标服务节点获取根据网络质量参数所计算得到的路径信息,以便目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。由于网络质量参数可以是根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容。那么,目标服务节点如何获取根据当前的网络质量参数所计算得到的路径信息,将在本实施例进行介绍。
目标服务节点获取路径信息的方式主要包括两种,第一种获取路径信息的方式是目标服务节点根据本地缓存的所述网络质量参数计算得到目标服务节点与内容请求所请求内容对应的源服务器之间的路径信息;第二种获取路径信息的方式是目标服务节点从路径服务器(Route Server)获取目标服务节点与内容请求所请求内容对应的源服务器之间的路径信息,如图3所示,该路径信息由路径服务器根据网络质量参数计算得到。
在第一种获取路径信息的方式中,目标服务节点上可以部署了代理(Proxy)软件和路由代理(Route Agent)软件,目标服务节点可以通过Proxy访问本机的Route Agent,Route Agent可以通过本地缓存的网络质量参数计算得到目标服务节点与内容请求所请求内容对应的源服务器之间的路径信息。
在第二种获取路径信息的方式中,目标服务节点需要从路径服务器获取路径信息,以图3为例,本实施例提供一种目标服务节点从路径服务器获取路径信息的方法,该方法涉及到目标服务节点与路径服务器之间的信息交互,本实施例将从目标服务节点与路径服务器交互的角度对获取路径信息的方法进行介绍。
目标服务节点从路径服务器获取路径信息的信令交互图可以参见图4,该方法包括:
S401、目标服务节点向路径服务器发送路径信息请求。
其中,路径服务器与节点集群中的服务节点有数据连接,且具有所述网络质量参数,该网络质量参数可以用于标识节点集群中服务节点间的网络质量和节点集群中服务节点与源服务器间的网络质量。
路径服务器中的网络质量参数可以是路径服务器将节点集群中的服务节点上报的子网络质量参数进行汇总得到的。节点集群中各个服务节点之间以及服务节点与源服务器之间可以实时或者以预设周期进行相互拨测,以便可以更新路径服务器上的网络质量参数。
为了使路径服务器可以知晓需要提供给目标服务节点的路径信息是哪个目标服务节点与哪个源服务器之间的路径信息,该路径信息请求中可以包括该目标服务节点的标识和内容请求的内容所对应源服务器的标识。
S402、路径服务器根据该路径信息请求获取目标服务节点与源服务器之间的路径信息。
其中,该路径信息是路径服务器根据当前的网络质量参数计算得到的。
需要说明的是,路径服务器计算目标服务节点与源服务器之间的路径信息的时机可以不同,即路径服务器可以预先计算好目标服务节点与该源服务器之间的路径信息,或者路径服务器可以是在接收到路径信息请求时,路径服务器才根据当前的网络质量参数计算目标服务节点与该源服务器之间的路径信息。
根据该路径信息计算时机的不同,S402的实现方式也会有所不同。若路径信息是预先计算好的,也就是说,路径服务器可以根据网络质量参数预先计算出各个服务节点到各个源服务器中的路径信息,得到路径信息集合,该路径信息集合中包括至少一条路径信息,且包括目标服务节点与该源服务器之间的路径信息。那么,S402的实现方式可以是路径服务器根据目标服务节点的标识和所请求内容对应的源服务器的标识从预先计算得到的路径信息集合中匹配出所述路径信息。
若路径信息是路径服务器在接收到路径信息请求时才根据当前的网络质量参数计算的,那么,S402的实现方式可以是路径服务器根据当前的网络质量参数计算目标服务节点与源服务器之间的路径信息。
S403、路径服务器向目标服务节点发送该路径信息。
路径服务器在获取到该路径信息后,可以向目标服务节点发送该路径信息,以便目标服务节点根据该路径信息执行S203。
由于路径服务器中的网络质量参数可以是针对节点集群和源服务器根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,提高回源效率和成功率。另外,目标服务节点从路径服务器上获取路径信息,无需目标服务节点计算路径信息,节省了目标服务节点的计算资源。
需要说明的是,在上述两种获取路径信息的方式中,网络质量参数可以是根据子网络质量参数进行汇总得到的。在第一种获取路径信息的方式中,网络质量参数可以是目标服务器根据子网络质量参数进行汇总得到的或者网络质量参数可以是目标服务节点从路径服务器获取的;在第二种获取路径信息的方式中,网络质量参数可以是路径服务器根据子网络质量参数进行汇总得到的。
其中,子网络质量参数用于标识节点集群中任意两个服务节点间的网络质量或者节点集群中各个服务节点与该源服务器间的网络质量,通过对子网络质量参数的汇总可以得到网络质量参数。
若网络质量参数是目标服务器根据子网络质量参数进行汇总得到的,也就是说,节点集群中的服务节点可以将自身获取的子网络质量参数发送给目标服务节点,目标服务节点将子网络质量参数汇总得到网络质量参数。
例如,节点集群中包括服务节点1、服务节点2,若服务节点2作为目标服务节点,服务节点2通过与服务节点1相互拨测可以得到服务节点2与服务节点1之间的子网络质量参数A,服务节点2通过与源服务器相互拨测可以得到服务节点2与源服务器之间的子网络质量参数B,而服务节点1通过与源服务器相互拨测可以得到服务节点1与源服务器之间的子网络质量参数C,此时,服务节点1需要将子网络质量参数C发送给目标服务节点,目标服务节点可以将子网络质量参数A、B、C进行汇总得到网络质量参数。
其中,节点集群中各个服务节点之间以及服务节点与源服务器之间可以实时或者以预设周期进行相互拨测,以便可以更新目标服务节点上的网络质量参数。
若网络质量参数是目标服务节点从路径服务器获取的或者网络质量参数实际上是路径服务器根据子网络质量参数进行汇总得到的,也就是说,节点集群中各服务节点可以将自身获取的子网络质量参数上报给路径服务器,路径服务器将节点集群中各服务节点上报的子网络质量参数进行汇总得到的网络质量参数。
例如,节点集群中包括服务节点1、服务节点2,若服务节点2作为目标服务节点,服务节点2与服务节点1相互拨测可以得到服务节点2与服务节点1之间的子网络质量参数A,服务节点2与源服务器相互拨测可以得到服务节点2与源服务器之间的子网络质量参数B,服务节点1与源服务器相互拨测可以得到服务节点1与源服务器之间的子网络质量参数C,子网络质量参数A、B、C可以被上报给路径服务器,子网络质量参数A、B、C在路径服务器中被汇总得到网络质量参数,目标服务节点可以从路径服务器中获取网络质量参数。
需要说明的是,若网络质量参数是目标服务节点从路径服务器获取的,目标服务节点上的Route Agent可以实时或者以预设周期从路径服务器获取最新的网络质量参数,目标服务节点上的Route Agent可以采用轮询调度Round Robin的方式选择一台路径服务器(若该台路径服务器连不上,则自动选另外一台路径服务器)以获取网络质量参数。
接下来,本实施例将针对转发日志的实施方案进行介绍。通过图1-图4对应的实施例,目标服务节点可以实现将内容请求转发至源服务器,而参与转发内容请求的每个服务节点在转发内容请求时可以生成转发日志,转发日志可以记录服务节点在转发内容请求时的运行状况。如果目标服务节点通过回源返回给用户的内容出现错误或者没有获取到相应的内容,可以通过转发过该内容请求的服务节点的转发日志来确定是哪个服务节点在转发过程中出现错误。由于节点集群中可以包括多个服务节点,可能只有部分服务节点参与了转发该内容请求,但是难以从多个服务节点中确定哪些服务节点参与了转发该内容请求,从而难以直接获取转发过该内容请求的服务节点的转发日志,可能需要对每一个服务节点的转发日志都进行检查,进而确定转发过该内容请求的哪个服务节点出现错误。
这种检查方式需要逐一检查每一个服务节点的转发日志,检查效率较低,用户体验不好。为此,在本实施中,可以在内容请求中携带与该内容请求对应的日志标识,在根据获取的路径信息在节点集群中转发该内容请求时,所生成的转发日志记录有该日志标识,使得转发过该内容请求的服务节点的转发日志中都会记录有该日志标识。这样,根据该日志标识,便可以确定有哪些服务节点转发过该内容请求,从而根据获得的转发过该内容请求的服务节点的转发日志确定哪个服务节点在转发内容请求的过程中出现错误。
其中,日志标识可以是用户通过终端发送内容请求时根据该内容请求分配的,也可以是第一个转发内容请求的服务节点在生成转发日志时根据该内容请求分配的。日志标识与内容请求唯一对应,日志标识可以是任务标识号(task identification,简称taskid)。
可以理解的是,节点集群中的每个服务节点在转发内容请求时都可以生成转发日志,这样,转发日志将分布在各个服务节点中,当需要获取转发日志时,需要从各个服务节点获取,使得获取转发日志的效率低。
为此,可以通过网络设备对各个服务节点生成的转发日志进行统一管理,该网络设备例如可以是图3中所示的全文搜索引擎(Elastic Search,简称ES)。这样,当用户需要获取转发日志时,可以在ES中输入task id,ES可以将与该task id对应的转发日志提供给用户,以便用户进行检查。其中,转发日志可以由服务节点中部署的日志代理Log Agent上报给ES。
通过ES对转发日志进行统一管理,可以提高获取转发日志的效率,进而提高检查效率。
一般情况下,ES中可能保存了上万个域名甚至更多域名对应的转发日志,当需要从ES中获取特定域名的转发日志时,需要对所有转发日志进行搜索,从而得到该特定域名的转发日志,这就导致获取特定域名的转发日志所需时间过长。为此,可以对特定域名的转发日志进行日志染色,这样,当需要获取该特定域名的转发日志时,无需对所有转发日志进行搜索,可以直接获取该特定域名的转发日志,大大缩短了获取特定域名的转发日志所需时间。
在本实施例中,包括内容请求或与该内容请求对应的内容在被根据路径信息在节点集群中转发时,需要占用一定的网络带宽,如果内容请求或与该内容请求对应的内容过大,可能会占用量的网络带宽,降低网络传输数据的效率,进而使得回源效率降低。在这种情况下,为了减小内容请求或与该内容请求对应的内容的大小,可以对内容请求或与该内容请求对应的内容进行压缩,例如可以根据节点集群中部署的协议对该内容请求或与该内容请求对应的内容进行压缩。也就是说,目标服务节点向所述路径信息所指示的下一跳节点转发携带有所述路径信息的所述内容请求时,目标服务节点可以根据节点集群中部署的协议压缩携带有该路径信息的内容请求得到压缩后的内容请求;然后,目标服务节点向所述路径信息所指示的下一跳节点转发压缩后的内容请求。相应的,在源服务器将内容请求所请求内容沿路径信息所标识的路径原路返回给目标服务器的过程中,目标服务节点可以从该路径信息所指示的下一跳节点获取该源服务器提供的内容,该内容为根据节点集群中部署的协议进行压缩的。
这样,在内容请求或与该内容请求对应的内容在被根据路径信息在节点集群中转发时,极大降低了该数据占用的网络带宽,降低了该内容请求或与该内容请求对应的内容在网络中的传输成本,提高了传输效率,进而提高了回源效率。其中,所提到的协议可以是TCP协议,也可以是私有协议,私有协议可以是用户数据报协议(User Datagram Protocol,简称UDP),本实施例对内容请求或与该内容请求对应的内容进行压缩主要是基于UDP。其中,压缩功能可以根据服务节点的配置选择性的开启。
基于UDP对数据进行压缩,一旦内容请求或内容请求所请求内容在被根据所述路径信息在所述节点集群中转发过程中出现丢失,可以通过前向纠错(Forward ErrorCorrection,简称FEC)或后向纠错(Automatic Repeat-reQuest,简称ARQ)恢复转发所述内容请求或所述内容时损失的数据,这样,即使在内容请求或内容请求所请求内容发生丢失的情况下,甚至丢失程度很大的情况下,也可以将丢失的部分恢复出来,也能够保证回源的成功率。其中,可以由节点集群中任一服务节点通过FEC或ARQ恢复转发所述内容请求或所述内容时损失的数据。
在本实施例中,基于UDP对数据进行压缩的示例图可以如图5所示,数据在被根据所述路径信息在所述节点集群中转发时,一个服务节点在接收到节点集群中其他服务节点转发的内容请求时,可以选择开启压缩功能,对内容请求进行压缩,并根据路径信息向下一跳节点转发该压缩后的内容请求。下一跳节点接收到该压缩的内容请求后,可以发送确认信息(Acknowledgement,简称ACK),若下一跳节点发现压缩后的内容请求出现损失,可以基于UDP的FEC或ARQ恢复损失的部分。
其中,FEC可以是指发送方将要发送的数据附加上一定的冗余纠错码向接收方发送,接收方则根据冗余纠错码对数据进行差错检测,如发现差错,由接收方对该数据进行纠正。在本实施例中,发送方为目标服务节点,接收方为下一跳节点,若下一跳节点根据冗余纠错码检测出压缩的内容请求出现差错,则由该下一跳节点对该压缩的内容请求进行纠正,并向目标服务节点发送ACK。
ARQ可以是指通过接收方请求发送方重传出错的数据来恢复出错的数据。在本实施例中,发送方为目标服务节点,接收方为下一跳节点,若目标服务节点发送10个数据包,而下一跳节点仅接收到8个数据包,则下一跳节点不会向目标服务节点发送ACK,此时,目标服务节点会重传出错的部分来恢复出错的部分。
若内容请求是基于私有协议被压缩的,源服务器与服务节点之间不具有私有协议,源服务器无法对该压缩的内容请求进行解压,因此,如果内容请求下一跳将被根据路径信息转发到源服务器,且该内容请求是被压缩的,那么,在向源服务器转发内容请求之前可以先对该压缩的内容请求进行解压,再向源服务器转发;当内容请求对应的内容被根据路径信息转发到目标服务节点时,如果内容请求对应的内容被压缩,目标服务节点可以先对该压缩数据进行解压,再将得到的内容返回给用户。
接下来,将对路径确定方法的其他应用场景进行介绍,在不同的应用场景下,目标服务节点可能有所区别。上述实施例介绍了目标服务节点向源服务器转发内容请求时路径确定方法,而在有些情况下,用户通过终端101发送的内容请求可能先被转发到距离用户网络位置较近的服务节点,例如图3或图6a所示的边缘服务节点(edge cache)104,然后,边缘服务节点104可以继续将内容请求向节点集群103中的服务节点进行转发,实现回源。其中,用户101的终端可以通过特定协议访问边缘服务节点104,该特定协议例如可以是传输控制协议(Transmission Control Protocol,简称TCP)。
其中,边缘服务节点104可以是与用户的终端直接发生联系的前端网络设备,可以为用户的终端提供进入网络的通道和与网络中其它网络设备通讯的功能。
在这种情况下,边缘服务节点104向节点集群103中的服务节点发送内容请求的方式可以是:边缘服务节点104可以通过域名系统(Domain Name System,简称DNS)解析的方式确定边缘服务节点104向哪个服务节点转发该内容请求,例如DNS解析可以得到该服务节点的网络之间互连的协议(Internet Protocol,简称IP),从而根据该IP确定边缘服务节点104向哪个服务节点转发该内容请求。若DNS解析得到的IP为服务节点2的IP,则该IP对应的服务节点2将获取该内容请求。为了避免与该IP对应的服务节点至源服务器之间的固定路径网络质量不好而无法及时获取或者无法获取内容请求对应的内容,从与该IP对应的服务节点向源服务器转发内容请求期间可以采用S201-S203所述的方法确定路径,此时,服务节点2可以作为目标服务节点。
但是,在一些情况下,边缘服务节点向节点集群103中的服务节点转发该内容请求时,边缘服务节点与其DNS解析得到的服务节点之间的网络质量可能不好,例如出现拥塞或断开,如果边缘服务节点只能向通过DNS解析得到的服务节点转发内容请求,一旦出现网络质量不好的情况,也会导致无法及时获取或者不能获取到内容请求对应的内容。
在这种情况下,本实施例提供的路径确定方法的应用场景中还可以如图6b所示,此时,可以更改DNS解析规则,将边缘服务节点104DNS解析的下一跳设置为边缘服务节点104自身。这样,便可以使得边缘服务节点104为处于节点集群103中的服务节点,从边缘服务节点104向源服务器102转发内容请求期间可以采用S201-S203所述的方法确定路径,此时,边缘服务节点104可以作为目标服务节点。
在本实施例中,针对S201,获取内容如果存在大量用户同时向源服务器发送内容请求,在对内容请求进行转发时,每一跳服务节点都需要转发大量内容请求,若每一跳节点为独立的服务节点,由于该服务节点能力的限制,该服务节点针对大量的内容请求的转发效率很低;或者,若每一跳节点为独立的服务节点,一旦该服务节点失效,则该服务节点无法对内容请求进行转发。
在这种情况下,在部署节点集群103时,可以在同一区域位置部署多个服务节点,该多个服务节点构成子节点集群,位于同一子节点集群中的服务节点可以完成相同的任务,这样,即使每一跳服务节点都需要转发大量内容请求,由于每一跳服务节点都可以位于子节点集群中,该子节点集群中的每个节点服务器都可以分担该转发任务,从而提高转发效率;另外,即使某一跳的服务节点可能失效,与该服务节点处于相同子节点集群的其它服务节点仍然可以执行转发任务,保证内容请求的转发可以正常进行。
例如在广州部署一个子节点集群1,在英国部署一个子节点集群2……,每个子节点集群中可以包括多个服务节点,即节点集群103中可以包括多个包括了多个子节点集群。如图3中所示,节点集群103中包括子节点集群1、子节点集群2、……子节点集群n。其中,每个子节点集群可以表示该子节点集群中的所有服务节点位于同一机房中。
在节点集群103如图3所示的情况下,处于节点集群中的目标服务节点实际上可以位于节点集群103的子节点集群中,例如,图3中子节点集群2中的服务节点获取了内容请求,则目标服务节点位于子节点集群2中。
在节点集群103包括子节点集群的情况下,若边缘服务节点位于节点集群103中,则针对边缘服务节点可以设置子节点集群,该子节点集群中包括多个边缘服务节点。例如图7a所示,此时,子节点集群1中的服务节点可以是边缘服务节点,子节点集群1中的边缘服务节点可以作为目标服务节点。
需要说明的是,为了减少资源的浪费,一般来说,下一跳节点所在的子节点集群与目标服务节点所在的子节点集群不同,即内容请求不在同一子节点集群的不同服务节点之间转发。
在一些情况下,针对源服务器保存的内容,每天可能会有上亿条访问,那么可能会有上亿次回源,以对源服务器进行访问,如果直接访问源服务器将对源服务器造成较大的负担。由于在这些条访问中,可能有很多条访问是用来访问同一源服务器的,为此,可以在边缘服务节点与源服务器之间设置二级缓存服务节点,从而可以将大量的访问进行收敛,从而减少访问源服务器的访问数量,减轻源服务器的负担,同时还可以提高回源效率。参见图7b,二级缓存服务节点如图7b中105所示。当然,随着访问数量的增加,还可以设置三级缓存服务节点、四级缓存服务节点等。但是,无论边缘服务节点与源服务器之间设置多少级缓存服务节点,节点集群104仅位于源服务器102之前。
基于图1至图7b对应的实施例,下面结合具体应用场景对一种路径确定方法进行介绍。该应用场景以图3所示的应用场景为例,节点集群103中包括多个子节点集群,则本实施例提供的路径确定方法可以参见图8所示,该方法包括:
S801、用户通过终端基于TCP访问边缘服务节点。
S802、边缘服务节点通过DNS解析获取目标服务节点。
其中,DNS解析可以获得目标服务节点的IP,例如,解析出的IP对应子节点集群2中的一个服务节点,那么,目标服务节点为子节点集群2中的该服务节点,目标服务节点一般可以是与边缘服务节点同城同运营商的服务节点。
S803、目标服务节点的Proxy访问本机的Route Agent,Route Agent获取目标服务节点与内容所对应源服务器之间的路径信息。
在本实施例中,路径信息所标识的路径为子节点集群2——子节点集群3——子节点集群n——源服务器102,其中,子节点集群2中的服务节点为目标服务节点。
S804、目标服务节点向路径信息所指示的下一跳节点转发携带有该路径信息的内容请求,并对内容请求进行压缩。
在本实施例中,仅计算一次路径信息,该路径信息所标识路径中的服务节点都可以根据该路径信息转发内容请求。
需要说明的是,为了减少资源的浪费,一般来说,下一跳节点所在的子节点集群与目标服务节点所在的子节点集群不同。在本实施例中,该下一跳节点可以为子节点集群3中的一个节点。
S805、该路径信息所标识路径中的服务节点根据该路径信息转发内容请求。
根据路径信息的指示,内容请求在由节点集群3中的服务节点转发后,再由子节点集群n转发至源服务器102。
S806、根据该路径信息的指示,源服务器接收到该内容请求,并对该内容请求进行解压,以访问源服务器。
源服务器获取该内容请求后,可以对该内容请求进行处理,得到该内容请求对应的内容,并按照路径信息的指示沿着转发内容请求的路径返回给用户,实现回源。
由上述技术方案可以看出,当节点集群中的目标服务节点获取内容请求,但本地没有缓存该内容请求对应的内容时,目标服务节点需要通过回源的方式从源服务器获取该内容请求所对应的内容。目标服务节点可以获取根据当前的网络质量参数所计算得到的路径信息,由于网络质量参数可以是针对节点集群和源服务器根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。可见在需要回源的情况下,通过当前的网络质量参数灵活计算出的路径信息能够体现出当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径,目标服务节点可以根据该路径信息将内容请求灵活地转发给所指示的下一跳节点,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
基于前述实施例提供的路径确定方法,参见图9a,本申请实施例提供了一种路径确定装900,所述装置900包括第一获取单元901、第二获取单元902和指示单元903:
所述第一获取单元901,用于获取内容请求,目标服务节点处于节点集群中;
所述第二获取单元902,用于获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
所述指示单元903,用于向所述路径信息所指示的下一跳节点转发所述内容请求。
在一些实施例中,所述第二获取单元,用于根据本地缓存的所述网络质量参数计算得到所述目标服务节点与所述内容所对应源服务器之间的路径信息。
在一些实施例中,所述网络质量参数是所述目标服务节点从路径服务器获取的。
在一些实施例中,所述第二获取单元,用于向路径服务器发送路径信息请求,所述路径服务器与所述节点集群中的服务节点有数据连接,且具有所述网络质量参数,所述路径信息请求包括所述目标服务节点的标识和所述内容所对应源服务器的标识;获取所述路径服务器针对所述路径信息请求返回的所述路径信息。
在一些实施例中,所述路径信息所指示的下一跳节点为所述节点集群中的一个服务节点或所述源服务器。
在一些实施例中,所述指示单元,用于向所述路径信息所指示的下一跳节点转发携带有所述路径信息的所述内容请求,以便所述路径信息所标识路径中的服务节点根据所述路径信息转发所述内容请求。
在一些实施例中,所述内容请求具有对应的日志标识,根据所述路径信息在所述节点集群中转发所述内容请求时,所生成的转发日志记录有所述日志标识。
在一些实施例中,所述指示单元,用于根据所述节点集群中部署的协议压缩携带有所述路径信息的所述内容请求得到压缩后的内容请求;向所述路径信息所指示的下一跳节点转发所述压缩后的内容请求。
在一些实施例中,参见图9b,所述装置900还包括第三获取单元904,所述第三获取单元904,用于从所述路径信息所指示的下一跳节点获取所述源服务器提供的所述内容,所述内容为根据所述节点集群中部署的协议压缩的。
在一些实施例中,所述指示单元,还用于通过前向纠错或后向纠错恢复转发所述内容请求时损失的数据。
另外,参见图10,本申请实施例还提供了一种路径确定装置1000,所述装置1000包括第一获取单元1001、第二获取单元1002和发送单元1003:
所述第一获取单元1001,用于获取处于所述节点集群中目标服务节点发送的路径信息请求,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;
所述第二获取单元1002,用于根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据当前的网络质量参数计算得到的;所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
所述发送单元1003,用于向所述目标服务节点发送所述路径信息。
在一些实施例中,所述第二获取单元,用于根据所述网络质量参数计算所述目标服务节点与所述源服务器之间的路径信息;或者,根据所述目标服务节点的标识和所请求内容对应的源服务器的标识从预先计算得到的路径信息集合中匹配出所述路径信息。
由上述技术方案可以看出,当节点集群中的目标服务节点获取内容请求,但本地没有缓存该内容请求对应的内容时,目标服务节点需要通过回源的方式从源服务器获取该内容请求所对应的内容。目标服务节点可以获取根据当前的网络质量参数所计算得到的路径信息,由于当前的网络质量参数可以是针对节点集群和源服务器根据一定方式不断更新的,依此计算出的路径信息所标识的路径可以为目标服务节点与源服务器之间当前网络质量较优的路径,使用该路径转发内容请求可以更有效率的获得源服务器提供的内容,故目标服务节点根据该路径信息的指示,对目标服务节点向源服务器转发方向上的下一跳节点转发该内容请求。可见在需要回源的情况下,通过当前的网络质量参数灵活计算出的路径信息能够体现出当前目标服务节点与源服务器之间在需要转发该内容请求期间的较优路径,目标服务节点可以根据该路径信息将内容请求灵活地转发给所指示的下一跳节点,实现提高回源效率和成功率,目标服务节点可以更快的将内容请求所对应的内容返回给用户,提高了用户体验。
本申请实施例还提供了一种用于路径确定的设备,下面结合附图对用于路径确定的设备进行介绍。请参见图11所示,本申请实施例提供的一种用于路径确定的设备1100,该设备1100可以是服务器,可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1122(例如,一个或一个以上处理器)和存储器1132,一个或一个以上存储应用程序1142或数据1144的存储介质1130(例如一个或一个以上海量存储设备)。其中,存储器1132和存储介质1130可以是短暂存储或持久存储。存储在存储介质1130的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1122可以设置为与存储介质1130通信,在用于路径确定的设备1100上执行存储介质1130中的一系列指令操作。
用于路径确定的设备1100还可以包括一个或一个以上电源1126,一个或一个以上有线或无线网络接口1150,一个或一个以上输入输出接口1158,和/或,一个或一个以上操作系统1141,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图11所示的服务器结构。
其中,CPU 1122用于执行如下步骤:
获取内容请求,目标服务节点处于节点集群中;
获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
向所述路径信息所指示的下一跳节点转发所述内容请求。
设备1100中的CPU 1122还可以用于执行如下步骤:
获取处于节点集群中目标服务节点发送的路径信息请求,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;
根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据当前的网络质量参数计算得到的;所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
向所述目标服务节点发送所述路径信息。
请参见图12所示,本申请实施例提供的一种用于路径确定的设备1200,该设备1200还可以是终端设备,该终端可以为包括手机、平板电脑、个人数字助理(英文全称:Personal Digital Assistant,英文缩写:PDA)、销售终端(英文全称:Point of Sales,英文缩写:POS)、车载电脑等任意终端设备,以终端为手机为例:
图12示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图12,手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1210、存储器1220、输入单元1230、显示单元1240、传感器1250、音频电路1260、无线保真(英文全称:wirelessfidelity,英文缩写:WiFi)模块1270、处理器1280、以及电源1290等部件。本领域技术人员可以理解,图12中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图12对手机的各个构成部件进行具体的介绍:
RF电路1210可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1280处理;另外,将设计上行的数据发送给基站。通常,RF电路1210包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(英文全称:LowNoise Amplifier,英文缩写:LNA)、双工器等。此外,RF电路1210还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(英文全称:Global System of Mobile communication,英文缩写:GSM)、通用分组无线服务(英文全称:General Packet Radio Service,GPRS)、码分多址(英文全称:CodeDivision Multiple Access,英文缩写:CDMA)、宽带码分多址(英文全称:Wideband CodeDivision Multiple Access,英文缩写:WCDMA)、长期演进(英文全称:Long TermEvolution,英文缩写:LTE)、电子邮件、短消息服务(英文全称:Short Messaging Service,SMS)等。
存储器1220可用于存储软件程序以及模块,处理器1280通过运行存储在存储器1220的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1230可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1230可包括触控面板1231以及其他输入设备1232。触控面板1231,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1231上或在触控面板1231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1231可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1280,并能接收处理器1280发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1231。除了触控面板1231,输入单元1230还可以包括其他输入设备1232。具体地,其他输入设备1232可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1240可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1240可包括显示面板1241,可选的,可以采用液晶显示器(英文全称:Liquid Crystal Display,英文缩写:LCD)、有机发光二极管(英文全称:Organic Light-Emitting Diode,英文缩写:OLED)等形式来配置显示面板1241。进一步的,触控面板1231可覆盖显示面板1241,当触控面板1231检测到在其上或附近的触摸操作后,传送给处理器1280以确定触摸事件的类型,随后处理器1280根据触摸事件的类型在显示面板1241上提供相应的视觉输出。虽然在图12中,触控面板1231与显示面板1241是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1231与显示面板1241集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1250,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1241的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1241和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1260、扬声器1261,传声器1262可提供用户与手机之间的音频接口。音频电路1260可将接收到的音频数据转换后的电信号,传输到扬声器1261,由扬声器1261转换为声音信号输出;另一方面,传声器1262将收集的声音信号转换为电信号,由音频电路1260接收后转换为音频数据,再将音频数据输出处理器1280处理后,经RF电路1210以发送给比如另一手机,或者将音频数据输出至存储器1220以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1270可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图12示出了WiFi模块1270,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1280是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1220内的软件程序和/或模块,以及调用存储在存储器1220内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1280可包括一个或多个处理单元;优选的,处理器1280可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1280中。
手机还包括给各个部件供电的电源1290(比如电池),优选的,电源可以通过电源管理系统与处理器1280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端所包括的处理器1280还具有以下功能:
获取内容请求,目标服务节点处于节点集群中;
获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;
向所述路径信息所指示的下一跳节点转发所述内容请求。
本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例所述的一种路径确定的方法中的任意一种实施方式。
参见图13,本申请实施例还提供了一种路径确定系统1300,系统1300包括目标服务节点1301和路径服务器1302;
所述目标服务节点1301,用于获取内容请求,所述目标服务节点处于节点集群中;获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量;向所述路径信息所指示的下一跳节点转发所述内容请求;
所述路径服务器1302,用于获取处于所述节点集群中目标服务节点发送的路径信息请求,所述路径服务器与所述节点集群中的服务节点有数据连接,且具有所述网络质量参数,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的所述路径信息;向所述目标服务节点发送所述路径信息。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-OnlyMemory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (14)

1.一种路径确定方法,其特征在于,所述方法包括:
目标服务节点获取内容请求,所述目标服务节点处于节点集群中,其中,若所述内容请求已经先被转发至边缘服务节点,则将所述边缘服务节点DNS解析的下一跳设置为所述边缘服务节点自身,使所述边缘服务节点作为处于所述节点集群中的所述目标服务节点;
所述目标服务节点获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量,所述网络质量参数为通过所述节点集群中服务节点间相互拨测,以及所述节点集群中服务节点与源服务器间相互拨测获得;
所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求,其中,所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求后,所述下一跳节点重新计算一次路径信息,并按照获取的新计算的路径信息的指示转发所述请求内容;
其中,所述内容请求具有对应的日志标识,在根据所述路径信息在所述节点集群中转发所述内容请求时所生成的转发日志记录有所述日志标识,所述转发日志用于记录服务节点在所述转发内容请求时的运行状况,各个服务节点生成的转发日志是通过全文搜索引擎进行统一管理的,以便于当用户需要获取转发日志时,能够在所述全文搜索引擎中输入所述日志标识,并由所述全文搜索引擎将与所述日志标识对应的转发日志提供给用户。
2.根据权利要求1所述的方法,其特征在于,所述目标服务节点获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,包括:
所述目标服务节点根据本地缓存的所述网络质量参数计算得到所述目标服务节点与所述内容所对应源服务器之间的路径信息。
3.根据权利要求2所述的方法,其特征在于,所述网络质量参数是所述目标服务节点从路径服务器获取的。
4.根据权利要求1所述的方法,其特征在于,所述目标服务节点获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,包括:
所述目标服务节点向路径服务器发送路径信息请求,所述路径服务器与所述节点集群中的服务节点有数据连接,且具有所述网络质量参数,所述路径信息请求包括所述目标服务节点的标识和所述内容所对应源服务器的标识;
所述目标服务节点获取所述路径服务器针对所述路径信息请求返回的所述路径信息。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述路径信息所指示的下一跳节点为所述节点集群中的一个服务节点或所述源服务器。
6.根据权利要求1-4任意一项所述的方法,其特征在于,所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求,包括:
所述目标服务节点向所述路径信息所指示的下一跳节点转发携带有所述路径信息的所述内容请求,以便所述路径信息所标识路径中的服务节点根据所述路径信息转发所述内容请求。
7.根据权利要求6所述的方法,其特征在于,所述目标服务节点向所述路径信息所指示的下一跳节点转发携带有所述路径信息的所述内容请求,包括:
所述目标服务节点根据所述节点集群中部署的协议压缩携带有所述路径信息的所述内容请求得到压缩后的内容请求;
所述目标服务节点向所述路径信息所指示的下一跳节点转发所述压缩后的内容请求。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述目标服务节点从所述路径信息所指示的下一跳节点获取所述源服务器提供的所述内容,所述内容为根据所述节点集群中部署的协议压缩的。
9.根据权利要求1所述的方法,其特征在于,所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求的步骤还包括:通过前向纠错或后向纠错恢复转发所述内容请求时损失的数据。
10.一种路径确定装置,其特征在于,所述装置包括第一获取单元、第二获取单元和指示单元:
所述第一获取单元,用于获取内容请求,目标服务节点处于节点集群中,其中,若所述内容请求已经先被转发至边缘服务节点,则将所述边缘服务节点DNS解析的下一跳设置为所述边缘服务节点自身,使所述边缘服务节点作为处于所述节点集群中的所述目标服务节点;
所述第二获取单元,用于获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量,所述网络质量参数为通过所述节点集群中服务节点间相互拨测,以及所述节点集群中服务节点与源服务器间相互拨测获得;
所述指示单元,用于向所述路径信息所指示的下一跳节点转发所述内容请求,其中,所述向所述路径信息所指示的下一跳节点转发所述内容请求后,所述下一跳节点重新计算一次路径信息,并按照获取的新计算的路径信息的指示转发所述请求内容,其中,所述内容请求具有对应的日志标识,在根据所述路径信息在所述节点集群中转发所述内容请求时所生成的转发日志记录有所述日志标识,所述转发日志用于记录服务节点在所述转发内容请求时的运行状况,各个服务节点生成的转发日志是通过全文搜索引擎进行统一管理的,以便于当用户需要获取转发日志时,能够在所述全文搜索引擎中输入所述日志标识,并由所述全文搜索引擎将与所述日志标识对应的转发日志提供给用户。
11.一种路径确定方法,其特征在于,所述方法包括:
获取处于节点集群中目标服务节点发送的路径信息请求,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识,其中,若所述内容请求已经先被转发至边缘服务节点,则将所述边缘服务节点DNS解析的下一跳设置为所述边缘服务节点自身,使所述边缘服务节点作为处于所述节点集群中的所述目标服务节点;
根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,所述路径信息是根据当前的网络质量参数计算得到的;所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量,所述网络质量参数为通过所述节点集群中服务节点间相互拨测,以及所述节点集群中服务节点与源服务器间相互拨测获得;
向所述目标服务节点发送所述路径信息,以使所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求,在所述目标服务节点向所述路径信息所指示的下一跳节点转发所述内容请求后,所述下一跳节点重新计算一次路径信息,并按照获取的新计算的路径信息的指示转发所述请求内容,其中,所述内容请求具有对应的日志标识,在根据所述路径信息在所述节点集群中转发所述内容请求时所生成的转发日志记录有所述日志标识,所述转发日志用于记录服务节点在所述转发内容请求时的运行状况,各个服务节点生成的转发日志是通过全文搜索引擎进行统一管理的,以便于当用户需要获取转发日志时,能够在所述全文搜索引擎中输入所述日志标识,并由所述全文搜索引擎将与所述日志标识对应的转发日志提供给用户。
12.根据权利要求11所述的方法,其特征在于,所述根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的路径信息,包括:
根据所述网络质量参数计算所述目标服务节点与所述源服务器之间的路径信息;或者,
根据所述目标服务节点的标识和所请求内容对应的源服务器的标识从预先计算得到的路径信息集合中匹配出所述路径信息。
13.一种用于路径确定的设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-9或11-12任一项所述的路径确定方法。
14.一种路径确定系统,其特征在于,所述系统包括目标服务节点和路径服务器;
所述目标服务节点,用于获取内容请求,所述目标服务节点处于节点集群中;获取所述目标服务节点与所述内容请求所请求内容对应的源服务器之间的路径信息,所述路径信息为根据当前的网络质量参数计算得到,所述网络质量参数用于标识所述节点集群中服务节点间的网络质量和所述节点集群中服务节点与所述源服务器间的网络质量,所述网络质量参数为通过所述节点集群中服务节点间相互拨测,以及所述节点集群中服务节点与源服务器间相互拨测获得;向所述路径信息所指示的下一跳节点转发所述内容请求,其中,所述向所述路径信息所指示的下一跳节点转发所述内容请求后,所述下一跳节点重新计算一次路径信息,并按照获取的新计算的路径信息的指示转发所述请求内容,其中,若所述内容请求已经先被转发至边缘服务节点,则将所述边缘服务节点DNS解析的下一跳设置为所述边缘服务节点自身,使所述边缘服务节点作为处于所述节点集群中的所述目标服务节点;
所述路径服务器,用于获取处于所述节点集群中目标服务节点发送的路径信息请求,所述路径服务器与所述节点集群中的服务节点有数据连接,且具有所述网络质量参数,所述路径信息请求包括所述目标服务节点的标识和所请求内容对应的源服务器的标识;根据所述路径信息请求获取所述目标服务节点与所述源服务器之间的所述路径信息;向所述目标服务节点发送所述路径信息,其中,所述内容请求具有对应的日志标识,在根据所述路径信息在所述节点集群中转发所述内容请求时所生成的转发日志记录有所述日志标识,所述转发日志用于记录服务节点在所述转发内容请求时的运行状况,各个服务节点生成的转发日志是通过全文搜索引擎进行统一管理的,以便于当用户需要获取转发日志时,能够在所述全文搜索引擎中输入所述日志标识,并由所述全文搜索引擎将与所述日志标识对应的转发日志提供给用户。
CN201810542560.8A 2018-05-30 2018-05-30 一种路径确定方法和装置 Active CN110213315B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810542560.8A CN110213315B (zh) 2018-05-30 2018-05-30 一种路径确定方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810542560.8A CN110213315B (zh) 2018-05-30 2018-05-30 一种路径确定方法和装置

Publications (2)

Publication Number Publication Date
CN110213315A CN110213315A (zh) 2019-09-06
CN110213315B true CN110213315B (zh) 2022-01-07

Family

ID=67778845

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810542560.8A Active CN110213315B (zh) 2018-05-30 2018-05-30 一种路径确定方法和装置

Country Status (1)

Country Link
CN (1) CN110213315B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262781A (zh) * 2020-03-19 2020-06-09 黄诗嵘 一种智能加速路由选择方法
CN112087489B (zh) * 2020-08-05 2023-06-30 北京工联科技有限公司 一种在线手机游戏网络传输的中继转发选择方法及系统
CN112422338B (zh) * 2020-11-12 2022-11-08 北京金山云网络技术有限公司 一种cdn网络的错误定位方法、装置及电子设备
CN113810461B (zh) * 2021-08-04 2023-04-18 网宿科技股份有限公司 带宽控制方法、装置、设备及可读存储介质
CN114024984B (zh) * 2021-09-27 2024-01-05 阿里巴巴(中国)有限公司 用于内容分发网络(cdn)的资源刷新方法、装置及设备
CN114024876B (zh) * 2021-10-15 2023-06-16 中国联合网络通信集团有限公司 一种网络拨测方法、装置、设备及存储介质
CN114500526B (zh) * 2021-12-27 2023-08-04 天翼云科技有限公司 一种路径计算系统及其控制方法
CN115277539A (zh) * 2022-07-29 2022-11-01 天翼云科技有限公司 一种数据传输方法、选路集群以及边缘节点

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100015B (zh) * 2014-05-16 2018-07-03 林琳 一种采集互联网访问数据的方法及装置
CN107517228B (zh) * 2016-06-15 2021-03-05 阿里巴巴集团控股有限公司 一种内容分发网络中的动态加速方法及装置
CN106603703B (zh) * 2016-12-29 2020-09-04 北京奇艺世纪科技有限公司 一种回源节点确定方法及装置
CN107317879B (zh) * 2017-08-02 2019-07-05 网宿科技股份有限公司 一种用户请求的分发方法及系统
CN107835129B (zh) * 2017-10-24 2020-06-02 重庆大学 内容中心网络边缘节点势能增强路由方法
CN107995314B (zh) * 2017-12-21 2020-09-22 河南蛮蛮云计算技术有限公司 Cdn网络系统及其网络回源方法

Also Published As

Publication number Publication date
CN110213315A (zh) 2019-09-06

Similar Documents

Publication Publication Date Title
CN110213315B (zh) 一种路径确定方法和装置
CN110300115B (zh) 一种基于多通道的数据传输方法以及相关装置
CN106657431B (zh) 一种业务平台地址解析的方法、服务器、终端及系统
US10959124B2 (en) Uplink data transmission method, terminal, network side device and system
CN111629075A (zh) 一种数据下载方法和相关装置
WO2014206276A1 (en) Domain name resolution method, domain name server, and domain name access method, system and terminal
CN109905380B (zh) 一种分布式系统中的节点控制方法和相关装置
CN110620822A (zh) 一种网元确定方法和装置
CN113950125B (zh) 一种应用程序中网络加速的方法、装置以及存储介质
CN105227598B (zh) 一种基于云存储的资源分享方法、装置和系统
CN108347460B (zh) 资源访问方法及装置
CN107317828B (zh) 文件下载方法及装置
CN107104760B (zh) 一种传输数据包的方法、客户端以及服务器
CN110138887B (zh) 一种数据处理方法、装置及存储介质
CN105025064B (zh) 下载文件的方法、装置及系统
CN110417861B (zh) 一种信息推送方法以及相关装置
CN111371916B (zh) 一种数据处理方法及相关设备
CN106339402B (zh) 一种推荐内容推送的方法、装置及系统
CN115118636B (zh) 网络抖动状态的确定方法、装置、电子设备及存储介质
CN113873048B (zh) 应用下载平台中应用包的下载方法及系统
CN104951506A (zh) 获取多媒体文件的方法和装置
CN112214699B (zh) 一种页面处理的方法及相关装置
CN112188586B (zh) 网络接入方法及装置
CN112153154A (zh) 一种数据传输的方法以及相关装置
CN113961380A (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