|Publication number||US20060064386 A1|
|Application number||US 10/945,623|
|Publication date||Mar 23, 2006|
|Filing date||Sep 20, 2004|
|Priority date||Sep 20, 2004|
|Also published as||US20100299458|
|Publication number||10945623, 945623, US 2006/0064386 A1, US 2006/064386 A1, US 20060064386 A1, US 20060064386A1, US 2006064386 A1, US 2006064386A1, US-A1-20060064386, US-A1-2006064386, US2006/0064386A1, US2006/064386A1, US20060064386 A1, US20060064386A1, US2006064386 A1, US2006064386A1|
|Original Assignee||Aaron Marking|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (56), Referenced by (10), Classifications (19), Legal Events (2)|
|External Links: USPTO, USPTO Assignment, Espacenet|
Delivery of media, such as video, music, and pictures, across networks can raise many issues. For example, sharing of digital files, such as music files, led to the situation that arose with Napster™. Owners of the content objected to having their properties being freely distributed with no payments being made to the owners.
Video on demand, such as through cable and satellite providers, may result in issues at the distribution, or head, end. The head end hardware must be extremely robust and the connectivity must be very high, as the content is delivered from one central location. This results in high start up costs, and continued operational costs.
Other types of media distribution, such as rentals, present their own issues. Rental stores must track the outstanding rentals and charge fees for overdue rentals. This decreases consumer satisfaction. Other media distributors, such as NetFlix, may suffer from high costs due to low consumer turnover of the media. Every copy of a movie owned by NetFlix has a cost associated with it. As the users are flat fee users, when a user holds on to one copy of a title for a long time, the profit made from that copy decreases.
Embodiments of the invention may be best understood by reading the disclosure with reference to the drawings, wherein:
As an alternative, a peering network uses each user device as a miniature server. The term ‘server’ as used here does not necessarily mean a separate, dedicated device as is implied by the prior art. A server could be one device upon which multiple functions are running, and so will be referred to here as a module. A media module and a license module may both be processes running on the same device, although they may be referred to separately here, for ease of discussion. Each miniature module such as 20, 22 and 24, shares storage and bandwidth resources. This mitigates the head end bandwidth and scaling problems.
As seen by examples such as Napster™ and Kazaa™, the ability to abuse the rights of the content owners is also enabled. Media license owners have come to view these types of networks with suspicion. Indeed, the very distributed nature of peering PC-based networks that allows the fast delivery of content also may make it vulnerable to hacking. There is no centralized server to authenticate users and validate the media being exchanged. Piracy becomes commonplace and the quality of the media varies greatly.
While transactions are centrally validated and initiated, it must be understood that there is also a large measure of anonymity. No user knows from where the content is coming, or to where it is being sent. Users will only know that they are receiving verified downloads and possibly sending content to other users.
For example, once device 32 requests a download of content, and the device has been validated by the media module 30, the content is downloaded to 32. Further on in the operation of the network, if device 34 requests a download and is verified, device 34 may receive the download from peer 32, at least in part. As the device 32 may be local to device 34, the peer download may occur more quickly than the download from the media module 30. As will be discussed in more detail further, there may be several peers similar to 32 that are transmitting data to peer 34.
The devices of
As mentioned previously one embodiment of the invention uses ‘shotgun’ downloading, where each media file desired by a user is divided into predefined segments, such as by time, and the segments are received from several different peers. In this manner, the bandwidth needed to download content in such a system is vastly reduced when compared to a traditional client/server download. For example, consider 10 users each desiring the same 10 Megabyte (MEG) download. This results in a requirement of 100 MEGs of bandwidth. Add on top of that an overhead value for transactional instructions. For ease of discussion, 100 kilobytes (100 K) will be assumed. The overall requirement is 2*100K*10, which equals 2 MEG, plus the 100 MEGs of data to be downloaded. The bandwidth necessary is therefore 102 MEG. The need for concurrent download capability such that each user is requesting their data at the same time places a large bandwidth load on the system.
In contrast, a shotgun download from peers that have previously received the file reduces the amount of bandwidth required. As can be seen in
The network diagrams of
Generally, the network has a media module 60 and a network of user media devices, such as set top box 62. The set top box would have storage for storing media content, a processor, a communications port to allow the processor to interact with the network, which may include exchange of data with other boxes on the network, and a media port to allow the processor to deliver the media content, such as a speaker port or a display port. The media module would then be operable to authenticate each device to allow it to receive content and control download of media to a requesting one of the devices, such as 62, wherein control includes an ability to direct other devices to transfer media content to the requesting device.
A license module 72 may exist in the network. It may maintain a database of decryption keys allowing the devices to decode the content delivered in encrypted form. The license module may track title usage in real-time to ensure that each license for each title stays within its limits. For example, there may be five available licenses for a particular title, and the license module would ensure that only five versions of the file were in use at any given time. It may also track the payouts to license holders.
A billing module 64 may administrate user accounts, track usage and ensure users are billed for their usage of the titles. The billing module may also allow electronic payment, etc., for the user accounts. The billing module may also take information from the license module and ensure that license holders are appropriately paid.
An advertisement module 70 works in conjunction with an advertisement propagation management database to propagate advertisements and other paid media files such as sponsored events and movies to the user devices. The advertisement module may also be referred to as an advertisement propagation management module. Similarly, the media module 60 may be referred to as a media propagation management module operating in conjunction with the media propagation management database 78.
The databases generally track locations, such as of the advertisement media or the content media, across the peered devices of the network. As mentioned above, the various modules may be layers within the databases.
The media module maintains encrypted copies of all of the titles. Early in a title life cycle, when not many devices have downloaded it, the media module will provide the copies of the media files as needed. Later in the life cycle, when enough copies have been propagated among the peers to allow peer downloads, the media module may maintain an archival copy.
There may also be a menu/interface module 68, which produces the user interfaces provided at the user device to allow the user to navigate the available content. This may also allow other services, such as e-mail, account management, etc. The menu/interface module may receive personalization of the menus and selections from a personalization database 76.
The personalization database 76 maintains a database record of user interface personalization data, selected preferences and usage history information. It may also allow multiple user profiles per customer account, such as for multiple users in a household. The user profiles may also allow parental controls, demographic targeting for advertisers and other tailored services. The personalization database may also provide information for billing, such as credit card selections, advertisement information for the advertisement module, etc.
The elements of the network may provide a peering network with all of its advantages, but there must also be some sort of protection in place for the rights holders. An authentication module 66 stores client account data and ensures that only authenticated devices are available as peers for other devices as well as for downloads from the media module. One of the first processes that will take place upon a user query for a title delivery is user authentication. An embodiment of this process is shown in flowchart form in
At 80, the authentication module receives a request from a user device, such as a set top box. At 82 the user device is verified. Verification may take many forms, but as the user device is a dedicated piece of hardware, a hardware solution may be most desirable, such as a hardware key, a smart card or a SIM card resident in the device.
At 84, the authentication module directs the menu/interface module to grant the user request and the menu/interface module initiates a secure session with the user device at 86. Generally, this process will take place for all transactions, as will be discussed in more detail further.
The personalization information for each user provides pinpoint demographic information. This may allow for a much higher level of content tailoring, both for media and advertising. This could be accomplished in the off hours, balancing the load on the network. An example of such a process is shown in flowchart form in
At 100, the personalization database may query the propagation management modules to request content to be propagated to a user device. At 102, the propagation management modules determine if peer copies exist. If peer copies exist, the peer copies are located and peer transmission is directed and monitored by the propagation management modules at 106. In the meantime, authentication is sent to the user device at 108, to ensure that the user device will allow the peers access.
If no peer copies of the desired content exist at 102, a download from the appropriate media or advertisement propagation module is requested at 110. The user device is contacted at 112, and authentication sent at 114. In either case, the download, either from peers or the media module, occurs at 116. Once the data is downloaded, the user device may cache a local copy to have it available for other peers as needed.
Downloading media content, as opposed to advertising content that is assumed to be license free as its download is for the benefit of the license owners, may require a license verification. During a media download, shown in flowchart form in
At 120, a user query for requested content is received. At that point, two processes occur. First, the existence of any peer copies that can be used for downloading is determined at 122 and the existence of an available license is determined at 140. Note that the term ‘free license’ does not imply free from costs, just that there is a license available to be put to use. If a license exists, a key is transmitted at 142 that allows the user device to decode the content when it is received, however it is received. If there is no license currently free to be given to the user device, the user request may be queued at 150 while the system waits for a license to become available, or other options may be presented to the user. Generally, the system will strive to ensure that enough licenses are available for multiple concurrent users. This may involve generation of licenses ‘on-the-fly’ by the license module, with the appropriate tracking for billing and accountability.
The license key may only be needed upon playback. It is possible, in this system, for the user device to begin playback during the download process. The playback device merely determines that it has enough content to begin playback that it will not ‘run out’ of content before more is downloaded. In this instance, the license transaction will occur for playback during download.
Alternatively, the license may not be required at a later time, when the user attempts playback. This is shown by the ‘playback’ path in
Returning to the download process, the content may be downloaded from the media module if it is an initial download. If no peer copy exists at 122, the download is authenticated to the user device at 130 and the file downloaded at 132. Once the file is downloaded, the user device verifies it to the media propagation management module so the module is aware that the user device may become an available peer for future downloads.
If peer copies exist, the media propagation management module may then determine connection speeds between the various peers and the user device at 124. The segments of the file to be downloaded may then be prioritized to allow the highest priority segments to be downloaded across the fastest connection at 126. The segments are then downloaded at 128. The user device then verifies the download at 134. During the downloading process, the user device may perform an analysis of the properties of the downloaded data, such as the compression rate and download rate, to determine when the user can begin experiencing the content while the remaining portions of it are still be downloaded.
In this manner, the advantages of a peer network are employed in a non-autonomous manner, allowing management of and accounting for license rights to media content. The network is scalable with the addition of a few additional modules and the easy addition of more peers, has relatively low start up costs and continued operation costs.
Thus, although there has been described to this point a particular embodiment for a method and apparatus for media on demand through a peering network, it is not intended that such specific references be considered as limitations upon the scope of this invention except in-so-far as set forth in the following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US5204897 *||Jul 14, 1992||Apr 20, 1993||Digital Equipment Corporation||Management interface for license management system|
|US5742757 *||May 30, 1996||Apr 21, 1998||Mitsubishi Semiconductor America, Inc.||Automatic software license manager|
|US5870543 *||Mar 11, 1997||Feb 9, 1999||Digital River, Inc.||System for preventing unauthorized copying of active software|
|US5956716 *||Jun 7, 1996||Sep 21, 1999||Intervu, Inc.||System and method for delivery of video data over a computer network|
|US6092195 *||Nov 14, 1997||Jul 18, 2000||Castlewood Systems, Inc.||Encryption of defects map|
|US6141010 *||Jul 17, 1998||Oct 31, 2000||B. E. Technology, Llc||Computer interface method and apparatus with targeted advertising|
|US6253193 *||Dec 9, 1998||Jun 26, 2001||Intertrust Technologies Corporation||Systems and methods for the secure transaction management and electronic rights protection|
|US6516337 *||Oct 14, 1999||Feb 4, 2003||Arcessa, Inc.||Sending to a central indexing site meta data or signatures from objects on a computer network|
|US6577324 *||Jun 7, 1995||Jun 10, 2003||Compaq Information Technologies Group, L.P.||Video and audio multimedia pop-up documentation by performing selected functions on selected topics|
|US6701528 *||Jan 26, 2000||Mar 2, 2004||Hughes Electronics Corporation||Virtual video on demand using multiple encrypted video segments|
|US6904059 *||Mar 6, 2001||Jun 7, 2005||Microsoft Corporation||Adaptive queuing|
|US7027460 *||Dec 21, 2001||Apr 11, 2006||Intel Corporation||Method and system for customized television viewing using a peer-to-peer network|
|US7032000 *||Oct 17, 2003||Apr 18, 2006||Arcessa, Inc.||Peer-to-peer automated anonymous asynchronous file sharing|
|US7076468 *||Apr 27, 2001||Jul 11, 2006||Hillegass James C||Method and system for licensing digital works|
|US7103574 *||Apr 12, 1999||Sep 5, 2006||Microsoft Corporation||Enforcement architecture and method for digital rights management|
|US7155415 *||Apr 6, 2001||Dec 26, 2006||Movielink Llc||Secure digital content licensing system and method|
|US7181017 *||Mar 25, 2002||Feb 20, 2007||David Felsher||System and method for secure three-party communications|
|US7181620 *||Nov 9, 2001||Feb 20, 2007||Cisco Technology, Inc.||Method and apparatus providing secure initialization of network devices using a cryptographic key distribution approach|
|US7278165 *||Mar 18, 2003||Oct 2, 2007||Sony Corporation||Method and system for implementing digital rights management|
|US7290057 *||Aug 20, 2002||Oct 30, 2007||Microsoft Corporation||Media streaming of web content data|
|US7496540 *||Aug 19, 2003||Feb 24, 2009||Convergys Cmg Utah||System and method for securing digital content|
|US7584285 *||Jan 23, 2003||Sep 1, 2009||Hudson Michael D||Centralized selection of peers as media data sources in a dispersed peer network|
|US7594275 *||Oct 14, 2003||Sep 22, 2009||Microsoft Corporation||Digital rights management system|
|US7644172 *||Jun 24, 2002||Jan 5, 2010||Microsoft Corporation||Communicating via a connection between a streaming server and a client without breaking the connection|
|US7664109 *||Sep 3, 2004||Feb 16, 2010||Microsoft Corporation||System and method for distributed streaming of scalable media|
|US7716302 *||Jul 16, 2004||May 11, 2010||Canon Kabushiki Kaisha||Method of accessing and sharing a digital document in P2P communication network|
|US7725557 *||Jun 24, 2002||May 25, 2010||Microsoft Corporation||Client-side caching of streaming media content|
|US8037202 *||Oct 31, 2002||Oct 11, 2011||Oracle America, Inc.||Presence detection using mobile agents in peer-to-peer networks|
|US8321584 *||Sep 30, 2003||Nov 27, 2012||Ellacoya Networks, Inc.||Method and apparatus for offering preferred transport within a broadband subscriber network|
|US20020023248 *||Jan 19, 2001||Feb 21, 2002||Fujitsu Limited||Medium defect detection method and data storage apparatus|
|US20020049760 *||Jun 15, 2001||Apr 25, 2002||Flycode, Inc.||Technique for accessing information in a peer-to-peer network|
|US20030023427 *||Jul 26, 2001||Jan 30, 2003||Lionel Cassin||Devices, methods and a system for implementing a media content delivery and playback scheme|
|US20030046587 *||Jul 3, 2002||Mar 6, 2003||Satyam Bheemarasetti||Secure remote access using enterprise peer networks|
|US20030110503 *||Oct 25, 2002||Jun 12, 2003||Perkes Ronald M.||System, method and computer program product for presenting media to a user in a media on demand framework|
|US20030118014 *||Dec 21, 2001||Jun 26, 2003||Iyer Ravishankar R.||Method and system for customized television viewing using a peer-to-peer network|
|US20030140088 *||Jan 24, 2002||Jul 24, 2003||Robinson Scott H.||Context-based information processing|
|US20030145093 *||Nov 12, 2002||Jul 31, 2003||Elan Oren||System and method for peer-to-peer file exchange mechanism from multiple sources|
|US20030149670 *||Feb 5, 2002||Aug 7, 2003||Cronce Paul A.||Method and system for delivery of secure software license information|
|US20030163372 *||Dec 6, 2002||Aug 28, 2003||Kolsy Mohammed H.||Delivering content and advertisement|
|US20030236906 *||Jun 24, 2002||Dec 25, 2003||Klemets Anders E.||Client-side caching of streaming media content|
|US20030236907 *||Jun 24, 2002||Dec 25, 2003||Stewart James C.||Communicating via a connection between a streaming server and a client without breaking the connection|
|US20040003398 *||Jun 26, 2003||Jan 1, 2004||Donian Philip M.||Method and apparatus for the free licensing of digital media content|
|US20040024688 *||Nov 6, 2001||Feb 5, 2004||Depeng Bi||Digital content distribution and subscription system|
|US20040039834 *||Aug 20, 2002||Feb 26, 2004||Microsoft Corporation||Media streaming of web content data|
|US20040091114 *||Aug 25, 2003||May 13, 2004||Carter Ernst B.||Encrypting operating system|
|US20040193900 *||Mar 16, 2001||Sep 30, 2004||Mark Nair||System, method and apparatus for controlling the dissemination of digital works|
|US20040196981 *||May 2, 2003||Oct 7, 2004||Takehiko Nakano||Information processing device and method, information processing system, recording medium, and program|
|US20040199604 *||Sep 30, 2003||Oct 7, 2004||Dobbins Kurt A.||Method and system for tagging content for preferred transport|
|US20050010531 *||Jul 9, 2003||Jan 13, 2005||Kushalnagar Nandakishore R.||System and method for distributing digital rights management digital content in a controlled network ensuring digital rights|
|US20050015466 *||Oct 17, 2003||Jan 20, 2005||Tripp Gary W.||Peer-to-peer automated anonymous asynchronous file sharing|
|US20050050218 *||Sep 2, 2003||Mar 3, 2005||Microsoft Corporation||Video delivery workflow|
|US20050060745 *||Sep 15, 2003||Mar 17, 2005||Steven Riedl||System and method for advertisement delivery within a video time shifting architecture|
|US20050177624 *||Apr 30, 2004||Aug 11, 2005||Alio, Inc.||Distributed System and Methodology for Delivery of Media Content to Clients having Peer-to-peer Connectivity|
|US20050188214 *||Feb 23, 2004||Aug 25, 2005||Worley John S.||Authenticatable software modules|
|US20050204038 *||Mar 11, 2004||Sep 15, 2005||Alexander Medvinsky||Method and system for distributing data within a network|
|US20060007947 *||Jul 7, 2004||Jan 12, 2006||Jin Li||Efficient one-to-many content distribution in a peer-to-peer computer network|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7574240 *||May 13, 2005||Aug 11, 2009||Xilinx, Inc.||Power estimation for mobile devices|
|US7631098 *||Jun 8, 2004||Dec 8, 2009||International Business Machines Corporation||Method, system and program product for optimized concurrent data download within a grid computing environment|
|US7797721 *||May 8, 2006||Sep 14, 2010||Starz Entertainment Group, LLC||Multilevel bandwidth check|
|US7865611 *||Mar 19, 2009||Jan 4, 2011||Fujitsu Limited||Content delivery method and communication terminal apparatus|
|US7881315||Jun 27, 2006||Feb 1, 2011||Microsoft Corporation||Local peer-to-peer digital content distribution|
|US8332609||Sep 28, 2007||Dec 11, 2012||International Business Machines Corporation||Method, system and program product for storing downloadable content on a plurality of enterprise storage system (ESS) cells|
|US8782372||Sep 14, 2012||Jul 15, 2014||International Business Machines Corporation||Method, system and program product for storing downloadable content on a plurality of enterprise storage system (ESS) cells|
|US8863133 *||Jun 2, 2011||Oct 14, 2014||Microsoft Corporation||License management in a cluster environment|
|US20060031537 *||Jun 8, 2004||Feb 9, 2006||International Business Machines Corporation||Method, system and program product for optimized concurrent data download within a grid computing environment|
|US20120311591 *||Jun 2, 2011||Dec 6, 2012||Microsoft Corporation||License management in a cluster environment|
|Cooperative Classification||H04L67/108, H04L67/104, H04L67/06, H04L63/0428, H04L63/06, H04L63/065, H04K1/00, H04L2209/60, H04L9/321|
|European Classification||H04L29/08N9P3C1, H04L63/04B, H04L63/06, H04L63/06C, H04L9/08, H04K1/00, H04L29/08N9P, H04L29/08N5|
|Feb 2, 2012||AS||Assignment|
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MARKING, AARON;REEL/FRAME:027642/0828
Owner name: GRISTMILL VENTURES, LLC, CALIFORNIA
Effective date: 20120201
|Jun 13, 2012||AS||Assignment|
Owner name: SECURE CONTENT STORAGE ASSOCIATION LLC, CALIFORNIA
Effective date: 20120229
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GRISTMILL VENTURES LLC;REEL/FRAME:028371/0054