|
发表于 2004-10-21 14:15:54
|
显示全部楼层
sk_buff 是linux内核用于处理网络包的数据结构。
按照对该数据结构定义处的说明来理解,大概是这个意思:
skb->nh是指该数据的网络层头部,skb->nh.raw是一个指向网络层原始数据的指针。skb->nh.iph是指这是一个IP包,按照IP头部的解释方式解释该网络层头部。
skb->nh.raw+(iph->ihl)*4的解释:
skb->nb.raw就是网络层头部的起始地址, iph->ihl是IP头部的长度,以32bit位单位。所以(iph->ihl)*4是IP头部按字节计算的偏移量。skb->nh.raw+(iph->ihl)*4应该就是指向IP数据域的指针。
不知道这样解释是否回答了楼主的问题。 |
|