カーネルでいくつかのネットワーキング機能を実装するためにBPFプログラムを使用し始めましたが、私が経験した混乱の1つは - 構造に正確に何が含まれていますかsk_buff
?
受信経路では、ほとんどのオンラインリソースは、sk_buff
各受信パケットの割り当てを指します。
ところが、途中で何が起こりますか?ソケットメッセージは最初にL3プロトコルを介してデータパケットに分割され、その後ネットワークに配布されますかsk_buff
?これも矛盾です一部sk_buff
オンラインリソースは、Linuxカーネルスタックが処理する前に割り当てられたリソースを表します。
sk_buff
それでは、受信経路と送信経路の構造に正確に何が格納されていますか?