网卡工作原理

本文详细介绍了Linux网络驱动程序的四层结构,包括协议接口层、网络设备接口层、设备驱动功能层和网络设备及媒介层。重点讨论了网卡的初始化、打开与关闭过程,以及数据包的发送与接收机制。在数据接收和发送中,中断方式被广泛采用,以提高效率。网卡的FIFO存储器和缓冲区在数据传输中起到关键作用,确保了数据的顺畅流动。
摘要由CSDN通过智能技术生成
1、分析网卡的工作原理即是分析网卡的驱动程序


2、为了屏蔽网络环境中物理网络设备的多样性,Linux对所有的设备进行抽象并定义了一个统一的概念,称之为接口


3、一个网络接口被看作是一个发送和接收数据包的实体。


4、对于每个网络接口,都用一个net_device的数据结构来表示。


5、所有被发送和接收的包都用数据结构sk_buff表示


6、要发送数据时,网络系统将分局系统路由表选择相应的网络接口进行数据传输;当接收数据包时,通过驱动程序登记的中断服务程序进行数据的接口处理。


7、Linux网络驱动程序从上到下分为四层:协议接口层、网络设备接口层、设备驱动功能层、网络设备和网络媒介层。如下图所示:


网卡初始化

 

1、网络设备初始化主要工作时检测设备的存在、初始化描述设备的net_device结构及在系统中登记该设备。

 

2、在系统初始化完成以后,系统检测到的网络设备将保存在链表dev_base中,其中每个链表单元net_device对应一个存在的物理网络设备。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值