《“基金会现场总线:ff总线中的差错控制与流量控制》由会员分享,可在线阅读,更多相关《“基金会现场总线:ff总线中的差错控制与流量控制(3页珍藏版)》请在金锄头文库上搜索。
1、。 基金会现场总线( F F 技术 讲座胨磊, 辞 “ 基金会现场总线( F F ) 技术” 讲座 第 3讲 F F总线中的差错控制与流量控制 障 磊 岔 建拜( 浙 江太学先进 控制研究 所 杭州 3 1 0 0 2 7 ) 岔敏 凡( 浙 江浙太中 控技术 有限 公司 杭州 3 1 0 0 1 2 ) 耶 总线是一个数字通信系统和控制 网络 , 既有网 络通信的基本特点 又有其特殊性 。 在网络通信 中, 由于物理信道的噪音于扰 、 接收和 发进处理速度不匹配 、 缓 冲 区数 目有 限等多种 因素的 影响 , 可能引起数据在 传输过 程 中的损坏或丢 失。因 此 , 为保证网络通信 中数
2、据传输舶可靠性 , 必须 采取一 定的技术措施。差错控制和流量控制就是 其 中两个重 要措施 。差错控制是指检测 和纠正数据传输过程 中的 各种错误 , 保 证 发进方 的数 据有 序 、 正确地 到达 接收 方。流量控制是指采用缓 冲机制 , 协 调发送 方的数据 发送能力和接收方的数据处理能力 。 1 差错控制和流量控制的基本原理 在 I S O O S I 的7层参考模型中 数据链路层、 网络 层和传输层都需要进行差错控制和流量控制。基于 玲。 O S I 参 考模 型, F F总线 采用 了其 中的物理 层 、 数据 链路层和应用层 , 并增加了用户层 , 而省去 了网络层和 传输层
3、, 形成 四层结构的通信模型 。其 中, 只有在 数据 链路层具有差错控制和流量控 制的要求和功能。 进行差错控制和流量控制的方法之一是采用停等 协议 , 即发送方发进一帧 后必须 等到接收 方的确认 才 能发送下一个新帧 。因此 , 如果帧 在信道上 传输 时问 为 d , 帧的长度为 , 位, 数据传输速率为 r b i t s 则发进 一帧到下一帧的最短等待时问为 2 ( d+f r ) , 信道的 最大利用率为 f 2 ( , + ) 。 为提高信道利用率, 引入差错控制和流量控制的 另 一个方法 : 滑动窗 IZ l 协议 ( a l d i w i n d o w p n , I
4、o b ) , 允 许投有收到确认 也可 以连续发 送帧。这时 , 帧 的序号 字段应取 n位 , 以表示 0 到 2 n一1 范围 内的序号 。发 进帧时, 序号从 0开始, 然后按摸 2 n加 1 取值。这里 的窗 口, 是指一张序号表 , 表 中的序号 从 0 开始 , 以 2 n 为摸连续取值 , 其中的最大( 或最小) 号称为窗口的上 限( 或下限) , 序号表 中允许包吉 序号 的最 大数 目称 为 窗口的大小。在滑动 窗 口协议 中, 发送 方维持一个 发 送窗 口, 该窗口所吉 序号是它发送 给对方 且 尚未 收到 确认 的帧的序号 。每发进一个新帧发 进窗 口上 限加 1 (
5、 模 2 n ) , 当发送窗 口达到最大尺寸时就不允许发进新 帧 , 但 可以发重复帧 ; 当收到对序号为发送窗 口下限的 帧的确认时, 发进窗口下限加 1 ( 模 2 n ) 。接收方也要 维持一个接收窗口, 用它保存允许接收的帧 的序号。 当到达 的帧的序号等于接 收窗 口下 限时 , 接收 窗 口滑 动一格 , 即它的上 、 下 限都加 1 ( 模 2 n ) 。通过对发送窗 口和接收窗 口的大小 限制 滑 动窗 口协议 实现 了流量 控 制。图 1为窗 口大小 为 8 , 窗 口尺寸为 1 的滑动窗 口 协议示意图。 o O 0 o 0 0 擞 图 1 宙 口足寸为 1 的滑动宙 口
6、协议 在滑动窗 口协议 中, 差错控制 的步囊是 : 接收方对 于出错的帧予以丢弃 , 而对于该 帧后 面正确到 达的帧 采用两种处理方法 。一种 是退后 n帧的协议 : 它是指 接收方从出错 的帧起 , 对后面到达的帧 不予确认 , 始终 请求重发出错 的那一帧 , 直到正确收到该帧为止 , 其对 应的接收窗 口尺寸 为 1 ; 发送方 从出话的帧起 , 将所 有 未确认的帧( 包括出错的帧) 重发一追。在出错率较高 的信道中, 这种方法的信道利用率较低。另一种是选 择性重传的协议; 接收方收到出错的帧后, 对后面到达 的正确的帧仍然接收下来, 放在缓冲区中, 同时请求发 送方重新传送出错的
7、那一帧 , 在收到重传的帧后 , 就 与 原先已收到的哲存在缓冲区的其余帧一起按正确的顺 序向上层报告。 对于 F F H 1 总线, 数据传输速率为3 1 2 5 k b 坤, 帧的 长度为 8 2 7 3字节, 总线通信距离最长为 1 9 0 0 m。如 采用停等协议, 信道的利用率较低 , 因此应当栗用滑动 5 ( N P w www R) 一1 ) , 即 N R ( N D S ) ( ) , 说 明是 未收到 过的新 帧。令 N: T E M P 一 ( ( N P WWWWR)一 t ) 。 当 N : 1 , 即 N R ( N D S ) = ( ) +1 , 说 明收到 的
8、帧是期 望的帧 , 进正 确处理过程 。当 N1 , 即 N R ( N D S ) ( ) +1 , 说明 该帧以前有帧丢失, 应请求重发。请求重发和确认一 样 , 可以在数据请 求组帧 时捎带 , 也可单独组帧 。令帧 的 J 参数域 :1 , 同时 N D R参数域指明请求重发哪一 帧 , N D R的值 等 于 ( L ) +1 。对 于数 据传 送特 性 为 C X A S S I C A L的 D I Z P , 对 乱序 的帧 及后 面的 帧予 以 丢 弃 , ( L ) 不 变。而对 于数据传送特性为 D I S O R D E R E D 的 D L C E P , 对乱序
9、的帧及后 面的帧都 予 以接 收 。每 收 一帧 , ( L ) 加 1 , 在收到请求重发 的帧后 , 和先前收 到 的帧一起向上报告 。 3 2 5 对 出错的处理 对于 接收 方, 若 T E M P( ( L)+2 ( N P w www R ) 一 ( ) 一1 ) m 1 6 , 即 N R ( N D S ) 一 ( ) ( P www ) , 说明收到的帧序号与上次确认的帧 序号之差 已超出接收方 的接收缓 冲区大小 , 为 出错情 况。此时收到帧序号无效 。将断 开连接 , 发送断开连 接 的帧 ( D C ) , 同时 向上层报告 & s c o a n 一i n d i
10、c 毗; 原 语 , 井说明 出错原因 帧格式或参数错误 。 4 结束语 采用滑动窗 口协议的差错控 i j 和流量控制是数据 链路层的核 tL , 之一 也是整个 F F总线通信栈软件的重 要组成部分。本文关于数据通信过程中各种情况的描 述和算法 , 尽管是针 对 F F佛议 , 但对 于其它现 场总线 和工业控 i j 网络 的协议研究和软件开发也同样具有参 考价值 F F总线在我国 目前仍处于发展 阶段 , 还有待 进一步深研究 与开发 。 参考文献 1 陈铁君 九五期匈现场总蠛及其开放 自动化系统规划要点和发 展方针 微垂计算机信息 1 9 9 7 , l 3 ( 3 ) 2 疆坦 散据通信及网络基础 武汉: 华中理工大学出版社, 1 9 9 6 3 F O U N D A T I O N ( m )F d l ms - - - I _岫 岛惝 J d由钟h e R i 1 4nd曲 峭 F mmd a t l c n1 9 9 9 4 mO N V A T t O N ( ) n d 曲旧S p e c il k a ll o n s D s t a L in k P m t o ,d 哪商 一 t l o n Re v i n 1 4F i e l d l ms q d ,1 9 9 9 5 阳宪寡 现场总线技术及其应用 北京 : 清华大学出版社 , 1 9 9 9