IEC104规约的秘密之九----链路层和应用层

104规约从TCP往上,分成链路层和应用层。

如图,APCI就是链路层,ASDU的就是应用层

我们看到报文都是68打头的,因为应用层报文也要交给链路层发送,链路层增加了开头的6个字节再进行发送。

完全用于链路层的报文每帧都只有6个字节,而大于6个字节的就是应用层报文加链路曾经控制。

纯链路层报文有如下:

S帧(只包含确认序号)

U帧(其中U帧又分成测试U帧和启动数据传输U帧和停止数据传输U帧)

应用层报文就是I帧,其中包含链路层控制信息

各种帧格式如下:


链路层进行通讯和应用层通讯是异步的,就是应用层没有报文时,链路层会进行通讯维护链路层。应用有报文时,交给链路层,链路层放在发送队列,按优先级进行发送。

链路层接收到报文后,会将链路层控制信息去掉后,立即将报文交给应用层。链路层和应用层各自按自己的逻辑进行运行,互不干涉。这个和OSI7层模型是类似的,每层只管和对方通信,下层就将上一层的报文增加一个信封,即报文头和报文尾,104这里只加了报文头的6个字节。下层收到报文后,将信封拆掉,即去除到报文头尾,将内容交给上一层。

104通讯不是一问一答的,而且是平衡的,即任何一方都可以随时发起一个应用过程。当然,某些报文看起来是一问一答,比如U帧测试帧,但中间是可以随时插入其他帧的。这是和其他一问一答规约,比如MODBUS有着本质的区别。

相关推荐
YH_Analytics9 小时前
2026 洁净室环境在线监测系统行业排名与份额对比销量与份额解析
大数据·网络·人工智能
Chenyu_3109 小时前
NUMA 基础:从 CPU、内存到 Node 的整体理解
linux·服务器·网络·缓存
对空六课10 小时前
两个统计平台数据不同:用同一时间窗和事件样本做差异定位
大数据·前端·网络·数据库
User_芊芊君子10 小时前
【JavaEE初阶 - 网络原理】网络分几层?从自定义协议聊到 DNS
java·网络·java-ee
2603_9695792817 小时前
备份最常用的三个软件是什么软件
网络
缓慢更新18 小时前
表单引擎的存储建模:宽表与文档库的取舍
运维·服务器·网络·数据库·低代码·oracle·适配器模式
Data_Journal19 小时前
如何绕过 Cloudflare:网页抓取的最佳方法
网络·python
续写烂尾19 小时前
贴片 SD NAND、eMMC、TF 卡规格怎么定?硬件工程师选型清单
运维·服务器·网络
重生之高冷汉堡包19 小时前
移动代理 VS 住宅代理IP:性能成本对比与选择
网络
迪康妍妍19 小时前
终端管控实操:封堵网盘与IM外发通道的落地思路
运维·网络·安全·架构·安全性测试