System and method of middlebox detection and characterization
View Patent ↗A computer-implemented system and method to detect and characterize middleboxes is disclosed. Embodiments of the system and method include a middlebox detection engine to provide a plurality of middlebox detection modules, and to use at least one middlebox detection module of the plurality of middlebox detection modules to determine if a middlebox exists on a path between a first communicating entity of a network and a second communicating entity of the network.
1. A method comprising:
embedding a web beacon into web content to direct a client to a detection server;
serving client code to the client, in response to activation of the web beacon, the client code, executed at the client, to gather client information related to middlebox detection;
receiving client information related to middlebox detection from the client;
using the client information to perform middlebox detection analysis;
using a standalone middlebox detection module that is not executed at the client to augment the middlebox detection analysis; and
using the middlebox detection analysis to determine if a middlebox exists on a path between a first communicating entity and a second communicating entity.
2. The method as claimed in claim 1 wherein performing middlebox detection analysis includes HTTP header analysis.
3. The method as claimed in claim 1 wherein performing middlebox detection analysis includes performing Synchronization packet fingerprinting.
4. The method as claimed in claim 1 wherein performing middlebox detection analysis includes collecting User-Agent string information.
5. The method as claimed in claim 1 wherein receiving client information includes using a client applet to gather client configuration information.
6. The method as claimed in claim 1 wherein the client information includes client timezone parameter information.
7. The method as claimed in claim 1 wherein the client information includes client language parameter information.
8. The method as claimed in claim 1 wherein the client information includes network round-trip timing information.
9. An article of manufacture comprising a non-transitory machine-readable storage medium having machine executable instructions embedded thereon, which when executed by a machine, cause the machine to:
embed a web beacon into web content to direct a client to a detection server;
serve client code to the client, in response to activation of the web beacon, the client code, executed at the client, to gather client information related to middlebox detection;
receive client information related to middlebox detection from the client;
use the client information to perform middlebox detection analysis;
use a standalone middlebox detection module that is not executed at the client to augment the middlebox detection analysis; and
use the middlebox detection analysis to determine if a middlebox exists on a path between a first communicating entity and a second communicating entity.
10. The article of manufacture as claimed in claim 9 being configured to perform HTTP header analysis.
11. The article of manufacture as claimed in claim 9 being configured to perform Synchronization packet fingerprinting.
12. The article of manufacture as claimed in claim 9 being configured to use a client applet to gather client configuration information.
13. A system comprising:
a processor;
a memory coupled to the processor to store information related to middlebox detection; and
a middlebox detection system to embed a web beacon into web content to direct a client to a detection server, to serve client code to the client, in response to activation of the web beacon, the client code, executed at the client, to gather client information related to middlebox detection, to receive client information related to middlebox detection from the client, to use the client information to perform middlebox detection analysis, to use a standalone middlebox detection module that is not executed at the client to augment the middlebox detection analysis, and to use the middlebox detection analysis to determine if a middlebox exists on a path between a first communicating entity and a second communicating entity.
14. The system as claimed in claim 13 being configured to perform HTTP header analysis.
15. The system as claimed in claim 13 being configured to perform Synchronization packet fingerprinting.
16. The system as claimed in claim 13 being configured to use a client applet to gather client configuration information.