7第七篇 UDP板的原理及使用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第七篇 UDP板的基本原理
7.1 UDP协议基本原理
7.1.1 TCP/IP协议概述
很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但T C P / I P协议族允许它们互相进行通信。
这一点很让人感到吃惊,因为它的作用已远远超出了起初的设想。
T C P / I P起源于6 0年代末美国政府资助的一个分组交换网络研究项目,到9 0年代已发展成为计算机之间最常应用的组网形式。
它是一个真正的开放系统,因为协议族的定义及其多种实现可以不用花钱或花很少的钱就可以公开地得到。
它成为被称作“全球互联网”或“因特网( I n t e r n e t )”的基础,该广域网(WA N)已包含超过1 0 0万台遍布世界各地的计算机。
网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。
一个协议族,比如T C P / I P,是一组不同层次上的多个协议的组合。
T C P / I P通常被认为是一个四层协议系统,如图1 - 1所示。
每一层负责不同的功能:
1)链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。
它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。
2)网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。
在T C P / I P协议族中,网络层协议包括I P协议(网际协议),I C M P协议(I n t e r n e t互联网控制报文协议),以及I G
M P协议(I n t e r n e t组管理协议)。
3 ) 运输层主要为两台主机上的应用程序提供端到端的通信。
在T C P / I P协议族中,有两个互不相同的传输协议: T C P(传输控制协议)和U D P(用户数据报协议)。
T C P为两台主机提供高可靠性的数据通信。
它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。
由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。
而另一方面, U D P则为应用层提供一种非常简单的服务。
它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。
任何必需的可靠性必须由应用层来提供。
这两种运输层协议分别在不同的应用程序中有不同的用途。
4 )应用层负责处理特定的应用程序细节。
几乎各种不同的T C P / I P实现都会提供下面这些通用的应用程序:
• Telnet 远程登录。
• FTP 文件传输协议。
• SMTP 简单邮件传送协议。
• SNMP 简单网络管理协议。
假设在一个局域网( L A N)如以太网中有两台主机,图1 - 1列出了该过程所涉及到的分层。
图1-1 TCP/IP协议族的四个层次
在图1 - 1中列举了七种不同层次上的协议。
其中T C P,UDP是一种运输层协议,I P,ICMP,IGMP是一种网络层协议,而ARP,RARP以太网协议则应用于链路层上,用户的应用层协议这里并未明确画出,可以是前面所讲应用层协议中的任一种。
T C P / I P协议族是一组不同的协议组合在一起构成的协议族。
尽管通常称该协议族为T C P / I P,但T C P和I P只是其中的两种协议而已。
在T C P / I P协议族中,还有很多种协议。
7.1.2 TCP/IP的封装与分用
当应用程序用T C P传送数据时,该过程如图1 - 2所示,逐个通过每一层直到被当作一串比特流送入网络。
其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息)。
T C P传给I P的数据单元称作T C P报文段或简称为T C P段(T C Ps e g m e n t)。
I P传给网络接口层的数据单元称作I P 数据报(IP datagram)。
通过以太网传输的比特流称作帧(Fr a m e )。
图1-2 数据进入协议栈时的封装过程
U D P数据与T C P数据基本一致。
唯一的不同是U D P传给I P的信息单元称作U D P数据报(UDP datagram),而且U D P的首部长为8字节。
回想前面图1 - 1,由于T C P、U D P、I C M P和I G M P都要向I P传送数据,因此I P必须在生成的I P首部中加入某种标识,以表明数据属于哪一层。
为此, I P在首部中存入一个长度为8 b i t的数值,称作协议域。
1表示为I C M P协议, 2表示为I G M P协议, 6表示为T C P协议, 1 7表示为U D P协议。
类似地,许多应用程序都可以使用T C P或U D P来传送数据。
运输层协议在生成报文首部时要存入一个应用程序的标识符。
T C P和U D P都用一个1 6 b i t的端口号来表示不同的应用程序。
T C P和U D P 把源端口号和目的端口号分别存入报文首部中。
网络接口分别要发送和接收I P、A R P和R A R P数据,因此也必须在以太网的帧首部中加入某种形式的标识,以指明生成数据的网络层协议。
为此,以太网的帧首部也有一个16 bit的帧类型域。
当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。
每层协议都要去检查报文首部中的协议标识,以确定接收数据的上层协议。
这个过程称作分用( D e m u l t i p l e x i n g),图1 -3显示了该过程是如何发生的。
图1-3 以太网数据帧的分用过程
7.1.3 TCP/IP协议的封装格式
这里主要以UDP板所用到的协议来讨论。
7.1.3.1 以太网的封装
以太网协议(用于10MBPS的以太网,作者以下所说的以太网均指10M以太网,而不是100M,1000M的以太网)。
以太网协议有两种,一种是IEEE802.2/IEEE802.3,还有一种是以太网的封装格式。
现代的操作系统均能同时支持这两种类型的协议格式。
因此对我们来说只需要了解其中的一种就够了,特别是对单片机来说,不可能支持太多的协议格式。
以太网的物理传输帧:(仅介绍第二种格式)
PR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数0.....。
SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的,跟同步位不同的是最后2位是11而不是10。
DA:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF,则是广播地址,广播地址的数据可以被任何网卡接收到。
SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同样是6个字节。
TYPE:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。
如:0800H 表示
数据为IP包,0806H 表示数据为ARP包,814CH是SNMP包,8137H为IPX/SPX包,(小于0600H的值是用于IEEE802的,表示数据包的长度。
)
DA TA:数据段,该段数据不能超过1500字节。
因为以太网规定整个传输包的最大长度不能超过1514字节。
(14字节为DA,SA,TYPE)。
PAD:填充位。
由于以太网帧传输的数据包最小不能小于60字节, 除去(DA,SA,TYPE 14字节),还必须传输46字节的数据,当数据段的数据不足46字节时,后面补.....(当然也可以补其它值)。
FCS:32位数据校验位.为32位的CRC校验,该校验由网卡自动计算,自动生成,自动校验,自动在数据段后面填入.对于数据的校验算法,我们无需了解。
事实上,PR,SD,PAD,FCS这几个数据段我们不用理它,它是由网卡自动产生的,我们要理的是
DA,SA,TYPE,DATA四个段的内容.所有数据位的传输由低位开始(但传输的位流是用曼彻斯特编码的) 以
太网的冲突退避算法就不介绍了,它是由硬件自动执行的.
DA+SA+TYPE+DATA+PAD最小为60字节,最大为1514字节.
以太网卡可以接收三种地址的数据,一个是广播地位,一个是多播地址(我们用不上),一个是它自已的地址.但网卡也可以设置为接收任何数据包(用于网络分析和监控)。
任何两个网卡的物理地址都是不一样的,是世界上唯一的,网卡地址由专门机构分配.不同厂家使用不同地址段,同一厂家的任何两个网卡的地址也是唯一的.根据网卡的地址段(网卡地址的前三个字节),可以知道网卡的生产厂家.有些网卡的地址也可以由用户去设定,但一般不需要.
7.1.3.2 ARP的封装
在A R P背后有一个基本概念,那就是网络接口有一个硬件地址(一个48 bit的值,标识不同的以太网接口,也就是前面所讲的网卡的MAC地址)。
在硬件层次上进行的数据帧交换必须有正确的接口地址。
但是,知道主机的I P地址而不知道主机的以太网接口地址时并不能发送一帧数据给主机。
主机(如以太网驱动程序)必须知道目的端的硬件地址才能发送数据。
A R P的功能是在知道主机的IP地址而不知道主机的以太网接口地址时,通过发广播的形式获取主机的以太网接口地址。
在以太网A R P请求和应答分组的格式如图1- 4所示
图1-4 用于以太网的ARP请求或应答分组格式
以太网报头中的前两个字段是以太网的源地址和目的地址。
目的地址为全1的特殊地址是广播地址。
电缆上的所有以太网接口都要接收广播的数据帧。
两个字节长的以太网帧类型表示后面数据的类型。
对于
A R P请求或应答来说,该字段的值为0 x 0 8 0 6。
硬件类型(hardware)和协议类型(p r o t o c o l)用来描述A R P中的各个字段。
例如,一个A R P 请求询问某个IP地址对应的硬件地址(这里是以太网地址)。
硬件类型字段表示硬件地址的类型。
它的值为1即表示以太网地址。
协议类型字段表示要映射的协议地址类型。
它的值为0 x 0 8 0 0即表示I P地址。
它的值与包含I P数据报的以太网数据帧中的类型字段的值相同,这是有意设计的。
接下来的两个1字节的字段,硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度,以字节为单位。
对于以太网上I P地址的A R P请求或应答来说,它们的值分别为6和4。
操作字段指出四种操作类型,它们是A R P请求(值为1)、A R P应答(值为2)、R A R P请求(值为3)和R A R P应答(值为4)(我们在第5章讨论R A R P)。
这个字段必需的,因为A R P请求和A R P应答的帧类型字段值是相同的。
接下来的四个字段是发送端的硬件地址(在本例中是以太网地址)、发送端的I P地址、目的端的硬件地址和目的端的I P地址。
注意,这里有一些重复信息:在以太网的数据帧报头中和A R P请求数据帧中都有发送端的硬件地址。
对于一个A R P请求来说,除目的端硬件地址外的所有其他的字段都有填充值。
当系统收到一份目的端为本机的A R P请求报文后,它就把硬件地址填进去,然后用两个目的端地址分别替换两个发送端地址,并把操作字段置为2,最后把它发送回去
7.1.3.3 IP的封装
I P数据报的格式如图1 - 5所示。
普通的I P首部长为2 0个字节,除非含有选项字段。
这里不讨论选项字段。
目前的协议版本号是4,首部长度指的是首部占32 bit字的数目,包括任何选项。
由于它是一个4比特字段,因此首部最长为6 0个字节。
普通I P数据报(没有任何选择项)字段的值是5。
现在大多数的T C P / I P实现都不支持TO S特性,所以可以将TOS设为0。
总长度字段是指整个I P数据报的长度,以字节为单位。
总长度字段是I P首部中必要的内容,因为一些数据链路(如以太网)需要填充一些数据以达到最小长度。
尽管以太网的最小帧长为4 6字节,但是I P数据可能会更短。
如果没有总长度字段,那么I P层就不知道4 6字节中有多少是I P数据报的内容。
图1-5 IP数据报格式及首部中的各字段
标识字段唯一地标识主机发送的每一份数据报。
通常每发送一份报文它的值就会加1。
标志字段和片偏移字段这里也不作讨论,可以都设为0。
首部检验和字段是根据I P首部计算的检验和码。
它不对首部后面的数据进行计算。
为了计算一份数据报的I P检验和,首先把检验和字段置为0。
然后,对首部中每个16 bit进行二进制反码求和(整个首部看成是由一串16 bit的字组成),结果存在检验和字段中。
当收到一份I P数据报后,同样对首部中每个16 bit进行二进制反码的求和。
由于接收方在计算过程中包含了发送方存在首部中的检验和,因此,如果首部在传输过程中没有发生任何差错,那么接收方计算的结果应该为全1。
如果结果不是全1(即检验和错误),那么I P就丢弃收到的数据报。
但是不生成差错报文,由上层去发现丢失的数据报并进行重传。
最后是包含源I P地址和目的I P地址
7.1.3.4 UDP的封装
U D P是一个简单的面向数据报的运输层协议。
U D P首部的各字段如图1 - 6所示。
图1-6 UDP首部
端口号表示发送进程和接收进程。
在图1 - 6中,我们画出了T C P和U D P用目的端口号来分用来自I P层的数据的过程。
由于I P层已经把I P数据报分配给T C P或U D P(根据I P首部中协议字段值),因此T C P端口号由T C P来查看,而U D P端口号由U D P来查看。
T C P端口号与U D P端口号是相互独立的。
U D P长度字段指的是U D P首部和U D P数据的字节长度。
U D P检验和覆盖U D P首部和U D P数据。
尽管U D P检验和的基本计算方法与I P首部检验和计算方法相类似(16 bit字的二进制反码和),但是它们之间存在不同的地方。
首先, U D P数据报的长度可以为奇数字节,但是检验和算法是把若干个16 bit字相加。
解决方法是必要时在最后增加填充字节0,这只是为了检验和的计算(也就是说,可能增加的填充字节不被传送)。
其次, U D P数据报和T C P段都包含一个1 2字节长的伪首部,它是为了计算检验和而设置的。
伪首部包含I P首部一些字段。
其目的是让U D P 两次检查数据是否已经正确到达目的地(例如, I P没有接受地址不是本主机的数据报,以及I P没有把应传给另一高层的数据报传给U D P)。
U D P数据报中的伪首部格式如图1 - 7所示。
图1-7 UDP检验和计算过程中使用的各个字段
7.2 以太网概述
7.2.1 以太网的基本原理
以太网是当今现有局域网采用的最通用的通信网络标准。
该准定义了在局域网(LAN)中采用的电缆类型和信号处理方法。
以太网在互联设备之间以10~100Mbps的速率传送信息包,双绞线电缆10 Base T。
以太网由于其低成本、高可靠性以及10Mbps的速率而成为应用最为广泛的以太网技术。
许多制造商提供的产品都能采用通用的软件协议进行通信,开放性最好。
CSMA/CD( Carrier Sense Multiple Access/Collision Detect)是用于载波传输访问以太网的协议。
CSMA/CD 在IEEE 802.3 标准中有详细的说明。
在以太网上,每个设备可以在任何时候发送帧。
每个设备先检测线路是否可用,如果可用就发送。
如果其它设备在同时也这样做了,冲突就发生了,相应的帧也就抛弃了。
每个设备停一个随机的时间然后再发送,直到发送成功。
打个比方:CSMA/CD协议与电话会议非常类似,许多人可以同时在线路上进行对话,但如果每一个人都在同时讲话,则你将听到一片噪声;如果每个人等别人讲完后再讲,则你可以理解各人所说的话。
7.2.2 TCP/IP网络用于工业控制的特点:
●实时性正于前面所讲在学术上Ethernet用于自动控制是有弱点的,它所基于的CSMA/CD通道
协议具有不确定性(non-determine)。
然而在今天的实际应用中,以10Mbps频宽来讲,实际碰撞的几率已很低,即使碰撞,人可以极快的速度再次重发,更有日渐普及的switching hub,可以弹性设定10M/100M频宽给专属的使用者。
●稳定性Ethernet材料可以是同轴电缆,双绞线,光纤等。
尤其是光纤本身不受噪声干扰,适合
使用在实时监控的高噪声现场环境,具有良好的稳定性。
●共通性TCP/IP通讯协议已是国际共通的标准,不论是intranet还是internet皆采用此标准。
各种品牌的计算机,现场设备都可以通过TCP/IP接口直接连在internet网络上,已达到远程监控(remote control)或远程维修(remote diagnostics)的目的。
●成本效益一旦采用主流的市场技术,由于经济规模的推动,功能快速提升,成本快速下降。
不
论是从硬件软件的开发,还是从系统的维护,其成本效益皆比采用专用的Field Bus为佳。
7.2.3 系统和硬件结构:
图1-8 系统结构
图1-9 控制器硬件框图
●系统结构如图1-8所示。
该系统是应用于化工厂中,实现对各个化学反应炉中压力和温度的控
制。
主机1和主机2分别是实现对各个控制器采样上来数据按照PID算法进行运算,并发出相
应的控制量。
TCP/IP网络主要传输主机发出的控制量以及从控制器上对每个采样时间点的采样
值。
其中控制器实现对反应炉阀门开度的控制和对反应炉温度和压力的采样。
控制器的硬件框
图1-8所示。
CPU2负责对炉温和压力的采样并对反应炉阀门开度控制,CPU1负责将以太网协议
与RS232协议之间的转换。
以太网控制逻辑主要由philips的89C51微处理器(CPU1),基于ISA接口的10M以太网网络接口芯片,32KRAM62256,用于存放控制器信息的I2C接口的芯片24C02以及看门狗芯片MAX813L组成。
网络接口芯片都遵循一定的接口标准,现以8019AS为例作一下介绍。
8019AS是基于ISA接口的10M 以太网卡芯片。
7.2.3.1 主要特征:
●具有8位/16位数据总线24位地址总线
●符合IEEE802.3和CSMA/CD类型的以太网络标准
●支持8级中断
●内置16KB的SRAM,用于收发缓冲,降低对主处理器的速度要求
7.2.3.2 内部结构
按数据链路的不同,可以将RTL8019AS内部划分为远程DMA(remote DMA)通道和本地DMA(local DMA)通道两个部分。
本地DMA完成控制器与网线的数据交换,主处理器收发数据只需对远程DMA操作。
当主处理器要向网上发送数据时,先将一帧数据通过远程DMA通道送到RTL8019AS中的发送缓存区,然后发出传送命令。
RTL8019AS在完成了上一帧的发送后,再完成此帧的发送。
RTL8019AS接收到的数据通过MAC比较、CRC校验后,由FIFO存到接收缓冲区,收满一帧后,以中断或寄存器标志的方式通知主处理器。
需要
指明的一点是,RTL8019AS的DMA与平时所说的DMA有点不同。
RTL8019AS的local DMA操作是由控制器本身完成的,而其remote DMA 并不是在无主处理器的参与下,数据能自动移到主处理器的内存中,它的操作机制是这样的:主处理器先赋值于remote DMA 的起始地址寄存器RSAR0、RSAR1和字节计数器RBCR0、RBCR1,然后在RTL8019AS的DMA I/O地址上读写指定地址上的数据。
表1 8019芯片内部寄存器
RTL8019AS内置的16KB 的SRAM可划分为接收缓冲和发送缓冲两个部分。
缓冲以页为单位,每页256个字节,16KB的SRAM的页范围规定在0x40~0x80,由PSTART 和PSTOP寄存器来设定接收缓冲页的范围;由RSAR0、1和RBCR0、1寄存器来设定发送缓冲页的范围。
CURR指向接收到的帧的起始页,Boundary指向还未读的帧的起始页。
当CURR到达了接收缓冲页的底部,即与PSTOP相等时,CURR又会自动指向到PSTART 处。
图1-10 处理器与8019的接线发式
7.2.4 RTL8019AS的硬件电路设计
8019与MCU常见的连线发式如图1-10所示。
其中,8019的数据线与地址线直接与MCU相连。
需要注意的是:此接法设定的8019的基地址是300H,即I/O地址空间为300H-31FH。
第65脚JP是输入引脚,当65脚为低电平时,8019工作在即插即用方式或免跳线方式,具体由93C46里的内容决定。
我们买到的8019AS网卡一般第65脚为悬空的,8019AS悬空时,引脚的输入状态为低电平(其他引脚也是这样,悬空的输入脚的电平为低电平,里面有一个100K的下拉电阻),8019工作在即插即用方式或免跳线方式,需要使用93C46芯片。
如果我们把65脚接高电平(VCC),那么网卡的I/O和中断就不是用93C46的内容决定,这时不需要使用93C46,可以不接93C46。
那么这时候的I/O和中断IRQ是由78,79,80,81,82,84,85等引脚来决定的。
具体请参考8019AS数据手册。
P34接8019的复位端,在程序开始时,将P34置位100ms,然后复位即可以达到复位的目的。
MCU的WR引脚与RD引脚分别接8019AS的IOWR端和IORD端。
7.2.5 软件流程
7.2.5.1 主程序流程
7.2.5.2 发包流程
7.2.5.3 中断接收流程
接收字节计数
7.2.5.4 收包流程
7.2.6嵌入式设备协议分析
将嵌入式设备接入internet是嵌入式系统技术的一个重要发展方向,然而对于8/16位低速MCU来说,实现标准的TCP/IP协议族是很困难的,因此,我们有必要,对标准的TCP/IP协议族进行裁剪,从而设计出针对嵌入式系统接入internet的专用协议。
标准TCP/IP协议分析
图1-11展示了internet常用的协议,IP协议是internet的基本协议,所有的异构网络在IP协议的支持下组成了整个internet。
所以,要想将嵌入式设备接入internet,系统必须支持IP协议。
然而嵌入式系统的通信量不大,IP协议定义的一些复杂机制(如分段和各种附加选项等等)对于嵌入式接入internet 来说是不必要的,而且系统实现起来也有一定的困难。
图1-11 TCP/IP常用协议
ARP协议为主机提供了将目的IP地址转换成为目的物理地址的方法,它支持ARP请求和ARP响应两种数据分组。
而且规定为了提高地址转换效率,主机内部要维护一定量的缓存来存储目的IP地址到目的物理地址的映射对,并定时对该缓存进行更新,以避免因为目的机更改了IP地址或物理地址而导致缓存纪录的地址映射对出现不一致性。
传输控制协议TCP定义了由internet提供的一个关键性服务,即可靠数据流交付。
TCP提供两台主机之间端对端的可靠全双工连接。
但是这种发式并不适合与该特定的嵌入式系统。
由于系统要求一台控制器必须同时与该网络中的每一台主机建立数据连接。
所以这种端对端的服务发式显然不合适此嵌入式系统的要求。
此外,TCP协议定义的3次建立连接握手过程,4次关闭连接握手过程。
捎带确认信息的超时重传机制,滑动窗口流控机制,非常适合与两台通用计算机之间传输大量的无任何语义的数据字节流。
然而在嵌入式系统中却很难利用有限的资源来实现这些机制。
相对而言,用户数据报协议(UDP)提供数据广播和多播方式,并且在数据传输中避免了连接过程所带来的网络延时,很好的满足了系统快速响应的要求。
虽然提供的是无连接,不可靠的数据传输服务,但是此协议却是非常适合该嵌入式系统的要求。
并且,作者在嵌入式设备上使用该协议在局域网上作测试时,可靠性非常好。
作者认为:只要不是在大型的TCP/IP互联网中,许多基于UDP的应用程序在局域网上可以工作的很好。
嵌入式网络协议:
嵌入式协议分层组织的,图1-12代表了嵌入式网络协议的所有内容。
嵌入式网络协议的设计思想是对标准的TCP/IP协议进行简化,图中带低纹的是对标准协议的简化形式。
嵌入式网络协议规定系统通过最广泛分布的以太网接入internet。
此协议的物理层遵循IEEE802.3规范的CSMA/CD协议。
现在的NIC都采用硬件实现了CSMA/CD协议。
嵌入式网络协议采用的是简化了的ARP协议,它要求嵌入式系统能够响应主机或路由器对它的ARP请求,但是它只是对自己所处局域网内的路由器发主动的ARP请求。
协议规定嵌入式系统判断NIC收到的桢
图1-12 嵌入式网络协议的内容
数据是否为对自身的ARP请求,如果是,则系统立即发出ARP响应桢。
由于系统只对路由器发主动的ARP 请求,简单地说,在整个网络里系统只晓得路由器的物理地址,所以,协议又规定:系统使用路由器的物理地址作为目的地址,由路由器辨别该桢数据的目的IP地址是否在本网络中,若是,则转发到相应的主机;如果不是,则转发到其他网络。
此规定,避免使用广播地址而给整个局域网段造成广播压力。
协议规定嵌入式系统采用的是简化的IP协议。
它要求系统判断NIC收到的桢数据是否为IP类型,目的IP地址是否与自身相同,且IP头部计算出的校验和为零。
如果都满足,则系统就将该IP分组交给上一层协议处理。
嵌入式网络协议支持更高层基于UDP的裁剪协议,UDP协议判断数据包中的端口是否为双方的约定端口,如果正确,则接收该数据包,如果不正确,则丢弃该包。
7.2.7 小结:
本篇研制成功的以8019AS位网络通信基础的新型嵌入式设备,在实际应用中,运行稳定,能够十分方便地实现嵌入式网络的互连。
目前,此设备以广泛应用于数据采集,数据处理的各个场合。
相信随着信息家电时代的来临,嵌入式INTERNET技术必将得到更广泛的应用。