# US 10,320,705 B1 · Identifying video data included in network packets

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

- Number: US 10,320,705 B1
- Document ID: US10320705B1
- Status: Granted
- Kind: B1
- Application number: 15/909,478
- Filed: 2018-03-01
- Granted: 2019-06-11
- Earliest claimed: 2018-02-28
- Assignees: Verizon Patent and Licensing Inc.
- Applicants: Verizon Patent and Licensing Inc.
- Inventors: Feng Li; Jae Won Chung; Anil Vayaal; Vijay Nanjundan; Mark Lawrence Claypool
- Web page: https://patentgrep.com/patent/US10320705B1

## CPC

- H04L 47/803: {Application aware}
- H04L 47/17: Interaction among intermediate nodes, e.g. hop by hop
- H04L 47/22: Traffic shaping
- H04L 47/2416: Real-time traffic
- H04L 47/2441: relying on flow classification, e.g. using integrated services [IntServ]
- H04L 47/2483: involving identification of individual flows
- H04L 47/36: by determining packet size, e.g. maximum transfer unit [MTU]
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/1004: Server selection for load balancing
- H04L 69/164: Adaptation or special uses of UDP protocol
- H04L 69/329: in the application layer [OSI layer 7]
- H04W 80/12: Application layer protocols, e.g. WAP [Wireless Application Protocol]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A device can identify video data included in network packets. For example, the device can identify a flow of network packets, the flow including uplink packets downlink packets. The device can determine that the flow includes at least one application data unit (ADU), each ADU including an uplink packet and multiple downlink packets. The device can determine that the at least one ADU includes video data based on determining that a throughput of the at least one ADU meets a throughput threshold, a an average payload size of the downlink packets included in the at least one ADU meets a size threshold, and a count of ADUs included in the at least one ADU meets a count threshold. Based on the at least one ADU including the video data, the device can perform an action.

## Claims

### Claim 1

A device, comprising:
one or more memory devices; and
one or more processors, communicatively connected to the one or more memory devices, to:
identify a flow of network packets, the flow of network packets including:
a plurality of uplink packets, and
a plurality of downlink packets;
determine that the flow of network packets includes at least one application data unit,
each of the at least one application data unit including:
an uplink packet from the plurality of uplink packets, and
multiple downlink packets from the plurality of downlink packets;
determine that the at least one application data unit includes video data,
wherein, the one or more processors, when determining that the at least one application data unit includes the video data, are to:
determine that a throughput of the at least one application data unit meets a throughput threshold,
determine that an average payload size of the multiple downlink packets included in the at least one application data unit meets a size threshold, and
determine that a count of application data units included in the at least one application data unit meets a count threshold; and
perform an action based on the at least one application data unit including the video data.

### Claim 2 (depends on 1)

The device of claim 1, wherein the one or more processors, when determining that the flow of network packets includes the at least one application data unit, are to:
determine that a size of a payload included in the uplink packet meets a threshold uplink payload size; and
determine that a size of a payload included in the multiple downlink packets meets a threshold downlink payload size.

### Claim 3 (depends on 1)

The device of claim 1, wherein:
each of the plurality of uplink packets is encrypted; and
each of the plurality of downlink packets is encrypted.

### Claim 4 (depends on 1)

The device of claim 1, wherein the flow of network packets is transmitted using a Quick UDP Internet Connections (QUIC) protocol.

### Claim 5 (depends on 1)

The device of claim 1, wherein the one or more processors, when performing the action based on the at least one application data unit including the video data, are to:
provide, to another device, information indicating that the at least one application data unit includes the video data.

### Claim 6 (depends on 1)

The device of claim 1, wherein the one or more processors, when performing the action based on the at least one application data unit including the video data, are to:
shape subsequent network packets associated with the flow of network packets.

### Claim 7 (depends on 1)

The device of claim 1, wherein the count threshold is three.

### Claim 8

A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions that, when executed by one or more processors, cause the one or more processors to:
identify a flow of network packets, the flow of network packets including:
a plurality of uplink packets, and
a plurality of downlink packets;
determine that the flow of network packets includes at least one application data unit,
each of the at least one application data unit including:
an uplink packet from the plurality of uplink packets, and
multiple downlink packets from the plurality of downlink packets;
determine that the at least one application data unit includes video data,
wherein the one or more instructions that cause the one more processors to determine that the at least one application data unit includes the video data, cause the one or more processors to:
determine that a throughput of the at least one application data unit meets a throughput threshold,
determine that an average payload size of the multiple downlink packets included in the at least one application data unit meets a size threshold, and
determine that a count of application data units included in the at least one application data unit meets a count threshold; and
perform an action based on the at least one application data unit including the video data.

### Claim 9 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the one or more instructions that cause the one or more processors to determine that the flow of network packets includes the at least one application data unit, cause the one or more processors to:
determine that a size of a payload included in the uplink packet meets a threshold uplink payload size; and
determine that a size of a payload included in the multiple downlink packets meets a threshold downlink payload size.

### Claim 10 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein:
each of the plurality of uplink packets is encrypted; and
each of the plurality of downlink packets is encrypted.

### Claim 11 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the flow of network packets is transmitted using a Quick UDP Internet Connections (QUIC) protocol.

### Claim 12 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the one or more instructions, that cause the one or more processors to perform the action based on the at least one application data unit including the video data, cause the one or more processors to:
provide, to a device, information indicating that the at least one application data unit includes the video data.

### Claim 13 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the one or more instructions, that cause the one or more processors to perform the action based on the at least one application data unit including the video data, cause the one or more processors to:
shape subsequent network packets associated with the flow of network packets.

### Claim 14 (depends on 8)

The non-transitory computer-readable medium of claim 8, wherein the count threshold is three.

### Claim 15

A method, comprising:
identifying, by a device, a flow of network packets, the flow of network packets including:
a plurality of uplink packets, and
a plurality of downlink packets;
determining, by the device, that the flow of network packets includes at least one application data unit,
each of the at least one application data unit including:
an uplink packet from the plurality of uplink packets, and
multiple downlink packets from the plurality of downlink packets;
determining, by the device, that the at least one application data unit includes video data,
wherein the determining that the at least one application data unit includes the video data comprises:
determining that a throughput of the at least one application data unit meets a throughput threshold,
determining that an average payload size of the multiple downlink packets included in the at least one application data unit meets a size threshold, and
determining that a count of application data units included in the at least one application data unit meets a count threshold; and
performing, by the device, an action based on the at least one application data unit including the video data.

### Claim 16 (depends on 15)

The method of claim 15, wherein determining that the flow of network packets includes the at least one application data unit comprises:
determining that a size of a payload included in the uplink packet meets a threshold uplink payload size; and
determining that a size of a payload included in the multiple downlink packets meets a threshold downlink payload size.

### Claim 17 (depends on 15)

The method of claim 15, wherein:
each of the plurality of uplink packets is encrypted; and
each of the plurality of downlink packets is encrypted.

### Claim 18 (depends on 15)

The method of claim 15, wherein the flow of network packets is transmitted using a Quick UDP Internet Connections (QUIC) protocol.

### Claim 19 (depends on 15)

The method of claim 15, wherein performing the action based on the at least one application data unit including the video data comprises:
providing, to another device, information indicating that the at least one application data unit includes the video data.

### Claim 20 (depends on 15)

The method of claim 15, wherein performing the action based on the at least one application data unit including the video data comprises:
shaping subsequent network packets associated with the flow of network packets.
