当前位置: 技术问答>linux和unix
关于用PF_PACKET实现抓包程序的一个问题,BUF的大小
来源: 互联网 发布时间:2016-04-08
本文导语: 写一个抓包程序,用PF_PACKET协议族基于原始套接口来实现, 在recvfrom的时候,收到的数据保存在定义的缓冲区BUF里面,我想问的是 问题一、这个BUF定义为多大呢? 问题二、是不是在接收数据的那个无限循环里面,循...
写一个抓包程序,用PF_PACKET协议族基于原始套接口来实现,
在recvfrom的时候,收到的数据保存在定义的缓冲区BUF里面,我想问的是
问题一、这个BUF定义为多大呢?
问题二、是不是在接收数据的那个无限循环里面,循环一次接收一个数据包?
也许这个问题解决了的话,关于BUF大小的问题也就解决了,
一个数据报在DL层,以太网最大为1500B(其他协议会不一样),那么我们只需要定义这么大就够了啊?
因为我网上看到一个程序定义的BUF为char buf[2*32767]; 不是很能理解,请各位指点指点哦~谢谢了
在recvfrom的时候,收到的数据保存在定义的缓冲区BUF里面,我想问的是
问题一、这个BUF定义为多大呢?
问题二、是不是在接收数据的那个无限循环里面,循环一次接收一个数据包?
也许这个问题解决了的话,关于BUF大小的问题也就解决了,
一个数据报在DL层,以太网最大为1500B(其他协议会不一样),那么我们只需要定义这么大就够了啊?
因为我网上看到一个程序定义的BUF为char buf[2*32767]; 不是很能理解,请各位指点指点哦~谢谢了
|
我觉得IP报文最大长度就是你的MTU了,设置成这个行吗?
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。