[컴] ebpf 사용

ebpf 사용

기본적으로 ebpf 에서 직접적으로 돌아가는 code를 만드는 것은 잘 하지 않는다고 한다. 대체로 framework 를 통해서 coding 을 한다. bcc, bpftrace 같은 tool 도 iovisor 라는 framework 위에 만들어졌다.[ref. 1]

ref. 1 의 예제를 보면, tcp 통신에서 보내고, 받은 bytes 를 보여주는 program, tcplife 가 나온다. 이것을 기존의 kernel technology 로 만들 수 있는데, 그러면 performance overhead 가 더 생길 것이고, security issue 도 있을 것이라 한다.

packet 수 보다는 적은 TCP session event 만 trace 한다. 그래서 모든 packet 을 trace 하는 것보다 overhead 를 줄인다.

bpfcc-tools 사용

bpftrace

bcc tools 같은 기능을 원하는대로 변경(customize)하려면, bpftrace 를 사용할 수 있다. bcc 만큼 자유롭게 customize 할 수는 없다.

See Also

  1. eBPF: Unlocking the Kernel [공식 다큐멘터리, 30분] | GeekNews

Reference

  1. Learn eBPF Tracing: Tutorial and Examples

댓글 없음:

댓글 쓰기