mirror of
https://git.savannah.nongnu.org/git/lwip.git
synced 2026-05-13 03:36:59 +08:00
lwiperf: start implementing iperf client
Only the transmission side works for now (todo: dual and tradeoff mode). Also, only a 10 second timeout mode is implemented for now. Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
This commit is contained in:
@@ -63,6 +63,17 @@ enum lwiperf_report_type
|
||||
LWIPERF_TCP_ABORTED_REMOTE
|
||||
};
|
||||
|
||||
/** Control */
|
||||
enum lwiperf_client_type
|
||||
{
|
||||
/** Unidirectional tx only test */
|
||||
LWIPERF_CLIENT,
|
||||
/** Do a bidirectional test simultaneously */
|
||||
LWIPERF_DUAL,
|
||||
/** Do a bidirectional test individually */
|
||||
LWIPERF_TRADEOFF
|
||||
};
|
||||
|
||||
/** Prototype of a report function that is called when a session is finished.
|
||||
This report function can show the test results.
|
||||
@param report_type contains the test result */
|
||||
@@ -70,10 +81,15 @@ typedef void (*lwiperf_report_fn)(void *arg, enum lwiperf_report_type report_typ
|
||||
const ip_addr_t* local_addr, u16_t local_port, const ip_addr_t* remote_addr, u16_t remote_port,
|
||||
u32_t bytes_transferred, u32_t ms_duration, u32_t bandwidth_kbitpsec);
|
||||
|
||||
|
||||
void* lwiperf_start_tcp_server(const ip_addr_t* local_addr, u16_t local_port,
|
||||
lwiperf_report_fn report_fn, void* report_arg);
|
||||
void* lwiperf_start_tcp_server_default(lwiperf_report_fn report_fn, void* report_arg);
|
||||
void* lwiperf_start_tcp_client(const ip_addr_t* remote_addr, u16_t remote_port,
|
||||
enum lwiperf_client_type type,
|
||||
lwiperf_report_fn report_fn, void* report_arg);
|
||||
void* lwiperf_start_tcp_client_default(const ip_addr_t* remote_addr,
|
||||
lwiperf_report_fn report_fn, void* report_arg);
|
||||
|
||||
void lwiperf_abort(void* lwiperf_session);
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user