Monday, June 5, 2017

Network Traffic Generator and Analyzer: Ostinato

12:50 PM Leave a Reply
Network Traffic Generator and Analyzer: Ostinato
Network Traffic Generator and Analyzer

     Ostinato is a packet crafter, network traffic generator and analyzer with a friendly GUI. Also a powerful Python API for network test automation. Craft and send packets of several streams with different protocols at different rates. Think of it as “Wireshark in Reverse”.

     Ostinato aims to provide a traffic generator and network tester tool for every network engineer and developer – something not possible today with existing commercial network test equipment. With the right tool, network developers and engineers can do their jobs better and improve the quality of networking products.





Features

Useful for both network load testing and functional testing
Use via GUI or Python API
Create and configure multiple streams
Configure stream rates, bursts, no. of packets
Interface level receive/transmit statistics and rates for realtime network monitoring and measurement
Network Device Emulation (ARP and ICMP) for multiple IP hosts to aid in network traffic simulation
Support for the most common standard protocols
Ethernet/802.3/LLC SNAP
VLAN (with QinQ)
ARP, IPv4, IPv6, IP-in-IP a.k.a IP Tunnelling (6over4, 4over6, 4over4, 6over6)
TCP, UDP, ICMPv4, ICMPv6, IGMP, MLD
Any text based protocol (HTTP, SIP, RTSP, NNTP etc.)
More protocols in the works …
Set a value for any field of any protocol
Vary packet fields across packets at run time e.g. changing IP/MAC addresses
Stack protocols in any arbitrary order to test error cases
User provided Hex Dump – specify some or all bytes in a packet
User defined script to substitute for an unimplemented protocol (EXPERIMENTAL)
Open and edit PCAP files, replay and save back
One controller, many agents
Many controllers can share an agent
Exclusive control of a port to prevent the OS from sending stray packets provides a controlled testing environment (Windows only)
Capture network traffic (needs Wireshark to view the captured packets)
Cross-Platform – runs on Windows, Linux, BSD and Mac OS X
FLOSS – Free, Libre, Open-Source Software
Framework to add new protocol builders easily





      Ostinato has a controller-agent architecture. There are two corresponding binaries – ostinato is the controller GUI and drone is the agent. Both the components are required. The controller can also be a python script using the python-ostinato API.

     The agent does all the heavy lifting of traffic generation and capture. The controller instructs the agent and fetches reporting data like statistics etc. from the agent. Since the agent does the packet generation, hence the DUT (Device Under Test) is connected to the agent and not to the controller. Although the controller and agent are two different binaries, they can also run on the same computer – this is the default mode. Whenever you run the ostinato. Since the controllers and agents can run on different computers, they can be running on same or different Operating Systems

Download