CN114520784B - 一种动态内容加速访问方法及装置 - Google Patents
一种动态内容加速访问方法及装置 Download PDFInfo
- Publication number
- CN114520784B CN114520784B CN202111608423.8A CN202111608423A CN114520784B CN 114520784 B CN114520784 B CN 114520784B CN 202111608423 A CN202111608423 A CN 202111608423A CN 114520784 B CN114520784 B CN 114520784B
- Authority
- CN
- China
- Prior art keywords
- acceleration
- target
- node
- acceleration server
- source station
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种动态内容加速访问方法及装置,该方法包括:获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;基于各节点的管理机与加速服务器的对应关系以及管理机对应的第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到目标源站的最优路径;将每个节点的加速服务器到目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。通过利用管理机进行探测的方式,降低了探测对加速服务器的影响,并通过复用同机房的管理机作为探测服务器,降低了加速服务器的成本。
Description
技术领域
本发明涉及内容分发网络技术领域,具体涉及一种动态内容加速访问方法及装置。
背景技术
随着互联网技术的发展,论坛、移动支付、即时通讯、电子商务等新的社交娱乐逐渐代替了传统的网络活动(例如搜索、邮箱等),这些技术的发展也推动了动态网站技术的发展和普及。越来越多的网站包含动态内容。因为采用动态网站可实现更多的功能及个性化页面,如用户注册、用户登录、在线交易、用户管理、订单管理等。但对于不可缓存的动态网站而言,一方面Internet 固有的问题(互联互通问题,公网丢包重传时延问题等等)对于用户访问的影响更加难以解决;另一方面动态网站由于更加敏感。这些都给动态网站带来了很大的挑战。因此,越来越多的动态网站使用CDN技术来改善其用户访问体验。
当前业界主流的动态内容加速访问方法如下:
由分布在全球各地的动态加速服务器和中心化部署的中央选路服务器构成。分布在全球各地的动态加速服务器对网络内的其他动态加速服务器和动态内容的源站发起探测,然后将探测结果上报给中央选路服务器,中央选路服务器使用最短路径算法,计算出每个动态加速服务器到每个源站的最优路径(一般为到源站最快的路径),并将该最优路径下发给对应的加速服务器。当用户请求源站的动态内容时,请求到达边缘的动态加速服务器时,将遵循该最优路径回源获取内容。这种方案存在如下问题:探测服务器和数据传输服务器共用,探测过程会影响服务器的性能,从而影响用户实际请求的数据传输性能。
发明内容
有鉴于此,本发明实施例提供了一种动态内容加速访问方法及装置,以克服现有技术中的动态内容加速访问方式需要探测服务器和数据传输服务器共用来实现,探测过程会影响服务器的性能,进而影响用户实际请求的数据传输性能的问题。
本发明实施例提供了一种动态内容加速访问方法,应用于动态加速访问系统中的中央选路服务器,所述动态加速访问系统还包括:若干节点,每个节点一一对应部署有管理机和加速服务器,所述方法包括:
获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;
基于各节点的管理机与加速服务器的对应关系以及管理机对应的所述第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到所述目标源站的最优路径;
将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到所述目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。
可选地,所述获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果,包括:
接收当前节点对应的当前管理机发送的第一通信访问探测结果,所述第一通信访问探测结果为所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果;基于当前管理机与当前节点的当前加速服务器的对应关系,将所述第二通信访问探测结果转换为当前加速服务器与其余节点的加速服务器及目标源站的第一通信访问探测结果,所述第二通信访问探测结果包括:传输延时和/或丢包率。
可选地,所述将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,包括:
将当前加速服务器到所述目标源站的最优路径下发至所述当前加速服务器所在节点的当前管理机,以使所述当前管理机通过http接口将最优路径设置到所述当前加速服务器的内存中。
可选地,所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果,包括:
所述当前管理机对目标加速服务器进行通信访问探测,得到对应的第二通信访问探测结果;
判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商;
当所述当前管理机与所述目标加速服务器之间存在跨运营商时,对所述第二通信访问探测结果进行加权处理,得到加权后的第二通信访问探测结果。
可选地,所述判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商,包括:
获取当前管理机部署的第一IP库以及目标加速服务器对应的目标IP地址;
判断所述第一IP库与所述目标IP地址是否属于同一运营商;
在所述第一IP库与所述目标IP地址不属于同一运营商时,确定所述当前管理机与所述目标加速服务器之间存在跨运营商。
可选地,所述方法还包括:
获取第一源站对应的域名,所述第一源站为需要通过所述动态加速访问系统进行动态内容加速访问的源站;
基于所述第一源站对应的域名在所述动态加速访问系统中进行域名配置,确定所述第一源站对应的加速域名;
在接收到所述目标源站的动态内容访问请求时,对所述动态内容访问请求进行根域名解析,确定目标源站,所述动态内容访问请求包括:所述目标源站对应的加速域名;
基于所述动态内容访问请求的发起位置,确定与所述发起位置距离最近节点对应的加速服务器为所述目标加速服务器。
可选地,所述对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问,包括:
所述目标加速服务器按照其内存中存储的最优路径对所述动态内容访问请求进行转发;
在所述目标源站接收到所述动态内容访问请求时,将所述动态内容访问请求对应的响应数据按照所述最优路径原路转发至所述目标加速服务器;
所述目标加速服务器将所述响应数据提供给用户。
本发明实施例还提供了一种动态内容加速访问装置,应用于动态加速访问系统中的中央选路服务器,所述动态加速访问系统还包括:若干节点,每个节点一一对应部署有管理机和加速服务器,所述装置包括:
获取模块,用于获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;
第一处理模块,用于基于各节点的管理机与加速服务器的对应关系以及管理机对应的所述第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到所述目标源站的最优路径;
第二处理模块,用于将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到所述目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。
本发明实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行本发明实施例提供方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行本发明实施例提供的方法。
本发明技术方案,具有如下优点:
本发明实施例提供了一种动态内容加速访问方法及装置,应用于动态加速访问系统中的中央选路服务器,动态加速访问系统还包括:若干节点,每个节点一一对应部署有管理机和加速服务器,通过获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;基于各节点的管理机与加速服务器的对应关系以及管理机对应的第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到目标源站的最优路径;将每个节点的加速服务器到目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。从而通过利用各个节点的管理机对其余节点的加速服务器进行探测的方式,降低了探测对加速服务器的影响,更能够保证用户实际请求数据的传输性能。同时由于复用了同机房的管理机作为探测服务器,进一步降低了加速服务器的成本。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的动态内容加速访问系统的结构示意图;
图2为本发明实施例中的动态内容加速访问方法的流程图;
图3为本发明实施例中的动态内容加速访问的具体工作过程示意图;
图4为本发明实施例中的动态内容加速访问装置的结构示意图;
图5为本发明实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
随着互联网技术的发展,论坛、移动支付、即时通讯、电子商务等新的社交娱乐逐渐代替了传统的网络活动(例如搜索、邮箱等),这些技术的发展也推动了动态网站技术的发展和普及。越来越多的网站包含动态内容。因为采用动态网站可实现更多的功能及个性化页面,如用户注册、用户登录、在线交易、用户管理、订单管理等。但对于不可缓存的动态网站而言,一方面Internet 固有的问题(互联互通问题,公网丢包重传时延问题等等)对于用户访问的影响更加难以解决;另一方面动态网站由于更加敏感。这些都给动态网站带来了很大的挑战。因此,越来越多的动态网站使用CDN技术来改善其用户访问体验。
当前业界主流的动态内容加速访问方法如下:
由分布在全球各地的动态加速服务器和中心化部署的中央选路服务器构成。分布在全球各地的动态加速服务器对网络内的其他动态加速服务器和动态内容的源站发起探测,然后将探测结果上报给中央选路服务器,中央选路服务器使用最短路径算法,计算出每个动态加速服务器到每个源站的最优路径(一般为到源站最快的路径),并将该最优路径下发给对应的加速服务器。当用户请求源站的动态内容时,请求到达边缘的动态加速服务器时,将遵循该最优路径回源获取内容。这种方案存在如下问题:探测服务器和数据传输服务器共用,探测过程会影响服务器的性能,从而影响用户实际请求的数据传输性能。此外,探测选路时,把所有加速服务器都等同对待,没有考虑加速服务器的运营商属性,导致根据探测结果计算出的最优路径实际并非最优。因为探测的数据包通常比较小,跨运营节点之间的探测值可能比较小,但真正跨运营商传输数据时往往性能并不好。
本发明主要解决上述提出的两个问题。
一、解决探测服务器和数据传输服务器共用影响实际用户请求的数据传输性能问题。
二、解决跨运营商加速服务器间的探测值直接参与选路,导致探测结果和实际传输效果存在偏差的问题。
首先对本技术方案所涉及的技术术语作如下解释:
加速域名:需要使用本动态加速系统做动态内容加速的域名。
源站:加速域名对应的源站服务器地址,可以是IP,也可以是域名。
边缘节点:本动态加速系统中离用户最近的节点,即用户的请求首先接入的节点。
回源节点:根据中央选路服务器选出的最优路径中直接与源站建连的节点,即请求到达源站前的最后一个属于本动态加速系统的节点。
cname(Canonical Name):即别名,用于把一个域名解析到另一个域名,当DNS系统在查询CNAME左面的名称的时候,都会转向CNAME右面的名称再进行查询,一直追踪到最后的PTR或A名称,成功查询后才会做出回应,否则失败。例如,有一台服务器,使用docs.example.com访问,同时又希望通过 documents.example.com也能访问该服务器,那么就需要在DNS解析服务商添加一条CNAME记录,将documents.example.com指向docs.example.com,添加该条CNAME记录后,所有访问documents.example.com的请求都会被转到docs.example.com,获得相同的内容。
本发明实施例提供了一种动态内容加速访问方法,应用于如图1所示的动态内容加速访问系统的中央选路服务器,该动态内容加速访问系统包括:中央选路服务器以及若干节点,每个节点一一对应部署有管理机和加速服务器,管理机与对应的加速服务器同机房部署。如图2所示,该动态内容加速访问方法具体包括如下步骤:
步骤S101:获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果。
具体地,上述步骤S101通过接收当前节点对应的当前管理机发送的第一通信访问探测结果,第一通信访问探测结果为当前管理机分别对其余各节点的加速服务器以及目标源站进行通信访问探测,得到对应的第二通信访问探测结果;基于当前管理机与当前节点的当前加速服务器的对应关系,将第二通信访问探测结果转换为当前加速服务器与其余节点的加速服务器及目标源站的第一通信访问探测结果,第二通信访问探测结果包括:传输延时和/或丢包率。
步骤S102:基于各节点的管理机与加速服务器的对应关系以及管理机对应的第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到目标源站的最优路径。
具体地,资源规划人员会在系统中维护一个资源规划表,该表是记录本动态内容加速系统中的加速服务器和管理机对应关系的表,由资源规划人员录入系统进行维护,每当有新的节点上线,或者已上线节点内的服务器发生变更时,该资源规划表也同步进行更新,以保证管理机和加速服务器的对应关系始终是与实际情况相符的。其次,每台管理机上都会通过平台下发一个IP库列表,该 IP库中记录了不同网段IP对应的运营商属性。一旦IP库有更新,平台会重新下发更新后的IP库给每台管理机。
该动态加速访问系统中的各节点的管理机负责代替(由于管理机和加速服务器同机房部署,两者的网络状态相同,可以替代加速服务器进行探测)本节点的加速服务器探测其他节点的加速服务器和所有源站。管理机将探测结果通过http接口上报给中央选路服务器,中央选路服务器获取探测结果(通常是传输时延rtt和重传比)。并查询资源规划表中管理机和加速服务器的对应关系,将管理机探测其他加速服务器和源站的探测结果转换为管理机对应的加速服务器探测其他加速服务器和源站的探测结果。
此外,在实际应用中,还可以由管理机基于各节点的管理机与加速服务器的对应关系,将第一通信访问探测结果转换为各节点的加速服务器对他节点的加速服务器及目标源站的第二通信访问探测结果,然后直接将第二通信访问探测结果发送至中央选路服务器,从而将更多的数据处理工作转移至管理机中进行分散执行,进一步提高选路服务器的处理效率,本发明并不以此为限。
具体地,中央选路服务器负责接收各节点的管理机上报的探测结果,并根据最优路径算法计算出每个边缘节点的加速服务器到各个源站的最优路径。
步骤S103:将每个节点的加速服务器到目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。
具体地,上述步骤S103中将每个节点的加速服务器到目标源站的最优路径存储至对应节点的加速服务器的内存中,具体通过将当前加速服务器到目标源站的最优路径下发至当前加速服务器所在节点的当前管理机,以使当前管理机通过http接口将最优路径设置到当前加速服务器的内存中。
由中央选路服务器将以每个边缘节点为起点到每个源站的最优路径下发给相应的边缘节点的管理机。管理机通过http接口向本节点的加速服务器的内存中设置本节点到该动态加速系统中配置的每个源站的最优路径。
通过执行上述步骤,本发明实施例提供的动态内容加速访问方法,通过利用各个节点的管理机对其余节点的加速服务器进行探测的方式,降低了探测对加速服务器的影响,更能够保证用户实际请求数据的传输性能。同时由于复用了同机房的管理机作为探测服务器,进一步降低了加速服务器的成本。
具体地,在一实施例中,上述的当前管理机分别对其余各节点的加速服务器以及目标源站进行通信访问探测,得到对应的第二通信访问探测结果,具体包括如下步骤:
步骤S201:当前管理机对目标加速服务器进行通信访问探测,得到对应的第二通信访问探测结果。
步骤S202:判断当前管理机与目标加速服务器之间是否存在跨运营商。如果当前管理机与目标加速服务器之间不存在跨运营商,则不对第二通信访问探测结果进行处理。
步骤S203:当当前管理机与目标加速服务器之间存在跨运营商时,对第二通信访问探测结果进行加权处理,得到加权后的第二通信访问探测结果。
具体地,在一实施例中,上述步骤S202具体包括如下步骤:
步骤S301:获取当前管理机部署的第一IP库以及目标加速服务器对应的目标IP地址。
步骤S302:判断第一IP库与目标IP地址是否属于同一运营商。
步骤S303:在第一IP库与目标IP地址不属于同一运营商时,确定当前管理机与目标加速服务器之间存在跨运营商。如果第一IP库与目标IP地址属于同一运营商,则当前管理机与目标加速服务器之间不存在跨运营商。
具体地,管理机通过查找本机上部署的IP库,判断探测结果中是否包含跨运营商的探测值,如果存在则对该探测结果做加权处理,示例性地,包含跨运营商的探测值包括移动节点跨电信节点、移动节点跨联通节点、电信节点跨移动节点、电信节点跨联通节点、联通节点跨电信节点、联通节点跨移动节点、移动节点回联通源站、移动节点回电信源站、电信节点回移动源站、电信节点回联通源站、联通节点回电信源站、联通节点回移动源站等。具体加权处理为对上述第二通信访问探测结果设置加权系数,该加权系数可根据实际需要进行配置,必须大于1.0,以确保加入了多种运营商属性的节点后,中央选路服务器选出的最优路径与实际传输时的最优路径偏差尽量少。该加权系数可以对长期运营产品的大数据进行分析,得出最佳系数,示例性地,该加权系数可以配置为1.2。对跨运营探测结果进行加权处理后,管理机将处理后的探测结果通过http接口上报给中央选路服务器。
具体地,在一实施例中,上述的动态内容加速访问方法还包括如下步骤:
步骤S104:获取第一源站对应的域名。
其中,第一源站为需要通过动态加速访问系统进行动态内容加速访问的源站。
步骤S105:基于第一源站对应的域名在动态加速访问系统中进行域名配置,确定第一源站对应的加速域名。
具体地,需要使用本发明实施例提供的动态内容加速访问系统做动态内容加速访问的源站需要提前在该系统中做域名配置,系统配置完成后将提供一个 cname,需要将加速域名的解析指向这个cname。
步骤S106:在接收到目标源站的动态内容访问请求时,对动态内容访问请求进行根域名解析,确定目标源站。
其中,动态内容访问请求包括:目标源站对应的加速域名。
步骤S107:基于动态内容访问请求的发起位置,确定与发起位置距离最近节点对应的加速服务器为目标加速服务器。
具体地,用户请求加速域名时,通过根域名解析会接入本系统的某个边缘节点的加速服务器,在本发明实施例中按照就近同运营的原则进行解析,即确定与上述动态内容访问请求的发起位置距离最近且属于相同运营商的节点对应的加速服务器确定为目标加速服务器。
具体地,在一实施例中,上述的步骤S103中对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问,具体包括如下步骤:
步骤S401:目标加速服务器按照其内存中存储的最优路径对动态内容访问请求进行转发。
具体地,边缘节点的加速服务器通过查找内存中的该加速域名的回源最优路径,并遵循该最优路径进行请求转发,在转发的同时,在请求头部携带最优路径信息,并且每转发经过一个节点,最优路径就去掉一个一经过节点的IP,到达回源节点时就只剩下回源节点IP和源站的IP,这样回源节点就知道自己的下一跳为源站了,在将请求转发给源站时会去掉这个最优路径的头部信息,并做一些其他回源逻辑的处理(如果需要的话)后,将请求转发给源站。
步骤S402:在目标源站接收到动态内容访问请求时,将动态内容访问请求对应的响应数据按照最优路径原路转发至目标加速服务器。
步骤S403:目标加速服务器将响应数据提供给用户。
具体地,源站收到请求后,响应请求的内容,该响应内容会按照请求转发到源站的路径,原路返回转发给用户,这样用户就拿到了自己请求的内容。
由于节点间的探测以及节点对源站的探测,都是周期性进行的,探测频率设置的越小,探测实时性越高,探测结果越能反映当前实际的网络情况,一旦某两个节点间或者某个节点到源站的网络发生抖动,很快就能通过探测捕获到,从而及时更新最优路径。因此,该动态内容加速方法及其系统能够有效提升动态内容传输效率,并且由于探测和数据传输由不同的服务器分担,能够有效降低探测对加速服务器的性能影响。
除此之外,本发明还针对跨运营商节点之间的探测选路提出通过人为干预的方式降低跨运营商链路被选中的概率,能够有效提升跨运营选路的准确性。
下面将结合具体应用示例,对本发明实施例提供的动态内容加速访问方法进行详细的说明。
如图3所示,动态内容加速访问的具体工作过程如下:
步骤一、在该动态加速访问系统中进行域名A的加速配置,生成cname B。
步骤二、将域名A的解析指向该cname B。
步骤三、各节点的管理机负责代替本节点的加速服务器探测其他节点的加速服务器和域名A的源站,获取探测结果(通常是rtt和丢包率)。
步骤四、各节点的管理机查询资源规划表中管理机和加速服务器的对应关系,找到自己对应的加速服务器。
步骤五、每个管理机将自己探测其他加速服务器和域名A源站的探测结果转换为自己对应的加速服务器探测其他加速服务器和域名A源站的探测结果。
步骤六、每个管理机查找本机部署的IP库,判断是否存在跨运营商的探测结果。若是则执行步骤七;若否则直接执行步骤八。
步骤七、对跨运营商探测结则进行加权处理。
步骤八、各节点的管理机将处理后的探测结果上报给中央选路服务器。
步骤九、中央选路服务器负责收集各节点的管理机上报的探测结果,并根据最优路径算法计算出每个边缘节点的加速服务器到域名A的源站的最优路径。
步骤十、中央选路服务器将计算好的每个边缘节点到域名A源站的最优路径下发给对应的边缘节点的管理机(假设节点1到域名A源站的最优路径为加速服务器1的IP—加速服务器2的IP—加速服务器3的IP—域名A源站)。
步骤十一、节点1的管理机1接收到中央选路服务器下发的最优路径后,通过http接口将最优路径设置到本节点的加速服务器的内存中。
步骤十二、用户发起对域名A的请求,经过dns解析后,请求到达离该用户最近的同运营商节点1的加速服务器1。
步骤十三、加速服务器1查询内存中的本节点到达该域名A源站的最优路径。
步骤十四、加速服务器1按照最优路径进行请求转发,并将最优路径插入请求头部,每经过一个节点,去掉一个已经过的节点IP。后续转发经过的加速服务器也如此执行。
步骤十五、请求每经过一个加速服务器,都先判断请求头部最优路径是否只剩2个IP。若是则执行步骤十六;若否则继续按照步骤十四进行请求转发。
步骤十六、删除最优路径的请求头部,并处理一些回源逻辑后回源(本实施例中回源节点为节点3)。
步骤十七、源站收到请求后,响应数据将按照请求的路径原路转发给用户。
本发明实施例提供的技术方案具有如下优点:
本发明相对于现有方案具有更优的系统架构,降低了探测对加速服务器的影响,更能够保证用户实际请求数据的传输性能。同时由于复用了同机房的管理机作为探测服务器,进一步降低了加速服务器的成本。因此本发明提供的技术方案从性能和成本上较现有方案都有明显的优势。
本发明相对于现有方案,在跨运营商节点间的选路方面有更好的效果。由于探测的数据包通常比较小,跨运营节点之间的探测值可能比较小,但真正跨运营商传输数据时往往性能并不好。本发明所提供的方案通过对跨运营商节点间、以及跨运营商回源的探测结果做加权处理,以减少跨运营商链路被选中的概率,保证同运营商链路优先被选中,选路结果更加准确。
通过执行上述步骤,本发明实施例提供的动态内容加速访问方法,通过利用各个节点的管理机对其余节点的加速服务器进行探测的方式,降低了探测对加速服务器的影响,更能够保证用户实际请求数据的传输性能。同时由于复用了同机房的管理机作为探测服务器,进一步降低了加速服务器的成本。
本发明实施例还提供了一种动态内容加速访问装置,应用于如图1所示的动态加速访问系统中的中央选路服务器,如图4所示,该动态内容加速访问装置包括:
获取模块101,用于获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果。详细内容参见上述方法实施例中步骤S101的相关描述,在此不再进行赘述。
第一处理模块102,用于基于各节点的管理机与加速服务器的对应关系以及管理机对应的第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到目标源站的最优路径。详细内容参见上述方法实施例中步骤S102 的相关描述,在此不再进行赘述。
第二处理模块103,用于将每个节点的加速服务器到目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。详细内容参见上述方法实施例中步骤S103的相关描述,在此不再进行赘述。
通过上述各个组成部分的协同合作,本发明实施例提供的动态内容加速访问装置,通过利用各个节点的管理机对其余节点的加速服务器进行探测的方式,降低了探测对加速服务器的影响,更能够保证用户实际请求数据的传输性能。同时由于复用了同机房的管理机作为探测服务器,进一步降低了加速服务器的成本。
上述各个模块的更进一步的功能描述与上述对应方法实施例相同,在此不再赘述。
根据本发明实施例还提供了一种电子设备,如图5所示,该电子设备可以包括处理器901和存储器902,其中处理器901和存储器902可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器901可以为中央处理器(Central Processing Unit,CPU)。处理器 901还可以为其他通用处理器、数字信号处理器(Digital Signal Processor, DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器902作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明方法实施例中的方法所对应的程序指令/模块。处理器901通过运行存储在存储器902中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储处理器901所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至处理器901。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器902中,当被处理器901执行时,执行上述方法实施例中的方法。
上述电子设备具体细节可以对应参阅上述方法实施例中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,实现的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD) 等;存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (7)
1.一种动态内容加速访问方法,应用于动态加速访问系统中的中央选路服务器,所述动态加速访问系统还包括:若干节点,每个节点一一对应部署有管理机和加速服务器,管理机与对应的加速服务器同机房部署,其特征在于,所述方法包括:
获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;
基于各节点的管理机与加速服务器的对应关系以及管理机对应的所述第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到所述目标源站的最优路径;
将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到所述目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问;
所述获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果,包括:
接收当前节点对应的当前管理机发送的第一通信访问探测结果,所述第一通信访问探测结果为所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果;基于当前管理机与当前节点的当前加速服务器的对应关系,将所述第二通信访问探测结果转换为当前加速服务器与其余节点的加速服务器及目标源站的第一通信访问探测结果,所述第二通信访问探测结果包括:传输延时和/或丢包率;
所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果,包括:
所述当前管理机对目标加速服务器进行通信访问探测,得到对应的第二通信访问探测结果;
判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商;
当所述当前管理机与所述目标加速服务器之间存在跨运营商时,对所述第二通信访问探测结果进行加权处理,得到加权后的第二通信访问探测结果;加权处理为对第二通信访问探测结果设置加权系数,所述加权系数大于1.0;
所述判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商,包括:
获取当前管理机部署的第一IP库以及目标加速服务器对应的目标IP地址;
判断所述第一IP库与所述目标IP地址是否属于同一运营商;
在所述第一IP库与所述目标IP地址不属于同一运营商时,确定所述当前管理机与所述目标加速服务器之间存在跨运营商。
2.根据权利要求1所述的方法,其特征在于,所述将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,包括:
将当前加速服务器到所述目标源站的最优路径下发至所述当前加速服务器所在节点的当前管理机,以使所述当前管理机通过http接口将最优路径设置到所述当前加速服务器的内存中。
3.根据权利要求1所述的方法,其特征在于,还包括:
获取第一源站对应的域名,所述第一源站为需要通过所述动态加速访问系统进行动态内容加速访问的源站;
基于所述第一源站对应的域名在所述动态加速访问系统中进行域名配置,确定所述第一源站对应的加速域名;
在接收到所述目标源站的动态内容访问请求时,对所述动态内容访问请求进行根域名解析,确定目标源站,所述动态内容访问请求包括:所述目标源站对应的加速域名;
基于所述动态内容访问请求的发起位置,确定与所述发起位置距离最近节点对应的加速服务器为所述目标加速服务器。
4.根据权利要求1所述的方法,其特征在于,所述对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问,包括:
所述目标加速服务器按照其内存中存储的最优路径对所述动态内容访问请求进行转发;
在所述目标源站接收到所述动态内容访问请求时,将所述动态内容访问请求对应的响应数据按照所述最优路径原路转发至所述目标加速服务器;
所述目标加速服务器将所述响应数据提供给用户。
5.一种动态内容加速访问装置,应用于动态加速访问系统中的中央选路服务器,所述动态加速访问系统还包括:若干节点,每个节点一一对应部署有管理机和加速服务器,管理机与对应的加速服务器同机房部署,其特征在于,所述装置包括:
获取模块,用于获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果;所述获取各节点的管理机对其他节点的加速服务器及目标源站进行通信访问探测的第一通信访问探测结果,包括:接收当前节点对应的当前管理机发送的第一通信访问探测结果,所述第一通信访问探测结果为所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果;基于当前管理机与当前节点的当前加速服务器的对应关系,将所述第二通信访问探测结果转换为当前加速服务器与其余节点的加速服务器及目标源站的第一通信访问探测结果,所述第二通信访问探测结果包括:传输延时和/或丢包率;所述当前管理机分别对其余各节点的加速服务器以及所述目标源站进行通信访问探测,得到对应的第二通信访问探测结果,包括:所述当前管理机对目标加速服务器进行通信访问探测,得到对应的第二通信访问探测结果;判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商;当所述当前管理机与所述目标加速服务器之间存在跨运营商时,对所述第二通信访问探测结果进行加权处理,得到加权后的第二通信访问探测结果,加权处理为对第二通信访问探测结果设置加权系数,所述加权系数大于1.0;所述判断所述当前管理机与所述目标加速服务器之间是否存在跨运营商,包括:获取当前管理机部署的第一IP库以及目标加速服务器对应的目标IP地址;判断所述第一IP库与所述目标IP地址是否属于同一运营商;在所述第一IP库与所述目标IP地址不属于同一运营商时,确定所述当前管理机与所述目标加速服务器之间存在跨运营商;
第一处理模块,用于基于各节点的管理机与加速服务器的对应关系以及管理机对应的所述第一通信访问探测结果,根据最优路径算法计算出每个节点的加速服务器到所述目标源站的最优路径;
第二处理模块,用于将每个节点的加速服务器到所述目标源站的最优路径存储至对应节点的加速服务器的内存中,以使在接收到所述目标源站的动态内容访问请求时,对应的目标加速服务器基于内存中存储的最优路径进行动态内容访问。
6.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令执行权利要求1-4任一项所述方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111608423.8A CN114520784B (zh) | 2021-12-24 | 2021-12-24 | 一种动态内容加速访问方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111608423.8A CN114520784B (zh) | 2021-12-24 | 2021-12-24 | 一种动态内容加速访问方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114520784A CN114520784A (zh) | 2022-05-20 |
CN114520784B true CN114520784B (zh) | 2023-10-10 |
Family
ID=81597423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111608423.8A Active CN114520784B (zh) | 2021-12-24 | 2021-12-24 | 一种动态内容加速访问方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114520784B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115379016A (zh) * | 2022-08-22 | 2022-11-22 | 深信服科技股份有限公司 | 资源访问方法、访问服务平台、装置、设备及存储介质 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932451A (zh) * | 2012-10-31 | 2013-02-13 | 北龙中网(北京)科技有限责任公司 | 一种针对内容分发网络的解决系统 |
CN103312716A (zh) * | 2013-06-20 | 2013-09-18 | 北京蓝汛通信技术有限责任公司 | 一种访问互联网信息的方法及系统 |
CN104410691A (zh) * | 2014-11-27 | 2015-03-11 | 网宿科技股份有限公司 | 一种基于内容分发网络的网站加速方法及系统 |
CN105515915A (zh) * | 2015-12-25 | 2016-04-20 | 厦门网宿软件科技有限公司 | 节点探测方法及装置、路径选取方法及装置、及网络系统 |
CN105634784A (zh) * | 2014-11-06 | 2016-06-01 | 阿里巴巴集团控股有限公司 | 控制数据分发方法、装置及系统 |
CN105657006A (zh) * | 2015-12-29 | 2016-06-08 | 厦门网宿软件科技有限公司 | 一种基于上网加速网络的首次访问加速方法和系统 |
CN105871723A (zh) * | 2015-12-14 | 2016-08-17 | 乐视云计算有限公司 | 数据传输方法、装置及系统 |
CN106656800A (zh) * | 2017-02-21 | 2017-05-10 | 网宿科技股份有限公司 | 一种路径选取方法及系统、网络加速节点及网络加速系统 |
CN107517228A (zh) * | 2016-06-15 | 2017-12-26 | 阿里巴巴集团控股有限公司 | 一种内容分发网络中的动态加速方法及装置 |
WO2018055506A1 (en) * | 2016-09-22 | 2018-03-29 | Tensera Networks Ltd. | An optimized content-delivery network (cdn) for the wireless last mile |
CN109391640A (zh) * | 2017-08-03 | 2019-02-26 | 中国移动通信有限公司研究院 | 动态内容访问加速方法、系统、介质和计算装置 |
CN109710878A (zh) * | 2018-12-28 | 2019-05-03 | 北京百佑科技有限公司 | 数据交互方法及服务器 |
CN111683013A (zh) * | 2020-06-08 | 2020-09-18 | 腾讯科技(深圳)有限公司 | 一种加速网络的路由方法和加速网络 |
CN111935009A (zh) * | 2020-08-05 | 2020-11-13 | 广州市百果园信息技术有限公司 | 数据包路由方法、装置、设备、系统及存储介质 |
CN111953666A (zh) * | 2020-07-27 | 2020-11-17 | 厦门安胜网络科技有限公司 | 数据收发方法、装置及数据收发系统 |
CN112866116A (zh) * | 2020-12-31 | 2021-05-28 | 平安科技(深圳)有限公司 | 网络访问探测方法、装置、设备及存储介质 |
CN113676514A (zh) * | 2021-07-19 | 2021-11-19 | 北京奇艺世纪科技有限公司 | 一种文件回源方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030237016A1 (en) * | 2000-03-03 | 2003-12-25 | Johnson Scott C. | System and apparatus for accelerating content delivery throughout networks |
US7562153B2 (en) * | 2000-05-12 | 2009-07-14 | AT&T Intellectual Property II, L. P. | Method and apparatus for content distribution network brokering and peering |
US20030005152A1 (en) * | 2001-03-09 | 2003-01-02 | Arif Diwan | Content-request redirection method and system |
US8364540B2 (en) * | 2005-09-14 | 2013-01-29 | Jumptap, Inc. | Contextual targeting of content using a monetization platform |
-
2021
- 2021-12-24 CN CN202111608423.8A patent/CN114520784B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932451A (zh) * | 2012-10-31 | 2013-02-13 | 北龙中网(北京)科技有限责任公司 | 一种针对内容分发网络的解决系统 |
CN103312716A (zh) * | 2013-06-20 | 2013-09-18 | 北京蓝汛通信技术有限责任公司 | 一种访问互联网信息的方法及系统 |
CN105634784A (zh) * | 2014-11-06 | 2016-06-01 | 阿里巴巴集团控股有限公司 | 控制数据分发方法、装置及系统 |
CN104410691A (zh) * | 2014-11-27 | 2015-03-11 | 网宿科技股份有限公司 | 一种基于内容分发网络的网站加速方法及系统 |
CN105871723A (zh) * | 2015-12-14 | 2016-08-17 | 乐视云计算有限公司 | 数据传输方法、装置及系统 |
CN105515915A (zh) * | 2015-12-25 | 2016-04-20 | 厦门网宿软件科技有限公司 | 节点探测方法及装置、路径选取方法及装置、及网络系统 |
CN105657006A (zh) * | 2015-12-29 | 2016-06-08 | 厦门网宿软件科技有限公司 | 一种基于上网加速网络的首次访问加速方法和系统 |
CN107517228A (zh) * | 2016-06-15 | 2017-12-26 | 阿里巴巴集团控股有限公司 | 一种内容分发网络中的动态加速方法及装置 |
WO2018055506A1 (en) * | 2016-09-22 | 2018-03-29 | Tensera Networks Ltd. | An optimized content-delivery network (cdn) for the wireless last mile |
CN106656800A (zh) * | 2017-02-21 | 2017-05-10 | 网宿科技股份有限公司 | 一种路径选取方法及系统、网络加速节点及网络加速系统 |
CN109391640A (zh) * | 2017-08-03 | 2019-02-26 | 中国移动通信有限公司研究院 | 动态内容访问加速方法、系统、介质和计算装置 |
CN109710878A (zh) * | 2018-12-28 | 2019-05-03 | 北京百佑科技有限公司 | 数据交互方法及服务器 |
CN111683013A (zh) * | 2020-06-08 | 2020-09-18 | 腾讯科技(深圳)有限公司 | 一种加速网络的路由方法和加速网络 |
CN111953666A (zh) * | 2020-07-27 | 2020-11-17 | 厦门安胜网络科技有限公司 | 数据收发方法、装置及数据收发系统 |
CN111935009A (zh) * | 2020-08-05 | 2020-11-13 | 广州市百果园信息技术有限公司 | 数据包路由方法、装置、设备、系统及存储介质 |
CN112866116A (zh) * | 2020-12-31 | 2021-05-28 | 平安科技(深圳)有限公司 | 网络访问探测方法、装置、设备及存储介质 |
CN113676514A (zh) * | 2021-07-19 | 2021-11-19 | 北京奇艺世纪科技有限公司 | 一种文件回源方法及装置 |
Non-Patent Citations (3)
Title |
---|
Realizing a scalable edge device to meet QoS requirements for real-time content delivered to IP broadband customers;T. Dreibholz;《IEEE Xplore》;全文 * |
新型内容网络关键技术及发展;姜文颖;《电信工程技术与标准化》(第第30卷第10期期);全文 * |
面向内容的网络加速服务系统的设计与实现;吕松;《CNKI中国知网》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114520784A (zh) | 2022-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101154799B1 (ko) | 전역 트래픽 부하 균형화를 위하여 클라이언트 위치 및 리졸버 부하를 결정하는 dns 와일드카드 비컨화 | |
CN105162900B (zh) | 一种多节点协作的域名解析和缓存方法及系统 | |
JP6820320B2 (ja) | リアルタイムユーザ監視データを用いてリアルタイムトラフィック誘導を行うための方法および装置 | |
CN103281409B (zh) | 基于tcp协议的移动互联网域名解析方法及dns服务器 | |
US8639748B2 (en) | Optimized content distribution based on metrics derived from the end user | |
US8745128B2 (en) | Optimized content distribution based on metrics derived from the end user | |
KR101086545B1 (ko) | 수동적 tcp 성능 계측을 이용하여 글로벌 트래픽 로드 밸런싱을 위한 네트워크 근접도를 결정하기 위한 방법 | |
JP7345059B2 (ja) | ルーティング制御方法、装置、プログラム及びコンピュータ装置 | |
US9602406B2 (en) | Data transfer control device and data transfer control method | |
WO2019114830A1 (zh) | 一种网络质量监测方法、装置、电子设备及存储介质 | |
CN113596863B (zh) | 确定用户面功能及信息提供的方法、设备及介质 | |
CN108600051B (zh) | BGP Anycast集群服务质量探测方法和探测设备 | |
CN104954507A (zh) | 数据优选的域名解析方法及系统 | |
CN102457588A (zh) | 一种实现反向域名解析的方法及装置 | |
CN103780714A (zh) | 一种dns服务器的探测方法及装置 | |
CN108809769B (zh) | 一种检测IPv6活跃度的方法和电子设备 | |
CN105491173A (zh) | 一种dns解析方法、服务器及网络系统 | |
CN114520784B (zh) | 一种动态内容加速访问方法及装置 | |
US10333966B2 (en) | Quarantining an internet protocol address | |
US20090150564A1 (en) | Per-user bandwidth availability | |
US10645008B1 (en) | Predictive Anycast traffic shaping | |
US20200159776A1 (en) | Applying filter expressions to requests at an edge server | |
CN111600929B (zh) | 传输线路探测方法、路由策略生成方法及代理服务器 | |
EP3043534A1 (en) | Managing traffic-overload on a server | |
KR20190114126A (ko) | 메시지의 처리 완료 지연 시간을 기초로 스위치로의 메시지 송신을 제어하는 sdn 컨트롤러 및 그 방법 |
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 |