Distributed File System Consistency Mechanism Extension for Enabling Internet Video Broadcasting
First Claim
1. In a distributed file system, a method of registering an application'"'"'s request for notification of updates to a file, comprising:
- providing to the site at which the application is executing a file descriptor identifying the file for which the application requests notification of updates; and
requesting that any notification of an update include the data that is updated in the file.
0 Assignments
0 Petitions
Accused Products
Abstract
The consistency callback mechanisms employed by local file systems such as NTFS and distributed file systems such as DDS, NFS and CIFS are extended to provide a shared memory foundation for efficiently broadcasting real-time high definition video from a source object to large numbers of viewers via the Internet. Distributed applications such as video viewing client applications establish connections to a common distributed file system object, and then each application registers with the underlying distributed file system to receive notifications whenever the video source modifies the source object. The data required to update images maintained by viewing clients is included in notification messages. The distributed file system employs a network of proxy cache nodes. Proxy cache nodes receive notification messages (complete with image update data) and update their cached images of the source object and then retransmit the notification messages towards the viewing clients using IP multicast techniques. In this manner, the distributed file system'"'"'s consistency mechanism efficiently employs network resources to enable the real-time distribution of video content streams.
131 Citations
27 Claims
-
1. In a distributed file system, a method of registering an application'"'"'s request for notification of updates to a file, comprising:
-
providing to the site at which the application is executing a file descriptor identifying the file for which the application requests notification of updates; and requesting that any notification of an update include the data that is updated in the file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. In a distributed file system, a method of notifying sites of an update to a specified file, comprising:
-
determining that there has been an update to the file; determining the sites at which the file is currently being accessed; and delivering a notification message to each of the determined sites indicating that the file has been updated and containing the updated data from the file.
-
-
12. In a distributed file system, a method of notifying an application of an update to a specified file, comprising:
-
registering at the site at which an application is executing a descriptor identifying the file for which the application requests update notification; receiving at the site a notification message that an update to the file has occurred and the newly updated data in the file; delivering the notification to the application.
-
-
13. A method of communicating updates to a file located at a first site in a distributed file system to applications running at different sites in the distributed file system, comprising:
-
for each of a plurality of applications, providing to the site at which the application is running a file descriptor identifying the file for which the application requests notification of updates; for each file for which a file descriptor is provided, storing the request for update notification as extended attributes of the identified file that are handled in the same manner as the file'"'"'s regular attributes; receiving an update to the file; determining the sites at which the file is currently being accessed; delivering a notification message to each of the determined sites, the notification message indicating that an update has occurred and containing the newly updated data in the file; and at each site, delivering a notification and the newly updated data to the application that provided the file descriptor. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A method of broadcasting content located on a first site in a distributed file system to multiple applications running at a plurality of other sites, comprising:
-
for each of the plurality of applications, establishing through the site at which the application is running a connection to the first site or to an intermediate which is closer to the first site; for each intermediate site, establishing a connection to the first site or to another intermediate site until a connection to a source object located on the first site is established for each of the plurality of applications; returning to each of the applications an object identifier identifying the source object; buffering a copy of the source object at each site at which an application is running and at each intermediate site; for each of the plurality of applications, requesting an update notification whenever the source object is modified; determining when new data is written to the source object; whenever new data is written to the source object, providing an update notification to each of the plurality of applications by sending the update notification to each of the next level sites through which the plurality of applications are connected to the source object, the update notification including an indication of the new data written to the source object; and updating each buffered copy of the source object with the new data. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A method of processing an update notification received from a site one level closer to the source object, comprising:
-
receiving the update notification; and updating each buffered copy of the source object with the new data; and sending the update notification to each of the next level sites through which applications are connected to the source object, the update notification including an indication of the new data written to the source object. - View Dependent Claims (27)
-
Specification