IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> IEC60870-5-104通信协议测试方法 -> 正文阅读

[开发测试]IEC60870-5-104通信协议测试方法

1 前言

IEC60870-5-104规定了采用标准传输协议子集的IEC60870-5-101网络访问。IEC60870-5-101基本远动任务通信规约提供了在主站和远动子站之间发送基本远动报文的通信文件集, 在主站和每个远动子站之间是采用固定连接的数据电路,用于厂站与调度主站间通讯。相关的国家标准有DL/T634.5104-2002通信协议。
本文将以DL/T634.5104-2002通信协议为基础,介绍如何使用格西烽火通信测试软件进行编写测试项目,进行测试符合DL/T634.5104-2002通信协议的设备。

2 通信协议

2.1 术语

信息对象组(group of information object)
一个信息对象的组是公共地址或信息地址一个集。

控制方向control direction
从控制站(主站)到被控站(子站)的传输方向。

监视方向monitoring direction
从被控站(子站)到控制站(主站)的传输方向。

2.2 通信接口

支持以太网接口,支持多点连接,支持TCP/IP协议,保留2404端口访问。

2.3 应用层

DL/T634.5104-2002通信协议定义了
应用规约数据单元:APDU(Application protocal data unit)
应用规约控制信息:APCI(Application protocal control information)
应用服务数据单元:ASDU(Application service data unit)
三个部分的关系为APDU=APCI + ASDU。

2.3.1 帧格式

帧是传送信息的基本单元。应用规约数据单元APDU格式如下图所示。

说明:
1)长度规范:报文最大长度255字节,应用规约数据单元的最大长度为253字节,控制域的长度是4字节,应用服务数据单元的最大长度为249字节。
2)控制域:控制域定义抗报文丢失和重复传送的控制信息、报文传输的启动和停止、传输连接的监视。控制域的这些类型被用于完成计数的信息传输的(I格式)、计数的监视功能(S格式)和不计数控制功能(U格式)。

2.3.2 控制域

控制域定义抗报文丢失和重复传送的控制信息、报文传输的启动和停止、传输连接的监视。控制域的这些类型被用于完成计数的信息传输的(I格式)、计数的监视功能(S格式)和不计数控制功能(U格式)。

2.3.3 应用服务数据单元ASDU

标准规定每一个应用规约数据单元(APDU)只有一个应用服务数据单元(ASDU)。应用服务数据单元由数据单元标识符和一个或多个信息体所组成。数据单元标识符在所有应用服务数据单元中常有相同的结构,一个应用服务数据单元中的信息体常有相同的结构和类型,它们由类型标识域所定义。
ASDU结构如下图所示。

ASDU类型标识1字节,在主站侧表示的是主站召唤的数据类型,在子站侧表示的是子站上传的信息元素的类型。
信息对象地址分配如下:

2.3.4 规约交互过程

当主站软件重新启动或链路故障时,主站将向子站发出建立链路的请求报文。当链路建立后,主站召唤一次全数据,随后定时召唤全数据,子站主动传送变化数据。主站收到数据帧后发送数据确认帧。?

3 测试项目编制

3.1 基本协议编制

3.1.1 协议项分类

利用格西调试精灵软件的协议激励的功能,把DL/T634.5104-2002通信规约按照树形结构分类组织,使得管理上更加有条理,查找也更加方便。
首先,根据DL/T634.5104-2002通信协议的控制功能码,建立命令模版协议集,作为基本规约模版使用。
然后,根据ASDU类型标识编码表进行协议分类,建立基本命令集。一条命令由数条子命令构成,命令的执行是一个数个回合的交互过程。?
按照树形结构分类组织的规约项目结构如图所示。

3.1.2 协议项编制

根据协议帧格式,为了方便控制和显示,把协议项的数据按照功能进行拆分。
例子1:命令模版的“对时”命令编制方法。

主站请求帧

从站应答帧

基本命令集的命令是由子命令构成的,子命令从命令模版中引用并作修改。

基本命令的“总召唤”命令编制方法。
首先,创建一个协议集,命名为“总召唤”;
其次,通过复制和粘贴功能,从命令模版中把对应命令复制到协议集“总召唤”中,实际运行测试用例,需要根据返回帧的数量调整接收数据的接收次数。

3.1.3 公共协议库

通过对基本协议项的编写、测试和验证,建立一个由基本协议项组成的公共协议库。

3.2 测试用例编制

测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。通信协议测试属于黑盒测试,可以采用黑盒测试常用的等价类划分法、边界值分析法、错误推测法、因果图法等基本方法来设计测试用例。

测试方案设计完成后,格西调试精灵软件能够利用编制完成的公共协议库,采用搭积木的方式,通过复制和粘贴命令即可非常快捷的创建测试用例。测试用例的组织方式通常是根据测试方案的设计层次采用树形结构分类组织。

4 测试方法

4.1 测试系统构成

4.2 单项测试与整体测试

格西调试精灵软件支持单项测试和整体测试,一次测试一个测试项或者整个测试集。执行的方法是选中需要测试的测试项或者测试集,然后执行激励命令即可。
下面以执行“总召唤”测试项为例说明。

?协议数据解析界面

?协议激励报告界面

4.3 单次测试与循环测试

格西调试精灵软件支持单次测试和循环测试,能很好满足各种调试测试和性能测试的需求。执行的方法是选中需要测试的测试项或者测试集,然后执行激励或循环激励命令即可。

?示例下载?

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-07-28 08:07:20  更:2021-07-28 08:08:36 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 20:20:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码