# US 10,771,542 B2 · Network mapping in content delivery network

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

- Number: US 10,771,542 B2
- Document ID: US10771542B2
- Status: Granted
- Kind: B2
- Application number: 16/734,319
- Filed: 2020-01-04
- Published: 2020-05-07
- Granted: 2020-09-08
- Earliest claimed: 2016-05-19
- Assignees: Level 3 Communications, LLC
- Applicants: Level 3 Communications, LLC
- Inventors: Christopher Newton
- Web page: https://patentgrep.com/patent/US10771542B2

## CPC

- H04L 67/1036: Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers
- H04L 61/4511: using domain name system [DNS]
- H04L 67/1044: {Group management mechanisms (management of multicast group membership H04L12/185; reconfiguring of node membership in a computing system to eliminate errors G06F11/1425)}
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 67/2866: Architectures; Arrangements
- 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)
- H04L 67/1023: based on a hash applied to IP addresses or costs
- H04L 67/1029: using data related to the state of servers by a load balancer
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A computer-implemented method in a content delivery network (CDN) having multiple delivery servers. The CDN delivers content on behalf of at least one content provider. Distinct delivery servers are logically grouped into delivery server groups. One or more CDN name servers are associated with some of the delivery server groups. Network map data are determined using network data determined by the CDN name servers associated with at least some of the deliver server groups. The network data with respect to a CDN name server relative to a resolver is based on an estimated popularity of that CDN name server for that resolver. Responsive to a client request, including a hostname associated with a content provider, at least one CDN name server determines, using network map data, at least one delivery server to process the client request.

## Claims

### Claim 1

A computer-implemented method in a content delivery network (CDN), wherein said CDN comprises a plurality of delivery servers, and wherein said CDN delivers content on behalf of at least one content provider, the computer-implemented method comprising:
determining, by a particular CDN name server of one or more CDN name servers, an estimated popularity of the particular CDN name server for a particular resolver;
determining, based on the estimated popularity, network data with respect to the particular CDN name server relative to the particular resolver;
determining network map data using at least the network data from the particular CDN name server;
in response to a client request, at least one CDN name server of the one or more CDN name servers determining at least one delivery server of the plurality of delivery servers to process said client request, wherein said determining uses said network map data; and
providing said client with information about said at least one delivery server to process said client request.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1 further comprising:
updating said network map based on changes in said network data.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1 wherein said network data are also generated from monitoring agents located around the network.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1 wherein said particular resolver is separated from said one or more CDN name servers by a firewall that prevents unsolicited inbound connections from said CDN name servers to said particular resolver.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1
wherein said estimated popularity of said particular CDN name server for said particular resolver is based on one or more attempts by said resolver to resolve a particular hostname associated with a content provider.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5 wherein said estimated popularity of said particular CDN name server is determined by said particular CDN name server based on a time-to-live (TTL) value associated with said particular hostname in a domain name system (DNS) record for said particular hostname.

### Claim 7 (depends on 6)

The computer-implemented method of claim 6, wherein said particular CDN name server determines its estimated popularity based on a number of name resolution requests said particular CDN name server receives from said particular resolver, as a function of said TTL.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1 wherein said grouping of said distinct delivery servers is based on a physical location of said delivery servers.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8 wherein said associating of said one or more CDN name servers is based on said physical location of said delivery servers.

### Claim 10 (depends on 9)

The computer-implemented method of claim 9 wherein said one or more CDN name servers are co-located with corresponding physically co-located delivery servers.

### Claim 11 (depends on 10)

The computer-implemented method of claim 10 wherein said physically co-located delivery servers comprise a cluster.

### Claim 12 (depends on 1)

The computer-implemented method of claim 1 wherein said client request is made via a given resolver, and wherein, when said at least one CDN name server that determines that it is popular with respect to said given resolver, said at least one CDN name server provides said client with information about a cluster of co-located delivery servers.

### Claim 13

A system for providing a delivery server in a content delivery network (CDN), wherein said CDN comprises a plurality of delivery servers, and wherein said CDN delivers content on behalf of at least one content provider, the system comprising:
at least one processor;
memory, operatively connected to the at least one processor and containing instructions that, when executed, causes the system to perform a method, the method comprising:
determining, by a particular CDN name server of one or more CDN name servers, an estimated popularity of the particular CDN name server for a particular resolver;
determining, based on the estimated popularity, network data with respect to the particular CDN name server relative to the particular resolver;
determining network map data using at least the network data from the particular CDN name server;
in response to a client request, at least one CDN name server of the one or more CDN name servers determining at least one delivery server of the plurality of delivery servers to process said client request, wherein said determining uses said network map data; and
providing said client with information about said at least one delivery server to process said client request.

### Claim 14 (depends on 13)

The system of claim 13, wherein said estimated popularity of said particular CDN name server is determined by said particular CDN name server based on a time-to-live (TTL) value associated with said particular hostname in a domain name system (DNS) record for said particular hostname.

### Claim 15 (depends on 14)

The system of claim 14, wherein said particular CDN name server determines its estimated popularity based on a number of name resolution requests said particular CDN name server receives from said particular resolver, as a function of said TTL.

### Claim 16

A computer-implemented method in a content delivery network (CDN), wherein said CDN comprises a plurality of delivery servers, and wherein said CDN delivers content on behalf of at least one content provider, the computer-implemented method comprising:
determining, by a particular CDN name server of one or more CDN name servers, an estimated popularity of the particular CDN name server for a particular resolver, wherein said estimated popularity of said particular CDN name server is determined by said particular CDN name server based on a time-to-live (TTL) value associated with said particular hostname in a domain name system (DNS) record for said particular hostname;
determining, based on the estimated popularity, network data with respect to the particular CDN name server relative to the particular resolver;
determining network map data using at least the network data from the particular CDN name server;
in response to a client request, at least one CDN name server of the one or more CDN name servers determining at least one delivery server of the plurality of delivery servers to process said client request, wherein said determining uses said network map data; and
providing said client with information about said at least one delivery server to process said client request.
