Jef Poskanzer
647d3b95a8
New implementation of the -b bandwidth limit flag, that applies to
...
TCP as well as UDP.
2013-06-24 07:14:14 -07:00
Jef Poskanzer
69bdbfd36d
Handle retransmits correctly in reverse mode.
2013-05-29 15:18:18 -07:00
Jef Poskanzer
2c042fd469
Simplify multiple client/server forward/reverse checks into
...
a single sender boolean.
2013-05-29 12:32:42 -07:00
Jef Poskanzer
12d474e2b4
A couple other places that used struct sockaddr_in when they should
...
have used struct sockaddr_storage - fixed now.
2013-05-02 15:28:30 -07:00
Jef Poskanzer
111645ed0f
Fix UDP for IPv6 and dual-stack.
2013-05-02 15:18:07 -07:00
Jef Poskanzer
e96ab74093
Move the JSON initialization/finalization insode the API.
2013-03-08 20:56:52 -08:00
Jef Poskanzer
987b432316
A bunch of changes mixed together in this commit, but the significant
...
one is the new -Z flag.
- Fixed potential bug in net.c's Nread and Nwrite routines. If they
had ever needed to loop they would have read/written the wrong address,
due to incorrect pointer arithmetic - sizeof(void) is not 1. Fix
was to change the type of the buffer pointer to char*, which also
meant adding casts to some callers.
- Better checking for conflicts between command-line flags - now they
should no longer be order-dependent.
- Added a new -Z / --zerocopy flag, to use a "zero copy" method of
sending data, such as sendfile(2) instead of the usual write(2).
- Renumbered error enum to make inserting new ones easier.
2013-03-04 15:55:16 -08:00
Jef Poskanzer
b5e0751f59
(Mostly) switched error reporting to a single routine that handles JSON mode.
2013-02-07 12:35:17 -08:00
Jef Poskanzer
9bfb54c0cc
Add -J flag to produce JSON output instead.
2013-02-01 11:42:35 -08:00
Jef Poskanzer
6177a7f1f1
Get rid of extra select() calls before reading and writing,
...
in both client and server. Instead we pass in and use the
fdsets from the main loop's select().
2013-01-18 10:17:05 -08:00
Jef Poskanzer
ec2d0670b8
Switched to using a new timer package, adapted from thttpd and http_load.
2012-12-11 22:29:26 -08:00
jef
98ce496b1b
Some changes to the iperf3 API to work with bwctl, mostly having to
...
do with what defs are in which include file. End result is we now have
only one public include file, iperf_api.h.
2012-09-28 16:00:14 -07:00
Jon Dugan
7d375156aa
update license info for all source files
2011-04-20 20:33:09 +00:00
sethdelliott
3331e801b9
Added portable CPU utilization code. Still need to exchange utilizations between client and server.
2011-02-24 17:08:54 +00:00
Jon Dugan
1fac1d2626
add queue.h from OpenBSD; use self contained queue.h from OpenBSD; fix indenting on previous commit
2010-09-08 20:35:47 +00:00
sethdelliott
02a35f07e3
Merged print mss (-m) into verbose mode (-V)
2010-08-04 19:19:08 +00:00
sethdelliott
0bd8d9da6e
Added ability to set TCP window size (-w). Modified code to keep test structures intact after a test is complete. Improved interval timer granularity. Fixed a bug with timeval_diff.
2010-08-02 22:45:53 +00:00
sethdelliott
dd4bc0089b
Stream list is now managed by queue.h SLIST macros
2010-07-28 20:29:25 +00:00
sethdelliott
ffdcc7d457
Updated iperf_error and moved the SIGINT handler out of the library
2010-07-27 22:11:09 +00:00
sethdelliott
f99bd3b2c6
Added support for IPv6 mode (-6)
2010-07-27 20:27:34 +00:00
sethdelliott
a1344ede16
Added support for binding (-B) to a specific interface
2010-07-26 21:30:34 +00:00
sethdelliott
4df383f6d8
Added callback functions to the iperf API
2010-07-23 20:46:58 +00:00
sethdelliott
112a907cc3
More code restructuring
2010-07-23 18:39:14 +00:00
sethdelliott
66ce7ad49d
Made the protocol implementation better. Lots of code clean up
2010-07-22 23:26:38 +00:00
sethdelliott
8a0b5a5d18
Added support for adding new protocols. Slightly modified iperf_error()
2010-07-22 18:57:08 +00:00
sethdelliott
b60a49dd37
All error handling is now handled by iperf_error. Also cleaned up some code
2010-07-20 22:27:50 +00:00
sethdelliott
c81883bf08
Added support for setting the MAXSEG (MSS) and NODELAY TCP options. Setting MSS is still a little buggy.
2010-07-15 23:19:42 +00:00
sethdelliott
8556db5d08
Added support for UDP mode (-b mode not yet supported). Added htonll/ntohll functions. Cleaned up code.
2010-07-14 23:24:58 +00:00
Jon Dugan
b0b16b86cc
rename uuid.[ch] to iperf_util.[ch] to avoid confusion on some platforms
2010-07-09 00:29:51 +00:00
sethdelliott
1ac522ec39
Fixed a bug where the server died on client interrupt. Also updated README, TODO, and man page.
2010-07-08 22:41:22 +00:00
sethdelliott
f1b3bd81f9
Quite a bit of code restructuring.
2010-07-07 21:54:24 +00:00
sethdelliott
b68ac00ee9
Some code restructuring.
2010-07-06 23:12:54 +00:00
sethdelliott
bfd0c25dba
Fixed an error when compiling on Ubuntu systems. Also fixed a small server memory leak.
2010-07-01 21:21:04 +00:00
sethdelliott
efb7bbe44b
Added support for reverse mode (-R for now).
2010-07-01 00:01:57 +00:00
sethdelliott
af70b448ee
All communications are now on port 5201 (including streams)
2010-06-30 22:09:45 +00:00
sethdelliott
32885561a4
Server side bug fixes.
2010-06-30 19:57:17 +00:00
sethdelliott
efdc02f743
The server now runs until terminated by the user. Also fixed several memory leaks.
2010-06-30 15:58:16 +00:00
sethdelliott
181d61afab
Iperf results are now exchanged between client and server. The server also now prints results.
2010-06-29 22:02:30 +00:00
sethdelliott
4f43111900
Removed unused functions from the iperf api code.
2010-06-26 00:02:22 +00:00
sethdelliott
1c9c053c6c
Updated code to make '-s' parameter a requirement while running server. Also added usage() and usage_long() functions for printing out iperf usage messages.
2010-06-25 00:31:15 +00:00
sethdelliott
36d18d07fc
Fixed a bug that caused control message errors on different platforms.
2010-06-24 22:40:11 +00:00
sethdelliott
59aaeda792
Updated parameter exchange to be cross platform compatible.
2010-06-24 20:42:04 +00:00
sethdelliott
7fa9f68fd5
Fixed a bug that caused an error at results display.
2010-06-23 21:34:07 +00:00
sethdelliott
873952e31c
Updated reporting to fit the new control socket design.
2010-06-23 20:28:32 +00:00
sethdelliott
465b565c50
New control socket design now works. Now working on finishing up the reporting.
2010-06-23 19:13:37 +00:00
sethdelliott
ba2672a209
Note: The redesign is almost working. Should be finished shortly.
2010-06-21 15:08:47 +00:00
sethdelliott
982c704a8a
NOTE: This is not a working revision. I'm in the process of redesigning how the client and server communicate. It will be fixed soon
2010-06-18 21:08:50 +00:00
sethdelliott
ccb086576f
Updated iperf_reporter_callback to print out its message rather than returning a pointer to it
2010-06-15 23:33:32 +00:00
Brian Tierney
54cdc61e24
fixed bug where -T flag without -i flag caused core dump
2009-11-20 23:04:23 +00:00
Brian Tierney
dfb2d9d470
some memory usage cleanup based on valgrind report
2009-11-16 20:10:48 +00:00