CN102630378A - 基于描述文件的个体化数据通信 - Google Patents
基于描述文件的个体化数据通信 Download PDFInfo
- Publication number
- CN102630378A CN102630378A CN2010800535590A CN201080053559A CN102630378A CN 102630378 A CN102630378 A CN 102630378A CN 2010800535590 A CN2010800535590 A CN 2010800535590A CN 201080053559 A CN201080053559 A CN 201080053559A CN 102630378 A CN102630378 A CN 102630378A
- Authority
- CN
- China
- Prior art keywords
- data
- identifier
- description
- individuation
- type
- 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
- 230000006854 communication Effects 0.000 title abstract description 40
- 238000004891 communication Methods 0.000 title abstract description 38
- 239000012634 fragment Substances 0.000 claims description 94
- 238000000034 method Methods 0.000 claims description 59
- 238000012546 transfer Methods 0.000 claims description 15
- 238000013461 design Methods 0.000 description 30
- 230000008569 process Effects 0.000 description 12
- 230000000712 assembly Effects 0.000 description 8
- 238000000429 assembly Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1068—Discovery involving direct consultation or announcement among potential requesting and potential source peers
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1063—Discovery through centralising entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
为了将数据实体(200)个体化数据传送至至少第一接收方和第二接收方,提供了描述文件(100),利用至少一个占位符类型的标识符来补充描述文件。描述文件(100)还包括:至少一个直接类型的标识符,与数据实体(200)的对应数据片段(210)相关联。占位符类型的标识符继而与个体化数据片段(220)的描述数据(120)相关联。通过针对不同接收方提供不同类型的描述数据(120),可以使用占位符类型的标识符作为对个体化数据片段(220)中不同类型的个人化内容的引用。可以在不修改描述文件(100)的标识符部分(110)的情况下获得这种个体化。
Description
技术领域
本发明涉及基于描述文件的个体化数据通信的技术。
背景技术
近年来,数据(例如多媒体内容)的数字分发已经得到越来越多的关注。对此,已知基于描述文件(也称为元文件)来分发数据。这种描述文件的示例是例如根据BitTorrent协议使用的torrent文件和根据HTTP直播流传输协议使用的播放列表文件。典型地,数据的接收方将使用描述文件中的信息作为获得数据的基础。这种信息可以是与要接收的数据片段唯一关联的标识符。然后,例如可以根据对等(P2P)协议从不同源进行数据的实际接收。P2P协议的一个示例是上述BitTorrent协议。
在P2P协议中,在作为P2P网络的一部分的所有用户之间共享内容。为此,针对网络中可用的每个内容项目存在描述文件。对此,“可用”意味着网络的至少一个成员(也称为“对等体”)正在提供该内容项目。在描述文件中,处理内容项目的小片段。当用户请求特定内容项目时,从网络的不同成员提供这些片段。这具有以下优点:内容项目的接收方不必须依赖于提供片段的特定对等体一直在线直到内容项目完全接收。可以从最合适的位置,例如从存在具有低延迟和高比特率的数据连接的位置,提供每个片段。
根据已知的P2P技术,内容项目的描述文件包含不同片段的散列值,不同片段的个体散列值用于在接收时标识片段。此外,描述文件包括基于这些个体散列值而获得的散列值。后一散列值可以用作签名以唯一标识内容项目并验证描述文件的完整性。因此,在修改内容项目的一个片段时,对应的个体散列值以及基于个体散列值计算的散列值将改变。因此,即使仅修改内容项目的一个片段,根据个体散列值计算的散列值将被解释为引用不同内容项目。例如,具有针对年轻人的广告的电影形式的内容项目将与具有针对中年女性的广告的相同电影具有不同签名。结果是,电影的每个个体化版本将被认为是需要不同存储的完全不同的内容。换言之,即使在两个个体化版本中相同的内容项目的片段仍需要分别提供。
因此,需要允许将个体化数据高效传送至不同接收方的技术。
发明内容
根据本发明的实施例,提供了一种基于描述文件将数据实体传送至至少第一接收方和第二接收方的方法。描述文件包括与数据实体的对应数据片段相关联的至少一个直接类型的标识符。所述方法包括以下步骤:将占位符类型的标识符添加至描述文件。占位符类型的标识符与个体化数据片段的描述数据相关联。针对第一接收方提供第一类型的描述数据,针对第二接收方提供第二类型的描述数据。第一类型的描述数据不同于第二类型的描述数据。
根据本发明的另一实施例,提供了一种基于描述文件将数据实体传送至至少第一接收方和第二接收方的方法。描述文件包括与数据实体的对应数据片段相关联的至少一个直接类型的标识符以及与个体化数据片段的描述数据相关联的占位符类型的标识符。所述方法包括以下步骤:针对第一接收方提供第一类型的描述数据,针对第二接收方提供第二类型的描述数据。第一类型的描述数据不同于第二类型的描述数据。
根据本发明的另一实施例,提供了一种基于描述文件来传送数据实体的方法。所述描述文件包括至少一个标识符。所述标识符可以是与数据实体的对应数据片段相关联的直接类型或与个体化数据片段的描述数据相关联的占位符类型。所述方法还包括以下步骤:如果标识符是占位符类型,则检索个体化数据片段的相关联描述数据;以及基于检索的描述数据来检索个体化数据片段。
根据本发明的另一实施例,提供了一种设备。所述设备包括:个体化逻辑,被配置为实现上述将占位符类型的标识符添加至描述文件的步骤,和/或被配置为实现上述针对第一接收方提供第一类型的描述数据和针对第二接收方提供第二类型的描述数据的步骤。
根据本发明的另一实施例,提供了一种设备,所述设备包括:占位符逻辑,被配置为实现上述接收数据的方法的步骤。
附图说明
图1示意性示出了具有个体化数据片段的数据实体的结构以及用于本发明实施例的数据实体的描述文件。
图2示出了用于示意根据本发明实施例用于个体化数据通信的系统的框图。
图3示出了用于示意性示出根据本发明实施例用于个体化数据通信的另一系统的框图。
图4示意性示出了可以应用根据本发明实施例的构思的网络环境。
图5示意性示出了根据本发明实施例的网络设备。
图6示意性示出了根据本发明实施例的接收设备。
图7示出了用于示意性示出根据本发明实施例的方法的流程图。
图8示出了用于示意性示出根据本发明实施例的另一方法的流程图。
图9A和9B示意了描述文件的示例。
图10示意了根据本发明实施例的描述文件的示例。
图11示出了用于示意性示出根据本发明实施例的过程的流程图。
图12示出了用于示意性示出根据本发明实施例的另一过程的流程图。
具体实施方式
以下参照示例实施例和附图,更详细解释本发明。所示的实施例涉及用于将数据实体个体化通信至不同接收方的技术。数据实体可以包括不同类型的内容。例如,数据实体可以包括不同类型的内容。例如,数据实体可以包括由广告或额外场景(例如经过检查的场景或多媒体内容的扩展版本的场景)来个体化的多媒体内容。根据另一示例,数据实体可以包括软件,软件包括个体化模块,例如不同的语言模块。这里描述的技术可以应用于各种类型的通信网络,例如根据3GPP(第三代伙伴计划)技术规范的移动通信网络。这些技术还可以由例如因特网提供商应用于有线网络。以下描述或多或少集中关注使用BitTorrent协议(作为P2P协议的一个示例)来传送数据的示例。然而,可以理解,这里描述的构思还可以应用于其他通信协议,例如HTTP直播流传输协议(作为基于描述文件的流传输协议的一个示例)。
图1示意性示出了根据本发明实施例个体化的数据实体200的结构。此外,图1还示意性示出了在本发明实施例中使用的描述文件100的结构。
如图1所示,数据实体200再划分为多个数据片段210。数据片段210可以以给定顺序接合在一起以形成数据实体200。例如,如果数据实体200包括多媒体内容(例如音频数据和/或视频数据),则数据片段210按照预期播出多媒体内容的顺序来布置。根据实施例,数据片段210可以是媒体文件的片段,或者可以是个体媒体文件。在图1中,数据片段210的排序由编号#X,#X+1,#X+2指示。根据该给定顺序,通过将数据具有编号#X+1的数据片段210置于具有编号#X的数据片段210之后,并将数据具有编号#X+2的数据片段210置于具有编号#X+1的数据片段210之后,数据片段210将接合在一起以形成数据实体200。
如图1中进一步示出,通过提供个体化数据片段220来对数据实体200进行个体化,数据片段220要包括在由不同接收方接收的数据实体200中。针对第一接收方(接收方1)提供第一类型的个体化数据片段220,针对第二接收方(接收方2)提供第二类型的个体化数据片段220。对此,应理解,第一接收方和第二接收方可以对应于例如在物理上不同的接收设备中接收数据的不同客户端。然而,第一和第二接收方还可以对应于相同客户端,但是在不同时间点。第一和第二类型的个体化数据片段220具有不同内容。因此,可以通过包括相应类型的个体化数据片段220来对第一接收方和第二接收方接收的数据实体200进行个体化。对此,应理解,还可以提供多于两种不同类型的个体化数据片段220,以获得关于多于两个接收方的个体化。此外,数据实体200可以包括多于一个个体化数据片段。此外,应理解,第一和第二接收方的每一个可以表示预期接收相同类型的个体化内容的一组接收方。此外,个体化数据片段220可以在给定位置处插入数据实体200的数据片段210之间,或者可以替换数据片段210中给定的一个数据片段。
描述文件100提供用于允许客户端控制数据片段210的接收。为此,描述文件100包括标识符部分110。标识符部分110包括用于数据实体200的每个数据片段210的对应标识符。在所示示例中,具有编号#X的标识符对应于具有编号#X的数据片段210,具有编号#X+1的标识符对应于具有编号#X+1的数据片段210,具有编号#X+2的标识符对应于具有编号#X+2的数据片段210。这些标识符可以用于直接标识数据片段210。换言之,数据片段210与其对应标识符之间存在一对一关系。因此,这些标识符也可以称为直接类型的标识符。
如进一步示意的,描述文件100的标识符部分110包括占位符类型的另一标识符(标记为“占位符”)。占位符类型的标识符与个体化数据片段220的描述数据120相关联。描述数据120可以是第一类型或第二类型。第一类型的描述数据120对应于第一接收方,并引用针对第一接收方提供的第一类型的个体化数据片段220。第二类型的描述数据120对应于第二接收方,并引用针对第二接收方提供的第二类型的个体化数据片段220。再次,应理解,为了获得关于其他接收方的个体化,可以提供其他类型的描述数据120。与具有与数据片段210的一对一关系的直接类型的标识符相比,占位符类型的标识符引用可以是不同类型的描述数据120。因此,占位符类型的标识符允许根据接收数据实体200的特定接收方来标识不同类型的个体化数据片段。然而,这种个体化不改变描述文件100的标识符部分110。
根据实施例,直接类型的标识符可以是对应数据片段210的签名,例如散列值。例如,如果数据通信基于BitTorrent协议,则描述文件100可以是根据BitTorrent协议的torrent文件,并且标识符部分110可以是torrent文件的“info(信息)”部分。在该场景中,直接类型的标识符可以均是对应数据片段210的散列值,例如根据安全散列算法1(SHA1)计算的散列值。在另一场景中,数据通信可以基于文件流协议,例如HTTP直播流传输协议。在该场景中,描述文件100可以是根据HTTP直播流传输协议的播放列表文件,标识符部分110可以是统一资源标识符(URI)的列表。
通过将描述数据120存储在预定义位置,占位符类型的标识符可以与描述数据120相关联。例如,描述数据120可以存储在描述文件100内的预定义位置,但是在标识符部分110之外。根据其他示例,可以使用其他预定义位置,例如附加文件、预定义网络位置(例如由统一资源定位符标识)、接收设备内的预定义存储位置等等。
占位符类型的标识符可以具有与直接类型的标识符相同的格式。例如,如果直接类型的标识符是给定长度(例如20字节)的散列值,则占位符类型的标识符可以是相同长度的值。根据示例,占位符类型的标识符可以计算为伪签名,例如短语“ericsson ads P2P solution”的SHA1散列值是[4d622cad7ba532e8defe3d60e2bf75a2e2f369c]。根据另一示例,占位符类型的标识符可以是伪传送源标识符,例如伪URI,其中特定部分(例如scheme(方案)部分)例如通过包括指示符“dummy”等指示标识符的伪字符。与占位符类型的标识符相关联的描述数据120可以继而包括直接类型的标识符,直接类型的标识符同与预期接收方相对应的特定类型的个体化数据片段220具有一对一关系。例如,描述数据120可以包括特定类型的个体化数据片段220的签名。根据另一示例,描述数据120可以包括特定类型的个体化数据片段220的URI。描述数据120还可以提供关于特定类型的个体化数据片段220的补充信息,例如特定类型的个体化数据片段220的大小。根据实施例,在描述数据120中包括大小可以用于在原本使用均匀大小的数据片段210的协议(例如BitTorrent协议)中提供对任意大小的数据片段的支持。
根据上述构思,提供了对唯一标识内容项目(即数据实体200)而与任何添加的个体部分(例如个体化数据片段220)无关的问题的解决方案。这是通过使用描述文件(例如描述文件100)来实现的,描述文件100包括:直接类型的标识符,具有与数据实体200的数据片段210的一对一关系;以及至少一个占位符类型的标识符,可以包括在描述文件100中与个体化内容相对应的位置。在P2P场景中,例如基于BitTorrent协议,直接类型的标识符将会是主要内容(即数据实体200)的数据片段210的散列,并且在个体化部分应当处于的位置提供占位符类型的标识符。因此,描述文件中包括直接类型的标识符和占位符类型的标识符的部分将具有相同签名。然后,向用户或接收方发出按照上述方式(例如通过引入至少一个占位符类型的标识符)个体化的描述文件(可以是根据BitTorrent协议的torrent文件)。然后,用户或接收方可以取得形成主要内容(即数据实体200)的数据片段210,以及仅仅与该接收方相对应的该特定类型的至少一个个体化数据片段220。例如,在主要内容是多媒体内容以及该至少一个个体化数据片段220对应于一个或多个广告的场景中,关于该特定类型的至少一个个体化数据片段220的信息可以包括在描述数据120中,描述数据120可以置于描述文件100中,例如根据BitTorrent协议的torrent文件中。因此,用户可以仅仅取得在描述文件或torrent文件中描述的那些广告。
根据一些实施例,还可以在描述文件100的不同位置处使用占位符类型的标识符,作为对不同个体化数据片段220的引用。然后,可以根据占位符类型的标识符在描述文件100中的位置来取得特定类型的个体化数据片段220。此外,占位符类型的标识符可以在一些情况下用作对数据实体(即主要部分)的一个或多个数据片段210的应用,而不使用直接类型的标识符来引用该数据片段210。该数据片段210可以是随机选择的。在主要内容是由一个或多个广告来个体化的多媒体内容的场景中,偶尔使用占位符类型的标识符作为对主要内容的片段的引用可以用于避免便于跳过广告。
在以上描述中,构思已经被解释为适用于例如根据BitTorrent协议或根据HTTP直播流传输协议的数据通信。然而,应理解,构思可以应用于其他类型的数据通信,例如根据其他协议或与其他应用相结合,其中,主要内容被分为小的原子片段,使用描述片段如何彼此相关的描述文件,并且基于描述文件的一部分来接收或验证内容,以集成主要内容中的其他片段或内容。要集成入主要媒体内容的广告仅是一个示例。
图2示出了用于示意性示出根据本发明实施例的用于个体化数据通信的系统的框图。该系统可以根据以上关于图1解释的构思来操作。该系统可以用于传送任何类型的数据实体,例如关于图1解释的数据实体200,所述数据实体基于在描述文件(例如元文件、说明文件、torrent文件等等)中描述的数据片段或块。每个数据片段或块可以由文件、多个文件、或文件的一部分形成。该系统可以用于将具有附加个人化内容的主要内容传送至不同接收方。对此,可以通过不对相同主要内容的所有接收方公共的个体化数据片段来表示个人化内容。例如,可以通过关于图1解释的至少一个个体化数据片段220来表示个人化内容。描述文件包括占位符类型的标识符,用作对个人化内容的总体引用。换言之,相同的占位符类型的标识符可以用作对不同类型的个人化内容的引用。
如图2所示,系统包括:客户端510、内容提供器520、描述文件产生器530、选择器540、元数据存储库550和项目存储库560。这些组件可以在不同类型的设备中实现。例如,可以在对应网络设备中实现这些组件中的每一个。此外,这些组件中的一些可以集成在相同网络设备中。此外,客户端510可以实现在终端用户设备中,例如在要耦合至通信网络的终端内。根据一个示例,客户端510可以实现在移动终端内,该移动终端被配置为耦合至移动通信网络(例如根据3GPP技术规范)。
根据本发明的实施例,图2所示的系统的操作可以如下:客户端510通过向内容提供器520发送消息51,从内容提供器520请求主要内容。然后,内容提供器520可以通过发送消息52来触发描述文件产生器530产生描述文件。通过发送消息53,描述文件产生器530从选择器540请求关于个人化内容的信息,例如关于图1解释的个体化数据片段220。通过发送消息54,选择器540可以从元数据存储库550请求要用作个人化内容的内容项目的列表。通过发送消息55,元数据存储库550利用可用内容项目的列表来进行响应。然后,选择器540将可用内容项目映射至不同接收方或用户。这可以根据用户偏好、用户简档、用户兴趣或其他准则来完成。根据一些实施例,选择器540可以选择个人化内容的一个或多个标识符,例如关于图1解释的特定类型的个体化数据片段220的标识符。标识符可以是签名(例如散列值),或者可以是传送源标识符(例如URI)。也可以使用其他类型的标识符,例如URI。根据一些实施例,选择器还可以针对相同接收方或相同组接收方,选择与不同类型的个人化内容相关的标识符(例如URI或散列值)的列表,并利用其进行响应。然后,基于该列表,接收方可以在不同类型的个人化内容之间进行选择。通过向描述文件产生器530发送消息56,选择器540向描述文件产生器530发送个人化内容的一个或多个所选标识符。
描述文件产生器基于来自选择器540的输入来产生描述文件。产生描述文件,以包括:与主要内容相关的直接类型的标识符;以及与个人化内容相关的占位符类型的至少一个标识符。直接类型的标识符和占位符类型的该至少一个标识符可以如关于图1所解释的。描述文件产生器530通过发送消息57来向客户端510提供描述文件。
然后,客户端510通过向项目存储库560发送一个或多个消息58,基于描述文件来检索主要内容和个人化内容。在一些实施例中,这还可以包括发送占位符类型的标识符。项目存储库560通过发送一个或多个消息59,利用项目和个人化内容来进行响应。这里,应理解,如图2所示的项目存储库560可以在单一位置实现,或者可以分布在不同位置上。例如,可以从不同位置提供主要内容的不同数据片段。此外,可以从与主要内容不同的位置提供个人化内容的一个或多个个体化数据片段,可以从不同位置提供不同的个体化数据片段。在检索内容时,例如在遇到描述文件中的第n个占位符类型的标识符时,客户端510可以请求(在多媒体内容的情况下还可以播放)与从选择器540接收的第n个标识符(例如第n个URI或散列值)相对应的个体化内容。如果选择器540已经提供了个人化内容的多个备选标识符,则客户端510可以选择这些备选标识符中的至少一个,并请求对应的个人化内容。
因此,上述系统提供了包含指向个人化内容的至少一个指针的个人化描述文件。该指针可以具有关于图1解释的描述数据120的形式,并且可以包括与个人化内容相关的标识符,例如散列值或URI。根据一些实施例,描述文件还可以包含指向个人化内容的指针的列表,客户端510可以从该列表的项目中进行选择。
图3示出了用于示意性示出根据本发明另一实施例的用于个体化数据通信的系统的框图。再次,该系统可以根据以上关于图1解释的构思来操作,通过使用包括至少一个占位符类型的标识符的描述文件,向不同接收方传送数据实体,例如数据实体200。图3的系统的组件与图2的组件类似。如图所示,系统包括客户端610、内容提供器620、描述文件产生器630、选择器640、元数据存储库650和项目存储库660。与图2的系统(其中通过包括指向个人化内容的一个或多个指针来个人化描述文件)相比,图3的系统被配置为基于对于每个接收方相似的通用描述文件来操作。这对应于关于图1描述的场景,其中从描述文件100单独提供描述数据120。
根据一个示例,该通用描述文件可以通过将对得到个人化内容的位置(例如URL)的引用包括在描述文件中来实现。然后,在请求个人化内容时,可以基于客户端610提供的类别指示符来向客户端610提供不同类型的个人化内容。根据另一示例,描述文件可以包含得到个人化内容的位置引用(例如URL),可以通过合适的凭证来标识客户端,所述凭证例如其MAC地址(MAC:媒体接入控制)或用户名,以向客户端提供特定类型的个人化内容。因此,利用客户端610内存储的信息(例如具有类别指示符的形式),或者在描述文件中的位置引用所引用的位置处存储的信息(例如具有类别指示符、MAC地址、用户名或其他凭证与特定类型的个人化内容之间的映射的形式),可以与描述文件分离地实现特定接收方与个人化内容之间的映射。
如图3所示的系统的操作如下。客户端610通过向内容提供器620发送消息61来从内容提供器620请求主要内容。内容提供器620通过发送消息62来触发描述文件产生器630。描述文件产生器630产生描述文件,所述描述文件包括个人化内容的至少一个占位符类型的标识符。此外,描述文件还包括引用主要内容的一个或多个直接类型的标识符。描述文件产生器630通过发送消息63来向客户端610提供描述文件。
基于描述文件,客户端610请求主要内容和个人化内容。这可以涉及:例如,在由占位符类型的标识符的位置所指定的特定时刻,客户端610通过发送消息64来从选择器640请求个体化数据片段。通过发送消息65,选择器640从元数据存储库650请求内容项目的列表。通过发送消息66,元数据存储库利用可用内容的列表来进行响应。选择器650从可用内容的列表中进行选择,并利用指向检索个人化内容的位置的标识符(例如指向内容存储库660处的个人化内容的URL)来对客户端610进行响应。例如在指定时刻,通过发送消息68,客户端610请求个人化内容。如上所述,这可以包括发送类别指示符或其他凭证,例如MAC地址、用户名等等。在一些实施例中,这还可以包括发送占位符类型的标识符。通过发送消息69,项目存储库660利用个人化内容来进行响应。
应注意,在图2和3的系统中,至少元数据存储库和/或内容存储库中提供个人化内容的部分可以由服务器实现,例如由广告代理或广告经纪人运营的服务器。此外,元数据存储库和/或项目存储库还可以由P2P平台实现。可以基于内容提供器的要求来决定元数据存储库和/或项目存储库的物理实现。此外,应理解,个人化内容的标识符可以包括在描述文件中,但是也可以存储在不同位置,例如存储在由客户端、选择器、元数据存储库和/或项目存储库提供的映射数据内或补充描述文件的附加文件内。此外,应理解,在系统的不同组件之间,可以使用不同类型的通信,包括单播通信、多播通信和广播通信。例如,描述文件产生器可以将描述文件广播至多个接收方或客户端,项目存储库可以使用广播传输来提供主要内容和/或个人化内容。然而,在一些情况下,例如对于在图2的系统中使用的个体化描述文件,对客户端的描述文件的单播传输可能更为合适。此外,应理解,产生描述文件所需的至少一些过程还可以在客户端从内容提供器请求主要内容之前执行。
图4示意性示出了可以应用上述构思的通信网络环境。更具体地,图4集中关注可以从不同源检索主要内容的数据片段和/或个人化内容的个体化数据片段的上述方面。在使用P2P协议(如BitTorrent协议)时,这种情形是典型情形,但是也可能与其他协议(即与可以从不同源提供流的不同片段的流传输协议)一起出现。
在图4的网络环境中,示意了多个设备310、320、350、360。例如,设备310和320可以是存储主要内容的数据片段和/或个人化内容的个体化数据片段的服务器。例如,设备310和320可以实现关于图2和3解释的项目存储库。设备350和360可以是任何类型的接收设备,例如终端等等。例如,设备350和360可以均实现图2和3所示的客户端。设备350和360可以对应于个人化数据的不同接收方。这就是说,设备350和设备360可以接收不同类型的个人化数据。
从设备350的观点看,存在获得主要内容的数据片段的不同可能性。例如,可以从设备310检索数据片段。此外,可能已经从设备310向设备320提供相同的数据片段(例如在P2P数据通信过程中),设备350可以从设备320获得该数据片段。此外,可能已经从设备310向设备360提供相同的数据片段(例如在P2P数据通信过程中),设备350可以从设备360获得该数据片段。因此,设备350具有获得主要内容的数据片段的不同选项。例如,可以基于到设备310、320、360的数据连接的属性,例如基于数据连接的延迟和/或比特率,来执行这些不同选项之间的选择。按照这种方式,可以从最合适的位置获得数据片段,并且可以以非常高效的方式使用网络资源。对于获得个体化数据片段,情形是类似的。然而,在设备350和360对应于预期接收不同类型的个人化数据的不同接收方的假定场景中,个体化数据片段在设备360处可能不可用。
图5示意性示出了根据本发明实施例的网络设备410。例如,网络设备410可以对应于图4的设备310或320之一。在图5的示意中,仅示意了网络设备410的一些组件,这些组件被认为有助于理解这里描述的构思。应理解,根据网络设备410的具体实现,可以提供网络设备410的其他组件。
如图5所示,网络设备410包括处理器412。处理器例如通过执行合适设计的程序代码来实现个体化逻辑414。此外,网络设备410包括接口416,接口416耦合至处理器412和个体化逻辑414。接口416可以是适于与其他网络设备和/或终端通信的任何已知类型。例如,接口416可以是允许根据因特网协议来进行通信的接口。此外,应理解,接口416可以基于不同物理实现,例如可以被配置为使用有线通信信道和/或无线通信信道。
个体化逻辑414被配置为根据上述构思来完成个体化。因此,在一些实施例中,个体化逻辑414可以是描述文件产生器的一部分,并且可以实现将至少一个占位符类型的标识符插入描述文件。在一些实施例中,将占位符类型的标识符插入描述文件还可以与描述文件的产生分离实现。例如,网络设备410可以经由接口416接收描述文件,个体化逻辑414可以将至少一个占位符类型的标识符加入接收的描述文件。此外,个体化逻辑414还可以实现将与占位符类型的标识符相关联的描述数据(例如关于图1解释的描述数据120)插入描述文件。然后,可以使用接口416,将具有至少一个占位符类型的标识符以及可选地还具有与占位符类型的标识符相关联的描述数据的描述文件发送至另一设备。
根据其他示例,个体化逻辑414可以被配置为实现占位符类型的标识符和与占位符类型的标识符相关联的特定类型的描述数据之间的映射。这可以通过修改描述文件来实现,例如通过将描述数据包括在描述文件中,或者通过将描述数据存储在给定位置。例如,个体化逻辑可以将客户端配置为使其在遇到描述文件中的占位符类型的标识符时始终检索特定类型的个体化数据片段。此外,个体化逻辑可以配置映射数据,所述映射数据将特定接收方与对应类型的个人化内容相关。这种映射数据可以存储在例如关于图2和3描述的项目存储库内,或存储在任何其他合适位置。此外,个体化逻辑414还可以实现关于图2和3解释的选择器的功能。
图6示意性示出了根据本发明实施例的接收设备450。例如,接收设备450可以对应于图4的设备350或360。简单起见,示意了接收设备450具有被认为有助于理解这里描述的构思的组件。然而,应理解,根据接收设备450的具体实现,接收设备450还可以包括其他组件。
如图所示,接收设备450包括:处理器452,实现具有占位符逻辑456的客户端454。客户端454和占位符逻辑456可以通过由处理器452执行的合适设计的程序代码来实现。接收设备450还包括:接口458,耦合至处理器452、客户端454和占位符逻辑456。使用接口458,接收设备450可以与其他设备通信,例如服务器或其他接收设备。这种通信的示例已经关于图4阐述。接口458可以是允许与其他设备进行数据通信的任何类型。例如,接口458可以被配置为允许根据因特网协议进行数据通信。此外,还应注意,接口458可以基于不同的物理实现,例如可以被配置为使用有线通信信道和/或无线通信信道。
接收设备450的客户端454可以被配置为实现关于图1至3解释的客户端的功能。具体地,客户端454可以被配置为实现基于描述文件来接收数据。为此,客户端454被配置为分析描述文件中的标识符。如果标识符是直接类型,则客户端可以基于直接类型的标识符来检索主要内容的对应数据片段。占位符逻辑456被配置为确定标识符是否是占位符类型。如果描述文件中的标识符是占位符类型,则占位符逻辑456检索与占位符类型的标识符相关联的描述数据。基于该描述数据,检索个人化内容。例如,如关于图1所解释的,可以提供特定类型的描述数据120,该描述数据120引用与接收方相对于的特定类型的个体化数据片段。
尽管以上将占位符逻辑456描述为实现在接收设备450的客户端454之内,但是应理解,在一些实施例中,占位符逻辑456的至少一部分可以实现在网络设备内,例如关于图2和3描述的项目存储库内。在这种实现的一个示例中,项目存储库内的占位符逻辑可以接收指示要提供的内容与占位符标识符相关的请求(例如通过将对应指示符包括在请求中)。然后,项目存储库内的占位符逻辑可以检索所请求的个体化内容的描述数据,检索个体化内容,并以检索的内容来进行响应。在一些实施例中,内容存储库内的占位符逻辑还可以从描述文件接收标识符以及针对相应内容的请求。然后,内容存储库内的占位符逻辑可以确定标识符是否是占位符类型,如果是,则检索所请求的个体化内容的描述数据,检索个体化内容,并以检索的内容来进行响应。
图7示出了用于示意性示出根据本发明实施例的个体化数据通信方法的流程图。该方法可以实现上述构思,并且可以使用上述设备和组件来执行。根据上述构思,该方法的目的在于将数据实体传送至至少第一和第二接收方。这是基于描述文件来实现的。描述文件可以是上述描述文件,例如图1所示的描述文件100。该描述文件可以由描述文件产生器(例如图2和3所示的描述文件产生器)产生。该描述文件包括与数据实体的对应数据片段相关联的至少一个直接类型的标识符。具体地,在直接类型的标识符与对应数据片段之间可以存在一对一关系。直接类型的标识符可以是签名,例如散列值,或者可以是传送源标识符,例如URI。
在步骤710,将占位符类型的标识符添加至描述文件。这可以在描述文件产生期间实现,例如由关于图2和3描述的描述文件产生器实现。然而,还可以利用占位符类型的标识符来补充已有描述文件,这可以通过接收具有直接类型的标识符的描述文件作为输入的专用个体化组件来实现。根据实施例,占位符类型的标识符具有与直接类型的标识符相同的格式。例如,如果直接类型的标识符是签名,则占位符类型的标识符可以是伪签名。此外,如果直接类型的标识符是传送源标识符,例如URI,则占位符类型的标识符可以是伪传送源标识符,例如伪URI。占位符类型的标识符与个体化数据片段的描述数据相关联。根据数据实体要传送所至的接收方,描述数据可以具有不同类型。因此,典型地,占位符类型的标识符与特定内容或类型的个体化数据片段不具有一对一关系。
在步骤720,针对第一接收方提供第一类型的描述数据。在步骤730,针对第二接收方提供第二类型的描述数据。通过针对第一和第二接收方提供不同类型的描述数据,描述数据可以根据预期接收方,引用不同类型或内容的个体化数据片段。
步骤710、720和730可以均由描述文件产生器的个体逻辑执行。然而,步骤720和730还可以由与描述文件产生器分离提供的个体化逻辑来执行,或者甚至可以手动执行(例如由网络运营商执行)。这可以通过将与占位符类型的标识符相关联的描述数据存储在预定义位置(即在描述文件内或与描述文件分离)来实现。此外,这可以通过控制接收方至不同类型的个体化数据片段的映射来实现。
因此,图7的方法的不同步骤可以在不同设备中实现。例如,在描述文件产生器内的方法实现可以包括步骤710,但不包括步骤720和730。此外,与描述文件产生器分离的方法实现可以包括步骤720和730,但不包括步骤710。
图8示出了用于示意性示出根据本发明实施例的另一方法的流程图。图8的方法的目的在于基于描述文件来接收数据。再次,该方法可以实现上述个体化构思。该方法的至少一部分可以在上述接收设备(即关于图6解释的接收设备450)中执行。
在步骤810,接收数据实体的描述文件。该描述文件包括至少一个标识符。该标识符可以是与数据实体的对应数据片段相关联的直接类型,或者与个体化数据片段的描述数据相关联的占位符类型。描述文件、直接类型的标识符以及占位符类型的标识符可以对应于上述描述文件、直接类型的标识符以及占位符类型的标识符,例如可以是关于图1解释的描述文件100和标识符。直接类型的标识符可以是签名,例如散列值,或者可以是传送源标识符,例如URI。占位符类型的标识符可以具有相同的格式,例如可以是伪签名或伪传送源标识符。描述文件可以从描述文件产生器直接接收,或者可以经由中间元件(例如经由将占位符类型的标识符添加至描述文件和/或将与占位符类型的标识符相关联的描述数据添加至描述文件的个体化逻辑)接收。
在步骤820,确定标识符是否是占位符类型。如果描述文件包括多个标识符,则对每个标识符执行确定。
在步骤830,如果标识符是占位符类型,则检索与占位符类型的标识符相关联的描述数据。如关于图1所解释的,描述数据可以包括与接收方相对应的特定类型的个体化数据片段的标识符。例如,描述数据可以包括特定类型的个体化数据片段的签名或特定类型的个体化数据片段的传送源标识符。描述数据可以从描述文件内的预定义位置检索。此外,描述数据可以从与描述文件分离的位置(例如从补充描述文件的附加文件)或从任何其他合适存储位置(例如从由URL标识的特定网络位置)检索。
在步骤840,基于描述数据来检索个体化数据片段。这可以涉及接收个体化数据片段和基于描述数据中的签名来验证个体化数据片段。此外,这可以涉及使用描述数据中包括的传送源标识符来请求个体化数据片段。
图8的方法可以由接收设备中的客户端(例如关于图2,3或5解释的客户端)的占位符逻辑来执行。然而,应理解,该方法的一些部分可以由网络设备(例如关于图2和3解释的项目存储库)中的占位符逻辑来执行。例如,在一些实施例中,步骤820、830和840中的至少一部分可以由这种技术网络的占位符逻辑来执行。
图9A和9B示出了在根据BitTorrent协议的数据通信中使用的描述文件的示例,即torrent文件的示例。
根据BitTorrent协议,存在对传输内容的完整性进行检查的两个主要级别。
第一级专用于描述文件的完整性。它包括验证描述文件的主要部分,该主要部分包含数据片段的规则长度、片段的散列、其数目、要重建的文件(f)的大小,其名称和目录结构等等。
描述文件的主要部分包括关于要接收什么的信息,而描述文件的其他部分包括如何接收或现在的信息,例如通过提供一个或多个跟踪URL、跟踪协议、关于谁创建了描述文件、描述文件何时产生、作者的人类可读共性等等的信息。
根据BitTorrent协议,描述文件的主要部分的足迹(即SHA1散列值)构成描述文件的签名。该签名用于验证描述文件的完整性。
另一完整性检查在获取数据片段时进行:计算接收数据片段的SHA1散列值,并将其与根据描述文件的主要部分应当接收的散列值进行比较。
关于图1至8解释的个体化的构思允许不改变描述文件的主要部分,同时仍能够向不同接收方传送个体化内容。
应当注意,以下涉及实现基于BitTorrent协议的构思的描述基于BitTorrent协议的单文件模式。然而,应理解,这些构思也可以应用于BitTorrent协议的多文件模式。
在图9A和9B中,示意性示出了torrent文件的主要部分。该主要部分位于路由目录的信息部分,并包括表示为“长度”、“名称”、“片段长度”和“片段”的字段。字段“长度”以字节为单位定义要传送的文件的长度。字段“名称”定义文件的建议名称。字段“片段长度”以字节为单位定义片段长度。字段“片段”包括由20字节SHA1散列值的连接组成的串。针对文件的每个片段提供一个散列值。因此,字段“片段”包括字节串。
图9A和9B的示例假定:文件具有“XXXXX”的长度,例如11264字节;文件名称为“YYYYY”;片段长度为“ZZZZ”,例如1024。此外,假定存在主要内容的10个片段,表示为P1,P2,...,P10,具有对应散列值SHA(P1),SHA1(P2),...,SHA1(P10)。此外,图9A和9B的描述文件在字段“片段”中包括与个体化片段B或G分别相关联的散列值SH1(B)或SH(G)。例如,如果文件对应于电影,则该个体化片段可以对应于广告。简单起见,假定在一个片段中提供广告。然而,还可以在两个或更多片段中提供广告。此外,图9A和图9B的示例假定针对每个目标组的个体化片段(例如广告)不同。例如,片段B以少男为目标,片段G以少女为目标。因此,图9A所示的文件将属于少男的目标组,而图9B的描述文件将属于少女的目标组。
如上所述,根据BitTorrent协议,描述文件的主要部分(即“信息”部分)中的条目形成描述文件的签名的基础,也称为“信息散列”。因此,签名仅取决于图9A和9B所示的字段。
然而,从图9A和9B可以看到,对于图9A和9B的两个描述文件,信息散列将不同。因此,在BitTorrent协议中,这些描述文件将被视为引用完全不同的内容。提供电影的“男生版”的对等体将不对“女生版”产生贡献。
图10示出了根据这里解释的构思的描述文件的示例。可以看到,“信息”部分总体上类似于图9A和9B的描述文件的“信息”部分。然而,在字段“片段”中,不存在个体化数据片段(即片段“B”或片段“G”)的散列值,而是仅有占位符(表示为PH)。因此,利用可以用作对所有目标组公共的符号链接的占位符来替代在图9A和9B之间改变的描述文件的部分(也可以称为动态部分)。
占位符PH,作为上述占位符类型的标识符的一个示例,具有与其他片段签名相同的长度,例如根据BitTorrent协议的20字节。占位符PH可以一次固定,例如在标准中定义。例如,潜在占位符可以是“ericsson ads P2Psolution”的SHA1散列值[4d622cad7ba532e8defe3d60e2bf75a2e2f369c]。典型地,占位符PH将被确定为使得避免与片段的签名混淆。由于占位符PH不是根据特定数据内容计算的散列值,其也可以称为伪签名或伪签名。
因此,当客户端想要基于占位符PH来取得片段时,客户端知道:不应使用占位符PH来验证片段的完整性,该片段不是主要内容的一部分,关于该片段的任何信息应当在别处检查(例如基于torrent文件自身中来来自特殊主机或对等体的扩展),该片段在较小的组内可用,通常不能从所有对等体取得。
通过图11的流程图示意性示出了客户端实现的过程的示例。
在步骤1010,客户端确定要取得片段A。
在步骤1020,客户端得到片段A的签名,表示为SIG(A)。
在步骤1030,确定片段A的签名是否是占位符。如果不是,则过程继续至步骤1040,其中以与根据BitTorrent协议的经典行为相对应的传统方式检索与该签名相对应的片段。
如果在步骤1030确定片段A的签名是占位符,则过程继续至步骤1050。在步骤1050,客户端得到片段的描述(即描述数据),描述可以包括在描述文件中,例如包括在主要部分之外的任何扩展中。此外,或作为备选,还可以将动态片段的描述存储在另一主机中并且远程访问。
在步骤1060,请求片段,并在步骤1060接收片段。在步骤1080,确定片段有效,这可以基于在步骤1050获得的片段描述中的签名来实现。这里应注意,步骤1080是可选的。例如,如果完全信任发送片段的主机,则可以省略完整性控制。例如,如果片段对应于广告代理直接提供的广告而不存在对等体之间的任何共享,则可以采用这种方案。
过程在步骤1090处结束。
请求片段的步骤1060可以以不同方式实现。以下讨论3种选择。然而应理解,这些选择仅是示例,而不覆盖请求片段的所有可能性。
根据第一选择,用户验证片段的完整性,如果片段无效,则从另一对等体或用户取得片段。该方案提供了在客户端侧和在BitTorrent跟踪器处的较低实现复杂度。
第二选择基于组标识(ID)交换。例如,每个用户或对等体可以在经典消息或新类型消息中发送其组ID。按照这种方式,对等体可以知道预期接收相同类型的个人化内容的一组其他对等体。因此,当用户需要取得个人化内容(例如广告)时,只能使用其组的对等体作为检索个人化内容的源。
根据第三选择,跟踪器(作为提供要与之共享片段的对等体的主机)知道对等体的组ID。当用户请求对等体集合时,跟踪器向用户提供其自身组内的特定部分的对等体。这些对等体可以具有特殊标记,用户可以使用该特殊标记来找到对等体。作为备选,用户可以基于反复试验方案来找到其组的对等体,这可以类似于上述第一选择中描述的方案。
图12示出了用于示意性示出根据本发明实施例用于实现对等体和片段管理的过程的流程图。
在步骤1110,获得对等体列表。该对等体列表包含对等体,可以从所述对等体请求个体化内容。例如,客户端可以根据BitTorrent协议从跟踪器获得对等体列表。
在步骤1120,检查列表是否为空。如果列表非空,则过程继续至步骤1130。如果列表为空,则方法继续至步骤1210。
在步骤1130,从列表中选择对等体,标记为“对等体X”。
在步骤1140,从所选对等体请求片段。如果已经从所选对等体接收到片段,则在步骤1150,检查片段是否有效。如果不效,则在步骤1170,从列表中移除所选对等体。如果在步骤1150确定片段有效,则过程可以在步骤1160结束。
在步骤1170从列表中移除所选对等体之后,过程通过重复步骤1120而继续,以确定列表是否为空。
在步骤1120确定列表为空之后,在步骤1210请求新对等体集合。
在步骤1220,接收具有新对等体集合的列表。
在步骤1230,检查用户是否知道属于其自身组的对等体,即预期接收相同类型的个人化内容的对等体。如果不知道,则方法返回步骤1120。
如果确定用户知道属于该组的对等体,则方法继续至步骤120,其中从列表中移除不属于该组的对等体。在从列表中移除不属于该组的对等体之后,方法返回步骤1120。
可以看到,图12所示的过程(可以用作图11的过程的一部分以检索个体化数据片段)允许高效管理对等体组,其中尝试从所述对等体检索个体化数据片段。
以上描述了允许将数据实体个体化传送至不同接收方的构思,例如将针对不同人或人群的不同广告包括在多媒体内容中,或者在不同时间点包括不同广告,而不影响可以共享并且仅一次存储的主要内容的分发。例如,这可以用于通过使用个体化广告而不是来自用户的支付来提供对“BitTorrent娱乐网”(其中用户必须按电影进行支付)的备选。此外,这些构思可以用于提供分发服务(例如Hulu)要使用的数据通信的备选方式,例如通过使用P2P类型的数据通信而不是纯流传输。此外,这些构思还允许基于流传输的数据通信的高效个体化。具体地,可以在不改变描述文件的情况下实现个人化,这允许在多播或广播信道上发送描述文件。此外,在一些场景中,上述构思还有助于获得对接收方对内容的使用的更好控制。例如,可以使用BitTorrent协议或另一P2P协议,在一个单体块中传送具有广告的多媒体文件,这使得与播放列表指向用于内容和广告片段的分离文件的方案相比,更加难以篡改该内容(例如跳过广告)。此外,这些构思提供了通过目标广告来商用化P2P网络的可能性。
应理解,上述解释预期提供对这些构思的更好理解,并且能够进行各种修改。例如,除了上述BitTorrent协议和HTTP直播流传输协议的示例之外,可以与不同类型的通信协议相结合来使用这些构思。此外,这些构思可以应用于各种用途。例如,除了分发多媒体内容之外,这些构思可以应用于以个体化方式分发软件。
占位符类型的标识符可以用作对各种类型的个体化内容的总体引用,有时还用作对主要内容的片段的引用。此外,占位符类型的标识符可以用作对所有预期接收方相同的内容片段的引用,但是与主要内容的片段不同。例如,在BitTorrent场景中,其中主要内容的片段具有相同特性(例如大小),占位符类型的标识符可以用于引用具有不同特性的片段。这种使用的一个示例是使用占位符类型的标识符作为对另一torrent文件的引用。在使用占位符类型的标识符作为对所有接收方公共但是不同于“经典”片段的一个或多个片段的引用的该示例或其他示例中,可以将与这些片段相关的描述数据置于torrent文件的信息部分中,这改进了鲁棒性。
此外,这些构思可以应用于各种类型的通信网络内,包括移动通信网络、有线通信网络、基于因特网的通信网络、或基于内网的通信网络。此外,存在用于实现这里描述的设备和组件的功能的各种可能性。例如,这些功能可以至少部分由处理器或专用硬件执行的软件来实现。
Claims (19)
1.一种基于描述文件(100)将数据实体(200)传送至至少第一接收方和第二接收方的方法,
其中,描述文件(100)包括与数据实体(200)的对应数据片段(210)相关联的至少一个直接类型的标识符,
其中,所述方法包括:
将占位符类型的标识符添加至描述文件(100),所述占位符类型的标识符与个体化数据片段(220)的描述数据(120)相关联,针对第一接收方提供第一类型的描述数据(120),针对第二接收方提供第二类型的描述数据(120),第一类型的描述数据(120)不同于第二类型的描述数据(120)。
2.一种基于描述文件(100)将数据实体(200)传送至至少第一接收方和第二接收方的方法,
其中,描述文件(100)包括与数据实体(200)的对应数据片段(210)相关联的至少一个直接类型的标识符以及与个体化数据片段(220)的描述数据(120)相关联的占位符类型的标识符,
其中,所述方法包括:
针对第一接收方提供第一类型的描述数据(120),以及
针对第二接收方提供第二类型的描述数据(120),第一类型的描述数据(120)不同于第二类型的描述数据(120)。
3.根据权利要求1或2所述的方法,包括:
在描述文件(100)中提供描述数据(120)的至少一部分。
4.根据之前任一权利要求所述的方法,包括:
与描述文件(100)分离地提供描述数据(120)的至少一部分。
5.根据之前任一权利要求所述的方法,
其中,通过将描述数据(120)存储在预定义位置,将描述数据(120)与占位符类型的标识符相关联。
6.根据之前任一权利要求所述的方法,
其中,所述至少一个直接类型的标识符包括相关联数据片段(210)的签名,所述占位符类型的标识符包括伪签名,以及
个体化数据片段(220)的描述数据(120)包括个体化数据片段(220)的签名。
7.根据权利要求6所述的方法,
其中,描述文件(100)是根据BitTorrent协议的torrent文件。
8.根据之前任一权利要求所述的方法,
其中,所述至少一个直接类型的标识符包括相关联数据片段(210)的传送源标识符,所述占位符类型的标识符包括伪传送源标识符,以及
个体化数据片段(220)的描述数据(120)包括个体化数据片段(220)的传送源标识符。
9.根据权利要求8所述的方法,
其中,描述文件(100)是根据HTTP直播流传输协议的播放列表。
10.根据之前任一权利要求所述的方法,包括:
针对第一接收方提供个体化数据片段(220)的第一内容;以及
针对第二接收方提供个体化数据片段(220)的第二内容,所述第一内容不同于所述第二内容。
11.一种基于描述文件(100)来传送数据实体(200)的方法,
其中,所述描述文件(100)包括至少一个标识符,所述标识符是与数据实体(200)的对应数据片段(210)相关联的直接类型的,或者是与个体化数据片段(220)的描述数据(120)相关联的占位符类型的,
其中,所述方法包括:
如果标识符是占位符类型的,则检索个体化数据片段(220)的相关联描述数据(120);以及基于检索的描述数据(120)来检索个体化数据片段(220)。
12.根据权利要求11所述的方法,包括:
如果标识符是直接类型的,则基于标识符来检索相关联数据片段(210)。
13.根据权利要求12所述的方法,
其中,直接类型的标识符包括相关联数据片段(210)的签名;以及
占位符类型的标识符包括伪签名,以及
个体化数据片段(220)的描述数据(120)包括个体化数据片段(220)的签名。
14.根据权利要求13所述的方法,
其中,描述文件(100)是根据BitTorrent协议的torrent文件。
15.根据权利要求12所述的方法,
其中,直接类型的标识符包括相关联数据片段(210)的传送源标识符,占位符类型的标识符包括伪传送源标识符,以及
个体化数据片段(220)的描述数据(120)包括个体化数据片段(220)的传送源标识符。
16.根据权利要求11至15中任一项所述的方法,
其中,描述文件(100)是根据HTTP直播流传输协议的播放列表。
17.一种设备,包括:
个体化逻辑(414),被配置为根据权利要求1至10中任一项所述的方法来操作。
18.根据权利要求17所述的设备,
其中,所述设备包括:描述文件产生器(530;630),被配置为产生描述文件(100)。
19.一种设备,包括:
占位符逻辑(456),被配置为根据权利要求11至16中任一项所述的方法来操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US26434209P | 2009-11-25 | 2009-11-25 | |
US61/264,342 | 2009-11-25 | ||
PCT/EP2010/051445 WO2011063995A1 (en) | 2009-11-25 | 2010-02-05 | Individualized data communication on the basis of a descriptive file |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102630378A true CN102630378A (zh) | 2012-08-08 |
CN102630378B CN102630378B (zh) | 2015-09-09 |
Family
ID=42061471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080053559.0A Active CN102630378B (zh) | 2009-11-25 | 2010-02-05 | 基于描述文件的个体化数据通信方法及设备 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9319461B2 (zh) |
EP (1) | EP2504774A1 (zh) |
JP (1) | JP5442131B2 (zh) |
KR (1) | KR101669312B1 (zh) |
CN (1) | CN102630378B (zh) |
BR (1) | BR112012012390A2 (zh) |
WO (2) | WO2011063995A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107257495A (zh) * | 2012-12-10 | 2017-10-17 | 佳能株式会社 | 信息处理装置及其控制方法 |
CN109347763A (zh) * | 2018-09-11 | 2019-02-15 | 北京邮电大学 | 一种基于数据队列长度的数据调度方法、装置及系统 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8542620B2 (en) | 2009-05-05 | 2013-09-24 | Qualcomm Incorporated | Dynamic energy saving mechanism for access points |
US8576761B1 (en) | 2009-09-18 | 2013-11-05 | Qualcomm Incorporated | Power save delivery mechanism for wireless communication traffic |
US8537733B1 (en) | 2010-02-12 | 2013-09-17 | Qualcomm Incorporated | Dynamic power mode switch in a wireless ad-hoc system |
US9311446B1 (en) | 2010-03-19 | 2016-04-12 | Qualcomm Incorporated | Multicast transmission for power management in an ad-hoc wireless system |
US8588156B1 (en) | 2010-04-27 | 2013-11-19 | Qualcomm Incorporated | Direct data communication in infrastructure mode in wireless communication systems |
US20120151089A1 (en) * | 2010-12-08 | 2012-06-14 | Atheros Communications, Inc. | Direct data communication in a peer-to-peer network |
US8611268B1 (en) | 2011-04-15 | 2013-12-17 | Qualcomm Incorporated | Access point power save mechanism for wireless communication systems |
US9049658B2 (en) | 2012-03-06 | 2015-06-02 | Qualcomm Incorporated | Power save mechanism for peer-to-peer communication networks |
US8959241B2 (en) * | 2012-07-23 | 2015-02-17 | Adobe Systems Incorporated | Method and apparatus for performing server-side splicing for live streaming media |
US9210470B2 (en) * | 2013-03-08 | 2015-12-08 | Verizon Patent And Licensing Inc. | User censoring of content delivery service streaming media |
US9977877B2 (en) * | 2013-03-19 | 2018-05-22 | Ip Squared Technologies Holding, Llc | System and method for terminating copyright infringement by BitTorrent users |
US10402545B2 (en) | 2013-03-19 | 2019-09-03 | Ip Squared Technologies Holding, Llc | Systems and methods for managing data assets associated with peer-to-peer networks |
US10599706B2 (en) | 2014-03-20 | 2020-03-24 | Gracenote Digital Ventures, Llc | Retrieving and playing out media content for a personalized playlist |
US10362094B2 (en) * | 2014-07-25 | 2019-07-23 | Gracenote Digital Ventures, Llc | Retrieval and playout of media content |
CN108964845B (zh) * | 2018-07-03 | 2021-04-16 | 网宿科技股份有限公司 | 一种获取bt资源信息的方法和设备 |
US11036688B2 (en) | 2019-01-15 | 2021-06-15 | Citrix Systems, Inc. | Sharing of data with applications |
US11057687B2 (en) * | 2019-11-14 | 2021-07-06 | Wurl Inc. | Auxiliary information in manifests |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR9807467B1 (pt) * | 1997-01-06 | 2010-11-16 | método e sistema para acompanhar o uso de rede de distribuição de mìdia televesiva. | |
US7028071B1 (en) * | 2000-01-28 | 2006-04-11 | Bycast Inc. | Content distribution system for generating content streams to suit different users and facilitating e-commerce transactions using broadcast content metadata |
US7076478B2 (en) * | 2001-06-26 | 2006-07-11 | Microsoft Corporation | Wrapper playlists on streaming media services |
US20030149975A1 (en) | 2002-02-05 | 2003-08-07 | Charles Eldering | Targeted advertising in on demand programming |
US7376624B2 (en) * | 2002-02-27 | 2008-05-20 | Imagineer Software, Inc. | Secure communication and real-time watermarking using mutating identifiers |
US6930598B2 (en) | 2002-05-16 | 2005-08-16 | Eugene S. Weiss | Home gateway server appliance |
DE10227165A1 (de) * | 2002-06-18 | 2004-01-29 | Siemens Ag | Verfahren und Anordnung zur Codierung bzw. Decodierung einer Folge digitaler Daten |
US7263560B2 (en) * | 2002-08-30 | 2007-08-28 | Sun Microsystems, Inc. | Decentralized peer-to-peer advertisement |
US7123696B2 (en) * | 2002-10-04 | 2006-10-17 | Frederick Lowe | Method and apparatus for generating and distributing personalized media clips |
US20040088193A1 (en) * | 2002-10-31 | 2004-05-06 | Konica Minolta Holdings, Inc. | Medical image photographing system and medical image photographing method |
US7734600B1 (en) | 2003-02-05 | 2010-06-08 | Michael Wise | Apparatus, method and system to implement an integrated data security layer |
US7233573B2 (en) | 2003-02-08 | 2007-06-19 | Hewlett-Packard Development Company, L.P. | Apparatus and method for receiving data from a network |
US7774495B2 (en) * | 2003-02-13 | 2010-08-10 | Oracle America, Inc, | Infrastructure for accessing a peer-to-peer network environment |
US7603464B2 (en) | 2003-06-04 | 2009-10-13 | Sony Computer Entertainment Inc. | Method and system for identifying available resources in a peer-to-peer network |
US7203967B2 (en) * | 2003-09-10 | 2007-04-10 | Qualcomm Incorporated | Methods and apparatus for content protection in a wireless network |
US20050183120A1 (en) * | 2004-01-13 | 2005-08-18 | Saurabh Jain | Multi-user personalized digital multimedia distribution methods and systems |
US20060041844A1 (en) * | 2004-08-19 | 2006-02-23 | Homiller Daniel P | Methods, devices, systems and computer program products for providing availability data associated with data files to users of a presence service |
US7165050B2 (en) | 2004-09-20 | 2007-01-16 | Aaron Marking | Media on demand via peering |
CN101194505B (zh) * | 2005-03-30 | 2016-09-14 | 乐威指南公司 | 用于富视频导航的系统和方法 |
US20070183342A1 (en) | 2006-02-06 | 2007-08-09 | Mediazone.Com, Inc. | Peer-to-peer broadcast management system |
KR20070093701A (ko) | 2006-03-15 | 2007-09-19 | 타임스페이스시스템(주) | 국가간 단문메시지 전달방법 |
US7613770B2 (en) * | 2006-06-30 | 2009-11-03 | Microsoft Corporation | On-demand file transfers for mass P2P file sharing |
US7558797B2 (en) * | 2006-06-30 | 2009-07-07 | Microsoft Corporation | Metadata structures for mass P2P file sharing |
US9008003B2 (en) * | 2006-12-08 | 2015-04-14 | Futurewei Technologies, Inc. | Method for negotiating the maximum resource for sharing in OFDMA-based communications system |
US7814521B2 (en) * | 2007-04-25 | 2010-10-12 | ATT Knowledge Venturers, L.P. | System and method for delivering personalized advertising data |
US20090089401A1 (en) * | 2007-10-01 | 2009-04-02 | Microsoft Corporation | Server-controlled distribution of media content |
US9843774B2 (en) | 2007-10-17 | 2017-12-12 | Excalibur Ip, Llc | System and method for implementing an ad management system for an extensible media player |
CN101562628B (zh) * | 2008-04-15 | 2012-08-22 | 北京易路联动技术有限公司 | 个性化数字媒体内容管理和发布的方法、系统及服务器 |
WO2009146720A1 (en) * | 2008-06-04 | 2009-12-10 | Telefonaktiebolaget L M Ericsson (Publ) | Method and device for content personalisation using file repair requests |
EP2148488A1 (en) | 2008-07-24 | 2010-01-27 | Irdeto Access B.V. | Peer-to-peer content distribution |
US7991906B2 (en) * | 2008-12-09 | 2011-08-02 | Hong Kong Applied Science And Technology Research Institute Co., Ltd. | Method of data request scheduling in peer-to-peer sharing networks |
US20100169458A1 (en) * | 2008-12-31 | 2010-07-01 | David Biderman | Real-Time or Near Real-Time Streaming |
US20100299687A1 (en) * | 2009-05-23 | 2010-11-25 | Adrian Bertino-Clarke | Peer-to-peer video content distribution |
US20130246352A1 (en) * | 2009-06-17 | 2013-09-19 | Joel R. Spurlock | System, method, and computer program product for generating a file signature based on file characteristics |
US8768323B2 (en) | 2009-06-23 | 2014-07-01 | Intel Corporation | Service discovery in a wireless network |
US8959155B1 (en) * | 2009-07-17 | 2015-02-17 | Aryaka Networks, Inc. | Data compression through redundancy removal in an application acceleration environment |
PL2497267T3 (pl) * | 2009-11-03 | 2015-02-27 | Ericsson Telefon Ab L M | Strumieniowanie z opcjonalną rozgłoszeniową transmisją segmentów danych |
-
2010
- 2010-02-05 JP JP2012540328A patent/JP5442131B2/ja not_active Expired - Fee Related
- 2010-02-05 EP EP10703453A patent/EP2504774A1/en not_active Ceased
- 2010-02-05 US US13/509,927 patent/US9319461B2/en not_active Expired - Fee Related
- 2010-02-05 KR KR1020127015855A patent/KR101669312B1/ko active IP Right Grant
- 2010-02-05 CN CN201080053559.0A patent/CN102630378B/zh active Active
- 2010-02-05 BR BR112012012390-4A patent/BR112012012390A2/pt not_active Application Discontinuation
- 2010-02-05 WO PCT/EP2010/051445 patent/WO2011063995A1/en active Application Filing
- 2010-03-29 WO PCT/EP2010/054131 patent/WO2011063997A1/en active Application Filing
- 2010-03-29 US US13/510,984 patent/US9277006B2/en not_active Expired - Fee Related
-
2016
- 2016-01-25 US US15/005,052 patent/US10320899B2/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107257495A (zh) * | 2012-12-10 | 2017-10-17 | 佳能株式会社 | 信息处理装置及其控制方法 |
CN109347763A (zh) * | 2018-09-11 | 2019-02-15 | 北京邮电大学 | 一种基于数据队列长度的数据调度方法、装置及系统 |
CN109347763B (zh) * | 2018-09-11 | 2021-11-05 | 北京邮电大学 | 一种基于数据队列长度的数据调度方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20160164966A1 (en) | 2016-06-09 |
CN102630378B (zh) | 2015-09-09 |
WO2011063995A1 (en) | 2011-06-03 |
EP2504774A1 (en) | 2012-10-03 |
BR112012012390A2 (pt) | 2020-11-03 |
US20130042016A1 (en) | 2013-02-14 |
US9277006B2 (en) | 2016-03-01 |
US10320899B2 (en) | 2019-06-11 |
KR20120103649A (ko) | 2012-09-19 |
JP5442131B2 (ja) | 2014-03-12 |
US20130204936A1 (en) | 2013-08-08 |
KR101669312B1 (ko) | 2016-10-25 |
JP2013512487A (ja) | 2013-04-11 |
US9319461B2 (en) | 2016-04-19 |
WO2011063997A1 (en) | 2011-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102630378B (zh) | 基于描述文件的个体化数据通信方法及设备 | |
CN109522330B (zh) | 基于区块链的云平台数据处理方法、装置、设备及介质 | |
Ahlgren et al. | Design considerations for a network of information | |
CN101409706B (zh) | 一种边缘网络中的数据分发方法、数据分发系统及相关设备 | |
KR101549803B1 (ko) | 피어-투-피어 콘텐츠 배포 시스템에서 피어-수신된 콘텐츠의 완전성 검증 | |
US10237075B2 (en) | Reconstructable content objects | |
US20070136476A1 (en) | Controlled peer-to-peer network | |
CN103297447B (zh) | 一种资源共享方法及其设备 | |
CN103957269A (zh) | 点对点p2p网络节点选择方法及点对点p2p重定向服务器 | |
US9699198B2 (en) | System and method for parallel secure content bootstrapping in content-centric networks | |
Anadiotis et al. | Information‐centric networking for multimedia, social and peer‐to‐peer communications | |
CN103731506B (zh) | 一种内容注入方法、第一业务服务节点和内容分发网络 | |
CN102098339A (zh) | 一种音频文件传输方法及其系统 | |
EP2504977B1 (en) | Peer-to-peer communication of non-common data | |
Anastasiades et al. | Information-centric communication in mobile and wireless networks | |
CN103686433A (zh) | 向p2p服务提供校验文件的方法和系统 | |
Bellavista et al. | Effective epidemic dissemination of multimedia metadata in Peer-to-Peer overlay networks: The Metis architecture and prototype | |
Lepalaan | Peer-to-peer content distribution | |
Lee et al. | A Study on the peer-group Management method for the U-Share service program based on the Peer-to-Peer Platform |
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 |