IP Library › Granted Patent US 12,652,426
Granted Patent B2
US 12,652,426 · App. 18/780,278 · Granted Jun 9, 2026

Techniques for traffic surge protection of live origin server

Inventors: Xiaomei Liu (Cupertino, CA); Joseph Lynch (Gaithersburg, MD)
Assignee: NETFLIX, INC.
H04N21/2393H04N21/2183H04N21/222H04N21/23106
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,652,426
App. No.
18/780,278
Granted
Jun 9, 2026
Kind
B2
Abstract

One embodiment of a method for responding to requests for media content includes receiving a first request from a first client for at least one segment of a media content item, retrieving, from a datastore, a reference to each segment included in the at least one segment, retrieving, from a cache, the at least one segment of the media content item based on the reference to each segment included in the at least one segment, and transmitting the at least one segment of the media content item to the first client.

Claims (49)

1 . A computer-implemented method for responding to requests for media content, the method comprising:

receiving a first request from a first client for at least one segment of a media content item; and

in response to the first request:

retrieving, from a datastore, a reference to each segment included in the at least one segment;

retrieving, from a cache, the at least one segment of the media content item based on the reference to each segment included in the at least one segment; and

transmitting the at least one segment of the media content item to the first client.

2 . The computer-implemented method of claim 1 , wherein the first request is associated with a first priority, and the method further comprises:

receiving a second request from a second client, wherein the second request is associated with a second priority that is lower than the first priority; and

in response to determining that a load on the datastore is greater than a threshold, dropping the second request based on the second priority.

3 . The computer-implemented method of claim 2 , wherein the threshold is based on a predefined percentage of requests being processed by the datastore at a reduced speed.

4 . The computer-implemented method of claim 2 , further comprising determining that the load on the datastore is greater than the threshold based on a signal from the datastore.

5 . The computer-implemented method of claim 1 , further comprising determining the first request is associated with a first priority based on the at least one segment being within a predefined window of time from a live stream of the media content item.

6 . The computer-implemented method of claim 1 , further comprising:

receiving one or more segments of the media content item;

generating metadata indicating one or more versions of the one or more segments;

storing the metadata in the datastore; and

storing the one or more segments of the media content item in the cache and in the datastore.

7 . The computer-implemented method of claim 1 , wherein the first request is associated with a first priority, and the first priority is lower than a second priority associated with requests to write data to the datastore.

8 . The computer-implemented method of claim 1 , wherein the first request is associated with a first priority, and the first priority is lower than a second priority associated with requests for manifest information indicating at least one of one or more versions or one or more segments of one or more media content items.

9 . The computer-implemented method of claim 1 , wherein the first request is forwarded by a server device of a content distribution network (CDN) that does not store the at least one segment of the media content item.

10 . The computer-implemented method of claim 1 , wherein the cache comprises at least one of one or more memories or one or more ephemeral disks.

11 . One or more non-transitory computer-readable media storing instructions that, when executed by at least one processor, cause the at least one processor to perform steps comprising:

receiving a first request from a first client for at least one segment of a media content item; and

in response to the first request:

retrieving, from a datastore, a reference to each segment included in the at least one segment;

retrieving, from a cache, the at least one segment of the media content item based on the reference to each segment included in the at least one segment; and

transmitting the at least one segment of the media content item to the first client.

12 . The one or more non-transitory computer-readable media of claim 11 , wherein the first request is associated with a first priority, and the steps further comprise:

receiving a second request from a second client, wherein the second request is associated with a second priority that is lower than the first priority; and

in response to determining that a load on the datastore is greater than a threshold, dropping the second request based on the second priority.

13 . The one or more non-transitory computer-readable media of claim 12 , wherein the threshold is based on a predefined percentage of requests being processed by the datastore at a reduced speed.

14 . The one or more non-transitory computer-readable media of claim 12 , wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform the step of determining that the load on the datastore is greater than the threshold based on a signal from the datastore.

15 . The one or more non-transitory computer-readable media of claim 12 , wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform the step of determining the second request is associated with the second priority based on the at least one segment of the media content item that is specified in the second request not being within a predefined window of time from a live stream of the media content item.

16 . The one or more non-transitory computer-readable media of claim 11 , wherein the instructions, when executed by the at least one processor, further cause the at least one processor to perform the steps of:

receiving one or more segments of the media content item;

generating metadata indicating one or more versions of the one or more segments;

storing the metadata in the datastore; and

storing the one or more segments of the media content item in the cache and in the datastore.

17 . The one or more non-transitory computer-readable media of claim 11 , wherein the first request is associated with a first priority, and the first priority is lower than a second priority associated with requests to write at least one of media content item segments or manifest information to the datastore.

18 . The one or more non-transitory computer-readable media of claim 11 , wherein the first request is associated with a first priority, and the first priority is lower than a second priority associated with requests for manifest information indicating at least one of one or more versions or one or more segments of one or more media content items.

19 . The one or more non-transitory computer-readable media of claim 11 , wherein the cache is associated with a higher throughput than the datastore.

20 . A system, comprising:

a memory storing instructions; and

a processor that is coupled to the memory and, when executing the instructions, is configured to perform the steps of:

receiving a first request from a first client for at least one segment of a media content item, and

in response to the first request:

retrieving, from a datastore, a reference to each segment included in the at least one segment,

retrieving, from a cache, the at least one segment of the media content item based on the reference to each segment included in the at least one segment, and

transmitting the at least one segment of the media content item to the first client.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2024
From: LIU, XIAOMEI; LYNCH, JOSEPH
To: NETFLIX, INC.
Reel/Frame 068084/0176 →
Continuity (1)
Related Publication 20260025539A1 · Jan 22, 2026
References Cited (52)
US 7010685B1 · Candelore · 2006 [cited by examiner]
US 7068789B2 · Huitema · 2006 [cited by examiner]
US 7614069B2 · Stone · 2009 [cited by examiner]
US 7650624B2 · Barsoum · 2010 [cited by examiner]
US 8032911B2 · Ohkita · 2011 [cited by examiner]
US 8121706B2 · Morikawa · 2012 [cited by examiner]
US 8381310B2 · Gangotri · 2013 [cited by examiner]
US 10277669B1 · Joliveau et al. · 2019 [cited by applicant]
US 10855792B2 · Knox · 2020 [cited by examiner]
US 20030056093A1 · Huitema · 2003 [cited by examiner]
US 20040117856A1 · Barsoum · 2004 [cited by examiner]
US 20040162105A1 · Reddy · 2004 [cited by examiner]
US 20050216942A1 · Barton · 2005 [cited by examiner]
US 20050283815A1 · Brooks · 2005 [cited by examiner]
US 20050289632A1 · Brooks · 2005 [cited by examiner]
US 20060010481A1 · Wall · 2006 [cited by examiner]
US 20060111144A1 · Nakajima · 2006 [cited by examiner]
US 20060212197A1 · Butler · 2006 [cited by examiner]
US 20060225105A1 · Russ · 2006 [cited by examiner]
US 20070050822A1 · Stevens · 2007 [cited by examiner]
US 20070067808A1 · DaCosta · 2007 [cited by examiner]
US 20070079341A1 · Russ · 2007 [cited by examiner]
US 20070101185A1 · Ostrowka · 2007 [cited by examiner]
US 20070124775A1 · DaCosta · 2007 [cited by examiner]
US 20070130601A1 · Li · 2007 [cited by examiner]
US 20070157281A1 · Ellis · 2007 [cited by examiner]
US 20070282990A1 · Kumar · 2007 [cited by examiner]
US 20080013919A1 · Boston · 2008 [cited by examiner]
US 20080092168A1 · Logan · 2008 [cited by examiner]
US 20080134245A1 · DaCosta · 2008 [cited by examiner]
US 20080134256A1 · DaCosta · 2008 [cited by examiner]
US 20080155615A1 · Craner · 2008 [cited by examiner]
US 20080178252A1 · Michaud · 2008 [cited by examiner]
US 20080235733A1 · Heie · 2008 [cited by examiner]
US 20080244658A1 · Chen · 2008 [cited by examiner]
US 20080263611A1 · Lecomte · 2008 [cited by examiner]
US 20090183199A1 · Stafford · 2009 [cited by examiner]
US 20090205010A1 · Rodriguez · 2009 [cited by examiner]
US 20090313662A1 · Rodriguez · 2009 [cited by examiner]
US 20100005483A1 · Rao · 2010 [cited by examiner]
US 20100071076A1 · Gangotri · 2010 [cited by examiner]
US 20100125876A1 · Craner · 2010 [cited by examiner]
US 20110191439A1 · Dazzi · 2011 [cited by examiner]
US 20110191446A1 · Dazzi · 2011 [cited by examiner]
US 20120309515A1 · Chung · 2012 [cited by examiner]
US 20160173639A1 · Tuliani et al. · 2016 [cited by applicant]
US 20170188054A1 · Ma et al. · 2017 [cited by applicant]
US 20180367637A1 · Balazinski et al. · 2018 [cited by applicant]
US 20210168416A1 · Weiner · 2021 [cited by examiner]
US 20230038275A1 · Fieldhouse · 2023 [cited by examiner]
US 20230370665A1 · Webb · 2023 [cited by examiner]
International Search Report for Application No. PCT/US2025/038249 dated Oct. 22, 2025. [cited by applicant]