CN101584190A - 用于将推模式和拉模式相结合的系统和方法 - Google Patents
用于将推模式和拉模式相结合的系统和方法 Download PDFInfo
- Publication number
- CN101584190A CN101584190A CNA200880002046XA CN200880002046A CN101584190A CN 101584190 A CN101584190 A CN 101584190A CN A200880002046X A CNA200880002046X A CN A200880002046XA CN 200880002046 A CN200880002046 A CN 200880002046A CN 101584190 A CN101584190 A CN 101584190A
- Authority
- CN
- China
- Prior art keywords
- content
- file
- fdt
- pull
- push
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1809—Selective-repeat protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Abstract
本发明涉及一种结合使用推模式和拉模式来下载内容的方法。在包括第一终端(1)、至少第二终端(2)、和内容服务器(5、8)的通信系统(10)中,本发明涉及一种用于下载内容的方法,该方法在第一终端级包括以下步骤:以拉模式从内容服务器或至少第二终端下载内容,或者以推模式从内容服务器下载内容;以及在模式之间进行无缝切换以继续下载内容。
Description
技术领域
本发明总体涉及内容下载,具体涉及推方法和拉方法的结合使用。
背景技术
本部分旨在向读者介绍可能与以下描述和/或要求的本发明的各方面有关的领域的各方面。相信该讨论有助于为读者提供背景信息,以便于更好地理解本发明的各方面。相应地,应当理解,需要就这方面来阅读这些陈述,而不是作为对现有技术的认可来阅读这些陈述。
在服务器与多个接收机之间对内容的分发需要建立服务器与每个接收机之间的点对点连接或建立多点连接。点对点连接允许以单播方式将内容分发给每个接收机并提供鲁棒分发;这在下文中被称作拉模式,并且客户端通常是主动发起者。然而,在采用大量接收机的情况下,需要对所有连接进行繁重的管理。还可能显著地提高网络上的业务量。多播分发以更低鲁棒性的分发提供了更小的网络负荷。这在下文中被称作推模式。
管理服务器的服务运营商无法精确预测接收机的行为。在推内容传递会话中,可以基于以下原因将接收机排除在完整的或部分的内容下载之外:在推分发期间关断接收机;当正在进行推分发时接通接收机;所有预留带宽不都可用于推分发,例如,STB用户正在观看一个节目同时录制另一个节目;接收机在推分发时缺少存储空间;接收机在推分发时使用整个CPU;网络无法处理多播业务量;等等。为了对带宽进行优化,运营商可能必须选择保持推会话或停止推会话。停止推会话允许运营商解放大量业务量的网络,并且丢失了内容的接收机可以使用恢复模式取回丢失的内容。在欧洲专利申请06291464.3中定义了一种恢复方法。另一方面,在拉模式下,运营商可能必须面对内容的最高需求。然后,运营商可以通过以推模式而不是使用拉模式对该内容进行多播,来更高效地对网络带宽和调配延迟的使用进行优化。
发明内容
本发明涉及一种用于在推模式与拉模式之间进行高效切换的方法。
为此,本发明涉及一种用于在通信系统中下载内容的方法,所述通信系统包括第一终端、至少第二终端、以及内容服务器。所述方法在第一终端级包括以下步骤:以拉模式从内容服务器或至少第二终端下载内容,或以推模式从内容服务器下载内容;以及在模式之间进行无缝切换以继续下载内容。
在上下文中,无缝是指终端连续地从一个模式切换至另一个模式而不必请求任何另外的信息。
根据实施例,所述方法包括以下步骤:以推模式下载内容;以及当在内容服务器处停止推模式时,以拉模式继续下载内容。
当运营商停止推会话时,终端在没有很多中断的情况下继续下载。终端在推会话期间得到了足够的信息以切换至拉下载模式并管理拉下载模式。
根据另一实施例,所述方法包括以下步骤:以拉模式下载内容;以及当在内容服务器处开始推模式时,以推模式继续下载内容。
根据实施例,所述方法包括以下步骤:根据FLUTE协议在会话传递中接收推内容;以及在会话传递期间接收文件传递表FDT中的信息,以允许切换至拉模式。
FDT包括对于无缝切换至拉模式而言必要的附加信息。当停止推模式时,终端不必取回任何另外的信息。终端已经接收到与FDT相关的信息以切换至拉模式。
根据实施例,所述方法包括以下步骤:检验FDT实例的完整性;向索引服务器指示是否已成功接收到FDT实例;以及向索引服务器指示是否已成功接收到与FDT实例相关联的文件。
根据实施例,所述方法在检测到遭到破坏的FDT实例时包括以下步骤:等待文件传递结束;以及以拉模式执行FDT实例修复。
根据实施例,所述方法在检测到遭到破坏的完整FDT时包括以下步骤:等待会话传递结束;以及以拉模式执行完整FDT修复。
根据实施例,所述方法包括以下步骤:根据对等协议接收拉内容;以及接收包括允许切换至推模式的信息的对等元信息文件。
本发明还涉及一种终端,包括:用于以推模式下载内容的装置;用于以拉模式下载内容的装置;以及用于从一个模式无缝切换至另一模式的装置。
本发明的另一个目的是一种包括程序代码指令的计算机程序产品,当在计算机上执行程序时,所述程序代码指令执行根据本发明的过程的步骤。“计算机程序产品”是指计算机程序承载物,其不仅可以存在于包含程序的存储空间(如磁盘或盒式磁带)中,也可以存在于信号(如电信号或光信号)中。
以下阐述了在范围上与所公开的实施例相当的特定方面。应当理解,提供这些方面仅仅是为了为用户提供本发明可能采用的特定形式的简要概括,这些方面不旨在限制本发明的范围。事实上,本发明可以包括以下可能没有阐述的多个方面。
附图说明
参照附图,通过以下非限制性的实施例和执行示例,将更好地理解和示出本发明,附图中:
-图1是依照实施例的系统的框图;
-图2示出了根据实施例的终端;
-图3是示出了推模式的流程图;以及
-图4是示出了推模式和拉模式的结合的流程图。
具体实施方式
在图1和2中,所示的方框仅是功能性实体,不必与物理上分离的实体相对应。也就是说,可以采用软件的形式来开发这些功能性实体,或者以一个或多个集成电路来实现这些功能性实体。
图1示出了根据实施例的、用于分发内容的通信系统10的架构。终端1、2、3包括客户端应用程序。具体地,这些终端包括机顶盒(STB)的功能。在下列实施例中,终端是STB,而实施例不限于这样的终端。这样的终端可应用于包括用于从内容服务器下载数据的客户端应用程序的设备。
终端还包括:用于以推模式下载内容的装置;以及用于以拉模式下载内容的装置。如下所述,终端执行推功能和拉功能。
系统包括推内容服务器5和拉内容服务器8。拉内容服务器适于以拉模式分发内容。拉内容服务器包括:用于与多个客户端建立点对点连接的装置。推内容服务器适于以推模式分发内容。当然,这些服务器可以被包括在相同的设备中。
索引服务器6的作用是使对等端STB彼此相关,以完成内容的修复或取回。索引服务器的作用是使需要恢复文件或部分文件的对等端与能够提供丢失信息的对等端相关。索引服务器不存储任何内容文件,索引服务器充当集中式索引以存储与文件的位置有关的信息。拉协议需要保持每个STB向索引服务器通知内容的下载状态。根据实施例,系统包括仅一个索引服务器。网络可以具有多个索引服务器,以对例如每个地理区域或每个内容类型的访问进行优化。在推模式环境下以及在拉模式环境下使用相同的索引服务器。
如在“ETSI TS 102 034 V1.2.1(2006-09)数字视频广播(DVB)、在基于IP的网络上对基于MPEG-2的DVB服务的传输”标准中指示的,服务发现服务器7(下文中记为SD&S)适于执行服务发现和选择机制。
根据实施例,在推模式环境下以及在拉模式环境下使用相同的SD&S服务器。
图2示出了根据实施例的终端的构件块。终端包括存储装置1.1、通信装置1.2、处理装置1.3以及内部总线1.4。存储装置用于存储允许终端以推模式或拉模式下载文件的程序。因此,终端包括推下载装置1.6和拉下载装置1.5。终端包括用于从一个模式切换1.7至另一个模式的装置。
现在描述拉方法。拉方法基于对等策略,记为P2P。
为了实施拉方法,终端首先执行索引服务器地址发现阶段。STB通过浏览可用于下载的内容的目录来查找用于下载的内容。使用以下内容来查找目录的地址:如在ETSI TS 102 034 V1.2.1(2006-09)中以及在ETSI TS 102 539 V1.1.1数字视频广播(DVB)中详细说明的、DVB-IP的宽带内容指南记录;基于互联网协议(IP)对宽带内容指南(BCG)信息的运送;以上内容在DVB-IP的上下文中描述了内容指南的传输和信号通知。终端在目录中查找索引服务器的地址。当然,可以利用其他手段来查找索引服务器的地址,其他手段例如:用于提供通过DVB-IP/SD&S信号通知而传递的记录的内容下载。
为了改进下载大内容的能力,内容的每个文件被分割成更小的块。对等端从而能够接收和检验内容块,并在完整地或部分地接收内容之前交换这些块。通过每个块计算散列码。将如表1所示的元信息作为文件存储在内容服务器中。元信息包括对于以对等方式执行文件交换而言必要的所有信息。散列操作可以由内容服务器来完成。
以下表格示出了根据实施例的内容元信息。在FLUTE协议中定义了TSI和TOI字段;它们是可选的。它们在这里用于支持拉模式与推模式之间的无缝切换。Content-Block-Length、Content-Block-Digests、File-Name、File-Length、File-Digest、File-Block-Length以及File-Block-Digests字段是对于P2P协议而言必要的最小源信息。
名称 | 描述 |
Multi-Files-Attributes | 与多文件有关的属性 |
Meta-information-length | 元信息文件的大小 |
Content-Type | 文件内容类型 |
Content-Encoding | 压缩 |
Client-Id | 根据客户端标识符(HW、SW、简档等等)来定位文件下载 |
Content-Block-Length | 块的大小 |
Content-Block-Digests(每块一个) | 块的散列(SHA1……) |
File-Attributes(每文件一个) | 与文件自身有关的属性 |
File-Type | 文件的MIME媒体类型 |
File-Encoding | 压缩 |
Client-Id | 根据客户端标识符(HW、SW、简档等等)来定位文件下载 |
TSI | 传输会话标识符。针对给定的IP源地址唯一地标识FLUTE会话 |
TOI | 传输对象标识符 |
File-Name | 要下载的文件的标识和位置,例如URl |
File-Length | 文件的大小 |
File-Digest | 文件的散列(例如,SHA1……) |
File-Block-Length | 块的大小 |
File-Block-Digests(每块一个) | 块的散列(SHA1……) |
Meta-Info-Digest | |
Meta-Info-Digest | 元信息的散列(例如,MD5、SHA1……) |
表1
Meta-Info-Digest字段可以用于传送RSA签名,以允许对元信息文件进行认证。
那么,如图3所示,文件下载的方法如下:
在步骤S1,STB1向索引服务器发送针对所选内容的请求。
在步骤S2,索引服务器以能够提供内容元信息的对等端STB2的地址对STB作出响应。当然,索引服务器可能提供多个对等端的地址。
在步骤S3,STB1发起与所指示的对等端的连接。STB1在步骤S4取回元信息文件,在步骤S5检验元信息文件的完整性,在步骤S6存储该文件并将元信息接收通知给索引服务器。STB1在存储器中保存该文件,直到与该文件相关联的内容被删除为止。
利用该元信息文件,STB可以向其他对等端请求任何字节范围的块,并检验接收到的数据的完整性。在STB已接收到元信息文件之后,STB可以下载一个或多个文件或者一个或多个文件的块。
在步骤7,STB向索引服务器请求一个块。当然,STB可以同时请求多个块。STB发送块编号和文件标识符(这可以是文件名);当同时下载多个文件时,文件ID是必要的。
在步骤8,索引服务器返回能够提供内容块的对等端的地址。
STB在步骤9发起与所指示的对等端的连接,在步骤10取回内容块,并在步骤11检验内容块的完整性。
在步骤S12,STB向索引服务器以成功或失败指示块下载的状态。
客户端可以向索引服务器发送针对其他块的请求,直到客户端下载了完整内容为止。
使用在索引服务器从STB接收到的报告中给出的信息,该索引服务器连续更新其数据库。在任何给定时刻,索引服务器可以使需要数据恢复的STB与能够提供丢失信息的对等端STB相关。
由于有TSI和TOI字段,终端可以无缝切换至推模式以下载文件。
在图3中,提供内容块的对等端与提供内容元信息的对等端相同。当然,其也可以是另一个对等端。
此外,索引服务器可以返回能提供内容块的多于一个对等端的地址。STB然后可能连接至多于一个对等端。
索引服务器可能具有以下信息:任何对等端STB都无法提供所请求的内容或元信息文件。
在这种情况下,索引服务器可以提供能直接传递内容的内容服务器的地址。为了避免使内容服务器充满针对内容的请求,索引服务器可以仅对一组对等端STB提供服务。索引服务器使其他STB中断,并稍后向它们指示已成功下载了内容的这组对等端STB的地址。
备选地,索引服务器可以向另一索引服务器或向“超级”索引服务器提出请求。如果索引服务器找到所请求的信息,则索引服务器可以将该信息存储在其数据库中并向STB作出肯定应答。
索引服务器可以针对相同的内容提供多个地址。内容可以分散在多个对等端STB上,即,没有对等端STB具有整个内容,但总内容可以由驻留于对等端STB上的部分内容构造而成。索引服务器还可以指示能完整地或部分地提供所请求的内容的备选对等端STB,以使STB在其发现下载速度过低或者该对等端被证明不可用的情况下,有机会从另一对等端取回内容。
另一方面,可以向索引服务器提供算法,该算法允许例如基于从对等端进行的成功下载的数目上的统计来进行智能的对等端选择。
现在描述推分发的方法。如在RFC 3926中详细说明的,推分发基于单向传输文件传递协议,记为FLUTE。推分发包括使用下述对等机制的恢复机制。
FLUTE协议定义了多播对象传送以及关联的描述符表。FLUTE协议定义了文件传递表(记为FDT),该文件传递表包含必须在当前会话中传送的文件的信息。FLUTE协议以多播模式从内容服务器向所有STB传送FDT。FLUTE定义了多个传送模式,例如,一个完整FDT后紧跟多个文件,或FDT实例系列(中间FDT)后紧跟它们的关联文件。后一种传送模式尤其适于大视频文件的传送,其使接收机能够检验是否在会话达到结束之前已正确接收到对象或文件。而前一种传送模式在传送小文件的情况下是相当方便的。根据相同会话的所有FDT实例来构建完整的FDT。
根据实施例,如在以下表2所示,FLUTE FDT包括特定的对等元信息(包括块长度和块散列)。然后可以在内容下载期间从一个协议无缝切换至另一个协议。事实上,在FLUTE多播推会话结束时尚未完整地或完全下载内容的接收机可以无缝切换至对等拉模式,并根据FDT中的信息来下载丢失的块,其中,FDT中的信息使这些接收机精确获知内容的丢失的块。类似地,已开始通过对等拉模式下载内容的接收机可以使用FDT来无缝切换至推模式,其中,FDT向接收机给出了对于在推模式下恢复丢失的文件块而言必要的信息。
以下表格示出了FLUTE文件传递表,包括根据实施例的P2P元信息。
元素/属性名称 | 元素/属性描述 |
FDT-Instance-Attributes | FDT实例所描述的所有文件的公共属性 |
Expiration-Time | FDT实例截止时间 |
Send-Complete | 描述FDT实例是否完整(例如,描述要在会话中传递的所有文件) |
Multi-Files-Delivery-Attributes | 与多文件的传递有关的属性 |
FEC-OTI-FEC-Encoding-ID | FEC算法的标识 |
FEC-OTI-FEC-Instance-ID | 依赖于FEC算法标识的FEC实例 |
FEC-OTI-Maximum-Source-Block-Length | 每个源块的源符号的最大数目 |
FEC-OTI-Encoding-Symbol-Length | 以字节表示的编码符号长度 |
FEC-OTI-MaxNumber-Of-Encoding-Symbols | 可针对源块而产生的编码符号的最大数目 |
Multi-Files-Attributes | 与多文件有关的属性 |
Content-Type | 文件内容类型 |
Content-Encoding | 压缩…… |
Client-Id | 根据客户端标识符(HW、SW、简档……)来定位内容下载 |
Content-Block-Length | 块的大小 |
Content-Block-Digests(每块一个) | 块的散列(SHA1……) |
Download-File-Attributes(每文件一个) | |
File-Delivery-Attributes | 与文件的传递有关的属性 |
TOI | 传输对象标识符 |
Transfert-Length | 承载文件的传输对象的大小 |
Bandwidth-Requirement | 向所有通道发送分组的总计速率 |
FEC-OTI-FEC-Encoding-ID | FEC算法的标识 |
FEC-OTI-FEC-Instance-ID | 依赖于FEC算法标识的FEC实例 |
FEC-OTI-Maximum-Source-Block-Length | 每个源块的源符号的最大数目 |
FEC-OTI-Encoding-Symbol-Length | 以字节表示的编码符号长度 |
FEC-OTI-MaxNumber-Of-Encoding-Symbols | 可针对源块而产生的编码符号的最大数目 |
File-Attributes | 与文件自身有关的属性 |
File-Type | 文件的MIME媒体类型 |
File-Encoding | 压缩 |
Client-Id | 根据客户端标识符(HW、SW、简档……)来定位文件下载 |
File-Name | 要下载的文件的标识和位置,例如URl |
File-Length | 文件的大小 |
File-Digest | 文件的散列(例如,MD5、SHA1……) |
File-Block-Length | 块的大小 |
File-Block-Digests(每块一个) | 块的散列(SHA1……) |
FDT-Instance-Digest | |
FDT-Instance-Digest | FDT实例的散列(例如,MD5、SHA1……) |
FDT-Complete-Digest(仅在最后的FDT实例中) | |
Complete-FDT-Digest | 完整FDT的散列(例如,MD5、SHA1……) |
表2
Content-Block-Length、Content-Block-Digests、File-Name、File-Length、File-Digest、File-Block-Length和File-Block-Digests字段是对于P2P协议而言必要的最小元信息。将文件切割成多个块。
Complete-FDT-Digest字段可以用于传送RSA签名,以允许对完整FDT进行认证。
为了以推方法来下载内容,客户端执行推内容下载会话发现阶段。客户端STB预订推下载的提供。作为预订的一部分,客户端STB获得分发地址,在该分发地址处,SD&S服务器通过DVB-IP/SD&S机制来传送服务的信号通知。然后,STB收听专用多播地址。STB查找DVB-IP内容下载提供记录。
在该内容下载提供记录中,STB查找内容下载会话的开始和结束日期/时间以及其他信息,例如,多播地址、用于分发内容的端口、以及STB所依赖的索引服务器的地址。在以下表3中指示了根据实施例的SD&S记录文件。
元素/属性名称 | 元素/属性描述 |
@DomainName | 服务提供商所注册的、唯一标识服务提供商的互联网DNS域名 |
@Version | DVB-IP提供记录的版本,每当在DVB-IP提供记录中发生改变时,应当递增版本号 |
ContentDownloadOfferingtype(每个内容下载服务列表一个): | 内容下载服务发现/内容下载服务列表 |
Catalogue@Id | 该ID是由服务提供商来分配的 |
Name | 用于以一种或多种语言显示的内容下载提供目录的名称;针对每种语言码允许一个名称,应当提供至少一种语言(尽管不必多于一个) |
Description | 用于以一种或多种语言潜在显示的内容下载一般提供目录的描述;每种语言码一个描述 |
ContentReleaseTime | 新内容可用于与旧内容交换时的日期和时间 |
ClientId | 根据客户端标识符来定位内容下载会话。这个ClientId可以包括客户端硬件版本、客户端软件版本、客户端简档、区域化……在FDT中也详细说明,根据用户简档来具体定位每个下载文件 |
ServiceLocation type(每内容下载服务一个,例如每会话一个) | 可能找到内容下载服务的位置 |
ProtocolType | FLUTE或其他 |
Transport Session Identifier(TSI) | 针对给定的IP源地址唯一标识FLUTE会话 |
PMulticastAddress@Source | 每内容传递会话一个IP发送方地址 |
PMulticastAddress@Address | 多播地址 |
Number Of Channels in thesession | 使用多个LCT通道在单个FLUTE会话中传递内容 |
IPMulticastPort number foreach channel in the session | 与每个通道号相对应的端口号 |
Start data and time Of thecontent delivery session | 多播内容传递会话的起始日期和时间 |
End date and time of thecontent delivery session | 多播内容传递会话的结束日期和时间 |
FLUTE packet Receptiontimeout | 在会话级接收至少一个FLUTE分组的时间 |
File Delivery Table(FDT)reception timeout | 在会话级接收至少一个FDT实例的时间 |
Object(e.g.file)receptiontimeout | 在会话级接收至少一个文件的时间 |
BandwidthRequirement | 会话所要使用的最大带宽 |
RecoveryMode type | 与恢复模式有关的信息 |
P2P IndexServer URl | P2P索引服务器的标识和位置(URl) |
P2P IndexServerBackup URl | 索引备份服务器的列表URl |
Current Session File RepairOffsetTime | 在文件传递或内容传递会话(依赖于FLUTE传送模式)结束之后客户端为了开始文件恢复过程而应该等待的时间 |
Current Session File RepairRandomTimePeriod | 时间窗口长度,在该时间窗口长度上,客户将计算发起文件恢复过程的随机时间。 |
Integrity type | |
AnnouncementDigest | 通告的摘要(Hash、CRC……) |
表3
AnnouncementDigest子段可以用于传送RSA签名,以允许对通告进行认证。
如图4所示,在步骤S’1,使用在发现阶段所获取的信息,STB收听用于分发推会话内容的多播地址。
每个FDT实例包含多个散列码,这就允许验证该FDT自身的完整性以及与其相关联的文件块的完整性。该信息与针对拉模式而描述的元信息文件相对应。就拉模式而言,只要STB保存了与元信息文件相关联的内容,STB就存储元信息文件。随后可以使用该文件以拉模式向对等端提供服务。
STB通过FLUTE协议的“End-Of-Transmission-File”标记来检测文件传递何时结束。从那一刻起,在步骤S’2、S’3,每个STB可以检验FDT实例的完整性。在该检验之后,在步骤S’4、S’5,每个STB向索引服务器发送消息,该消息指示STB是否已接收到FDT实例。
如果FDT实例的完整性检查成功,则STB检验与该FDT实例相关联的文件的块的完整性(步骤S’6、S’7),并针对关联的文件向索引服务器发送报告(步骤S’8、S’9);该报告包含与正确接收到的块有关的信息以及文件标识符。索引服务器存储该信息并更新其数据库。如以下所述的,对于文件的丢失部分,STB执行文件恢复。
如果FDT实例的完整性检查失败,则遭到破坏的FDT实例不允许STB检验与该FDT实例相关联的文件的块的完整性,这是因为该信息被包含在该FDT实例中。STB存储紧跟遭到破坏的FDT的文件,并如下所述的那样等待对文件传递结束的检测以开始FDT实例修复。包含块的FLUTE分组包括被称作TOI的标识符,对于每个文件而言,该标识符是唯一的。FDT也包含该标识符,这就允许了使块与文件相关。
会话的最后FDT实例还包含通过作为会话一部分的所有FDT实例的总计而计算出的散列码。这就允许检验完整FDT的完整性以及获知是否丢失了FDT实例。这可以用于检测以下情况:仅通过一个FLUTE分组来传递FDT实例,并且丢弃了该分组。
STB通过会话信号通知记录中所包括的end-of-session时间/日期,或通过FLUTE分组报头中所提供的“End-Of-Session”标记,来检测会话何时结束。
因此,每个STB检验完整FDT的完整性,该完整FDT是接收到的所有FDT实例的总和;然后,每个STB检验完整FDT是否遭到破坏或者是否丢失了一些FDT实例。如果完整FDT没有遭到破坏,则可能仍然有必要根据一些文件的接收状态来激活这些文件的恢复过程。另一方面,如果发现完整FDT遭到破坏,则STB向索引服务器发送消息来指示针对完整FDT的请求,此后,STB检验遭到破坏的文件是否需要恢复过程。
在如下所述的正常拉模式阶段内可以恢复丢失的或遭到破坏的推内容。
如果在步骤S’10,对完整FDT或对FDT实例的完整性检查失败,则STB向索引服务器发送消息来指示针对完整FDT(分别是FDT实例,如图4所示)的请求。
因为索引服务器不被认为对FLUTE有任何了解,所以应用以下过程以允许取回完整FDT(分别是FDT实例):
在特定时段内,具体是直到在新会话中下载新内容时,STB在存储器中保存完整FDT和FDT实例。STB将该完整FDT(分别是FDT实例)的正确接收报告给索引服务器。
具有未遭破坏的完整FDT(分别是未遭破坏的FDT实例)的STB可以询问索引服务器(步骤S’11),在步骤S’12、S’13,该索引服务器提供能发送未遭破坏版本的对等端的地址。
在步骤S’14、S’15、S’16、S’17,STB可以用未遭破坏的完整FDT的散列值取回未遭破坏的完整FDT(分别是未遭破坏的FDT实例)。STB检验该完整FDT的完整性。STB对完整FDT进行分析,以识别其丢失了推会话的哪些文件或者修复遭到破坏的FDT实例。然后,STB检验关联的文件的完整性。如果STB检测到丢失的文件,则STB开始对丢失的文件进行文件恢复。如果STB检测到遭到破坏的文件,则STB开始块恢复。
使用在索引服务器从STB接收到的报告中所给出的信息,索引服务器连续更新其数据库。在任何给定的时刻,索引服务器都可以使需要数据恢复的STB与能提供丢失信息的对等端STB相关。
由于SD&S记录中的会话通告所给出的会话持续时间,STB获知其是否已丢失推会话。已丢失推会话的STB可以向索引服务器询问文件名为“FDT”的完整FDT,并对丢失的文件进行文件恢复。
在进行文件传递会话时连接的STB仍然能够从FLUTE多播会话得到内容的一部分。为了获得在FLUTE会话中丢失的文件,所连接的STB等待会话结束,以执行“完整”FDT的恢复并从对等端获得丢失的文件。
在视频文件下载的环境下,推方法和拉方法的结合提供了增强型分发模式。分发策略可以如下所述。在推模式下可以建议相对受欢迎的影片,而在拉模式下可以建议需求量更小的其他影片。当推模式影片的集合被新的集合所取代时,旧的集合加入可用于拉模式的影片的集合。
另一方面,索引服务器可以向内容服务器指示:其有兴趣根据与索引服务器所能收集的需求有关的统计,将一些影片的传递模式从拉模式切换至推模式,反之亦然。
对于监控或管理实体,索引服务器提出了收集与文件恢复活动有关的统计的可能性。运营商使用该信息来监控或动态适配传递策略。动态适配传递策略可以在于:对推传递的额外会话进行计划或者添加FEC。其他动作可以包括:改变针对下载文件传递而分配的带宽。
这里对“一个实施例”或“实施例”的引用是指,在本发明的至少一个实施方式中可以包括结合实施例描述的具体特征、结构或特性。在说明书各处出现的短语“在一个实施例中”不一定都指的是相同的实施例,也不一定是必须与其他实施例互斥的单独或备选实施例。
权利要求中出现的参考数字仅作示意,不应对权利要求的范围造成限制性影响。
Claims (9)
1、一种用于在通信系统(10)中下载内容的方法,所述通信系统(10)包括第一终端(1)、至少第二终端(2)、和内容服务器(5、8),所述方法在第一终端级包括以下步骤:
-以拉模式从所述内容服务器或至少所述第二终端下载内容,或者以推模式从所述内容服务器下载内容;以及
-在模式之间进行无缝切换以继续下载内容。
2、根据权利要求1所述的方法,还包括以下步骤:
-以推模式下载内容;以及
-当在所述内容服务器处停止所述推模式时,以拉模式继续下载内容。
3、根据权利要求1所述的方法,还包括以下步骤:
-以拉模式下载内容;以及
-当在所述内容服务器处开始推模式时,以所述推模式继续下载内容。
4、根据权利要求2所述的方法,还包括以下步骤:
-根据FLUTE协议接收会话传递中的推内容;以及
-在会话传递期间,接收文件传递表FDT中的信息,以允许切换至拉模式。
5、根据权利要求4所述的方法,还包括以下步骤:
-检验FDT实例的完整性;
-向索引服务器(6)指示是否已成功接收到FDT实例;以及
-向所述索引服务器指示是否已成功接收到与FDT实例相关联的文件。
6、根据权利要求5所述的方法,其中,所述方法在检测到遭到破坏的FDT实例时包括以下步骤:
-等待文件传递结束;以及
-以拉模式执行FDT实例修复。
7、根据权利要求5所述的方法,其中,所述方法在检测到遭到破坏的完整FDT时包括以下步骤:
-等待会话传递结束;以及
-以拉模式执行完整FDT修复。
8、根据权利要求3所述的方法,还包括以下步骤:
-根据对等协议接收拉内容;以及
-接收包括允许切换至推模式的信息的对等元信息文件。
9、一种终端(1、2、3),包括:
-用于以推模式下载内容的装置(1.6);
-用于以拉模式下载内容的装置(1.5);以及
-用于从一个模式无缝切换至另一模式的装置(1.7)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07300727.0 | 2007-01-12 | ||
EP07300727A EP1944944A1 (en) | 2007-01-12 | 2007-01-12 | System and method for combining pull and push modes |
PCT/EP2008/050291 WO2008084096A1 (en) | 2007-01-12 | 2008-01-11 | System and method for combining pull and push modes |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101584190A true CN101584190A (zh) | 2009-11-18 |
CN101584190B CN101584190B (zh) | 2014-04-23 |
Family
ID=38180258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880002046.XA Active CN101584190B (zh) | 2007-01-12 | 2008-01-11 | 用于将推模式和拉模式相结合的系统和方法 |
Country Status (11)
Country | Link |
---|---|
US (1) | US9100376B2 (zh) |
EP (2) | EP1944944A1 (zh) |
JP (2) | JP5785689B2 (zh) |
KR (1) | KR101606940B1 (zh) |
CN (1) | CN101584190B (zh) |
BR (1) | BRPI0806326A2 (zh) |
CA (1) | CA2675057C (zh) |
MX (1) | MX2009007438A (zh) |
RU (1) | RU2454820C2 (zh) |
WO (1) | WO2008084096A1 (zh) |
ZA (1) | ZA200904569B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102035885A (zh) * | 2010-12-12 | 2011-04-27 | 成都东方盛行电子有限责任公司 | 一种推拉式媒体交换的方法 |
CN104079661A (zh) * | 2014-07-14 | 2014-10-01 | 昆明联诚科技股份有限公司 | 一种基于网络编码的p2p流媒体数据调度方法 |
CN109889579A (zh) * | 2019-01-24 | 2019-06-14 | 江苏中云科技有限公司 | 云计算环境下的通用升级系统 |
CN110351331A (zh) * | 2019-05-29 | 2019-10-18 | 深圳市富途网络科技有限公司 | 一种数据获取、发送方法及系统 |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1944944A1 (en) | 2007-01-12 | 2008-07-16 | Thomson Licensing | System and method for combining pull and push modes |
US8386629B2 (en) * | 2007-12-27 | 2013-02-26 | At&T Intellectual Property I, L.P. | Network optimized content delivery for high demand non-live contents |
WO2009101602A2 (en) * | 2008-02-15 | 2009-08-20 | Nokia Corporation | System and method for delivering notification messages |
US20100094953A1 (en) * | 2008-10-09 | 2010-04-15 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting/receiving broadcast data through peer-to-peer network |
US8874683B2 (en) * | 2008-11-18 | 2014-10-28 | Lg Electronics Inc. | Method of processing non-real time service and broadcast receiver |
CN101945024B (zh) * | 2009-07-07 | 2012-07-25 | 纬创资通股份有限公司 | 主动提供信息给电子装置的信息系统及其方法 |
US9634845B2 (en) * | 2009-07-08 | 2017-04-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Session switching during ongoing data delivery in a network |
JP5430410B2 (ja) * | 2010-01-05 | 2014-02-26 | キヤノン株式会社 | 通信装置およびその制御方法 |
US20110167130A1 (en) * | 2010-01-06 | 2011-07-07 | Wakeupcall.Tv, Llc | Informational Video Delivery Software And Associated Methods |
JP2011182061A (ja) * | 2010-02-26 | 2011-09-15 | Nippon Hoso Kyokai <Nhk> | 通信端末およびデータ配信方式切り替えプログラム |
US8156240B2 (en) * | 2010-03-01 | 2012-04-10 | Yahoo! Inc. | Mechanism for supporting user content feeds |
JP5400742B2 (ja) * | 2010-10-18 | 2014-01-29 | 株式会社Nttドコモ | 片方向伝送システム及びコンテンツ配信方法 |
US9485108B2 (en) * | 2011-03-14 | 2016-11-01 | Qualcomm Incorporated | System and apparatus for using multichannel file delivery over unidirectional transport (“FLUTE”) protocol for delivering different classes of files in a broadcast network |
US8953478B2 (en) * | 2012-01-27 | 2015-02-10 | Intel Corporation | Evolved node B and method for coherent coordinated multipoint transmission with per CSI-RS feedback |
US9292039B2 (en) * | 2012-09-18 | 2016-03-22 | Amazon Technologies, Inc. | Adaptive service timeouts |
CN104184645B (zh) * | 2013-05-27 | 2018-05-04 | 华为技术有限公司 | 一种生成操作请求的方法、设备及系统 |
KR101754285B1 (ko) * | 2013-08-19 | 2017-07-06 | 엘지전자 주식회사 | 방송 전송 장치, 방송 수신 장치, 방송 전송 장치의 동작 방법 및 방송 수신 장치의 동작 방법 |
CN104965837B (zh) * | 2014-09-05 | 2018-07-03 | 哈尔滨安天科技股份有限公司 | 基于分块迭代的网络破损文件还原方法及系统 |
US20160094986A1 (en) * | 2014-09-29 | 2016-03-31 | Sprint Communications Company L.P. | Content delivery metadata exchange in wireless communication systems |
KR102234100B1 (ko) * | 2015-01-27 | 2021-03-31 | 한국전자통신연구원 | Id기반 통신 시스템 및 그의 데이터 전송 제어 방법 |
US9922201B2 (en) | 2015-04-01 | 2018-03-20 | Dropbox, Inc. | Nested namespaces for selective content sharing |
US10963430B2 (en) | 2015-04-01 | 2021-03-30 | Dropbox, Inc. | Shared workspaces with selective content item synchronization |
US9852147B2 (en) | 2015-04-01 | 2017-12-26 | Dropbox, Inc. | Selective synchronization and distributed content item block caching for multi-premises hosting of digital content items |
US9571573B1 (en) | 2015-10-29 | 2017-02-14 | Dropbox, Inc. | Peer-to-peer synchronization protocol for multi-premises hosting of digital content items |
US10691718B2 (en) | 2015-10-29 | 2020-06-23 | Dropbox, Inc. | Synchronization protocol for multi-premises hosting of digital content items |
US9537952B1 (en) * | 2016-01-29 | 2017-01-03 | Dropbox, Inc. | Apparent cloud access for hosted content items |
US10791191B2 (en) | 2018-11-05 | 2020-09-29 | Slack Technologies, Inc. | Maintaining minimum interface functionality in an absence of a push-based communications connection in a group-based communication system |
US11290531B2 (en) | 2019-12-04 | 2022-03-29 | Dropbox, Inc. | Immediate cloud content item creation from local file system interface |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223098A1 (en) * | 2004-04-06 | 2005-10-06 | Matsushita Electric Industrial Co., Ltd. | Delivery mechanism for static media objects |
US20060023732A1 (en) * | 2004-07-30 | 2006-02-02 | Nokia Corporation | Point-to-point repair request mechanism for point-to-multipoint transmission systems |
US20060107169A1 (en) * | 2004-11-17 | 2006-05-18 | Nokia Corporation | Support of a forward error correction |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU4541596A (en) | 1995-01-31 | 1996-08-21 | Kone Oy | Procedure and apparatus for controlling the hoisting motor of an elevator |
US6275871B1 (en) | 1996-07-03 | 2001-08-14 | Siemens Aktiengesellschaft | Asynchronous transport optimizing observer-pattern-like system supporting several modes for an interface definition language-less communication subsystem |
JP3142820B2 (ja) * | 1998-08-27 | 2001-03-07 | 株式会社エヌ・ティ・ティ・ドコモ | プッシュ型情報配信方法およびその中継装置 |
US7130616B2 (en) * | 2000-04-25 | 2006-10-31 | Simple Devices | System and method for providing content, management, and interactivity for client devices |
KR100294511B1 (ko) | 1999-05-28 | 2001-07-12 | 송경호 | 네트워크상에서 컴퓨터 화면 또는 사운드를 이용한 정보 및 광고 제공 방법 및 시스템 |
US6944662B2 (en) | 2000-08-04 | 2005-09-13 | Vinestone Corporation | System and methods providing automatic distributed data retrieval, analysis and reporting services |
US7555537B2 (en) * | 2000-10-25 | 2009-06-30 | Nokia Mobile Phones Ltd. | Downloadable multimedia content and method for accounting |
KR20020033275A (ko) | 2000-10-30 | 2002-05-06 | 정정호 | 로컬 단말기와 서버간에 데이터 파일을 동기화시키는동기화 푸시 서비스 방법 및 시스템 |
IL156521A0 (en) * | 2000-12-20 | 2004-01-04 | Ibm | Method and system for remote software distribution and installation |
DE10104713A1 (de) * | 2001-02-02 | 2002-08-08 | Siemens Ag | Verfahren und Vorrichtungen zum Zugreifen auf Nachrichten |
AU2002247257A1 (en) * | 2001-03-02 | 2002-09-19 | Kasenna, Inc. | Metadata enabled push-pull model for efficient low-latency video-content distribution over a network |
US20030018704A1 (en) | 2001-03-08 | 2003-01-23 | Vasilis Polychronidis | Network presence and location agent |
KR20020092576A (ko) | 2001-06-04 | 2002-12-12 | 주식회사 제이엠지코리아 | 멀티캐스트 웹방송 시스템 및 그 방법 |
AU2002332812A1 (en) | 2001-09-04 | 2003-03-18 | Soft2B Llc | Browser-to-browser, dom-based, peer-to-peer communication with delta synchronization |
JP3809813B2 (ja) * | 2002-08-21 | 2006-08-16 | 日本電信電話株式会社 | コンテンツ配信方法およびこれを用いるコンテンツ配信システム |
EP2285076B1 (en) | 2003-08-20 | 2013-03-27 | Accenture Global Services Limited | Methods and systems for providing information to mobile users over limited bandwidth |
JP4536383B2 (ja) * | 2004-01-16 | 2010-09-01 | 株式会社エヌ・ティ・ティ・ドコモ | データ受信装置およびデータ受信方法 |
MXPA06014093A (es) | 2004-06-25 | 2007-02-15 | Nokia Corp | Manejo de sesion de suminstro de archivo. |
JP2006163626A (ja) | 2004-12-03 | 2006-06-22 | Dainippon Printing Co Ltd | データ通信装置、データ通信方法、及びデータ通信処理プログラム |
US7904587B2 (en) * | 2005-01-19 | 2011-03-08 | Iona Technologies Limited | Flexibly deployable communication device facilitating interoperation between middleware |
JP2008546065A (ja) * | 2005-05-20 | 2008-12-18 | グリッド ネットワークス | ファイル分配用グリッドネットワーク |
RU2290768C1 (ru) * | 2006-01-30 | 2006-12-27 | Общество с ограниченной ответственностью "Трафиклэнд" | Система медиавещания в инфраструктуре оператора мобильной связи |
EP1901525A1 (en) | 2006-09-15 | 2008-03-19 | THOMSON Licensing | File repair method for a content distribution system |
EP1944944A1 (en) | 2007-01-12 | 2008-07-16 | Thomson Licensing | System and method for combining pull and push modes |
-
2007
- 2007-01-12 EP EP07300727A patent/EP1944944A1/en not_active Withdrawn
-
2008
- 2008-01-11 EP EP08701435.3A patent/EP2103083B1/en active Active
- 2008-01-11 CN CN200880002046.XA patent/CN101584190B/zh active Active
- 2008-01-11 MX MX2009007438A patent/MX2009007438A/es active IP Right Grant
- 2008-01-11 BR BRPI0806326-5A patent/BRPI0806326A2/pt not_active Application Discontinuation
- 2008-01-11 RU RU2009130739/07A patent/RU2454820C2/ru not_active IP Right Cessation
- 2008-01-11 JP JP2009545187A patent/JP5785689B2/ja not_active Expired - Fee Related
- 2008-01-11 ZA ZA200904569A patent/ZA200904569B/xx unknown
- 2008-01-11 US US12/448,782 patent/US9100376B2/en active Active
- 2008-01-11 CA CA2675057A patent/CA2675057C/en not_active Expired - Fee Related
- 2008-01-11 WO PCT/EP2008/050291 patent/WO2008084096A1/en active Application Filing
- 2008-01-11 KR KR1020097016768A patent/KR101606940B1/ko active IP Right Grant
-
2015
- 2015-05-13 JP JP2015098102A patent/JP5951071B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223098A1 (en) * | 2004-04-06 | 2005-10-06 | Matsushita Electric Industrial Co., Ltd. | Delivery mechanism for static media objects |
US20060023732A1 (en) * | 2004-07-30 | 2006-02-02 | Nokia Corporation | Point-to-point repair request mechanism for point-to-multipoint transmission systems |
US20060107169A1 (en) * | 2004-11-17 | 2006-05-18 | Nokia Corporation | Support of a forward error correction |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102035885A (zh) * | 2010-12-12 | 2011-04-27 | 成都东方盛行电子有限责任公司 | 一种推拉式媒体交换的方法 |
CN104079661A (zh) * | 2014-07-14 | 2014-10-01 | 昆明联诚科技股份有限公司 | 一种基于网络编码的p2p流媒体数据调度方法 |
CN109889579A (zh) * | 2019-01-24 | 2019-06-14 | 江苏中云科技有限公司 | 云计算环境下的通用升级系统 |
CN109889579B (zh) * | 2019-01-24 | 2021-01-26 | 江苏中云科技有限公司 | 云计算环境下的通用升级系统 |
CN110351331A (zh) * | 2019-05-29 | 2019-10-18 | 深圳市富途网络科技有限公司 | 一种数据获取、发送方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CA2675057A1 (en) | 2008-07-17 |
US9100376B2 (en) | 2015-08-04 |
US20100011088A1 (en) | 2010-01-14 |
RU2009130739A (ru) | 2011-02-20 |
MX2009007438A (es) | 2009-07-22 |
EP2103083A1 (en) | 2009-09-23 |
JP2015172954A (ja) | 2015-10-01 |
BRPI0806326A2 (pt) | 2011-09-06 |
JP5785689B2 (ja) | 2015-09-30 |
EP2103083B1 (en) | 2018-07-18 |
CN101584190B (zh) | 2014-04-23 |
RU2454820C2 (ru) | 2012-06-27 |
JP5951071B2 (ja) | 2016-07-13 |
KR101606940B1 (ko) | 2016-03-29 |
EP1944944A1 (en) | 2008-07-16 |
ZA200904569B (en) | 2010-09-29 |
JP2010515988A (ja) | 2010-05-13 |
WO2008084096A1 (en) | 2008-07-17 |
KR20090101489A (ko) | 2009-09-28 |
CA2675057C (en) | 2016-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101584190B (zh) | 用于将推模式和拉模式相结合的系统和方法 | |
US10321199B2 (en) | Streaming with optional broadcast delivery of data segments | |
US20080155112A1 (en) | System and method for updating information feeds | |
KR101495369B1 (ko) | 모바일 tv를 위한 로버스트 파일 캐스팅 | |
EP2091202B1 (en) | Data distributing method, data distributing system and correlative devices in edge network | |
US8046449B2 (en) | Contents management system and contents management method | |
EP2279584B1 (en) | System and method for distributing a map of content available at multiple receivers | |
US20100023593A1 (en) | Distributed storage system, node device, recording medium in which node processing program is recorded, and address information change notifying method | |
US7882261B2 (en) | Method and apparatus for realizing positioning play of content stream in peer-to-peer network | |
CN103312593B (zh) | 一种消息分发系统及方法 | |
US20150074234A1 (en) | Content system and method for chunk-based content delivery | |
JP5529145B2 (ja) | ファイル修復配信モードを要求する方法 | |
WO2012058610A1 (en) | Electronic emergency messaging system | |
CN101521666A (zh) | 用于内容的实况传送的方法、以及控制设备和关联的设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: I Si Eli Murli Nor, France Patentee after: THOMSON LICENSING Address before: French Boulogne - Bilang Kurt Patentee before: THOMSON LICENSING |
|
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190528 Address after: Paris France Patentee after: Interactive digital CE patent holding Co. Address before: I Si Eli Murli Nor, France Patentee before: THOMSON LICENSING |