# US 12,192,262 B2 · Targeted buffer priority management

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

- Number: US 12,192,262 B2
- Document ID: US12192262B2
- Status: Granted
- Kind: B2
- Application number: 17/187,015
- Filed: 2021-02-26
- Published: 2022-01-20
- Granted: 2025-01-07
- Earliest claimed: 2016-08-15
- Assignees: Comcast Cable Communications, LLC
- Applicants: Comcast Cable Communications, LLC
- Inventors: Benny Pruden; Ross Gilson
- Web page: https://patentgrep.com/patent/US12192262B2

## CPC

- H04L 47/2433: {Allocation of priorities to traffic types}
- H04L 65/613: for the control of the source by the destination (control signals issued by the client directed to the server or network components specially adapted for selective content distribution H04N21/637)
- H04L 65/75: Media network packet handling
- H04L 65/80: Responding to QoS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Transmission of content items through a network may employ a variety of devices that comprise buffers for the content. The content may include buffer priority information to assist in management of the buffers of intermediate devices for the routing. For example, the buffer priority information may assist the devices in managing buffer queue priorities.

## Claims

### Claim 1

A method comprising:
receiving, by a computing device and from a user device, a request for a content item;
determining, for a delivery of at least a portion of the content item to the user device, a route comprising a plurality of intermediate devices;
sending, to the plurality of intermediate devices, instructions for prioritizing buffers during delivery of the at least the portion of the content item; and
after sending the instructions, causing, via the route, the delivery of the at least the portion of the content item.

### Claim 2 (depends on 1)

The method of claim 1, wherein determining the route comprises determining a route between:
the computing device and the user device; or
the user device and a content server different from the computing device.

### Claim 3 (depends on 1)

The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues, and
wherein the instructions instruct the at least one of the plurality of intermediate devices to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items.

### Claim 4 (depends on 1)

The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues corresponding to different buffer priority levels, and
wherein the instructions:
indicate one of the different buffer priority levels; and
instruct the at least one of the plurality of intermediate devices to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels.

### Claim 5 (depends on 1)

The method of claim 1, wherein sending the instructions comprises generating the instructions based on:
a media type of the content item; or
a file type extension of the content item.

### Claim 6 (depends on 1)

The method of claim 1, wherein sending the instructions comprises generating the instructions based on:
at least one performance metric associated with the delivery of the at least the portion of the content item;
a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or
a transport protocol associated with the delivery of the at least the portion of the content item.

### Claim 7 (depends on 1)

The method of claim 1, wherein sending the instructions comprises generating the instructions based on a minimum delay between each of the plurality of intermediate devices, the method further comprising:
receiving other content items; and
sending the other content items to other intermediate devices of the plurality of intermediate devices or the user device.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
determining a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and
sending, based on the determined failure and to the plurality of intermediate devices, second instructions for the plurality of intermediate devices to adjust a performance metric associated with delivery of other portions of the content item.

### Claim 9

A method comprising:
receiving, by an intermediate device of a plurality of intermediate devices of a path between a content source and a user device and prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device;
selecting, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue;
receiving a portion of the content item;
storing the portion of the content item in the selected buffer queue; and
sending, from the selected buffer queue and to another intermediate device of the path, the stored portion of the content item.

### Claim 10 (depends on 9)

The method of claim 9, wherein selecting the buffer queue comprises selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items.

### Claim 11 (depends on 9)

The method of claim 9, wherein the plurality of buffer queues correspond to different buffer priority levels,
wherein the instruction indicates one of the different buffer priority levels, and
wherein selecting the buffer queue comprises selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels.

### Claim 12 (depends on 9)

The method of claim 9, wherein the instruction is based on:
a media type of the content item; or
a file type extension of the content item.

### Claim 13 (depends on 9)

The method of claim 9, wherein the instruction is based on:
at least one performance metric associated with the delivery of the content item;
a maximum allowed packet loss rate during the delivery of the content item;
a transport protocol associated with the delivery of the content item;
a minimum delay between the intermediate device receiving a second portion of the content item and the intermediate device sending the second portion of the content item to the another intermediate device or the user device; or
a minimum delay between the intermediate device receiving other content items and the intermediate device sending the other content items to the another intermediate device or the user device.

### Claim 14 (depends on 9)

The method of claim 9, wherein receiving the instruction comprises receiving, from a computing device, the instruction, and
the method further comprises:
determining a failure to meet a performance threshold associated with sending the stored portion of the content item; and
sending, to the computing device, a message indicating the failure.

### Claim 15 (depends on 9)

The method of claim 9, wherein receiving the portion of the content item comprises receiving, from a third intermediate device of the plurality of intermediate devices, the portion of the content item, and
the method further comprises:
determining a failure to meet a performance threshold associated with receiving the portion of the content item; and
sending, to the third intermediate device, a second instruction for the third intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device.

### Claim 16

A method comprising:
determining, by a computing device, a failure to satisfy a performance threshold associated with sending of a portion of a content item to a user device via a plurality of intermediate devices;
prior to sending one or more other portions of the content item to at least one of the plurality of intermediate devices, causing, based on the determined failure, the at least one of the plurality of intermediate devices to adjust a buffer priority level associated with the content item; and
after causing the at least one of the plurality of intermediate devices to adjust the buffer priority level, causing delivery of one or more other portions of the content item to the user device.

### Claim 17 (depends on 16)

The method of claim 16, wherein the at least one of the plurality of intermediate devices comprises a plurality of buffer queues,
wherein the at least one of the plurality of intermediate devices has selected a buffer queue, of the plurality of buffer queues, for buffering the portion of the content item, and
wherein causing the at least one of the plurality of intermediate devices to adjust the buffer priority level comprises causing the at least one of the plurality of intermediate devices to select, for buffering the one or more other portions of the content item, another buffer queue of the plurality of buffer queues.

### Claim 18 (depends on 16)

The method of claim 16, wherein causing the at least one of the plurality of intermediate devices to adjust the buffer priority level causes the at least one of the plurality of intermediate devices to select a different buffer queue for delivery of the one or more other portions of the content item.

### Claim 19 (depends on 16)

The method of claim 16, further comprising:
receiving, from the at least one of the plurality of intermediate devices, at least one positive response to the adjusted buffer priority level; and
causing, based on the at least one positive response, another one of the plurality of intermediate devices to adjust a second buffer priority level associated with the content item and the another one of the plurality of intermediate devices.

### Claim 20 (depends on 16)

The method of claim 16, wherein the failure to meet a performance threshold comprises a failure to satisfy:
a performance metric associated with the sending of the portion of the content item;
a maximum allowed packet loss rate during the sending of the portion of the content item;
a minimum delay between the computing device sending the portion of the content item and the user device receiving the portion of the content item; or
a minimum delay between the at least one of the plurality of intermediate devices sending the portion of the content item and the user device or another intermediate device, of the plurality of intermediate devices, receiving the portion of the content item.
