IP Library Granted Patent US 10,499,114
Granted Patent B2
US 10,499,114 · App. 15/747,650 · Granted Dec 3, 2019

Systems and methods for managing content distribution to an in-transit media system

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 10,499,114
App. No.
15/747,650
Granted
Dec 3, 2019
Kind
B2
Abstract

Systems and methods for dynamically multiplexing requested linear media channels and network data on forward link traffic streams of a communication link to a craft media delivery system are provided. Furthermore, systems and methods for receiving dynamically multiplexed requested linear media channels and network data on forward link traffic streams of a communication link by a craft media delivery system are also provided.

Claims (194)

1. A method comprising:

providing communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests;

receiving, for a time period, linear media channel packets of the requested linear media channels and network traffic packets requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand;

obtaining, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively;

in response to the indication that the communication link is congested:

determining an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand; and

scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively;

in further response to the indication that the communication link is congested:

obtaining an indication of whether a media buffer associated with the media delivery system on the craft satisfies or does not satisfy a threshold;

in response to obtaining the indication that the media buffer satisfies the threshold:

performing said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively;

in response to obtaining the indication that the media buffer does not satisfy the threshold:

determining a first information rate for transmitting previously delayed linear media channel packets;

determining a second information rate and a third information rate for transmitting the requested network traffic packets and the linear media channel packets, respectively; and

scheduling transmission of the previously delayed linear media channel packets, the network traffic packets, and the linear media channel packets to the media delivery system on the craft according to the first information rate, the second information rate, and the third information rate, respectively.

2. The method of claim 1 , wherein the determined available information rate for transmitting the requested linear media channel packets is determined such that the network traffic packets are not delayed.

3. The method of claim 1 , further comprising:

in further response to the indication that the communication link is congested:

delaying transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

4. The method of claim 1 , wherein obtaining, for the time period, the indication of whether the communication link is congested or uncongested, comprises:

determining whether the communication link is congested or uncongested during the time period; and

generating the indication of whether the communication link is congested or uncongested during the time period.

5. The method of claim 4 , wherein determining whether the communication link is congested or uncongested during the time period is based on a queue status associated with the communication link.

6. The method of claim 1 , wherein the communication link comprises a satellite communication link.

7. The method of claim 1 , wherein, in further response to the indication that the communication link is uncongested,

said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively further comprises:

scheduling transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

8. The method of claim 7 , further comprising:

in further response to the indication that the communication link is uncongested:

transmitting the previously delayed linear media channel packets to the media delivery system on the craft via the communication link.

9. The method of claim 1 , wherein the first information rate is determined based on a minimum amount of the previously delayed linear media channel packets that must be transmitted to avoid interruption of streaming of any of the group of linear media channels.

10. The method of claim 1 , wherein the second information rate is determined based on a difference between the first information rate and the supported information rate of the communication link.

11. The method of claim 1 , wherein the third information rate is determined based on a difference between the supported information rate of the communication link and a summation of the first and second information rates.

12. The method of claim 11 , further comprising delaying a subset of the received linear media channel packets based on a difference between the third information rate and the linear media channel demand.

13. The method of claim 1 , further comprising:

in further response to the indication that the communication link is congested:

transmitting the previously delayed linear media channel packets, the network traffic packets, and the linear media channel packets to the media delivery system on the craft via the communication link.

14. The method of claim 1 , wherein obtaining the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold comprises:

receiving the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold from the media delivery system on the craft via the communication link.

15. The method of claim 1 , wherein obtaining the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold further comprises:

obtaining a nominal media buffer size for the media delivery system on the craft;

determining a nominal linear media consumption rate of the linear media channel packets;

determining a previous transmission rate of the linear media channel packets to the craft over the communication link based on transmissions to the craft during prior time periods; and

determining an estimated media buffer size for the media delivery system on the craft based on the nominal linear media consumption rate of the linear media channel packets and the previous transmission rate of the linear media channel packets to the craft; and

generating the indication of whether the media buffer associated with the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold based on whether the estimated media buffer size satisfies or does not satisfy the threshold.

16. A method comprising:

providing communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests;

receiving, for a time period, linear media channel packets of the requested linear media channels and network traffic packets requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand;

obtaining, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively;

in response to the indication that the communication link is congested:

determining an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand; and

scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively,

wherein:

the scheduling in response to the indication that the communication link is uncongested comprises:

retrieving the linear media channel packets from a linear media channel queue according to the linear media channel demand; and

retrieving the network traffic packets from a network queue according to the network traffic demand;

the scheduling in response to the indication that the communication link is congested comprises:

retrieving the linear media channel packets from the linear media channel queue according to the determined available information rate; and

retrieving the network traffic packets from the network queue according to the network traffic demand; and

the method further comprises:

generating a forward link packet stream from the retrieved linear media channel packets and the retrieved network traffic packets.

17. The method of claim 16 , further comprising:

transmitting a multiplexed forward link signal comprising the forward link packet stream to the craft via the communication link.

18. The method of claim 16 , wherein the determined available information rate for transmitting the requested linear media channel packets is determined such that the network traffic packets are not delayed.

19. The method of claim 16 , further comprising:

in further response to the indication that the communication link is congested:

delaying transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

20. The method of claim 16 , further comprising:

in further response to the indication that the communication link is uncongested:

identifying previously delayed linear media channel packets; and

wherein said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively further comprises:

scheduling transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

21. A method comprising:

providing communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests, wherein the group of linear media channels includes a particular linear media channel;

receiving, for a time period, linear media channel packets of the requested linear media channels and network traffic packets requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand;

receiving a request for a linear media channel segment of the particular linear media channel from a group of one or more crafts via the communication link, the group of one or more crafts including said craft;

obtaining a link condition metric for the communication link to each craft in the group;

selecting a modcode for the linear media channel segment based on the link condition metric for the communication link to each craft in the group; and

providing an indication of the selected modcode for linear media channel packets of the linear media channel segment of the particular linear media channel;

obtaining, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively;

in response to the indication that the communication link is congested:

determining an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand; and

scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively.

22. The method of claim 21 , wherein the selecting the modcode for the linear media channel segment is based on a lowest link condition metric from among the link condition metric for the communication link to each craft in the group.

23. The method of claim 21 , wherein the selecting the modcode for the linear media channel segment is independent of other crafts communication via the communication link that have not requested the linear media channel segment.

24. The method of claim 21 , wherein the determined available information rate for transmitting the requested linear media channel packets is determined such that the network traffic packets are not delayed.

25. The method of claim 21 , further comprising:

in further response to the indication that the communication link is congested:

delaying transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

26. The method of claim 21 , further comprising:

in further response to the indication that the communication link is uncongested:

identifying previously delayed linear media channel packets; and

wherein said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively further comprises:

scheduling transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

27. An apparatus comprising:

a forward link traffic shaper configured to:

provide communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests;

receive, for a time period, linear media channel packets of the requested linear media channels from a linear media channel queue and network traffic packets from a network traffic queue, each requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand;

obtain, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively; and

in response to the indication that the communication link is congested:

determine an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand;

obtain an indication of whether a media buffer associated with the media delivery system on the craft satisfies or does not satisfy a threshold:

in response to obtaining the indication that the media buffer satisfies the threshold:

schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively; and

in response to obtaining the indication that the media buffer does not satisfy the threshold:

determine a first information rate for transmitting previously delayed linear media channel packets;

determine a second information rate and a third information rate for transmitting the requested network traffic packets and the linear media channel packets, respectively;

schedule transmission of the previously delayed linear media channel packets, the network traffic packets, and the linear media channel packets to the media delivery system on the craft according to the first information rate, the second information rate, and the third information rate, respectively.

28. The apparatus of claim 27 , wherein the forward link traffic shaper is configured to determine the available information rate for transmitting the requested linear media channel packets such that the network traffic packets are not delayed.

29. The apparatus of claim 27 , wherein the forward link traffic shaper is configured to, in further response to the indication that the communication link is congested:

delay transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

30. The apparatus of claim 27 , further comprising a congestion management system in communication with the forward link traffic shaper and configured to:

determine whether the communication link is congested or uncongested during the time period; and

generate the indication of whether the communication link is congested or uncongested during the time period.

31. The apparatus of claim 27 , wherein the communication link comprises a satellite communication link.

32. The apparatus of claim 31 , wherein the forward link traffic shaper is configured to determine whether the communication link is congested or uncongested during the time period based on a queue status associated with the communication link.

33. The apparatus of claim 27 , wherein, in further response to the indication that the communication link is uncongested, the forward link traffic shaper is configured to,

when scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively:

schedule transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

34. The apparatus of claim 33 , wherein, in further response to the indication that the communication link is uncongested, the forward link traffic shaper is configured to:

transmit the previously delayed linear media channel packets to the media delivery system on the craft via the communication link.

35. The apparatus of claim 27 , wherein the forward link traffic shaper is configured to determine the first information rate based on a minimum amount of the previously delayed linear media channel packets that must be transmitted to avoid interruption of streaming of any of the group of linear media channels.

36. The apparatus of claim 27 , wherein the forward link traffic shaper is configured to determine the second information rate based on a difference between the first information rate and the supported information rate of the communication link.

37. The apparatus of claim 27 , wherein the forward link traffic shaper is configured to determine the third information rate based on a difference between the supported information rate of the communication link and a summation of the first and second information rates.

38. The apparatus of claim 37 , wherein the forward link traffic shaper is configured to delay a subset of the received linear media channel packets based on a difference between the third information rate and the linear media channel demand.

39. The apparatus of claim 27 , wherein, in further response to the indication that the communication link is congested, the forward link traffic shaper is configured to:

transmit the previously delayed linear media channel packets, network traffic packets, and the linear media channel packets to the media delivery system on the craft via the communication link.

40. The apparatus of claim 27 , wherein, to obtain the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold, the forward link traffic shaper is further configured to:

receive the indication whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold from the media delivery system on the craft via the communication link.

41. The apparatus of claim 27 , further comprising an adaptive craft buffer manager in communication with the forward link traffic shaper and configured to:

obtain a nominal media buffer size for the media delivery system on the craft;

determine a nominal linear media consumption rate of the linear media channel packets;

determine a previous transmission rate of the linear media channel packets to the craft over the communication link based on transmissions to the craft during prior time periods; and

determine an estimated media buffer size for the media delivery system on the craft based on the nominal linear media consumption rate of the linear media channel packets and the previous transmission rate of the linear media channel packets to the craft;

generate the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold based on whether the estimated media buffer size satisfies or does not satisfy the threshold; and

transmit the indication of whether the media buffer associated with the media delivery system on the craft satisfies or does not satisfy the threshold to the forward link traffic shaper.

42. An apparatus comprising:

a forward link traffic shaper configured to:

provide communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests;

receive, for a time period, linear media channel packets of the requested linear media channels from a linear media channel queue and network traffic packets from a network traffic queue, each requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand;

obtain, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively;

in response to the indication that the communication link is congested:

determine an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand; and

schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively,

wherein:

the forward link traffic shaper is configured to, when scheduling transmission of the linear media channel packets and the network traffic packets in response to the indication that the communication link is uncongested:

retrieve the linear media channel packets from the linear media channel queue according to the linear media channel demand; and

retrieve the network traffic packets from a network queue according to the network traffic demand; and

the forward link traffic shaper is configured to, when scheduling transmission of the linear media channel packets and the network traffic packets in response to the indication that the communication link is congested:

retrieve the linear media channel packets from the linear media channel queue according to the determined available information rate; and

retrieve the network traffic packets from the network queue according to the network traffic demand; and

wherein the forward link traffic shaper is further configured to:

generate a forward link packet stream from the retrieved linear media channel packets and the retrieved network traffic packets.

43. The apparatus of claim 42 , wherein the forward link traffic shaper is configured to transmit a multiplexed forward link signal comprising the forward link packet stream to the craft via the communication link.

44. The apparatus of claim 42 , wherein the determined available information rate for transmitting the requested linear media channel packets is determined such that the network traffic packets are not delayed.

45. The apparatus of claim 42 , wherein

in further response to the indication that the communication link is congested the forward link traffic shaper is further configured to:

delay transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

46. The apparatus of claim 42 , wherein

in further response to the indication that the communication link is uncongested the forward link traffic shaper is further configured to:

identify previously delayed linear media channel packets; and

wherein said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively, the forward link traffic shaper is further configured to:

schedule transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

47. An apparatus comprising:

a forward link traffic shaper configured to:

provide communication service to a craft via a communication link, the craft comprising a media delivery system to receive requests for a group of linear media channels from among a plurality of linear media channels offered within the craft, and to buffer and manage distribution of the group of requested linear media channels received via the communication link according to the requests, wherein the group of linear media channels includes a particular linear media channel; and

receive, for a time period, linear media channel packets of the requested linear media channels from a linear media channel queue and network traffic packets from a network traffic queue, each requested by client devices within the craft, the linear media channel packets associated with a linear media channel demand and the network traffic packets associated with a network traffic demand; and

a linear media distribution system in communication with the forward link traffic shaper and configured to:

receive a request for a linear media channel segment of the particular linear media channel from a group of one or more crafts via the communication link, the group of one or more crafts including said craft;

obtain a link condition metric for the communication link to each craft in the group;

select a modcode for the linear media channel segment based on the link condition metric for the communication link to each craft in the group; and

provide an indication of the selected modcode for linear media channel packets of the linear media channel segment of the particular linear media channel to the forward link traffic shaper,

wherein the forward link traffic shaper is further configured to:

obtain, for the time period, an indication of whether the communication link is congested or uncongested;

in response to the indication that the communication link is uncongested, schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively;

in response to the indication that the communication link is congested:

determine an available information rate for transmitting the linear media channel packets based on a difference between a supported information rate of the communication link and the network traffic demand; and

schedule transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the determined available information rate and the network traffic demand respectively.

48. The apparatus of claim 47 , wherein the linear media distribution system is configured to select the modcode for the linear media channel segment based on a lowest link condition metric from among the link condition metric for the communication link to each craft in the group.

49. The apparatus of claim 47 , wherein the linear media distribution system is configured to select the modcode for the linear media channel segment independent of other crafts communication via the communication link that have not requested the linear media channel segment.

50. The apparatus of claim 47 , wherein the determined available information rate for transmitting the requested linear media channel packets is determined such that the network traffic packets are not delayed.

51. The apparatus of claim 47 , wherein

in further response to the indication that the communication link is congested the forward link traffic shaper is further configured to:

delay transmission of a subset of the linear media channel packets to the craft via the communication link based on a difference between the available information rate and the linear media channel demand.

52. The apparatus of claim 47 , wherein

in further response to the indication that the communication link is uncongested the forward link traffic shaper is further configured to:

identify previously delayed linear media channel packets; and

wherein said scheduling transmission of the linear media channel packets and the network traffic packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively, the forward link traffic shaper is further configured to:

schedule transmission of the previously delayed linear media channel packets to the craft via the communication link according to the linear media channel demand and the network traffic demand respectively.

Assignments (5)
SUPPLEMENTAL PATENT SECURITY AGREEMENT Recorded Sep 19, 2023
From: VIASAT, INC.
To: MUFG BANK, LTD., AS AGENT
Reel/Frame 064948/0379 →
SECURITY AGREEMENT Recorded Jun 1, 2023
From: VIASAT, INC.
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 063822/0446 →
SECURITY AGREEMENT Recorded Mar 7, 2022
From: VIASAT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 059332/0558 →
SECURITY INTEREST Recorded Mar 27, 2019
From: VIASAT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 048715/0589 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2018
From: SLATER, JOSHUA G; CROCKETT, ROBERT G
To: VIASAT, INC.
Reel/Frame 044905/0155 →