用于分发内容的方法和装置的制作方法

文档序号:7942104阅读:113来源:国知局
专利名称:用于分发内容的方法和装置的制作方法
技术领域
本发明涉及通信网络的领域,更具体地,涉及内容分发。
背景技术
当用户能够在任何时间访问任何内容时,用户满意度得到最大化。然而,不利地, 如果分发内容的手段没有被优化,则这会导致网络极其低效。另外,随着以个性化方式消 费的内容量不断增长,现有的传送内容的机制并不总是能够有效地向用户传送个性化的内容。

发明内容
通过本发明的用于向一个或多个内容目的节点传送内容的方法和装置,现有技术 中的各种不足都可以得到解决。第一种方法包括接收内容项目的内容使用预测信息;使用所述内容使用预测信 息选择用于所述内容项目的内容分发模式;以及使用所选择的内容分发模式向内容目的节 点的至少一个传播所述内容项目。所述内容使用预测信息与所述内容目的节点相关联,并 表示所述内容项目对于所述内容目的节点的使用级别。所述内容分发模式可包括任何内容 分发模式,诸如广播、交换式广播、多播、单播等。所述内容使用预测信息从一个或多个内容 预测节点接收。所述内容被分发到一个或多个内容目的节点,其可包括终端用户终端和/ 或基于网络的缓存节点。第二种方法包括从多个内容预测节点接收多个内容项目的每一个的内容使用预 测信息;对于所述内容项目的每一个,使用与所述内容项目相关联的内容使用预测信息,选 择用于所述内容项目的内容分发模式;以及使用为所述内容项目选择的各自的内容分发模 式向至少一个内容目的节点传播所述内容项目的每一个。一个实施例可以还包括对于所 述内容项目的每一个,选择所述内容项目使用所选择的内容分发模式传播的传播时间。所 述内容项目的各自的传播时间的选择可包括区分所述内容项目彼此间的优先次序、排列所 述内容项目彼此间的顺序、以及相对可用的时间/容量间隙调度所述内容项目中的至少一 个。


通过考虑以下结合附图的详细说明,本发明的教导可被容易地理解,其中图1描述通信网络体系结构的高级框图;图2描述根据本发明的一个实施例的方法;图3A示出描述本发明的内容分发功能的例子的高级框图;图3B示出描述本发明的内容分发功能的例子的高级框图;图4描述适合用于执行在此描述的功能的通用计算机的高级框图;图5A和图5B描述示出作为时间的函数的内容项目的使用概率和用于计算使用值的项目-节点使用函数的范例实施的示意图。为了方便理解,使用相同的附图标记(可能的话)表示在附图中共有的相同单元。
具体实施例方式本发明在日益个性化的内容传送的环境内提高了内容传送的效率。本发明将内容 项目从内容源传送到内容目的节点。本发明根据表示内容项目的使用概率(例如,内容项 目是有用的、将是有用的或可能是有用的)的预测信息,选择用于将内容项目传送到一个 或多个内容目的节点和多个可能想要内容项目的内容目的节点的模式。内容项目使用所选 择的内容分发模式被分发到一个或多个内容目的节点。内容分发模式可包括广播模式、交 换式广播模式、多播模式、单播模式等。由于以分发模式(例如广播、多播、单播)提供内容分发的网络有一定的容量限 制,因此,本发明以倾向优化受限的网络容量的使用的方式选择哪些内容项目被分发、这些 内容项目应被分发到哪些内容目的节点、这些内容项目应在何时被分发以及使用哪个分发 模式分发这些内容项目。本发明提高了网络在需求高峰期间满足客户对内容项目的请求的 能力,从而通过满足数量增加的唯一内容请求的能力来增加终端用户的价值和/或通过避 免需要增大网络容量以满足需求高峰来减少服务提供商成本。图1描述通信网络体系结构的高级框图。具体地,通信网络体系结构100包括内容 源(CS) 110、内容分发网络(CDN) 120和多个终端用户终端(EUT) 140 (统称为EUT 140)。CS 110使用通信路径115与⑶N 120进行通信。⑶N 120使用通信路径135与一些EUT 140 进行通信。⑶N 120经由本地网络(LN) 130与其它EUT 140进行通信,其中⑶N 120使用通 信路径123与LN 130进行通信,LN 130使用通信路径125与EUT 140进行通信。通信网 络体系结构还包括内容分发调度器(CDS)150,它与CS 110和⑶N 120进行通信。尽管在此主要参照包括特定数量和配置的内容源、内容分发网络和终端用户终端 的通信网络体系结构进行了描述和说明,但本发明可以在包括各种其它数量和/或配置的 内容源、内容分发网络和终端用户终端的其它通信网络体系结构的环境中实施。例如,为了 简化的目的,其它可能的内容源已经从图1中省略。因此,本发明并不限于图1中描述的通 信网络体系结构。CDN 120使得从CS 110向EUT 140和可选地向服务EUT 140的网络单元(例如基 于网络的节点,诸如本地网络缓存节点、接入网络缓存节点、核心网络缓存节点等及其各种 组合)分发内容方便。CDN 120支持多个内容分发模式。例如,CDN 120可支持诸如广播模 式、交换式广播模式、多播模式、单播模式等及其各种组合的内容分发模式。CDN 120包括多 个内容分发节点(⑶N)121i-121N(统称为⑶N 121),其使得使用不同的内容分发模式从CS 110向(或例如在缓存节点的情况下至少向)EUT 140分发内容方便。CDN 121可包括任何使得从CS 110向EUT 140分发内容方便的网络单元。⑶N 121 可根据不同的内容分发模式而变化。例如,CDN 121可包括支持内容广播和/或交换式广 播能力的广播节点(例如,用于复制广播内容的广播复制单元、交换机、路由器、服务器、缓 存节点等)、支持内容多播能力的多播节点(例如,用于复制多播内容的多播复制单元、交 换机、路由器、服务器、缓存节点等)、支持内容单播能力的单播节点(例如路由器、交换机、 缓存节点等)等及其各种组合。
⑶N 120在此被描述为一个通信网络(即,为了清楚起见,没有描述特定的内容分 发网络);然而,如在此所述的,CDN 120可包括广播网络、交换式广播网络、多播网络、单播 网络等及其各种组合中的一个或多个。广播、交换式广播、多播和单播网络可被实现为一个 或多个不同的网络。在一个实施例中,例如,广播或交换式广播能力可由广播网络(或类广 播网络)提供,而多播和单播能力可由多播/单播网络提供。在另一个实施例中,例如,广 播和交换式广播能力可由广播网络提供,多播能力可由多播网络提供,单播能力可由单播 网络提供。换句话说,不同的内容分发模式可使用不同数量和/或组合的内容分发网络以及 这些网络之间不同的交互级别(例如,从孤立网络到全集成网络)而得到支持。例如,内容广播能力可由有线广播网络(例如,基于HFC的广播网络、基于IP的广 播网络或任何其它类似有线网络)、无线广播网络(例如,数字地面电视(DDT)网络、媒体 前向链路(MediaFLO)无线网络、数字视频广播-手持(DVB-H)无线网络、数字多媒体广播 (DMB)无线网络、数字视频广播-卫星(DVB-S)网络或任何其它类似无线网络)等及其各种 组合中的一个或多个提供。例如,内容多播能力和/或单播能力可由有线多播/单播网络(例如IP网络等)、 无线多播/单播网络(例如通用分组无线业务(GPRS)无线网络、通用移动电信系统(UMTS) 无线网络、基于码分多址(CDMA) 2000 (CDMA2000)的演进数据优化(EvDO)无线网络等)等 及其各种组合中的一个或多个来提供。内容分发模式可使用各种其它类型的通信网络提供。CS 110包括多个内容分发服务器(CDS) III1-IIIn(统称为⑶S 111)。CDS 111可 将所存储的内容和/或直播内容传送到EUT 140。CDS 111可将所存储的内容和/或直播 内容传送到能够存储最终分发到EUT 140的内容的基于网络的节点(例如,向⑶N 12ULCN 131等及其各种组合中的一个或多个)。⑶S 111可包括广播服务器、交互式广播服务器、 多播服务器、单播服务器等或者任何其它能够分发内容的网络单元。CDS 111使用CDN 120 将内容分发到EUT 140和能够存储分发到EUT 140的内容的网络节点。⑶S 111可分发任 何类型的内容(例如,数据、音频、视频、多媒体等及其各种组合)。EUT 140包括任何能够请求、接收和显示内容的终端用户终端。EUT140包括终端 用户交互接口,用户可通过它请求内容以及与所呈现的内容进行交互。EUT 140包括一个或 多个呈现接口,所接收的内容通过它呈现给终端用户。EUT 140可在本地存储内容项目,因 此还可以在对等方式中充当用于其它EUT 140的内容项目的源。如果EUT 140能够从另一 个EUT140或从本地缓存节点(例如LCN 131)获得内容项目,则这将减少该EUT140向一个 CDS 111请求内容项目的需要。例如,EUT 140可包括计算机、电视系统(例如,机顶盒、电 视机、相关的遥控器等)、无线电话、个人数字助理(PDA)等及其各种组合。EUT 140和LCN 131在此可统称为内容目的节点。EUT 140被当作内容目的节点, 是因为内容项目最终被传送到EUT 140以呈现给终端用户。LCN 131(以及内容分发网络或 其它本地网络内任何其它能够缓存内容的基于网络的节点,这些节点为了简化的目的而已 被省略)被当作内容目的节点,是因为内容项目被传送到LCN 131以为了某些EUT 140缓 存,用于稍后传送到这些EUT 140。换句话说,内容目的节点可包括任何用于接收内容项目 并呈现和/或缓存所接收的内容项目的节点。
⑶S 150用于调度内容从CS 110到内容目的节点(例如,EUT 140和能够存储内 容以分发给EUT 140的网络节点(S卩,代表EUT 140))的传送。⑶S 150从内容预测节点接 收内容使用预测信息。内容使用预测信息与EUT 140和代表EUT 140运行的网络节点相关 联。⑶S 150确定用于从CS 110(8卩,向EUT 140和能够存储分发到EUT 140的内容的网络 节点)分发内容项目的内容分发调度表。CDS 150根据内容分发调度表引导CS 110分发内 容项目(即,使用所选择的分发模式和可选的相关的为内容项目而确定的内容项目分发时 间)。从CS 110分发到内容目的节点的内容可以是任何能够通过通信网络传送的内 容。从CS 110分发到内容目的节点的内容可包括一个或多个内容项目或者一个或多个内 容项目的一个或多个部分。在一个实施例中,当内容项目已被分割成多个片段时,从CS 110 分发到内容目的节点的内容可包括内容项目的一个或多个片段(例如,仅仅是内容项目的 所有片段的子集)。在这种实施例中,内容项目的片段可以独立地从单个位置或不同位置获 得,并在内容目的节点重新组合。例如,内容项目可包括数据文件的一部分、数据文件、一组数据文件、网页、音频片 断的一部分、音频片断、音频片断集合、视频片断的一部分、视频片断、视频片断集合、多媒 体片断的一部分、多媒体片断、多媒体片断集合、用户所生成的视频、直播电视节目、所存储 的电视节目、短或长的电影、点播电影等及其各种组合。换句话说,内容项目可以是任何内 容项目的分发可被调度的内容作品或内容作品的片段。内容项目可包括任何其它形式的内 容。内容使用预测信息包括用于在调度内容项目从内容源节点到内容目的节点的分 发中使用的信息。内容项目的内容使用预测信息包括表示内容项目的使用概率的使用值和 表示内容项目对其可用的内容目的节点的数量的数量值(在此也称为“扇出”)。内容使用 预测信息可以采用任何格式接收。如在此所描述的,内容使用预测信息可以从一个或多个 内容预测节点接收。内容预测节点包括任何包括能够确定内容使用预测信息的预测智能并向内容调 度器(例如CDS 150)提供内容使用预测信息的设备。在一个实施例中,预测智能可在网络 内实现(例如,在任何一个网络单元或多个网络单元上,诸如CS 111、⑶N 121, LCN 131等 及其各种组合)。在一个实施例中,预测智能可在终端用户处(即,在EUT 140上)实现。 在一个实施例中,预测智能可以在网络内和在终端用户处都实现。预测智能可根据与内容目的节点相关联的内容使用反馈信息确定内容使用预测 fn息ο在一个实施例中,每个内容目的节点(η)已将其与内容项目⑴将在某个时间⑴ 使用的概率或Pfei, t)相关联。对于内容项目(i)在时间(t),网段(N)的多个内容目的节 点(η)的概率Pfei, t)可用于计算使用因素(U),它表示将内容项目(i)发送到具有多个内 容目的节点的网段(N)的值。使用因素合并多个因素,包括具有非零概率Pimi, t)的内容目 的节点的数量。在时间⑴将内容项目⑴通过内容分发模式(m)发送到具有多个内容目 的节点(η)的网段(N)的使用值⑶可以被表示(以最简化的形式)为 在这个使用值的表达式中,Pin,^)是内容项目⑴将在时间⑴被内容目的节点 (η)使用的概率,是表示根据来自多个内容目的节点的聚合信息计算使用值可涉及以不 同方式结合每一个内容目的节点信息的广义函数。在这个简单的表达式中,发送特定内容 项目(i)的使用值(U)是所有相关内容节点上的概率的和的函数,其中所述概率是该内容 项目(i)将对这些内容目的节点有用的概率。在一个实施例中,网段(N)的范围一部分由网络的物理拓扑限定,一部分由内容 分发模式限定。通过限定,广播到达所有广播已知的内容分发节点。交换式广播到达所有 处于所定义的交换区域(其通常在地理上定义)内的内容分发节点。多播到达所有与多播 复制点对向的内容分发节点。单播到达一个内容分发节点。尽管主要参照网段(N)的范围 的这个定义进行了描述和说明,但在其它实施例中,网段可以用其它方式定义。在一个实施例中,信息从内容目的节点被反馈回网络中的决策点以确定哪些内容 项目将被发送以及用什么优先级、顺序或调度表。在一个实施例中,除了反馈标识对内容目的节点有用或可能有用的内容项目的信 息外,反馈信息还可包括标识在内容目的节点处当前可用的内容项目的信息。在一个这种 实施例中,使用值(U)的计算可被修正以并入存储器因素(S),它表示内容项目(i)在时间 (t)在内容分发节点(η)处从内容目的节点本身、本地缓存节点或邻近的内容目的节点不 可得、因而必须从内容分发服务器获得的概率。该存储器因素的最简单的形式是如果节点 有该内容项目,则S = O;如果节点不具有该内容项目,则S= 1。修正后的使用值⑶可被 表示为 在该使用值的表达式中,Pfca,t)是内容项目⑴将在时间⑴被内容目的节点(η) 使用的概率,Sin,^,是表示内容项目⑴将在时间⑴在内容分发节点(η)处不可用的概 率的存储器因素,f是表示根据来自多个内容目的节点的聚合信息计算使用值可涉及以不 同方式结合每一个内容目的节点信息的广义函数,f2是表示有多种根据那些影响使用值的 因素计算使用值的方式的广义函数,其中那些因素专用于特定的内容目的节点。在内容目的节点当前可用的内容项目可由每一个内容目的节点报告,或以任何其 它方式(例如,根据以前发送到该内容目的节点的内容项目的历史)确定。可对内容目的 节点有用的内容项目可以任何方式确定(例如,根据从内容目的节点接收的一个或多个内 容项目请求、期望从内容目的节点接收的内容项目请求的预测、内容项目的推荐等及其各 种组合)。例如,推荐代理(可位于网络内或在终端用户处)可根据哪些内容项目可能是终 端用户感兴趣的预测,代表EUT 140请求内容。例如,这种预测Pfei,t)可基于各种因素的分 析,诸如过去消费的内容、来自终端用户的关于哪些类型的内容项目是感兴趣的指引信号、 可被推荐给终端用户的可能的内容项目的目录、将被推荐给终端用户的内容项目的列表、 所观察的来自其它用户(例如,确定为与该终端用户相似的终端用户)的消费模式、内容项 目的一个或多个特征(例如,内容类型、内容质量等特征)、终端用户终端特征(例如,存储 能力、屏幕尺寸以及类似的特征)等及其各种组合。来自这些推荐代理的请求可无需来自终端用户的任何主动参与而发生,从而内容项目的“请求”也可无需终端用户的任何主动参与而发生。通常,由推荐代理生成的对内容 项目(i)的请求具有比由终端用户直接请求的对内容项目(i)的请求更低的使用概率Pfei, t)(例如,因为由终端用户直接请求的内容项目将非常可能被该终端用户使用,而推荐给该 终端用户的内容项目可能不被该终端用户接受)。在一个实施例中,内容项目在将来某个时间是有用的概率可以是时间的函数。例 如,内容项目可根据一天的某个时间、一周的某一天、一年的某一天、在某个事件之前的时 间或自某个事件之后的时间等及其各种组合,更有可能或更少可能被请求。例如,最近上映 的电影可具有比不是最近上映的电影更高的被使用的概率,恐怖电影可具有更高的在晚上 被使用的概率,假日电影可具有更高的在接近对应假日时被使用的概率,等等。在这样的实施例中,表示内容项目将在未来某个时间有用的概率的值可采用多种 方式计算。在一个实施例中,表示特定内容项目将在未来某个时间有用的概率的值通过计算 曲线图下的面积来计算,在该曲线图中,该内容项目的使用概率被绘制为时间的函数。参照 图5A描述和说明一个例子。图5A描绘了显示作为时间(t)的函数的内容项目(i)的使用概率和可用于根据 示例使用概率计算使用值U的项目-节点使用函数f2的范例实施的示例性图。如图5A所 示,该例子针对恐怖电影。如图5A所示,提供了作为时间⑴的函数的用于节点(η)的内容项目(i)的使用 概率的曲线图501 (标记为P(i,n))。如图501所示,由于预料到恐怖电影在白天很少可能被 观看,因此,恐怖电影的使用概率从上午11点开始缓慢减小,直到下午早些时候,之后使用 概率开始慢慢增大。使用概率在大约晚上10点时达到峰值,之后快速地减小,并在整个半 夜期间维持低的值。应当注意,这仅仅是使用概率Pa,n)的曲线图的一个例子。在一个实施例中,如图5A所示,项目-节点使用函数f2可通过确定曲线图501下 的面积实施(标记为曲线图510)。在这样一个实施例中,项目_节点使用函数f2 = / (Ρα, n))dt。该函数给出了曲线图501的曲线下的面积(如曲线图510中的阴影面积)。应当注 意,这仅仅是项目-节点使用函数f2的一个范例实施,也可以采用多种其它方式实施。在另一个实施例中,表示内容项目将在未来某个时间是有用的概率的值可在时间 的基础上通过对内容项目将被使用的概率应用权重因子来计算。参照图5B描述和说明一 个例子。图5B描绘了示出作为时间(t)的函数的内容项目(i)的使用概率和可用于根据 示例使用概率计算使用值U的项目-节点使用函数f2的范例实施的示例性图。如图5B所 示,该例子针对恐怖电影。如图5B所示,提供了作为时间⑴的函数的用于节点(η)的内容项目⑴的使用 概率的曲线图501 (标记为P(i,n))。如曲线图501所示,由于可预料到恐怖电影在白天很少 可能被观看,因此,恐怖电影的使用概率从上午11点开始慢慢减小,直到下午早些时候,之 后,使用概率开始慢慢增大。使用概率在大约晚上10时达到峰值,之后它快速减小并在整 个半夜期间维持低的值。应当注意,这只是使用概率Pa,n)的曲线图的一个例子。在一个实施例中,如图5B所示,项目-节点使用函数f2可以通过确定曲线图501 下的面积来实施(标记为曲线图521),其中在不同时间的曲线图下的面积通过在确定项目-节点使用函数f2中应用的权重函数W(t)进行修正。在这样一个实施例中,项目-节点 使用函数4 = / (P(i,,n) * W(t))dt。该函数给出了曲线图501的曲线下的面积(如曲线图 521中的阴影面积)的加权表示。应当注意,这仅仅是项目-节点使用函数f2的范例实施, 该函数可采用多种其它方式来实施。如图5B所示,提供了作为时间(t)的函数的权重函数Ww的曲线图522。如曲线 图522所示,在峰值网络使用的时间段内,权重函数W(t)的权重值在短时间内减小,然后在 非峰值网络使用的时间段内增大,并且,权重函数%)的权重值在长时间内线性减小。应当 注意,这仅仅是权重函数Ww的曲线图的一个例子。权重函数Ww (例如,权重值随时间变化的方式)可采用许多不同的方式实现,以 下是其中的某些例子。作为一个例子,对于未来很快到来的时间,权重值可以小,因为网络将没有时间传 送内容的全部。作为另一个例子,如果在现在与内容项目可能有用的时间之间没有非峰值 网络使用的时段,则在下一个非峰值时段之前被使用的概率可具有小的值,因为没有机会 将命令从网络峰值负载中移除。作为另一个例子,在未来较远的使用概率可以被指定更小 的值,因为在中间时段,终端用户偏好可改变,这将更改内容项目将对终端用户有用的概 率。应当注意,这仅仅是项目-节点使用函数f2的范例实施,它可以采用多种其它方 式来实现。表示内容项目将在未来某个时间有用的概率的值也可以采用多种其它方式计算。在另一个实施例中,表示内容项目将有用的概率的值结合了有关在终端用户终端 或网络中已缓存的内容项目的部分或全部实例的信息。例如,可以假定如果内容项目被发 送到已具有该内容项目的全部的内容分发节点,则该内容项目的新的实例具有低(或零) 的被使用的概率,因为现有的版本将被使用。然而,在所有的情况下都没有必要是零,因为 例如可能有大量的终端用户在请求内容项目,以致这些终端用户超过了缓存有该内容项目 的中间节点的服务容量。在这种情况下,以广播模式发送同一个内容项目或者在其它缓存 点存储都是有用的。在另一个实施例中,使用值的计算结合了有关在时间(t)将内容项目(i)传送到 内容目的节点(η)的临界值MVfeiit)的信息,假定该内容项目将在该内容目的节点处使用。 例如,内容项目可以被单独定价,并且某些项目可以是具有较高价格的“优质”内容,因此, 如果在内容目的节点可用,则具有更大的临界值。在一个实施例中,同一个内容项目的价格 可以根据时间等及其各种组合而在不同的内容目的节点之间不同(例如,在地理上分段计 价)。某些内容项目在大小上可能显著地大于其它内容项目,因此,如果网络容量受限,则代 表“机会成本”(即,因为其它资源密集较小的内容项目本来可以代替较大的内容项目被传 送)。在这样的实施例中,修正的使用值(U)可以表示为 在该使用值的表达式中,Pfca,t)是内容项目⑴将在时间⑴被内容目的节点(η) 使用的概率,Sin,^,是表示内容项目(i)在时间(t)在内容分发节点(η)已不可用的概率 的存储器因素,MVin,^,是在时间⑴将内容项目⑴传送到内容目的节点(η)的临界值,f是如上所述的广义函数,f2是如上所述的广义函数。尽管在此主要参照一个预测智能点向内容分发调度器提供内容使用预测信息的 实施例进行了描述和说明,但是,内容使用预测信息可从任意数量的预测智能点提供给内 容分发调度器。尽管在此主要参照预测智能点是网络节点的实施例进行了描述和说明,但 是,预测智能点可以是网络节点和/或终端用户终端。⑶S 150通过对每个内容项目选择内容项目将被分发的内容分发模式和可选的内 容项目的分发时间来确定内容项目的分发调度表。为内容项目选择的的分发模式是广播分 发、交换式广播分发、多播分发、单播分发等中的一种。为内容项目选择的分发时间是内容 项目从该内容项目的源传播到该内容项目打算去往的内容目的节点的时间。分发调度表(例如,各个内容项目的内容分发模式的选择和可选的各个内容项目 的分发时间的选择)可基于多种因素确定。内容项目的内容分发模式的选择是基于内容项目的内容使用预测信息(例如,基 于表示期望找到有用的内容项目的内容目的节点的数量的使用值,其用表示给定内容项目 将对每个内容分发节点有用的概率的值加权)。即,使用上述的使用值计算的实施例(其 中, 表示P(Mt)和可选的S(Ut)和MV(Mt)中的一个或两者) 在一个实施例中,用于在网段(N)内传送内容项目(i)的内容分发模式(m)可通 过计算每个可用的内容分发模式(m)的使用值U0ll^t)来选择。在一个这种实施例中,最 高使用值Uim^t)被计算的内容分发模式(m)被选择为该内容项目(i)分发到该网段(N) 的内容分发模式。在另一个实施例中,用于在网段(N)内传送内容项目(i)的内容分发模式(m)可 根据“扇出”选择,其中用于在时间⑴将内容项目⑴传送到网段(N)的扇出值被计算为 F"0(i,N,t) = N中U(i,N,t) > Utheeshold的η的数量。在一个实施例中,UTHKES_ = 0,因而在网段 N中具有非零使用值的内容目的节点的数量是该内容项目的扇出的数值。在其它实施例中, Utheeshold > 0,因而网段N中至少一些具有非零使用值的内容目的节点可被忽略而不考虑。在一个实施例中,内容项目之间的使用值相等,分发模式(m)基于所计算的F_0(i, N,t)选择。在该实施例中,具有最大F-O(^t)值的内容项目使用广播分发,具有中间F_0(i,N, t)值的内容项目使用多播分发,具有最小F-O(^t)值的内容项目使用单播分发。在另一个实施例中,内容项目之间的使用值不恒定,分发模式(m)根据使用值(U) 和传送内容项目的网络的扇出值(F-O)以及可选的扇入细节的任意组合来选择。在这样一个实施例中,例如,具有高扇出值(F-O)的满足至少某个最小使用阈值 的所有内容项目通过广播网络进行分发,直到期望数量的可用时间/容量间隙对于广播分 发窗口已被填满,在这一点,剩余内容项目可使用内容目的节点使用值的和作为优先化机 制分配给共享网络(例如,如果内容项目想要分发到多个内容目的节点,则使用多播模式; 如果内容项目想要只分发到一个内容目的节点,则使用单播模式,即Ua,N,t) > Utheeshold)。尽管在此主要参照使用值⑶和扇出值(F-O)的组合用于选择分发不同内容项目 的内容分发模式的一个实施例进行了描述和说明,但是,使用值(U)和扇出值(F-O)的组合 可采用多种其它方式用于选择分发不同内容项目的内容分发模式。
对于给定的网段(N)和分发模式(m),U(i, t)是对分发内容项目⑴的重要性的量 度,其可用于优先化、排序和/或调度内容项目。内容项目的分发顺序和时刻的选择可以采 用多种方式执行。内容项目的分发顺序/时间的选择可包括区分内容项目彼此间的优先次 序(例如,使用基于各自的U(i,t)值的等级排序)。内容项目的分发顺序/时间的选择可包 括排列内容项目彼此间的顺序。内容项目的分发顺序/时间的选择可包括将内容项目调度 到所定义的时间/容量间隙内。内容分发调度表的确定(包括各个内容项目的内容分发模式的选择和/或各个内 容项目的分发时间的选择,以及任何其它与确定内容分发调度表相关的确定)可使用其它 信息执行。例如,分发调度表可以根据内容项目变得可用的时间、内容项目仍然可用的时间、 关于内容项目的传送的终端用户期望(例如,用户是期望在内容项目变得可用时就接收 它们还是愿意在接收内容项目之前等待一段时间)、关于内容项目的呈现的终端用户计划 (例如,终端用户是期望立即回顾内容还是计划在稍后某个时间回顾内容)、内容项目的各 个值等及其各种组合确定。分发调度表可根据与网络的当前和/或期望状态相关联的网络状态信息确定,诸 如网络容量限制信息(例如,可用的网络容量、期望在未来可用的网络容量等)、传送内容 项目的成本(例如,在网络资源或成本的某些其它度量方面,诸如内容项目的大小和相关 的将通过发送内容项目而被消耗的网络资源的共享)等及其各种组合。内容分发调度表可以根据其它多种因素确定。本地缓存节点(例如LCN 131)是内容目的节点的特殊实例。本地缓存节点是接 入或聚合网络中的服务器,其代表一组终端用户存储内容。本地缓存服务器的功能是存储 内容以由一个或多个具有没有存储容量的终端用户终端的终端用户访问。本地缓存服务器 的另一个用途是存储内容项目的实例并在需要时将其分发给多个终端用户,从而减轻本地 缓存服务器与内容分发服务器之间网络上的负载。在本地缓存节点的内容项目将被使用的 概率是内容项目将被访问该本地缓存节点的终端用户的一个或多个使用的概率的函数。 在该使用值的表达式中,Pin,^)是内容项目⑴将在时间⑴被附着到本地缓存 节点(LCN)的内容目的节点(η)使用的概率,f3是组合终端用户中的每一个的使用概率的 函数。在一个实施例中,函数&可以根据下面的过程实施1.令初始P鋪’t) = P(ljijt)(即,对于EUT 1,内容项目i在时间t的概率);2.令更新的 PLCN(i,t)=初始 Plcnqj+PU * (I-初始 PLCN(i,t));3.令更新的 PLCN(i,t)=前一个 PLO^J+Pu) * (I-初始 Plcn(W));4.对于从本地缓存节点提取内容的所有终端用户终端,重复步骤3。作为例子,假定LCN节点具有3个附着的终端用户终端,其分别具有值为0. 6,0. 1 和0. 3的P(^t)。使用上述的函数f3的例子,本地缓存节点LCN的Pram,t)可如下计算。根 据第一个用户,t)的初始评估值是0.6。第二个用户增加0.1 * (1-0.6) =0.04,使 PLCN(i, t)达到 0. 64。第三个用户增加 0. 3 * (1-0. 63) = 0. 108,使 PLCN(i, t)达到 0. 748。因此,本地缓存节点LCN的Pram, t)的最终值是0. 748。尽管主要参照函数f3的特定实施进行描述,但也可以使用多种其它计算函数&的 算法。在一个实施例中,例如,函数f3可以使用递归贝叶斯估计实现,其可结合在本地缓存 节点已知的其它信息(例如,诸如假定内容项目被使用,给定终端用户使用概率已被记录 的历史)。函数&可以采用多种其它方式实现。⑶S 150根据内容分发调度表指导内容项目到内容目的节点的分发。⑶S 150向 CS 110提供内容分发调度表信息,由CDS 111用于确定哪些内容项目应被分发、内容项目 应被分发到哪些内容目的节点、内容项目应被分发的顺序(例如优先级)、分发内容项目的 内容分发模式、内容项目应在哪个时间分发等及其各种组合。⑶S 150可以采用任何方式指导内容项目从CS 110到内容目的节点的分发。在一 个实施例中,例如,CDS 150可以向CS 110提供内容分发调度表,以致每个CDS 111处理内 容分发调度表,以便确定内容分发调度表的哪个(些)部分可适用于该CDS 111。在另一 个实施例中,例如,CDS 150可以处理内容分发调度表,以便指导每一个CDS 111根据内容 分发调度表向内容目的节点分发内容。CDS 150可以采用任何其它方式指导内容项目从CS 110到内容目的节点的分发。参考以下参照图2描述和说明的方法和参照图3描述和说明的例子,CDS 150在 执行本发明的内容分发功能方面的操作可得到更好地理解。图2描述了根据本发明的一个实施例的方法。具体地,图2的方法200包括用于 根据基于内容使用预测信息确定的内容分发调度表将内容从内容源传送到内容目的节点 的方法。尽管被描述和说明为顺序地执行,但图2的方法200的至少一部分步骤可以并行 地或者以不同于参照图2描述和说明的顺序执行。该方法200从步骤202开始,并进行到 步骤204。在步骤204,接收内容使用预测信息。在步骤206,确定内容分发调度表。在步骤 208,根据内容分发调度表,内容被分发到内容目的节点。在步骤210,方法200结束。当结 合图1的描述考虑时,方法200的操作可以得到更好地理解。尽管被描述和说明为结束(为 了清楚起见),但应当理解,方法200可以继续执行,以致根据内容使用预测信息的内容分 发继续动态地执行。参考一个例子,本发明的内容分发功能可以得到更好地理解。图3描绘了表示本 发明的内容分发功能的操作的例子的高级框图。如图3A和图3B所示,该例子在参照图1 描述和说明的通信网络体系结构的一部分的环境中进行描述,并进而在只有四个内容项目 (例如,标记为内容项目A、B、C、D)可用于使用不同的内容分发模式从内容源分发到内容目 的节点的网络的环境中进行描述。图3A描绘了用于本发明的内容分发功能的内容分发调度部分的通信网络体系结 构300a。具体地,图3A描绘了用于四个内容目的节点(例如,包括第一 EUT HO1、第二 EUT 1402、第三EUT HOjPLCN 131)的内容分发调度。通信网络体系结构300A包括内容预测节 点(CPN)310。CPN 310接收与内容目的节点相关联的内容使用反馈信息305。CPN 310处 理内容使用反馈信息305以确定内容使用预测信息315。CPN 310向内容分发调度器(例 如CDS 150)提供内容使用预测信息315。如图3所示,第一EUT HO1、第二EUT 1402和第三EUT 1403包括图1中的EUT 140中的一些,LCN 131是图1中的LCN 131,⑶S是图1中的⑶S 150。如在此所描述的,能够 接收内容使用反馈信息305并生成内容使用预测信息315的CPN 310可以是任何包括预 测智能的节点。例如,CPN 310可以包括图1的节点中的一个或多个(例如,一个或多个 CDW21、一个或多个CS 111或任何其它能够执行智能预测的节点)。尽管为了简化起见进 行了省略,但如在此所描述的,预测智能还可以由某些或全部内容目的节点提供,或者代替 基于网络的预测智能或者与基于网络的预测智能相结合。如在此所描述的,内容使用反馈信息可包括标识在内容目的节点当前可用的内容 项目、对内容目的节点是、将是和/或可能是有用的内容项目等及其各种组合的信息。在一 个实施例中,对于给定的内容目的节点(或给定的包括多个内容目的节点的网段),内容项 目的内容使用反馈信息提供该内容项目对于内容目的节点的使用级别的指示。如图3所示,用于该例子的内容使用反馈信息305指示以下内容第一EUT 14(^想 要A (概率为0. 5)、B (概率为0. 3)和D (概率为0. 4),并具有B ;第二 EUT 1402想要A (概 率为0.6)和C(概率为0. 1),但没有任何存储能力;第三EUT 1403想要A(概率为0.4)、 B(概率为0. 3)和C(概率为0. 2),并可从LCN 131获得B ;LCN 131代表第二 EUT 1402想 要A(概率为0.6)和C(概率为0.1)。为了简化起见,该例子使用不随时间变化的静态概 率,并另外假定所有的内容项目具有相等的临界值。如在此所描述的,给定内容项目的内容使用预测信息可包括表示内容项目的使用 概率的使用值、表示可认为内容项目是有用的内容目的节点的数量的数量(扇出)值等。在 该例子中,扇出值(F-O)用于选择每个内容项目的分发模式,使用值(U)用于确定传送到内 容目的节点的内容项目的顺序。内容使用预测信息315指示以下内容内容项目A具有使用值1. 5和扇出值4 (因 为所有四个内容目的节点或者想要或者可能想要内容项目A);内容项目B具有使用值0和 扇出值0(因为虽然第一 EUT HO1可能想要B,但它已经有了 B;虽然第三EUT 1403可能想 要B,但它可以从LCN 131得到B);内容项目C具有使用值0.3和扇出值2(因为虽然三个 内容目的节点想要内容项目C,但LCN 131代表第二EUT 1402想要内容项目C,因为第二EUT 1402没有存储器);内容项目D具有使用值0.4和扇出值1(因为第一 EUT HO1是四个内容 目的节点中唯一一个对其有内容项目D可能有用的任何指示的节点)。如图3A所示,在一个实施例中,每个内容项目的使用值通过对与每个内容目的节 点相关的各个概率值相加来计算。例如,内容项目A具有使用值1. 5,因为第一 EUT HO1想 要A的概率是0.5,第二 EUT 1402想要A的概率是0.6,第三EUT 1403想要A的概率是0. 4, LCN 131想要A的概率是0. 6 (即,0. 5+0. 6+0. 4 = 1. 5 ;注意第二个0. 6值没有被计算,因 为LCN131代表第二 EUT 1402想要内容项目A)。内容项目的使用值可采用其它方式计算 (例如,使用内容使用反馈信息的各自的概率值计算内容项目的平均概率值,使用内容使用 反馈信息的概率值的加权形式计算加权使用值,将未来时间点的内容使用值作为因素等)。图3B描绘了用于本发明的内容分发功能的内容分发部分的通信网络体系结构 300b。具体地,图3B描绘了用于4个内容目的节点(例如,参照图3A描述和说明的第一 EUT HO1、第二 EUT 1402、第三EUT 1403和LCN 131)的内容分发。通信网络体系结构300B包 括内容分发调度器(例如,图1中的CDS 150),其指导内容项目从内容源(例如,图1中的 CS110)到内容目的节点的分发。CDS 150使用所接收的内容使用预测信息(例如,参照图
153A描述和说明的内容使用预测信息315)调度内容项目从CSllO到内容目的节点的分发。如图3B所示,CDS 150使用各种信息,诸如与内容项目相关的内容使用预测信息 (参照图3A描述和说明的)和可选的其它信息(例如,诸如网络拓扑、当前网络状态、期望 的网络状态或任何其它相关信息)等及其各种组合,为内容项目选择内容分发模式。CDS 150可使用各种信息,诸如为各个内容项目选择的内容分发模式以及其它信息(例如,当前 /或期望的网络状态等)等及其各种组合,优先化内容项目的分发。CDS 150输出内容分发调度表320,其指定所选择的将被分发给一个或多个内容 目的节点的每个内容项目的内容分发模式,并可选择地,优先化内容项目的分发。内容分发 调度表320可包括其它与内容分发有关的信息(为了简化的目的,从图3B中省略)。如图3B所示,对内容项目A选择广播分发(因为使用值是1. 5,扇出值为4),对内 容项目C选择多播分发(因为使用值是0. 4,扇出值为2),对内容项目D选择单播分发(因 为使用值是0.3,扇出值为1)。内容项目B不需要被分发,因为LCN 131已经具有内容项目 B的副本,第一 EUT HO1已经具有内容项目B的副本,没有第二 EUT 1402想要内容项目B的 指示(并且即使第二 EUT 1402确实想要内容项目B,也可从LCN 131或从EUTHO1获得), 第三EUT 1403可从LCN 131或从EUT HO1获得内容项目B。如在内容分发调度表320中 描述的,内容项目被如下优先化(从最高优先级到最低优先级)经由广播的内容项目A,经 由单播的内容项目D,经由多播的内容项目C。⑶S 150向CS 110提供内容分发调度表320。CS 110根据内容分发调度表320向 内容目的节点分发内容。在该例子中,假定广播网络是单独的网络(例如,经由卫星或某个 其它广播网络),但多播和单播分发模式共享一个网络(例如,有线宽带网络或某个其它网 络)。另外,在描述根据内容分发调度表320分发内容项目中为了简化,假定这些网络中的 每一个都只具有足够在某个时间发送一个内容项目的容量。如图3B所示,内容项目A、D和C被分发。内容项目A通过广播分发到⑶N 120的 一个CDN 121,由该CDN 121将内容项目A分发到LCN131和所有三个EUT 140r1403o内 容项目D在共享的多播/单播网络上以单播模式分发(与经由广播传输分发内容项目A同 时)。下一个在共享的多播/单播网络上分发的内容项目是内容项目C,其通过多播分发。 CS 110将内容项目C的一个副本传输到多播复制点(例如,⑶N 120的一个⑶W21),该点 复制内容项目C并将内容项目C的副本传送到LCN 131和第三EUT 1403。在后一个例子 中,内容项目C本来可以由第三EUT HO3WLCN 131获取,但在其它实例中(例如,当不存 在LCN时),多播将能够使受欢迎的内容有效地分发给许多EUT。本发明使用1 N的分发能力和内容缓存能够使经过调度的内容分发(例如,在 广播、交换式广播和多播网络中)与未经调度的内容传送(例如单播网络)有效地合并,以 获得网络效率。本发明增强了日益个性化的内容的环境内内容传送的效率。网络资源的有 效利用推动服务能力并控制成本,这两者对于服务提供商都是重要的。图4描绘了适合用于执行在此描述的功能的通用计算机的高级框图。如图4所示, 系统400包括处理器单元402 (例如CPU)、内存404 (例如,随机存储器(RAM)和/或只读存 储器(ROM))、内容分发模块405和多种输入/输出设备406 (例如,存储设备,包括但不限于 磁带驱动器、软盘驱动器、硬盘驱动器或压缩光盘驱动器、接收器、发射器、扬声器、显示器、 输出端口和用户输入设备(诸如键盘、键区、鼠标等))。
16
应当注意,本发明可以用软件和/或软件与硬件的组合实现,例如使用专用集成 电路(ASIC)、通用计算机或任何其它硬件等同物。在一个实施例中,内容分发处理405可 被装载到内存404中并由处理器402执行,以实现上述的功能。同样,本发明的内容分发处 理405 (包括相关的数据结构)可以被存储在计算机可读媒体或载体上,例如RAM存储器、 磁或光驱动器或盘等。可以预期在此作为软件方法讨论的一些步骤可以在硬件内实现,例如,作为与处 理器合作以执行各种方法步骤的电路。本发明的一些部分可以实现为计算机程序产品,其 中,计算机指令在由计算机处理时,改编计算机的操作,以致本发明的方法和/或技术被调 用或另外提供。用于调用本发明的方法的指令可以存储在固定或可移动的媒体中,在广播 或其它信号承载媒体中经由数据流传输,和/或存储在根据指令运行的计算机设备内的工 作内存内。虽然在此已示出并详细描述了结合本发明的教导的各种实施例,但本领域熟练技 术人员可以容易地想到许多其它仍然结合这些教导的实施例。
权利要求
一种用于向包括至少一个内容目的节点的网段提供内容的方法,包括接收内容项目的内容使用预测信息,其中所述内容使用预测信息与所述至少一个内容目的节点相关联,并且所述内容使用预测信息表示所述内容项目对于所述至少一个内容目的节点的使用级别;使用所述内容使用预测信息选择用于所述内容项目的多个内容分发模式中的一个;以及使用所选择的内容分发模式向所述至少一个内容目的节点传播所述内容项目。
2.如权利要求1所述的方法,其中,选择用于所述内容项目的所述内容分发模式中的 一个包括对于所述内容内容分发模式的每一个,计算表示经由所述内容分发模式向所述至少一 个内容目的节点提供所述内容项目的使用的使用值;以及根据对所述内容分发模式计算的使用值,选择所述内容分发模式。
3.如权利要求2所述的方法,还包括选择具有最大所计算的使用值的内容分发模式。
4.如权利要求1所述的方法,其中,选择用于所述内容项目的所述内容分发模式中的 一个包括对于所述网段的每个内容目的节点,计算表示向所述内容目的节点提供所述内容项目 的使用的使用值;计算具有满足使用阈值的使用值的内容目的节点的数量;以及根据具有满足使用阈值的使用值的内容目的节点的数量,选择所述内容分发模式。
5.如权利要求1所述的方法,其中,选择用于所述内容项目的所述内容分发模式中的 一个包括对于所述网段的每个内容目的节点,计算表示向所述内容目的节点提供所述内容项目 的使用的使用值;计算具有满足使用阈值的使用值的内容目的节点的数量;以及根据至少一个使用值和具有满足使用阈值的使用值的内容目的节点的数量,选择所述 内容分发模式。
6.如权利要求1所述的方法,其中,使用所述内容使用预测信息选择用于所述内容项 目的多个内容分发模式中的一个包括对于所述内容项目,计算表示向所述网段提供所述内容项目的使用的使用值。
7.如权利要求6所述的方法,其中,所述内容项目的使用值使用与每个内容目的节点 相关联的概率值进行计算,其中与内容目的节点相关联的概率值是所述内容项目将被所述 内容目的节点使用的概率。
8.如权利要求7所述的方法,其中,所述内容项目的使用值使用与每个内容目的节点 相关联的存储器因素进行修正,其中与内容目的节点相关联的存储器因素表示只有来自内 容分发服务器的所述内容项目对所述内容目的节点可用而来自本地存储器的所述内容项 目不可用的概率。
9.如权利要求7所述的方法,其中,所述内容项目的使用值使用与每个内容项目和内 容目的节点相关联的临界值因素进行修正,其中,与内容项目和内容目的节点相关联的临界值因素表示客户所支付的价格和将所述内容项目传送到所述内容目的节点的成本。
10.如权利要求1所述的方法,其中,所述内容项目的内容使用预测信息包括表示所述 内容项目的使用概率的使用值,其中所述内容项目的使用概率是时间的函数。
11.如权利要求1所述的方法,其中,所述内容使用预测信息从至少一个内容预测节点 接收。
12.如权利要求11所述的方法,其中,所述至少一个内容预测节点包括至少一个基于 网络的节点和至少一个终端用户终端中的至少一个。
13.如权利要求1所述的方法,其中,所述内容使用预测信息根据来自终端用户的对所 述内容项目的请求和由代表终端用户运行的程序生成的所述内容项目将是有用的预测中 的至少一个生成。
14.如权利要求1所述的方法,其中,所述内容分发模式使用所述内容使用预测信息和 附加信息选择。
15.如权利要求14所述的方法,其中,所述附加信息包括下列信息中的至少一个网络 拓扑信息、基于网络的缓存节点的缓存能力、终端用户终端的存储能力、表示已存储在基于 网络的缓存节点处的内容项目的信息、以及表示已存储在终端用户终端处的内容项目的信 肩、ο
16.如权利要求1所述的方法,其中,所述至少一个内容目的节点包括终端用户终端和 基于网络的缓存节点中的至少一个。
17.如权利要求1所述的方法,其中,所述内容分发模式包括广播模式、交换式广播模 式、多播模式和单播模式中的一个。
18. 一种用于向包括至少一个内容目的节点的网段提供内容的装置,包括用于接收内容项目的内容使用预测信息的装置,其中所述内容使用预测信息与所述至 少一个内容目的节点相关联,并且所述内容使用预测信息表示所述内容项目对于所述至少 一个内容目的节点的使用级别;用于使用所述内容使用预测信息选择用于所述内容项目的多个内容分发模式中的一 个的装置;以及用于使用所选择的内容分发模式向所述至少一个内容目的节点传播所述内容项目的直ο
19. 一种用于传送内容的方法,包括从多个内容预测节点接收多个内容项目的每一个的内容使用预测信息,其中每个内容 项目的内容使用预测信息表示所述内容项目的使用级别;对于所述内容项目的每一个,使用与所述内容项目相关联的内容使用预测信息选择用 于所述内容项目的内容分发模式;以及使用为所述内容项目选择的各自的内容分发模式向至少一个内容目的节点传播所述 内容项目的每一个。
20.如权利要求19所述的方法,还包括对于所述内容项目的每一个,选择所述内容项目使用所选择的内容分发模式传播的传 播时间。
21.如权利要求20所述的方法,其中,选择所述内容项目的各自的传播时间包括下列的至少一个区分所述内容项目彼此间的优先次序; 排列所述内容项目彼此间的顺序;以及 相对可用的时间间隙调度所述内容项目。
22.如权利要求20所述的方法,其中,所述内容项目的各自的传播时间使用为所述内 容项目选择的各自的内容分发模式选择。
23.如权利要求20所述的方法,其中,所述内容项目的各自的传播时间使用下列的至 少一个选择网络状态信息、所述内容项目变得可用的各自的时间、所述内容项目保持可用 的各自的时间、有关所述内容项目的传送的终端用户期望、所述内容项目的各自的值、以及 传送所述内容项目的各自的成本。
24.如权利要求20所述的方法,其中,所述内容项目使用为所述内容项目选择的各自 的传播时间向所述内容目的节点传播。
25.一种用于传送内容的装置,包括用于从多个内容预测节点接收多个内容项目的每一个的内容使用预测信息的装置,其 中每个内容项目的内容使用预测信息表示所述内容项目的使用级别;用于对于所述内容项目的每一个,使用与所述内容项目相关联的内容使用预测信息选 择用于所述内容项目的内容分发模式的装置;以及用于使用为所述内容项目选择的各自的内容分发模式向至少一个内容目的节点传播 所述内容项目的每一个的装置。
全文摘要
本发明包括用于向一个或多个内容目的节点传送内容的方法和装置。一种方法包括接收内容项目的内容使用预测信息;使用内容使用预测信息选择用于内容项目的内容分发模式;以及使用所选择的内容分发模式以及可选地用所定义的优先级、顺序或调度表向至少一个内容目的节点传播内容项目。内容使用预测信息与内容目的节点相关联,并表示内容项目对于内容目的节点的使用级别。内容分发模式可包括任何内容分发模式,诸如广播、交换式广播、多播、单播等。内容使用预测信息从一个或多个内容预测节点接收。内容被分发到一个或多个内容目的节点,其可包括终端用户终端和/或基于网络的缓存节点。
文档编号H04L29/06GK101911687SQ200880123239
公开日2010年12月8日 申请日期2008年12月22日 优先权日2007年12月31日
发明者J·塞格尔 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1