工作任务2
汽车数据传输系统的典型协议
导向
要求学生通过本领域的学习,掌握通信协议的基础知识及目前的应用情况。
1.基础知识
通信协议又称通信规程,是指通信双方对数据传送控制的一种约定。约定中包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式及控制字符定义等问题做出统一规定,通信双方必须共同遵守,它也叫做链路控制规程。
电脑与电脑之间的沟通必须讲述相同的语言,才能互相传输信息,自然资料在国际互联网上传递,每一份都要符合一定的规格(即是相同的语言),否则中国送出的资料,在美国那边要怎么收下呢?这些规格(语言)的规定都是事先由多个专门的组织共同商讨好的,而这种在网络上负责定义资料传输规格的协议,我们就统称为通信协议。其实每一种网络所使用的通信协议都不太一样,但就以我们最常用的Internet为例,当资料要送到Internet上时,就必须要使用Internet用的通信协议。
目前,汽车多路信息通信系统中采用的通信协议有多种形式,主要有8种(表2-1)。
表2-1 典型的通信协议
注:SAE——美国汽车工程师学会;ISO—国际标准化组织。
由上表可以看出到目前为止,世界上尚无一个可以兼容各大汽车公司通信协议的通用标准,也就是说,想用某个公司的通信协议取代其他公司的协议,是很难做到的,因此,在汽车上就形成了多种类型的通信协议共存的局面。但是目前来讲最有可能成为通用协议的就是BOSCH公司的CAN协议。
2.协议要素及其功能
(1)协议的三要素
①语法确定通信双方之间“如何讲”,即由逻辑说明构成,要对信息或报文中各字段格式化,说明报头(或标题)字段、命令和应答的结构。
②语义确定通信双方之间“讲什么”,即由过程说明构成,要对发布请求、执行动作及返回应答予以解释,并确定用于协调和差错处理的控制信息。
③定时规则指出事件的顺序及速度匹配、排序。
(2)协议的功能
协议的功能是控制并指导两个对话实体的对话过程,发现对话过程中出现的差错并确定处理策略。具体来说,每个协议都是具有针对性的,用于特定的目的,所以各协议的功能是不一样的,但是有一些公共的功能是大多数协议都具有的。这些功能包括四个方面。
①差错检测和纠正。面向通信传输的协议常使用“应答—重发”,循环冗余检验CRC、软件检查和等机制进行差错的检测和纠正工作;而面向应用的协议常采用重新同步、恢复及托付等更为高级的方法进行差错的检测和纠正工作。一般来说,协议中对异常情况的处理说明要占很大的比重。
②分块和重装。用协议控制进行传送的数据长度是有一定限制的,参加交换的数据都要求有一定的格式。为满足这个要求,就需要将实际应用中的数据进行加工处理,使之符合协议交换时的格式要求,只有这样才能应用协议进行数据交换。分块与重装就是这种加工处理操作。分块操作将大的数据划分成若干小块,如将报文划分成几个报文分组;重装操作则是将划分的小块数据重新组合复原,如将报文分组还原成报文。
③排序。对发送出的数据进行编号以标识它们的顺序,通过排序,可达到按序传递、信息流控制和差错控制等目的。
④流量控制。通过限制发送的数据量或速率,以防止在信道中出现堵塞现象。
3.协议的类型
协议可根据其不同特性进行分类,可分为:
(l)直接型/间接型
两个实体间的通信,可以是直接的或间接的。例如,两个系统若共享一个“点—点”链路,那么这些系统中的实体就可以直接通信;此时数据和控制信息直接在实体间传递而无任何中间的信息处理装置,所需要的协议属于直接型。
如果系统经过转接式通信网或者两个、两个以上网络串接的通信网,两个实体要交换数据必须依赖于其他实体的功能,属于间接通信。此时设计协议时,需要考虑对中间系统了解到怎样程度,因而较为复杂。
(2)单体型/结构化型
在两个实体间通信任务比较简单的情况下,采用单一协议来控制通信,这种协议称之为“单体型”协议。
实际上,计算机网络内实体间通信任务是很复杂的,以致不可能作为一个单体来处理。面临复杂的情况,可采用“结构化”型协议,即以展示为层次或分层结构的协议集合来代替单体型协议。此时,较低层次或较低级别的功能在较低层次的实体上实现,而它们又向较高层次的实体提供服务。换言之,较高层的实体依靠较低层次的实体来交换数据。
(3)对称型/不对称型
大部分的协议属于对称型,即它们关联于同等的实体之间通信。不对称的协议可以是交换逻辑的要求(例如,一个“用户”进程和一个“服务”进程),或者是为了尽可能使实体或系统保持简单。
(4)标准型/非标准型
一个部门或者一个国家都希望制定标准型协议,促进组建计算机网络和分布处理系统。非标准型协议,一般都是发展中的产物,或者为特定通信环境所设计。
信息
1.通信协议的含义
两个实体要想成功地通信,它们必须“说同样的语言”,并按既定控制法则来保证相互的配合。具体地说,在通信内容、怎样通信以及何时通信等方面,两个实体要遵从相互可以接受的一组约定和规则。这些约定和规则的集合称为协议。因此,协议可定义为在两实体问控制信息交换的规则之集合。
2.通信协议的内容
OSI是Open System Interconnect的缩写,意为开放式系统互联。国际标准组织(国际标准化组织ISO)制定了OSI模型。这个模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,见表2-2。
表2-2 ISO/OSI基本参照模型
(1)物理层
物理层位于OSI参考模型的最低层,物理层上的协议有时也称为接口,它直接面向实际承担数据传输的物理媒体(通信通道),物理层的传输单位为比特(bit),即一个二进制位(“0”或“1”)。实际的比特传输必须依赖于传输设备和物理媒体,但是,物理层不是指具体的物理设备,也不是指信号传输的物理媒体,而是指在物理媒体之上为上一层(数据链路层)提供一个传输原始比特流的物理连接。物理层的主要功能包含为数据端设备提供传送数据的通路,此外物理层要形成适合数据传输需要的实体,为数据传送服务。一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(bit)数),以减少信道上的拥塞。传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要。除此之外还要完成物理层的一些管理工作。在制定物理层协议时主要阐明以下的问题。
①机械特性。指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等。这很像平时常见的各种规格的电源插头的尺寸都有严格的规定。
②电气特性。指明在接口电缆的各条线上出现的电压的范围。
③功能特性。指明某条线上出现的某一电平的电压表示何种意义。
④规程特性。指明对于不同功能的各种可能事件的出现顺序。
(2)数据链路层
数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源机网络层来的数据可靠地传输到相邻节点的目标机网络层。为达到这一目的,数据链路必须具备一系列相应的功能,主要有:如何将数据组合成数据块,在数据链路层中称这种数据块为帧(frame),帧是数据链路层的传送单位;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。丢失信息、干扰信息及顺序不正确在物理层中这些情况都可能发生,在数据链路层中必须用纠错码来检错与纠错。数据链路层是对物理层传输原始比特流的功能的加强,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一无差错的线路。
(3)网络层
网络层是OSI参考模型中的第三层,介于运输层和数据链路层之间,它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向运输层提供最基本的端到端的数据传送服务。网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、差错检测、排序、流量控制、加速数据传送、复位、保持和终止等。
(4)传输层
传输层(Transport Layer)是OSI中最重要、最关键的一层,是唯一负责总体的数据传输和数据控制的一层。传输层提供端到端的交换数据的机制。传输层对会话层等高三层提供可靠的传输服务,对网络层提供可靠的目的地站点信息。世界上各种通信子网在性能上存在着很大差异。例如电话交换网、分组交换网、公用数据交换网、局域网等通信子网都可互连,但它们提供的吞吐量、传输速率、数据延迟通信费用各不相同。对于会话层来说,却要求有一性能恒定的界面。传输层就承担了这一功能。它采用分流/合流,复用/介复用技术来调节上述通信子网的差异,使会话层感受不到。此外传输层还要具备差错恢复,流量控制等功能,以此对会话层屏蔽通信子网在这些方面的细节与差异。传输层面对的数据对象已不是网络地址和主机地址,而是和会话层的界面端口。上述功能的最终目的是为会话提供可靠的、无误的数据传输。传输层的服务一般要经历传输连接建立阶段、数据传送阶段、传输连接释放阶段3个阶段才算完成一个完整的服务过程。而在数据传送阶段又分为一般数据传送和加速数据传送2种。传输层服务分成5种类型。基本可以满足对传送质量、传送速度、传送费用的各种不同需要。
网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。传输层的任务是根据通信子网的特性,最佳地利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。
传输层是整个协议层次结构的核心,是唯一负责总体数据传输和控制的一层。OSI七层模型中传输层是负责数据通信的最高层,同时又是面向网络通信的低三层和面向信息处理的高三层之间的中间层。因为网络层不一定保证服务的可靠,而用户也不能直接对通信子网加以控制,因此在网络层之上,加一层即传输层以改善传输质量。传输层利用网络层提供的服务,并通过传输层地址提供给高层用户传输数据的通信端口,使系统间高层资源的共享不必考虑数据通信方面和不可靠的数据传输方面的问题。它的主要功能是:对一个进行的对话或连接提供可靠的传输服务,在通向网络的单一物理连接上实现该连接的复用,在单一连接上提供端到端的序号与流量控制、差错控制及恢复等服务。
传输层提供了主机应用程序进程之间的端到端的服务,向会话层提供通信服务的可靠性,避免报文的出错、丢失、延迟时间紊乱、重复、乱序等差错。基本功能如下:
①分割与重组数据。
②按端口号寻址。
③连接管理。
④差错控制和流量控制。
(5)会话层
会话层、表示层、应用层构成开放系统的高3层,面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等。会话层同样要担负应用进程服务要求,对传输层不能完成的那部分工作,给传输层功能差距以弥补。主要的功能是对话管理、数据流同步和重新同步。会话层提供的服务之一是管理对话控制。会话层允许信息同时双向传输,或任一时刻只能单向传输。即对传输方式的确定。会话层主要功能如下:
1)为会话实体间建立连接
为给两个对等会话服务用户建立一个会话连接,应该做如下几项工作。
①将会话地址映射为运输地址。
②选择需要的运输服务质量参数。
③对会话参数进行协商。
④识别各个会话连接。
⑤传送有限的透明用户数据。
2)数据传输
这个阶段是在两个会话用户之间实现有组织的、同步的数据传输。
3)连接释放
连接释放是通过“有序释放”、“废弃”、“有限量透明用户数据传送”等功能单元来释放会话连接的。
会话层还向用户提供组织和控制信息交换的手段并提供下述功能:
利用令牌技术来保证数据交换、会话同步的有序性;拥有令牌的一方可以发送数据,或者执行其他动作;令牌可以被申请和转让;利用活动和同步技术来保证用户数据的完整性,并让用户知道整个交换的过程;利用分段和拼接技术来提高数据交换的效率,多块用户数据可以合并在一起进行传输;利用重新同步技术来实现用户会话的延续性,支持传输过程中的故障恢复。
①会话和同步技术:“会话”是指用户之间的信息交换过程。用户之间为完成信息交换需要按一定规则在会话层实体之间建立起来的一种暂时的联系,即“会话连接”。在会话连接过程中,可以把用户之间的信息交换分成若干个逻辑工作段,即“活动”,活动的内容具有相对的独立性和完整性。在每个活动中可以含有一个或多个“会话单元”,会话单元一般是一组意义上相对完整的数据块传输。
同步:是对会话层实体的一种控制方法,保证会话交互的时序性。
同步技术:对用户数据进行语义上的分段,便于接收方可对所接收的信息进行验证。
引入活动和同步的目的:使用户可以了解会话的进程,便于控制和管理,如果出现传输故障,可从指定的同步点处进行恢复,减少差错重传的数据量。
②令牌技术:令牌(有时也称为“权标”),是会话连接的一种属性。例如:数据令牌标识用户发送数据的权利,谁掌握令牌,谁就有权发送数据;当通信的另一方需要发送数据时,首先要申请令牌。当掌握令牌的一方数据传输完毕或数据传输告一段落,可以释放令牌,将令牌“传递”给通信的另一方。在半双工工作方式下,通过数据令牌的申请和分配,保证用户信息交换的顺序性。如图2-1所示。
图2-1 令牌传递示意
(6)表示层
表示层位于OSI分层结构的第六层,它的主要作用之一是为异种机通信提供一种公共语言,以便能进行互操作。表示层如同应用程序和网络之间的翻译官,主要解决用户信息的语法表示问题,即提供格式化的表示和转换数据服务。数据的压缩、解压、加密、解密都在该层完成。
(7)应用层
应用层(Application layer)是七层OSI模型的第七层。比起其他层来说,应用层需要的标准最多,但也是最不成熟的一层。作用是在实现多个系统应用进程相互通信的同时,完成一系列业务处理所需的服务。
计划
根据上述导向知识与技术信息,完成工作计划。
实施
1.实践准备。
2.查询该车型应用的总线类型。
检验
根据学生的计划和实施的状况由教师对其进行批改,并就其中的问题进行点评
展示
1.实施中的每一组同学随机挑选一名代表根据自己的计划,用10分钟时间对本工作任务中3个要点的知识进行讲解。
2.专业会谈:OSI模型对于物理层的规定是什么?
3.网络协议的基本要素有哪几个?