Response time measurement apparatus and method
First Claim
Patent Images
1. A method for determining response times for transactions performed on a computing system, comprising:
- observing a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network;
comparing, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
determining packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
determining a respective time associated with each of the packets associated with the transaction; and
determining a response time for the transaction based on a difference between the times.
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a method and apparatus for measuring transaction response times. The method and apparatus can identify service request sequences corresponding to a transaction and the start and stop times for the transaction. The invention can be applied non-intrusively/non-invasively to the service packets communicated between a source and destination node.
88 Citations
27 Claims
-
1. A method for determining response times for transactions performed on a computing system, comprising:
-
observing a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network;
comparing, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
determining packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
determining a respective time associated with each of the packets associated with the transaction; and
determining a response time for the transaction based on a difference between the times. - View Dependent Claims (2, 3)
wherein said step of observing includes supplying said communications to a probe that intercepts said communications between the source node and the destination node, wherein the probe supplies the packets to the monitoring computer.
-
-
4. A method for determining response times for transactions performed on a computing system, comprising:
-
observing a first sequence of distinct data items communicated over a network between a source node and a destination node, wherein at least a portion of the first sequence is a transaction, wherein the transaction is a collection of the data items;
determining a possible pattern of the data items which identify the transaction based on a selected time interval;
communicating the possible pattern to a monitoring computer of said computing system for identifying the transaction;
comparing, at the monitoring computer, the pattern with a second sequence of data items communicated between the source node and the destination node to detect an occurrence of the transaction;
detecting, for at least some of the data items of the second sequence, corresponding times indicative of when the data items are exchanged between the source node and the destination node at the monitoring computer; and
determining a response time for the occurrence based on said corresponding times. - View Dependent Claims (27)
-
-
5. A method for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
receiving a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
constructing a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of said transaction;
communicating the pattern to a monitoring computer of said computing system for identifying an instance of said pattern in a plurality of the service packets;
comparing said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of said transaction; and
determining a response time for said occurrence using timing information obtained from data of said portion. - View Dependent Claims (6, 7, 8)
-
-
9. A method for determining a response time for a transaction performed by a computing system:
-
generating a first data collection from a first series of time ordered data items communicated between a source node and a destination node of the computing system, wherein said first data collection includes a series of records, each said record corresponding uniquely to one of said data items of said first series;
searching said first data collection for a sub-collection of said records matching a predetermined pattern, wherein said sub-collection identifies a transaction, wherein the transaction is the records in the sub-collection;
determining information from said sub-collection effective for identifying additional occurrences of the first transaction; and
using said information to perform a plurality of comparisons with records from a second data collection obtained from a second series of data items communicated between the source node and the destination node to identify an additional occurrence of said first transaction.
-
-
10. A method for determining response times for transactions performed on a computing system, comprising:
-
observing, at a monitoring computer, a first sequence of distinct data items communicated between a source node and a destination node, wherein at least a portion of said sequence is a transaction, wherein the transaction is a collection of the data items;
determining a pattern of said data items which identify the transaction;
comparing, at the monitoring computer, said pattern with a second sequence of data items communicated between the source node and the destination node to identify a portion of the second sequence of data items associated with an occurrence of said transaction;
detecting a respective time for a portion of the data items associated with the occurrence; and
determining a response time for the occurrence in accordance with a difference between said times.
-
-
11. A method for determining a response time for an occurrence of a transaction performed on a computing system comprising:
-
observing, at a monitoring computer, a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network, wherein the monitoring computer is coupled to the network without a change to the source node and the destination node;
comparing, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
determining packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
determining a respective time associated with each of the packets associated with the transaction; and
determining a response time for the transaction based on a difference between the times.
-
-
12. A method for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
receiving a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
determining a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of an occurrence of said transaction;
communicating the pattern to a monitoring computer for identifying an instance of said pattern in a plurality of the service packets, wherein the monitoring computer is added to said computing system without a change to the computing system;
comparing said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of the transaction; and
determining a response time for the occurrence using timing information obtained from data of said portion.
-
-
13. A system for determining response times for transactions performed on a computing system, comprising:
-
software operable to;
observe a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network;
compare, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
determine packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
determine a respective time associated with each of the packets associated with the transaction; and
determine a response time for the transaction based on a difference between the times.
-
-
14. A system for determining response times for transactions performed on a computing system, comprising:
-
software operable to;
observe a first sequence of distinct data items communicated over a network between a source node and a destination node, wherein at least a portion of the first sequence is a transaction, wherein the transaction is a collection of the data items;
determine a possible pattern of the data items which identify the transaction based on a selected time interval;
communicate the possible pattern to a monitoring computer of said computing system for identifying the transaction;
compare, at the monitoring computer, the pattern with a second sequence of data items communicated between the source node and the destination node to detect an occurrence of the transaction;
detect, for at least some of the data items of the second sequence, corresponding times indicative of when the data items are exchanged between the source node and the destination node at the monitoring computer; and
determine a response time for the occurrence based on said corresponding times.
-
-
15. A system for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
software operable to;
receive a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
construct a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of said transaction;
communicate the pattern to a monitoring computer of said computing system for identifying an instance of said pattern in a plurality of the service packets;
compare said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of said transaction; and
determine a response time for said occurrence using timing information obtained from data of said portion.
-
-
16. A system for determining a response time for a transaction performed by a computing system:
-
software operable to;
generate a first data collection from a first series of time ordered data items communicated between a source node and a destination node of the computing system, wherein said first data collection includes a series of records, each said record corresponding uniquely to one of said data items of said first series;
search said first data collection for a sub-collection of said records matching a predetermined pattern, wherein said sub-collection identifies a transaction, wherein the transaction is the records in the sub-collection;
determine information from said sub-collection effective for identifying additional occurrences of the first transaction; and
use said information to perform a plurality of comparisons with records from a second data collection obtained from a second series of data items communicated between the source node and the destination nodes to identify an additional occurrence of said first transaction.
-
-
17. A system for determining response times for transactions performed on a computing system, comprising:
-
software operable to;
observe, at a monitoring computer, a first sequence of distinct data items communicated between a source node and a destination node, wherein at least a portion of said sequence is a transaction, wherein the transaction is a collection of the data items;
determine a pattern of said data items which identify the transaction;
compare, at the monitoring computer, said pattern with a second sequence of data items communicated between the source node and the destination node to identify a portion of the second sequence of data items associated with an occurrence of said transaction;
detect a respective time for a portion of the data items associated with the occurrence; and
determine a response time for the occurrence in accordance with a difference between said times.
-
-
18. A system for determining a response time for an occurrence of a transaction performed on a computing system comprising:
-
software operable to;
observe, at a monitoring computer, a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network, wherein the monitoring computer is coupled to the network without a change to the source node and the destination node;
compare, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
determine packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
determine a respective time associated with each of the packets associated with the transaction; and
determine a response time for the transaction based on a difference between the times.
-
-
19. A system for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
software operable to;
receive a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
determine a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of an occurrence of said transaction;
communicate the pattern to a monitoring computer for identifying an instance of said pattern in a plurality of the service packets, wherein the monitoring computer is added to said computing system without a change to the computing system;
compare said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of the transaction; and
determine a response time for the occurrence using timing information obtained from data of said portion.
-
-
20. A system for determining response times for transactions performed on a computing system, comprising:
-
means for observing a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network;
means for comparing, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
means for determining packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
means for determining a respective time associated with each of the packets associated with the transaction; and
means for determining a response time for the transaction based on a difference between the times.
-
-
21. A system for determining response times for transactions performed on a computing system, comprising:
-
means for observing a first sequence of distinct data items communicated over a network between a source node and a destination node, wherein at least a portion of the first sequence is a transaction, wherein the transaction is a collection of the data items;
means for determining a possible pattern of the data items which identify the transaction based on a selected time interval;
means for communicating the possible pattern to a monitoring computer of said computing system for identifying the transaction;
means for comparing, at the monitoring computer, the pattern with a second sequence of data items communicated between the source node and the destination node to detect an occurrence of the transaction;
means for detecting, for at least some of the data items of the second sequence, corresponding times indicative of when the data items are exchanged between the source node and the destination node at the monitoring computer; and
means for determining a response time for the occurrence based on said corresponding times.
-
-
22. A system for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
means for receiving a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
means for constructing a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of said transaction;
means for communicating the pattern to a monitoring computer of said computing system for identifying an instance of said pattern in a plurality of the service packets;
means for comparing said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of said transaction; and
means for determining a response time for said occurrence using timing information obtained from data of said portion.
-
-
23. A system for determining a response time for a transaction performed by a computing system:
-
means for generating a first data collection from a first series of time ordered data items communicated between a source node and a destination node of the computing system, wherein said first data collection includes a series of records, each said record corresponding uniquely to one of said data items of said first series;
means for searching said first data collection for a sub-collection of said records matching a predetermined pattern, wherein said sub-collection identifies a transaction, wherein the transaction is the records in the sub-collection;
means for determining information from said sub-collection effective for identifying additional occurrences of the first transaction; and
means for using said information to perform a plurality of comparisons with records from a second data collection obtained from a second series of data items communicated between the source node and the destination nodes to identify an additional occurrence of said first transaction.
-
-
24. A system for determining response times for transactions performed on a computing system, comprising:
-
means for observing, at a monitoring computer, a first sequence of distinct data items communicated between a source node and a destination node, wherein at least a portion of said sequence is a transaction, wherein the transaction is a collection of the data items;
means for determining a pattern of said data items which identify the transaction;
means for comparing, at the monitoring computer, said pattern with a second sequence of data items communicated between the source node and the destination node to identify a portion of the second sequence of data items associated with an occurrence of said transaction;
means for detecting a respective time for a portion of the data items associated with the occurrence; and
means for determining a response time for the occurrence in accordance with a difference between said times.
-
-
25. A system for determining a response time for an occurrence of a transaction performed on a computing system comprising:
-
means for observing, at a monitoring computer, a plurality of packets communicated between a source node of the computing system and a destination node of the computing system over a network, wherein the monitoring computer is coupled to the network without a change to the source node and the destination node;
means for comparing, at a monitoring computer, the packets against a pattern characterization data set, wherein the pattern characterization data set includes a plurality of transaction patterns;
means for determining packets associated with a transaction based on the pattern characterization data set, wherein the transaction is a collection of the packets;
means for determining a respective time associated with each of the packets associated with the transaction; and
means for determining a response time for the transaction based on a difference between the times.
-
-
26. A system for determining a response time for an occurrence of a transaction performed by a computing system, comprising:
-
receiving a first plurality of service packets communicated between a source node and a destination node and associated with a transaction, wherein the transaction is a collection of service requests, the service request being a plurality of the service packets;
determining a pattern from the service packets based on a selected time interval, wherein said pattern is indicative of an occurrence of said transaction;
communicating the pattern to a monitoring computer for identifying an instance of said pattern in a plurality of the service packets, wherein the monitoring computer is added to said computing system without a change to the computing system;
comparing said pattern with a second plurality of the service packets communicated between the source node and the destination node for identifying a portion of the second plurality of the service packets associated with an occurrence of the transaction; and
determining a response time for the occurrence using timing information obtained from data of said portion.
-
Specification