System and method for monitoring performance, analyzing capacity and utilization, and planning capacity for networks and intelligent, network connected processes
First Claim
1. A system for monitoring performance, capacity, and utilization of a network system, comprising:
- means for sending probative test packets and transactions including short pings and long pings across a network to an intelligent end station to generate test results including best observed short ping and best observed long ping;
means for deriving and applying network queue factor to said test results to determine capacity, utilization, and performance of said network, devices connected by said network, and said devices and said network considered as a unitary system;
said test results further comprising data for instantaneously analyzing the current condition of said network system, establishing an historical database, determining how a user application transaction performs, and providing what if analysis for future changes to said network system.
1 Assignment
0 Petitions
Accused Products
Abstract
Analysis of networks and testing and analyzing intelligent, network connected devices. An instantaneous network utilization value is assigned for the worst surviving ping instance of between 90% and 99% (determined proportionately from the ratio of dropped test samples to surviving test samples), and then used to solve for average network message size and average utilization of the network. A plurality transactions of different types are transmitted across the network to intelligent end systems and the results mathematically evaluated to determine the portion of the total response time contributed by the network and by the end processors; the utilization of the end processor processing subsystems and of the end processor I/O subsystems; and the utilization of the end system as a whole; and of the network and end processors considered as a unitary entity. Steps include determining utilization of the network when test packets are dropped by the network; utilization of intelligent processor and other devices attached to the network when test transactions are dropped, and when not dropped; and response time for remote processes at both the network and processor level.
-
Citations
27 Claims
-
1. A system for monitoring performance, capacity, and utilization of a network system, comprising:
-
means for sending probative test packets and transactions including short pings and long pings across a network to an intelligent end station to generate test results including best observed short ping and best observed long ping;
means for deriving and applying network queue factor to said test results to determine capacity, utilization, and performance of said network, devices connected by said network, and said devices and said network considered as a unitary system;
said test results further comprising data for instantaneously analyzing the current condition of said network system, establishing an historical database, determining how a user application transaction performs, and providing what if analysis for future changes to said network system.
-
-
2. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for monitoring performance, capacity, and utilization of a network system, said method steps comprising:
-
sending probative test packets and transactions across a network to an intelligent end station;
responsive to said test packets, calculating latency and average queue delay;
calculating apparent and streaming bandwidths;
calculating network hop count, multi-server factor, and queue depth; and
therefromdetermining capacity, utilization, and performance of said network, devices connected by said network, and said devices and said network considered as a unitary system. - View Dependent Claims (3, 4)
-
-
5. System for monitoring performance, capacity, and utilization of a network system, comprising:
-
means for transmitting through said network system pings of different sizes to generate test data; and
mean for determining apparent responsiveness of said network as a function of latency and average queue delay, apparent and streaming bandwidths, network hop count, multi-server factor, and queue depth responsive to said test data. - View Dependent Claims (6)
-
-
7. Method for monitoring performance, capacity, and utilization of a network system, comprising the steps of:
-
transmitting through said network system pings of different sizes to generate test data; and
responsive to said test data, calculating latency and average queue delay, apparent and streaming bandwidths, network hop count, multi-server factor, and queue depth for determining apparent responsiveness of said network system. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for monitoring performance, capacity, and utilization of a network system, comprising the steps of:
-
transmitting through said network system pings of different sizes to generate test data;
said transmitting step including performing long and short ping tests in isolation and in bursts to construct mathematical equivalents of isolation tests and burst tests;
responsive to isolation tests, calculating latency and average queue delay;
calculating apparent and streaming band widths;
calculating network hop count, multi-server factor, and queue depth; and
responsive to said test data, determining apparent responsiveness of said network system. - View Dependent Claims (14)
-
-
15. System for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising:
-
means for performing test routines including test transactions across said network and probative tests of said network;
means responsive to data from said transactions and said tests for determining the state of the network, including as a function of network queue factor, network capacity and utilization;
means responsive to said state for deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time;
said means for performing test routines further including;
user input device at said test station for receiving from a user the name or network address of said target station and for customizing said test station as to number, size, and wait time between transmissions of test routines;
transmission means for sending said test transactions and probative tests to said target station, including discrete long pings, discrete short pings, burst of long pings, burst of short pings, first transaction samples that stress the processor of said target station, and second transaction samples that stress the storage retrieval function of said target station;
means for generating test results from said test transactions and probative tests including time of transmission from said test station and receipt back from said target station, number of bytes sent and received for each ping and transmission sample, and number of network sample frames dropped by the network; and
means for analyzing said test results, including calculating network latency, network response time bandwidth, network throughput bandwidth, network queue depth, and network utilization.
-
-
16. A system for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising:
-
means for performing test routines including test transactions across said network and probative tests of said network;
means responsive to data from said transactions and said tests for determining the state of the network, including network capacity and utilization;
means responsive to said state for deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time;
said means for performing test routines further including;
user input device at said test station for receiving from a user the name or network address of said target station and for customizing said test station as to number, size, and wait time between transmissions of test routines;
transmission means for sending said test transactions and probative tests to said target station, including discrete long pings, discrete short pings, burst of long pings, burst of short pings, first transaction samples that stress the processor of said target station, and second transaction samples that stress the storage retrieval function of said target station;
means for generating test results from said test transactions and probative tests including time of transmission from said test station and receipt back from said target station, number of bytes sent and received for each ping and transmission sample, and number of network sample frames dropped by the network; and
means for analyzing said test results, including calculating network latency, network response time bandwidth, network throughput bandwidth, network queue depth, and network utilization;
means responsive to said network latency, network capacity, and said network utilization for calculating network response time for first and second test transactions of at least two message lengths;
means responsive to the response times for best and average network times calculated for said first and second test transactions for deriving average and best target system transaction time exclusive of network time;
means responsive to said best and average target system transaction time, for determining the average number of transactions in the queue of said target system; and
means for calculating transaction utilization as said number of transactions in said queue divided by one plus said number of transactions in said queue.
-
-
17. A method for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising the steps of:
-
performing test routines including test transactions across said network and probative tests of said network;
responsive to data from said transactions and said tests, determining the state of the network, including network capacity and utilization as a function of network queue factor;
responsive to said state, deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time;
said step for performing test routines further including;
receiving from a user the name or network address of said target station and customizing said test station as to number, size, and wait time between transmissions of test routines;
sending said test transactions and probative tests to said target station, including discrete long pings, discrete short pings, burst of long pings, burst of short pings, first transaction samples that stress the processor of said target station, and second transaction samples that stress the storage retrieval function of said target station;
generating test results from said test transactions and probative tests including time of transmission from said test station and receipt back from said target station, the number of bytes sent and received for each ping and transmission sample, and the number of network sample frames dropped by the network; and
analyzing said test results, including calculating network latency, network response time bandwidth, network throughput bandwidth, the network queue depth, and network utilization.
-
-
18. A method for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising the steps of:
-
performing test routines including test transactions across said network and probative tests of said network;
responsive to data from said transactions and said tests, determining the state of the network, including network capacity and utilization;
responsive to said state, deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time;
said step for performing test routines further including;
receiving from a user the name or network address of said target station and customizing said test station as to number, size, and wait time between transmissions of test routines;
sending said test transactions and probative tests to said target station, including discrete long pings, discrete short pings, burst of long pings, burst of short pings, first transaction samples that stress the processor of said target station, and second transaction samples that stress the storage retrieval function of said target station;
generating test results from said test transactions and probative tests including time of transmission from said test station and receipt back from said target station, the number of bytes sent and received for each ping and transmission sample, and the number of network sample frames dropped by the network;
analyzing said test results, including calculating network latency, network response time bandwidth, network throughput bandwidth, the network queue depth, and network utilization;
responsive to said network latency, network capacity, and said network utilization, calculating network response time for first and second test transactions of at least two message lengths;
responsive to the response times for best and average network times calculated for said first and second test transactions, deriving average and best target system transaction time exclusive of network time;
responsive to said best and average target system transaction time, determining the average number of transactions in the queue of said target system; and
calculating transaction utilization as said number of transactions in said queue divided by one plus said number of transactions in said queue.
-
-
19. A method for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising the steps of:
-
performing test routines including test transactions across said network and probative tests of said network;
responsive to data from said transactions and said tests, determining the state of the network, including network capacity and utilization as a function of network queue factor;
responsive to said state, deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time; and
calculating average network message size and network utilization by;
calculating unadjusted standard deviation value Tq for a set of short ping tests and long ping tests; and
adjusting sigma Tq and queue depth to account for variance in service times as well as the multihop and multi server nature of the network.
-
-
20. A method for monitoring performance, capacity, and utilization of a network system including a test station, a network, and a target station, comprising the steps of:
-
performing test routines including test transactions across said network and probative tests of said network;
responsive to data from said transactions and said tests, determining the state of the network, including network capacity and utilization;
responsive to said state, deriving network contribution to application response time, and the capacity and utilization of said target station and its contribution to network system response time;
calculating average network message size and network utilization by;
calculating unadjusted standard deviation value Tq for a set of short ping tests and long ping tests; and
adjusting sigma Tq and queue depth to account for variance in service times as well as the multihop and multi server nature of the network;
calculating sigma Tq by adjusting said unadjusted Tq for the number of servers discovered in network testing;
further adjusting sigma Tq for network message size variance;
responsive to tests including isolated pings, determining network average one way queue delay;
responsive to tests including bursts of pings, determining the streaming bandwidth of said network;
responsive to said queue delay and said streaming bandwidth, deriving the network queue depth value; and
adjusting said network queue value for multiple hops so that the value for adjusted sigma Tq closely approaches the value for Tq.
-
-
21. Method for determining utilization of a network system, comprising the steps of:
-
transmitting and receiving back a plurality of short ping packets in isolation from each other with respect to a target system across a network;
transmitting and receiving back a plurality of long ping packets with respect said target system across said network;
recording transmission and receipt time stamps for said packets, and calculating the round trip time for each said packet;
determining the average round trip times and the best and the worst times for said short ping packets and for said long ping packets;
calculating apparent network bandwidth;
determining network streaming bandwidth;
determining network duplex factor, hop count, and multi-server factor; and
determining number of dropped short ping and long ping test packets.
-
-
22. Method for monitoring performance of a multi-server network system, including the steps of:
-
determining the average number of bits in network queues;
determining average network message size;
responsive to said average number of bits and said message size, calculating network utilization; and
measuring queue buildup as u^n/(1−
u^n), where u is utilization and n is the number of servers in said multi-server network. - View Dependent Claims (23)
-
-
24. A method for monitoring performance, capacity, and utilization of a network system, comprising the steps of:
-
transmitting through said network system pings of different sizes to generate test data;
responsive to said test data, determining apparent responsiveness of said network system;
transmitting test packets among devices in or attached to said network to generate test results, including a plurality of tests selected from the set of tests including;
sending echo or discard packets (e.g., pings) of uniform length, isolated from one another by fixed intervals;
sending echo or discard packets of uniform length in a stream;
sending echo or discard packets of different lengths, isolated from one another by fixed intervals;
sending a file or equivalent batch transfer unidirectionally across the network, repeating with different packet sizes;
sending a file bidirectionally across the network, repeating with different packet sizes;
sending multiple files unidirectionally across the network; and
/orsending multiple files bidirectionally across the network;
sending processor-bound transactions across the network to end systems;
sending I/O-bound transactions across the network to end systems; and
sending general transactions across the network to end systems. - View Dependent Claims (25, 26, 27)
-
Specification