From: Dragos V. <vin...@fo...> - 2006-10-30 20:29:50
|
OMG!!! Charles, thanks a lot! It's great to see that big companies like Intel and HP are supporting the development of free tools by not forgetting to contribute back. I hope that this would inspire more people to contribute. Charles P Wright wrote: > Hello All, > > At IBM research we have developed several enhancements for SIPp that > improve performance and flexibility. I have attached a .tar.gz of the > patches and a "series" file that lists them in the order they should be > applied (against the 2006/10/04 snapshot). I've included a brief > description of each of the patches below. > > Charles > > These patches allow SIPp to be used for our VoIP user-model based benchmark. > There are some internal scalability improvements that do not affect usage, and > also a few minor external changes to increase the flexibility of reporting and > pauses. > > To enable distributed pauses, you must compile with the GNU Scientific Library > (GSL). As SIPp does not have an autoconfiguration script, you create a file > named "local.mk" with the following lines: > > EXTRACPPFLAGS=-DHAVE_GSL > EXTRACFLAGS=-DHAVE_GSL > EXTRALIBS=-lgsl -lgslcblas > > You can obtain GSL from http://www.gnu.org/software/gsl/. GSL RPMs are > also available on many distributions, including RedHat 7-9, Fedora 1-5, > Redhat AS 4, and SuSE 9.X and 10. > > The external changes to SIPp are one new command line option (-users), which > specifies a fixed number of users; the 'Q' key stops SIPp in its tracks (just > like control-C); and several modifications to the XML scenario file: > > - The <pause /> item has three new types of pauses: normal, lognormal, and > exponential. To specify a statistically distributed pause add its name as a > parameter with a value (e.g., <pause normal="true" ... />). > > - Normal pauses require a mean and standard deviation. For example: > <pause normal="true" mean="60000" stdev="15000" /> > Provides a normal pause with a mean of 60 seconds (i.e. 60,000 ms) and a > standard deviation of 15 seconds. The mean and standard deviation are > specified as integer milliseconds. > > - Lognormal pauses are specified in terms of the mean and standard deviation > of the normal distribution that is exponentiated. For example: > <pause lognormal="true" mean="12.28" stdev="1" /> > Creates a distribution's whose natural logarithm has a mean of 12.28 and a > standard deviation of 1. The mean and standard deviation are specified as > double values (in milliseconds). > > - Exponential pauses require an integer mean. For example: > <pause exponential="true" mean="900000" /> > Creates an exponentially distributed pause with a mean of 15 minutes. > > - Each send or receive message may start and end a response time duration. > Unmodified SIPp uses a single RTD value per call, thus the XML used a boolean > value to indicate starting an RTD (with start_rtd) and ending an RTD with > (rtd) as follows: > <send start_rtd="true"> > ... > </send> > <recv response="200" rtd="true" /> > Our new SIPp supports the same syntax, mapping "true" to RTD 1. We also > support an arbitrary number of RTD timers (determined at compile time, > currently 5). To use a new timer, specify start_rtd and rtd as an integer > from 1 to 5. You can view the new RTD timers by pressing 5, 6, 7, and 8. > > - We also support five generic message counters. Simply add the new "counter" > parameter to a send or receive (from 1 to 5). When that message is > processed, we add one to the counter. For example: > <recv request="INVITE" counter="1" /> > .. > <recv request="BYE" counter="2" /> > Increments counter 1 when the INVITE is recieved and counter 2 when the BYE > is recieved. > > - The <nop /> item can be used for rtd, start_rtd, and count. > > These patches apply to SIPp 2006-10-04. You can use the quilt tool to apply > these patches (http://savannah.nongnu.org/projects/quilt/), or manually apply > them in the order listed in series (the following descriptions are also in > order): > > - dynamicpeer > Use a dynamically allocated peer tag, this reduces the memory usage per > call by an order of magnitude. > > - pausecleanup > Clean up the handling of the pause keyword. > > - distpause > Normal, lognormal, and exponentially distributed pauses. These pauses > are based on GSL, and the infrastructure is there for any type of > pause that someone wants to add. > > - rtd > Allows multiple response times to be counted. > > - counter > Increments a generic counter on a recieve or send. > > - runqueue > Divides calls into paused calls and running calls. Paused calls are > managed using a timing wheel ala Varghese's 1996 article. > > - users > The -users option begins users calls at startup, and maintains a fixed > number of calls. Only half of a timer cycle can be used for call > startup. > > - hardquit > The 'Q' key (or control thread) sends a SIGINT to itself, thus causing > SIPp to quit immediately. > > - nopcount > Allow nops to be used for RTDs and counts. > > - buffsize > Allows the socket receive buffer to be increased on the command line. > > - lastheaderstrings > Uses a custom version of tolower for strcasestr2. > > Eliminates the need for memset of large strings (e.g, there was a 20KB > memset for each message processed). > > - rsaport > Uses port 5060 by default if the -rsa option does not specify a port. > > - closefdsinbg > Close all file descriptors after we create the child process. > > - printscreenkey > 'S' key dumps the screens to a file (this can be used over the control > socket, a signal cannot) > > - stdev > Add a standard deviation column for call length and response time > > - rateincrement > Increase the rate from n to m at some interval. > > - authtweak > Check dialog_authentication before running a strstr on every message. > > - retransstat > Add Retransmissions(P) and Retransmissions(C) columns to the stat file. > > - tcpwait > Allow EAGAIN to be handled gracefully more than once. > > - openloop > Allow -l 0 to be specified so that a UAC scenario can act as an open > loop workload generator. > > (See attached file: sipp-patches-2006-10-04-ibm1.tar.gz) > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > ------------------------------------------------------------------------ > > _______________________________________________ > Sipp-users mailing list > Sip...@li... > https://lists.sourceforge.net/lists/listinfo/sipp-users > -- ----------------------------------------- Dipl. Eng. Dragos Vingarzan FOKUS/NGNI Kaiserin-Augusta-Allee 31 10589 Berlin,Germany Phone +49 (0)30 - 3463 - 7385 Mobile +49 (0)163 - 159 - 5221 eMail vin...@fo... Web www.fokus.fraunhofer.de We could change the world if God would give us the source code... ----------------------------------------------------------------- |