CN110474964B - Cdn调度的方法、装置、设备和计算机存储介质 - Google Patents
Cdn调度的方法、装置、设备和计算机存储介质 Download PDFInfo
- Publication number
- CN110474964B CN110474964B CN201910651737.2A CN201910651737A CN110474964B CN 110474964 B CN110474964 B CN 110474964B CN 201910651737 A CN201910651737 A CN 201910651737A CN 110474964 B CN110474964 B CN 110474964B
- Authority
- CN
- China
- Prior art keywords
- domain name
- scheduling
- node server
- server
- address
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000001360 synchronised effect Effects 0.000 claims description 18
- 230000001133 acceleration Effects 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- WQZGKKKJIJFFOK-GASJEMHNSA-N Glucose Natural products OC[C@H]1OC(O)[C@H](O)[C@@H](O)[C@@H]1O WQZGKKKJIJFFOK-GASJEMHNSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000008103 glucose Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种内容分发网络(CDN)调度的方法、装置、设备和计算机存储介质,其中方法包括:节点服务器接收来自终端设备的访问请求;利用从权威域名服务器获取的调度策略,查询所述终端设备的IP地址对应的调度IP地址;若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务;否则,将所述访问请求重定向至所述调度IP地址。本发明能够提高CDN系统的服务质量。
Description
【技术领域】
本发明涉及网络通信技术领域,特别涉及一种CDN(Content Delivery Network,内容分发网络)调度的方法、装置、设备和计算机存储介质。
【背景技术】
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就被认为是现有技术。
CDN(Content Delivery Network,内容分发网络)的基本原理是广泛采用各种节点服务器,将这些节点服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载均衡技术将用户的访问指向距离最近的工作正常的节点服务器上,由节点服务器直接响应用户的访问请求。
CDN系统的服务质量与调度系统的准确性有重要关系,目前调度系统主要使用DNS(Domain Name System,域名系统)调度。DNS调度的过程可以如图1中所示,假设用户通过终端设备需要访问某域名,例如http://a.com/index.html。终端设备首先向预先配置的本地DNS(Local DNS)发送域名解析请求,该域名解析请求中包含域名a.com。Local DNS将域名解析请求发送至权威DNS。权威DNS依据调度策略返回该域名a.com对应的节点服务器A的IP(Internet Protocol,互联网协议)地址,其中节点服务器A是依据Local DNS的位置确定的。例如,Local DNS位于北京市海淀区,那么将位于北京市的节点服务器A的IP地址返回给Local DNS。Local DNS接收到节点服务器A的IP地址后发送给终端设备。终端设备依据节点服务器A的IP地址向节点服务器A发送访问请求http://a.com/index.html,由节点服务器A向终端设备提供服务,即返回服务响应。
然而,上述DNS调度可能由于Local DNS不正确、终端设备多个网络出口等问题导致CND系统的服务质量差。例如终端设备发生位置移动,已经从北京市海淀区移动到了江苏省,但依然向预先配置的位于北京市的Local DNS发送域名解析请求,那么依据上述流程依旧会调度位于北京市的节点服务器A的IP地址给终端设备。显然这种调度结果并不准确,实际上应该调度位于江苏省的节点服务器B的IP地址给终端设备。这就会造成CDN系统的服务质量差。
【发明内容】
有鉴于此,本发明提供了一种CDN调度的方法、装置、设备和计算机存储介质,以便于提高CDN系统的服务质量。
具体技术方案如下:
一方面,本发明提供了一种内容分发网络CDN调度的方法,该方法包括:
节点服务器接收来自终端设备的访问请求;
利用从权威域名服务器获取的调度策略,查询所述终端设备的互联网协议IP地址对应的调度IP地址;
若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务;否则,将所述访问请求重定向至所述调度IP地址。
根据本发明一优选实施方式,该方法还包括:
所述节点服务器从权威域名服务器获取调度策略。
根据本发明一优选实施方式,所述节点服务器从权威域名服务器获取调度策略包括:
所述节点服务器访问所述权威域名服务器提供的同步调度策略的超文本传输协议HTTP接口,以获取调度策略;和/或,
所述节点服务器通过CDN加速链路,从所述权威域名服务器获取调度策略。
根据本发明一优选实施方式,所述节点服务器从权威域名服务器获取调度策略包括:
所述节点服务器向所述权威域名服务器发送包含该节点服务器所服务域名的同步请求;
接收所述权威域名服务器返回的所述节点服务器所服务域名的调度策略。
根据本发明一优选实施方式,所述调度策略包括键值对;
所述键值对中键包括域名标识、区域范围和运营商信息;
所述键值对中值包括调度IP地址。
根据本发明一优选实施方式,查询所述终端设备的IP地址对应的调度IP地址包括:
确定所述访问请求所包含域名信息对应的域名标识、所述终端设备的IP地址对应的区域范围和运营商;
利用确定出的域名标识、区域范围和运营商信息拼接成键并查询所述调度策略中的键值对,得到对应的调度IP地址。
第二方面,本发明还提供了一种CDN调度的方法,该方法包括:
权威域名服务器向节点服务器提供调度策略,以便所述节点服务器接收到来自终端设备的访问请求后,依据所述调度策略查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务,否则,由所述节点服务器将所述访问请求重定向至所述调度IP地址。
根据本发明一优选实施方式,该方法还包括:
所述权威域名服务器接收到本地域名服务器的域名查询请求后,依据调度策略向所述本地域名服务器返回所述节点服务器的IP地址。
根据本发明一优选实施方式,所述权威域名服务器向节点服务器提供调度策略包括:
所述权威域名服务器提供同步调度策略的HTTP接口供节点服务器访问以获取调度策略。
根据本发明一优选实施方式,所述权威域名服务器向节点服务器提供调度策略包括:
所述权威域名服务器接收节点服务器发送的包含该节点服务器所对应域名的同步请求;
向所述节点服务器返回所述节点服务器所对应域名的调度策略。
第三方面,本发明还提供了一种CDN调度的装置,设置于节点服务器,该装置包括:
同步单元,用于从权威域名服务器获取调度策略;
接收单元,用于接收来自终端设备的访问请求;
调度单元,用于利用从权威域名服务器获取的调度策略,查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由本节点服务器为所述终端设备提供服务;
重定向单元,用于若所述调度IP地址不包含所述节点服务器的IP地址,则将所述访问请求重定向至所述调度IP地址。
根据本发明一优选实施方式,所述同步单元,具体用于访问所述权威域名服务器提供的同步调度策略的HTTP接口,以获取调度策略;和/或,通过CDN加速链路,从所述权威域名服务器获取调度策略。
根据本发明一优选实施方式,所述同步单元,具体用于向所述权威域名服务器发送包含该节点服务器所服务域名的同步请求;接收所述权威域名服务器返回的所述节点服务器所服务域名的调度策略。
根据本发明一优选实施方式,所述调度策略包括键值对,所述键值对中键包括域名标识、区域范围和运营商信息;所述键值对中值包括调度IP地址;
所述调度单元,具体用于确定所述访问请求所包含域名信息对应的域名标识、所述终端设备的IP地址对应的区域范围和运营商;利用确定出的域名标识、区域范围和运营商信息拼接成键并查询所述调度策略中的键值对,得到对应的调度IP地址。
第四方面,本发明提供了一种CDN调度的装置,设置于权威域名服务器,该装置包括:
同步单元,用于向节点服务器提供调度策略,以便所述节点服务器接收到来自终端设备的访问请求后,依据所述调度策略查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务,否则,由所述节点服务器将所述访问请求重定向至所述调度IP地址。
根据本发明一优选实施方式,该装置还包括:
调度单元,用于接收到本地域名服务器的域名查询请求后,依据调度策略向所述本地域名服务器返回所述节点服务器的IP地址。
根据本发明一优选实施方式,所述同步单元,具体用于提供同步调度策略的HTTP接口供节点服务器访问以获取调度策略。
根据本发明一优选实施方式,所述同步单元,具体用于接收节点服务器发送的包含该节点服务器所对应域名的同步请求;向所述节点服务器返回所述节点服务器所对应域名的调度策略。
第五方面,本发明提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的方法。
第六方面,本发明提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上任一所述的方法。
由以上技术方案可以看出,本发明中节点服务器通过从权威域名服务器获取调度策略,在节点服务器上也具备针对自身域名的调度功能,在接收到终端设备的访问请求后,终端设备的IP地址对应的调度IP地址不包括本节点服务器时,能够将访问请求重定向至调度IP地址。这种方式使得即便存在Local DNS配置不准确、终端设备存在多个网络出口等问题引起DNS调度的节点服务器的IP地址不准确,也能够最终调度至准确的节点服务器为终端设备提供服务,因此提高了CDN系统的服务质量。
【附图说明】
图1为现有技术中DNS调度的流程示意图;
图2a为本发明所基于的系统架构图;
图2b为本发明实施例提供的一种CDN加速链路的组网示意图;
图3为本发明实施例提供的方法示意图;
图4为本发明实施例提供的一个方法示例图;
图5为本发明实施例提供的一种装置结构图;
图6为本发明实施例提供的另一种装置结构图;
图7示出了适于用来实现本发明实施方式的示例性计算机系统/服务器的框图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
为了方便对本发明的理解,首先对本发明所基于的系统架构进行简单描述。如图2a中所示,该系统架构与现有DNS调度类似,均包括终端设备、Local DNS、权威DNS和各节点服务器。
其中终端设备可以安装有各种客户端或浏览器,用户能够通过客户端或浏览器访问服务器并获取服务。终端设备可以包括但不限于诸如:智能移动终端、智能家居设备、网络设备、可穿戴式设备、智能医疗设备、PC(个人计算机)等。其中智能移动设备可以包括诸如手机、平板电脑、笔记本电脑、PDA(个人数字助理)、互联网汽车等。智能家居设备可以包括智能家电设备,诸如智能电视、智能空调、智能热水器、智能冰箱、智能空气净化器等等,智能家居设备还可以包括智能门锁、智能插座、智能电灯、智能摄像头等。网络设备可以包括诸如交换机、无线AP、服务器等。可穿戴式设备可以包括诸如智能手表、智能眼镜、智能手环、虚拟现实设备、增强现实设备、混合现实设备(即可以支持虚拟现实和增强现实的设备)等等。智能医疗设备可以包括诸如智能体温计、智能血压仪、智能血糖仪等等。
节点服务器通常是服务提供商源服务器,可以直接为终端设备提供服务,包括内容服务、存储服务等等。在本发明中,节点服务器可以是单一服务器,也可以是多个服务器构成的服务器集群,即作为一个集群统一向外提供服务,通常一个服务器集群形式存在的节点服务器对外共用一个IP地址。
一个域名可以对应一个节点服务器,也可以对应多个节点服务器。在本发明实施例更多地应用于后一种情况,即多个节点服务器分设于不同的区域,共同为同一域名来提供服务。
Local DNS和权威DNS的主要功能与现有相同,不同之处在于,权威DNS与节点服务器之间存在数据交互,且在节点服务器具备调度功能。下面结合实施例对本发明进行详细描述。
图3为本发明实施例提供的方法示意图,本方法中的处理由节点服务器执行。本发明的改进主要体现在节点服务器的功能上,如图3中所示,该方法主要包括以下步骤:
在301中,节点服务器从权威DNS获取调度策略。
在本发明实施例中,节点服务器可以定时从权威DNS获取调度策略。当然,除了定时获取的方式之外,也可以采用其他诸如基于特定事件触发的方式等。但由于权威DNS中存储的调度策略可能会发生调整,因此优选节点服务器从权威DNS获取调度策略。
对于权威DNS而言,可以提供同步调度策略的HTTP(HyperText TransferProtocol,超文本传输协议)接口供各节点服务器访问以获取调度策略。
在权威DNS上包含全量的调度策略,所有域名对应的调度ip均存储于权威DNS。一个域名可能会指向多个调度IP地址,在调度策略中可以采用域名标识来表示一个域名。若存在n个域名,那么就可以分别标识为d1,d2,…,dn。对于一个域名通常会在不同区域分别设置节点服务器以就近提供服务,节点服务器往往也会以运营商进行区分。因此,一个域名下会以区域范围、与运营商信息来区分指向不同的调度IP地址。其中区域范围可以以省、市等行政区划的范围。
在本发明实施例中,调度策略可以采用键值(key-value)对的存储方式。key包括域名标识、区域范围和运营商信息,value包括调度IP地址。所谓调度IP地址就是域名标识、区域范围和运营商信息所指向的节点服务器的IP地址,也就是说,调度IP地址是能够为终端设备提供服务的最优的节点服务器的IP地址。一个value中的调度IP地址可以是一个,也可以是多个。
各节点服务器仅从权威DNS请求并获取节点服务器自身所服务域名的调度策略,而无需获取全量调度策略。具体地,节点服务器可以向权威DNS发送包含该节点服务器所服务域名的同步请求,权威DNS查询该节点服务器所服务域名对应的key-value对,然后返回给节点服务器,节点服务器存储这些key-value对。
举个例子,假设节点服务器A提供a.com域名的服务,那么其获取的调度策略是包含域名标识d1的所有key-value对,其中d1为a.com的域名标识,例如表1中所示:
表1
key | value |
d1-省份A-运营商a | IP地址1 |
d1-省份B-运营商a | IP地址2 |
d1-省份C-运营商a | IP地址3 |
d1-省份A-运营商b | IP地址4 |
d1-省份B-运营商b | IP地址5 |
d1-省份C-运营商b | IP地址6 |
还存在一种实现方式,节点服务器在从权威DNS获取调度策略时,可以使用CDN加速链路来尽量减小同步调度策略的HTTP接口的压力。CDN加速链路能够保证多个节点服务器请求相同域名的调度策略时,仅有一个同步请求会发送到权威DNS,权威DNS返回的调度策略会被分发至多个节点服务器以进行共享。
具体地,在CDN加速链路中,节点服务器通过多级节点的方式进行组网,如图2b中所示。节点服务器A和节点服务器B为一级节点,节点服务器C为二级节点,节点服务器A和节点服务器B获取调度策略都会经过节点服务器C。若节点服务器A和节点服务器B都请求同步相同的域名的调度策略,则节点服务器C接收到节点服务器A和节点服务器B的同步请求后,仅向权威DNS发送一个同步请求(即CDN的“合并回源”方式)。接收到权威DNS返回的调度策略后,将该调度策略发送给节点服务器A和节点服务器B。
整个过程实际上是将权威DNS作为DNS中的一个源服务器,调度策略作为该源服务器中的“内容”,各节点服务器利用已有的CDN加速链路从该“源服务器”获取调度策略。
在302中,节点服务器接收来自终端设备的访问请求。
在本发明实施例中,终端设备可以通过域名解析的方式获取到权威DNS经由LocalDNS返回的要访问域名对应的节点服务器的IP地址后,依据该节点服务器的IP地址向节点服务器发送访问请求,该访问请求中包括要访问域名的信息、终端设备的IP地址等信息。
在303中,节点服务器利用从权威DNS获取的调度策略,查询终端设备的IP地址对应的调度IP地址。
节点服务器可以确定访问请求所包含域名信息对应的域名标识,通过查询IP地址库确定终端设备的IP地址对应的区域范围和运营商信息。然后将确定出的域名标识、区域范围和运营商信息拼接成key,查询调度策略中对应的value,得到对应的调度IP地址。该调度IP地址是真正能够为该终端设备提供其所请求域名对应服务的最优的节点服务器的IP地址。
在304中,判断调度IP地址是否包含该节点服务器本身的IP地址,如果是,执行305;否则,执行306。
在305中,由该节点服务器为终端设备提供服务,结束本次调度流程。
如果查询出的调度IP地址包含该节点服务器本身的IP地址,说明确实由该节点服务器为终端设备提供服务,节点服务器直接回复服务响应给终端设备从而提供服务,例如返回终端设备所请求的页面内容。
在306中,将该访问请求重定向至调度IP地址,由调度IP地址对应的节点服务器为终端设备提供服务。
如果查询出的调度IP地址不包含该节点服务器本身的IP地址,则说明该节点服务器并非为该终端设备提供服务的最优的节点服务器。这可能是Local DNS不正确、终端设备存在多个网络出口等问题导致的,那么节点服务器可以将该访问请求重定向至调度IP地址对应的节点服务器。即节点服务器向终端设备返回包含调度IP地址的重定向响应(即302响应),终端设备利用调度IP地址向该调度IP地址所指向的节点服务器发送访问请求。调度IP地址所指向的节点服务器接收到访问请求后,也会执行上述图3所示流程,但由于该调度IP地址的节点服务器查询到的调度IP地址会包含自身的IP地址,因此会向终端设备提供服务。
下面结合一个实例对本发明提供的方法进行说明。假设用户通过终端设备希望访问网页http://a.com/index.html,如图4中所示,可以执行以下流程:
在401中,终端设备向Local DNS发送域名解析请求,该域名解析请求中包含域名a.com。其中Local DNS的IP地址可以预先配置于终端设备,也可以通过DHCP(Dynamic HostConfiguration Protocol,动态主机设置协议)的方式得到。
在402中,Local DNS首先查询本地是否有相应的缓存,如果有,则直接向终端设备响应,返回对应的节点服务器的IP地址(此种情况图中未示出)。如果没有,则向权威DNS发送域名解析请求,该域名解析请求中包含要访问的域名a.com以及Local DNS的IP地址。
在403中,权威DNS依据域名a.com以及Local DNS的IP地址,查询调度策略,返回对应节点服务器A的IP地址。
假设Local DNS位于北京,那么权威DNS依据调度策略,将位于北京的、提供a.com域名服务的节点服务器A的IP地址返回。
在404中,Local DNS将节点服务器A的IP地址返回给终端设备。
在405中,终端设备利用节点服务器A的IP地址,向节点服务器A发送访问请求,该访问请求中包含要访问的域名a.com以及终端设备的IP地址。
以上过程与现有技术中DNS调度的过程一致。
在本发明实施例中,各节点服务器均会从权威DNS同步调度策略。
在406中,假设终端设备的IP地址实际上位于江苏,节点服务器A查询调度策略后,发现对应的调度IP地址并非自身的IP地址,而是位于江苏的节点服务器B的IP地址,那么节点服务器A向终端设备返回302响应,包含节点服务器B的IP地址。
在407中,终端设备向位于江苏的节点服务器B发送访问请求。
在408中,由节点服务器B为终端设备提供服务,即返回服务响应。
可以看出,通过本发明实施例提供的方式,终端设备从北京移动到的江苏,即便仍向位于北京的Local DNS发送域名解析请求,最终依然可以调度位于江苏的最优节点服务器B为终端设备提供服务。
以上是对本发明实施例提供的方法进行的详述,下面结合实施例对本发明提供的装置进行详细描述。图5为本发明实施例提供的一种装置结构图,该装置设置于节点服务器,可以是位于节点服务器的应用程序,或者还可以为位于节点服务器的应用程序中的插件或软件开发工具包(Software Development Kit,SDK)等功能单元。如图5中所示,该装置可以包括:同步单元01、接收单元02、调度单元03和重定向单元04。其中各组成单元的主要功能如下:
同步单元01负责从权威DNS获取调度策略。
具体地,同步单元01可以访问权威DNS提供的同步调度策略的HTTP接口,以获取调度策略。
在本发明实施例中,调度策略可以采用键值(key-value)对的存储方式。key包括域名标识、区域范围和运营商信息,value包括调度IP地址。所谓调度IP地址就是域名标识、区域范围和运营商信息所指向的节点服务器的IP地址,也就是说,调度IP地址是能够为终端设备提供服务的最优的节点服务器的IP地址。一个value中的调度IP地址可以是一个,也可以是多个。
同步单元01在从权威DNS获取调度策略时,可以使用CDN加速链路来尽量减小同步调度策略的HTTP接口的压力。
作为一种优选的实施方式,同步单元01可以仅从权威DNS请求并获取节点服务器自身所服务域名的调度策略,而无需获取全量调度策略。具体地,向权威DNS发送包含该节点服务器所服务域名的同步请求;接收权威DNS返回的节点服务器所服务域名的调度策略。
接收单元02负责接收来自终端设备的访问请求。
调度单元03负责利用从权威DNS获取的调度策略,查询终端设备的IP地址对应的调度IP地址,若调度IP地址包含节点服务器的IP地址,则由本节点服务器为终端设备提供服务。
具体地,调度单元03可以确定访问请求所包含域名信息对应的域名标识、终端设备的IP地址对应的区域范围和运营商;利用确定出的域名标识、区域范围和运营商信息拼接成键并查询调度策略中的键值对,得到对应的调度IP地址。
重定向单元04负责若调度IP地址不包含节点服务器的IP地址,则将访问请求重定向至调度IP地址。
图6为本发明实施例提供的另一种装置结构图,该装置设置于权威DNS,可以是位于权威DNS的应用程序,或者还可以为位于权威DNS的应用程序中的插件或软件开发工具包(Software Development Kit,SDK)等功能单元。该装置包括:同步单元11和调度单元12。其中各组成单元的主要功能如下:
同步单元11负责向节点服务器提供调度策略,以便节点服务器接收到来自终端设备的访问请求后,依据调度策略查询终端设备的IP地址对应的调度IP地址,若调度IP地址包含节点服务器的IP地址,则由节点服务器为终端设备提供服务,否则,由节点服务器将访问请求重定向至调度IP地址。
调度单元12负责接收到Local DNS的域名查询请求后,依据调度策略向Local DNS返回节点服务器的IP地址。
具体地,同步单元01可以提供同步调度策略的HTTP接口供节点服务器访问以获取调度策略。
在本发明实施例中,调度策略可以采用键值(key-value)对的存储方式。key包括域名标识、区域范围和运营商信息,value包括调度IP地址。所谓调度IP地址就是域名标识、区域范围和运营商信息所指向的节点服务器的IP地址,也就是说,调度IP地址是能够为终端设备提供服务的最优的节点服务器的IP地址。一个value中的调度IP地址可以是一个,也可以是多个。
同步单元01接收节点服务器发送的包含该节点服务器所对应域名的同步请求;向节点服务器返回节点服务器所对应域名的调度策略。
图7示出了适于用来实现本发明实施方式的示例性计算机系统/服务器012的框图。图7显示的计算机系统/服务器012仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统/服务器012以通用计算设备的形式表现。计算机系统/服务器012的组件可以包括但不限于:一个或者多个处理器或者处理单元016,系统存储器028,连接不同系统组件(包括系统存储器028和处理单元016)的总线018。
总线018表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器012典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器012访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)030和/或高速缓存存储器032。计算机系统/服务器012可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统034可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线018相连。存储器028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块042的程序/实用工具040,可以存储在例如存储器028中,这样的程序模块042包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块042通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器012也可以与一个或多个外部设备014(例如键盘、指向设备、显示器024等)通信,在本发明中,计算机系统/服务器012与外部雷达设备进行通信,还可与一个或者多个使得用户能与该计算机系统/服务器012交互的设备通信,和/或与使得该计算机系统/服务器012能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口022进行。并且,计算机系统/服务器012还可以通过网络适配器020与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器020通过总线018与计算机系统/服务器012的其它模块通信。应当明白,尽管图7中未示出,可以结合计算机系统/服务器012使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元016通过运行存储在系统存储器028中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的方法流程。
上述的计算机程序可以设置于计算机存储介质中,即该计算机存储介质被编码有计算机程序,该程序在被一个或多个计算机执行时,使得一个或多个计算机执行本发明上述实施例中所示的方法流程和/或装置操作。例如,被上述一个或多个处理器执行本发明实施例所提供的方法流程。
随着时间、技术的发展,介质含义越来越广泛,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载等。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (20)
1.一种内容分发网络CDN调度的方法,其特征在于,该方法包括:
节点服务器接收来自终端设备的访问请求;
所述节点服务器利用自身节点存储的从权威域名服务器获取的调度策略,查询所述终端设备的互联网协议IP地址对应的调度IP地址;
若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务;否则,将所述访问请求重定向至所述调度IP地址;
其中,所述调度策略是所述节点服务器自身所服务域名的调度策略;
所述调度策略是所述节点服务器通过同步请求,从所述权威域名服务器获取的,所述同步请求中包含所述节点服务器自身所服务域名;以及,若自身节点服务器的同步请求与其他节点服务器的同步请求都经过同一个节点服务器,且都请求同步相同域名的调度策略,所述同一个节点服务器将所述自身节点服务器的同步请求和所述其他节点服务器的同步请求合并为一个同步请求发送至所述权威域名服务器,并将所述权威域名服务器返回的调度策略分发至所述自身节点服务器和所述其他节点服务器。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:
所述节点服务器从权威域名服务器获取调度策略。
3.根据权利要求2所述的方法,其特征在于,所述节点服务器从权威域名服务器获取调度策略包括:
所述节点服务器访问所述权威域名服务器提供的同步调度策略的超文本传输协议HTTP接口,以获取调度策略;和/或,
所述节点服务器通过CDN加速链路,从所述权威域名服务器获取调度策略。
4.根据权利要求2所述的方法,其特征在于,所述节点服务器从权威域名服务器获取调度策略包括:
所述节点服务器向所述权威域名服务器发送包含该节点服务器所服务域名的同步请求;
接收所述权威域名服务器返回的所述节点服务器所服务域名的调度策略。
5.根据权利要求1所述的方法,其特征在于,所述调度策略包括键值对;
所述键值对中键包括域名标识、区域范围和运营商信息;
所述键值对中值包括调度IP地址。
6.根据权利要求5所述的方法,其特征在于,查询所述终端设备的IP地址对应的调度IP地址包括:
确定所述访问请求所包含域名信息对应的域名标识、所述终端设备的IP地址对应的区域范围和运营商;
利用确定出的域名标识、区域范围和运营商信息拼接成键并查询所述调度策略中的键值对,得到对应的调度IP地址。
7.一种CDN调度的方法,其特征在于,该方法包括:
权威域名服务器向节点服务器提供调度策略,以便所述节点服务器接收到来自终端设备的访问请求后,依据自身节点存储的所述调度策略查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务,否则,由所述节点服务器将所述访问请求重定向至所述调度IP地址;
其中,所述调度策略是所述节点服务器自身所服务域名的调度策略;
所述调度策略是所述节点服务器通过同步请求,从所述权威域名服务器获取的,所述同步请求中包含所述节点服务器自身所服务域名;以及,若自身节点服务器的同步请求与其他节点服务器的同步请求都经过同一个节点服务器,且都请求同步相同域名的调度策略,所述同一个节点服务器将所述自身节点服务器的同步请求和所述其他节点服务器的同步请求合并为一个同步请求发送至所述权威域名服务器,并将所述权威域名服务器返回的调度策略分发至所述自身节点服务器和所述其他节点服务器。
8.根据权利要求7所述的方法,其特征在于,该方法还包括:
所述权威域名服务器接收到本地域名服务器的域名查询请求后,依据调度策略向所述本地域名服务器返回所述节点服务器的IP地址。
9.根据权利要求7所述的方法,其特征在于,所述权威域名服务器向节点服务器提供调度策略包括:
所述权威域名服务器提供同步调度策略的HTTP接口供节点服务器访问以获取调度策略。
10.根据权利要求7所述的方法,其特征在于,所述权威域名服务器向节点服务器提供调度策略包括:
所述权威域名服务器接收节点服务器发送的包含该节点服务器所对应域名的同步请求;
向所述节点服务器返回所述节点服务器所对应域名的调度策略。
11.一种CDN调度的装置,设置于节点服务器,其特征在于,该装置包括:
同步单元,用于从权威域名服务器获取调度策略;
接收单元,用于接收来自终端设备的访问请求;
调度单元,用于利用自身节点存储的从权威域名服务器获取的调度策略,查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由本节点服务器为所述终端设备提供服务;
重定向单元,用于若所述调度IP地址不包含所述节点服务器的IP地址,则将所述访问请求重定向至所述调度IP地址;
其中,所述调度策略是所述节点服务器自身所服务域名的调度策略;
所述调度策略是所述节点服务器通过同步请求,从所述权威域名服务器获取的,所述同步请求中包含所述节点服务器自身所服务域名;以及,若自身节点服务器的同步请求与其他节点服务器的同步请求都经过同一个节点服务器,且都请求同步相同域名的调度策略,所述同一个节点服务器将所述自身节点服务器的同步请求和所述其他节点服务器的同步请求合并为一个同步请求发送至所述权威域名服务器,并将所述权威域名服务器返回的调度策略分发至所述自身节点服务器和所述其他节点服务器。
12.根据权利要求11所述的装置,其特征在于,所述同步单元,具体用于访问所述权威域名服务器提供的同步调度策略的HTTP接口,以获取调度策略;和/或,通过CDN加速链路,从所述权威域名服务器获取调度策略。
13.根据权利要求11所述的装置,其特征在于,所述同步单元,具体用于向所述权威域名服务器发送包含该节点服务器所服务域名的同步请求;接收所述权威域名服务器返回的所述节点服务器所服务域名的调度策略。
14.根据权利要求11所述的装置,其特征在于,所述调度策略包括键值对,所述键值对中键包括域名标识、区域范围和运营商信息;所述键值对中值包括调度IP地址;
所述调度单元,具体用于确定所述访问请求所包含域名信息对应的域名标识、所述终端设备的IP地址对应的区域范围和运营商;利用确定出的域名标识、区域范围和运营商信息拼接成键并查询所述调度策略中的键值对,得到对应的调度IP地址。
15.一种CDN调度的装置,设置于权威域名服务器,其特征在于,该装置包括:
同步单元,用于向节点服务器提供调度策略,以便所述节点服务器接收到来自终端设备的访问请求后,依据自身节点存储的所述调度策略查询所述终端设备的IP地址对应的调度IP地址,若所述调度IP地址包含所述节点服务器的IP地址,则由所述节点服务器为所述终端设备提供服务,否则,由所述节点服务器将所述访问请求重定向至所述调度IP地址;
所述调度策略是所述节点服务器通过同步请求,从所述权威域名服务器获取的,所述同步请求中包含所述节点服务器自身所服务域名;以及,若自身节点服务器的同步请求与其他节点服务器的同步请求都经过同一个节点服务器,且都请求同步相同域名的调度策略,所述同一个节点服务器将所述自身节点服务器的同步请求和所述其他节点服务器的同步请求合并为一个同步请求发送至所述权威域名服务器,并将所述权威域名服务器返回的调度策略分发至所述自身节点服务器和所述其他节点服务器。
16.根据权利要求15所述的装置,其特征在于,该装置还包括:
调度单元,用于接收到本地域名服务器的域名查询请求后,依据调度策略向所述本地域名服务器返回所述节点服务器的IP地址。
17.根据权利要求15所述的装置,其特征在于,所述同步单元,具体用于提供同步调度策略的HTTP接口供节点服务器访问以获取调度策略。
18.根据权利要求15所述的装置,其特征在于,所述同步单元,具体用于接收节点服务器发送的包含该节点服务器所对应域名的同步请求;向所述节点服务器返回所述节点服务器所对应域名的调度策略。
19.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法,或者,如权利要求7-10中任一所述的方法。
20.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-10中任一所述的方法,或者,如权利要求7-10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910651737.2A CN110474964B (zh) | 2019-07-18 | 2019-07-18 | Cdn调度的方法、装置、设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910651737.2A CN110474964B (zh) | 2019-07-18 | 2019-07-18 | Cdn调度的方法、装置、设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110474964A CN110474964A (zh) | 2019-11-19 |
CN110474964B true CN110474964B (zh) | 2024-05-28 |
Family
ID=68508467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910651737.2A Active CN110474964B (zh) | 2019-07-18 | 2019-07-18 | Cdn调度的方法、装置、设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110474964B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958656B (zh) * | 2019-11-25 | 2021-09-14 | 中国联合网络通信集团有限公司 | Cdn重定向的方法及系统 |
CN111200649B (zh) * | 2019-12-30 | 2023-03-24 | 北京知道创宇信息技术股份有限公司 | 一种调度方法及装置、调度模型生成方法及装置 |
CN113873054A (zh) * | 2021-09-13 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 基于DNS的IPv6引流方法、装置以及设备 |
CN114143332B (zh) * | 2021-11-03 | 2024-06-11 | 阿里巴巴(中国)有限公司 | 基于内容分发网络cdn的处理方法、电子设备和介质 |
CN114071173B (zh) * | 2021-11-15 | 2024-06-14 | 北京百度网讯科技有限公司 | 直播调度方法及装置、系统、电子设备和介质 |
CN114143325A (zh) * | 2021-12-06 | 2022-03-04 | 北京字节跳动网络技术有限公司 | Dns调度方法、装置、设备、存储介质和程序产品 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101989986A (zh) * | 2010-10-28 | 2011-03-23 | 北京瑞汛世纪科技有限公司 | 一种查询服务节点的方法、服务器和系统 |
CN104184775A (zh) * | 2013-05-27 | 2014-12-03 | 电子科技大学 | 一种基于内容发布网络(cdn)的域名解析服务模型 |
CN104427005A (zh) * | 2013-08-20 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 在cdn上实现请求精确调度的方法及系统 |
CN105959433A (zh) * | 2016-07-22 | 2016-09-21 | 无锡华云数据技术服务有限公司 | 一种域名解析方法及其域名解析系统 |
CN106790530A (zh) * | 2016-12-21 | 2017-05-31 | 北京云端智度科技有限公司 | 域名服务的跟踪和聚合方法 |
CN109040343A (zh) * | 2018-09-11 | 2018-12-18 | 达闼科技(北京)有限公司 | 域名解析方法、装置、计算机可读存储介质及电子设备 |
CN109831511A (zh) * | 2019-02-18 | 2019-05-31 | 华为技术有限公司 | 调度内容分发网络cdn边缘节点的方法及设备 |
-
2019
- 2019-07-18 CN CN201910651737.2A patent/CN110474964B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101989986A (zh) * | 2010-10-28 | 2011-03-23 | 北京瑞汛世纪科技有限公司 | 一种查询服务节点的方法、服务器和系统 |
CN104184775A (zh) * | 2013-05-27 | 2014-12-03 | 电子科技大学 | 一种基于内容发布网络(cdn)的域名解析服务模型 |
CN104427005A (zh) * | 2013-08-20 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 在cdn上实现请求精确调度的方法及系统 |
CN105959433A (zh) * | 2016-07-22 | 2016-09-21 | 无锡华云数据技术服务有限公司 | 一种域名解析方法及其域名解析系统 |
CN106790530A (zh) * | 2016-12-21 | 2017-05-31 | 北京云端智度科技有限公司 | 域名服务的跟踪和聚合方法 |
CN109040343A (zh) * | 2018-09-11 | 2018-12-18 | 达闼科技(北京)有限公司 | 域名解析方法、装置、计算机可读存储介质及电子设备 |
CN109831511A (zh) * | 2019-02-18 | 2019-05-31 | 华为技术有限公司 | 调度内容分发网络cdn边缘节点的方法及设备 |
Non-Patent Citations (4)
Title |
---|
M. Blanchet ; Viagenie ; .Finding the Authoritative Registration Data (RDAP) Server draft-blanchet-weirds-bootstrap-00.txt.IETF .2013,全文. * |
M. Blanchet ; Viagenie ; .Finding the Authoritative Registration Data (RDAP) Service.IETF .2015,全文. * |
上海教育城域网:一种层次化DNS系统部署方案;陆海;柯立新;;中国教育网络;20180805(08);全文 * |
支持IP地址定向解析的扩展DNS服务器的设计与实现;林浒;于东海;雷为民;王阳;张伟;;小型微型计算机系统;20080615(06);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110474964A (zh) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110474964B (zh) | Cdn调度的方法、装置、设备和计算机存储介质 | |
US10721317B2 (en) | Global provisioning of millions of users with deployment units | |
US10057208B2 (en) | Visibility control for domain name system service discovery | |
CN110597739A (zh) | 一种配置的管理方法、系统及设备 | |
US10341288B2 (en) | Methods circuits devices systems and associated computer executable code for providing conditional domain name resolution | |
US20120102134A1 (en) | Cache sharing among branch proxy servers via a master proxy server at a data center | |
CN102859942A (zh) | 使用dns反射来测量网络性能 | |
WO2023179505A1 (zh) | 内容分发网络的调度方法、装置、存储介质及电子设备 | |
CN112003945A (zh) | 服务请求响应方法及装置 | |
CN109327559A (zh) | 一种基于混合云平台的域名解析方法和装置 | |
US8171066B2 (en) | Techniques for accessing remote files | |
CN115086275B (zh) | 报文处理方法、装置、介质及电子设备 | |
CN114268631A (zh) | 低延迟网络系统及其通信连接方法及可读存储介质 | |
CN103973638A (zh) | 访问控制方法、电子设备和服务器 | |
KR102492793B1 (ko) | 가상 데스크탑 서비스 제공 시스템 및 가상 데스크탑 서비스 제공 방법 | |
CN112804366A (zh) | 用于解析域名的方法和装置 | |
CN112243045A (zh) | 服务数据处理方法、装置、节点结构及电子设备 | |
CN115604226A (zh) | 基于ecs协议的域名查询方法及装置、存储介质及设备 | |
KR101286434B1 (ko) | 파일 동기화 방법 및 이를 위한 시스템 | |
EP2647179B1 (en) | Service access apparatus, method, computer program and computer program product for selective initiation of communication | |
CN114124893A (zh) | 域名缓存方法、装置、系统、存储介质以及计算机设备 | |
CN112612806A (zh) | 房源信息处理方法、装置、电子设备和计算机可读介质 | |
CN112866005A (zh) | 一种用户访问日志的处理方法、装置、设备及存储介质 | |
CN113315849B (zh) | 数据处理方法、装置、设备和存储介质 | |
KR100317748B1 (ko) | 안전한 도메인 네임 시스템(dns)에서의전송제어프로토콜(tcp) 질의/응답 처리를 위한 존 정보접근 제어방법 및 네이밍 서비스 서버 |
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 |