- systemtap 几乎无所不能,可以在内核放置探测点,然后执行自己的代码。
- kprobe:简单的工具,可以快速检验某个函数是否被执行到
- packetdrill:用于验证 TCP 协议的行为很有用。
sk_buff: packet
内核显然需要一个数据结构来表示报文,这个结构就是 sk_buff( socket buffer 的简称),它等同于在<TCP/IP详解 卷2>中描述的 BSD 内核中的 mbuf。
sk_buff结构自身并不存储报文内容,它通过多个指针指向真正的报文内存空间:
sk_buff: packet
内核显然需要一个数据结构来表示报文,这个结构就是 sk_buff( socket buffer 的简称),它等同于在<TCP/IP详解 卷2>中描述的 BSD 内核中的 mbuf。
sk_buff结构自身并不存储报文内容,它通过多个指针指向真正的报文内存空间: