多队列网卡简介以及Linux通过网卡发送数据包源码解读
首先我们看一下一个主流多队列网卡(E1000)跟多核CPU之间的关系图:非多队列:linux的网卡由结构体net_device表示,一个该结构体对应一个可以调度的数据包发送队列。数据包的实体在内核中以结构体sk_buff(skb),形如:多队列:一个网卡可以拥有多个队列接下来,看看TX引擎是如何工作的(注:对于发送和接收数据包有两个名词,分别应对TX,RX)解释:函数-dev_queue_xmit():入队一个buffer以传输到网络驱动设备。配合该函数的...