Methods of determining communications protocol latency
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 characteristics of transaction-based protocol exchanges to and/or from said node; and
deriving a plurality of different components including round-trip network latency, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time by calculating a time from when the node sends an HTTP request until a time the server replies with an initial HTTP reply, and remaining content time by calculating a time after the server replies with the initial HTTP reply until a time when the node receives a final HTTP reply from the server, in response to said monitoring; and
wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said first-mentioned node.
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.
-
Citations
29 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 characteristics of transaction-based protocol exchanges to and/or from said node; and
deriving a plurality of different components including round-trip network latency, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time by calculating a time from when the node sends an HTTP request until a time the server replies with an initial HTTP reply, and remaining content time by calculating a time after the server replies with the initial HTTP reply until a time when the node receives a final HTTP reply from the server, in response to said monitoring; and
wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said first-mentioned node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
- monitoring characteristics of transaction-based protocol exchanges to and/or from said node; and
-
13. A method for subscription-based remote monitoring service, the method comprising:
- initiating a monitoring subscription over the internet after receiving a subscription payment, including obtaining at least one network address to be monitored;
remotely monitoring, over said network, transactions involving said network address; and
deriving a plurality of different components including, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time, remaining content time, network latency and device latency in response to said monitoring; and
wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said first-mentioned node.
- initiating a monitoring subscription over the internet after receiving a subscription payment, including obtaining at least one network address to be monitored;
-
14. 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; and
calculating a plurality of different components including round-trip network latency, TCP connect time, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time and remaining content time; and
further including continually calculating transport-to-transport network latency to obtain minimum network latency for at least one TCP session. - View Dependent Claims (15, 16, 17, 18)
- monitoring TCP traffic between a server and a client; and
-
19. A method for monitoring the performance of a wireless network including at least one node that communicates with the wireless network using a transaction-based protocol, the method comprising:
- monitoring particular characteristics of wireless transaction-based protocol exchanges to and/or from said node; and
deriving a plurality of components including round-trip network latency, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time, remaining content time, and round-trip network latency in response to said monitoring; and
wherein said monitoring step includes;
continually calculating network retransmission time and computing web server processing time and TCP connect time and the number of packets lost, said computing taking into account said calculated network retransmission time. - View Dependent Claims (20, 21, 22, 23, 24, 25)
- monitoring particular characteristics of wireless transaction-based protocol exchanges to and/or from said node; and
-
26. A non-transitory computer-readable medium that stores instructions that when executed by a computer cause the computer to perform a method, the method comprising:
-
monitoring characteristics of transaction-based protocol exchanges to and/or from a node in a network; and deriving a plurality of different components including round-trip network latency, TCP connect processing time by calculating a time from when a SYN packet is sent by the node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time by calculating a time from when the node sends an HTTP request until a time the server replies with an initial HTTP reply, and remaining content time by calculating a time after the server replies with the initial HTTP reply until a time when the node receives a final HTTP reply from the server, in response to said monitoring; wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said node.
-
-
27. A non-transitory computer-readable medium that stores instructions that when executed by a computer cause the computer to perform a method, the method comprising:
-
monitoring characteristics of transaction-based protocol exchanges to and/or from a node in a network; and deriving a plurality of different components including round-trip network latency, network connect processing time by calculating a time from when a first acknowledgment packet is sent by the node to a server until a time the server replies with a server acknowledgment packet, web server processing time by calculating a time from when the node sends a request until a time the server replies with an initial reply, and remaining content time by calculating a time after the server replies with the initial reply until a time when the node receives a final reply from the server, in response to said monitoring; wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said node.
-
-
28. A non-transitory computer-readable medium that stores instructions that when executed by a computer cause the computer to perform a method, the method comprising:
-
initiating a monitoring subscription over the Internet after receiving a subscription payment, including obtaining at least one network address to be monitored; remotely monitoring, over said network, transactions involving said network address; and deriving a plurality of different components including, TCP connect processing time by calculating a time from when a SYN packet is sent by a first node to a server until a time the server replies with a SYN acknowledgment packet, web server processing time, remaining content time, network latency and device latency in response to said monitoring; wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said first node.
-
-
29. A system, comprising:
-
at least one processor for processing instructions; a network interface for communicating with a network and being operatively connected to the at least one processor; a non-transitory computer-readable medium that stores instructions that when executed by the at least one processor cause the system to perform a method, the method comprising; monitoring characteristics of transaction-based protocol exchanges to and/or from a node in the network; and deriving a plurality of different components including round-trip network latency, network connect processing time by calculating a time from when a first acknowledgment packet is sent by the node to a server until a time the server replies with a server acknowledgment packet, a server processing time by calculating a time from when the node sends a request until a time the server replies with an initial reply, and remaining content time by calculating a time after the server replies with the initial reply until a time when the node receives a final reply from the server, in response to said monitoring; wherein said deriving step includes deriving and subtracting delays associated with processing by a further node communicating over the network with said node.
-
Specification