Automatic Detection of intermediate network device capabilities
First Claim
1. A computer readable media having stored thereon a data structure, comprising:
- a first portion containing data identifying a message type;
a second portion containing data identifying one or more headers, the one or more headers including an experiment interest header to notify a server device that a client device desires to perform a test of streaming data from the server device to the client device; and
a third portion containing data identifying an end of the second portion in the data structure.
2 Assignments
0 Petitions
Accused Products
Abstract
Automatic detection of intermediate network device capabilities includes analyzing requests received, at a particular device, from a remote device. The analyzing is performed to determine, based on the content of the requests, whether an intermediate device on the network situated between the device and the remote device does not support streaming of data from the device to the remote device using the pipelining feature of Hypertext Transport Protocol (HTTP) 1.1. In one implementation, a test is performed by sending two back to back requests from the remote device to the particular device. The test is determined to be a success if the requests are received within a threshold amount of time of one another, and a failure if the requests are not received within the threshold amount of time of one another.
156 Citations
82 Claims
-
1. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data identifying a message type;
a second portion containing data identifying one or more headers, the one or more headers including an experiment interest header to notify a server device that a client device desires to perform a test of streaming data from the server device to the client device; and
a third portion containing data identifying an end of the second portion in the data structure. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data representing a type of the data structure; and
a second portion containing data identifying a directive for the data structure that notifies a server device that a client device desires to perform a test of streaming data from the server device to the client device, the second portion further functioning to delimit an end of the data structure. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data identifying a message type;
a second portion containing data identifying one or more headers, the one or more headers including an experiment flag header to notify a server device that the message is part of a test of streaming data from the server device to the client device; and
a third portion containing data identifying an end of the second portion in the data structure. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data representing a type of the data structure; and
a second portion containing data identifying a directive for the data structure that notifies a server device that the data structure is part of a test of streaming data from the server device to the client device, the second portion further functioning to delimit an end of the data structure. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data identifying a message type;
a second portion containing data identifying one or more headers, the one or more headers including an inhibit version 1.1 header to indicate to a server device that data should not be streamed to a client device using HyperText Transfer Protocol 1.1 pipelined streaming; and
a third portion containing data identifying an end of the second portion in the data structure. - View Dependent Claims (24, 25, 26)
-
-
27. A computer readable media having stored thereon a data structure, comprising:
-
a first portion containing data representing a type of the data structure; and
a second portion containing data identifying a directive for the data structure that notifies a server device that streaming of data to a client device should not use HyperText Transfer Protocol 1.1 pipelined streaming, the second portion further functioning to delimit an end of the data structure. - View Dependent Claims (28, 29, 30, 31)
-
-
32. A method, implemented in a device, the method comprising:
-
receiving, at the device, a first request from a remote device;
determining that the first request includes an indicator that the first request is one of a plurality of requests that are a test of streaming data from the device to the remote device using pipelined streaming;
in response to the determining, checking whether a second request from the remote device is received at the device within a threshold amount of time of receiving the first request; and
determining that the test is a success if the second request is received within the threshold amount of time, and determining that the test is a failure if the second request is not received within the threshold amount of time. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors, causes the one or more processors to:
-
receive a first request from a remote device;
identify, based on an indicator in the first request, that the first request is one of a plurality of requests that are a test of pipelined streaming of data to the remote device;
in response to the identification, check whether a second request from the remote device is received within a threshold amount of time of receipt of the first request; and
determine that the test is a success if the second request is received within the threshold amount of time, and determine that the test is a failure if the second request is not received within the threshold amount of time. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. A method, implemented in a device, the method comprising:
-
sending, to a remote device, a first request that includes an indicator that the first request is one of a plurality of requests that are a test of pipelined streaming of data from the remote device to the device; and
sending, to the remote device, a second request without waiting for a response to the first request from the remote device. - View Dependent Claims (60, 61, 62, 63, 64, 65, 66, 67)
-
-
68. One or more computer readable media having stored thereon a plurality of instructions that, when executed by one or more processors of a device, causes the one or more processors to:
-
send, to a streaming data source, a first request that includes an indicator that the first request is part of a test of streaming data from the streaming data source to the device using pipelining; and
send, to the streaming data source, a second request prior to receipt of a response to the first request from the streaming data source. - View Dependent Claims (69, 70, 71, 72, 73, 74, 75, 76, 77)
-
-
78. A method comprising:
-
receiving, from a remote device via a network, a request as a HyperText Transport Protocol (HTTP) message having a start line portion indicating the message conforms to HTTP 1.1; and
determining, based on data in the message, that media is not to be streamed to the remote device using HTTP 1.1 pipelined streaming even though the request indicates the message conforms to HTTP 1.1. - View Dependent Claims (79, 80)
-
-
81. A method comprising:
- testing a connection between two devices to determine whether an intermediate device is present in the connection that does not support streaming data from one of the two devices to the other using Hypertext Transport Protocol (HTTP) 1.1 pipelined streaming.
- View Dependent Claims (82)
Specification