IEC104规约是电力自动化、工控调度系统中最常用的网络传输规约,广泛应用于主站与子站联调、遥信遥测采集、遥控下发、总召唤等场景。现场调试中,绝大多数通讯故障、数据缺失、命令无响应问题,都可以通过Wireshark抓包快速定位。
很多新手调试时只会抓包不会解包,面对满屏报文分不清正常交互与异常报错,无法快速定位网络问题、参数不匹配、报文丢包等故障。本文结合现场实战经验,讲解IEC104标准抓包方法、三大帧类型标志位含义、高频异常场景排查方案,全程落地可复用,适配各类电力工控后台调试场景。
二、IEC104抓包基础配置(零报错)
2.1 核心过滤语法
IEC104规约默认占用TCP 2404端口,Wireshark直接使用精准过滤语句,过滤冗余干扰流量,是现场调试的基础操作。
tcp.port == 2404
⚠️ 新手高频误区:禁止使用 ip.port==2404,IP层无端口概念,会导致抓包无数据、过滤失效。
2.2 抓包规范技巧
1、联调前开启抓包,全程记录交互过程,故障复现后直接保存 .pcap 文件,支持离线复盘、问题溯源;
2、报文混乱时,右键任意报文选择【追踪TCP流】,单独查看主站与子站的完整交互链路,过滤无关流量;
3、建议使用Wireshark4.2及以上版本,内置IEC104解码插件,无需手动配置,解析准确率更高。
三、IEC104三大帧类型与标志位完整解读
IEC104报文核心分为APCI(报文控制头)和ASDU(业务数据域),其中APCI决定报文传输状态,也是判断通讯异常的关键。所有报文可分为 I帧、S帧、U帧 三类,各自标志位功能完全不同。
3.1 I帧(信息帧)------ 核心业务传输
唯一携带真实业务数据的报文,用于遥信、遥测、总召唤、遥控下发等核心交互,是调试重点关注报文。
核心标志位:包含发送序号(Tx)、接收序号(Rx),序号连续递增,保障数据可靠传输。
正常特征:I帧序号依次递增,无跳跃、无重复,下发业务指令后可收到对应响应报文。
3.2 S帧(确认帧)------ 链路应答
无业务数据,仅用于对子站/主站的I帧数据进行ACK确认,告知对方报文接收成功。
核心作用:维持TCP链路可靠传输,S帧缺失是绝大多数数据断连、重传的核心原因。
3.3 U帧(控制帧)------ 链路状态管控
用于建立、断开、测试通讯链路,无序号机制,包含三个核心指令,现场调试高频出现:
-
STARTDT:启动数据传输,主站下发,请求开启业务交互;
-
STARTDT CON:启动确认,子站回复,链路正式就绪;
-
TESTFR:链路测试帧,心跳保活,检测链路是否通畅;
-
STOPDT:停止数据传输,断开业务链路。
✅ 正常链路握手流程:TCP三次握手 → STARTDT下发 → STARTDT CON确认 → 正式传输I帧业务数据
四、现场高频异常报文场景排查(实战落地)
场景1:I帧重复重传,通讯卡顿、数据延迟
现象:抓包可见大量相同序号的I帧反复发送,无新报文交互,遥测遥信数据不更新;
根因:对方未回复S帧确认报文,发送端判定报文丢失,触发自动重传机制;
排查步骤:
1、检查网络连通性,是否存在丢包、延迟、单向通问题;
2、核查防火墙、交换机策略,确认双向2404端口完全放通,无拦截;
3、查看子站服务状态,是否存在程序卡死、进程离线导致无法应答。
场景2:TESTFR测试帧无响应,链路心跳中断
现象:主站周期性下发TESTFR测试帧,子站无TESTFR CON确认,后续链路自动断开;
根因:子站104服务异常、链路单向不通、心跳超时参数不匹配;
优化建议:常规现场调试t3心跳超时建议设置为20s,主站子站参数保持一致,避免频繁断连。
场景3:总召唤无数据/数据不全,总召报文被拒绝
现象:主站下发C_IC_NA_1总召唤I帧,子站无响应或仅返回部分测点数据;
根因:
1、时序错误:总召I帧下发在STARTDT CON确认之前,链路未就绪,设备直接拒绝报文;
2、测点配置异常:子站数据库测点未激活、信息对象地址与主站点表不匹配;
3、传送原因COT不匹配,总召报文标识异常;
解决方案:严格遵循握手流程,等待链路就绪后再下发总召,核对主子站点表、规约参数一致性。
场景4:I帧序号跳跃、错乱,数据交互异常
现象:I帧Tx/Rx序号不连续、突然跳跃,伴随大量S帧补偿确认,数据乱序;
根因:链路闪断重连、设备缓存异常、报文丢包;
排查:排查网络稳定性,重启104服务清空缓存,重新建立链路握手。
五、报文快速分析实战技巧
1、分层排障原则:先查网络连通(ping、端口通断)→ 再查U帧链路握手 → 最后分析I帧业务数据,避免无效排错;
2、COT传送原因快速识别:14为总召唤响应、03为变位突发上送、05为主动请求,快速判断数据来源;
3、故障留存:所有异常场景务必保存pcap抓包文件,用于复盘、对接厂家定位问题,大幅提升调试效率。
六、总结
IEC104报文调试的核心,本质是看懂帧类型、核对标志位、校验交互时序。绝大多数电力工控通讯故障,无需复杂排查,通过Wireshark抓包分析三类报文的交互状态,即可快速定位网络、参数、设备服务问题。
熟练掌握这套排查逻辑,可解决90%以上的104联调故障,适配变电站、储能、工控后台等各类电力自动化场景。
本文配套IEC104标准报文示例、异常排查清单已整理成资源,需要的朋友可在我的资源页下载,助力现场高效调试。遇到报文解析、规约调试问题,也可私信交流咨询!