Imparting real-time priority-based network communications in an encrypted communication session
First Claim
1. A method comprising:
- at a server system, establishing, based at least in part on cryptographic information placed in a predefined portion of a handshake network communication, a communication session with a client system to stream one or more streams from the server system to the client system, the predefined portion being reserved for random data;
processing the one or more streams, wherein the processing comprises;
dividing each of the one or more streams into a plurality of network communications, wherein each network communication of the plurality of network communications has an associated data payload and an associated header, andwriting to a header of a network communication from the plurality of network communications rendering information relating to a media rendering state associated with the network communication and one or more subsequent network communications of the plurality of network communications; and
streaming the processed one or more streams to the client system via the established communication session, wherein said streaming of the processed one or more streams comprisesqueuing the plurality of network communications for transmission based on a media type of each of the plurality of network communications, wherein said queuing comprisesassigning a priority to each of the processed one or more streams,totaling a priority for each stream,calculating a desired transmission rate for each of the processed one or more streams using the assigned priority and the totaled priority,counting a sub-total of the plurality of associated network communications transmitted per the processed one or more streams during a preset period,counting a total number of the plurality of associated network communications transmitted during the preset period,calculating an actual transmission rate for each stream of the processed one or more streams using the sub-total and the total, andcalculating a ratio between the desired transmission rate and the actual transmission rate, andtransmitting ones of the queued plurality of network communications to the client system based on a scheduling algorithm.
2 Assignments
0 Petitions
Accused Products
Abstract
This specification describes technologies relating to imparting real-time priority-based network communications in an encrypted session. In general, aspects of the subject matter described can be embodied in methods that include establishing, based on cryptographic information in a reserved, random-data portion of a handshake communication, a session, receiving parameter values relating to a sub media stream, included in a header of a network communication, storing the parameter values, obtaining state information and a data payload included in a second network communication, identifying, from the state information, a purpose of the second network communication, and whether a header of the second network communication includes one or more new values corresponding to one or more of the parameters, updating one or more of the stored values based on the one or more new values, and processing the data payload based on the identified purpose and the stored parameter values.
-
Citations
22 Claims
-
1. A method comprising:
-
at a server system, establishing, based at least in part on cryptographic information placed in a predefined portion of a handshake network communication, a communication session with a client system to stream one or more streams from the server system to the client system, the predefined portion being reserved for random data; processing the one or more streams, wherein the processing comprises; dividing each of the one or more streams into a plurality of network communications, wherein each network communication of the plurality of network communications has an associated data payload and an associated header, and writing to a header of a network communication from the plurality of network communications rendering information relating to a media rendering state associated with the network communication and one or more subsequent network communications of the plurality of network communications; and streaming the processed one or more streams to the client system via the established communication session, wherein said streaming of the processed one or more streams comprises queuing the plurality of network communications for transmission based on a media type of each of the plurality of network communications, wherein said queuing comprises assigning a priority to each of the processed one or more streams, totaling a priority for each stream, calculating a desired transmission rate for each of the processed one or more streams using the assigned priority and the totaled priority, counting a sub-total of the plurality of associated network communications transmitted per the processed one or more streams during a preset period, counting a total number of the plurality of associated network communications transmitted during the preset period, calculating an actual transmission rate for each stream of the processed one or more streams using the sub-total and the total, and calculating a ratio between the desired transmission rate and the actual transmission rate, and transmitting ones of the queued plurality of network communications to the client system based on a scheduling algorithm. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A media streaming server system comprising:
-
a non-transitory computer readable medium; and one or more hardware processors communicatively coupled with the computer readable medium, the non-transitory computer readable medium encoding instructions that when executed by the one or more hardware processors cause the media streaming server system to perform operations comprising; establishing, based at least in part on cryptographic information placed in a predefined portion of a handshake network communication, a communication session with a client system to stream one or more media streams, the predefined portion being reserved for random data, processing the one or more streams, wherein the processing comprises; dividing each of the one or more streams into a plurality of network communications, wherein each network communication of the plurality of network communications has an associated data payload and an associated header, and writing to a header of a network communication from the plurality of network communications rendering information relating to a media rendering state associated with the network communication and one or more subsequent network communications of the plurality of network communications, and streaming the processed one or more streams to the client system via the established communication session, wherein the operation of streaming the processed one or more streams comprises queuing the plurality of network communications for transmission based on a media type of each of the plurality of network communications, wherein the operation of queuing comprises assigning a priority to each of the processed one or more streams totaling a priority for each stream, calculating a desired transmission rate for each of the processed one or more streams using the assigned priority and the totaled priority, counting a sub-total of the plurality of associated network communications transmitted per the processed one or more streams during a preset period, counting a total number of the plurality of associated network communications transmitted during the preset period, calculating an actual transmission rate for each stream of the processed one or more streams using the sub-total and the total, and calculating a ratio between the desired transmission rate and the actual transmission rate, and transmitting ones of the queued plurality of network communications to the client system based on a scheduling algorithm. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification