First off: great collection of network monitors and good starting point to get people off the ground with writing their own probes.
Can you shed a few words on the base requirements to get the examples running? What I have so far is (assuming debian 9 here):
Doesn't suffice though. Running go build eBPF/trafficControl/main.go
yields:
# github.com/iovisor/gobpf/bcc
../../iovisor/gobpf/bcc/module.go:32:28: fatal error: bcc/bcc_common.h: No such file or directory
#include <bcc/bcc_common.h>
^
compilation terminated.
# github.com/florianl/go-tc
../go-tc/filter.go:36:32: undefined: netlink.Create
../go-tc/filter.go:36:47: undefined: netlink.Excl
../go-tc/qdisc.go:36:32: undefined: netlink.Create
../go-tc/qdisc.go:36:47: undefined: netlink.Excl
../go-tc/qdisc.go:48:32: undefined: netlink.Create
../go-tc/qdisc.go:48:47: undefined: netlink.Replace
../go-tc/qdisc.go:60:32: undefined: netlink.Replace
../go-tc/tc.go:87:11: undefined: netlink.Request
../go-tc/tc.go:87:29: undefined: netlink.Acknowledge
../go-tc/tc.go:118:11: undefined: netlink.Request
../go-tc/tc.go:118:11: too many errors
What's missing? Happy to help putting together a README.