IP Library Granted Patent US 11,050,819
Granted Patent B2
US 11,050,819 · App. 16/241,683 · Granted Jun 29, 2021

Latency-based routing and load balancing in a network

Inventors: Katherine E. Patterson (Mount Laurel, NJ); Nicholas C. Beenham (Swedesboro, NJ); Joy Mathew Elamthuruthy (Sicklerville, NJ)
Assignee: Tivo Corporation
H04L67/101H04L43/0852H04L67/1002G06F16/27
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 11,050,819
App. No.
16/241,683
Filed
Jan 7, 2019
Granted
Jun 29, 2021
Kind
B2
Art Unit
2446
USPC
709/226
Abstract

Methods and systems for load balancing are described. A network node may replicate content. A lag time may be determined. A data structure may be generated that comprises the lag time.

Claims (46)

1. A method comprising:

replicating, at a first network node of a plurality of network nodes, content from a second network node of the plurality of network nodes;

determining a first lag time, wherein the first lag time indicates a first length of time for the first network node to completely replicate the content from the second network node;

determining a second lag time, wherein the second lag time indicates a second length of time for a third network node to completely replicate the content from the second network node;

generating a first data structure comprising the first lag time and the second lag time; and transmitting, to a data manager, the first data structure.

2. The method of claim 1 , further comprising:

receiving, from the data manager, a request for a replication latency topology of the plurality of network nodes; and

sending, to the data manager based on the request for the replication latency topology, the first data structure comprising the first lag time and the second lag time.

3. The method of claim 1 , further comprising:

determining a third lag time, wherein the third lag time indicates a third length of time for the third network node to completely replicate content from the first network node; and

sending, to the data manager, a second data structure comprising the third lag time.

4. The method of claim 1 , wherein determining the second lag time comprises:

sending, to the second network node, a control signal; and

receiving, based on the control signal, from the second network node, data indicative of the second lag time.

5. The method of claim 1 , wherein determining the second lag time comprises receiving, from at least one of the second network node or the third network node, data indicative of the second lag time.

6. The method of claim 1 , further comprising:

determining, by the first network node, that the content from the first network node is instantiated at the first network node; and

sending, to at least one network node of the plurality of network nodes based on the content from the first network node that is instantiated, a control instruction.

7. The method of claim 1 , further comprising:

receiving a request for a service;

receiving, based on at least one of the first lag time or the second lag time satisfying a threshold, an indication to service the request for the service; and

servicing, based on at least one of the first lag time or the second lag time, the request for the service.

8. The method of claim 7 , wherein the request for the service comprises a request for a content item.

9. An apparatus comprising:

one or more processors; and

a memory storing processor executable instructions, that when executed by the one or more processors; causes the apparatus to:

replicate content from a first network node of a plurality of network nodes;

determine a first lag time, wherein the first lag time indicates a first length of time for the apparatus to completely replicate the content from the first network node;

determine a second lag time, wherein the second lag time indicates a second length of time for a second network node to completely replicate the content from the first network node;

generate a first data structure comprising the first lag time and the second lag time; and

transmit, to a data manager, the first data structure.

10. The apparatus of claim 9 , wherein the processor executable instructions, when executed by the one or more processors, further cause the apparatus to:

receive, from the data manager, a request for a replication latency topology of the plurality of network nodes; and

send, based on the request for the replication latency topology, to the data manager, the first data structure comprising the first lag time and the second lag time.

11. The apparatus of claim 9 , wherein the processor executable instructions, when executed by the one or more processors, further cause the apparatus to:

determine a third lag time, wherein the third lag time indicates a third length of time for the second network node to completely replicate the content from the first network node; and send, to the data manager, a second data structure comprising the third lag time.

12. The apparatus of claim 9 , wherein the processor executable instructions that, when executed by the one or more processors, cause the apparatus to determine the second lag time further cause the apparatus to:

send, to the first network node, a control signal; and

receive, based on the control signal, from the first network node, data indicative of the second lag time.

13. The apparatus of claim 9 , wherein the processor executable instructions that, when executed by the one or more processors, cause the apparatus to determine the second lag time further cause the apparatus to:

receive, from at least one of the first network node or the second network node, data indicative of the second lag time.

14. The apparatus of claim 9 , wherein the processor executable instructions, when executed by the one or more processors, further cause the apparatus to:

receive a request for a service;

receive, based on at least one of the first lag time or the second lag time satisfying a threshold, an indication to service the request for the service; and

service, based on at least one of the first lag time or the second lag time, the request for the service.

15. The apparatus of claim 14 , wherein the request for the service comprises a request for a content item.

Assignments (6)
CHANGE OF NAME Recorded Mar 31, 2026
From: ADEIA MEDIA HOLDINGS LLC
To: ADEIA MEDIA HOLDINGS INC.
Reel/Frame 075303/0980 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO CORPORATION
To: TIVO LLC
Reel/Frame 069083/0240 →
CHANGE OF NAME Recorded Oct 1, 2024
From: TIVO LLC
To: ADEIA MEDIA HOLDINGS LLC
Reel/Frame 069083/0318 →
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2020
From: PATTERSON, KATHERINE E.; BEENHAM, NICHOLAS C.; ELAMTHURUTHY, JOY MATHEW
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 054529/0636 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2020
From: COMCAST CABLE COMMUNICATIONS, LLC
To: TIVO CORPORATION
Reel/Frame 054588/0731 →