# US 6,502,125 B1 · System and method for optimized storage and retrieval of data on a distributed computer network

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

- Number: US 6,502,125 B1
- Document ID: US6502125B1
- Status: Granted
- Kind: B1
- Application number: 09/635,289
- Filed: 2000-08-09
- Granted: 2002-12-31
- Earliest claimed: 1995-06-07
- Assignees: Akamai Technologies, Inc.
- Inventors: Brian Kenner; Arnold Karush
- Web page: https://patentgrep.com/patent/US6502125B1

## CPC

- H04L 41/509: {wherein the managed service relates to media content delivery, e.g. audio, video or TV}
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/70: of video data
- G06F 16/958: Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- H04L 41/0856: {by backing up or archiving configuration information}
- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 43/00: Arrangements for monitoring or testing data switching networks
- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04L 67/1008: based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30)
- H04L 67/101: based on network conditions
- H04L 67/1021: based on client or server locations
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04L 67/568: Storing data temporarily at an intermediate stage, e.g. caching
- H04L 67/60: Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70)
- H04N 7/17336: {Handling of requests in head-ends}
- H04N 21/2181: {comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers (distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS], H04L67/1097)}
- H04N 21/222: Secondary servers, e.g. proxy server, cable television Head-end {(provisioning of proxy services in data packet switching networks H04L67/56)}
- H04N 21/23106: {involving caching operations (prefetching while addressing of a memory level in which the access to the desired data or data block requires associative addressing means within memory systems or architectures G06F12/0862; caching at an intermediate stage in a data network H04L67/568)}
- 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/2385: Channel allocation (H04N21/266 takes precedence); Bandwidth allocation (H04N21/24 takes precedence {; allocation of channels according to the instantaneous demands of the users in time-division multiplex systems H04J3/1682; admission control, resource allocation in open networks H04L12/5692; arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896; negotiating bandwidth in wireless networks H04W28/16})
- H04N 21/2402: {Monitoring of the downstream path of the transmission network, e.g. bandwidth available (traffic monitoring in data switching networks H04L43/00; monitoring data switching networks utilization H04L43/0876)}
- H04N 21/2543: Billing {, e.g. for subscription services (payment schemes, architectures or protocols G06Q20/00; e-commerce G06Q30/00; arrangements for billing for the use of broadcast information or broadcast-related information H04H60/21)}
- H04N 21/25841: {involving the geographical location of the client (retrieval from the Internet by querying based on geographical locations G06F16/9537; arrangements for identifying locations of receiving stations in broadcast systems H04H60/51; location of the user terminal in data switching networks H04L67/52; services making use of the location of users or terminals in wireless networks H04W4/02; locating users or terminals in wireless networks H04W64/00)}
- H04N 21/2743: Video hosting of uploaded data from client
- H04N 21/2747: Remote storage of video programmes received via the downstream path, e.g. from the server
- H04N 21/4331: {Caching operations, e.g. of an advertisement for later insertion during playback}
- H04N 21/44209: {Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network (arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896)}
- H04N 21/44245: {Monitoring the upstream path of the transmission network, e.g. its availability, bandwidth}
- H04N 21/4622: {Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet (web site content organization and management for information retrieval from the Internet G06F16/958; transmission by internet of broadcast information H04H60/82; stock exchange data over packet-switching network H04L12/1804; push services including data channel over packet-switching network H04L12/1859)}
- H04N 21/4782: Web browsing {, e.g. WebTV}
- H04N 21/6125: {involving transmission via Internet (transmission by internet of broadcast information H04H60/82)}
- H04N 21/6543: for forcing some client operations, e.g. recording {(remote booting in general G06F9/4416)}
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L 43/0823: Errors, e.g. transmission errors
- H04L 43/0852: Delays
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- H04L 43/0888: Throughput
- H04L 43/10: Active monitoring, e.g. heartbeat, ping or trace-route
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 67/10015: {Access to distributed or replicated servers, e.g. using brokers}
- H04L 67/1012: based on compliance of requirements or conditions with available server resources
- H04L 69/329: in the application layer [OSI layer 7]
- Y10S 707/914: Video
- Y10S 707/916: Audio
- Y10S 707/917: Text
- Y10S 707/919: Geographic
- Y10S 707/959: Network
- Y10S 707/966: Distributed
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

A system and method for the optimized storage and retrieval of video data at distributed sites calls for the deployment of “Smart Mirror” sites throughout a network, each of which maintains a copy of certain data managed by the system. Every user is assigned to a specific delivery site based on an analysis of network performance with respect to each of the available delivery sites. Generalized network performance data is collected and stored to facilitate the selection of additional delivery sites and to ensure the preservation of improved performance in comparison to traditional networks.

## Claims

### Claim 1

A method of content delivery managed by a service provider on behalf of participating content providers in a distributed computer network, comprising:
locating delivery sites at given network locations, wherein a given delivery site supports content from one or more participating content providers and at least one of the given network locations is an Internet Point of Presence (PoP);
aggregating and maintaining network performance data; and
in response to a request for content being managed by the service provider, using the network performance data to associate the request with a preferred delivery site.

### Claim 2 (depends on 1)

The method of content delivery as described in claim 1 further including the step of:
delivering the content from the preferred delivery site.

### Claim 3 (depends on 2)

The method of content delivery as described in claim 2 wherein the preferred delivery site is located a shortest electronic distance from a client initiating the request for content.

### Claim 4 (depends on 1)

The method of content delivery as described in claim 1 wherein the network performance data is generated from a test selected from a set of tests that include: a ping test, a traceroute test, a reverse traceroute test, a dynamic traceroute test, a name server resolution delay test, a throughput test, a throughput variation test, an error rate test, a packet fragmentation test, and a capacity query test.

### Claim 5 (depends on 4)

The method of content delivery as described in claim 4 wherein a test is initiated from software executing on a given client machine.

### Claim 6

A method of content delivery managed by a service provider on behalf of participating content providers in a distributed computer network, comprising:
locating delivery sites at given network locations, wherein a given delivery site supports content from one or more participating content providers;
aggregating and maintaining network performance data, wherein the network performance data is generated by accumulating data from a plurality of tests, with each test selected from a set of tests that include: a ping test, a traceroute test, a reverse traceroute test, a dynamic traceroute test, a name server resolution delay test, a throughput test, a throughput variation test, an error rate test, a packet fragmentation test, and a capacity query;
using the network performance data to associate a given request with a preferred delivery site; and
delivering content from the preferred delivery site.

### Claim 7 (depends on 6)

The method as described in claim 6 wherein at least one of the given network locations is an Internet Point of Presence (PoP).

### Claim 8 (depends on 6)

The method as described in claim 6 wherein one or more of the given network locations are each an Internet Point of Presence (PoP).

### Claim 9 (depends on 6)

The method as described in claim 6 wherein the given request is a request for content managed by the service provider, and the using step identifies the preferred delivery site as a function of a particular IP address group from which the request for content originates.

### Claim 10

A method of content delivery managed by a service provider on behalf of participating content providers in a distributed computer network, comprising:
locating delivery sites at given network locations, wherein a given delivery site supports content from one or more participating content providers and at least one of the given network locations is an Internet Point of Presence (PoP);
aggregating and maintaining network performance data, wherein the network performance data is generated by accumulating data from a plurality of tests, with each test selected from a set of tests that include: a ping test, a traceroute test, a reverse traceroute test, a dynamic traceroute test, a name server resolution delay test, a throughput test, a throughput variation test, an error rate test, a packet fragmentation test, and a capacity query test;
in response to a request for content managed by the service provider, identifying a preferred delivery site as a function of a particular IP address group from which the request for content originates; and
delivering content from the preferred delivery site.
