大家好,我是連續兩年報名了鐵人賽但都因為一些因素沒有順利參賽的 Ian。
我從今年開始陸陸續續地整理一些有關於 eBPF 的技術文章,文章重點會專注在 eBPF 的內部實作機制、新機制的引入以及一些特別的新功能,但因為整理這些文章難以用每日一篇的頻率寫出來,所以我決定就以這次參賽失敗的鐵人文章 Day 1 當作 eBPF 雜談的目錄:
BPF_PROG_TYPE_TRACING
類型的 eBPF program,本文利用它以及 libbpfgo 實作出能夠追蹤 kernel API call、kernel module setup 的 eBPF program。BPF_PROG_TYPE_NETFILTER
類型的 eBPF program。其他待整理題材:eBPF skeleton
、eBPF program on TC hook
、sched_ext
、eBPF tail calls
。
在整理文章的過程中我也發現繁體中文的 eBPF 文章跟日本原裝的壓縮機一樣稀少...,如果讀者有什麼發現或是建議都可以留言讓我知道,讓我們有機會一起學習這項技術。
補充:
在整理的過程中,我也發現 eBPF 官方文件的不足順手做了一些貢獻:
- https://github.com/isovalent/ebpf-docs/pull/94
- https://github.com/isovalent/ebpf-docs/pull/95
- https://github.com/isovalent/ebpf-docs/pull/96
這些資料基本上都是由一位 isovalent 的工程師建立的,所以內容難免有誤,有興趣的讀者可以提出 issue/pr,基本上這位負責人都會在一天內回應。
最後,如果覺得我寫的文章還不錯,歡迎追蹤我的 medium 接收第一手資訊!