欢迎来到天天文库
浏览记录
ID:876301
大小:96.03 KB
页数:11页
时间:2017-09-22
《嵌入式tcpip协议的分析与研究》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、嵌入式TCP/IP协议的分析与研究摘要:嵌入式TCP/IP协议不同于应用在PC机上的TCP/IP协议,Internet上面的各种通信协议对于计算机存储器、运算速度等的要求比较高,而嵌入式系统中大量存在的是8位和16位MCU,支持TCP/IP等Internet协议将占用大量系统资源,或根本不可能。为了既实现相应的功能又节省系统资源,需要对协议进行有针对性的模块化裁剪,在单片机上嵌入TCP/IP协议簇的一个子集。文章根据各种MCU自身的特性,实现TCP/IP协议的方法和实现嵌入式Internet的方案及TCP协议的机制裁减方法,同时用设计实例证明了嵌入式TCP/IP的可行性。关键
2、词:嵌入式TCP/IP;嵌入式Internet; TCP协议的机制裁减1绪论在Internet日益普及,信息共享程度不断提高的今天,人们的工作和生活方式发生了根本性的变化。单片机或微控制器(MCU)已经在家庭和工业的各个领域得到了应用,通称嵌入式系统。但目前大多数嵌入式系统还处于单独应用的阶段,一般都是孤立于Internet以外。如果嵌入式系统能够连接到Internet上面,则可以方便、低廉地将信息传送到几乎世界上的任何一个地方。于是嵌入式Internet技术就应运而生。将嵌入式系统与Internet结合起来的想法其实很早以前就有了,主要的困难在于,Internet上面的各种
3、通信协议对于计算机存储器、运算速度等的要求比较高,而嵌入式系统中大量存在的是8位和16位MCU,支持TCP/IP等Internet协议将占用大量系统资源,或根本不可能。为了既实现相应的功能又节省系统资源,需要对协议进行有针对性的模块化裁剪,在单片机上嵌入TCP/IP协议簇的一个子集。2TCP/IP协议分析TCP/IP通常被认为是一个四层协议系统,分别为:链路层、网络层、传输层、应用层,每一层都有相应的协议集合来实现不同的功能,其层次结构和主要的网络协议如图3.1所示。2.1链路层协议分析链路层的主要作用是为上层协议发送和接收数据包。链路层中重点分析的为ARP协议。以太网上数据
4、报的传输是采用网络的MAC地址来进行识别的,这就要求系统有实现IP地址到MAC地址的转换的功能,即ARP(地址解析)协议。ARP协议可以分成ARP请求协议和ARP响应协议。系统要同其它计算机通信,就必须要实现ARP响应协议。ARP请求协议建立了一个IP地址到MAC地址的映射。如果嵌入式系统的资源有限,可使用以太网广播帧发送数据分组,也可以把数据分组发往固定的路由器,由路由器转发数据分组。RARP(逆地址解析协议)主要用于无盘工作站中,嵌入式Internet中无须实现此协议。应用层Telnet、FTP、HTTP传输层网络层链路层TCP、UDPICMP、IP、IGMPARP、RA
5、RP、硬件接口图2.1TCP/IP层次结构图2.2网络层协议分析网络层处理分组在网络中的活动。其协议包括IP协议(网际协议)、ICMP协议(Internet互联网控制报文协议)以及IGMP协议(Internet组管理协议)。IP协议是TCP/IP族的核心协议,它使异构网络之间的通信成为可能。因此,如果嵌入式Internet,需要跨越不同的网络进行通信就必须要实现IP协议。所以IP协议需要完整实现。要特别注意IP包最大可以为65k,可以分段传输,而在嵌入式系统中根本无法容纳如此大的数据包,因此一般不支持分段。单片机一般采用发送小数据包的方式,以避免分段。ICMP协议主要用来传递
6、差错报文以及其他需要注意的信息。我们通常使用的应用程序Ping就是采用ICMP协议来测试网络的连通情况。对于普通的嵌入式Internet的应用而言,在ICMP协议中能够测试网络的连通情况即可,因此只需实现ICMP中类型号为0、代码为0的Ping应答协议即可。通常嵌入式Internet不考虑ICMP协议。2.3传输层协议分析传输层主要为两台主机上的应用程序提供端到端的通信。传输层有两种不同的传输协议:面向连接的TCP(传输控制协议)和无连接的UDP(用户数据报协议)。TCP是一种面向连接的协议,它提供高可靠性服务。TCP在传输前必须先通过“三重握手”在主机间建立TCP接入,它所
7、传数据流采用了顺序号和应答措施,可以发现数据的丢失、段的失序和对传输错误的排除,所以TCP协议提供的是数据流的可靠传输。但相对于UDP,它的可靠性是以复杂性为代价的,需要复杂庞大的程序来实现。UDP提供的是无连接的不可靠的服务,可能出现数据包的丢失、重复和连接失败等错误。但是正因为没有保证可靠性的机制,它可以实现高速发送,充分发挥物理传输设备的速度。UDP适合用在通信介质十分可靠的情况,例如以太网等。传输层有两个可选择的协议,所以就应该考虑该用那个协议传输数据报。下面用例子来说明:对楼宇散布各处的温度和
此文档下载收益归作者所有