IP Library › Granted Patent US 9,407,729
Granted Patent B2
US 9,407,729 · App. 14/750,644 · Granted Aug 2, 2016

Anycast transport protocol for content distribution networks

Inventors: Oliver Spatscheck (Randolph, NJ); Seungjoon Lee (Basking Ridge, NJ); Michael Rabinovich (Solon, OH); Jacobus E. Van der Merwe (Salt Lake City, UT)
Assignee: AT&T INTELLECTUAL PROPERTY I, L.P.
H04L67/42H04L67/1002
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,407,729
App. No.
14/750,644
Granted
Aug 2, 2016
Kind
B2
Abstract

A cache server for providing content includes a processor configured to receive a first datagram from a client system sent to an anycast address, send a response datagram to the client system in response to the first datagram, receive a request datagram from the client system sent to the anycast address, and send a batch of content datagrams to the client system. The first datagram includes a universal resource locator corresponding to the content. The response datagram includes a content identifier for the content. The request datagram includes the content identifier, an offset, and a bandwidth indicator. The batch of content datagrams includes a portion of the content starting at the offset.

Claims (31)

1. A system comprising:

a memory that stores instructions;

a processor that executes the instructions to perform operations, the operations comprising:

transmitting, in response to a first request datagram sent to an anycast internet protocol address, a content datagram to a client system, wherein the content datagram includes a portion of content;

receiving, for a next portion of the content, a second request datagram sent to the anycast internet protocol address, wherein the second request datagram is received from the client system, wherein the second request datagram includes a bandwidth indicator that is based on a recent bandwidth for the portion of the content from the content datagram and based on a timeout; and

transmitting, to the client system and in response to the second request datagram, a next content datagram including the next portion of the content.

2. The system of claim 1 , wherein the operations further comprise receiving, from the client system, the first request datagram sent to the anycast internet protocol address.

3. The system of claim 1 , wherein the operations further comprise transmitting the content datagram including the portion of the content, wherein portion of the content starts at an offset.

4. The system of claim 3 , wherein the operations further comprise transmitting the next content datagram including the next portion of the content, wherein next portion of the content starts at a next offset calculated based on the offset.

5. The system of claim 1 , wherein the operations further comprise resetting the second bandwidth indicator to a base rate when the timeout occurs.

6. The system of claim 1 , wherein the operations further comprise receiving a datagram sent to the anycast internet protocol address, wherein the datagram includes a universal resource locator.

7. The system of claim 6 , wherein the operations further comprise providing, to the client system and in response to the datagram, a content identifier for the content, wherein the content is represented by the universal resource locator.

8. The system of claim 7 , wherein the operations further comprise verifying, based on the content identifier, that the first request datagram was sent by the client system.

9. The system of claim 1 , wherein the operations further comprise verifying an authenticity of the bandwidth indicator based on a hash or bandwidth verification data.

10. The system of claim 1 , wherein the operations further comprise limiting a rate at which the content datagram is transmitted to the client system.

11. A method comprising:

transmitting, in response to a first request datagram sent to an anycast internet protocol address, a content datagram to a client system, wherein the content datagram includes a portion of content;

receiving, for a next portion of the content, a second request datagram sent to the anycast internet protocol address, wherein the second request datagram is received from the client system, wherein the second request datagram includes a bandwidth indicator that is based on a recent bandwidth for the portion of the content from the content datagram and based on a timeout; and

transmitting, to the client system and in response to the second request datagram, a next content datagram including the next portion of the content, wherein the next content datagram is transmitted by utilizing instructions from memory that are executed by a processor.

12. The method of claim 11 , further comprising calculating the recent bandwidth for the portion of the content from the content datagram.

13. The method of claim 11 , further comprising receiving, from the client system, the first request datagram sent to the anycast internet protocol address.

14. The method of claim 11 , further comprising transmitting the content datagram including the portion of the content, wherein portion of the content starts at an offset.

15. The method of claim 14 , further comprising transmitting the next content datagram including the next portion of the content, wherein next portion of the content starts at a next offset calculated based on the offset.

16. The method of claim 11 , further comprising receiving a datagram sent to the anycast internet protocol address, wherein the datagram includes a universal resource locator.

17. The method of claim 16 , further comprising providing, to the client system and in response to the datagram, a content identifier for the content, wherein the content is represented by the universal resource locator.

18. The method of claim 17 , further comprising verifying, based on the content identifier, that the first request datagram was sent by the client system.

19. The method of claim 11 , further comprising limiting a rate at which the next content datagram is transmitted to the client system.

20. A computer-readable device comprising instructions, which, when loaded and executed by a processor, cause the processor to perform operations, the operations comprising:

transmitting, in response to a first request datagram sent to an anycast internet protocol address, a content datagram to a client system, wherein the content datagram includes a portion of content;

receiving, for a next portion of the content, a second request datagram sent to the anycast internet protocol address, wherein the second request datagram is received from the client system, wherein the second request datagram includes a bandwidth indicator that is based on a recent bandwidth for the portion of the content from the content datagram and based on a timeout; and

transmitting, to the client system and in response to the second request datagram, a next content datagram including the next portion of the content.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2016
From: SPATSCHECK, OLIVER; LEE, SEUNGJOON; RABINOVICH, MICHAEL; VAN DER MERWE, JACOBUS
To: AT&T INTELLECTUAL PROPERTY I, L.P.
Reel/Frame 038550/0953 →
Continuity (4)
Continuation 14053825 · Oct 15, 2013
Continuation 12580861 · Oct 16, 2009
Provisional Application 61230050 · Jul 30, 2009
Related Publication 20150296053A1 · Oct 15, 2015