欢迎来到天天文库
浏览记录
ID:18623538
大小:336.84 KB
页数:17页
时间:2018-09-19
《基于arm的嵌入式tcpip协议的实现》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、嵌入式系统中网络通信协议的选择一、引言 一个现代化工业企业的网络环境一般可分为四个层次:·Internet:实现企业之间的信息交流;·Intranet:实现企业内部管理、财务、办公及人事等的信息化;·Infranet:实现工业企业现场生产设备级的综合管理、调度与监控等;·EmbeddedNetwork:嵌入式网络。实现生产设备内部多个分布式子系统之间的实时通信。 Internet、Intranet都基于TCP/IP协议簇,Intranet是面向广域网的Internet在企业内部局域网上的延伸。Infranet的建设目前主要采用各种现场总线协议,如ProfiBus、
2、Lonwork、CAN等。 随着社会的进步和技术的发展,现代机电控制系统往往包括若干个子系统,每个子系统既自成一体,拥有自己独立的CPU,又与其它子系统紧密协调。嵌入式网络就是实现子系统间相互通信的手段。二、对嵌入式网络的特殊要求 嵌入式网络通常应用在环境比较恶劣的工业生产现场,因此在以下几个方面有其自身独特的要求: 1.实时性:生产设备内部多个分布式子系统信息耦合通常比较紧密,对实时性要求很高,这就要求所用的网络协议具有可确定的实时性能,即极坏情况下的响应时间是可确定的;另外在网络节点数比较多,或者有些节点对实时响应要求特别高时,网络协议还应支持优先级调度,以
3、提高时间紧迫型任务的信息传输可确定性。 2.可靠性:嵌入式网络本身的可靠性直接影响设备的有效作业率、成品率和生产效率,要求网络能动态增加/删除节点;生产现场比较恶劣的电磁环境要求嵌入式网络本身具有很强的抗干扰能力、检错和纠错能力以及快速恢复能力; 3.通信效率:嵌入式网络通信的特点之一是子系统之间通信非常频繁,但每次通信的信息长度很短,因此要求嵌入式网络协议尽量采用短帧结构,且帧头和帧尾尽可能短,从而提高通信效率和带宽的利用率; 4.双重混合支持:不同工作环境的巨大差异决定了嵌入式网络应具有灵活的介质访问协议,不但支持多种介质(双绞线、同轴电缆、光缆),而且支持
4、混合拓扑结构(星型、环型、总线型),有时甚至要求同一个嵌入式网络能同时使用多种介质和多种网络拓扑。如在噪声环境中,系统中一部分连接需要使用光缆,其它部分则使用双绞线或同轴电缆。同轴电缆适于采用总线拓扑,而光纤则更适于环型或星型拓扑,这就要求网络协议具有双重混合支持。 5.实现难度和造价:嵌入式系统通常需要针对实际需求进行专门设计与制造,这就要求其中的网络系统软硬件容易实现,并与子系统控制部分集成,有关元器件商品化程度高,造价较低。 6.开放性:嵌入式网络必需具有良好的开放性,一方面能通过企业Infranet连接到Intranet中,实现企业生产管理的管控一体化;另
5、一方面应具有公开透明的开发界面,资料完备,实现系统硬件、软件的自主开发和集成。此外,嵌入式网络系统必须配置灵活、维护简便。 通常,嵌入式网络就覆盖范围而言属于局域网。按照ISO/OSI的观点,TCP/IP协议簇位于网络层以上。显然,TCP/IP协议簇已经超出了嵌入式网络系统的范畴。嵌入式网络包括ISO/OSI七层模型中的物理层和数据链路层。数据链路层在具体实现上可划分成两个子层:介质访问控制子层(MAC子层)和逻辑链路控制子层(LLC子层)。MAC子层包括物理层接口硬件和实现介质访问协议的通信控制器;通常LLC子层由软件实现(用户自主开发)。因此,嵌入式系统设计中网
6、络通信协议选择的核心是介质访问协议的选择。三、常见介质访问协议的比较 1、面向链接的协议 面向链接的协议主要用在网络发展初期的主机–终端式网络中,如X.25和IBM的SNA网络。其主要缺点是:1)节点之间采用串行连接方式,每个物理连接只支持两个节点,速度较低;2)物理上没有连接的节点之间的通信需要经过多个中间节点的多次传输;3)直接相连的节点间的通信是可确定的,而间接相连的节点间的通信则无法确定延时。因此,在局域网技术已非常成熟的今天,这类协议已很少应用。 2、轮询法 轮询法因其简单和实时性能可确定等特点而成为嵌入式网络常用协议之一。采用轮询法的协议,需指定一
7、个主节点作为中央主机来定期轮询各个从节点,以便显式分配从节点访问共享介质的权力。这类协议的缺点是;1)轮询过程占用了宝贵的网络带宽,增加了网络负担;2)风险完全集中在主节点上,为避免因主节点失效而导致整个网络瘫痪,有时需设置多个主节点来提高系统的健壮性(如Profibus)。 3、CSMA/CD(带冲突检测的载波监听多路访问) CSMA/CD有许多不同的实现版本,其核心思想是:一个节点只有确认网络空闲之后才能发送信息。如果多个节点几乎同时检测到网络空闲并发送信息,则产生冲突。检测到冲突的发送信息的节点必须采用某种算法(如回溯算法)来确定延时长短,
此文档下载收益归作者所有