Cilium eBPF クイズ
対応バージョン: Cilium 1.17, Linux Kernel 4.19+ 最終更新: February 22, 2026
eBPF の基本概念
eBPF は何の略ですか?
- A) Extended Berkeley Packet Filter
- B) Enhanced Berkeley Process Filter
- C) Extended Binary Processing Framework
- D) Enhanced Backend Processing Function
回答を表示
回答: A) Extended Berkeley Packet Filter
解説: eBPF は Extended Berkeley Packet Filter の略であり、元の BPF 技術を拡張したものです。
eBPF プログラムはどこで実行されますか?
- A) User Space
- B) Kernel Space
- C) Hypervisor
- D) Container Runtime
回答を表示
回答: B) Kernel Space
解説: eBPF プログラムは Linux kernel 内で安全に実行されます。
eBPF プログラムの安全性を確保するメカニズムは何ですか?
- A) Sandbox
- B) Virtual Machine
- C) Static Verifier
- D) Containerization
回答を表示
回答: C) Static Verifier
解説: eBPF verifier は、無限ループや kernel crash を防ぐために、ロード前にプログラムの安全性を検証します。
eBPF プログラムがアタッチできる kernel event は何と呼ばれますか?
- A) Triggers
- B) Hooks
- C) Event Listeners
- D) Callbacks
回答を表示
回答: B) Hooks
解説: eBPF プログラムは kernel 内のさまざまな hook point にアタッチされ、event が発生すると実行されます。
eBPF プログラムと user space application 間でデータを共有するために使用されるものは何ですか?
- A) Shared Memory
- B) Pipes
- C) BPF Maps
- D) Sockets
回答を表示
回答: C) BPF Maps
解説: BPF Maps は、eBPF プログラムと user space application 間でデータを共有するために使用される key-value store です。
eBPF と Cilium
Cilium が eBPF を使用する主な理由は何ですか?
- A) kernel module なしで networking feature を実装すること
- B) より優れた user interface を提供すること
- C) より少ない memory を使用すること
- D) より簡単な installation process
回答を表示
回答: A) kernel module なしで networking feature を実装すること
解説: Cilium は eBPF を使用して、kernel module なしで高性能な networking、load balancing、security policy、その他の機能を実装します。
Cilium で eBPF を使用して実装されていない機能はどれですか?
- A) Network policy enforcement
- B) Service load balancing
- C) Network packet encryption
- D) User authentication
回答を表示
回答: D) User authentication
解説: Cilium は eBPF を使用して Network policy enforcement、Service load balancing、network packet processing を実装しますが、User authentication は通常、他の system で処理されます。
Cilium は kube-proxy を置き換えるためにどの eBPF 機能を使用しますか?
- A) XDP (eXpress Data Path)
- B) TC (Traffic Control) BPF
- C) Socket BPF
- D) Tracing BPF
回答を表示
回答: B) TC (Traffic Control) BPF
解説: Cilium は主に TC (Traffic Control) BPF プログラムを使用して、kube-proxy の Service load balancing 機能を置き換えます。
Cilium の eBPF ベースの load balancing が kube-proxy より優れている理由は何ですか?
- A) より多くの Service type をサポートする
- B) より優れた user interface
- C) より低い latency とより高い throughput
- D) より簡単な configuration
回答を表示
回答: C) より低い latency とより高い throughput
解説: Cilium の eBPF ベースの load balancing は Kernel Space で packet を直接処理するため、より低い latency とより高い throughput を実現します。
Cilium で eBPF を使用して収集されない metric はどれですか?
- A) Network connection status
- B) Packet drop reasons
- C) Service response time
- D) User login time
回答を表示
回答: D) User login time
解説: Cilium は eBPF を使用して Network connection status、packet drop reason、Service response time などの network 関連の metric を収集しますが、User login time のような application-level metric は収集しません。
eBPF プログラミング
eBPF プログラムの作成に主に使用される言語は何ですか?
- A) Python
- B) Go
- C) C
- D) Rust
回答を表示
回答: C) C
解説: eBPF プログラムは主に C で記述され、LLVM compiler を使用して eBPF bytecode にコンパイルされます。
eBPF プログラムを開発するための framework ではないものはどれですか?
- A) BCC (BPF Compiler Collection)
- B) libbpf
- C) bpftrace
- D) libpcap
回答を表示
回答: D) libpcap
解説: libpcap は packet capture library であり、eBPF program development の framework ではありません。BCC、libbpf、bpftrace はすべて eBPF プログラムを開発するための framework です。
eBPF map の type ではないものはどれですか?
- A) Hash Map
- B) Array Map
- C) LRU Map
- D) Graph Map
回答を表示
回答: D) Graph Map
解説: eBPF は hash map、array map、LRU map を含むさまざまな type の map をサポートしていますが、graph map はサポートしていません。
eBPF プログラム内の instruction の最大数はいくつですか?
- A) 1,000
- B) 4,096
- C) 10,000
- D) Unlimited
回答を表示
回答: B) 4,096
解説: eBPF プログラムは最大 4,096 個の instruction に制限されています。これは安全性を確保するための制限です。
eBPF プログラムを kernel にロードするために使用される system call は何ですか?
- A) bpf()
- B) ebpf()
- C) sysfs()
- D) ioctl()
回答を表示
回答: A) bpf()
解説: bpf() system call は、eBPF プログラムを kernel にロードし、eBPF map を作成およびアクセスするために使用されます。
eBPF のパフォーマンスとモニタリング
XDP (eXpress Data Path) が提供する主な利点は何ですか?
- A) より優れた security
- B) より簡単な programming
- C) より低い latency
- D) より高い compatibility
回答を表示
回答: C) より低い latency
解説: XDP は network driver level で packet を処理し、kernel networking stack をバイパスして非常に低い latency を実現します。
Cilium で eBPF プログラムの performance をモニタリングするために使用される tool は何ですか?
- A) top
- B) bpftool
- C) htop
- D) iotop
回答を表示
回答: B) bpftool
解説: bpftool は eBPF プログラムと map の検査および管理に使用される tool であり、performance monitoring にも使用されます。
Cilium の eBPF ベースの network monitoring tool は何ですか?
- A) Prometheus
- B) Hubble
- C) Grafana
- D) Jaeger
回答を表示
回答: B) Hubble
解説: Hubble は、network flow を real-time で観測および分析できる Cilium の eBPF ベースの network monitoring tool です。
eBPF プログラムの performance bottleneck を見つけるために使用される tool は何ですか?
- A) strace
- B) ltrace
- C) perf
- D) gdb
回答を表示
回答: C) perf
解説: perf は、eBPF プログラムの performance bottleneck を見つけるために使用される Linux performance analysis tool です。
Cilium で eBPF プログラムを debugging するために使用される command は何ですか?
- A)
cilium bpf - B)
cilium debug - C)
cilium monitor - D)
cilium trace
回答を表示
回答: A) `cilium bpf`
解説: `cilium bpf` command は、Cilium の eBPF プログラムと map を検査および debugging するために使用されます。
- A)