1.2 防止报文丢失和报文重复传送
A、两个序列号在每个APDU和每个方向上都应按顺序加一。
B、发送方增加发送序列号而接受方增加接收序列号。当接收站按连续正确收到的APDU的数字返回接收序列号时,表示接收站认可这个APDU或者多个APDU。
C、发送站把一个或几个APDU保存到一个缓冲区里直到它将自己的发送序列号作为一个接收序列号收回,而这个接收序列号是对所有数字小于或等于该号的APDU的有效确认,这样就可以删除缓冲区里已正确传送过的APDU。
D、万一更长的数据传输只在一个方向进行,就得在另一个方向发送S格式,在缓冲区溢出或超时前认可APDU。这种方法在两个方向上应用。
E、在创建一个TCP连接后,发送和接收序列号都被设置成0。 1.3 测试过程
未使用但已建立的连接会通过发送测试APDU(TESTFR=激活)并得到接收站发回的TESTFR=确认,在两个方向上进行周期性测试。
测试过程也可以在“激活”的连接上启动,这些连接缺乏活动性,但需要确保连通。
主从站双方均可以发送测试命令报文。 1.4 用启/停进行传输控制
控制站(例如,A站)利用STARTDT(启动数据传输)和STOPDT(停止数据传输)来控制被控站(B站)的数据传输。定义STARTDT 和STOPDT的功能在于从一个连接切换到另一个连接时避免数据的丢失。STARTDT 和STOPDT还可与单个连接一起用于控制连接的通信量(通过控制起始数据传输完成通信量的控制)。
当连接建立后,连接上的用户数据传输不会从被控站自动激活。即当一个连接建立时STOPDT处于缺省状态。在这种状态下,被控站并不通过这个连接发送任何数据,除了未编号的控制功能和对这些功能的确认。控制站必须通过这个连接发送一个STARTDT指令来激活这个连接中的用户数据传输。被控站用STARTDT响应这个命令。如果STARTDT没有被确认,这个连接将被控制站关闭。这意味着站初始化之后, STARTDT必须总是在来自被控站的任何用户数据传输(例如,一般的询问信息)开始前发送。任何被控站的待发用户数据都只有在STARTDT被确认后才发送。
STARTDT/STOPDT 是一种控制站激活/解除激活监视方向的机制。 在某种情况下,例如,从一个有效连接切换到另一连接(例如,通过操作员),控制站首先在有效连接上传送一个STOPDT指令,受控站停止这个连接上的用户数据传输并返回一个STOPDT确认。 挂起的ACK可以在被控站收到STOPDT生效指令和返回STOPTD确认的时刻之间发送。收到STOPDT确认后,控制站可以关闭这个连接。另建的连接上需要一个STARTDT来启动该连接上来自于被控站的数据传送。
1.5 未被确认的 I 格式 APDU (k)最大数目
k表示在某一特定的时间内未被DTE确认(即不被承认)的连续编号的I格式APDU的最大数目。每一I格式帧都按顺序编好号,从0到n-1。
1、当未确认I格式APDU达到k个时,发送方停止传送。 2、接收方收到w个I格式APDU后确认。
k值的最大范围:1到32767(215-1)APDU,精确到一个 APDU. w值的最大范围:1到32767 APDU,精确到一个APDU。(推荐:w不应超过三分之二的k)。 1.6 关于TCP连接
本标准规定了IEC 60870-5-101的应用层与TCP/IP提供的传输功能的结合. 在TCP/IP框架内,可以运用不同的网络类型。
控制站等同于客户(连接者),被控站等于是服务器。
连接的释放既可以由控制站也可以由被控站提出。连接的建立有两种方式: 1、由一对控制站和被控站中的控制站建立连接;
2、两个平等的控制站,固定由其中一个站(参数)建立连接;
每一个TCP地址由一个IP地址和一个端口号组成。每个连接到网络上的设备都有自己特定的IP地址,而为整个系统定义的端口号却是一样的。本标准要求,端口号2404由IANA(互联网数字分配授权)定义和确认。
2 报文结构 I格式: 数据 68 1B 2B 2B 1B 1B 1B 1B 1B 1B 2B 1B 说明 启动字符 信息长度 控制域位组1和2: 控制域位组3和4: 类型标识 可变结构限定词:{number[1~7], SQ[8]} 传送原因:{原因[1~6], P/N[7], T[8]} 原发地址:00 公共地址:<0>未用,<1~254>站地址,<255>广播地址 公共地址高字节(未用): 00 信息体地址:<0>无关的信息体地址,<1~65535>信息体地址 信息体地址最高字节(未用): 00 信息体 *B表示Byte
发送序列号:已发送报文的数量(I格式)。 接收序列号:已接收报文的数量。 可变结构限定词:
单个/顺序SQ = BS<0~1>
<0>= 寻址同一类型的一些信息体的单独的信息元素或综合的信息元素; <1>=寻址一个信息体的顺序信息元素; 数目number=UI7<0~127>
<0>=应用服务数据单元无信息体;
<1~127>=信息体或元素数目; 传送原因:
CP8{原因,P/N,T} 原因=UI6<0~63> <0>=未定义;
<1~63>=传送原因序号
<1~47>=为配套标准保留(兼容范围); <48~63>=为特殊用途保留(专用范围) ; P/N=BS1<0~1>
<0>∶=肯定认可 <1>=否定认可 T=TEST=BS1[8]<0~1>
<0>=未试验 <1>=试验 公共地址:<0~255>
<0>=未用;
<1~254>=站地址;
<255>=广播站地址; 信息体地址:<0~65535> <0>=无关的信息体地址; <1~65535>=信息体地址;
2.1 104规约常用参数定义与地址划分 描述 传输原因 公共地址 信息体地址 类型 遥信对象: 继电保护: 遥测: 参数地址: 设定地址: 电能累计量: 步位置信息: 二进制信息: 远动终端状态: 文件传输: 类型 遥信对象: 继电保护: 遥测: 参数地址: 设定地址: 电能累计量: 步位置信息: 二进制信息: BCD 码 远动终端状态: 文件传输: 字节数Byte 说明 2 2 3 高字节即原发地址一般设为0 高字节常为0 最高字节常为0 以下为默认值(可修改)
地址范围(十进制) 地址范围(十六进地址数量 制) 1 ~ 4096 4097 ~ 16384 16385 ~ 20480 20481 ~ 24576 25089 ~ 25600 25601 ~ 26112 26113 ~ 26368 26369 ~ 26624 26625 26626 ~ 28672 1H ~ 1000H 1001H ~ 4000H 4001H ~ 5000H 5001H ~ 6000H 6001H ~ 6200H 6201H ~ 6400H 6401H ~ 6600H 6601H ~ 6700H 6701H ~ 6800H 6801H 6802H ~ 7000H 4096 12288 4096 4096 512 512 512 256 256 1 2046 遥控,升降地址: 24577 ~ 25088 2.2 101规约信息地址: 地址范围(十进制) 地址范围(十六进地址数量 制) 1 ~ 1024 1025 ~ 1792 1793 ~ 2304 2305 ~ 2816 2945 ~ 3072 3073 ~ 3200 3201 ~ 3232 3233 ~ 3264 3265 ~ 3296 3305 3306 1H ~ 400H 401H ~ 700H 701H ~ 900H 901H ~ B00H B01H ~ B80H B81H ~ C00H C01H ~ C80H C81H ~ CA0H CA1H ~ CC0H CC1H ~ CE0H CE9H CEAH 1024 768 512 512 128 128 128 32 32 32 1 1 遥控,升降地址: 2817 ~ 2944