首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

网卡驱动程序往外发送数据包的有关问题

2012-03-13 
网卡驱动程序往外发送数据包的问题在网卡驱动程序里,tcp/ip协议栈往外发包是自动调用dev-hard_start_xmit

网卡驱动程序往外发送数据包的问题
在网卡驱动程序里,tcp/ip协议栈往外发包是自动调用dev->hard_start_xmit函数的,我的问题是如果dev->hard_start_xmit函数还没有执行结束,此时协议栈又有数据包发送出来怎么办?即是一个数据包还没有发送完成又来了一个数据包,此时内核是怎么处理的

[解决办法]
queue layer调用驱动发送函数前会首先取得对应的锁。同步机制由锁保证,多余的包留在队列中。
[解决办法]
没错,一个包没发完后面的就不会发出去了
这需要你逻辑上保证没错
发包从内存将包移到网卡这个过程是相当快的

热点排行