html: fix copyright year in index page
[netsniff-ng.git] / PROJECTS
blobd3e1d931db8ae5c032700ba8c8e1e28fe20033de
1 Open projects for the netsniff-ng toolkit are listed here. However, those are
2 current ideas for projects that came to our mind. We are also open for blue-sky
3 proposals that are not included in this list. If you are interested in
4 participation, let us know! We are always looking forward to get help in
5 improving the toolkit:
7 - Better protocol support for netsniff-ng's dissector:
8         - Tool: netsniff-ng
9         - Required skills: C, Protocols
10         - Difficulty: Easy
12 - Extensive testing (with eventual code fixing) and performance evaluation:
13         - Tool: netsniff-ng, trafgen (both with Jumbo frames), curvetun
14         - Required skills: Testing, C
15         - Difficulty: Easy
17 - Reduce general code size, refactor, improve code (i.e. rewrite parsers):
18         - Tool: all
19         - Required skills: C
20         - Difficulty: Easy - Hard
22 - Improve manpages, write a user's guide, maybe technical paper:
23         - Tool: all
24         - Required skills: POD, Manpages, LaTeX
25         - Difficulty: Easy - Medium
27 - TPACKETv2 (TPACKETv3) support:
28         - Tool: netsniff-ng, trafgen
29         - Required skills: C
30         - Difficulty: Easy - Medium
32 - PCAP anonymization support:
33         - Tool: netsniff-ng
34         - Required skills: C
35         - Difficulty: Easy - Medium
37 - Add IPv6 support:
38         - Tool: ashunt, flowtop, curvetun (testing)
39         - Required skills: C
40         - Difficulty: Medium
42 - Packet departure timing models (i.e. exponential, uniform, cauchy, normal,
43   pareto distributed) and other packet scheduling behaviours (MB/s, ...),
44   ideally as a plugin architecture:
45         - Tool: trafgen
46         - Required skills: C
47         - Difficulty: Medium - Hard
49 - Unit test preparation and integration for the whole toolkit:
50         - Tool: all
51         - Required skills: C, Shell, Sharness?, Coccinelle?, CMake?
52         - Difficulty: Medium - Hard
54 - Improve ifpps with things like 'Gnuplot support', 'Power usage / temperature',
55   'Colorized output':
56         - Tool: ifpps
57         - Required skills: C, Gnuplot, Procfs
58         - Difficulty: Hard
60 - Interactive txf config generator with a set of supported protocols and
61   support for packet distribution models (IMIX, Cisco, ...):
62         - Tool: trafgen
63         - Required skills: C, Protocols
64         - Difficulty: Hard
66 - Warp implementation (ARP cache poisoning tool, that cannot be detected with
67   current methods):
68         - Tool: warp
69         - Required skills: C
70         - Difficulty: Hard
72 - PCAP-ng support:
73         - Tool: netsniff-ng
74         - Required skills: C
75         - Difficulty: Hard
77 - Better obfuscation method of curvetun's protocol to make it hard for DPIs
78   to detect curvetun:
79         - Tool: curvetun
80         - Required skills: C
81         - Difficulty: Very Hard
83 - Perform a security review of curvetun:
84         - Tool: curvetun
85         - Required skills: C
86         - Difficulty: Very Hard
88 - Design and implement a high-level packet filtering language that compiles
89   to bpf code:
90         - Tool: either inclusion in bpfc or a new one
91         - Required skills: C or Haskell
92         - Difficulty: Very Hard
94 - Implement packet capture, replay and traffic generation for other
95   hardware types (USB, Bluetooth, GSM?, ...)
96         - Tool: netsniff-ng, trafgen (tools need to be extended)
97         - Required skills: C
98         - Difficulty: Very Hard
100 - Design and implement partial reconfigurable hardware for traffic
101   generation under 10 Gbps, build an interface to trafgen and offload
102   heavily used packets for packet generation (and transmission) in
103   hardware, less heavily used in software (use Xilinx FPGAs)
104         - Tool: trafgen
105         - Required skills: C, VHDL (plus Xilinx board required)
106         - Difficulty: Very Hard