网卡的END设备驱动程序的装载
END设备驱动程序的装载主要就是完成END设备驱动 程序与驱动功能抽象层的挂接,使得网络协议栈实现对 END设备的控制。具体过程包括: 初始化网卡和PHY设备,配置网卡和 PHY 设备的通信参数等;为网卡控制结构分配空间同时初始化END_OBJ结构,END_OBJ结构主要包括网卡控制结构以及与网络协议栈相关的参数信息;对网卡驱动对应的参数串进行解析和处理;为接收数据分配空间,保证接收数据的存放;通过配置END_OBJ结构中的NET_FUNCS 参数实现网卡驱动与网络协议栈的挂接。
网卡与网卡之间的切换
为了使2块网卡实现有效双冗余备份,必须保证这2块网卡具有相同的物理地址和IP地址这样 对于上层应用系统而言,系统中呈现“单网卡”的特征;反之,当系统中一块网卡切换到另一块网卡工作时,如果IP地址发生变化,则系统无法正常接收和发送数据。如果IP地址不改变,而物理地址改变,则会引起协议栈中ARP绑定表的变化,而重新对应ARP绑定表中IP地址与网卡物理地址的关系会延长两个网卡之间的切换时间。
然而,每块网卡的物理地址在全世界范围内是只有一个的,它保存在网卡的PROM中。为了使2块网卡具有相同的物理地址,在网卡初始化时,从PROM中读出其中一块网卡的物理地址,将该物理地址的内容写入另一块网卡物理地址寄存器和数据结构变量中,在此情况下,这2块网卡就具有完全相同的物理地址了。
网卡是怎样工作的?
网卡采用DMA方式,ISR通过CPU对DMA控制器编程,DMA控制器一般在系统板上,有的网卡也内置DMA控制器。DMA控制器收到ISR请求后,向主CPU发出总线HOLD请求,获CPU应答后即向LAN发出DMA应答并接管总线,同时开始网卡缓冲区与内存之间的数据传输。
主总线网卡能够裁决系统总线控制权,并对网卡和系统内存寻址,LAN控制权裁决总线控制权后以成组方式将数据传向系统内存,IRQ调用LAN驱动程序ISR,由ISR完成数据帧处理,并同高层协议一起协调接收和发送操作,这种网卡由于有较高的数据传输能力,常常省去了自身的缓冲区。
以上信息由专业从事CX556Ainfiniband 网卡的迪天嘉业于2024/5/5 13:48:36发布
转载请注明来源:http://m.tz1288.com/qynews/bjdtjy-2747547583.html