# US 9,674,252 B2 · System and method for efficient delivery of repetitive multimedia content

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

- Number: US 9,674,252 B2
- Document ID: US9674252B2
- Status: Granted
- Kind: B2
- Application number: 14/611,598
- Filed: 2015-02-02
- Published: 2015-06-18
- Granted: 2017-06-06
- Earliest claimed: 2013-07-17
- Assignees: imVision Software Technologies Ltd.
- Applicants: imVision Software Technologies Ltd.
- Inventors: Sharon Mantin; Ofir Amir; Yossi Barshishat
- Web page: https://patentgrep.com/patent/US9674252B2

## CPC

- H04L 65/60: Network streaming of media packets
- H04L 65/80: Responding to QoS
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04N 21/2187: Live feed
- H04N 21/2225: Local VOD servers
- H04N 21/26616: {for merging a unicast channel into a multicast channel, e.g. in a VOD application, when a client served by unicast channel catches up a multicast channel to save bandwidth (data multicast over packet-switching network H04L12/18)}
- 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/6408: Unicasting
- H04N 21/64322: {IP}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A system and method for off-loading the serving of repetitive content by a streaming server are presented. The method includes establishing a plurality of unicast transport-layer sockets with a plurality of end-user devices; receiving a plurality of requests for a multimedia content from the plurality of end-user devices, wherein the plurality of requests are session-layer requests; determining if the received plurality of requests are for a repetitive content; and upon determination that the received plurality of requests are for the repetitive content: opening a single socket with a streaming application of at least one streaming server; retrieving a single copy of the requested multimedia content from the streaming application over the single socket; and streaming the retrieved single copy to the plurality of end-user devices through their respective plurality of unicast transport-layer sockets.

## Claims

### Claim 1

A method for off-loading the serving of repetitive content by a streaming server comprising:
establishing a plurality of unicast transport-layer sockets with a plurality of end-user devices;
receiving a plurality of requests for a multimedia content from the plurality of end-user devices, wherein the plurality of requests are session-layer requests, wherein any of the plurality of end-user device includes an extender configured to serve a plurality of end-user devices;
determining if the received plurality of requests is for a repetitive content; and
upon determination that the received plurality of requests are for the repetitive content:
opening a single socket with a streaming application of at least one streaming server;
retrieving a single copy of the requested multimedia content from the streaming application over the single socket, wherein additional extenders can be dynamically instantiated to be streamed by the received single copy of the requested multimedia content; and
streaming the retrieved single copy to the plurality of end-user devices through their respective plurality of unicast transport-layer sockets.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
serving any subsequent requests to the repetitive content using the single copy.

### Claim 3 (depends on 1)

The method of claim 1, wherein streaming the retrieved single copy to the plurality of end-user devices through their respective plurality of unicast transport-layer sockets further comprises:
reading the single copy of the multimedia content from a local storage; and
sending one or more data chunks of the requested multimedia content to the plurality of unicast transport-layer sockets expecting to receive the same one or more data chunks.

### Claim 4 (depends on 1)

The method of claim 1, wherein the streaming application is executed in a user space of an operating system of the at least one streaming server.

### Claim 5 (depends on 1)

The method of claim 1, wherein the method is performed in a kernel space of an operating system of the at least one streaming server.

### Claim 6 (depends on 1)

The method of claim 1, wherein the repetitive content further includes any one of: a live content, a linear content, and a recorded content.

### Claim 7 (depends on 1)

The method of claim 1, wherein the requested multimedia content is at least an over-the-top (OTT) content.

### Claim 8 (depends on 7)

The method of claim 7, wherein determining if the request for the OTT multimedia content is for a repetitive OTT multimedia content, further comprising:
analyzing the received request for the OTT multimedia content;
requesting a plurality of time-shifted OTT streams respective of the requested OTT multimedia content when the analysis of the received request indicates that the requested OTT stream is suspected as a repetitive OTT multimedia content; and
analyzing the plurality of time-shifted OTT streams to provide a definitive indication of whether the requested OTT stream is a repetitive OTT multimedia content.

### Claim 9 (depends on 1)

The method of claim 1, wherein determining if the request for the OTT multimedia content is for a repetitive OTT multimedia content further comprises:
determining if a number of requests for a specific OTT multimedia content received during a time frame exceeds a predefined threshold.

### Claim 10 (depends on 1)

The method of claim 1, wherein streaming the received single copy of the requested multimedia content to the at least one end-user device further comprises:
streaming the received single copy of the requested multimedia content to the at least one end-user device over a unicast communication channel.

### Claim 11 (depends on 1)

The method of claim 1, further comprising:
addressing the requested multimedia content to at least any one of: a group of end-user devices associated with the same group identifier, a cascade list of at least one extender and a plurality of user devices, and a combined list including the plurality of end-user devices and the cascade list.

### Claim 12 (depends on 11)

The method of claim 11, wherein addressing the requested multimedia content is performed using a data structure including an address designator prefixed by a payload, wherein the payload contains the multimedia content.

### Claim 13 (depends on 1)

The method of claim 1, wherein the at least one streaming server is operable in at least one of: a software defined network, and a content delivery network.

### Claim 14 (depends on 1)

A non-transitory computer readable medium having stored thereon instructions for causing one or more processing units to execute the method according to claim 1.

### Claim 15 (depends on 1)

The system of claim 1, wherein the requested multimedia content is at least an over-the-top (OTT) content.

### Claim 16 (depends on 15)

The system of claim 15, wherein the system is further configured to:
determine if a number of requests for a specific OTT multimedia content received during a time frame exceeds a predefined threshold.

### Claim 17 (depends on 16)

The system of claim 16, wherein addressing the requested multimedia content is performed using a data structure including an address designator prefixed by a payload, wherein the payload contains the multimedia content.

### Claim 18 (depends on 1)

The method of claim 1, wherein retrieving the single copy the requested multimedia content further comprising:
retrieving a single copy from each of the at least one streaming server.

### Claim 19

A system comprising:
a processing unit; and
a memory, the memory containing instructions that, when executed by the processing unit, configure the system to:
establish a plurality of unicast transport-layer sockets with a plurality of end-user devices;
receive a plurality of requests for a multimedia content from the plurality of end-user devices, wherein the plurality of requests are session-layer requests, wherein any of the plurality of end-user device includes an extender configured to serve a plurality of end-user devices;
determine if the received plurality of requests is for a repetitive content; and
upon determination that the received plurality of requests are for the repetitive content:
open a single socket with a streaming application of at least one streaming server;
retrieve a single copy of the requested multimedia content from the streaming application over the single socket, wherein additional extenders can be dynamically instantiated to be streamed by the received single copy of the requested multimedia content; and
stream the retrieved single copy to the plurality of end-user devices through their respective plurality of unicast transport-layer sockets.

### Claim 20 (depends on 19)

The system of claim 19, wherein the system is further configured to:
serve any subsequent requests to the repetitive content using the single copy.

### Claim 21 (depends on 19)

The system of claim 19, wherein the system is further configured to:
read the single copy of the multimedia content from a local storage; and
send one or more data chunks of the requested multimedia content to the plurality of unicast transport-layer sockets expecting to receive the same one or more data chunks.

### Claim 22 (depends on 19)

The system of claim 19, wherein the repetitive content further includes any one of: a live content, a linear content, and a recorded content.

### Claim 23 (depends on 19)

The system of claim 19, wherein the system is further configured to:
analyze the received request for the OTT multimedia content;
request a plurality of time-shifted OTT streams respective of the requested OTT multimedia content when the analysis of the received request indicates that the requested OTT stream is suspected as a repetitive OTT multimedia content; and
analyze the plurality of time-shifted OTT streams to provide a definitive indication of whether the requested OTT stream is a repetitive OTT multimedia content.

### Claim 24 (depends on 23)

The system of claim 23, wherein the system is further configured to:
address the requested multimedia content to at least any one of: a group of end-user devices associated with the same group identifier, a cascade list of at least one extender and a plurality of user devices, and a combined list including the plurality of end-user devices and the cascade list.

### Claim 25 (depends on 19)

The system of claim 19, wherein the system is further configured to:
stream the received single copy of the requested multimedia content to the at least one end-user device over a unicast communication channel.

### Claim 26 (depends on 19)

The system of claim 19, wherein the at least one streaming server is operable in at least one of: a software defined network, and a content delivery network.
