IP Library Granted Patent US 12,401,606
Granted Patent B2
US 12,401,606 · App. 17/322,358 · Granted Aug 26, 2025

Remote latency adjustment

Inventor: Anthony Manuel Veiga (Mount Holly, NJ)
Assignee: Comcast Cable Communications, LLC
H04L49/9005H04L47/2416H04L47/30
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 12,401,606
App. No.
17/322,358
Granted
Aug 26, 2025
Kind
B2
Abstract

A method and system may allow for adjusting network latency experienced by a user. A first computing device may send a request to adjust the latency experienced by a terminal associated with a user. The request may be received at a second computing device which may identify a buffer size for to the terminal associated with the user. A new buffer size may be determined and adjusted for the identified buffer based on the received request.

Claims (48)

1. A method comprising:

receiving, by a gateway, packets associated with an application executing on a user device different from the gateway;

determining, by the gateway and based on the executing of the application on the user device, a latency mode associated with the application;

adjusting, based on the determined latency mode, a buffer size for a buffer of the gateway, wherein the buffer is configured to store data associated with the application; and

sending, to the user device and from the size-adjusted buffer, additional packets associated with the application.

2. The method of claim 1 , further comprising:

determining, by the gateway and based on content of the packets, to change from a default latency mode associated with the application to the latency mode associated with the application.

3. The method of claim 2 , wherein the latency mode is associated with a latency range and is represented by a value between two thresholds of the latency range.

4. The method of claim 1 , wherein the determining the latency mode associated with the application comprises determining, based on a type of traffic associated with a portion of the packets, the latency mode associated with the application.

5. The method of claim 1 , wherein the determining the latency mode associated with the application comprises determining, based on a portion of content of the packets and additional information associated with the application, the buffer size.

6. A method comprising:

determining, by a computing device, based on content of packets associated with an application executing on a user device different from the computing device and based on additional information associated with the user device, to change from a default latency mode to a latency mode associated with the application;

determining, by the computing device and based on the latency mode associated with the application, a buffer size for a buffer of a plurality of buffers of the computing device, wherein the buffer is configured to store data associated with the user device;

adjusting, based on the determined buffer size, a current size of the buffer; and

sending, to the user device and from the size-adjusted buffer, one or more additional packets associated with the application.

7. The method of claim 6 , wherein the additional information associated with the user device comprises channel information that identifies one or more channels for the user device.

8. The method of claim 6 , further comprising:

selecting a default buffer size based on the additional information associated with the user device.

9. The method of claim 6 , wherein the additional information associated with the user device comprises subscription package information associated with the user device.

10. The method of claim 6 , further comprising:

accessing user records to determine the additional information associated with the user device.

11. A gateway comprising:

one or more processors; and

memory storing instructions, when executed by the one or more processors, cause the gateway to:

receive packets associated with an application executing on a user device different from the gateway;

determine, based on the executing of the application on the user device, a latency mode associated with the application;

adjust, based on the determined latency mode, a buffer size for a buffer of the gateway, wherein the buffer is configured to store data associated with the application; and

send, to the user device and from the size-adjusted buffer, additional packets associated with the application.

12. The gateway of claim 11 , wherein the instructions, when executed by the one or more processors, cause the gateway to:

determine, based on content of the packets, to change from a default latency mode associated with the application to the latency mode associated with the application.

13. The gateway of claim 12 , wherein the latency mode is associated with a latency range and is represented by a value between two thresholds of the latency range.

14. The gateway of claim 11 , wherein the instructions, when executed by the one or more processors, cause the gateway to:

determine the latency mode associated with the application by determining, based on a type of traffic associated with the packets, the buffer size.

15. The gateway of claim 11 , wherein the instructions, when executed by the one or more processors, cause the gateway to:

determine, based on a portion of content of the packets and based on additional information associated with the user device, the buffer size.

16. An apparatus comprising:

one or more processors; and

memory storing instructions, when executed by the one or more processors, cause the apparatus to:

determine, based on content of packets associated with an application executing on a user device different from the apparatus and based on additional information associated with the user device, to change from a default latency mode to a latency mode associated with the application;

determine, based on the latency mode associated with the application, a buffer size for a buffer of a plurality of buffers of the apparatus, wherein the buffer is configured to store data associated with the user device;

adjust, based on the determined buffer size, a current size of the buffer; and

send, to the user device and from the size-adjusted buffer, one or more additional packets associated with the application.

17. The apparatus of claim 16 , wherein the additional information associated with the user device comprises channel information that identifies one or more channels for the user device.

18. The apparatus of claim 16 , wherein the instructions, when executed by the one or more processors, cause the apparatus to:

select a default buffer size based on the additional information associated with the user device.

19. The apparatus of claim 16 , wherein the additional information associated with the user device comprises subscription package information associated with the user device.

20. The apparatus of claim 16 , wherein the instructions, when executed by the one or more processors, cause the apparatus to:

access user records to determine the additional information associated with the user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 19, 2022
From: VEIGA, ANTHONY MANUEL
To: COMCAST CABLE COMMUNICATIONS, LLC
Reel/Frame 060544/0207 →
Continuity (3)
Continuation 15388932 · Dec 22, 2016
Continuation 13836104 · Mar 15, 2013
Related Publication 20210344620A1 · Nov 4, 2021
References Cited (75)
US 5732239A · Tobagi et al. · 1998 [cited by applicant]
US 6744767B1 · Chiu et al. · 2004 [cited by applicant]
US 6907042B1 · Oguchi · 2005 [cited by examiner]
US 6987731B2 · Shimada et al. · 2006 [cited by applicant]
US 7103008B2 · Greenblat et al. · 2006 [cited by applicant]
US 8397269B2 · Barrett et al. · 2013 [cited by applicant]
US 8458318B2 · Gulati et al. · 2013 [cited by applicant]
US 8630179B1 · Cotter · 2014 [cited by applicant]
US 8656224B2 · Duchenay et al. · 2014 [cited by applicant]
US 8656225B2 · Duchenay et al. · 2014 [cited by applicant]
US 8787163B1 · Nemavat · 2014 [cited by examiner]
US 8797877B1 · Perla et al. · 2014 [cited by applicant]
US 8849955B2 · Prahlad et al. · 2014 [cited by applicant]
US 8875208B1 · Abkairov et al. · 2014 [cited by applicant]
US 9565139B2 · Veiga · 2017 [cited by applicant]
US 9917779B2 · Pullen · 2018 [cited by applicant]
US 10043137B1 · Jorgensen et al. · 2018 [cited by applicant]
US 10122645B2 · Acharya · 2018 [cited by examiner]
US 20020009051A1 · Cloonan · 2002 [cited by applicant]
US 20020036981A1 · Park · 2002 [cited by applicant]
US 20020126699A1 · Cloonan et al. · 2002 [cited by applicant]
US 20030159008A1 · Sprangle · 2003 [cited by examiner]
US 20040034863A1 · Barrett et al. · 2004 [cited by applicant]
US 20040034864A1 · Barrett et al. · 2004 [cited by applicant]
US 20040163127A1 · Karaoguz et al. · 2004 [cited by applicant]
US 20050021716A1 · Adamczyk et al. · 2005 [cited by applicant]
US 20050180323A1 · Beightol et al. · 2005 [cited by applicant]
US 20060045138A1 · Black et al. · 2006 [cited by applicant]
US 20060075420A1 · Ludvig et al. · 2006 [cited by applicant]
US 20060174032A1 · Winchester et al. · 2006 [cited by applicant]
US 20060187970A1 · Lee et al. · 2006 [cited by applicant]
US 20070019618A1 · Shaffer et al. · 2007 [cited by applicant]
US 20070050711A1 · Walker · 2007 [cited by examiner]
US 20070118803A1 · Walker · 2007 [cited by examiner]
US 20070127466A1 · Seon · 2007 [cited by applicant]
US 20080069065A1 · Wu · 2008 [cited by examiner]
US 20080091851A1 · Sierra · 2008 [cited by examiner]
US 20080120389A1 · Bassali · 2008 [cited by examiner]
US 20090019238A1 · Allison · 2009 [cited by examiner]
US 20090092055A1 · Balasubramanian et al. · 2009 [cited by applicant]
US 20090119736A1 · Perlman et al. · 2009 [cited by applicant]
US 20090125961A1 · Perlman et al. · 2009 [cited by applicant]
US 20090158373A1 · Belz et al. · 2009 [cited by applicant]
US 20090285217A1 · Frink et al. · 2009 [cited by applicant]
US 20100129050A1 · Alexander et al. · 2010 [cited by applicant]
US 20100271944A1 · Michaelis et al. · 2010 [cited by applicant]
US 20100309783A1 · Howe · 2010 [cited by applicant]
US 20100329355A1 · Pandey et al. · 2010 [cited by applicant]
US 20110019552A1 · Karaoguz · 2011 [cited by examiner]
US 20110093628A1 · Bulgin et al. · 2011 [cited by applicant]
US 20110105080A1 · Haughn et al. · 2011 [cited by applicant]
US 20110255535A1 · Tinsman · 2011 [cited by applicant]
US 20110261146A1 · Kamath · 2011 [cited by examiner]
US 20120002109A1 · Kennedy · 2012 [cited by applicant]
US 20120042060A1 · Jackowski et al. · 2012 [cited by applicant]
US 20120066558A1 · Duchenay et al. · 2012 [cited by applicant]
US 20120082033A1 · Pongracz · 2012 [cited by examiner]
US 20120167140A1 · Park et al. · 2012 [cited by applicant]
US 20120213295A1 · Quere et al. · 2012 [cited by applicant]
US 20120216082A1 · Duchenay et al. · 2012 [cited by applicant]
US 20120297081A1 · Karlsson et al. · 2012 [cited by applicant]
US 20130051225A1 · Pullen · 2013 [cited by applicant]
US 20130077486A1 · Keith · 2013 [cited by applicant]
US 20130223538A1 · Wang et al. · 2013 [cited by applicant]
US 20130322255A1 · Dillon · 2013 [cited by examiner]
US 20130332284A1 · Faith · 2013 [cited by examiner]
US 20140032781A1 · Casey et al. · 2014 [cited by applicant]
US 20140149575A1 · Blackwell et al. · 2014 [cited by applicant]
US 20140241163A1 · Lee · 2014 [cited by examiner]
US 20150334153A1 · Koster et al. · 2015 [cited by applicant]
US 20160196577A1 · Reese · 2016 [cited by examiner]
European Search Report—EP14159882.1—Mailing date: Aug. 4, 2014. [cited by applicant]
European Office Action—EP Appl. 14159882.1—dated Jan. 7, 2016. [cited by applicant]
Apr. 8, 2020—Canadian Office Action—CA 2,845,989. [cited by applicant]
Feb. 2, 2021—Canadian Office Action—CA 2,845,989. [cited by applicant]