Method and apparatus for providing measurement, and utilization of, network latency in transaction-based protocols
First Claim
1. A method for monitoring the performance of a network including at least one node that communicates with the network using a transaction-based protocol, the method comprising:
- monitoring particular characteristics of transaction-based protocol exchanges to and/or from said node; and
deriving round-trip network latency in response to said monitoring.
3 Assignments
0 Petitions
Accused Products
Abstract
A remote network monitor for monitoring transaction-based protocols such as HTTP receives and analyzes protocol requests and associated responses, and derives therefrom a parameter associated with round-trip network latency. For example, TCP/IP acknowledgement packets can be used to deduce network latency. Such network latency and total latency parameters can be used to determine which portion of total latency can be attributable to the network and which portion is attributable to node processing time (e.g., server and/or client processing). A plurality of remotely located network monitors (and/or monitors co-located with servers and/or clients) can be used to derive and report on actual latency experienced throughout the network.
434 Citations
28 Claims
-
1. A method for monitoring the performance of a network including at least one node that communicates with the network using a transaction-based protocol, the method comprising:
-
monitoring particular characteristics of transaction-based protocol exchanges to and/or from said node; and
deriving round-trip network latency in response to said monitoring. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18)
-
-
15. A subscription-based remote monitoring service comprising:
-
initiating a monitoring subscription over the Internet, including obtaining at least one network address to be monitored;
remotely monitoring, over said network, transactions involving said network address; and
deriving network latency and device latency in response to said monitoring.
-
-
16. A remote network monitor comprising:
-
a receiver coupled to a network, said receiver receiving requests and responses from at least one node located remotely from said receiver on the network;
a protocol analyzer coupled to said receiver, said protocol analyzer isolating features of received requests and responses and logging times associated with each; and
a latency calculator that calculates, in response to said logging, latency associated with said network and latency associated with said node.
-
-
17. A method of determining communications protocol latency including:
-
monitoring HTTP traffic flowing between a web server and a web client; and
using the web server'"'"'s initial HTTP reply packet as the logical dividing line for the web client to web server HTTP packet exchange, wherein said logical dividing line is used to distinguish initial web server reply time from network transport time.
-
-
19. A method of determining communications protocol latency including:
-
monitoring TCP traffic between a server and a client; and
using an IP Header sequence number to help distinguish out-of-order TCP packets from retransmitted TCP data packets each carrying HTTP data.
-
-
20. A method of determining communications protocol latency including:
-
monitoring TCP traffic between a server and a client; and
using an initial exchange between said server and said client and TCP header flags to determine whether an initial HTTP reply is retransmitted. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A method of calculating communication latency by monitoring a communications protocol over a network comprising:
-
monitoring protocol traffic between a client and a server over the network;
continually calculating network retransmission time; and
taking said calculated network retransmission time into account when computing web server processing time and TCP connect time and the number of packets lost.
-
-
27. A method of determining whether web page content is static or dynamic including:
-
monitoring HTTP protocol traffic between a web client and a web server over a network; and
using an HTTP initial request and reply to determine if the content of at least one web page hosted by the web server is static or dynamic.
-
-
28. A method of determining web server processing time including:
-
monitoring communications between said web server and at least one client; and
discounting at least one retransmitted HTTP Get or HTTP Post request from said client as web server processing time.
-
Specification