Client-side method for identifying an optimal server
First Claim
1. A method, operating in a content delivery network (CDN) having a set of CDN content servers, wherein content requests generated by end user client machines are associated to the set of CDN content servers using a content delivery network (CDN) map, and wherein an end user client machine has an associated media player, comprising:
- providing an end user client machine with a list of a set of CDN servers, wherein the set of CDN servers is identified by the CDN map;
serving a media stream to the end user client machine from a first CDN content server identified in the list;
as the media stream is being served to the end user client machine from the first CDN server, receiving, at each of a subset of the CDN servers, a given request issued from the end user client machine, and returning to the end user client machine a response to the given request;
receiving, for each of the subset of the CDN servers, a data structure that identifies a value indicating a time for the response to be returned to the end user client machine after issuing the given request; and
using the values to generate a modified CDN map.
0 Assignments
0 Petitions
Accused Products
Abstract
A client player performs a query to a nameserver against a network map of Internet traffic conditions. The query is made asking for a particular service (e.g., RTSP) via a particular protocol (TCP) in a particular domain. In response, the nameserver returns a set of one or more tokens, with each token defining a machine or, in the preferred embodiment, a group of machines, from which the player should seek to obtain the stream. The player may then optionally perform one or more tests to determine which of a set of servers provides a best quality of service for the stream. That server is then used to retrieve the stream. Periodically, the client player code repeats the query during stream playback to determine whether there is a better source for the stream. If a better source exists, the player performs a switch to the better stream source “on the fly” if appropriate to maintain and/or enhance the quality of service. Preferably, the client player publishes data identifying why it selected a particular server, and such data may be used to augment the network map used for subsequent request routing determinations.
67 Citations
9 Claims
-
1. A method, operating in a content delivery network (CDN) having a set of CDN content servers, wherein content requests generated by end user client machines are associated to the set of CDN content servers using a content delivery network (CDN) map, and wherein an end user client machine has an associated media player, comprising:
-
providing an end user client machine with a list of a set of CDN servers, wherein the set of CDN servers is identified by the CDN map; serving a media stream to the end user client machine from a first CDN content server identified in the list; as the media stream is being served to the end user client machine from the first CDN server, receiving, at each of a subset of the CDN servers, a given request issued from the end user client machine, and returning to the end user client machine a response to the given request; receiving, for each of the subset of the CDN servers, a data structure that identifies a value indicating a time for the response to be returned to the end user client machine after issuing the given request; and using the values to generate a modified CDN map. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
Specification