Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
snapshot_script
Package: netperf-2.4.4.tar.gz [view]
Upload User: kvgkvg
Upload Date: 2015-05-07
Package Size: 1129k
Code Size: 8k
Category:
Linux-Unix program
Development Platform:
C/C++
- #!/bin/sh
- #set -x
- #
- # This is a script to generate a quick "snapshot" of performance for a
- # pair of nodes. At first, it will perform the following tests:
- #
- # TCP Stream test with 56KB socket buffers and 4KB sends
- # TCP Stream test with 32KB socket buffers and 4KB sends
- # TCP Request/Response test with 1 byte requests and 1 byte responses
- # UDP Request/Response test with 1 byte requests and 1 byte responses
- # UDP Request/Response test with 516 byte requests and 4 byte responses
- # UDP Stream test with 32KB socket buffers and 4KB sends
- # UDP Stream test with 32KB socket buffers and 1KB sends
- #
- # All tests will run for sixty seconds. Confidence intervals are used
- # to insure the repeatability of the test. This means that the soonest
- # the script will be finished is 21 minutes.
- #
- # This script takes two parameters. The first parm is the name of the
- # remote host. It is a required parameter. The second will either
- # enable or disable CPU utilization measurements. It is an optional
- # parameter which defaults to no CPU utilization measurements.
- #
- # usage: snapshot_script hostname [CPU]
- #
- # mod 6/29/95 - echo progress information to stderr so that we can
- # see forward progress even when the results are
- # re-directed to a file
- #
- # mod 5/27/96 - switch from NETHOME to NETPERF and take the user's value
- # if it is already set
- #
- # mod 8/12/96 - fix the default netperf command variable so it finds the
- # executable and not the directory...
- #
- # First, let us set-up some of the defaults
- #
- # where is netperf installed, there are a few possible places:
- NETPERF_CMD=${NETPERF_CMD:=/opt/netperf/netperf}
- # there should be no more than two parms passed
- if [ $# -gt 2 ]; then
- echo "try again, correctly -> snapshot_script hostname [CPU]"
- exit 1
- fi
- if [ $# -eq 0 ]; then
- echo "try again, correctly -> snapshot_script hostname [CPU]"
- exit 1
- fi
- # if there are two parms, parm one it the hostname and parm two will
- # be a CPU indicator. actuall, anything as a second parm will cause
- # the CPU to be measured, but we will "advertise" it should be "CPU"
- if [ $# -eq 2 ]; then
- REM_HOST=$1
- LOC_CPU="-c"
- REM_CPU="-C"
- fi
- if [ $# -eq 1 ]; then
- REM_HOST=$1
- fi
- # at what port will netserver be waiting? If you decide to run
- # netserver at a differnet port than the default of 12865, then set
- # the value of PORT apropriately
- #NETPERF_PORT="-p some_other_portnum"
- NETPERF_PORT=${NETPERF_PORT:=""}
- # How accurate we want the estimate of performance:
- # maximum and minimum test iterations (-i)
- # confidence level (99 or 95) and interval (percent)
- STATS_STUFF="-i 10,3 -I 99,5"
- # length in time of the test - should be 60 seconds
- NETPERF_TIME=${NETPERF_TIME:=60}
- # where is the bitbucket?
- BITBUCKET="/dev/null"
- # announce start of test
- echo Netperf snapshot script started at `date` >&2
- # If we are measuring CPU utilization, then we can save beaucoup time
- # by saving the results of the CPU calibration and passing them in
- # during the real tests. So, we execute the new CPU "tests" of netperf
- # and put the values into shell vars.
- case $LOC_CPU in
- -c) LOC_RATE=`$NETPERF_CMD $NETPERF_PORT -t LOC_CPU`;;
- *) LOC_RATE=""
- esac
- case $REM_CPU in
- -C) REM_RATE=`$NETPERF_CMD $NETPERF_PORT -t REM_CPU -H $REM_HOST`;;
- *) REM_RATE=""
- esac
- # We will perform three twenty second warm-up tests at this point, but
- # we will not display the results of those tests. This is unlikely to
- # make any difference in the results except right after a system
- # reboot, but this is supposed to be rather "general." We will do a
- # TCP stream and a TCP req/resp test
- WARM_TIME="10"
- $NETPERF_CMD $NETPERF_PORT -l $WARM_TIME -t TCP_STREAM -H $REM_HOST --
- -s 32768 -S 32768 -m 4096 > ${BITBUCKET}
- $NETPERF_CMD $NETPERF_PORT -l $WARM_TIME -t TCP_STREAM -H $REM_HOST --
- -s 32768 -S 32768 -m 96 > ${BITBUCKET}
- $NETPERF_CMD $NETPERF_PORT -l $WARM_TIME -t TCP_RR -H $REM_HOST --
- -r 1,1 > ${BITBUCKET}
- # The warm-ups are complete, so perform the real tests first, the
- # stream tests, then the request/response
- echo Starting 56x4 TCP_STREAM tests at `date` >&2
- # a 56x4 TCP_STREAM test
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t TCP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 57344 -S 57344 -m 4096
- echo
- $NETPERF_CMD $NETPERF_PORT -t TCP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 57344 -S 57344 -m 4096
- echo
- echo
- # a 32x4 TCP_STREAM test
- echo Starting 32x4 TCP_STREAM tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t TCP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 4096
- echo
- $NETPERF_CMD $NETPERF_PORT -t TCP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 4096
- echo
- echo
- # a single-byte TCP_RR
- echo Starting 1,1 TCP_RR tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t TCP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -r 1,1
- echo
- $NETPERF_CMD $NETPERF_PORT -t TCP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -r 1,1
- echo
- echo
- echo Starting 1,1 UDP_RR tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- # a single-byte UDP_RR
- echo $NETPERF_CMD $NETPERF_PORT -t UDP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -r 1,1
- echo
- $NETPERF_CMD $NETPERF_PORT -t UDP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -r 1,1
- echo
- echo
- # a UDP_RR test much like tftp
- echo Starting 512,4 UDP_RR tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t UDP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -r 516,4
- echo
- $NETPERF_CMD $NETPERF_PORT -t UDP_RR -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF -- -r 516,4
- # a 32x4 UDP_STREAM test
- echo Starting 32x4 UDP_STREAM tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t UDP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 4096
- echo
- $NETPERF_CMD $NETPERF_PORT -t UDP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 4096
- echo
- echo
- # a 32x1 UDP_STREAM test
- echo Starting 32x1 UDP_STREAM tests at `date` >&2
- echo
- echo ------------------------------------
- echo Testing with the following command line:
- echo $NETPERF_CMD $NETPERF_PORT -t UDP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 1024
- echo
- $NETPERF_CMD $NETPERF_PORT -t UDP_STREAM -l $NETPERF_TIME -H $REM_HOST
- $LOC_CPU $LOC_RATE $REM_CPU $REM_RATE $STATS_STUFF --
- -s 32768 -S 32768 -m 1024
- echo
- echo
- # and that's that
- echo Tests completed at `date` >&2
- echo
- echo If you wish to submit these results to the netperf database at
- echo http://www.cup.hp.com/netperf/NetperfPage.html, please submit each
- echo datapoint individually. Individual datapoints are separated by
- echo lines of dashes.