reissmann / PyTgen

A traffic generator written in python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PyTgen is a Traffic Generator written in Python

This program can be used to generate different kinds of network traffic. A
configuration file lets you define types of traffic that will be generated
periodically in a given timeframe.

Supported types of traffic are:
  ping		-	Ping times to some location
  http(s)	-	Fetch a website
  ftp(s)	-	Upload and download a file
  smtp		-	Send an email of random size
  copy		-	Copy a file or directory to or from a nfs or smb share
  ssh     -	Open an ssh connection and issue commands
  sftp		-	Transfer files via sftp
  telnet  - Open a telnet connection and issue commands
  xmpp    - Connect via xmpp and send messages
  reboot	-	Reboot the local machine

Each traffic definition from the config file defines a job, that is then 
periodically distributed to a number of worker threads by a scheduler. The
scheduler will randomize the time between the execution of each job to 
prevent the traffic from looking too synthetic. On an average, each job will
be executed once every interval defined in the configuration file.

Please note that this software is highly experimental and was written 
specifically for the porpose I needed it as a part of my work in a research 
project, where we needed to generate and collect "normal" network traffic. 
As we were not interested in packet payloads but only header information, 
there may be many situations, where the generated traffic will not match the 
look of actual network traffic.

Configuration files have to be placed in the subfolder configs and be named 
"<hostname>.py" where <hostname> is the hostname of the host, PyTgen is running 
on. See config.example.py for a more detailled description of the generators as
well as configuration examples.

If you have setuptools installed, you can install PyTgen using this command:
	
	python setup.py install

About

A traffic generator written in python

License:GNU General Public License v3.0


Languages

Language:Python 100.0%