IP Library Granted Patent US 9,258,625
Granted Patent B2
US 9,258,625 · App. 13/089,503 · Granted Feb 9, 2016

Method and system for load balancing between a video server and client

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 9,258,625
App. No.
13/089,503
Granted
Feb 9, 2016
Kind
B2
Abstract

A method and system for balancing the load and resource requirements in a digital video distribution system between a video server and its video clients by allowing the server and the clients to exchange resource capabilities with each other. Upon receipt of a request for a video stream from among available video content, the server determines whether it or the requesting client should scale the video stream based on which entity, client or server, is better equipped to scale the requested video stream to comply with the requesting client's resources and resolution capacity.

Claims (47)

1. A method for resource balancing between a video server and at least one video client in a video distribution network, the method comprising:

receiving a first request from a video client for a video stream from a listing of available video content, the requested video stream conforming to a resource capability of the requesting video client; and

balancing the resources in the video distribution network by:

determining available resources of the video server for transcoding;

determining available resources of the video client for transcoding;

comparing the available resources of the video server with the available resources of the video client;

determining which one of the video server and video client is to transcode the requested video stream based on the comparison; and

if it is determined that the video server is to transcode:

rejecting the first request from the video client;

transcoding the selected video stream at the video server; and

providing the transcoded video stream to video client upon receipt of a subsequent request from the video client.

2. The method of claim 1 wherein the first request from the video client includes a measure of the available resources of the video client, the available resources of the video client including at least one of memory utilization and CPU utilization of the requesting video client.

3. The method of claim 2 , wherein the determining whether one of the requesting video client and video server is to transcode the selected video stream includes comparing the measure of the available resources of the video client received in the first request with available resources of the video server.

4. The method of claim 1 , wherein if the video server is not to transcode the video stream, further comprising transmitting a message to the requesting video client indicating that video server will not transcode the selected video stream.

5. The method of claim 1 , further comprising generating a transcode resource table defining a capability of the video server to transcode video streams.

6. The method of claim 5 , further comprising updating the transcode resource table after each video client request.

7. The method of claim 1 , wherein determining available resources at the video server includes calculating transcode resources of the video server.

8. The method of claim 1 , further comprising:

receiving at least one request from at least one other video client;

determining which one of the video clients has a lowest resource capability; and

servicing the request from the client with the lowest resource capability before servicing other requests, the servicing including the balancing the resources in the video distribution network.

9. The method of claim 1 , wherein transcoding the selected video stream includes using less than a predetermined amount of transcoding resources.

10. A video distribution system for resource balancing between a video server and at least one video client in a video distribution network comprising:

a database configured to contain a listing of available video content; and

a video server in communication with the database, the video server, having a non-transitory memory storing software that, when executed by a CPU, configures the video server to:

receive a first request from a video client for a video stream from a listing of available video content, the requested video stream conforming to a resource capability of the requesting video client;

balance the resources in the video distribution network by:

determining available resources of the video server for transcoding;

determining available resources of the video client for transcoding;

comparing the available resources of the video server with the available resources of the video client;

determining which one of the video server and video client is to transcode the requested video stream based on the comparison; and

if it is determined that the video server is to transcode:

rejecting the first request from the video client;

transcoding the selected video stream at the video server; and

providing the transcoded video stream to video client upon receipt of a subsequent request from the video client.

11. The system of claim 10 , wherein the first request from the video client includes a measure of the available resources of the video client, the available resources of the video client including at least one of memory utilization and CPU utilization of the requesting video client, the available resources of the video server including at least one of memory utilization and CPU utilization of the video server; and

the comparing the available resources of the video server with the available resources of the video client includes comparing a measure of the at least one of memory utilization and CPU utilization of the video client with the at least one of memory utilization and CPU utilization of the video server.

12. The system of claim 11 , wherein the video server is further configured to periodically publish the listing of available video content.

13. The system of claim 10 , wherein if the video server is not to transcode the video stream, the video server is further configured to:

transmit a message to the requesting video client indicating that the server will not transcode the selected video.

14. The system of claim 10 , wherein the video server is further configured to generate a transcode capability table defining a capability of the video server to transcode video streams.

15. The system of claim 14 , wherein the video server is further configured to update the transcode capability table after each video client request.

16. The system of claim 10 , wherein the determining of available resources at the video server includes calculating transcode resources of the video server.

17. The system of claim 10 , wherein the video server is further configured to:

receive at least one request from at least one other video client;

determine which one of the video clients has a lowest resource capability; and

service the request from the client with the lowest resource capability before servicing other requests, the servicing including the balancing the resources in the video distribution network.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2024
From: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
To: TYCO FIRE & SECURITY GMBH
Reel/Frame 068494/0384 →
NUNC PRO TUNC ASSIGNMENT Recorded Feb 4, 2022
From: JOHNSON CONTROLS US HOLDINGS LLC
To: JOHNSON CONTROLS, INC.
Reel/Frame 058955/0394 →
NUNC PRO TUNC ASSIGNMENT Recorded Feb 4, 2022
From: JOHNSON CONTROLS, INC.
To: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
Reel/Frame 058955/0472 →
NUNC PRO TUNC ASSIGNMENT Recorded Feb 4, 2022
From: SENSORMATIC ELECTRONICS, LLC
To: JOHNSON CONTROLS US HOLDINGS LLC
Reel/Frame 058957/0138 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: JOHNSON CONTROLS US HOLDINGS LLC
To: JOHNSON CONTROLS INC
Reel/Frame 058600/0080 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: JOHNSON CONTROLS INC
To: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
Reel/Frame 058600/0126 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: SENSORMATIC ELECTRONICS LLC
To: JOHNSON CONTROLS US HOLDINGS LLC
Reel/Frame 058600/0001 →