Patent ID: 7548948

Claim:
A method of facilitating a transfer of streaming media data between a server device, a proxy device, and a client device, the method comprising: receiving, at the proxy device, a first message from the server device, the first message comprising: a first portion containing data identifying a data structure type; a second portion containing data identifying a cache control directive to indicate that only a client device is allowed to cache streaming media content associated with the cache control directive, and further identifying one or more headers, the one or more headers including a streaming speed header to indicate a speed at which streaming media content is to be streamed, wherein the speed at which the streaming media is to be streamed is independent of an encoded bit rate of the streaming media content; and a third portion containing data identifying an end of the second portion in the data structure; based upon the cache control directive, determining that the proxy device is not allowed to cache the streaming media content; based upon the determination, transmitting the first message to the client device without caching the streaming media content at the proxy device; and sending, from the client device, a second message to the server device, wherein the second message provides details of user actions to the server, the second message comprising: a logging information header to indicate that a message body portion of the data structure includes logging information for communication to the server device, the logging information regarding playback of streaming media content from a cache at the client device, wherein the logging information comprises: an amount of time a streaming media player spent playing the streaming media content; an identification of the portions of the streaming media content that were played multiple times; an identification of the portions of the streaming media content that were skipped; a determination of whether playback of the streaming media content was paused; an identification of the point or points in the streaming media content that were paused; or an identification of a problem with a network connection between the server device and the client device.