[go: up one dir, main page]

CN108234207B - 一种基于内容分发网络cdn的故障定位方法和装置 - Google Patents

一种基于内容分发网络cdn的故障定位方法和装置 Download PDF

Info

Publication number
CN108234207B
CN108234207B CN201711485167.1A CN201711485167A CN108234207B CN 108234207 B CN108234207 B CN 108234207B CN 201711485167 A CN201711485167 A CN 201711485167A CN 108234207 B CN108234207 B CN 108234207B
Authority
CN
China
Prior art keywords
access
request
test
content delivery
access response
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
CN201711485167.1A
Other languages
English (en)
Other versions
CN108234207A (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology 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 Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201711485167.1A priority Critical patent/CN108234207B/zh
Publication of CN108234207A publication Critical patent/CN108234207A/zh
Application granted granted Critical
Publication of CN108234207B publication Critical patent/CN108234207B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种基于内容分发网络CDN的故障定位方法和装置,包括:接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;根据所述访问请求与所述访问响应生成故障测试结果;从而提高故障处理效率。

Description

一种基于内容分发网络CDN的故障定位方法和装置
技术领域
本发明涉及计算机处理的技术领域,特别是涉及一种基于内容分发网络CDN的故障定位方法和一种基于内容分发网络CDN的故障定位装置。
背景技术
网站经常使用CDN(Content Delivery Network,内容分发网络)对数据流进行传输,CDN是通过在现有的网络中增加一层新的网络结构,部署有多个节点,用于缓存数据,使用户可以将数据传输到就近的节点上或从就近的节点获取所需的数据,提供相应的服务。
如果CDN出现故障,目前需要人工从CDN的各个节点获取日志文件,分析日志文件中的数据进行故障的定位,操作繁琐,需要耗费大量的时间,人力成本较高,定位周期长,故障处理效率较低。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于内容分发网络CDN的故障定位方法和相应的一种基于内容分发网络CDN的故障定位装置。
依据本发明的一个方面,提供了一种基于内容分发网络CDN的故障定位方法,包括:
接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;
依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;
接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;
根据所述访问请求与所述访问响应生成故障测试结果。
可选地,还包括:
获取所述客户端对应的域名系统的地址与本地网络信息;
将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
可选地,所述依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据,包括:
针对所述故障测试请求生成测试标识;
采用所述测试标识针对所述目标数据生成测试指令;
将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据。
可选地,所述内容分发网络CDN具有多个节点;
所述接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应,包括:
接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求;
接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
可选地,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,与源网站进行通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信;
所述边缘节点的访问请求来自所述客户端,访问响应来自所述父层节点;
所述父层节点的访问请求来自所述边缘节点,访问响应来自所述源网站。
可选地,所述根据所述访问请求与所述访问响应生成故障测试结果,包括:
当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
可选地,所述按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果,包括:
从所述访问请求与所述访问响应中提取时间戳;
按照所述时间戳的顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
可选地,所述根据所述访问请求与所述访问响应生成故障测试结果,还包括:
当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应;
确定缺失的访问请求和/或访问响应所属的节点出现故障。
根据本发明的另一方面,提供了一种基于内容分发网络CDN的故障定位装置,包括:
故障测试请求接收模块,用于接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;
测试指令发送模块,用于依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;
访问数据接收模块,用于接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;
故障测试结果生成模块,用于根据所述访问请求与所述访问响应生成故障测试结果。
可选地,还包括:
客户端信息获取模块,用于获取所述客户端对应的域名系统的地址与本地网络信息;
客户端信息写入模块,用于将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
可选地,所述测试指令发送模块包括:
测试标识生成子模块,用于针对所述故障测试请求生成测试标识;
测试指令生成子模块,用于采用所述测试标识针对所述目标数据生成测试指令;
测试指示子模块,用于将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据。
可选地,所述内容分发网络CDN具有多个节点;
所述访问数据接收模块包括:
访问请求接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求;
访问响应接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
可选地,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,与源网站进行通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信;
所述边缘节点的访问请求来自所述客户端,访问响应来自所述父层节点;
所述父层节点的访问请求来自所述边缘节点,访问响应来自所述源网站。
可选地,所述故障测试结果生成模块包括:
访问数据串联子模块,用于当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
可选地,所述访问数据串联子模块包括:
时间戳提取单元,用于从所述访问请求与所述访问响应中提取时间戳;
时间串联单元,用于按照所述时间戳的顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
可选地,所述故障测试结果生成模块还包括:
访问缺失查询子模块,用于当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应;
故障确定子模块,用于确定缺失的访问请求和/或访问响应所属的节点出现故障。
本发明实施例接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求,依据该故障测试请求向客户端发送测试指令,以向内容分发网络CDN访问目标数据,接收内容分发网络CDN针对目标数据发送的访问请求与访问响应,根据访问请求与访问响应生成故障测试结果,自动获取了访问过程的数据,无需人工获取内容分发网络CDN中的各个节点获取日志文件,快速在访问过程中进行故障的定位,操作简便,大大减少了耗费的时间,人力成本低,故障处理效率高。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种基于内容分发网络CDN的故障定位方法实施例的步骤流程示意图;
图2示出了根据本发明一个实施例的一种内容分发网络CDN的结构示意图;
图3示出了根据本发明一个实施例的另一种基于内容分发网络CDN的故障定位方法实施例的步骤流程示意图;以及
图4示出了根据本发明一个实施例的一种基于内容分发网络CDN的故障定位装置实施例的结构示意框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明一个实施例的一种基于内容分发网络CDN的故障定位方法实施例的步骤流程示意图,具体可以包括如下步骤:
步骤101,接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求。
在内容分发网络CDN中,通常具有多个用于传输、缓存数据(如直播流、缓存数据等)的节点,在某个节点接收到客户端、源网站的数据(如直播流、缓存数据等)之后,可以推送至其他节点,在用户访问数据(如直播流、缓存数据等)的时候,通过调度将用户的请求路由或者引导到离用户接入网络最近或者访问效果最佳的节点上,由该节点为用户提供数据(如直播流、缓存数据等);相对于直接访问源网站,这种方式缩短了用户和数据(如直播流、缓存数据等)之间的网络距离,从而达到加速的效果。
需要说明的是,在不同的内容分发网络CDN中,拓扑结构可能有所不同。
在一种实施方式中,内容分发网络CDN的多个节点包括中心节点、父层节点、边缘节点。
在某些情况下,中心节点为资源的超汇聚节点,可以与源网站进行通信,汇聚了大量源网站的资源,这些资源一般为变化较少的资源,例如,视频、图片等等。
在某些情况下,中心节点仅保存文件信息,如URL(Uniform Resource Locator,统一资源定位符)、大小等,并不直接缓存文件,内容分发网络CDN中的其他节点从该中心节点中获取待缓存的文件的文件信息,在缓存完该文件之后,上报至中心节点,中心节点统计出其他节点缓存的文件。
需要说明的是,在某些内容分发网络CDN中可以部署中心节点,即该部分内容分发网络CDN为中心节点-父层节点-边缘节点的三层结构,在某些内容分发网络CDN中可以不部署中心节点,即该部分内容分发网络CDN为父层节点-边缘节点的二层结构,本发明实施例对此不加以限制。
父层节点为资源的次汇聚节点,一方面,由于在内容分发网络CDN内部,各节点之间一般使用双向光纤等专有的通信线缆进行通信,中心节点与父层节点之间的通信质量有较高的保障,在获取变化较少的资源、外部源网站通信质量较差等情况下,可以与中心节点进行通信,从中心节点获取资源,另一方面,在获取新的资源、进行数据操作(如支付)等情况下,可以与源网站进行通信,从源网站获取资源。
再者,父层节点之间可以相互通信,从而组成父层节点与边缘节点之间的传输路径,即一个节点到另一个节点所经过的中间传输的节点及通信线缆所组成的路径。
具体而言,选取传输路径的方式可以有多种,可以根据实际需求选择如下至少一种方式:
1、选取传输性能符合设定的要求的传输路径。
传输性能是指传输流数据的传输路径的传输能力,可以根据节点间的距离、传输速度、数据丢失率、阻塞状况等确定传输路径的传输性能,通过定期更新每两个节点间的传输性能,根据节点之间的各传输路径的传输性能,选取其中传输性能符合要求或传输性能最好的传输路径。
2、选取经过的节点数量最少的传输路径。
在多条传输路径中选取节点数量最少的传输路径,这样,就可以占用最少的传输资源完成数据从一个节点到另一个节点的传输。
3、选取在一段时间内没有选择过的传输路径。
如果历史上有流数据从一个节点传输至另一个节点,那么,当有新的数据要从这两个之间进行传输,可以在一段时间内没有选择过的各传输路径中选取一条,以避免一直选取同一条传输路径导致该传输路径上的节点负载过重。
当然,上述传输路径的选取方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他传输路径的选取方式,本发明实施例对此不加以限制。另外,除了上述传输路径的选取方式外,本领域技术人员还可以根据实际需要采用其它传输路径的选取方式,本发明实施例对此也不加以限制。
此外,父层节点一般部署有多个运营商的机房,机房之间通过双线光线等专有的通信线缆进行连接,边缘节点一般是部署在某个运营商的网络中,同运营商之间的父层节点的机房可以与边缘节点进行通信。
边缘节点之间具有相互通信的能力,但是,一般情况下,不会直接进行通信。
边缘节点可以接入客户端,例如,手机、平板电脑、电视等等,用于与客户端进行通信,如获取其采集的直播流,或者,将直播流推送至该客户端。
为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中的内容分发网络CDN。
如图2所示,父层节点为A1、A2、A3、A4,可以按照地理位置进行部署,例如,A1部署在北京、A2部署在上海、A3部署在广州,A4部署在郑州,A1可以与A2进行通信,A2可以与A3进行通信,A3可以与A4进行通信,A4可以与A1进行通信,父层节点之间的循环通信,可以组成环状的父层结构。
此外,每个父层节点可以连接一个或多个边缘节点,边缘节点也可以按照地理位置、运营商等因素进行部署,边缘节点之间一般不直接进行通信,而是经过父层节点进行中转,父层节点A1连接边缘节点A11、A12,父层节点A2连接缘节点A21、A22,父层节点A3连接缘节点A31、A32、A33,父层节点A4连接缘节点A41、A42、A43。
边缘节点接入客户端,如边缘节点A32接入客户端B1,用于接收客户端的数据(如直播流),或者,将数据(如直播流)发送至该客户端。
在本发明实施例中,一个独立于内容分发网络CDN的处理中心可以对外提供Web页面,使用内容分发网络CDN分发数据的用户,在发现某个数据存在故障时,则可以使用账号登录该Web页面,以该出现故障的数据作为目标数据,向处理中心发送故障测试请求。
步骤102,依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据。
在具体实现中,处理中心接收到客户端的故障测试请求之后,则可以向该客户端返回测试指令。
该客户端可以依据该测试指令,向内容分发网站访问目标数据。
在本发明的一个实施例中,步骤102可以包括如下子步骤:
子步骤S11,针对所述故障测试请求生成测试标识。
子步骤S12,采用所述测试标识针对所述目标数据生成测试指令。
子步骤S13,将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据。
在本发明实施例中,处理中心可以针对本次故障测试请求生成唯一的测试标识,如唯一的ID,并生成测试指令,携带该测试标识发送至客户端,客户端可以依据该测试标识向访问内容分发网络CDN访问目标数据。
步骤103,接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应。
在实际应用中,内容分发网络CDN在接收到客户端的访问之后,若是识别出该访问是基于测试指令触发的,除了正常在内容分发网络CDN的内部传递访问请求与访问响应之外,还可以将该访问请求与访问响应上传至处理中心,以进行故障定位。
在本发明的一个实施例中,内容分发网络CDN具有多个节点,则在本发明实施例中,步骤103可以包括如下子步骤:
子步骤S21,接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求。
子步骤S22,接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
在本发明实施例中,源于客户端的访问可以携带处理中心下发的测试标识,内容分发网络CDN中的节点接收到下游节点或客户端携带该测试标识的测试请求,一方面,可以将该访问请求上传至处理中心,另一方面,可以忽略本地是否存储目标数据,进行回源操作,即生成携带该测试标识的访问请求,发送至上游节点或源网站,从上游节点或源网站获取目标数据,以尽可能测试内容分发网络CDN中相关节点。
内容分发网络CDN中的节点接收到上游节点或源网站携带该测试标识、目标数据的访问响应,一方面,可以将该访问响应上传至处理中心,另一方面,可以生成携带该测试标识、目标数据的访问响应,发送至下游节点或客户端。
不同的内容分发网络CDN中的拓扑结构有所不同,客户端、上游节点、下游节点、源网站之间的结构也有所不同,本发明实施例对此不加以限制。
例如,在上述内容分发网络CDN中,边缘节点的访问请求来自客户端,访问响应来自父层节点;父层节点的访问请求来自边缘节点,访问响应来自源网站。
步骤104,根据所述访问请求与所述访问响应生成故障测试结果。
处理中心接收到内容分发网络CDN处理目标数据的访问时生成的各个访问请求与各个访问响应,这些访问请求与访问响应中携带了内容分发网络CDN处理时的信息,则可以对其处理的进行分析,获得故障测试结果。
在本发明的一个实施例中,步骤104可以包括如下子步骤:
子步骤S31,当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
子步骤S32,当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应。
子步骤S33,确定缺失的访问请求和/或访问响应所属的节点出现故障。
在本发明实施例中,如果访问请求与访问响应中都携带同一个测试标识,则可以表示这些内容分发网络CDN处理针对目标数据的同一个的访问,因此,可以访问顺序对访问请求与访问响应进行串联,作为其中一项故障测试结果。
在一种实施方式中,可以从访问请求与访问响应中提取时间戳,按照时间戳的顺序将访问请求与所述访问响应进行串联,获得故障测试结果。
对于一个访问(包括访问请求与访问响应)而言,其完整的访问链路可以是源于客户端,经过内容分发网络CDN,到达源网站,再经过内容分发网络CDN,返回客户端。
例如,对于上述内容分发网络CDN,其完整稿的访问过程可以为客户端→边缘节点→父层节点→源网站→父层节点→边缘节点→客户端。
如果访问链路中存在中断,缺失了部分节点,则表示缺失的节点可能存在故障,如果中断的地方为源网站,即源网站可能出现故障。
当然,除了节点缺失之外,还可以基于串联的访问请求与访问响应进行其他故障分析,例如,可以计算相邻访问(包括访问请求与访问响应)之间的时间差值,得出处理的时延,从而辅助分析网络问题或是节点故障,等等,本发明实施例对此不加以限制。
本发明实施例接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求,依据该故障测试请求向客户端发送测试指令,以向内容分发网络CDN访问目标数据,接收内容分发网络CDN针对目标数据发送的访问请求与访问响应,根据访问请求与访问响应生成故障测试结果,自动获取了访问过程的数据,无需人工获取内容分发网络CDN中的各个节点获取日志文件,快速在访问过程中进行故障的定位,操作简便,大大减少了耗费的时间,人力成本低,故障处理效率高。
参照图3,示出了根据本发明一个实施例的另一种基于内容分发网络CDN的故障定位方法实施例的步骤流程示意图,具体可以包括如下步骤:
步骤301,接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求。
步骤302,依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据。
步骤303,接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应。
步骤304,根据所述访问请求与所述访问响应生成故障测试结果。
步骤305,获取所述客户端对应的域名系统的地址与本地网络信息。
步骤306,将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
在本发明实施例中,客户端打开发送故障测试请求的页面时,可以触发自动检测自身的本地网络信息与DNS(Domain Name System,域名系统)的地址,通过故障测试请求携带发送至处理中心,以此作为另一个项故障测试结果。
其中,DNS是一种用于TCP/IP(Transmission Control Protocol/InternetProtocol,传输控制协议/互联网络协议)应用程序的分布式数据库,它提供主机名字和IP地址之间的转换信息。
DNS分为Client(客户端)和Server(服务器),Client扮演发问的角色,也就是问Server一个Domain Name(域名)的真正IP地址,Server要回答此Domain Name的真正IP地址。通常,当地的DNS先会查自己的资料库,如果自己的资料库没有此Domain Name的真正IP地址,则会往该DNS上所设的DNS服务器询问,依此得到此Domain Name的真正IP地址之后,将该Domain Name对应的真正IP地址存起来,并回答客户。
此外,该本地网络信息可以包括IP地址等。
如果DNS的地址与本地网络信息不匹配,则表示DNS的解析可能出错。
如果DNS的地址与本地网络信息匹配,则表示DNS的解析可能正常。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了根据本发明一个实施例的一种基于内容分发网络CDN的故障定位装置实施例的结构示意框图,具体可以包括如下模块:
故障测试请求接收模块401,用于接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;
测试指令发送模块402,用于依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;
访问数据接收模块403,用于接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;
故障测试结果生成模块404,用于根据所述访问请求与所述访问响应生成故障测试结果。
在本发明的一个实施例中,还包括:
客户端信息获取模块,用于获取所述客户端对应的域名系统的地址与本地网络信息;
客户端信息写入模块,用于将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
在本发明的一个实施例中,所述测试指令发送模块402包括:
测试标识生成子模块,用于针对所述故障测试请求生成测试标识;
测试指令生成子模块,用于采用所述测试标识针对所述目标数据生成测试指令;
测试指示子模块,用于将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据。
在本发明的一个实施例中,所述内容分发网络CDN具有多个节点;
所述访问数据接收模块403包括:
访问请求接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求;
访问响应接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
在本发明的一个实施例中,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,与源网站进行通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信;
所述边缘节点的访问请求来自所述客户端,访问响应来自所述父层节点;
所述父层节点的访问请求来自所述边缘节点,访问响应来自所述源网站。
在本发明的一个实施例中,所述故障测试结果生成模块404包括:
访问数据串联子模块,用于当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
在本发明的一个实施例中,所述访问数据串联子模块包括:
时间戳提取单元,用于从所述访问请求与所述访问响应中提取时间戳;
时间串联单元,用于按照所述时间戳的顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
在本发明的一个实施例中,所述故障测试结果生成模块404还包括:
访问缺失查询子模块,用于当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应;
故障确定子模块,用于确定缺失的访问请求和/或访问响应所属的节点出现故障。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于内容分发网络CDN的故障定位设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

Claims (10)

1.一种基于内容分发网络CDN的故障定位方法,包括:
接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;
依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;
接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;
根据所述访问请求与所述访问响应生成故障测试结果;
所述依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据,包括:
针对所述故障测试请求生成测试标识;
采用所述测试标识针对所述目标数据生成测试指令;
将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据;
所述根据所述访问请求与所述访问响应生成故障测试结果,包括:
当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果;
所述根据所述访问请求与所述访问响应生成故障测试结果,还包括:
当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应;
确定缺失的访问请求和/或访问响应所属的节点出现故障。
2.如权利要求1所述的方法,其特征在于,还包括:
获取所述客户端对应的域名系统的地址与本地网络信息;
将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
3.如权利要求1所述的方法,其特征在于,所述内容分发网络CDN具有多个节点;
所述接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应,包括:
接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求;
接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
4.如权利要求3所述的方法,其特征在于,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,与源网站进行通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信;
所述边缘节点的访问请求来自所述客户端,访问响应来自所述父层节点;
所述父层节点的访问请求来自所述边缘节点,访问响应来自所述源网站。
5.如权利要求1所述的方法,其特征在于,所述按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果,包括:
从所述访问请求与所述访问响应中提取时间戳;
按照所述时间戳的顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
6.一种基于内容分发网络CDN的故障定位装置,包括:
故障测试请求接收模块,用于接收客户端针对存储在内容分发网络CDN中的目标数据发送的故障测试请求;
测试指令发送模块,用于依据所述故障测试请求向所述客户端发送测试指令,以向所述内容分发网络CDN访问所述目标数据;
访问数据接收模块,用于接收所述内容分发网络CDN针对所述目标数据发送的访问请求与访问响应;
故障测试结果生成模块,用于根据所述访问请求与所述访问响应生成故障测试结果;
所述测试指令发送模块包括:
测试标识生成子模块,用于针对所述故障测试请求生成测试标识;
测试指令生成子模块,用于采用所述测试标识针对所述目标数据生成测试指令;
测试指示子模块,用于将所述测试指令发送至所述客户端,以向所述内容分发网络CDN访问所述目标数据;
所述故障测试结果生成模块包括:
访问数据串联子模块,用于当所述访问请求中的测试标识与所述访问响应中的测试标识相同时,按照访问顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果;
所述故障测试结果生成模块还包括:
访问缺失查询子模块,用于当串联之后的所述访问请求与所述访问响应未组成完整的访问链路时,则查询缺失的访问请求和/或访问响应;
故障确定子模块,用于确定缺失的访问请求和/或访问响应所属的节点出现故障。
7.如权利要求6所述的装置,其特征在于,还包括:
客户端信息获取模块,用于获取所述客户端对应的域名系统的地址与本地网络信息;
客户端信息写入模块,用于将所述域名系统的地址与所述本地网络信息写入所述故障测试结果。
8.如权利要求6所述的装置,其特征在于,所述内容分发网络CDN具有多个节点;
所述访问数据接收模块包括:
访问请求接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问请求时,发送的所述访问请求;
访问响应接收子模块,用于接收所述节点在接收到携带所述测试标识、针对所述目标数据的访问响应时,发送的所述访问响应。
9.如权利要求8所述的装置,其特征在于,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,与源网站进行通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信;
所述边缘节点的访问请求来自所述客户端,访问响应来自所述父层节点;
所述父层节点的访问请求来自所述边缘节点,访问响应来自所述源网站。
10.如权利要求6所述的装置,其特征在于,所述访问数据串联子模块包括:
时间戳提取单元,用于从所述访问请求与所述访问响应中提取时间戳;
时间串联单元,用于按照所述时间戳的顺序将所述访问请求与所述访问响应进行串联,获得故障测试结果。
CN201711485167.1A 2017-12-29 2017-12-29 一种基于内容分发网络cdn的故障定位方法和装置 Active CN108234207B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711485167.1A CN108234207B (zh) 2017-12-29 2017-12-29 一种基于内容分发网络cdn的故障定位方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711485167.1A CN108234207B (zh) 2017-12-29 2017-12-29 一种基于内容分发网络cdn的故障定位方法和装置

Publications (2)

Publication Number Publication Date
CN108234207A CN108234207A (zh) 2018-06-29
CN108234207B true CN108234207B (zh) 2021-09-21

Family

ID=62646356

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711485167.1A Active CN108234207B (zh) 2017-12-29 2017-12-29 一种基于内容分发网络cdn的故障定位方法和装置

Country Status (1)

Country Link
CN (1) CN108234207B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109495319B (zh) * 2018-12-24 2021-12-28 网易(杭州)网络有限公司 Cdn节点的故障信息确定方法、装置及设备
CN109640127A (zh) * 2018-12-30 2019-04-16 北京奇艺世纪科技有限公司 内容分发网络的故障定位方法及装置
CN111444081B (zh) * 2019-01-17 2023-05-02 阿里巴巴集团控股有限公司 确定、响应和生成方法、客户端、服务器、设备和介质
CN111628878B (zh) * 2019-02-27 2024-11-29 北京奇虎科技有限公司 基于多级网络节点的故障定位方法、装置及系统
CN110380890B (zh) * 2019-06-03 2021-04-02 网宿科技股份有限公司 一种cdn系统服务质量检测方法及系统
CN110635958B (zh) * 2019-11-05 2022-04-29 北京知道创宇信息技术股份有限公司 一种网络故障诊断方法、装置及存储介质
CN112202643B (zh) * 2020-10-12 2022-03-29 成都知道创宇信息技术有限公司 网络检测方法、装置、测试主机及存储介质
CN112769643B (zh) * 2020-12-28 2023-12-29 北京达佳互联信息技术有限公司 资源调度方法、装置、电子设备及存储介质
CN114363151A (zh) * 2022-01-07 2022-04-15 北京金山云网络技术有限公司 故障检测方法和装置、电子设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002079905A2 (en) * 2001-04-02 2002-10-10 Akamai Technologies, Inc. Scalable, high performance and highly available distributed storage system for internet content
CN100518105C (zh) * 2007-07-27 2009-07-22 华为技术有限公司 实现网络监控的方法、系统及内容分发网络
CN102142989A (zh) * 2010-12-24 2011-08-03 华为技术有限公司 内容分发网络中的故障定位方法及装置
CN106130786B (zh) * 2016-07-26 2019-05-07 腾讯科技(深圳)有限公司 一种网络故障的检测方法及装置

Also Published As

Publication number Publication date
CN108234207A (zh) 2018-06-29

Similar Documents

Publication Publication Date Title
CN108234207B (zh) 一种基于内容分发网络cdn的故障定位方法和装置
US10715480B2 (en) Content node network address selection for content delivery
CN107395683B (zh) 一种回源路径的选择方法及服务器
CN108737467B (zh) 一种服务器日志查看方法、装置和系统
US20130282890A1 (en) In-stream collection of analytics information in a content delivery system
CN105681387A (zh) 一种直播视频的上传方法、装置及系统
CN108234639A (zh) 一种基于内容分发网络cdn的数据访问方法和装置
US10795744B2 (en) Identifying failed customer experience in distributed computer systems
CN102739811B (zh) 域名解析的方法和设备
CN103167044A (zh) 域名系统dns的智能解析的方法、拨测装置和系统
CN106411629B (zh) 一种用于监控cdn节点的状态的方法和设备
CN103716398A (zh) Cdn服务器的监控方法和监控系统
US10375195B2 (en) Content node selection using network performance profiles
EP3609134B1 (en) Bgp anycast cluster service quality detection method and detection apparatus
EP3066575B1 (en) Server network address selection based on network characteristics of service providers
CN108234319B (zh) 一种数据的传输方法和装置
CN105071989A (zh) 视频内容分发质量监控系统及其监控方法
WO2017058276A1 (en) Persistent edge state of end user devices at cache nodes
EP3579526B1 (en) Resource file feedback method and apparatus
CN102291458B (zh) 一种p2p服务器架构方法
CN107959704A (zh) 一种数据处理方法及家庭网关
CN111600929B (zh) 传输线路探测方法、路由策略生成方法及代理服务器
US11165858B2 (en) Server selection apparatus, server selection method and program
CN109981386B (zh) 网络质量的测试方法、测试服务器和测试系统
CN101924665B (zh) 一种Cable Modem的监测系统及监测方法

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