(完整版)基于ARM的嵌入式TCPIP协议的实现
TCPIP协议的原理与实现

TCPIP协议的原理与实现TCP/IP协议的原理与实现TCP/IP协议是互联网最基础、最重要的协议之一,它是一种面向连接、可靠的网络传输协议。
本文将从TCP/IP协议的基本原理、网络层次结构和实现方式等方面进行详细介绍。
一、TCP/IP协议的基本原理TCP/IP协议是由传输控制协议(TCP)和网络互联协议(IP)组成的,它们共同工作,实现了数据在网络中的传输和路由。
TCP/IP协议主要包括以下几个方面的原理:1. 分层结构:TCP/IP协议采用分层结构,将网络通信划分为不同的层次,每个层次负责不同的功能,并且层与层之间通过协议进行通信和数据传输。
分层结构包括物理层、数据链路层、网络层、传输层和应用层。
2. IP协议:IP协议是TCP/IP协议的核心,它负责将数据包传输到目标地址。
IP协议采用的是无连接的方式,它不保证数据的可靠性和顺序性,只是负责将数据包从源地址发送到目标地址,并通过IP地址和子网掩码进行路由选择。
3. TCP协议:TCP协议是建立在IP协议之上的传输层协议,它提供了可靠的数据传输服务。
TCP协议使用三次握手建立连接,在传输数据之前先建立源和目标之间的通信信道。
TCP协议负责数据的分割、传输和重组,保证数据的可靠性和顺序性。
4. 端口和套接字:TCP/IP协议中的应用层通过端口和套接字进行通信。
端口是一个虚拟的地址,用于标识应用程序,套接字是应用程序和网络通信之间的接口。
通过端口和套接字的配对,应用程序之间可以建立连接并进行数据传输。
二、TCP/IP协议的网络层次结构TCP/IP网络层次结构是一种分层结构,它包括物理层、数据链路层、网络层、传输层和应用层。
每个层次都有特定的功能和协议,通过层次之间的协作,实现了数据的传输和网络通信。
1. 物理层:物理层是TCP/IP协议的底层,它负责处理物理媒介和电信号传输。
物理层的主要任务是将比特流转换为电信号,并进行传输和接收。
2. 数据链路层:数据链路层负责将数据包封装为帧并进行传输。
基于ARM的嵌入式Web服务器设计与实现

河南工业大学嵌入式系统课程设计题目:基于ARM的嵌入式Web服务器设计与实现专业课程设计任务书说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页目录摘要 (4)1 嵌入式Web服务器的软件构成 (5)1.1 CGI技术 (5)1.1.1 CGI概述 (5)1.1.2CGI工作原理 (5)2 嵌入式Web 服务器简述 (7)2.1 嵌入式Web 服务器的主要应用 (8)2.2 嵌入式Web 服务器的优点 (8)2.3 嵌入式Web 服务器实现原理 (8)3 嵌入式Web 服务器硬件整体结构 (9) (10) (10)3.1 嵌入式Web 服务器软件构成 (10)3.2 精简TCP/IP 协议及实现 (11)3.2.1 ARP 协议及其实现 (11)3.2.2 ICMP 协议及其实现 (11)3.2.3 IP 协议及其实现 (11)3.2.4 TCP 协议及实现 (12)3.3 HTTP 协议 (12)3.4 CGI 接口 (13)4 系统软件设计 (13)4.1 嵌入式操作系统 (13)4.2 Boa的移植 (13)4.3 软件实现 (14)5 实验测试 (16)6 结束语 (17)参考文献 (18)摘要随着计算机、网络通信和Internet 技术的飞速发展和不断进步,嵌入式系统在家庭和工业应用越来越广泛。
如何将嵌入式系统和工业控制系统接入Internet,综合利用嵌入式系统资源,实现嵌入式系统的远程管理和控制,已成为倍受关注的研究课题,而实现嵌入式系统的网络化则成为嵌入式系统的发展趋势。
网络通信时,应用程序使用C/S(客户/服务器)模式进行信息交互。
传统的服务器程序一般运行在大型的拥有高级操作系统的服务器的计算机上,这样服务器软件需要强大的硬件和系统软件支持。
嵌入式网络服务器是利用嵌入式系统实现服务器的软件和硬件功能,是嵌入式技术和网络技术相结合的产物。
与传统服务器相比,嵌入式Web服务器具有结构简单、体积小、可靠性强以及方便灵活等特点.这些让它具有很大的发展潜力。
《基于ARM和RTAI的嵌入式实时平台的设计与实现》

《基于ARM和RTAI的嵌入式实时平台的设计与实现》基于ARM和RT的嵌入式实时平台的设计与实现一、引言随着科技的发展,嵌入式系统在众多领域中发挥着越来越重要的作用。
嵌入式实时平台能够保证在严格的时间约束下提供高稳定性和高性能的系统功能。
本文主要讨论了基于ARM处理器和RT(实时操作系统支持)技术的嵌入式实时平台的设计与实现。
二、系统设计1. 硬件设计硬件设计是整个系统的基础,我们选择了ARM处理器作为主控制器。
ARM处理器具有低功耗、高性能、体积小等优点,非常适合用于嵌入式系统。
此外,我们还根据系统的需求,选择了适当的存储器、接口电路等硬件设备。
2. 软件设计软件设计包括操作系统和应用程序的设计。
我们选择了RT 作为系统的实时操作系统。
RT是一个开源的实时操作系统,具有良好的可扩展性和可定制性,能够满足各种实时应用的需求。
在应用程序设计方面,我们根据系统的功能需求,设计了相应的软件模块。
三、RT实时操作系统实现RT实时操作系统是整个系统的核心部分,它能够提供高稳定性和高性能的实时服务。
在实现过程中,我们首先对RT进行了定制,以满足系统的需求。
然后,我们实现了RT的初始化、任务调度、中断处理、内存管理等功能。
四、平台实现1. 驱动程序开发驱动程序的编写是实现嵌入式实时平台的关键步骤。
我们根据硬件设备的特性和需求,编写了相应的驱动程序,实现了对硬件设备的控制和管理。
2. 应用程序开发在应用程序开发方面,我们根据系统的功能需求,设计了相应的软件模块。
每个模块都负责特定的功能,如数据采集、数据处理、通信等。
我们使用了C语言进行编程,以保证代码的可读性和可维护性。
五、测试与优化在平台实现后,我们进行了严格的测试和优化工作。
首先,我们对平台的稳定性和性能进行了测试,确保系统能够在各种情况下正常运行。
然后,我们对代码进行了优化,以提高系统的运行效率和响应速度。
六、结论本文介绍了一种基于ARM和RT的嵌入式实时平台的设计与实现方法。
基于ARM的LwIP协议栈研究与移植

LwIP(Lightweight IP)是一种专为嵌入式系统设计的轻量级TCP/IP协议。 它实现了TCP/IP协议栈的主要功能,包括IP、ICMP、IGMP、UDP、TCP等协议, 适用于内存受限的环境。LwIP具有可移植性、可扩展性、易用性等特点,因此 在嵌入式系统中得到了广泛应用。
三、基于FreeRTOS的LwIP移植
5、调试与测试:完成移植后,需要对系统进行调试和测试,确保网络连接的 稳定性和可靠性。这包括对网络接口的物理连接、软件配置、数据传输等进行 测试。
四、优化策略
为了提高基于ARM的LwIP协议栈的性能和效率,以下优化策略可以参考:
1、内存管理:由于嵌入式系统的内存资源有限,因此需要合理地管理内存。 可以采用内存池技术,预先分配一定数量的内存块,以减少内存碎片和内存分 配的时间开销。
一、实时操作系统FreeRTOS
FreeRTOS是一个开源的、可扩展的、适用于各种不同平台(包括ARM CortexM系列、AVR、PIC32等)的实时操作系统。FreeRTOS内核提供多任务调度、任 务优先级管理、中断处理等功能,使得嵌入式系统可以更加高效、可靠地进行 任务管理和资源分配。
二、LwIP协议
4、减少系统资源占用
在嵌入式系统中,资源通常是有限的。因此,为了优化系统的性能和可靠性, 可以减少系统资源占用的比例。例如,在使用任务堆栈时,可以使用较小的堆 栈大小来避免过多的内存占用;在使用中断处理函数时,可以尽量减少中断处 理函数的执行时间,避免长时间占用CPU资源。
五、结论
本次演示介绍了基于实时操作系统FreeRTOS的LwIP协议的移植和优化方法。 通过使用内存池技术、异步通信技术、优化协议栈处理函数以及减少系统资源 占用等优化方法,可以提高系统的性能和可靠性。在嵌入式系统中,基于 FreeRTOS的LwIP协议的移植和优化具有重要的意义和应用价值。
《基于ARM和RTAI的嵌入式实时平台的设计与实现》

《基于ARM和RTAI的嵌入式实时平台的设计与实现》基于ARM和RT的嵌入式实时平台的设计与实现一、引言随着物联网、智能制造等领域的快速发展,嵌入式系统在各种应用场景中发挥着越来越重要的作用。
为了满足实时性、可靠性和高效率的需求,基于ARM架构和RT(Real-Time Application Interface)的嵌入式实时平台成为了研究和应用的热点。
本文将介绍基于ARM和RT的嵌入式实时平台的设计与实现过程,以供相关研究和开发人员参考。
二、设计背景及需求分析在设计基于ARM和RT的嵌入式实时平台之前,我们首先对应用场景进行了详细的分析。
这些应用场景包括工业自动化、无人驾驶、智能医疗、航空航天等,它们都对系统的实时性、稳定性和可靠性有着极高的要求。
因此,我们需要设计一个能够满足这些需求的嵌入式实时平台。
在硬件方面,我们选择了ARM架构的处理器,因为它具有高性能、低功耗、易于集成等优点。
在软件方面,我们选择了RT作为实时操作系统,它具有良好的可扩展性、实时性和稳定性。
三、平台设计1. 硬件设计硬件设计主要包括处理器选择、内存分配、接口设计等方面。
我们选择了高性能的ARM处理器,并根据应用需求分配了适当的内存。
此外,我们还设计了丰富的接口,以便与其他设备进行通信和数据交换。
2. 软件设计软件设计主要包括操作系统选择、实时性优化、任务调度等方面。
我们选择了RT作为实时操作系统,通过优化系统参数和任务调度策略,提高了系统的实时性和稳定性。
此外,我们还设计了友好的用户界面,方便用户进行操作和维护。
四、实现过程1. 开发环境搭建在开发过程中,我们首先搭建了适合ARM架构的软件开发环境,包括编译器、调试器、仿真器等工具。
这些工具为我们提供了便捷的开发和调试环境。
2. 程序编写与调试程序编写是整个实现过程的核心部分。
我们根据需求分析,将系统划分为不同的模块,并分别进行编程和调试。
在编程过程中,我们充分利用了RT提供的实时性、稳定性和可扩展性等特点,确保了系统的性能和可靠性。
基于ARM处理器的嵌入式系统设计与实现

基于ARM处理器的嵌入式系统设计与实现一、引言随着科技的不断发展,嵌入式系统在各个领域得到了广泛的应用,而ARM处理器作为一种低功耗高性能的处理器架构,在嵌入式系统中占据着重要地位。
本文将介绍基于ARM处理器的嵌入式系统设计与实现的相关内容,包括ARM处理器的特点、嵌入式系统设计的基本原理、实现过程中的关键技术等。
二、ARM处理器概述ARM处理器是一种基于RISC(精简指令集计算机)架构的处理器,具有低功耗、高性能和灵活性等特点。
ARM处理器广泛应用于移动设备、智能家居、工业控制等领域。
在嵌入式系统中,ARM处理器以其优越的性能表现成为首选。
三、嵌入式系统设计原理嵌入式系统是集成了硬件和软件的特定功能系统,其设计原理包括硬件选型、系统架构设计、软件开发等方面。
在基于ARM处理器的嵌入式系统设计中,需要考虑处理器性能、外设接口、功耗管理等因素。
四、基于ARM处理器的嵌入式系统设计流程硬件选型:选择适合项目需求的ARM处理器型号,考虑性能、功耗和成本等因素。
系统架构设计:确定系统整体架构,包括处理器核心选择、外设接口设计等。
软件开发:编写适配ARM处理器的底层驱动程序和应用程序,实现系统功能。
调试验证:对设计的嵌入式系统进行调试验证,确保系统稳定可靠。
五、基于ARM处理器的嵌入式系统实现关键技术Bootloader设计:Bootloader是引导加载程序,负责初始化硬件并加载操作系统。
在基于ARM处理器的嵌入式系统中,Bootloader 的设计至关重要。
设备驱动开发:针对不同外设接口开发相应的设备驱动程序,实现外设与处理器之间的通信。
系统优化:优化代码结构和算法,提高系统性能和响应速度。
电源管理:合理管理系统功耗,延长电池寿命或降低功耗成本。
六、基于ARM处理器的嵌入式系统应用案例以智能家居控制系统为例,介绍基于ARM处理器的嵌入式系统在智能家居领域的应用。
通过该案例展示ARM处理器在嵌入式系统设计与实现中的优势和特点。
单片机中TCP_IP协议子集的设计与实现

单片机中TCP_IP协议子集的设计与实现单片机中的TCP/IP协议子集是指在嵌入式系统中实现TCP/IP功能的子集,一般包括传输层的TCP协议和网络层的IP协议。
由于单片机资源有限,因此需要对TCP/IP协议进行精简,以适应单片机系统的特点。
TCP协议是一种可靠的传输协议,其特点是建立连接、数据传输和释放连接。
在单片机中实现TCP协议时,需要考虑内存占用和处理能力的限制。
一般采用基于硬件的TCP/IP 协议处理方案,利用硬件协同处理的方式降低单片机的负担。
在网络层实现IP协议时,也需要考虑单片机的资源限制。
通常采用最小化IP协议的方案,即去除不必要的功能,如IP分段、片重组、路由选择等。
在硬件设计中,可以采用硬件协同处理的方式,实现IP协议的基本功能,如IP地址识别、数据包过滤和转发等。
在单片机中实现TCP/IP协议子集时,需要考虑以下几个方面:1. 协议栈的设计:针对单片机的硬件资源、处理能力和存储空间的特点,选择适当的协议栈设计方案。
一般采用轻量级协议栈设计方案,对于一些不必要的功能可以进行精简或去除。
2. 数据处理模块的设计:在单片机中实现TCP/IP协议子集时,需要设计适合单片机的数据处理模块,即实现数据接收、发送、缓存和处理等功能。
可以采用多缓冲区的方式,提高数据处理效率。
3. 硬件加速模块的设计:为提高单片机系统的TCP/IP协议性能,可以采用硬件加速模块,如DMA、加速器等。
这些模块可以协同工作,实现完整的TCP/IP协议。
4. 资源管理模块的设计:由于单片机资源有限,需要设计相应的资源管理模块,监控系统资源的使用情况,确保系统正常运行。
总之,单片机中TCP/IP协议子集的设计与实现需要综合考虑单片机系统的特点,采用适当的软硬件设计方案,提高TCP/IP协议的处理效率和可靠性,进而实现嵌入式系统的网络通信功能。
嵌入式TCP/IP网络通信协议的实现

嵌入式TCP/IP网络通信协议的实现作者:龚峰文王剑来源:《硅谷》2008年第24期[摘要]TCP/IP已成为网络互联的标准,并成为支持Internet/Intranet的协议标准。
就是针对当前流行的TCP/IP网络通信协议的实现进行具体的研究和探讨。
[关键词]TCP/IP协议 Internet 网络通信中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1220053-01Internet已经发展得更加商业化,更加面向消费者,尽管基本目的发生了改变,但其最初的质量标准(也就是开放式、抗毁性和可靠性)依然是必需的。
这些特性包括可靠传输数据、自动检测、避免网络发生错误等。
更重要的就是TCP/IP是一个开放式的通信协议,开放性就意味着在任何组合间,不管这些设备的物理特征有多大差异,都可以进行通信。
一、标准TCP/IP协议如同OSI参考模型一样,TCP/IP也是一种分层模型。
与OSI参考模型不同的是,TCP/IP 参考模型更侧重于互联设备间的数据传送,而不是严格的功能层次划分。
TCP/IP通过解释功能层次分布的重要性来做到这一点,但它仍为设计者具体实现协议留下很大的余地。
因此,OSI参考模型适用于解释互联网络的通信机制,而TCP/IP更适合做互联网络协议的市场标准。
TCP/IP协议是一套把因特网上的各种系统互联起来的协议组,可以保证因特网上数据准确又快速地传输。
TCP/IP协议是一个很大的协议族,通常表示为一个简化的四层模型。
这四层分别是应用层、传输层、网络层和链路层。
二、IP协议的实现IP是TCP/IP协议中最为核心的协议。
所有的数据都以IP数据报格式传输。
IP协议可以实现无连接数据报传送、数据报路由选择和差错控制的功能。
在本课题中,由于单片机资源有限,结合实际需要只实现了IP数据报传送和接收,没有实现路由选择算法和差错控制,同时也不支持IP数据报的分片和重组。
IP协议主要通过IP接收函数和IP发送函数两个函数实现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
嵌入式系统中网络通信协议的选择 一、 引言 一个现代化工业企业的网络环境一般可分为四个层次: ·Internet:实现企业之间的信息交流; ·Intranet:实现企业内部管理、财务、办公及人事等的信息化; ·Infranet:实现工业企业现场生产设备级的综合管理、调度与监控等; ·Embedded Network :嵌入式网络。实现生产设备内部多个分布式子系统之间的实时通信。
Internet、Intranet都基于TCP/IP协议簇,Intranet是面向广域网的Internet在企业内部局域网上的延伸。 Infranet的建设目前主要采用各种现场总线协议,如ProfiBus、Lonwork、CAN等。
随着社会的进步和技术的发展,现代机电控制系统往往包括若干个子系统,每个子系统既自成一体,拥有自己独立的CPU,又与其它子系统紧密协调。嵌入式网络就是实现子系统间相互通信的手段。
二、对嵌入式网络的特殊要求 嵌入式网络通常应用在环境比较恶劣的工业生产现场,因此在以下几个方面有其自身独特的要求:
1. 实时性:生产设备内部多个分布式子系统信息耦合通常比较紧密,对实时性要求很高,这就要求所用的网络协议具有可确定的实时性能,即极坏情况下的响应时间是可确定的;另外在网络节点数比较多,或者有些节点对实时响应要求特别高时,网络协议还应支持优先级调度,以提高时间紧迫型任务的信息传输可确定性。
2. 可靠性:嵌入式网络本身的可靠性直接影响设备的有效作业率、成品率和生产效率,要求网络能动态增加/删除节点;生产现场比较恶劣的电磁环境要求嵌入式网络本身具有很强的抗干扰能力、检错和纠错能力以及快速恢复能力;
3. 通信效率:嵌入式网络通信的特点之一是子系统之间通信非常频繁,但每次通信的信息长度很短,因此要求嵌入式网络协议尽量采用短帧结构,且帧头和帧尾尽可能短,从而提高通信效率和带宽的利用率;
4. 双重混合支持:不同工作环境的巨大差异决定了嵌入式网络应具有灵活的介质访问协议,不但支持多种介质(双绞线、同轴电缆、光缆),而且支持混合拓扑结构(星型、环型、总线型),有时甚至要求同一个嵌入式网络能同时使用多种介质和多种网络拓扑。如在噪声环境中,系统中一部分连接需要使用光缆,其它部分则使用双绞线或同轴电缆。同轴电缆适于采用总线拓扑,而光纤则更适于环型或星型拓扑,这就要求网络协议具有双重混合支持。 5. 实现难度和造价:嵌入式系统通常需要针对实际需求进行专门设计与制造,这就要求其中的网络系统软硬件容易实现,并与子系统控制部分集成,有关元器件商品化程度高,造价较低。
6. 开放性:嵌入式网络必需具有良好的开放性,一方面能通过企业Infranet连接到Intranet中,实现企业生产管理的管控一体化;另一方面应具有公开透明的开发界面,资料完备,实现系统硬件、软件的自主开发和集成。
此外,嵌入式网络系统必须配置灵活、维护简便。 通常,嵌入式网络就覆盖范围而言属于局域网。按照ISO/OSI的观点,TCP/IP协议簇位于网络层以上。显然,TCP/IP协议簇已经超出了嵌入式网络系统的范畴。嵌入式网络包括ISO/OSI七层模型中的物理层和数据链路层。数据链路层在具体实现上可划分成两个子层:介质访问控制子层(MAC子层)和逻辑链路控制子层(LLC子层)。MAC子层包括物理层接口硬件和实现介质访问协议的通信控制器;通常LLC子层由软件实现(用户自主开发)。因此,嵌入式系统设计中网络通信协议选择的核心是介质访问协议的选择。
三、 常见介质访问协议的比较 1、面向链接的协议 面向链接的协议主要用在网络发展初期的主机–终端式网络中,如X.25和IBM的SNA网络。其主要缺点是:1)节点之间采用串行连接方式,每个物理连接只支持两个节点,速度较低;2)物理上没有连接的节点之间的通信需要经过多个中间节点的多次传输;3)直接相连的节点间的通信是可确定的,而间接相连的节点间的通信则无法确定延时。因此,在局域网技术已非常成熟的今天,这类协议已很少应用。
2、轮询法 轮询法因其简单和实时性能可确定等特点而成为嵌入式网络常用协议之一。采用轮询法的协议,需指定一个主节点作为中央主机来定期轮询各个从节点,以便显式分配从节点访问共享介质的权力。这类协议的缺点是;1)轮询过程占用了宝贵的网络带宽,增加了网络负担;2)风险完全集中在主节点上,为避免因主节点失效而导致整个网络瘫痪,有时需设置多个主节点来提高系统的健壮性(如Profibus)。
3、CSMA/CD(带冲突检测的载波监听多路访问) CSMA/CD有许多不同的实现版本,其核心思想是:一个节点只有确认网络空闲之后才能发送信息。如果多个节点几乎同时检测到网络空闲并发送信息,则产生冲突。检测到冲突的发送信息的节点必须采用某种算法(如回溯算法)来确定延时长短,延时结束后重复上述过程再试图发送。
CSMA/CD的优点是理论上能支持任意多的节点,且不需要预先分配节点位置,因此在办公环境中几乎占有绝对优势。但在CSMA/CD中冲突产生具有很大的随机性,在最坏情况下的响应延时不可确定,无法满足嵌入式网络最基本的实时性要求。 4、TDMA(时分多路访问) TDMA已大量应用于移动通信领域(如GSM、DAMPS),但也可用于局域网。TDMA的特点是:每轮信息传输前,网络中的主节点先广播一个帧同步信号以同步各从节点的时钟,在帧同步信号之后,每个从节点在各自所分配的时间片内发送数据。TDMA的缺点是:1)每个从节点必须有一个稳定的基准时间以确定时间片,因此从节点比较复杂,造价较高;2)TDMA的主流应用领域依然是无线移动通信领域,用于嵌入式网络的TDMA无论在相关软硬件技术支持和市场认同方面都非常欠缺。
5、令牌环 在令牌环网中,节点之间使用端到端的连接,所有节点在物理上组成一个环型结构。 一组特殊的脉冲编码序列,即令牌,沿着环从一个节点向其物理邻居节点传递。一个节点获得令牌后,如无信息要发送,则将令牌继续传递给下一个邻居,否则首先停止令牌循环,然后沿着环发送它的信息,最后继续令牌传递。令牌环网的优点是:1)在实时性方面是可确定的。因为容易计算出最坏情况下节点等待令牌的时间;2)令牌传递占用的网络带宽极小,带宽利用率很高,具有强大的吞吐能力。但这种协议在具体实现时为确保可靠性必须付出较大的代价:1)为了避免因电缆断裂和节点失效导致整个网络瘫痪,常采用双环结构(如FDDI)和失效节点自动旁路措施,导致实施成本增加;2)为了能立即检测到令牌是否意外丢失,不得不增加该协议实施的复杂性。
6、令牌总线 令牌总线的基本原理与令牌环网相似。但在令牌总线中,网络上所有节点组成一个虚拟环,而非物理环。令牌在虚拟环中从一个节点传向其逻辑邻居节点。只有持有令牌的节点才能访问网络。如同令牌环一样,令牌总线具有非常高的网络带宽利用率、很高的吞吐能力和良好的可确定性。另外令牌总线中各节点有相同的优先级;令牌总线中的电缆断裂并不一定导致整个网络瘫痪;网络运行过程中可动态增加或关闭节点,因此节点失误一般不会导致整个网络瘫痪(当然在网络启动、增加 /删除节点时会导致逻辑环重构,以便每个节点确定自己的逻辑邻居,这会有点费时);总线拓补结构还非常适合于制造设备。因此,令牌总线协议被MAP (Manufacturing Automation Protocol,制造自动化协议)、ARCnet(Attached Resource Computer Network)采用,在过程自动化控制等嵌入式场合广泛应用。
7、CSMA/CA (带冲突避免的载波监听多路访问) CSMA/CD在节点数量不多、传输信息量较少时效率很高;基于令牌的协议具有良好的实时性和吞吐能力。人们已经开发出一种能综合以上两者优点的混合协议—CSMA/CA。CSMA/CA的本质是利用竞争时间片来避免冲突。其基本原理是:如同CSMA/CD一样,节点必须检测到网络空闲之后才能发送信息;如果有两个或更多的节点发生冲突,便在网络上启动一个阻塞信号通知所有冲突节点,同步节点时钟,启动竞争时间片(竞争时间片跟随在阻塞信号之后,其长度比沿网络环路传输时延稍长));通常,每一个竞争时间片均指定给特定的节点,每个节点在其对应的时间片内如有信息发送则可以启动传输;其它节点检测到信息传输后,停止时间片的推进,直到传输结束所有节点才恢复推进时间片;当所有时间片都失去作用时,网络进入空闲状态。为确保公平性和可确定性,在每次传输之后,时间片要循环。此外,优先时间片(the priority slots)优先于普通时间片的推进,能支持高优先级信息的全局优先传输。
CSMA/CA 协议在具体实施中主要有两个变种:一是RCSMA(Reservation CSMA),其特点是时间片数等于节点数。RCSMA在各种传输条件下都能有效工作,但显然不适于节点较多的网络;在另一个变种中,时间片数少于节点数,且根据冲突最少的原则随机调整时间片的分配,根据所预测的网络流量动态地改变时间片数;如Echelon公司推出的广泛应用于智能大厦领域的 Lonwork标准。
另外,在CSMA/CA中,并非必需采用硬件来避免冲突,还可以通过软手段来实现,例如发送使时间片在没有网络传输的情况下仍然保持活动的哑信息。
四、结论 介质访问协议是嵌入式网络协议选择的核心。尽管没有哪一种协议对各种应用场合都是十全十美的,但通过对上述各种介质访问协议的分析和比较不难发现:令牌环、令牌总线、CSMA/CA比较适合于嵌入式网络。但令牌环的具体实施比较复杂、成本较高,其应用越来越少。读者可针对具体应用需求,选用令牌总线(如ARCnet)或CSMA/CA。
、