docs: added README.md
[dabba.git] / README.md
blob75b90d3ca0fa03c1cbb6fa4e37c7372e46ff6802
1                      dabba
3        Distributed network monitoring tools
5        Copyright (C) 2011 Emmanuel Roullit
7         https://github.com/eroullit/dabba
9 What is dabba?
10 ==============
12 dabba is a set of network tools written for Linux.
14 The project has 3 main components:
15     - `libdabba` - low-level zero-copy network library
16     - `dabbad` - multi-threaded task manager and IPC query processor
17     - `dabba` - CLI 'à la git' to communicate with dabbad and submit tasks
19 Currently supported feature are listed in the `CODING` file.
21 Get the source!
22 ===============
24 ```
25 git clone git://github.com/eroullit/dabba.git
26 ```
28 Contributions are welcome, [CODING] regroups all information about it.
30 Prerequisites
31 =============
33 dabba needs these to compile and run properly:
34         - Linux kernel >= 2.6.31
35         - `cmake`
36         - `pthread`
37         - `setcap` (within `libcap` package)
39 Recommended optional packages:
40         - `python-yaml`
41         - `doxygen`
43 Installation
44 ============
46 To build out-of-tree:
47 ```sh
48 $ mkdir build && cd build && cmake .. && make
49 ```
51 To install it after being built:
52 ```sh
53 $ sudo make install/strip
54 ```
56 Capabilities
57 ============
59 To configure dabba to run with a regular user account:
60 ```sh
61 $ sudo make setcap
62 ```
64 Getting started!
65 ================
67 Start dabbad:
68 ```sh
69 $ dabbad --daemonize
70 ```
72 As long as dabbad is running, captures tasks can be submitted:
73 ```sh
74 $ dabba capture start --interface eth0 --pcap /tmp/example.pcap
75 ```
77 Running captures can be listed in YAML format:
78 ```sh
79 $ dabba capture list
80 ---
81   captures:
82     - id: 3076324160
83       packet mmap size: 32768
84       frame number: 16
85       pcap: /tmp/example.pcap
86       interface: eth0
87 ```
89 Stopping the capture:
90         $ dabba capture stop --id 3076324160
92 More info
93 =========
95 Further information can be found on the project's [wiki](https://github.com/eroullit/dabba/wiki)
97 Copyright
98 =========
100 Copyright (C) 2011-2012 Emmanuel Roullit <emmanuel.roullit@gmail.com>
102 This program is free software; you can redistribute it and/or modify
103 it under the terms of the GNU General Public License as published by
104 the Free Software Foundation; either version 2 of the License, or (at
105 your option) any later version.
107 This program is distributed in the hope that it will be useful, but
108 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
109 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
110 for more details.
112 You should have received a copy of the GNU General Public License along
113 with this program; if not, write to the Free Software Foundation, Inc.,
114 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
116 Contact
117 =======
119 For questions:
120     Send me a message to @eroullit on GitHub
122 For suggestions or bug reports:
123     Feel free to open an issue on the [ticket system](https://github.com/eroullit/dabba/issues).