HTTPS clone URL
Subversion checkout URL
Tsung is a high-performance benchmark framework for various protocols including HTTP, XMPP, LDAP, etc.
Fetching latest commit…
Cannot retrieve the latest commit at this time
|Failed to load latest commit information.|
# $Id$ IDX-TSUNAMI README IDEALX ____________________________________________________________ Table of Contents 1. Introduction 1.1 General 1.2 What This Package Is 2. Getting Things Installed 2.1 Dependencies 2.2 Compilation and Installation 2.3 Problems/Bugs 2.4 Platform Issues ______________________________________________________________________ 1. Introduction 1.1. General This document gives pointers for information on this package. Copyright information can be found in the file "COPYING." 1.2. What This Package Is The purpose of this package is to simulate users in order to test the scalability and performances of IP based client/server applications. Currently, only the Jabber protocol has been implemented and tested, but it can be easily extended (see doc/Design.txt). IDX-TSUNAMI use the Erlang language. This tool can simulate thousands of users concurrently, and can be distributed on several client machines. Up to 10000 users can be simulated on a single machine (the limit depends on the hardware and also on the activity of the simulated clients). The idea is to simulate the behavior of a real world client using a stochastic model, in order to achieve a more realistic traffic than other simple models (deterministics). In this context, a client is characterize by: - the mean time elapsed between each request ("think time") - the number of requests during a session - the type and parameters of requests (including, for example, 'chat' message size for Jabber) Another key parameter is the arrival rate of clients. In the current implementation, the client arrival rate and the user "think time" are represented by an exponential distribution (therefore, the arrival process is a Poisson process) The traffic can be logged to a file and, after completion of all the clients, these files can be analyzed by scripts to get useful measurements of responses time. An small script is furnished for the Jabber protocol (mean, median, standard variation, and so on are computed, for different types of messages: authentication, chat, offline messages ...) This software is currently under development and can be enhanced in many ways (see TODO file). 2. Getting Things Installed 2.1. Dependencies - requires Erlang/OTP R7B-0 or up (tested with R7B-2) (http://www.erlang.org/download.html) - perl5 (if you want tu use the scripts) - gnuplot (optional; for graphical output with analyse_msg.pl script) 2.2. Compilation and Installation Edit Makefile and idx-tsunami.pl if you want to change the install path (/usr/local/idx-tsunami by default) Edit src/tsunami.rel.src if your Erlang version is not R7B-2 and set erts, kernel and stdlib version according to your Erlang distribution. make make install How to use it: 1a/ Edit etc/idx-tsunamirc file (read the comments for explanation on the parameters) 1b/ Read the doc/Jabber.txt file for Jabber-specific information. 2/ use the script "idx-tsunami.pl --start" to launch the simulated clients. 3/ When it's finished, you can use analyse_msg.pl to get statistical results from the logfiles (require at least 'light' monitoring, see comments in 'idx-tsunamirc' ) 2.3. Problems/Bugs Submit bug reports/ask questions to the authors (see CONTRIBUTORS) 2.4. Platform Issues This package has only be tested on Linux. It should work on Erlang supported platforms (Solaris, *BSD)