Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
IPGEN(1)		    General Commands Manual		      IPGEN(1)

NAME
       ipgen --	L2 and L3 traffic generator and	interactive benchmarking util-
       ity

SYNOPSIS
       ipgen  [-V  vlanid]  [-P]  -R rx-ifname,gateway-addr,[my-addr[/prefix]]
	     [-V  vlanid]  [-P]	 -T  tx-ifname,gateway-addr,[my-addr[/prefix]]
	     [-H  hz]  [-n  npkt]  [--ipg]  [--burst] [-S script] [-L logfile]
	     [-s packet-size] [-p packet-per-second] [-t duration]  [-f]  [-v]
	     [-X]   [-XX]   [-XXX]  [--tcp]  [--udp]  [--fragment]  [--l1-bps]
	     [--l2-bps]	[--allnet] [--saddr begin[-end]] [--daddr begin[-end]]
	     [--sport begin[-end]]  [--dport  begin[-end]]  [--flowlist	 file]
	     [--flowsort]      [--flowdump]	[-F	nflow]	   [--rfc2544]
	     [--rfc2544-interval     seconds]	   [--rfc2544-no-early-finish]
	     [--rfc2544-output-json file] [--rfc2544-pktsize size,[size, ...]]
	     [--rfc2544-pps-resolution	    percent]	 [--rfc2544-slowstart]
	     [--rfc2544-tolerable-error-rate			      percent]
	     [--rfc2544-trial-duration				      seconds]
	     [--rfc2544-warming-duration seconds] [--nocurses] [-D file]  [-d]
	     [--fail-if-dropped]

DESCRIPTION
       The  ipgen utility is an	L2 and L3 traffic generator with the following
       design goals:

       -   Wire-speed support based on Netmap API on FreeBSD or	XDP on Linux,
       -   Benchmarking	capability with	multiple packet	flows,
       -   Interative user interface to	show various statistics, and
       -   RFC 2544 benchmarking methodology.

EXIT STATUS
       The ipgen utility exits 0 on success, and >0 if an error	occurs.

EXAMPLES
       The following example does a loopback test assuming igb1	with  MAC  ad-
       dress  00:11:22:33:44:55	 and  igb2 with	66:77:88:99:aa:bb are on a box
       running ipgen and the two ports are directrly connected by an  Ethernet
       cable (back-to-back connection defined in Section 3.1, RFC 1242).  Note
       that  each  gateway address must	be specified to	the MAC	address	of an-
       other endpoint:

	     ipgen -T igb1,66:77:88:99:aa:bb -R	igb2,00:11:22:33:44:55

       If the two Ethernet cables are connected	to igb1	and igb2 and  the  an-
       other  endpoint	is  a bridge box, such as an Ethernet hub or switch to
       form a single L2	segment, the same command performs  an	L2  forwarding
       performance test	of the bridge box.

       The  following  example	does an	L3 forwarding performance test.	 A box
       running ipgen has igb1 with an  address	192.18.0.1/24  and  igb2  with
       192.18.1.1/24,  and  two	 Ethernet  cables are connected	to another box
       (DUT: Device Under Test)	that can forward TCP/IP	 packets,  such	 as  a
       router.	 This assumes that the DUT has 192.18.0.2/24 and 192.18.1.2/24
       on the interfaces connected to each segment:

	     ipgen -T igb1,192.18.0.2,192.18.0.1/24 -R igb2,192.18.1.2,192.18.1.1/24

       The flag	--rfc2544 enables RFC 2544 benchmarking	report.	  When	speci-
       fied,  ipgen shows throughput (Section 3.17 in RFC 1242)	and frame loss
       rate (Section 3.6 in RFC	1242) of a DUT throughout the entire range  of
       input  data rates and frame sizes after the test	finishes.  The follow-
       ing example shows RFC 2544 benchmarking report  for  the	 same  testing
       setup for the L2	forwarding example:

	     ipgen -T igb1,66:77:88:99:aa:bb -R	igb2,00:11:22:33:44:55 --rfc2544

SEE ALSO
       netmap(4)

       S.   Bradner,  Benchmarking  Terminology	 for  Network  Interconnection
       Devices,	RFC 1242, July 1991.

       S.  Bradner  and	 J.  McQuaid,  Benchmarking  Methodology  for  Network
       Interconnect Devices, RFC 2544, March 1999.

AUTHORS
       The  ipgen  utility  was	designed and implemented by Ryo	Shimizu	and is
       maintained by Internet Initiative Japan Inc. .

       This manual page	was written by Hiroki Sato <hrs@FreeBSD.org>.

FreeBSD	ports 15.0		 May 13, 2024			      IPGEN(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ipgen&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help