iT邦幫忙

2024 iThome 鐵人賽

2
Software Development

遲到了一年的 eBPF 系列文系列 第 1

eBPF 雜談系列文彙整

  • 分享至 

  • xImage
  •  

大家好,我是連續兩年報名了鐵人賽但都因為一些因素沒有順利參賽的 Ian。
我從今年開始陸陸續續地整理一些有關於 eBPF 的技術文章,文章重點會專注在 eBPF 的內部實作機制、新機制的引入以及一些特別的新功能,但因為整理這些文章難以用每日一篇的頻率寫出來,所以我決定就以這次參賽失敗的鐵人文章 Day 1 當作 eBPF 雜談的目錄:

  1. 初探 Linux Kernel 中的 BPF 與 XDP 技術:以 Tiny Load Balancer 為例:這篇文章是雜談系列文的前身,粗淺的介紹了 eBPF 以及 XDP 技術,並且以此為基礎開發了一個十分簡單的 XDP Load balancer。
  2. eBPF 隨筆(一): eBPF 的起源:考古 eBPF 的發展史。
  3. eBPF 隨筆(二): eBPF verifier:透過閱讀 patch、相關文獻以及 kernel source code 嘗試了解 eBPF verifier 的行為,並且認識 BTF。
  4. eBPF 隨筆(三): eBPF CO-RE:以前一篇文章提到的 BTF 為基礎,了解 eBPF CO-RE(Compile Once, Run Everywhere)機制。
  5. eBPF 隨筆(四):TRACING:在先前介紹 CO-RE 時有提及 BPF_PROG_TYPE_TRACING 類型的 eBPF program,本文利用它以及 libbpfgo 實作出能夠追蹤 kernel API call、kernel module setup 的 eBPF program。
  6. eBPF 隨筆(五):IP fragmentation in eBPF:閱讀 Kernel Patch 學習貢獻者如何利用 netfilter 現有的實作解決 TC/XDP eBPF 無法處理 fragmented packets 的問題,相關 patch 已在 Linux Kernel v6.6 之中,並且能夠應用在 BPF_PROG_TYPE_NETFILTER 類型的 eBPF program。
  7. 撰文中,預計探討 KFuncs
  8. 撰文中,預計探討 eBPF token

其他待整理題材:eBPF skeletoneBPF program on TC hooksched_exteBPF tail calls

在整理文章的過程中我也發現繁體中文的 eBPF 文章跟日本原裝的壓縮機一樣稀少...,如果讀者有什麼發現或是建議都可以留言讓我知道,讓我們有機會一起學習這項技術。

補充:
在整理的過程中,我也發現 eBPF 官方文件的不足順手做了一些貢獻:

最後,如果覺得我寫的文章還不錯,歡迎追蹤我的 medium 接收第一手資訊!


系列文
遲到了一年的 eBPF 系列文1
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
chichi
iT邦新手 2 級 ‧ 2024-11-28 17:33:55

簽到

我要留言

立即登入留言