# US 11,910,037 B2 · Layered multicast and fair bandwidth allocation and packet prioritization

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

- Number: US 11,910,037 B2
- Document ID: US11910037B2
- Status: Granted
- Kind: B2
- Application number: 17/328,295
- Filed: 2021-05-24
- Published: 2021-09-09
- Granted: 2024-02-20
- Earliest claimed: 2005-01-26
- Assignees: Scale Video Coding, LLC
- Applicants: Scale Video Coding, LLC
- Inventors: Erik Van Zijst
- Web page: https://patentgrep.com/patent/US11910037B2

## CPC

- H04L 45/02: Topology update or discovery
- H04L 1/1874: {Buffer management}
- H04L 1/1887: {Scheduling and prioritising arrangements}
- H04L 12/1836: {with heterogeneous network architecture}
- H04L 43/0829: Packet loss
- H04L 45/04: {Interdomain routing, e.g. hierarchical routing}
- H04L 45/12: Shortest path evaluation
- H04L 45/123: {Evaluation of link metrics (techniques for monitoring network metrics H04L43/08)}
- H04L 45/16: Multipoint routing
- H04L 45/18: Loop-free operations
- H04L 45/302: Route determination based on requested QoS
- H04L 45/48: Routing tree calculation
- H04L 45/64: using an overlay routing layer
- H04L 47/10: Flow control; Congestion control
- H04L 47/11: Identifying congestion
- H04L 47/125: by balancing the load, e.g. traffic engineering
- H04L 47/15: {in relation to multipoint traffic (arrangements for broadcast or multicast in data networks H04L12/18)}
- H04L 47/2408: for supporting different services, e.g. a differentiated services [DiffServ] type of service
- H04L 47/2416: Real-time traffic
- H04L 47/2441: relying on flow classification, e.g. using integrated services [IntServ]
- H04L 47/30: in combination with information about buffer occupancy at either end or at transit nodes
- H04L 47/32: by discarding or delaying data units, e.g. packets or frames
- H04L 47/34: ensuring sequence integrity, e.g. using sequence numbers
- H04L 61/00: Network arrangements, protocols or services for addressing or naming
- H04L 61/103: across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
- H04N 19/34: Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
- H04N 19/39: involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
- H04N 21/234327: {by decomposing into layers, e.g. base layer and one or more enhancement layers}
- H04N 21/23605: {Creation or processing of packetized elementary streams [PES]}
- H04N 21/2383: Channel coding {or modulation} of digital bit-stream, e.g. QPSK modulation (arrangements for detecting or preventing errors in the information received by adapting the channel coding H04L1/0009; analogue front ends or means for connecting modulators, demodulators or transceivers to a transmission line H04L27/0002)
- H04N 21/6125: {involving transmission via Internet (transmission by internet of broadcast information H04H60/82)}
- H04N 21/6405: Multicasting {(data broadcast and multicast in packet switching networks H04L12/18)}
- H04N 21/64322: {IP}
- H04L 1/18: Automatic repetition systems, e.g. Van Duuren systems
- H04L 12/1868: {Measures taken after transmission, e.g. acknowledgments}
- H04L 12/1881: {with schedule organisation, e.g. priority, sequence management}
- H04L 2101/604: Address structures or formats
- H04N 21/2662: Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

Embodiments include an overlay multicast network. The overlay multicast network may provide a set of features to ensure reliable and timely arrival of multicast data. The embodiments include a congestion control system that may prioritize designated layers of data within a data stream over other layers of the same data stream. Each data stream transmitted over the network may be given an equal share of the bandwidth. Addressing in routing tables maintained by routers may utilize summarized addressing based on the difference in location of the router and destination address. Summarization levels may be adjusted to minimize travel distances for packets in the network. Data from high priority data stream layers may also be retransmitted upon request from a destination machine to ensure reliable delivery of data.

## Claims

### Claim 1

A video router in an internet protocol network, comprising:
a memory; and
a processor, capable of executing instructions stored in the memory to cause the video router to:
receive a layered video data stream including a base layer and a set of enhancement layers,
identify one or more bandwidth-limited links of an internet protocol network between the video router and a plurality of video receivers in a peer-to-peer multicast,
forward the base layer from the video router to each of the plurality of video receivers in the multicast, and
selectively forward one or more of the set of enhancement layers, but fewer than all of the set of enhancement layers received, to one or more of the plurality of video receivers through the one or more bandwidth-limited links of the internet protocol network based upon throughput in the one or more bandwidth-limited links, and wherein the video router transmits the layered video data stream according to an internet protocol;
wherein each layer of the layered video data stream comprises a plurality of data packets, wherein each of the plurality of data packets is encoded with a sequence number and a priority identifier, and wherein the sequence number and the priority identifier for each data packet is based upon a layer to which the data packet belongs.

### Claim 2 (depends on 1)

The video router of claim 1, wherein the processor is further capable of executing instructions to cause the video router to selectively forward the one or more of the set of enhancement layers based on a video processing capability of the one or more of the plurality of video receivers.

### Claim 3 (depends on 1)

The video router of claim 1, wherein the processor is further capable of executing instructions to cause the video router to divide available bandwidth among a plurality of data streams, and wherein the instructions further cause the video router to prioritize forwarding of the set of enhancement layers.

### Claim 4 (depends on 1)

The router of claim 1, wherein the video router further selectively forwards the one or more of the enhancement layers based on a request for retransmission of one or more packets from the layered video data stream.

### Claim 5 (depends on 1)

The video router of claim 1, further comprising:
a communications link connecting the video router with at least a second video router, wherein the layered video data stream is transmitted over the communications link between the video router and the second video router.

### Claim 6

A method for transmitting video signals in an internet protocol network, the method comprising:
receiving a layered video data stream comprising a base layer and a set of enhancement layers;
identifying bandwidth-limited links of an internet protocol network between a video router and a plurality of video receivers in a peer-to-peer multicast;
forwarding the base layer to each of the plurality of video receivers in the multicast;
selectively forwarding one or more of the enhancement layers, but fewer than all of the set of enhancement layers received, to one or more of the plurality of video receivers through the bandwidth-limited links of the internet protocol network based upon throughput in the bandwidth-limited links;
wherein the layered video data stream is transmitted via a communications channel configured for an internet protocol, and wherein each layer of the layered video data stream comprises data packets; and
encoding a sequence number and priority identifier in each of the data packets, wherein the sequence number and the priority identifier for each data packet is based upon a layer to which the packet belongs.

### Claim 7 (depends on 6)

The method of claim 6, wherein the selectively forwarding further comprises selectively forwarding the one or more of the enhancement layers based on video processing capabilities of the video receiver.

### Claim 8 (depends on 6)

The method of claim 6, further comprising:
dividing available bandwidth among a plurality of data streams; and
prioritizing the set of enhancement layers for the selectively forwarding step.

### Claim 9 (depends on 6)

The method of claim 6, wherein the selectively forwarding further comprises selectively forwarded the one or more of the enhancement layers based on a request for retransmission of one or more data packets from the layered video data stream.

### Claim 10 (depends on 6)

The method of claim 6, wherein the layered video data stream is received from another video router.

### Claim 11

A video router in an overlay multicast network, comprising:
a memory; and
a processor, wherein the processor executes instructions stored in the memory to cause the video router to:
receive a layered video data stream that comprises a base layer and a set of enhancement layers,
identify bandwidth-limited conditions of an overlay multicast network between the video router and a set of video receivers in a peer-to-peer multicast;
forward the base layer from the video router to each of the set of video receivers in the multicast; and
wherein the video router forwards all of the set of enhancement layers to any video receiver in the set of video receivers with no bandwidth-limited conditions,
wherein the video router selectively forwards one or more of the set of enhancement layers, but fewer than all of the set of enhancement layers received, to any remaining video receiver in the set of video receivers through bandwidth-limited links based upon the identified bandwidth-limited conditions;
wherein the layered video data stream is transmitted according to an internet protocol; and
wherein each layer of the layered video data stream comprises a plurality of data packets, each of which is encoded with a sequence number and a priority identifier, and wherein the sequence number and the priority identifier for each data packet is based upon a layer to which the data packet belongs.

### Claim 12 (depends on 11)

The video router of claim 11, wherein the video router further selectively forwards the one or more of the enhancement layers based on video processing capabilities of each of the set of video receivers.

### Claim 13 (depends on 11)

The video router of claim 11, wherein the video router divides available bandwidth among a plurality of data streams, and wherein the video router prioritizes forwarding of the enhancement layers.

### Claim 14 (depends on 11)

The video router of claim 11, wherein the video router further selectively forwards the one or more of the enhancement layers based on a request for retransmission of one or more packets from the layered video data stream.

### Claim 15 (depends on 11)

The video router of claim 11, further comprising:
a communications link connecting the video router with at least a second video router, wherein the layered video data stream is transmitted over the communications link between the video router and the second video router.
