nepim - network pipemeter

Keywords: network bandwidth throughput measurement estimation testing performance stressing tool


INTRODUCTION

nepim stands for network pipemeter, a tool for measuring available bandwidth between hosts. nepim is also useful to generate network traffic for testing purposes.

nepim operates in client/server mode, is able to handle multiple parallel traffic streams, reports periodic partial statistics along the testing, accepts rich tuning from command-line, supports multicast and IPv6.

LICENSE

nepim - network pipemeter
Copyright (C) 2005 Everton da Silva Marques

nepim is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

nepim is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with nepim; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

PLATFORMS

nepim has been tested under Linux, Solaris and FreeBSD, though it should work under other platforms as well. If you manage to build nepim for different systems, please send the patch.

USAGE

Starting the server:

server$ nepim

Starting the client against the server located at 10.10.10.10:

client$ nepim -c 10.10.10.10 -d

Display brief help about command line options:

$ nepim -h

EXAMPLE

Running nepim in server mode at the server host:

server$ nepim
nepim - network pipemeter - version 0.27
server: tcp_read=32768 tcp_write=32768 udp_read=4096 udp_write=4096
3: TCP socket listening on ::,1234
sock.c: nepim_create_socket: bind(4,0.0.0.0,1234): errno=98: Address already in use
server.c spawn_tcp_listener: TCP listener socket failed for 0.0.0.0,1234: -3
4: UDP socket listening on ::,1234
4: pmtud_mode=1 path_mtu=-11 mss=-19 tos=0 ttl=64 mcast_ttl=1 win_recv=109568 win_send=109
_ka=0 nodelay=-10
5: UDP socket listening on 0.0.0.0,1234
5: pmtud_mode=1 path_mtu=-11 mss=-19 tos=0 ttl=64 mcast_ttl=1 win_recv=109568 win_send=109
_ka=0 nodelay=-10
nepim: server ready

Running nepim in client mode at the client host:

client$ nepim -c localhost -d -r 100000
nepim - network pipemeter - version 0.27
client: tcp_read=32768 tcp_write=32768
not a UNIX domain path: localhost: errno=2: No such file or directory
TCP socket solving localhost,1234
TCP socket trying 127.0.0.1,1234
DEBUG FIXME sock.c nepim_connect_client_socket slow synchronous connect
3: TCP socket connected to 127.0.0.1,1234
3: sending: hello server_send=1 bit_rate=100000 pkt_rate=-1 stat_interval=2 test_duration=
_delay=250000 server_ka_send=0 server_ka_req=0 seed=0xd4d2e835 verify_data=0 random_fill=1
te=0x00 pause_duration=0 sock_ka=1 nagle=-1 overhead=0 password=
3: greetings sent to 127.0.0.1,1234
3: pmtud_mode=1 path_mtu=16436 mss=16383 tos=0 ttl=64 mcast_ttl=1 win_recv=87856 win_send=
ck_ka=1 nodelay=0
                  kbps_in   kbps_out    rcv/s    snd/s
  3  prt     8     100.00     100.00     4.00     4.00
  3  prt     6     100.00     100.00     4.00     4.00
  3  prt     4     100.00     100.00     4.00     4.00
  3  prt     2     100.00     100.00     4.00     4.00
  3  avg     0     100.00     100.00     4.00     4.00
3: pmtud_mode=1 path_mtu=16436 mss=16384 tos=0 ttl=64 mcast_ttl=1 win_recv=87856 win_send=
ck_ka=1 nodelay=0
nepim: no event sink registered
nepim: done

HINTS

DOWNLOAD SOURCE CODE

Get latest nepim stable release here:

http://savannah.nongnu.org/download/nepim/

DOWNLOAD BINARIES

Pre-compiled binaries are currently not provided. However you can find in the table below some binary packages built by other contributors.

Platform URL
Solaris 10 on SPARC from sunfreeware.com http://www.sunfreeware.com/programlistsparc10.html#nepim
Linux on x86 and x86_64 from openSUSE http://linux01.gwdg.de/~pbleser/rpm-navigation.php?cat=/Network/nepim

CVS

ViewCVS access to CVS tree:

http://cvs.savannah.nongnu.org/viewcvs/nepim/nepim/

Anonymous access to CVS repository:

export CVS_RSH=ssh

cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/nepim co nepim

SUPPORT

For suggestions, patches, bug reports, please visit nepim support page at Savannah:

http://savannah.nongnu.org/projects/nepim/

RELATED

Other tools similar to nepim:


$Id: index.html,v 1.39 2008/07/11 22:42:17 evertonm Exp $