基于嵌入式vxworks系统的网卡驱动优化

 2023-07-28 09:07

论文总字数:13758字

摘 要

:针对当前网卡数据处理效率低的缺点,在分析MPC837X网卡硬件特性、vxworks操作系统特性的基础上,研究了网络协议栈架构及几种开源网络协议栈,在vxworks平台上Freescale的eTSEC网卡驱动的基础上提出改进方法,通过在网卡驱动里面增加网络数据包过滤功能,并且可以手动配置过滤规则,使得没必要提交到协议栈的数据包直接转发,减轻了上层协议栈和软件的压力。最后修改了网卡驱动和协议栈的接口,使得数据包提交给上层协议栈的时候直接提交给网络协议栈系统,不再给原vxworks系统自带的协议栈提交网络数据,实验证明系统的吞吐量和处理效率大大提高。

关键词:vxworks操作系统,网络协议栈,过滤功能,MPC837X

Abstract:Aiming at the shortcomings of the current network data processing efficiency is low, in analysis MPC837X NIC hardware features,vxworks operating system characteristics based on of network protocol stack architecture and several open source network protocol stack, invxworks platform FreescaleeTSEC network card driver based on the improved method, through on a network drive to increase the network data packet filter function, and can be manually configure filtration rules, that no need to submit to the protocol stack of the data packet forwarding, reduce the pressure of the upper layer protocol stack and software. Last modified NIC driver and protocol stack interface, the data package submitted to the upper protocol stack submitted directly to the system network protocol stack, no longer to the originalvxworks System comes with the protocol stack in the filed of network data. The experimental results show that system throughput and processing efficiency is greatly improved.

Keywords:Vxworks operating system,Network protocol stack,Filtering function,MPC837X

目 录

1 绪论 4

2 MPC837X硬件系统及vxworks操作系统 4

2.1 MPC837X硬件系统 4

2.2 MPC837X网卡硬件过滤特性 7

2.3 vxworks操作系统的特点 8

2.4 vxworks内核组成 8

3 嵌入式网卡驱动 10

3.1 vxworks操作系统网卡驱动 10

3.2 网络设备驱动的数据结构 10

3.3 网络数据传递 12

3.4 网络数据接收 15

4 网卡驱动优化 16

4.1 网卡驱动优化方法 16

4.2 实验及分析 20

总 结 22

参 考 文 献 23

致 谢 24

1 绪论

Internet的最早起源于上个世纪60年代。1969年,美国国防部开始起动具有抗核打击性的计算机网络开发计划“ARPANET”,标志着计算机网络的诞生。经过将近半个世纪的发展,计算机网络从原先的之用于军事研究到现在的民用化、商业化,从原先的只有几百人使用到现在的几乎人人普及、无人不知的地步。

随着计算机网络的不断发展,网络环境越来越复杂,如采用可变端口通信,采用端口伪装来绕过防火墙,采用隧道技术来封装数据包等等。这些技术给网络协议识别带来了巨大的挑战,直接影响到了网络安全和服务质量的保证。协议识别技术一直随着计算机网络的发展而不断的发展,由于其在其他网络应用中的重要地位,一直以来协议识别技术都是很多学者和网络爱好者关注的研究方向。

网卡是网络接口卡NIC(Network Interface Card)的简称,也叫网络适配器,它是物理上连接计算机与网络的硬件设备,是局域网最基本的组成部分之一。网卡插在电脑的主板扩展槽中,通过网线(如双绞线、同轴电缆)与网络共享资源、交换数据,可以说是必备的。它主要完成两大功能,一是将电脑的数据封装为帧,并通过网线(对无线网络来说就是电磁波)将数据发送到网络上去。二是接收网络上传来的数据帧,并将数据帧重新组合成数据,发送到所在的电脑中。网卡接收所有在网络上传输的信号,但只接受发送到该电脑的数据帧和广播帧,将其余的帧丢弃。然后,传送到系统CPu做进一步的处理。当电脑发送数据帧时,网卡等待合适的时间将分组插入到数据流中。接收系统同志电脑消息是否完整的到达,如果出现问题,将要求对方重新发送。

嵌入式网络协议在线识别的一个难题在于嵌入式设备的处理能力有限,各种硬件资源也是有限的,在有限的资源环境下处理大量的数据包是对嵌入式系统的一大挑战,针对当前使用的PPC网络处理器,本文提出了一种修改网卡驱动的方案,在网卡驱动层增加数据包过滤层,过滤掉那些不感兴趣的协议数据,把未知协议或者是应用层协议提交至上层协议栈进行进一步的分析。

2 MPC837X硬件系统及vxworks操作系统

2.1 MPC837X硬件系统

MPC837X 套件是一套完整的基于飞思卡尔MPC837X 处理器的嵌入式开发平台。套件集成飞思卡尔MPC837X 处理器,512M的DDR2 SDRAM 以及16M的FLASH,可扩展NAND FLASH,开发板上则提供非常丰富的外设接口:2个10M/100M/1000M自适应以太网接口、2个三线RS-232 串口等。系统具有体积小、功耗小、处理能力强、网络功能强大等特点,能够装载和运行嵌入式Linux 操作系统或者Vxworks操作系统。

图2-1所示是MPC837X的模块图,处理器的核心采用的是e300的核心,带有32KB的高速指令缓存和32KB的高速数据缓存,支持浮点运算。总线上还有两个三速以太网控制器,四个SATA控制器,一个DDR内存控制器,USB控制器,PCI-E控制器等等。

剩余内容已隐藏,请支付后下载全文,论文总字数:13758字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;