一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于CDN的边缘节点的回源的方法、装置和存储介质与流程

2022-03-15 08:01:39 来源:中国专利 TAG:
用于CDN的边缘节点的回源的方法、装置和存储介质与流程

本公开涉及数据通信领域,具体而言涉及一种用于CDN(Content Delivery Network,内容分发网络)的边缘节点的回源的方法、装置和存储介质。

背景技术

CDN系统通常采用三级缓存架构,缓存节点包括中心、区域和边缘。其中,边缘节点距离用户最近,其次是区域节点,距离用户最远的是中心节点。当终端请求资源在边缘节点未命中时,发生回源,现有的回源路径分配方法通常为中心调度器在收到边缘回源请求之后在回源列表中进行筛选,并且在区域集群节点中随机选择健康的、距离边缘近的区域节点进行服务。

现有的回源路径分配方法是采取中心化调度方式,边缘回源始终要经过中心调度器,由中心调度器根据距离、健康情况来选择区域节点进行服务,边缘无法直接选择保存有回源资源的上级缓存节点,回源难以一次命中,回源过程复杂,耗时长。并且,中心调度器的健康情况将直接影响到CDN的回源性能。当回源量过多、中心调度器处理压力过大时,无法保证对回源请求的快速响应,用户体验差。



技术实现要素:

根据本公开的第一方面,提供了一种用于内容分发网络CDN的边缘节点的回源的方法,所述方法包括在发起请求的边缘节点未命中的情况下:触发所述发起请求的边缘节点内的回源路径选择器以读取区块链账本,其中,所述区块链账本中存储有多条记录,每条记录为与CDN中的各边缘节点的历史回源相关联的信息,包括发起回源的边缘节点地址、存储有文件的区域节点地址、回源文件名和回源时间;基于来自区块链账本的信息选择可能存储有所请求的文件的区域节点;回源到所选择的区域节点,以获取所请求的文件。

根据本公开的第二方面,提供了一种用于内容分发网络CDN的边缘节点的回源的装置,所述装置包括:回源路径选择器,所述回源路径选择器被配置为在发起请求的边缘节点未命中的情况下:读取区块链账本,其中,所述区块链账本中存储有多条记录,每条记录为与CDN中的各边缘节点的历史回源相关联的信息,包括发起回源的边缘节点地址、存储有文件的区域节点地址、回源文件名和回源时间,以及基于来自区块链账本的信息选择可能存储有所请求的文件的区域节点;其中,所述装置被配置为回源到所选择的区域节点,以获取所请求的文件。

根据本公开的第三方面,提供了一种非暂态计算机可读存储介质,其上存储有程序,其特征在于,当所述程序由计算机执行时,使所述计算机执行根据本公开的第一方面所述的方法。

根据本公开的第四方面,提供了一种用于内容分发网络CDN的边缘节点的回源的装置,包括存储器和处理器,所述存储器与所述处理器通信耦合,所述存储器中存储有程序,所述程序当由处理器执行时,使得所述处理器执行根据本公开的第一方面所述的方法。

根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的第一方面所述的方法。

通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得更为清楚。

附图说明

构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:

图1是根据本公开的实施例的图示的CDN的系统架构的示意图;

图2是根据本公开的实施例的图示的用于CDN的边缘节点的回源的方法的流程图;

图3是根据本公开的实施例的图示的用于CDN的边缘节点的回源的方法的流程图;

图4示出了能够实现根据本公开的实施例的计算设备的示例性配置。

为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,公开并不限于附图等所公开的位置、尺寸及范围等。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。

具体实施方式

下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。然而,本领域技术人员将会理解,它们仅仅说明可以用来实施的本公开的示例性方式,而不是穷尽的方式。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

图1是根据本公开的实施例的图示的CDN的系统架构100的示意图。如图1所示,该系统架构100示出了区域部分、边缘部分及区块链部分。区域部分示出了区域节点210、220、230,但应注意的是CDN可以包括的区域节点的数量不限于此,而是可以包括更多的区域节点;边缘部分示出了边缘节点110、120、130,但应注意的是,CDN可以包括的边缘节点的数量不限于此,而是可以包括更多的边缘节点;区块链部分示出了区块链账本310,具体示出了区块链账户311、312、313,但应注意的是,区块链可以包括的账户的数量不限于此,而是可以包括更多的账户。

在本公开的实施例中,边缘节点可以布署有其各自的回源路径选择器和回源信息采集器。作为非限制性示例,边缘节点110可以布署有回源路径选择器111和回源信息采集器112。其中,回源路径选择器可以被配置为在需要回源的情况下基于存储在区块链中的信息选择回源的路径,回源信息采集器可以被配置为对于该边缘节点创建对应的区块链账户,在边缘节点发生回源的时候采集与该回源相关联的信息并将采集到的信息上链到区块链。每个边缘节点可以具有对应的区块链账户,作为非限制性示例,边缘节点110可以对应于区块链账户311,边缘节点120可以对应于区块链账户312,边缘节点130可以对应于区块链账户313。

图2是根据本公开的实施例的图示的用于CDN的边缘节点的回源的方法200的流程图。该方法200可以在发起请求的边缘节点未命中的情况下在边缘节点处执行。

如图2所示,在S21处,可以触发发起请求的边缘节点内的回源路径选择器以读取区块链账本。作为非限制性示例,参见图1,在边缘节点110发起回源请求的情况下,回源路径选择器可以通过区块链账户311读取区块链账本310。其中,区块链账本中可以存储有多条记录,每条记录为与CDN中的各边缘节点的历史回源相关联的信息,包括发起回源的边缘节点地址、存储有文件的区域节点地址和回源文件名。

在本公开的实施例中,区块链账本中存储的记录可以是由边缘节点内的回源信息采集器获取的。作为非限制性示例,参见图1,边缘节点110的回源信息采集器112可以被配置为检测边缘节点110与区域节点(诸如但不限于区域节点210、220、230等)发生回源,并且在检测到回源的情况下自动地触发与边缘节点110对应的区块链账户311以记录与回源相关联的信息。

作为非限制性示例,在区块链账本中存储的记录可以是采取以下的形式:

然后,在S22处,可以基于来自区块链账本的信息选择可能存储有所请求的文件的区域节点。在本公开的实施例中,选择的区域节点可以包括选择:根据区块链账本中的记录,历史上存储有所请求的文件的区域节点、与发起请求的边缘节点的距离近的区域节点、或者健康的区域节点。在本公开中,健康的节点可以是指:该节点的服务器能够正常对外提供服务,没有宕机;服务器本身负载低于一定的健康阈值;以及,服务器对用户的请求响应时长低于一定的健康阈值。

图3是根据本公开的实施例的图示的用于CDN的边缘节点的回源的方法300的流程图。在本公开的实施例中,图2的S22处执行的选择过程可以具体采取图3所示的方法300。如图3所示,在S31处,可以读取区块链账本。在S32处,可以判断来自区块链账本的信息中是否存在涉及所请求的文件的记录。如果不存在涉及所请求的文件的记录,则在S33处,可以从默认区域节点列表中选择健康的区域节点。如果存在涉及所请求的文件的记录,则在S34处,可以判断涉及所请求的文件的记录中是否存在回源时间未超时的记录。如果存在回源时间未超时的记录,则在S35处,可以选择时间上最近的回源的记录中的区域节点。如果不存在回源时间未超时的记录,则在S36处,可以选择与发起请求的边缘节点的距离最近的边缘节点的记录中涉及的与发起请求的边缘节点的拓扑距离最短的区域节点。在本公开中,超时可以是指发生回源的时间距离当前时间超过时间阈值。如前文所述,区块链账本中的记录包括回源时间,因此可以基于回源时间判断是否超时。由于区域节点本身的存储容量有限,会进行缓存资源替换,因此考虑是否超时,如果与回源时间的间隔超过了时间阈值,则认为区域节点存在此资源的可能性很小。

以这样的方式,回源路径选择器先根据边缘节点的回源请求去查询区块链账本中记录该文件上一次回源信息的记录集,优先选择距离目前时间点最近的一次区域回源,原因是根据缓存替换规则,时间越接近代表区域缓存有此资源的概率越大。当记录集中的回源信息都已经超时,则在账本记录中选出与此边缘节点距离相近的边缘节点的回源信息,选择拓扑距离最短的区域进行回源。

应理解的是,图2的S22处执行的选择过程不限于图3中所示的方法。

返回参考图2,在S22处确定要选择的区域节点之后,在S23处,可以回源到所选择的区域节点,以获取所请求的文件。通过这样的方式,可以基于区块链直接找到有存有资源的区域节点;并且,在区域节点有资源的情况下直接响应,边缘节点不需要再回源到中心节点。

图4示出了能够实现根据本公开的实施例的计算设备400的示例性配置。

计算设备400是能够应用本公开的上述方面的硬件设备的实例。计算设备400可以是被配置为执行处理和/或计算的任何机器。计算设备400可以是但不限制于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数据助手(PDA)、智能电话、车载计算机或以上组合。

如图4所示,计算设备400可以包括可以经由一个或多个接口与总线402连接或通信的一个或多个元件。总线402可以包括但不限于,工业标准架构(Industry Standard Architecture,ISA)总线、微通道架构(Micro Channel Architecture,MCA)总线、增强ISA(EISA)总线、视频电子标准协会(VESA)局部总线、以及外设组件互连(PCI)总线等。计算设备400可以包括例如一个或多个处理器404。一个或多个处理器404可以是任何种类的处理器,并且可以包括但不限于一个或多个通用处理器或专用处理器(诸如专用处理芯片)。处理器例如可以被配置为实现如前文参考图2和图3所述的方法。

计算设备400还可以包括或被连接至非暂态存储设备414,该非暂态存储设备414可以是任何非暂态的并且可以实现数据存储的存储设备,并且可以包括但不限于盘驱动器、光存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁性介质、压缩盘或任何其他光学介质、缓存存储器和/或任何其他存储芯片或模块、和/或计算机可以从其中读取数据、指令和/或代码的其他任何介质。计算设备400还可以包括随机存取存储器(RAM)410和只读存储器(ROM)412。ROM 412可以以非易失性方式存储待执行的程序、实用程序或进程。RAM 410可提供易失性数据存储,并存储与计算设备400的操作相关的指令。可单独地或以任何组合方式来使用前述实施方案的各个方面、实施方案、具体实施或特征。可由软件、硬件或硬件与软件的组合来实现前述实施方案的各个方面。

例如,前述实施方案可体现为计算机可读介质上的计算机可读代码。计算机可读介质为可存储数据的任何数据存储设备,所述数据其后可由计算机系统读取。计算机可读介质的示例包括只读存储器、随机存取存储器、CD-ROM、DVD、磁带、硬盘驱动器、固态驱动器和光学数据存储设备。计算机可读介质还可分布在网络耦接的计算机系统中使得计算机可读代码以分布式方式来存储和执行。

例如,前述实施方案可采用硬件电路的形式。硬件电路可以包括组合式逻辑电路、时钟存储设备(诸如软盘、触发器、锁存器等)、有限状态机、诸如静态随机存取存储器或嵌入式动态随机存取存储器的存储器、定制设计电路、可编程逻辑阵列等的任意组合。

在一个实施方案中,可以通过用诸如Verilog或VHDL的硬件描述语言(HDL)编码和设计一个或多个集成电路或者结合使用离散电路来实现根据本公开的硬件电路。

综上所述,根据本公开的第一方面,提供了一种用于内容分发网络CDN的边缘节点的回源的方法,所述方法包括在发起请求的边缘节点未命中的情况下:触发所述发起请求的边缘节点内的回源路径选择器以读取区块链账本,其中,所述区块链账本中存储有多条记录,每条记录为与CDN中的各边缘节点的历史回源相关联的信息,包括发起回源的边缘节点地址、存储有文件的区域节点地址、回源文件名和回源时间;基于来自区块链账本的信息选择可能存储有所请求的文件的区域节点;回源到所选择的区域节点,以获取所请求的文件。

在根据本公开的实施例中,所述选择包括执行以下中的一项或多项:选择历史上存储有所请求的文件的区域节点;选择与所述发起请求的边缘节点的距离近的区域节点;以及选择健康的区域节点。

在根据本公开的实施例中,所述选择包括:判断来自区块链账本的信息中是否存在涉及所请求的文件的记录;如果不存在涉及所请求的文件的记录,则从默认区域节点列表中选择健康的区域节点,如果存在涉及所请求的文件的记录,则判断涉及所请求的文件的记录中是否存在回源时间未超时的记录;如果存在回源时间未超时的记录,则选择时间上最近的回源的记录中的区域节点,如果不存在回源时间未超时的记录,则选择与所述发起请求的边缘节点的距离最近的边缘节点的记录中涉及的与所述发起请求的边缘节点的拓扑距离最短的区域节点。

在根据本公开的实施例中,所述方法还包括:利用边缘节点内的回源信息采集器检测所述边缘节点与区域节点发生回源,并且在检测到回源的情况下触发与所述边缘节点对应的区块链账户以记录与所述回源相关联的信息。

根据本公开的第二方面,提供了一种用于内容分发网络CDN的边缘节点的回源的装置,所述装置包括:回源路径选择器,所述回源路径选择器被配置为在发起请求的边缘节点未命中的情况下:读取区块链账本,其中,所述区块链账本中存储有多条记录,每条记录为与CDN中的各边缘节点的历史回源相关联的信息,包括发起回源的边缘节点地址、存储有文件的区域节点地址、回源文件名和回源时间,以及基于来自区块链账本的信息选择可能存储有所请求的文件的区域节点;其中,所述装置被配置为回源到所选择的区域节点,以获取所请求的文件。

在根据本公开的实施例中,所述选择包括执行以下中的一项或多项:选择历史上存储有所请求的文件的区域节点;选择与所述发起请求的边缘节点的距离近的区域节点;以及选择健康的区域节点。

在根据本公开的实施例中,所述选择包括:判断来自区块链账本的信息中是否存在涉及所请求的文件的记录;如果不存在涉及所请求的文件的记录,则从默认区域节点列表中选择健康的区域节点,如果存在涉及所请求的文件的记录,则判断涉及所请求的文件的记录中是否存在回源时间未超时的记录;如果存在回源时间未超时的记录,则选择时间上最近的回源的记录中的区域节点,如果不存在回源时间未超时的记录,则选择与所述发起请求的边缘节点的距离最近的边缘节点的记录中涉及的与所述发起请求的边缘节点的拓扑距离最短的区域节点。

在根据本公开的实施例中,所述装置还包括回源信息采集器,所述回源信息采集器被配置为检测所述边缘节点与区域节点发生回源,并且在检测到回源的情况下触发与所述边缘节点对应的区块链账户以记录与所述回源相关联的信息。

根据本公开的第三方面,提供了一种非暂态计算机可读存储介质,其上存储有程序,其特征在于,当所述程序由计算机执行时,使所述计算机执行根据本公开的第一方面所述的方法。

根据本公开的第四方面,提供了一种用于内容分发网络CDN的边缘节点的回源的装置,包括存储器和处理器,所述存储器与所述处理器通信耦合,所述存储器中存储有程序,所述程序当由处理器执行时,使得所述处理器执行根据本公开的第一方面所述的方法。

根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的第一方面所述的方法。

本公开提出了一种基于区块链的CDN节点的回源方法,提供了回源信息采集器、回源路径选择器,从而提供去中心化的高效回源路径分配方法。回源信息采集器在检测某个边缘节点与区域节点发生回源后,触发此边缘节点对应的区块链账户记录回源相关信息,从而可以将各边缘节点产生的回源路径都保存在区块链上;当下一次有边缘节点发生回源的时候触发回源路径选择器读取区块链账本,查找对应的保留有此资源的区域地址,如存在则边缘节点直接将用户请求回源至此区域。本公开提出的方法和装置简化了回源路径选择过程,边缘请求可以直接调度到保存有回源资源的区域节点中,高效、快速地进行最优回源路径分配,并且去中心化的回源调度保证了CDN系统的时效性与可靠性。

本公开的方法和装置的优点包括:采取去中心化的回源方法,规避了中心化调度节点的性能瓶颈问题,且无需经过上层调度节点,在边缘节点便可直接回源至存有资源的区域节点,回源时延缩短,提高IPTV CDN整体服务质量;引入区块链技术记录各个边缘节点的历史回源信息,下一次边缘回源时可以通过账本获取到最近一次提供了此资源的区域节点,尽可能保证边缘回源在区域的一次命中,缩短了回源路径;以及区块链的防篡改技术保证了CDN回源记录的可靠性,大幅降低CDN被攻击时的回源失败率。

虽然已通过示例详细展示了本发明的一些具体实施例,但是本领域技术人员应当理解,上述示例仅意图是说明性的而不限制本发明的范围。应该认识到的是,前述方法中的一些步骤不一定按照图示的顺序执行,而是它们可以被同时、以不同顺序或以重叠方式执行。此外,本领域技术人员可以根据需要增加一些步骤或省略一些步骤。前述系统中的一些部件不是必须按照图示的布置,本领域技术人员可以根据需要增加一些部件或省略一些部件。本领域技术人员应该理解,上述实施例可以在不脱离本发明的范围和实质的情况下被修改。本发明的范围是通过所附的权利要求限定的。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献