On code points, Bruce can give better info, but one can grep

   src/*.c 

for "main", "run_server",  and "run_client"

Bob
-----Original Message-----
From: Bruce A. Mah [mailto:b...@es.net] 
Sent: Monday, January 05, 2015 9:30 AM
To: Robert Clove
Cc: iperf-users@lists.sourceforge.net
Subject: Re: [Iperf-users] Is iperf 3 code in c++?

If memory serves me right, Robert Clove wrote:

> I am a student and looking into the iperf code i cannot find the 
> algorithm they used while implementing the code.
> Can someone please elaborate that and where is the starting point of 
> the code in iperf3?

That's kind of a complicated answer but I'll take a shot at it.

There is a client side and a server side to any iperf3 measurement.  The idea 
is that the server sits around and waits for clients to show up and request to 
run a test.

The client first sets up a control connection to the server (this is always 
over TCP).  They exchange a few messages to set up the parameters of the test, 
after which the test proper starts.  Each test consists of some of send 
operations (number, size, and protocol determined by the client's command-line 
parameters).  By default the client sends to the server, but it can be the 
other way around if the client is passed the -R/--reverse flag.  After the end 
of the test there is another exchange of messages over the control connection, 
which basically allow the client to get results from the server.

The implementation is somewhat complicated due to the many different types of 
tests that can be run and combinations of test parameters that interact in 
various ways.

Feel free to ask if you have any more specific questions.

Bruce.


------------------------------------------------------------------------------
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
_______________________________________________
Iperf-users mailing list
Iperf-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iperf-users

Reply via email to