用于为内容传递网络中的推和拉内容请求分配带宽的方法、设备和计算机程序产品的制作方法_3

文档序号:9510401阅读:来源:国知局
服务器815b可代表图5的区域服务器515b并且服务器825a、825b和825c可分别代表图5的边缘服务器525a、525b和525c。区域服务器815b和边缘服务器825a之间的输出带宽是lGbps,由于推内容请求和拉内容请求具有如图5中所示出的在此处指派的相同优先级,该lGbps被划分成针对推内容请求和拉内容请求的相等部分。基于如图8中所示出的内容文件1、2和3的相对优先级将带宽的推部分分配给内容文件1、2和3,其中内容文件3得到为推内容请求分配的500 Mbps的一半,内容文件2得到为推内容请求分配的500 Mbps的三分之一,并且内容文件1得到为推内容请求分配的500 Mbps的六分之一。类似的分析适用于区域服务器815b与区域服务器825b和825c之间的通信链路。
[0023]现在参见图9,在方块900处,内容文件带宽分配模块335例如基于包括但不限于何时将从边缘服务器访问内容文件、内容文件去往哪些边缘节点、内容文件是否与视频点播(V0D)服务相关联、内容文件是否与实时发生的现场直播主题相关联和/或CDN中内容分布的当前状态的标准(方块910)将优先级等级指派给包括各种内容流的各个内容文件。根据本发明主题的各种实施例,例如在图3的内容文件队列340中缓冲的内容文件可包括但不限于视频文件、音频文件、语音文件和/或文本文件。
[0024]现在参见图10,在方块1000处,推/拉请求带宽分配模块330例如基于包括但不限于内容传递网络(CDN)中内容分布的当前状态和/或时刻(例如某些时刻可具有来自用户的相对轻的拉内容请求)的标准(方块1010 )将优先级等级指派给推内容请求和拉内容请求。现在参见图11,为的是不浪费可用带宽,当没有拉内容请求时,在方块1100处推/拉请求带宽分配模块330重新分配分配给拉内容请求的带宽部分用于推内容请求。同样地,当没有推内容请求时,在方块1110处推/拉请求带宽分配模块330重新分配分配给推内容请求的带宽部分用于拉内容请求。类似的原理适用于基于在输出带宽的推部分和拉部分内指派给内容文件的优先级等级在内容文件之间划分带宽。
[0025]有利的是,本发明主题的实施例可以通过动态调整用于将内容推出至⑶N中的各种节点和为来自用户的对内容的拉请求服务的带宽的部分来考虑更有效的文件传送。可使用CDN中的推管道来传送更低优先级内容文件,当所述更低优先级内容文件在目的地被需要时所述推管道的带宽因此被调整以传递所述文件,同时保持尽可能多的带宽来经由CDN中的拉管道为更高优先级用户请求服务。
[0026]更多定义和实施例
在本发明的各种实施例的以上的描述中,将会理解本文中使用的术语仅仅是为了描述特定实施例的并且不是用来限制本发明的。除非另有定义,本文中使用的所有术语(包括技术术语和科学术语)具有与本发明所属的领域的技术人员通常所理解的相同的含义。将进一步理解,术语(例如在通常使用的词典中定义的那些)应当被解释为具有与本说明书上下文和相关领域中它们的含义一致的含义并且将不会把术语解释为在理想化的或过度拘泥形式的意义上在这里被明确地如此定义。
[0027]当元件被认为是“被连接至”、“被耦合至”、“响应于”(或它们的变体)另一个元件时,它可以被直接连接至、耦合至或响应于其它元件或者居间元件可以存在。相反,当元件被认为是“被直接连接至”、“被直接耦合至”、“直接响应于”(或它们的变体)另一个元件时,没有居间元件存在。全文中相同的附图标记指相同的元件。此外,如在本文中所使用的“耦合的”、“连接的”、“响应的”或它们的变体可包括无线耦合的、连接的或响应的。如在本文中所使用的,单数形式“a”、“an”、“the”是用来也包括复数形式的,除非上下文清楚地另有表明。为了简洁和/或清楚起见,可能不会详细地描述公知的功能或构造。术语“和/或”或者“/”包括相关联的列示的项目中的一个或多个的任何和所有组合。
[0028]如在本文中所使用的,术语“包括”、“包括”、“包括”、“包含”、“包含”、“包含”、“具有”、“具有”、“具有”或它们的变体是可扩充的并且包括一个或多个陈述的特征、整数、元件、步骤、部件或功能,但是并不排除一个或多个其它特征、整数、元件、步骤、部件、功能或它们的组的存在或添加。此外,如在本文中所使用的,常见的缩写“e.g.”从拉丁短语“exempli gratia”得到,可被用来介绍或指定先前提到的项目的通用示例或多个通用示例并且不是用来限制这样的项目的。常见的缩写“1.e.”从拉丁短语“id est”得来,可被用来由更通用的叙述来指定特定项目。
[0029]本文中参考计算机实现的方法、设备(系统和/或装置)和/或计算机程序产品的框图和/或流程图说明来描述示例实施例。要理解,框图和/或流程图说明中的方块以及框图和/或流程图说明中的方块的组合可通过一个或多个计算机电路执行的计算机程序指令来实现。可将这些计算机程序指令提供给通用计算机电路、专用计算机电路和/或其它可编程数据处理电路的处理器电路以产生机器使得经由计算机和/或其它可编程数据处理设备的处理器执行的指令转换并且控制晶体管、存储在存储单元中的值以及这样的电路内的其它硬件部件以实现在框图和/或流程图方块或多个方块中指定的功能/动作,并且因此创建用于实现在框图和/或流程图方块或多个方块中指定的功能/动作的方法(功能性)和/或结构。
[0030]这些计算机程序指令还可被存储在可指导计算机或其它可编程数据处理设备以特定方式起作用的有形计算机可读介质中,使得存储在计算机可读介质中的指令产生包括实现在框图和/或流程图方块或多个方块中指定的功能/动作的指令的制造物品。
[0031]有形、非暂时性计算机可读介质可包括电子、磁、光、电磁或半导体数据存储系统、设备或装置。计算机可读介质的更具体的示例将包括下列:便携式计算机磁盘、随机存取存储器(RAM)电路、只读存储器(ROM)电路、可擦除可编程只读存储器(EPROM或闪速存储器)电路、便携式光盘只读存储器(CD-ROM)和便携式数字化视频光盘只读存储器(DVD/蓝光)。
[0032]计算机程序指令还可被加载到计算机和/或其它可编程数据处理设备上以引起一系列操作步骤将要在计算机和/或其它可编程设备上执行从而产生计算机实现的过程使得在计算机或其它可编程设备上执行的指令提供用于实现在框图和/或流程图方块或多个方块中指定的功能/动作的步骤。因此,本发明的实施例可以体现在硬件中和/或运行在例如数字信号处理器的处理器上的软件(包括固件、常驻软件、微代码等)中,这可被共同称为“电路”、“模块”或它们的变体。
[0033]还应当注意到,在一些备选的实现中,方块中记录的功能/动作可以不按流程图中记录的顺序发生。例如,取决于所涉及的功能性/动作,连续示出的两个方块可以实际上被基本同时执行或者有时可以以相反的顺序执行所述方块。此外,流程图和/或框图的给定方块的功能性可被分成多个方块,和/或流程图和/或框图的两个或更多个方块的功能性可被至少部分地合并。最后,可在所说明的方块之间添加/插入其它方块。此外,尽管图示中的一些包括通信路径上的箭头以示出通信的主要方向,但是将会理解通信可以在与所描绘的箭头相反的方向上发生。
[0034]在本文中连同上面的描述和附图已经公开了许多不同的实施例。将会理解,逐字地描述和说明这些实施例的每个组合和子组合将是过度重复和迷惑的。因此,本说明书(包括附图)将被解释成构成了实施例的各种示例组合和子组合以及制作和使用它们的方式和过程的完整的书面描述,并且将支持对于任何这样的组合或子组合的权利要求。
[0035]可以对实施例做出许多变化和修改而不会实质上背离本发明的原理。所有这样的变化和修改意图是包括在本文中的本发明的范围内。
【主权项】
1.一种操作内容传递网络的方法,包括: 针对所述内容传递网络中连接第一服务器和第二服务器的通信链路将优先级等级分别指派给推内容请求和拉内容请求;以及 基于分别指派给所述通信链路的所述推内容请求和拉内容请求的所述优先级等级,将输出带宽的推部分从所述第一服务器分配至所述第二服务器用于推内容请求并
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1