# US 7,613,818 B2 · Segment-based model of file accesses for streaming files

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,613,818 B2
- Document ID: US7613818B2
- Status: Granted
- Kind: B2
- Application number: 10/601,354
- Filed: 2003-06-23
- Published: 2004-12-23
- Granted: 2009-11-03
- Earliest claimed: 2003-06-23
- Assignees: Hewlett-Packard Development Company, L.P.
- Inventors: Ludmila Cherkasova; Wenting Tang
- Web page: https://patentgrep.com/patent/US7613818B2

## CPC

- H04N 7/17318: {Direct or substantially direct transmission and handling of requests}
- H04L 65/65: Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
- H04N 21/23109: {by placing content in organized collections, e.g. EPG data repository (details of retrieval of video data and associated meta data in video databases G06F16/739)}
- H04N 21/2396: {characterized by admission policies (admission control, resource allocation in open networks H04L12/5692; arrangements for network security using user profiles for access control H04L63/102; access security in wireless networks H04W12/08)}
- H04N 21/2407: {Monitoring of transmitted content, e.g. distribution time, number of downloads (arrangements for monitoring programmes for broadcast or for distribution combined with broadcast H04H20/14)}
- H04N 21/47202: {for requesting content on demand, e.g. video on demand}
- H04N 21/8456: {by decomposing the content in the time domain, e.g. in time segments}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system and method for modeling accesses of a streaming file are provided. In certain embodiments, the method comprises identifying, for a time interval of interest, at least one request received at a server for accessing a streaming file, and for each of the at least one request, determining a segment of the streaming file accessed during the time interval of interest. If multiple requests are identified for the streaming file during the time interval of interest, then determining, from the determined segments of the streaming file accessed by each of the multiple requests, at least one unique segment of the streaming file that was most recently accessed within the time interval of interest.

## Claims

### Claim 1

A method for modeling accesses of a streaming media file, the method comprising:
determining, for a time interval of interest, at least one unique segment of a streaming media file accessed during said time interval of interest by at least one client; and
creating a data structure representing the determined at least one unique segment of said streaming media file, the data structure created as a segment-based data structure having at least one data structure segment corresponding to the at least one unique segment of said streaming media file.

### Claim 2 (depends on 1)

The method of claim 1 wherein each of said at least one unique segment comprises a sequential portion of said streaming media file.

### Claim 3 (depends on 2)

The method of claim 2 wherein said data structure includes a timestamp for each of said at least one unique segment that identifies a time corresponding to a most recent access of said sequential portion.

### Claim 4 (depends on 1)

The method of claim 1 wherein said data structure includes corresponding timestamp of access for each of said at least one segment.

### Claim 5 (depends on 1)

The method of claim 1 wherein said determining at least one unique segment comprises:
determining if multiple accesses were made to said streaming media file during said time interval of interest; and
if multiple accesses were made to said streaming media file during said time interval of interest, then determining from the multiple accesses said at least one unique segment of said streaming media file.

### Claim 6 (depends on 1)

The method of claim 1 wherein said determining at least one unique segment comprises:
identifying, for said time interval of interest, at least one request received at a server for accessing said streaming media file;
for each of said at least one request, determining a segment of said streaming media file accessed during the time interval of interest; and
if multiple requests are identified for said streaming media file during said time interval of interest, then determining, from the determined segments of said streaming media file accessed by each of said multiple requests, said at least one unique segment of said streaming media file that was most recently accessed within said time interval of interest.

### Claim 7 (depends on 6)

The method of claim 6 wherein said determining said at least one unique segment comprises:
if multiple requests are identified, performing segment subtraction between the determined segments of said streaming media file accessed by the multiple requests.

### Claim 8 (depends on 1)

The method of claim 1 further comprising:
determining from said data structure content of memory of a server from which the streaming media file was served.

### Claim 9

A method for modeling accesses of a streaming file from a server, the method comprising:
identifying, for a time interval of interest, at least one request received at a server for accessing a streaming file;
for each of said at least one request, determining a segment of said streaming file accessed during the time interval of interest; and
if multiple requests are identified for said streaming file during said time interval of interest, then determining, from the determined segments of said streaming file accessed by each of said multiple requests, at least one unique segment of said streaming file that was most recently accessed within said time interval of interest.

### Claim 10 (depends on 9)

The method of claim 9 wherein said determining at least one unique segment of said streaming file that was most recently accessed within said time interval of interest comprises:
performing a segment subtraction operation between the determined segments of said streaming file accessed by each of said multiple requests.

### Claim 11 (depends on 9)

The method of claim 9 further comprising:
creating a data structure representing the determined at least one unique segment of said streaming file that was most recently accessed within said time interval of interest.

### Claim 12 (depends on 11)

The method of claim 11 further comprising:
maintaining said data structure for a plurality of streaming files available on said server.

### Claim 13 (depends on 9)

The method of claim 9 further comprising:
determining corresponding timestamp of a most recent access during said time interval of interest of each of said determined at least one unique segment of said streaming file.

### Claim 14 (depends on 13)

The method of claim 13 further comprising:
creating a data structure representing the determined at least one unique segment of said streaming file, wherein said data structure associates each of the at least one unique segment of said streaming file with its corresponding timestamp of its most recent access during said time interval of interest.

### Claim 15 (depends on 9)

The method of claim 9 further comprising:
for each of a plurality of streaming files available from said server
(a) identifying, for said time interval of interest, at least one request received at said server for accessing the streaming file,
(b) for each of said at least one request, determining a segment of the streaming file accessed during the time interval of interest, and
(c) if multiple requests are identified for the streaming file during said time interval of interest, then determining, from the determined segments of the streaming file accessed by each of those multiple requests, at least one unique segment of the streaming file that was most recently accessed within said time interval of interest.

### Claim 16 (depends on 9)

The method of claim 9 further comprising:
if only one request is identified for said streaming file during said time interval of interest, then determining a segment of said streaming file accessed by said one request as being a unique segment of said streaming file that was most recently accessed within said time interval of interest.

### Claim 17

A system comprising:
a media server to serve at least one streaming file to clients communicatively coupled thereto; and
access modeling logic to create a data structure for modeling accesses of said at least one streaming file during a time interval of interest by at least one of said clients, wherein said data structure includes, for each of said at least one streaming file accessed during said time interval of interest, information identifying at least one unique segment of the streaming file and information identifying a timestamp for each of said at least one unique segment corresponding to the most recent access of the segment during said time interval of interest.

### Claim 18 (depends on 17)

The system of claim 17 wherein said access modeling logic is to:
(a) identify, for said time interval of interest, at least one request received at said media server from a client for accessing one of said at least one streaming file,
(b) determining, for each of said at least one request received at said media server, a segment of said streaming file accessed by the request, and
(c) if multiple requests are identified for said streaming file during said time interval of interest, then determining, from the determined segments of said streaming file accessed by each of said multiple requests, said at least one unique segment of said streaming file.

### Claim 19 (depends on 18)

The system of claim 18 wherein said access modeling logic is further to determine corresponding timestamp of the most recent access of each of said determined at least one unique segment of said streaming file.

### Claim 20 (depends on 17)

The system of claim 17 wherein said access modeling logic is further to maintain said data structure for a plurality of streaming files available on said media server.

### Claim 21 (depends on 17)

The system of claim 17 wherein said access modeling logic is further to:
for each of a plurality of streaming files available from said media server
(a) identify, for said time interval of interest, at least one request received from a client at said media server for accessing the streaming file,
(b) for each of said at least one request, determine a segment of the streaming file accessed by such request, and
(c) if multiple requests are identified for the streaming file during said time interval of interest, then determine, from the determined segments of the streaming file accessed by each of those multiple requests, at least one unique segment of the streaming file that was most recently accessed within said time interval of interest.

### Claim 22 (depends on 17)

The system of claim 17 wherein each of said at least one unique segment comprises a sequential portion of the streaming file.

### Claim 23 (depends on 17)

The system of claim 17 wherein said access modeling logic comprises software code stored to a computer-readable medium.

### Claim 24

Computer-executable software code stored to a computer-readable medium, the computer-executable software code comprising:
code for identifying, for a time interval of interest, at least one request received at a server for accessing a streaming file;
code for determining, for each of said at least one request, a segment of said streaming file accessed during the time interval of interest; and
code for determining, if multiple requests are identified for said streaming file during said time interval of interest, at least one unique segment of said streaming file that was most recently accessed within said time interval of interest.

### Claim 25 (depends on 24)

The computer-executable software code of claim 24 further comprising:
code for identifying whether multiple requests were made for said streaming file during said time interval of interest.

### Claim 26 (depends on 25)

The computer-executable software code of claim 25 wherein if only one request is identified for said streaming file during said time interval of interest, then said code for determining at least one unique segment of said streaming file determining a segment of said streaming file accessed by said one request as being a unique segment of said streaming file that was most recently accessed within said time interval of interest.

### Claim 27 (depends on 24)

The computer-executable software code of claim 24 wherein said code for determining at least one unique segment comprises:
code for determining the at least one unique segment from the determined segments of said streaming file accessed by each of said multiple requests.

### Claim 28 (depends on 24)

The computer-executable software code of claim 24 wherein said code for determining at least one unique segment comprises:
code for performing segment subtraction between said multiple requests identified for said streaming file.

### Claim 29

A method of modeling streaming file accesses, said method comprising:
creating a segment-based data structure modeling streaming file accesses, wherein the data structure for a streaming file comprises
(a) identification of at least one unique segment of the streaming file that was accessed by at least one client of a media server, and
(b) identification of a corresponding timestamp of a most recent access of each of said at least one unique segment,
wherein said creating a segment-based data structure comprises:
determining all segments of said streaming file accessed by clients of a server during a time interval of interest;
determining corresponding timestamps of accesses of each segment; and
determining a most recent access of each segment.
