Rws generates a pcap from a simple packet descriptor language. The pcaps can then be used for testing together with tools such as tcpreplay. It is especially use full to generate invalid packets that no off-the-shelf traffic generator would be able to generate, e.g a corrupt TCP packet that is tunneled inside a Teredo tunnel that is sent over GTP-u. If a field in a protocol isn't specified resonable defaults are used.
RWS supports:
- Ethernet
 - Fragv6 option
 - GRE
 - GTP-u
 - Hexpayload
 - HopByHop option
 - Icmp
 - IcmpV6
 - IPv4
 - IPv6
 - L2TP
 - PadN option
 - PPP
 - TCP
 - Teredo
 - UDP
 
Numerous examples are provided in the samples dir.
Example: Given the file simple.pkt which contains: (eth (ipv4 src=2.2.2.2 dst=10.10.10.10 (udp))) the command: ./dist/build/rws/rws -i simple.pkt -o out.pcap
will generate a pcap file with a single UDP packet from 2.2.2.2 to 10.10.10.10.