Skip to content

How to build mptcp bpf schedulers

yas-nyan edited this page Oct 7, 2023 · 5 revisions

how to use

コンパイルする

これを発見するのは大変

./scripts/bpf_doc.py --header --filename ./tools/include/uapi/linux/bpf.h > tools/lib/bpf/bpf_helper_defs.h

cd tools/testing/selftests/bpf/
clang -O2 -target -bpf -I ../../../../tools/lib/ -I .  -g -c progs/mptcp_bpf_rr.c -o mptcp_bpf_rr.o

bpftoolをコンパイルする

  • Kernel リポジトリでbpftoolをmake, make install
  • sudo ln -s /usr/include/x86_64-linux-gnu/asm /usr/include/asm する

依存系

sudo apt-get install gcc-multilib libcap-dev

loadする

sudo bpftool struct_ops register mptcp_bpf_rr.o
sudo bpftool prog list

sysctlで有効化する

sudo sysctl -w net.mptcp.scheduler=bpf_rr

参考

https://github.com/multipath-tcp/mptcp_net-next/issues/336