基于TCP、IP协议栈的嵌入式网络的设计与实现
[关键词:TCP,IP,协议栈] [热度 ]提示:此毕业设计论文完整版包含【开题报告,论文,源程序,答辩稿】 作品编号:rjgc0145,word全文:12页,合计:5700字 |
论文的主要研究内容
本课题主要研究如何结合嵌入式Internet应用以及嵌入式系统的软硬件系统环境,以标准 TCP/I协议为基础,接口通过API形式以适应多个网络程序同时运行,设计并实现一种与应用分离,同时具有占用系统资源少、可配置、易于移植、接口简单易用等特点的轻量级嵌入式 TCP/IP协议栈。使用这种轻量级嵌入式TCP/IP协议栈,可以让嵌入式Internet应用开发人员省TCP/IP通讯协议部分的设计与实现,把主要的工作放在应用程序(协议)的分析和设计上,同时为了适应μC/OS-Ⅱ这样的实时操作系统,协议栈整体作为任务的形式实现。
实验方案
(1)实现网络接口层,数据发送和数据接收接口函数。
(2)实现ARP协议,发送数据,ARP请求管理;接收ARP应答,ARP应答管理;维护IP-MAC对应表。
(3)实现IP协议,发送过程中,寻址,校验,封装IP首部;接收过程中解析报文的IP首部,校验,得到信息。
(4)实现ICMP协议(在此层完成ping功能)。终端输入ping命令时,测试目的主机是否可达;其它主机给本机发ping命令时,本机发送应答。
(5)实现TCP协议。作为客户端和服务端,实现三次握手建立链接,发送接收数据,四次握手断开链接。
(6)实现UDP协议。发送过程中封装UDP首部;接收过程中解析UDP首部得到信息,并将去除UDP首部的报文存放在相应SOCKET的数据部分或适当处理。
(7)实现socket通信,统一用户对下层的接口。提供绑定,建立链接,设置监听,监听链接,接发数据的接口。
(8)实现DHCP协议。实现动态主机IP获取。
(9)实现DNS协议。解析域名服务。
......
本项目的软硬件开发环境分别为Keil uVision3[10]和proteus,编程语言为C。编程所在的操作系统为Windows。最后的测试环境是windows xp和虚拟机的联合测试环境。
在本项目进行之前,必须对此项目所涉及的相关知识点有很好的了解,特别是协议栈的层次结构。
本次项目是在proteus模拟的ucos即嵌入式系统的环境下开发,所以最后的测试的难易程度将对项目的进度产生一定影响,为了解决这个可能存在的问题,所以在刚开始的设计之中就应该把此因素考虑在内。解决方案是为此项目建立三个优先级各不相同的轮循任务,通过创建这三个任务,可以使本项目的功能划分更加明确,为之后的调试提供极大的便利。在之后的调试当中,可用根据模拟器终端的显示界面了解程序运行结果,更有针对性的对程序进行相应调整,从而缩短项目开发时间,提高项目开发效率。
由于程序所运行的真实环境是windows。所以,为了测试协议栈的可行性,可以在虚拟机中与模拟的开发板进行一些通信[11],这样便能很好的检测此协议栈是否能在嵌入式系统中运行。另外,此项目一共被划分成四个层次,但并不是每次层次独立成一个模块,而是每个协议被划分成一个模块,这样,可以将模块的功能划分最细化。从而对编码阶段的阻碍达到最小。
提示:此毕业设计论文完整版包含【开题报告,论文,源程序,答辩稿】 作品编号:rjgc0145,word全文:12页,合计:5700字 |
本软件工程毕业设计论文作品由 毕业论文设计参考 [http://www.qflunwen.com] 征集整理——基于TCP、IP协议栈的嵌入式网络的设计与实现(开题报告,论文,源程序,答辩稿)!