一种获取媒体内容的方法、设备及系统的制作方法

文档序号:7896523阅读:214来源:国知局
专利名称:一种获取媒体内容的方法、设备及系统的制作方法
技术领域
本发明涉及通信领域,特别涉及一种获取媒体内容的方法、设备及系统。
背景技术
CDN(Content Delivery Network,内容分发网络)是在现有的 IPdnternetProtocol,网际协议)传输网络中增加一层新的网络架构,在⑶N中能够将网 站提供的媒体内容发布到最接近用户的网络“边缘”,用户可以从CDN中就近获取所需要的 媒体内容。如图1所示的⑶N网络架构,⑶N包括中心存储服务器、边缘服务器、区域缓存节 点和CDN路由服务器。其中,业务提供商将媒体内容发布在中心存储服务器中,CDN中的边 缘服务器和区域缓存节点存储中心存储服务器中的媒体内容,CDN路由服务器存储中心存 储服务器和区域缓存节点的地址信息以及CDN拓扑结构。终端可以向边缘服务器请求媒体 内容,如果边缘服务器未缓存终端请求的媒体内容,则边缘服务器从CDN路由服务器中获 取存储终端请求的媒体内容的存储服务器的地址信息,存储服务器可以为中心存储服务器 或就近边缘服务器的区域缓存节点,并利用获取媒体内容的方法从获取的地址信息对应的 存储服务器中获取终端请求的媒体内容,然后再将获取的媒体内容返回给终端。现有技术提供一种获取媒体内容的方法,具体为边缘服务器通过自身与存储服 务器之间的一条连接,发送媒体内容请求给存储服务器,存储服务器接收到媒体内容请求 后,将该媒体内容请求所请求的媒体内容通过该条连接发送给边缘服务器,边缘服务器接 收该媒体内容。其中,需要说明的是每个终端都可以向边缘服务器请求各自需要的媒体内 容,所以边缘服务器可能通过同一条连接发送多个媒体内容请求给同一个存储服务器,但 是存储服务器发送和接收之间需要严格保序,即存储服务器必须按照接收到媒体内容请求 的顺序发送获取到的媒体内容,如此边缘服务器根据接收到媒体内容的顺序确定相对应的 媒体内容请求,才能将获取到的媒体内容转发给相应的终端。在实现本发明的过程中,发明人发现现有技术至少存在以下问题由于存储服务器的发送和接收之间需要严格保序,如果前一个媒体内容请求的数 据没有响应后续请求也不会有响应,而实际应用中存储服务器侧对于每个媒体内容请求获 取到数据的顺序和请求到达的顺序并不完全一致,因此即使先获取到了数据也必须要等待 在它之前请求的数据发送完毕后才能发送。而如果当前的连接出现拥塞,在该连接上的所 有业务都会受到影响。

发明内容
为了减少CDN网络中传输数据的时延并保障数据正常发送,本发明提供了一种获 取媒体内容的方法、设备及系统。所述技术方案如下一种获取媒体内容的方法,所述方法包括媒体内容请求实体发送媒体内容请求到存储服务器,所述媒体内容请求携带内容标识和流索引,所述流索引用于标识所述媒体内容请求实体当前发起的媒体内容请求;所述媒体内容请求实体接收来自存储服务器的响应消息,所述响应消息携带所述 流索引以及所述存储服务器获取的媒体内容;所述媒体内容请求实体根据所述响应消息携带的流索引,确定所述响应消息对应 的媒体内容请求;所述媒体内容请求实体根据所确定的媒体内容请求,将所述响应消息携带的媒体 内容发送给对应的终端。一种媒体内容请求实体,所述媒体内容请求实体包括第一发送模块,用于发送媒体内容请求到存储服务器,所述媒体内容请求携带内 容标识和流索引,所述流索引用于标识媒体内容请求实体当前发起的媒体内容请求;接收模块,用于接收来自存储服务器的响应消息,所述响应消息携带所述流索引 以及所述存储服务器获取的媒体内容;确定模块,用于根据所述响应消息携带的流索引,确定所述响应消息对应的媒体 内容请求;第二发送模块,用于根据所述确定的媒体内容请求,将所述响应消息携带的媒体 内容发送给对应的终端。一种存储服务器,所述存储服务器包括第三接收模块,用于接收媒体内容请求实体发送的媒体内容请求,所述媒体内容 请求携带内容标识和流索引;添加模块,用于获取所述内容标识对应的媒体内容,将所述媒体内容和所述流索 引添加到响应消息中; 第三发送模块,用于发送所述响应消息。一种获取媒体内容的系统,所述系统包括媒体内容请求实体和存储服务器;所述媒体内容请求实体的设备,用于发送媒体内容请求到所述存储服务器,所述 媒体内容请求携带内容标识和流索引,所述流索引用于标识所述媒体内容请求实体当前发 起的媒体内容请求;接收来自所述存储服务器的响应消息,所述响应消息携带所述流索引 以及所述存储服务器获取的媒体内容;根据所述响应消息携带的流索引,确定所述响应消 息对应的媒体内容请求;根据所述确定的媒体内容请求,将所述响应消息携带的媒体内容 发送给对应的终端;所述存储服务器,用于接收媒体内容请求,获取所述内容标识对应的媒体内容,发 送携带所述流索引以及所获取的媒体内容的所述响应消息。通过扩展流索引来关联请求消息与响应消息,如此,存储服务器不需要在同一个 连接上按接收媒体内容请求的顺序发送响应消息,而是当获取到每个媒体内容请求对应的 媒体内容时就可以灵活发送响应消息,从而减少传输数据的时延。


图1是现有技术提供的⑶N网络架构示意图;图2是本发明实施例1提供的一种获取媒体内容的方法流程图;图3是本发明实施例2提供的一种获取媒体内容的方法流程图4是本发明实施例3提供的一种获取媒体内容的方法流程5是本发明实施例4提供的一种获取媒体内容的方法流程6是本发明实施例5提供的一种媒体内容请求实体的示意7是本发明实施例6提供的一种存储服务器的示意图;图8是本发明实施例7提供的一种获取媒体内容的系统示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。本发明实施例边缘服务器向区域缓存节点或者中心存储服务器请求媒体内容时 在请求消息中扩展增加流索引,该流索引用来标识边缘服务器当前发起的媒体内容请求, 可以包含该媒体内容请求所请求的内容信息、范围信息等,取值相同的流索引表示边缘服 务器针对同一终端用户同一时刻发起的访问请求所发起的媒体内容请求。区域缓存节点获 取到边缘服务器所请求的媒体内容数据后,在返回给边缘服务器的响应消息中同样增加流 索引指示,其取值与请求消息中的一致,边缘服务器根据接收到的响应消息中的流索引关 联出相应的媒体内容请求消息,从而将媒体内容数据发送到相应的终端。实施例1如图2所示,本发明实施例提供了一种获取媒体内容的方法,包括步骤101 媒体内容请求实体向中心存储器或者区域缓存节点发送媒体内容请 求,该媒体内容请求携带内容标识和流索引;流索引X-Flow4ndex= 〃 X-Flow-Index“ “ “ 1*DIGIT含义取值相同的流索引表示媒体内容请求实体针对同一终端同一时刻发出的访 问请求所发起的媒体内容请求。本发明实施例中,将边缘服务器和区域缓存节点等需要向上层节点请求媒体内容 的网元统称为媒体内容请求实体。步骤102 媒体内容请求实体接收响应消息,该响应消息携带中心存储服务器或 区域缓存节点所获取到的媒体内容,同时,该响应消息中还携带流索引;本发明实施例中,将区域缓存节点和中心存储服务器等可以提供媒体内容的网元 统称为存储服务器,其中区域缓存节点即可以作为存储服务器提供媒体内容,当其未缓存 相关媒体内容时,也可以作为媒体内容请求实体。步骤103 根据该响应消息携带的流索引,确定该响应消息相对应的媒体内容请 求;步骤104 媒体内容请求实体根据确定的媒体内容请求,将该响应消息携带的媒 体内容发送给对应的终端。在本发明实施例中,通过扩展流索引来关联请求消息与响应消息,如此,存储服务 器不需要在同一个连接上按接收媒体内容请求的顺序发送响应消息,而是当获取到每个媒 体内容请求对应的媒体内容时就可以灵活选择相同或者不同的连接发送响应消息,从而减 少传输数据的时延,且即使某条连接发生拥塞或故障,可以选择其他的连接发送响应消息, 提升了每个连接上的复用、并发效率,从而整体上提升数据传输的效率。
实施例2本发明实施例提供了 一种获取媒体内容的方法。终端向边缘服务器请求媒体内容 时,如果边缘服务器中未缓存终端请求的媒体内容,则边缘服务器利用本实施例提供的方 法从就近自身的区域缓存节点中获取终端请求的媒体内容。参见图3,该方法包括步骤201 终端向边缘服务器发起访问请求;其中,当终端需要请求某个媒体内容时,终端发送访问请求给边缘服务器,该访问 请求携带自身请求的媒体内容的内容ID ;边缘服务器接收终端发送的访问请求,根据访问 请求携带的内容ID,查找内容ID与媒体内容的对应关系中是否存在对应的媒体内容,如果 不存在,则边缘服务器中未缓存终端访问请求的媒体内容,执行步骤202,如果存在,则直接 返回给终端,操作结束。其中,在边缘服务器中缓存有内容ID(IDentity,标识)与媒体内容的对应关系。步骤202 边缘服务器获取就近自身的区域缓存节点的地址信息;具体地,边缘服务器发送通知给CDN路由服务器,CDN路由服务器根据自身存储的 CDN拓扑结构确定就近边缘服务器的区域缓存节点,再将该区域缓存节点的地址信息发送 给边缘服务器,边缘服务器接收该区域缓存节点的地址信息。步骤203 边缘服务器根据区域缓存节点的地址信息,选择自身与对应的区域缓 存节点之间的连接,通过选择的连接发送媒体内容请求给对应的区域缓存节点,其中,该媒 体内容请求携带业务的标识和流索引;具体地,边缘服务器分配流索引,如果边缘服务器与该区域缓存节点之间存在多 条连接,则边缘服务器选择一条连接,如果边缘服务器与该区域缓存节点之间存在一条连 接,则边缘服务器直接选择该条连接,然后利用选择的连接发送媒体内容请求给该区域缓 存节点;如果边缘服务器与该区域缓存节点之间不存在连接,则边缘服务器建立连接,并利 用建立的连接发送媒体内容请求给该区域缓存节点。进一步地,预先设置边缘服务器与区域缓存节点之间的连接数目为至少两条,如 果边缘服务器检查到自身与区域缓存节点之间的连接数少于预设数目条,则边缘服务器建 立新连接,使边缘服务器与区域缓存节点之间的连接数目达到预设的数目条。如此,当边缘 服务器选择的连接发生拥塞或故障时,边缘服务器可以再选择其他的连接来发送媒体内容 请求。其中,在本实施例中,连接可以为TCP (Transmission Control Protocol,传输控制协 议)连接。其中,网络中的每个终端都可以向边缘服务器发送访问请求,请求需要获取的媒 体内容,所以边缘服务器可能将多个媒体内容请求发送给区域缓存节点,还可以通过同一 个连接将多个媒体内容请求发送给区域缓存节点。进一步地,边缘服务器还可以先在媒体内容请求中添加优先级,然后发送媒体内 容请求给区域缓存节点。步骤204:区域缓存节点接收媒体内容请求,其中,该媒体内容请求携带内容ID和 流索引;步骤205 区域缓存节点根据该内容ID,获取对应的媒体内容,将获取的媒体内容 和媒体内容请求携带的流索引添加在响应消息中;具体地,区域缓存节点根据该内容ID,查找自身存储的内容ID与媒体内容的对应关系,如果查找出对应的媒体内容,则将查找的媒体内容和该媒体内容请求携带的流索引 添加到响应消息中。进一步地,区域缓存节点还可以将获取的媒体内容划分成多个数据块,以chunk 的方式传输多个数据块,其中,多个数据块采用多个响应消息承载,每个响应消息都携带媒 体内容请求所携带的相同的流索引。CDN网络支持直播时移业务,终端用户在观看直播的过程中暂停或者后退从而进 入时移状态,在时移状态用户可以获得像观看普通的点播业务一样的业务体验。为了支持 时移业务,需要上层区域缓存节点或者中心存储服务器对直播节目的内容进行实时录制, 这样边缘服务器从区域缓存节点或者中心存储服务器请求时移内容时,区域缓存节点或者 中心存储服务器并没有完整的文件,本发明实施例采用chunked部分传输的方式传输相关 的媒体内容到边缘服务器服务,即获取到部分媒体内容数据后就开始传输。如果相应的业 务是直播时移业务,区域缓存节点采用chunk的方式传输已获取到的媒体内容,后续获取 到的媒体内容也将采用chunk的方式传输,并在每一个数据块中都携带媒体内容请求所携 带的相同的流索引。其中,区域缓存节点中也可能未缓存该内容ID对应的媒体内容,如果区域缓存节 点没有查找到该媒体内容,则区域缓存节点可以将媒体内容请求转发给就近自身的上层区 域缓存节点或存储该媒体内容的中心存储服务器,并从上层区域缓存节点或中心存储服务 器中获取该媒体内容。步骤206 区域缓存节点通过自身与边缘服务器之间的连接,将上述的响应消息 发送给边缘服务器;具体地,如果边缘服务器与该区域缓存节点之间存在多条连接,区域缓存节点计 算自身与边缘服务器之间的每个连接的发送时延,选择发送时延最小的连接发送响应消息 给边缘服务器。如果采用chunk的方式传输获取到的媒体内容,可以在多条连接上同时传递多个 数据块的响应消息。其中,区域缓存节点与边缘服务器之间的每条连接都有各自的发送队 列,每条连接只发送位于自身的发送队列中的数据。如果区域缓存节点需要在某条连接上 发送数据,则需要先将该数据缓存在该连接的发送队列中,然后再通过该条连接发送缓存 在发送队列中的数据。所以,区域缓存节点根据每条连接的带宽和每条连接的发送队列中未发送的数 据,计算每条连接的发送时延,选择发送时延最小的连接,通过发送时延最小的连接将响应 消息发送给边缘服务器。进一步地,如果最小的发送时延大于建立新连接的往返时延,则区域缓存节点可 以建立新连接;其中,建立完新连接后,新连接的发送时延最小,其值为零,相应地,区域缓存节点 通过建立的新连接发送响应消息给边缘服务器。进一步地,如果媒体内容请求携带优先级,区域缓存节点获取到媒体内容请求对 应的媒体内容后,根据优先级选择优先级高的媒体内容请求对应的响应消息发送。进一步地,如果区域缓存节点接收到多个媒体内容请求,当区域缓存节点获取到 每个媒体内容请求对应的响应消息时,可以将每个响应消息通过不同的连接发送给边缘服务器,而不需要从同一个连接上按接收媒体内容请求的顺序发送每个媒体内容请求对应的 响应消息,如此减少数据传输的时延、提高每条连接的复用与并发的效率。步骤207 边缘服务器接收响应消息,根据该响应消息携带的流索引关联该响应 消息对应的媒体内容请求;具体地,边缘服务器接收响应消息,将该响应消息携带的流索引分别与缓存的媒 体内容请求携带的流索引进行匹配,确定该响应消息对应的媒体内容请求。步骤208 边缘服务器根据该响应消息对应的媒体内容请求将该响应消息携带的 媒体内容发送给对应的终端。进一步地,边缘服务器还可以实时监测每个连接上的数据流量,然后根据每个连 接上的数据流量以及连接的数目计算出平均数据流量,将每条连接上的数据流量与平均数 据流量做除法运算得到每条连接的比值,删除比值小于预设阈值的连接。其中,比值小于预 设阈值的连接的网络传输状况较差,删除网络传输状况较差的连接,可以提高连接的复用 与并发的效率以及减少维护连接的数目。进一步地,边缘服务器如果监测到自身与区域缓存节点之间的每条连接在预设的 时间内都没有数据流量,则边缘服务器删除自身与该区域缓存节点之间的所有连接。进一步地,边缘服务器还可以从该响应消息中提取携带的媒体内容,从该媒体内 容请求中提取内容ID,将该提取的内容ID与提取的媒体内容缓存在自身的内容ID与媒体 内容的对应关系中。其中,如果区域缓存节点中也未缓存终端请求的媒体内容,则区域缓存节点将失 败码与媒体内容请求携带的流索引添加在响应消息中,然后再发送给边缘服务器;边缘服 务器接收该响应消息后,根据该响应消息中携带失败码,获知从区域缓存节点中没有获取 到该媒体内容,此时边缘服务器还可以从存储该媒体内容的中心存储服务器中获取该媒体 内容。在本发明实施例中,边缘服务器可以通过将响应消息携带的流索引与媒体内容请 求携带的流索引进行匹配,获知接收的响应消息对应的媒体内容请求,如此区域缓存节点 从一个连接中接收到媒体内容请求,在返回该媒体内容请求对应的响应消息时,可以不需 要从该连接返回响应消息,而是选择发送时延最小的连接将该响应消息返回给边缘服务 器,如此可以减少传输数据的时延;如果从一个连接上接收到多个媒体内容请求,区域缓存 节点不需要在该连接上按接收媒体内容请求的顺序发送每个媒体内容请求对应的响应消 息,从而进一步地减少了传输数据的时延。另外,属于同一个媒体内容请求的多个响应消息 的多个chunk block可以动态地在不同的TCP连接上并行传输,因此可以不受单条TCP连 接拥塞的影响,提高每条连接的复用与并发的效率。而且,边缘服务器还实时监测每个连接 上的数据流量,删除网络传输状况较差的连接,或者删除没有数据流量的连接,可以减少维 护连接的数目。实施例3本发明实施例提供了一种获取媒体内容的方法。边缘服务器接收终端发送的访问 请求,并查找出自身未缓存该访问请求请求的媒体内容,边缘服务器利用实施例2提供的 方法从就近自身的区域缓存节点中获取该媒体内容,如果没有获取到该媒体内容,则边缘 服务器利用本实施例提供的方法从存储该媒体内容的中心存储服务器中获取该媒体内容。参见图4,该方法包括步骤301 边缘服务器获取存放终端请求的媒体内容的中心存储服务器的地址信 息;具体地,边缘服务器根据终端请求的内容ID,从⑶N路由服务器存储的内容ID与 地址信息的对应关系中,查找出对应的地址信息,其中,查找的地址信息为存储该内容ID 对应的媒体内容的中心存储服务器的地址信息。其中,业务提供商事先将每个业务的媒体内容发布在中心存储服务器中,中心存 储服务器将自身上存储的每个内容ID以及自身的地址信息存储在CDN路由服务器的内容 ID与地址信息的对应关系中。步骤302 边缘服务器根据中心存储服务器的地址信息,获取自身与对应的中心 存储服务器之间的连接,通过获取的连接发送媒体内容请求给对应的中心存储服务器;其 中,该媒体内容请求携带内容ID和流索引;具体地,边缘服务器发送媒体内容请求的具体过程与实施例2的步骤203中边缘 服务器发送媒体内容请求的过程相同,在此再赘述。进一步地,预先设置边缘服务器与中心存储服务器之间的连接数目为至少两条, 如果边缘服务器检查到自身与中心存储服务器之间的连接数少于预设数目条,则边缘服务 器建立新连接,使边缘服务器与中心存储服务器之间的连接数目达到预设的数目条。如此, 当边缘服务器获取的连接发生拥塞或故障时,边缘服务器可以再获取其他的连接来发送媒 体内容请求。进一步地,边缘服务器还可以先在媒体内容请求中添加优先级,然后再发送媒体 内容请求给中心存储服务器。步骤303 中心存储服务器接收媒体内容请求,其中,该媒体内容请求携带内容ID 和流索引;步骤304 中心存储服务器根据该内容ID,获取对应的媒体内容,将获取的媒体内 容和接收的媒体内容请求携带的流索引添加在响应消息中;具体地,中心存储服务器根据该内容ID,从自身存储的内容ID与媒体内容的对应 关系中,查找出对应的媒体内容,将查找的媒体内容和接收的媒体内容请求携带的流索引 添加到响应消息中。进一步地,中心存储服务器还可以将获取的媒体内容划分成多个数据块,以chunk 的方式传输多个数据块,其中,多个数据块采用多个响应消息承载,每个响应消息都携带媒 体内容请求所携带的相同的流索引。如果相应的业务是直播时移业务,中心存储服务器采 用chunk的方式传输已获取到的媒体内容,后续获取到的媒体内容也将采用chunk的方式 传输,并在发送的每一个数据块中都携带媒体内容请求所携带的相同的流索引。步骤305 中心存储服务器通过自身与边缘服务器之间的连接,将该响应消息发 送给边缘服务器;具体地,中心存储服务器计算自身与边缘服务器之间的每个连接的发送时延,通 过发送时延最小的连接发送该响应消息给边缘服务器。如果采用chunk的方式传输获取到 的媒体内容,可以在多条连接上同时传递多个数据块的响应消息。进一步地,如果最小的发送时延大于建立新连接的往返时延,则中心存储服务器可以建立新连接;并通过建立的新连接发送响应消息给边缘服务器。进一步地,如果媒体内容请求携带优先级,中心存储服务器获取到媒体内容请求 对应的媒体内容后,根据优先级选择优先级高的媒体内容请求对应的响应消息发送。步骤306和307 分别与实施例2的步骤207和208相同,在此不再赘述。进一步地,边缘服务器还可以实时监测自身与中心存储服务器之间的每个连接上 的数据流量,计算每条连接上的数据流量与平均数据流量的比值,删除比值小于预设阈值 的连接。进一步地,边缘服务器如果监测到自身与中心存储服务器之间的每条连接在预设 的时间内都没有数据流量,则边缘服务器删除自身与中心存储服务器之间的所有连接。在本发明实施例中,边缘服务器可以通过将响应消息携带的流索引与媒体内容请 求携带的流索引进行匹配,获知接收的响应消息对应的媒体内容请求,如此中心存储服务 器从一个连接中接收到媒体内容请求,在返回该媒体内容请求对应的响应消息时,可以不 需要从该连接返回响应消息,而是选择发送时延最小的连接将该响应消息返回给边缘服务 器,如此可以减少传输数据的时延;如果从一个连接上接收到多个媒体内容请求,中心存储 服务器不需要在该连接上按接收媒体内容请求的顺序发送每个媒体内容请求对应的响应 消息,从而进一步地减少了传输数据的时延。另外,属于同一个媒体内容请求的多个响应消 息的多个Chunk block可以动态地在不同的连接上并行传输,因此可以不受单条连接拥塞 的影响,提高每条连接的复用与并发的效率。而且,边缘服务器还实时监测每个连接上的数 据流量,删除网络传输状况较差的连接,或者删除没有数据流量的连接,可以减少维护连接 的数目。实施例4本发明实施例提供了一种获取媒体内容的方法。区域缓存节点接收CDN网络中的 节点发送的媒体内容请求,该媒体内容请求携带内容ID和流索引,如果自身未缓存在该内 容ID对应的媒体内容时,则该区域缓存节点利用本实施例提供的方法从存储该媒体内容 的中心存储服务器中获取该媒体内容。参见图5,该方法包括步骤401 区域缓存节点接收节点发送的媒体内容请求,该媒体内容请求携带内 容ID和流索引,如果自身未缓存有该内容ID对应的媒体内容,执行步骤502 ;其中,CDN网络的节点可以为边缘服务器或其他的区域缓存节点。当区域缓存节 点接收到边缘服务器或其他区域缓节点发送的媒体内容请求时,根据该媒体内容请求携带 内容ID,查找缓存的内容ID与媒体内容的对应关系,如果没有查找出对应的媒体内容,则 判断出自身未缓存该内容ID对应的媒体内容,如果查找出对应的媒体内容,则将查找的媒 体内容和该媒体内容请求携带的流索引添加在响应消息中,并返回该响应消息给发送媒体 内容请求的节点。步骤402 区域缓存节点从该媒体内容请求中提取流索引,并为该媒体内容请求 分配流索引,将该媒体内容请求携带的流索引替换为分配的流索引,将提取的流索引和该 媒体内容请求存储在流索弓I与媒体内容请求的对应关系中;步骤403 区域缓存节点获取存放该内容ID对应的媒体内容的中心存储服务器的 地址信息;具体地,区域缓存节点根据该内容ID,从⑶N路由服务器存储的内容ID与地址信息的对应关系中,查找出对应的地址信息,其中,查找的地址信息包括中心存储服务器的地
址f曰息。步骤404:区域缓存节点根据中心存储服务器的地址信息,获取自身与对应的中 心存储服务器之间的连接,通过获取的连接发送媒体内容请求给对应的中心存储服务器;具体地,区域缓存节点发送媒体内容请求的过程与实施例3的步骤303中的边缘 服务器发送媒体内容请求的过程相同,在此不再赘述。步骤405 中心存储服务器接收媒体内容请求,其中,该媒体内容请求携带内容ID 和流索引;步骤406 中心存储服务器根据内容ID,获取对应的媒体内容,将获取的媒体内容 和接收的媒体内容请求携带的流索引添加在响应消息中;其中,本步骤与步骤304相同,在此不再详细说明。步骤407 中心存储服务器通过自身与区域缓存节点之间的连接,将该响应消息 发送给区域缓存节点;具体地,中心存储服务器计算自身与区域缓存节点之间的每条连接的发送时延, 通过发送时延最小的连接发送该响应消息给区域缓存节点。如果采用chunk的方式传输获 取到的媒体内容,可以在多条连接上同时传递多个数据块的响应消息。进一步地,如果最小的发送时延大于建立新连接的往返时延,则中心存储服务器 可以建立新连接;并通过建立的新连接发送响应消息给区域缓存节点。进一步地,如果媒体内容请求携带优先级,中心存储服务器获取到媒体内容请求 对应的媒体内容后,根据优先级选择优先级高的媒体内容请求对应的响应消息发送。步骤408 区域缓存节点接收响应消息,根据该响应消息携带的流索引关联出该 响应消息对应的媒体内容请求;具体地,区域缓存节点接收响应消息,将该响应消息携带的流索引分别与媒体内 容请求中携带的流索引进行匹配,匹配出相同的媒体内容请求,匹配出的媒体内容请求为 该响应消息对应的媒体内容请求。步骤409 区域缓存节点获取关联的媒体内容请求对应的流索引,将该响应消息 中的流索引替换为获取的流索引,将该响应消息转发给关联的媒体内容请求对应的节点。具体地,区域缓存节点根据该响应消息对应的媒体内容请求,从流索引与媒体内 容请求的对应关系中查找对应的流索引,将该响应消息携带的流索引替换为查找的流索 引,再根据该响应消息对应的媒体内容请求将该响应消息转发给对应的节点。进一步地,区域缓存节点从该响应消息中提取携带的媒体内容,从匹配出的媒体 内容请求中提取内容ID,将该提取的内容ID与提取的媒体内容缓存在自身的内容ID与媒 体内容的对应关系中。进一步地,区域缓存节点还可以实时监测自身与中心存储服务器之间的每个连接 上的数据流量,计算每条连接上的数据流量与平均数据流量的比值,删除比值小于预设阈 值的连接。进一步地,区域缓存节点如果监测到自身与中心存储服务器之间的每条连接在预 设的时间内都没有数据流量,则边缘服务器删除自身与中心存储服务器之间的所有连接。其中,区域缓存节点接收CDN网络中的节点发送的媒体内容请求,如果自身未缓存在该媒体内容请求所请求的媒体内容时,则该区域缓存节点也可以从就近于自身的上层 区域缓存节点中获取该媒体内容请求所请求的媒体内容。该区域缓存节点从就近于自身的 上层区域缓存节点中获取该媒体内容请求所请求的媒体内容的过程与本实施例提供的该 区域缓存节点从中心存储服务器中获取该媒体内容请求所请求的媒体内容的过程相同,在 此不再详细说明。在本发明实施例中,区域缓存节点可以通过将响应消息携带的流索引与媒体内容 请求携带的流索引进行匹配,获知接收的响应消息对应的媒体内容请求,如此中心存储服 务器从一个连接中接收到媒体内容请求,在返回该媒体内容请求对应的响应消息时,可以 不需要从该连接返回响应消息,而是选择发送时延最小的连接将该响应消息返回给区域缓 存节点,如此可以减少传输数据的时延;如果从一个连接上接收到多个媒体内容请求,中心 存储服务器不需要在该连接上按接收媒体内容请求的顺序发送每个媒体内容请求对应的 响应消息,从而进一步地减少了传输数据的时延。另外,属于同一个媒体内容请求的多个响 应消息的多个chunk block可以动态地在不同的连接上并行传输,因此可以不受单条连接 拥塞的影响,提高每条连接的复用与并发的效率。而且,区域缓存节点还实时监测每个连接 上的数据流量,删除网络传输状况较差的连接,或者删除没有数据流量的连接,可以减少维 护连接的数目。实施例5如图6所示,本发明实施例提供了一种媒体内容请求实体,包括第一发送模块501,用于发送媒体内容请求到存储服务器,该媒体内容请求携带内 容标识和流索引,流索引用于标识媒体内容请求实体当前发起的媒体内容请求;第一接收模块502,用于接收来自存储服务器的响应消息,该响应消息携带流索引 以及存储服务器获取的媒体内容;确定模块503,用于根据该响应消息携带的流索引,确定该响应消息对应的媒体内 容请求;第二发送模块504,用于根据确定的媒体内容请求,将该响应消息携带的媒体内容 发送给对应的终端。进一步地,该媒体内容请求实体还包括管理模块505,用于预先设置媒体内容请求实体与存储服务器之间的连接数目为 至少两条,在发送媒体内容请求之前,检查媒体内容请求实体与存储服务器之间的连接数 目是否达到预设数目,如果否,建立新连接,使得媒体内容请求实体与存储服务器之间的连 接数目达到预设数目。进一步地,该媒体内容请求实体还包括监测模块506,用于实体实时监测媒体内容请求实体与存储服务器之间的每条连 接上的数据流量,计算出平均数据流量,选择数据流量与平均数据流量的比值小于预设的 阈值的连接,删除选择的连接。进一步地,该媒体内容请求实体还包括第二接收模块507,用于接收来自终端的访问请求,该访问请求携带内容标识;相应地,第一发送模块501,具体用于判断是否缓存访问请求所请求的媒体内容,如果没有,则分配流索引,并发送媒体内容请求给存储服务器,且该媒体内容请求携带内容标识和 分配的流索引。在本发明实施例中,媒体内容请求实体根据媒体内容请求和响应消息中的流索引 获知接收的每个响应消息对应的媒体内容请求。如此,存储服务器不需要在同一个连接上 按接收媒体内容请求的顺序发送每个媒体内容请求对应的媒体内容,而是获取到每个媒体 内容请求对应的媒体内容时就可以灵活选择相同或者不同的连接发送媒体内容,从而减少 传输数据的时延,且即使某条连接发生拥塞或故障,可以选择其他的连接发送响应消息,保 障了数据正常传输,提升了每个连接上的复用、并发效率,从而整体上提升数据传输的效 率。实施例6如图7所示,本发明实施例提供了一种存储服务器,包括第三接收模块601,用于接收媒体内容请求实体发送的媒体内容请求,该媒体内容 请求携带内容标识和流索引;第三发送模块602,用于获取该内容标识对应的媒体内容,发送携带该流索引以及 获取的媒体内容的响应消息。其中,第三发送模块602,还用于确定媒体内容请求实体与存储服务器之间的最小 发送时延的连接,通过最小发送时延的连接向媒体内容请求实体发送该响应消息。其中,第三发送模块602,还用于如果最小发送时延大于建立新连接的往返时延, 建立新连接来发送该响应消息。其中,第三发送模块602,还用于将获取的媒体内容划分为多个数据块,向媒体内 容请求实体发送承载多个数据块的多个响应消息,该多个响应消息的每个携带该流索引。其中,第三发送模块602,还用于如果媒体内容请求所请求的是直播时移业务,则 以部分传输的方式,持续向媒体内容请求实体发送承载着已接收到的媒体内容的多个响应 消息,该多个响应消息的每个都携带该流索引。在本发明实施例中,存储服务器在响应消息中添加媒体内容请求携带的流索引, 从而使得媒体内容请求实体可以根据媒体内容请求和响应消息中携带的流索引获知自身 接收的每个响应消息对应的媒体内容请求。如此,存储服务器不需要在同一个连接上按接 收每个媒体内容请求的顺序发送每个媒体请求对应的响应消息,而是获取到每个媒体内容 请求对应的响应消息时就可以灵活选择相同或者不同的连接发送响应消息,从而减少传输 数据的时延,且即使某条连接发生拥塞或故障,可以通过其他的连接发送响应消息,保障了 数据正常传输,提升了每个连接上的复用、并发效率,从而整体上提升数据传输的效率。实施例7如图8所示,本发明实施例提供了一种获取媒体内容的系统,该系统包括媒体内 容请求实体701和存储服务器702 ;媒体内容请求实体701,用于发送媒体内容请求到存储服务器702,该媒体内容请 求携带内容标识和流索引,流索引用于标识媒体内容请求实体701当前发起的媒体内容请 求;收来自存储服务器702的响应消息,该响应消息携带流索引以及存储服务器702获取的 媒体内容;根据该响应消息携带的流索引,确定该响应消息对应的媒体内容请求;根据确 定的媒体内容请求,将该响应消息携带的媒体内容发送给对应的终端;
存储服务器702,用于接收媒体内容请求,获取内容标识对应的媒体内容,发送携 带该流索引以及获取的媒体内容的响应消息。在本发明实施例中,存储服务器在响应消息中添加媒体内容请求携带的流索引, 从而使得媒体内容请求实体可以根据媒体内容请求和响应消息中携带的流索引获知自身 接收的每个响应消息对应的媒体内容请求。如此,存储服务器不需要在同一个连接上按接 收每个媒体内容请求的顺序发送每个媒体请求对应的响应消息,而是获取到每个媒体内容 请求对应的响应消息时就可以灵活选择相同或者不同的连接发送响应消息,从而减少传输 数据的时延,且即使某条连接发生拥塞或故障,可以通过其他的连接发送响应消息,保障了 数据正常传输,提升了每个连接上的复用、并发效率,从而整体上提升数据传输的效率。以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件 程序存储在可读取的存储介质中,存储介质例如计算机中的硬盘、光盘或软盘。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和 原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种获取媒体内容的方法,其特征在于,所述方法包括媒体内容请求实体发送媒体内容请求到存储服务器,所述媒体内容请求携带内容标识 和流索引,所述流索引用于标识所述媒体内容请求实体当前发起的媒体内容请求;所述媒体内容请求实体接收来自存储服务器的响应消息,所述响应消息携带所述流索 引以及所述存储服务器获取的媒体内容;所述媒体内容请求实体根据所述响应消息携带的流索引,确定所述响应消息对应的媒 体内容请求;所述媒体内容请求实体根据所确定的媒体内容请求,将所述响应消息携带的媒体内容 发送给对应的终端。
2.如权利要求1的方法,其特征在于,预先设置媒体内容请求实体与存储服务器之间 的连接数目为至少两条;所述方法还包括所述媒体内容请求实体发送媒体内容请求之前,检查自身与存储服务器之间的连接数 目是否达到预设数目,如果否,所述媒体内容请求实体建立新连接,使得所述媒体内容请求 实体与存储服务器之间的连接数目达到预设数目。
3.如权利要求2的方法,其特征在于,所述存储服务器选择最小发送时延的连接,通过 所述最小发送时延的连接向所述媒体内容请求实体发送所述响应消息。
4.如权利要求3的方法,其特征在于,如果所述最小发送时延大于建立新连接的往返 时延,所述存储服务器建立新连接来发送所述响应消息。
5.如权利要求2的方法,其特征在于,所述存储服务器将获取的媒体内容划分为多个 数据块,通过所述至少两条连接向所述媒体内容请求实体发送承载多个数据块的多个响应 消息,所述多个响应消息的每个都携带所述流索引。
6.如权利要求1的方法,其特征在于,如果所述媒体内容请求所请求的是直播时移业 务,所述方法还包括所述存储服务器以部分传输的方式,持续向所述媒体内容请求实体发送承载着已接收 到的媒体内容的多个响应消息,所述多个响应消息的每个都携带所述流索引。
7.如权利要求1的方法,其特征在于,所述方法还包括所述媒体内容请求实体实时监测自身与所述存储服务器之间的每条连接上的数据流 量,计算出平均数据流量,选择数据流量与所述平均数据流量的比值小于预设的阈值的连 接,删除所述选择的连接。
8.如权利要求1所述的方法,其特征在于,所述媒体内容请求实体发送媒体内容请求 到存储服务器之前,还包括接收来自终端的访问请求,所述访问请求携带内容标识;相应地,所述媒体内容请求实体发送媒体内容请求到存储服务器,具体包括如果所述媒体内容请求实体判断是否缓存所述访问请求所请求的媒体内容,如果没 有,则分配流索引,并发送媒体内容请求给所述存储服务器,且所述媒体内容请求携带所述 内容标识和分配的流索引。
9.一种媒体内容请求实体,其特征在于,所述媒体内容请求实体包括第一发送模块,用于发送媒体内容请求到存储服务器,所述媒体内容请求携带内容标 识和流索引,所述流索引用于标识媒体内容请求实体当前发起的媒体内容请求;第一接收模块,用于接收来自存储服务器的响应消息,所述响应消息携带所述流索引 以及所述存储服务器获取的媒体内容;确定模块,用于根据所述响应消息携带的流索引,确定所述响应消息对应的媒体内容 请求;第二发送模块,用于根据所述确定的媒体内容请求,将所述响应消息携带的媒体内容 发送给对应的终端。
10.如权利要求9所述的媒体内容请求实体,其特征在于,所述媒体内容请求实体还包括管理模块,用于预先设置媒体内容请求实体与存储服务器之间的连接数目为至少两 条,在发送媒体内容请求之前,检查自身与存储服务器之间的连接数目是否达到预设数目, 如果否,建立新连接,使得所述媒体内容请求实体与存储服务器之间的连接数目达到预设 数目。
11.如权利要求9所述的媒体内容请求实体,其特征在于,所述媒体内容请求实体还包括监测模块,用于实体实时监测所述媒体内容请求实体与所述存储服务器之间的每条连 接上的数据流量,计算出平均数据流量,选择数据流量与所述平均数据流量的比值小于预 设的阈值的连接,删除所述选择的连接。
12.如权利要求9所述的媒体内容请求实体,其特征在于,所述媒体内容请求实体还包括第二接收模块,用于接收来自终端的访问请求,所述访问请求携带内容标识; 相应地,所述第一发送模块,具体用于判断是否缓存所述访问请求所请求的媒体内容,如果没 有,则分配流索引,并发送媒体内容请求给所述存储服务器,且所述媒体内容请求携带所述 内容标识和分配的流索引。
13.一种存储服务器,其特征在于,所述存储服务器包括第三接收模块,用于接收媒体内容请求实体发送的媒体内容请求,所述媒体内容请求 携带内容标识和流索引;第三发送模块,用于获取所述内容标识对应的媒体内容,发送携带所述流索引以及所 获取的媒体内容的响应消息。
14.如权利要求13所述的存储服务器,其特征在于,所述第三发送模块,还用于确定所述媒体内容请求实体与所述存储服务器之间的最小 发送时延的连接,通过所述最小发送时延的连接向所述媒体内容请求实体发送所述响应消 肩、ο
15.如权利要求14所述的存储服务器,其特征在于,所述第三发送模块,还用于如果所述最小发送时延大于建立新连接的往返时延,则建 立新连接来发送所述响应消息。
16.如权利要求13所述的存储服务器,其特征在于,所述第三发送模块,还用于将所述媒体内容划分为多个数据块,向所述媒体内容请求 实体发送承载多个数据块的多个响应消息,所述多个响应消息的每个都携带所述流索引。
17.如权利要求13所述的存储服务器,其特征在于,所述第三发送模块,还用于如果所述媒体内容请求所请求的是直播时移业务,则以部 分传输的方式,持续向所述媒体内容请求实体发送承载着已接收到的媒体内容的多个响应 消息,所述多个响应消息的每个都携带所述流索引。
18.一种获取媒体内容的系统,其特征在于,所述系统包括媒体内容请求实体和存储服 务器;所述媒体内容请求实体,用于发送媒体内容请求到所述存储服务器,所述媒体内容请 求携带内容标识和流索引,所述流索引用于标识所述媒体内容请求实体当前发起的媒体内 容请求;接收来自所述存储服务器的响应消息,所述响应消息携带所述流索引以及所述存 储服务器获取的媒体内容;根据所述响应消息携带的流索引,确定所述响应消息对应的媒 体内容请求;根据所述确定的媒体内容请求,将所述响应消息携带的媒体内容发送给对应 的终端;所述存储服务器,用于接收媒体内容请求,获取所述内容标识对应的媒体内容,发送携 带所述流索引以及所获取的媒体内容的响应消息。 全文摘要
本发明公开了一种获取媒体内容的方法、设备及系统,属于通信领域。所述方法包括媒体内容请求实体发送媒体内容请求到存储服务器,所述媒体内容请求携带内容标识和流索引,所述流索引用于标识所述媒体内容请求实体当前发起的媒体内容请求;所述媒体内容请求实体接收来自存储服务器的响应消息,所述响应消息携带所述流索引以及所述存储服务器获取的媒体内容;所述媒体内容请求实体根据所述响应消息携带的流索引,确定所述响应消息对应的媒体内容请求;所述媒体内容请求实体根据所确定的媒体内容请求,将所述响应消息携带的媒体内容发送给对应的终端。本发明减少传输数据的时延并保障数据正常传输。
文档编号H04L29/06GK102143150SQ20101060136
公开日2011年8月3日 申请日期2010年12月10日 优先权日2010年12月10日
发明者欧雄兵, 陈寒冰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1