GB/T33602-2017

电力系统通用服务协议

Generalserviceprotocolforelectricpowersystem

本文分享国家标准电力系统通用服务协议的全文阅读和高清PDF的下载,电力系统通用服务协议的编号:GB/T33602-2017。电力系统通用服务协议共有89页,发布于2017-12-01
  • 中国标准分类号(CCS)F21
  • 国际标准分类号(ICS)29.020
  • 实施日期2017-12-01
  • 文件格式PDF
  • 文本页数89页
  • 文件大小5.50M

电力系统通用服务协议


国家标准 GB/T33602一2017 电力系统通用服务协议 Generalservieeprtncolforeleetricpowersystem 2017-05-12发布 2017-12-01实施 国家质量监督检验检疫总局 发布 国家标准化管理委员会国家标准
GB/T33602一2017 21 8.4流数据交换法 9 服务交互和服务代理 21 9.1概述 21 9.2关联的建立 21 22 9.3服务代理交互过程 26 附录A规范性附录兼容DL/T860.72协议服务编号 28 附录B(规范性附录兼容DL/T634.5104协议服务编号 30 附录C规范性附录兼容GB/T18700.1协议服务编号 32 附录D规范性附录兼容DL/T476协议服务编号 35 附录E规范性附录基本数据类型定义 36 附录F规范性附录基本数据结构定义 附录G规范性附录公共类标识(CI)定义 60 附录H规范性附录服务原语
GB/33602一2017 前 言 本标准按照GB/T1.1一2009给出的规则起草 本标准由电力企业联合会提出 本标准由全国电网运行与控制标准化技术委员会(SAC/TC446)归口 本标准起草单位:国家电网公司国家电力调度控制中心、南方电网电力调度控制中心、电 力科学研究院、北京科东电力控制系统有限责任公司、国电南瑞科技股份有限公司、国家电网公司华东 分部、国网福建省电力有限公司、国网冀北电力有限公司、国网浙江省电力公司、广东电网有限责任公司 电力科学研究院、南京南瑞继保电气有限公司,许继集团有限公司,东方电子股份有限公司、积成电子股 份有限公司、北京四方继保自动化股份有限公司、国电南京自动化股份有限公司、武汉中元华电科技股 份有限公司、长园深瑞继保自动化有限公司 本标准主要起草人;辛耀中,黄海蜂、张鸿、严亚勤、梅峥,邓兆云、陶洪铸、陈宁、梁寿愚、姚志强 李军良、杜鹏,郑锐、万书鹏、方文崇,屈刚,宋磊、张昊,叶海明、顾博川代小翔、温东旭、慈国兴,许文波 刘俊红、蒋君、熊磊、黎强
GB/33602一2017 电力系统通用服务协议 范围 本标准规定了电力系统通用服务的体系结构交互方式、服务原语及通信协议 本标准适用于各级电网调度控制中心,各类发电厂,变电站内部及相互间的预定义和自定义的服务 数据交互,适用于各类电力监控系统及设备的设计,开发、建设、运行、维护各个环节 规范性引用文件 下列文件对于本文件的应用是必不可少的 凡是注日期的引用文件,仅注日期的版本适用于本文 件 凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件 GB/T18700.1远动设备和系统第6部分;与ISO标准和ITUT建议兼容的远动协议第503篇 TASE.2服务和协议 GB/T33601电网设备通用模型数据命名规范 GB/T336032017电力系统模型数据动态消息编码规范 GB/T33604电力系统简单服务接口规范 DL/T476电力系统实时数据通信应用层协议 DL/T634.5104远动设备及系统第5-104部分;传输规约采用标准传输协议集的IEC60870-5- 01网络访问 DL/T667远动设备及系统第5部分传输规约第103篇继电保护设备信息接口配套 标准 DL/T719远动设备及系统第5部分传输规约第102篇电力系统电能累计量传输配套 标准 电力自动化通信网络和系统第7-1部分基本通信结构 DL/T860.71 -原理和模型 DL/T860.72一2013电力自动化通信网络和系统第7-2部分;基本信息和通信结构 抽象通 信服务接口(ACs DL/T860.73电力自动化通信网络和系统第7-3部分;基本通信结构 公用数据类 DL/T860.74电力自动化通信网络和系统第7-4部分;基本通信结构 兼容逻辑节点类和数 据类 术语和定义 下列术语和定义适用于本文件 通用服务协议generalservieeprotocl 规定了基于面向服务架构(sOA)的,适用于各级电网调度控制中心和各类发电厂及变电站的通用 服务,包括二进制的服务描述和服务访问以及相应的二进制通信协议 3.2 协议兼容服务模式protocol compatibiltyservieemde 采用兼容原有通信协议(如:DL/T860,DL/T634.5104,GB/T18700.1,DL/T476等)的特定服务
GB/T33602一2017 模式,以便尽可能利用原有通信程序资源 3.3 服务原语sericeprimitive 对服务原型名称和调用接口参数进行的标准化准确描述,服务原语的标谁名称采用英语动宾短语 的形式命名,在软件程序和服务列表中都可直接使用,类似于软件程序中的函数原型 服务原语的中文 (或其他文字)名称,一般只在服务列表中使用 3.4 预定义服务predeined service 已提供的服务原语和公共数据类定义,服务提供者和服务消费者在遵循本文件规定的前提下,可直 接进行服务的实现和调用 3.5 自定义服务 cust0mmseryice 在已有定义范围之外的服务,由服务提供者自行定义的服务原语和数据类型,服务消费者按照服务 提供者或服务代理提供的服务定义信息,在解析后进行服务的调用 3.6 服务代理servieeproxy 代表多个服务提供者或服务消费者实现跨越广域(或局域)边界的服务交互的特殊网络服务,服务 代理位于服务提供者和服务消费者之间,允许服务的消费者通过代理与服务的提供者进行非直接的 连接 37 服务域servicedomain 按物理或逻辑关系划分服务所属域,位于服务代理后端,通过服务代理提供或获取相关的服务 3.8 域管理domainmanagement 监控和管理区域内所有服务域,并提供域注册管理,城名查询等功能 3.9 服务管理sericemanagement 管理服务域内部所有服务,提供服务的注册、定位(发现)及服务信息查询服务 缩略语 下列缩略语适用于本文件 AC;属性个数(AttributeCounter tionProtocolControlHeader APCH;应用协议控制头(Applicat APDU;应用协议数据单元(ApplicationProtoeolDataUnit) AsDB;应用服务数据单元体(ApplicationServiceDatar-unitBody) AsDH:;应用服务数据单元头(ApplieationServieeData-unitHeader) o DataUnit AsDU;应用服务数据单元(AplicationServie" CC;控制码(ControlCode) CH:;频道(Channel CI;类标识(Classldentifer
GB/33602一2017 CT;编码类型(CodingType) DS;数据集(DataSet EF扩展标志(ExtensionFlag FL;长度(FrameL.ength GSP;通用服务协议(GeneralServieeProtocol nternetProtocol P;互联网协议(In M0;兼容ASN.1编码方式(CompatiblewithASN.1codingmode) M1;带名字的AsN.1编码方式(AsN.1codingmodewithname M2;对象编码方式(Objectcodingmode) M3;类编码方式(Classcodingmode) M编码电力系统模型数据动态消息编码规范(CodingspeeifeationofDymamieMessage C;对象个数(ObjeetCounter OC OS;对象尺寸(ObjectSize) OsI;开放系统互联(Opensystemlnterconnection) meterCounter PC:参数个数(Parat PI:协议标识(Protoeolldentifier SC;服务码(ServiceCode) SEQ;序列编号(2个八位位组)(Sequencey sOA:面向服务架构(ServiceOientedArchitecture) sQ;短序号(1个八位位组)(ShortSequence' ss;子服务(SdbServe TCP;传输控制协议(TransportControlProtocol UDP;用户数据报协议(UserDatagramProtocol UI:单元标识(UnitIdentifer) UT单元类型(UnitType 面向服务的体系架构和协议 5.1体系结构 面向服务的体系架构(sOA),通过一系列的接口服务实现服务消费者和服务提供者间的信息交 换 本文件使用的面向服务架构应由域管理、服务管理、服务代理、服务提供者及服务消费者构成,其构 成如图1所示 在进行本地通信时,数据交互通过服务消费者和服务提供者之间的通道直接进行 在进行远程通 信时,通过本地服务代理和远方服务代理间的配合,在服务消费者和服务提供者之间建立起逻辑的数据 连接,进行服务通信 其中域管理可采用与服务代理结合的分布式部署方式,也可采用集中式的域管理中心方式 从安 全及容错性方面考虑,建议使用分布式部署方式
GB/T33602一2017 管理 管理 服务 服务 提供" 提供者 服务 服务 管理 管理 服务 服务 消费者 消费者 服务 服务 广域数据网 代理 代理 图1面向服务的体系架构构成图 5.2协议结构 为实现面向服务体系架构的服务数据交互,本文件基于OsI参考模型,构建了电力系统通用服务 协议(GSP),基于连接方式的数据交互采用TCP/IP,基于无连接方式的数据交互采用UDP,IP或以太 网 通用服务协议的层次结构如图2所示 0S协议分层 通用服务协议(GSP)结构 应用协议数据单元(APDU) 应用层(第7层 表示层(第6层 动态消息编码(M编码 会话层(第5层) 会话连接 TCP、UDP 传输层(第4层) 网络层(第3层 链路层(第2层 局域网.广域网等 物理层(第1层 图2通用服务协议的层次结构 本标准采用了DL/T860的通信服务和数据结构,以及其自描述和动态维护等特性,用面向对象的 M编码(GB/T33603一2017)方式取代原面向数据的ASN.1编码方式,吸收DL/T476和DL/T634等高 效实时数据通信的技术特点,支持面向对象的高效实时数据通信服务 通过服务原语和报文数据结构 的自描述机制,支持预定义或自定义的创建、维护,扩充服务原语及报文数据结构(类),将简单高效的实 时数据通信服务与灵活方便的离线维护服务分离,功能互补,不相互影响 5.3服务交互流程 5.3.1交互流程 通用服务的数据通信过程如图3所示,包含代理注册、服务注册、服务查询、服务定位等过程
GB/33602一2017 服务管理 服务代理 服务代理 服务管理 服务提供者 服务提供 服务消费者 域管理 7代理注朋 代理注册 h1.服务定义注朋 1.服务定义注朋 3.域名服务 2.全域服务查询 4.服务查询 5,服务查询 5.服务查询 6.查询结果 6.查询结果 7.查询结果 8.返回服务信息 9.本地服务定位 10.返回定位信息 1,发送本地服务 请求 12.返回服务数据 13.发送远程服务 请来 14.服务请求转发 5.本地服务定位 16.返回定位信息 17.发送服务请求 18.返回服务数据 20.接收服务应答 19.服务数据转发 图3通用服务交互流程图 交互流程中的关键步骤说明如下 代理注册;远程通信过程,服务代理是服务域对外的唯一出口,新增一个服务域时,应首先向域 a 管理进行服务代理注册,登记代理的服务域名(DomainName)和IP地址 服务注册:本地通信过程,服务域内部的服务提供者应向本地服务管理注册服务,登记服务提 供者IP地址、,端口,服务提供者标识(ProviderID)及服务名称(ServieeName)等; 服务查询:为服务消费者提供服务域、服务部署以及服务信息等内容,以满足服务访问的需要 服务查询包括远程和本地通信过程 服务定位;服务消费者用于获取服务的通信地址和端口 在获取本地服务的定位信息时,定位 服务由服务管理提供,在获取远方服务的定位信息时,通过本地代理向远方代理进行服务查询 获得 5.3.2域管理 域管理位于指定区域内的服务代理后端,监控并管理所有接人该区域的服务域,其主要功能包括 管理所有服务域中服务代理的注册请求; a b)维护服务域的DomainName和对应服务代理IP地址的映射关系; 监控区域内所有服务代理的运行状态 c d 为服务消费者提供域名查询服务; 对区域范围内的数据交互提供安全管控 域管理模块宜分布部署,以对等冗余方式进行工作,可实现负载均衡 5.3.3服务管理 服务管理负责管理服务域内部所有服务的注册、定位(发现)及服务信息,其主要功能包括
GB/T33602一2017 服务提供者的服务注册及删除服务; a b 服务提供者运行状态监视; 服务列表管理及服务查询、定位功能; c 向域管理进行服务域(包括域名和服务代理地址)注册, d 服务管理模块以对等冗余方式进行部署和工作,可实现负载均衡 5.3.4服务代理 服务代理是跨服务域含广域网或局域网)边界进行服务数据交互的唯一出口,其主要功能应包括 通过域管理获取域名和服务代理模块的通信地址 a 建立并维护服务消费者和服务提供者之间的链路关系, b 转发服务消费者的服务请求到远方代理; C d 接收并转发远方服务消费者代理发来的服务请求到本地服务提供者 转发服务提供者的服务应答到远方代理, fD 接收并转发远方服务提供者代理发来的服务应答到本地服务消费者 服务代理宜分布部署,以对等冗余方式进行部署和工作,可实现负载均衡 5.4服务模式 本标准基于面向服务的体系架构,支持请求响应式服务和订阅发布式服务两种模式 请求响应式服务适用于单次服务请求的场景,交互流程如图4所示,服务交互流程为 a -request"“-indication",“-response"“confirm"4个典型阶段 本标准描述的大多数通用服 务为请求响应式服务 服务提供者 服务消费者 1.服务请求 (Reguest 2,服务指示 (ndication) 3.服务响应 (Response) 4.服务确认 Confirm) 图4请求响应式服务流程 b)订阅发布式服务适用于一次提交服务注册,多次返回服务结果的场景,交互流程如图5所示 服务原语同服务请求响应模式,典型应用如:变电站告警事件的远程订阅
GB/33602一2017 麻务RE 服务提供者 发送服务订阅请求 发布服务响应1 接收服务响应1 发布服务响应2 接收服务响应2 发布服务响应N 接收服务响应N 图5订阅发布式服务流程 5.5服务描述和访问方法 5.5.1服务描述 服务的描述应采用s语言(GB/T33604) 在该规范基础上,本标准的广域服务描述采用如下三段式服务名结构 Domain.Provider.Service参数) Domain,服务所属域名,用于区分服务所属服务域,通常为一个变电站或调控主站 Provider;服务提供者标识,用于区分同一域内不同对象提供的相同服务; Service;服务名 5.5.2服务原语使用 本机(或本服务域)可直接引用、组合引用、嵌套引用服务原语,也可扩展服务原语 直接引用方式,服务使用者可以直接引用附录H中的通用服务原语 b 组合引用方式,服务使用者可以将附录H中的多个通用服务原语组合使用,形成新的服务原 语,需要创建新的服务 嵌套引用方式,服务使用者可以在自己创建的专用服务中,嵌人附录H中的通用服务原语,总 体形成专用服务原语,需要创建专用服务 5.5.3服务访问方式 服务访问方式包含二进制和文本访问方式: 文本访问方式:按照GB/T33604规定以字符串形式进行服务访问,适应于访问频率不高、对 a 响应时间无特殊要求的场合 b 二进制访问方式;按照服务编码sC和相应类编码CI直接进行二进制访问,适应于访问频率 高、响应速度快的场合 通用二进制服务访问调用接口如下 INT32CalIService( /通用二进制服务访问调用接口 GSP_ServiceRefser' 7/服务描述,包括服务域标识、提供者标识、服务编码等 V1ce GSP_ProtocolUnit:protocol,//协议单元,包括协议标识,单元标识,类标识等 GSP_Mode;mode" //服务模式,包括同步或异步方式、连接方式等
GB/T33602一2017 GSP_Buffers:buffers //服务缓冲区,包括输人、输出缓冲区的大小及指针 调用接口的参数由调用方式决定 服务消费者通过CallService将服务请求转换成为通信报文,传 输给服务提供者,服务提供者执行所请求的服务,将结果通过通信报文返回,由CalIServiee将结果传递 给服务消费者,若返回值为0表示服务执行正确,否则表示出现异常 在采用兼容模式时,所兼容的标 准服务编码内容见附录A至附录D 附录E规定了在访问调用接口及服务定义中所使用的基本数据 类型 调用接口CallService的参数定义见F.4,服务响应错误原因见F.4.6. 应用协议数据单元ADu 6.1应用协议数据单元结构 应用协议数据单元(APDU)是通用服务协议的基本报文数据单元,由应用协议控制头(APCHH)和 应用服务数据单元(AsDU)组成,其中APCH由4个八位位组组成,包含控制码(cc),服务码(sC)赖 长度(FL) APDU的结构如图6所示 比特 控制码CC 服务码sc APCH 锁长度FL=ASDU长度 APpu 应用服务数据单元 ASDu AsDu H十4 SDU 长度 图6应用协议数据单元结构 6.2应用协议控制头APCH 6.2.1控制码cc 控制码是1个八位位组,位于APDU的首部,控制码的结构如图7所示,含义见表1 比特 适用协议Pr Next Response Error 备用 图7控制码cC结构
GB/33602一2017 表1控制码cC含义说明 标志位 说明 Bit8=0,表示单赖报文或连续报文的最后一赖 Next Bit8=1,表示还有后续报文 Bit7=0,表示为服务请求; Response Bit7=1,表示为服务响应 Bit6=0,表示为服务成功 Error -1,表示为服务出错 Bit6 备用 Bit5,留作备用 Bit41=0,表示为通用服务协议 =1,表示为DL/T860.72(IEC61850 =2,表示为DL/T634.5104 =3,表示为DL/T476 适用协议P1 4,表示为GB/T18700.l(TAsE.2) =5,表示为DL/T719(IEC870-5-102 =6,表示为DL/T667(IEC870-5-103 =7~15,预留 “适用协议Pr”定义了AsDU使用的协议类型,其中P=0表示通用服务协议,P为其他值时,表示兼 容模式协议 此处“兼容”是指与原通信协议功能的兼容,兼容模式如PI=2时,可采用DL/T634.5104协 议服务编号附录B)解析APCH的服务码sC,其后的帧长度FL为对应DL/T634.5104协议APDu 的长度 6.2.2服务码sC 服务码占1个八位位组,用于标识预定义服务,表2列出了本标准定义的服务,清单中包括了服务 的功能组、名称、服务码、单元类型、编码类型,类标识,连接方式等 其中: -“功能组”和“序号”是为描述方便清晰而设置 -“服务原语标准名称”采用英语动宾短语的形式命名,在软件程序中和服务列表中都可直接 使用 本型服务列表中使用 “服务原语中文名称”是描述性的,可 在 文 “服务码sC”为该服务原语的二进制代码,当APCH的控制字cC的“适用协议”字段置为 0000”通用服务协议)时,其后的服务编码sC字段为该服务的“服务码”;服务码采用分段连 续编码方式,在编码26一47区间、110127区间和169之后留有备用.以方便扩充,服务码为 0表示不采用sC识别的服务, “单元类型UT”为该服务所对应的数据单元类型,UT取值从05,分别对应;对象单元、参数 单元,数据流单元,类描述单元,数据集扩展单元,通用宽扩展单元 详见第8章; “编码类型M"指适用于该服务的报文数据结构的M编码方式,选择编码方式的基本原则为 对于一次性的或临时性的服务,可采用自描述的数据编码M1(或M0),灵活方便;对于实时持 续性的服务,可采用面向对象的数据块编码M2,简洁高效;对于其参数为复杂数据结构的服 务,可采用能够描述对象结构的类描述编码M3,支持动态维护 -“类标识CI”为该服务所对应预定义数据类标识,类标识的具体描述见第8章,CI取值见附录
GB/T33602一2017 F,类结构定义见附录G -“连接方式”指该服务对低层通信连接的要求,选择连接方式的基本原则为;对于一次性的或临 时性的服务,可采用短连接,即先建立临时连接用A ),待该服务完成之后,再释放临 ssocate 时连接(用Reease);对于长期持续性的服务,可采用长连接(用Ass ,即建立连接后,长 ss0ciate 期保持,以便随时支持后续的服务;对于广播或组播型以及测试类的服务,可采用无连接方式 该方式的服务无需用关联(Associate)原语建立连接,但每帧报文都需携带通信地址 其中标注“关”号的服务原语,应使用带身份标签和授权信息的调度数字证书 表2电力系统通用服务协议服务码 服务单元编码 类 服务原语标准名称 连接 码 序号 功能组 服务原语中文名称 类型类型标识 Primitive 方式 C s M UT 基础服务 Associate* 关联 关联 Abort* 异常中止* 知 Release* 释放 创建服务 CreateService" 1/3 制除服务 DeleteService 短 RegisterService 注册服务 CanceIServiee养 取消服务 长 AliveServieeState 服务状态(心跳)报告 ListServiees 获取服务列表 1/3 10 10 服务管理 GetServiee 获取服务信息 L.ocateSerwice 服务定位 112 12 ListProvidersofDomain 特定服务域内的服务提供者查询 知 13 13 ListProvidersofService 特定服务部署位置查询 14 14 GetServiceState 获取服务状态 15 获取域名 15 GetDomainName 16 SetDomainName 设置域名" 16 17 DomainRegister" 域注册" 17 服务域状态(心跳)报告 18 DomainAiveState 18 短 域管理 域注册管理 19 DomainRegistManage关 1 20 20 ListDomainName 域名查询 21 L.ocateProxy 代理定位 21 22 CreateClass 创建服务相关类关 22 1/3 11 23 GetClass 获取服务相关类 23 1/3 短 类管理 24 24 DeleteClass关 删除服务相关类x 获取服务相关类列表 25 ListClasses 25 1/3 10
GB/33602一2017 表2(续 服务单元编码 类 服务原语标准名称 连接 序号 服务原语中文名称 类型类型标识 码 功能组 方式 Primitive sC UT M c 26一 预留 47 数据服务 26 48 GetDataValues 读数据值 0/4 27 49 SetDataValues 设置数据值 0/4 长 数据 5~1o 28 读数据日录 50 GetDataDirectoryy 0/4 1/2 GetDataDefinitionm 51 0/4 2 读数据定义 30 GetDataSet 52 读取数据集 31 53 SetDataSet 设置数据集 1/2 32 54 CreateDataSet 生成数据集 1/2 33 55 DeleteDataSet 删除数据集 5~10 数据集 34 56 长 CheckDataSet 校验数据集 38 57 读取数据集目录 35 GetDataSetDirecetory 1/2 GetDataSetValues 读取数据集的数据值 1/2 36 58 37 59 SetDataSetValues 1/2 发送数据集的数据值 38 60 ListDataSets 获取数据集列表 1/2 39 RegisterEvent 注册事件 61 1/2 40 SubscribeEvent 订阅事件 62 41 63 SendEvent 事件推送 事件 42 64 长 CancelEventReg 取消事件注册 13~16 65 查询事件 1/2 43 QueryEvent 4!4 66 1/2 获取事件列表 ListEvents 45 CancelEventSub 取消事件订阅 67 1/0 46 68 Seleet 选择 1/2 45 47 69 45 SeleetWithValue* 带值选择" 1/2 48 70 Cancel 取消 1/2 49 71 45 Operate 执行 1/2 72 控制 50 CommandTermination关 命令终止 1/2 45 长 51 73 TimeActivedOperatex 1/2 45 时间激活操作" TimeAetivatedOperateTermi 时间激活操作终止 74 45 52 1/2 nation必 53 OperateControl 操作控制 75 45 1
GB/T33602一2017 表2(续 服务单元编码 类 服务原语标准名称 连接 序号 服务原语中文名称 类型类型标识 码 功能组 方式 Primitive sC UT M C 54 GetSequenceList" 76 45 查询操作票列表 控制 55 SequenceControl 序列控制" 77 45 长 56 SequenceStepControl关 序列单步控制关 78 45 57 79 知 时间同步 GetTime 获取时间 1/2 30 服务器 读服务器目录 58 知 GetServerDirectory 80 逻辑设备 读逻辑设备目录 短 59 GetLogicalDevieeDirectory aINodeDirectory 读逻辑节点目录 s 60 Getlogical 逻辑节点 短 6 GetADataValues 83 读所有数据值 84 62 SelectAetiveS(G" 选择活动定值组* 63 85 SelectEditSG" 选择编辑定值组x 64 SetEditSGValue* 写编辑定值组值* 86 1/2 定值组 短 65 ConfirmEditSGValues* 87 确认编辑定值组值* GetEditsGvalues 66 读编辑定值组值 88 1/2 GetsGCBValue 读定值组控制块值 67 89 68 90 报告 Report 69 91 GetBRCBValues 读缓存报告控制块值 0/2 短或 报告 70 SetBRCBValues* 设置缓存报告控制块值 92 0/23137 长 71 GetURCBValues 读非缓存报告控制块值 93 0/2 设置非缓存报告控制块值 72 SetURCBValues* 94 0/2 读日志控制块值 73 GetlCBValues 95 0/2 74 1/2 SetlCBValues关 设置日志控制块值 96 75 97 1/2 短 日志 按时间查询日志 ouerLogBTin ime 76 Queryl.ogAfter 98 1/2 查询某条目以后的日志 77 GetLogStatusValues 读日志状态值 99 1/2 78 SendGO(OSEMessage 发送G0(OSE报文 100 0/2 79 GetG0(OSEElementNumber 读G0OSE元素数目 101 0/1 短或 G00SE 25~26 无 GeGoCBValues 读GoosE控制块值 80 102 0/2 SeGoCBValues 103 0/2 设置Go0sE控制块值" 81 82 SendMSVMessage 104 0/2 发送MsV报文 83 GetMSvCBValues 读MSV控制块值 105 0/2 采样值 2730 无 传输类 84 SetMSVCBValues 设置MSV控制块值* 106 0/2 85 SendUSVMessage 发送USV报文 107 0/" 12
GB/33602一2017 表2(续 服务单元编码 类 服务原语标准名称 连接 序号 服务原语中文名称 类型类型标识 功能组 方式 Primitive sC UT M c 86 GetUsvCBValues 108 读USV控制块值 0/2 采样值 2730 无 传输类 87 SetUSVCBValues 设置USV控制块值 109 0/2 l10 预留 127 公共服务 1l2 88 GetFile 1/2 读文件 128 SetFle 129 1/2 1/2 设置文件 89 90 DeleteFile 130 删除文件 文件 短 91 GetFileAttributeValues 读文件属性值 131 /2 92 ListFiles 获取文件列表 132 1/2 93 GetDirectory 获取文件目录 133 /2 1/2 1724 914 GetBySe 用SQL读取数据库内容 134 /2 2/3 用sQL修改数据库内容 35 95 SetBySql /2 136 获取数据库列表 1/21/2 96 ListDatabases 97 GetTable 137 1/2 获取数据库表结构 98 GetField 138 1/2 获取数据库域结构 数据库 99 ReadTSDB 读取时间序列库 139 1/2 40~42 短 100 WriteTSDB" 写人时间序列库" 140 1/2 101 ListDBStorages 获取数据库存储清单 141 /2 获取数据库表清单 102 ListDBTables l42 /2 GetDBTableFields 143 1/2 103 获取数据库表结构 04 GetD)BTableRecord 144 1/2 获取数据库表记录 105 BrowseDisplay 订阅画面 145 106 CancelDisplay 注销画面 146 短 图形 107 PauseDisplay 暂停画面 147 108 RefreshDisplay 刷新画面 148 获取画面列表 109 ListDisplays 149 11o 150 1/2 1/2 GetModel 获取模型 短 模型 111 SetModel 151 /2 1/2 更新模型 112 ListModels 获取模型列表 152 1/2 短尤 测试 113 Test 测试 153 13
GB/T33602一2017 表2(续 服务单元编码 类 服务原语标准名称 连接 功能组序号 服务原语中文名称 类型类型标识 码 方式 Primitive s UT M C 14 ListHFDCurves 154 1/4 查询历史未来数据信息 历史和 115 GetHFDCurve 读取历史未来数据 155 1/4 2/3 短 计划 ll6 PutHFDCurve 写人历史未来数据 156 2/3 117 Query 综合查询 157 1/2 知 43 综合查询 118 GetVersion 读取版本信息 158 发送邮件 1/21/2 119 SendDmai 159 消息邮件 短 20 160 1/2 1/2 接收邮件 RecvDmail 121 SendMsg 161 1/4 1/2 发送消息 即时消息 短无 122 RecvMsg 接收消息 162 /4 1/2 123 StartWworkflow 肩动工作流程 163 1/4 1/2 短 工作流 124 DeleteWorkflow* 删除工作流程* 164 1/4 1/2 结束工作流程* 125 TerminateWorkllow* 165 1/4 1/2 126 GetIink 读取通信链路 166 167 通信链路 读取通信链路列表 127 Listlinks 1/2 39 知 128 LinkControl关 168 通信链路控制 169及 应用预留 以后 当采用其他通信协议兼容模式时,其服务编码分别见附录A“兼容DL/T860.72协议服务编 号”,附录y“兼容DL/T634.5104协议的服务编号”,附录C“兼容GB/T18700.1TAsE.2)协议的 服务编号”,附录D“兼容DL/T476协议的服务编号” 6.2.3帧长度HL 帧长度FL(Framel.ength)占2个八位位组,最大取值为65535,默认位序为低位在前,高位在后 通用服务协议规定帧长度FL等于应用服务数据单元AsDU长度 应用服务数据单元ASDU 7.1应用服务数据单元结构 应用服务数据单元(ASDU)紧跟在应用协议控制头部(APCH,4个八位位组)之后,由服务数据单 元头(AsDH)和数据单元体(AsDB)构成,如图8所示 应用服务数据单元AsDU的编码规则取决于 APCH中CC的适用协议P字段;当P=0时,采用电力系统动态消息编码规范;当PI1为其他值时,为 通信协议兼容模式,其ASDU可直接采用原有通信规约的应用协议数据单元(APDU)内容 各服务根据需要采用不同的编码类型,具体参照表2中的“编码类型” 通用服务模式的ASDB数 14
GB/33602一2017 据倾结构采用GB/T33603一2017中5.2.1的内容 比特 单元标识UuI ASDH 后续八位位组含义由 数期单元头AsD类型决定 ASDu 数据单元体 SDB ASDB S 图8应用服务数据单元(ASDU)结构 数据单元头部的单元标识UI(UnitID)字段是相对固定的,其他字段在6种数据单元中的含义各不 相同 单元标识U位于数据单元头的第1个八位位组,与GB/T336032017中M编码头部兼容,此处 采用原3个预留比特作为服务数据单元类型UT(UnitType),结构如图9所示,其中编码类型CT CcodingType)单元类型U,高位标志H(High)是必选的 编码类型CT 单元类型Um 扩展标志EF 高低字节序标志H 图9应用服务数据单元的单元标识定义 高低字节序标志H表示发送方计算机的字节序,大端点的计算机设置为“1”,小端点的计算机设置 为"0”,接收侧据此进行字节序转换 EF为扩展标志(ExtentionFlag),扩展标志EF用于对类描述和头部扩展进行分类,在M2和M3 时有效 M0和M1不进行头部扩展,类描述采用短描述 当EF.7=0时,AsDH为4个八位位组的标 准数据单元头部,此时AsDH头部!个成员各占1个八位位组,其最大取值为256;当EF.7=1时 ASDH为8个八位位组的扩展数据单元头部,此时单元标识U1占1个八位位组,后续2个成员各占 2个八位位组,最后一个成员占3个八位位组;EF.6=0时表示类描述为短描述,EF.6=1时表示类描述 为长描述 UT用于表示不同的数据单元,各位取值说明见表3 15
GB/T33602一2017 表3数据单元头类型 应用服务数据单元 单元头部 单元类型值 M编码值 单元标识值低无扩) 序号 ASDU种类 ASDU长度 UT(bit543 CT(bit21 UI=H+EF+UT+CT 对象单元 000 00000l00=0x02 00000100=0x04或 00 参数单元 00/01 00000101=0x05 流数据单元 010 00001000=0x08 1 类描述单元 011 000011l1=0x0F 数据集扩展单元 4十4 100 00010010=0x12 通用宽扩展单元 4十8 101 10 00010110=0x16 备用 10,11 应用服务数据单元有6种类型,为叙述方便,以下主要描述EF.7=0时的标准单元头部ASDH(4、 8、12个八位位组)情况 对于EF.7=1时的扩展单元头部ASDH的情况,需要将6种单元头部ASDH 中的前4个八位位组扩充为8个八位位组,即;类标识CI对象尺寸OS,对象个数OC,参数个数PC属 性个数AC、子服务SS,短序号sQ等,由各占1个八位位组扩展为各占2个八位位组,序列编号SEQ从 2个八位位组扩展为4个八位位组,但是,数据集扩展单元(UT=4)头部的后4个八位位组和通用宽扩 展单元(UT=5)头部的后8个八位位组保持不变,则其数据单元头部长度分别为8十4和8+8个八位 位组 7.2对象单元 对象单元(UT=0),用于传输结构化的对象数据,适用于通信双方已知服务报文数据结构的情况, 应优先使用对象单元成数熬集扩眼伟无 在AsDU标准美部 单无标识n占1个八他位组,其中唯元 类型UT=0,编码类型CT=2;类标识CI占1个八位位组;对象尺寸0s占1个八位位组,表示单个对 象数据块的大小,以八位位组为单位;对象个数OC占1个八位位组,表示后面对象数据中包含的对象 个数 对象单元编码结构如图10所示 APCH头 单元标识Un 类标识c 对象尺寸Os 对象个数oc 对象数据 4个八位位组 1个八位位组 1个八位位组 1个八位位组 1个八位位组 N个八位位组 图10标准单元的对象单元编码结构 类标识(ClassID)位于ASDU标准头部的第2个八位位组,表示该服务直接对应的报文数据类的 编号,取值从0到255 类标识定义范围见表4,其中 CI=0表示本侧尚没有与该服务对应的报文数据类的定义,需要先传送报文数据类描述;仅用于服 务响应报文(cC中的Resp=1) CI=1表示本侧支持与该服务对应的报文数据类的所有属性,用于服务响应报文(CC中Resp=1) CI=2191表示公共预定义数据类型,可离线定义,也可从在线临时定义的数据类型转存为公共 预定义数据类型,由服务管理统一维护 CI=192244表示用户预定义的数据类型,可离线定义,也可从在线临时定义的数据类型转存为 用户预定义数据类型,由服务提供者自行维护 CI=245~255表示用户临时定义的数据类型,其生命周期为一次完整的服务请求响应过程,应先 16
GB/33602一2017 使用类描述单元(UT=3,CT=3)传输类描述,再用对象单元(UT=0,CT=2)等传输对象数据 表4类标识定义 c范围 含义 本侧尚没有与该服务对应的数据类的定义 本侧支持与该服务对应的数据类的所有属性 2191 公共预定义数据类型 192~244 用户预定义数据类型 245~255 用户临时数据类型 对象数据结构如图11所示,其中的对象尺寸OS通过类定义获得 对象Oc 对象1 对象2 OS个八 Os个八 OS个八 位位组 位位组 位位组 图11对象数据结构 对象单元ASDH中的对象尺寸Os,对象个数OC、帧长度FL,有3种组合模式 -是正常多对象模式 长度FL=对象尺寸OS关对象个数OC十ASDU头长 注:其中ASDH长又有多种取值,对于标准ASDH,其长可能为4、8、12个八位位组,对于扩展ASDH,其长可能为 8,12.,16个八位位组;以下与此相同 二是单个超大对象模式 当对象尺寸超过255个八位位组或对象长度无法预先确定时,可将Os 置为0,0C置为1,则超大对象长度=长度FI-ASDU头长 三是用户自定义头部模式 用户应优先选用本标准规定的6种服务数据单元,其中留有相当大的 扩展余地,当仍不满足需求时,用户可自定义头部数据结构,插在标准的对象单元头部ASDH和对象数 据之间,如图12所示 此时,用户自定义头部的长度只能隐式表达,可由下式计算导出 用户自定义头部长度=帧长度FI对象尺寸OS*对象个数0C十ASDH长 对象单元头 用户自定义头部 APCH赖头 对象数掘 4个八位位组 4、8、12个 N个八位位组 对象大小关对象个数)个八位位组 八位位组 图12标准单元的自定义用户头部的对象单元结构 7.3参数单元 参数单元(UT=1),用于传输各类服务的参数数据 在标准ASDH中,单元标识UI占1个八位位 组,其中单元类型UT=1,编码类型cT=0或1,分别表示采用兼容ASN.1(M0)或带名字ASN.1编码 方式(M1);子服务Ss(SubService),为服务码SC的扩展,其编码和含义由服务提供者定义;短序号sQ 占1个八位位组,取值范围从0到255,达到最大值255后自动归0;在发送报文中表示本数据包在缓冲 区中的相对报文序号,在接收确认报文中表示正确接收到的相对报文序号 参数个数PC占1个八位 位组,表示该报文中包含的参数个数 参数单元编码结构如图13所示 17
GB/T33602一2017 APCH头 单元标识U1 子服务SS 短序号SQ 参数个数PC 参数数据 1个八位位组 1个八位位组 4个八位位组 1个八位位组 1个八位位组 N个八位位组 图13参数单元头编码结构 参数数据采用TLV编码方式,或N-TLV编码方式 N-TLV编码方式即在TLV编码方式的基础 上加人名字一项,名字以ASC值为0的字符结束,采用N-TLV编码方式的参数数据结构如图14 所示 名字N 类型T长度L 值V 名字N 类型T长度L 值V 多个八 多个八 L个八 1个八1个八1.个八 1个八 1个八 位位组 位位组 位位组位位组位位组 位位组位位组位位组 图14采用N-TL编码方式的参数数据结构 7.4流数据单元 流数据单元(UT=2),用于传输多帧流式数据,如大文件或图像等 标准单元的流数据编码结构 见图15所示 在ASDU标准头部,单元标识UI占1个八位位组,其中单元类型UT=2,可不使用编码 类型;子服务Ss(SubService),为服务码SC的扩展,其编码和含义由服务提供者定义 相对序号SEQ 占2个八位位组,取值范围从065535,达到最大值65535后自动归0;在发送报文中表示本数据包在 缓冲区中的相对报文序号,在接收确认报文中表示正确接收到的相对报文序号 相对序列编号SEQ流数据 APCH头 单元标识U1 子服务SS N个八位位组 4个八位位组 1个八位位组 1个八位位组 2个八位位组 图15标准单元的流数据单元结构 数据流的传输方法如下; 数据发送方根据关联时协商的流数据切片长度及确认窗口大小,进行数据包的组织和发送,对 a 每帧数据赋予一个发送序号(SEQ或sQ),发送序号连续递增,达到最大值后,自动归0; b 数据发送方每发送等于确认窗口的数帧数据包后,等待数据接收方应返回确认信息 数据接收方每接收等于确认窗口的数帧数据包后,应发送接收确认报文,其序号sEQ(或sQ 表示已正确收到第SEQ(或sQ)号报文; 数据发送方从接收方收到确认报文后,释放发送缓冲区,继续发送,直到送满确认窗口,或完成 d 全部数据发送 在使用流数据方式传输时,可按照实际传输需求,合理设置需要传送的信息切片长度及确认窗口大 小,具体可在关联服务中进行协商 若未进行协商设置,则默认切片长度为1024个八位位组,确认窗口 大小为8 为了提高数据传输效率,减少网络数据分包,建议包含流数据包的APDU加上代理头部12个字节 后的大小不超过当前网络传输最大传输单元(MTU)值 7.5类描述单元 类描述单元(UT=3),用于描述报文数据结构或数据类 在ASDU标准头部,单元标识UI占1个 八位位组,其中单元类型UT=3,编码类型CT=3;类标识CI为所描述的数据类分配标识,详见参数单 元中的CI措述;类尺寸CS为所描述的数据类编译后的二进制尺寸,推荐使用长字(4个八位位组)对齐 18
GB/33602一2017 和紧凑编译;属性个数AC表示所描述类包含的原子属性个数,推荐采用扁平化无嵌套的报文数据结 构 类描述单元应与6.2.2中创建类服务(CreateClass)、获取类服务(GetClass)配合使用,可以预先定 义类,也可以由通信双方动态定义数据类 标准单元的类描述单元编码结构见图16所示 APCH赖头 单元标识Un 类标识cI 类尺寸cs 属性个数" 类描述数据 AC 4个八位位组 1个八位位组 1个八位位组 1个八位位组 1个八位位组 N个八位位组 图16标准单元的类描述单元结构 类描述数据详细结构如图17所示 0 0 类名字 名字N \0 类型T长度L 名字N 类型T长度L 多个八 多个八 多个八 1个八1个八 l个八 l个八 位位组 位位组 位位组位位组 位位组 位位组位位组 图17标准单元的类描述数据结构 7.6数据集扩展单元 数据集扩展单元(UT一4),主要用于传输成组的结构化对象数据,适应于通信双方已知服务报文 数据结构和数据集(通信索引表)的情况,但作为AsDU头部扩展4个八位位组的通用模式,也可支持 非数据集类的其他服务,应优先使用对象单元或数据集扩展单元 在ASDU标准头部,单元标识U占 1个八位位组,其中单元类型UT=4,编码类型CT=2;类标识CI,类尺寸OS和对象个数0C的含义 与在对象单元中相同;AsDU头部共增加了4个八位位组:数据集标识Ds(或频道CH)占1个八位位 组,子服务标识SS占1个八位位组,相对序列号SEQ占2个八位位组,数据集扩展单元结构如图18 单元标识 类标识 对象尺寸对象个数数据集DS 子服务 序号 APCH顿头 对象数据 U ss /频道cH sEQ CT O)S OC 1个 l个 1个 1个 2个 N个 八位位组 八位位组 八位位组 八位位组 八位位组八位位组八位位组八位位组八位位组 图18标准单元的数据集扩展单元结构 数据集(索引表)标识DS用以区分不同的数据集合,DS=1表示接收遥测索引表,DS=2表示接收 遥信索引表,DS=3表示接收遥控索引表,DS=4表示接收遥调索引表,DS=5表示发送遥测索引表 s-役表示发送遥信索引表,Ds=7表示发逃逼控索引表,Ds-&丧示发送遥调索引表;其他编码留作 扩充 在非数据集类的其他服务中,该字段为频道CH.占1个八位位组,表示逻辑的通信渠道,可用于 服务代理之间长连接的分享管理,或无连接情况下分频道组播,其值由服务提供者定义 数据索引表的内容至少包括;顺序号、数据点标准名称、数据点本地标识等,其中的顺序号和数据点 标准名称必须在通信双方之间保持一致;数据点本地标识(一般为数据库地址)仅由本侧使用,不需传给 对侧 子服务Ss为服务码sC的扩展,当与数据集单元配合使用时,Sss=0表示变化数据传送,SS=1表 示全数据传送,其他编码和含义由服务提供者定义 在非数据集的其他服务中,该字段可由服务提供者 定义 相对序列号SEQ在数据集全数据传送子服务(SS=1)时,表示本帧数据在数据集(索引表)中的起 始位置序号;其他情况下与流数据单元中的SEQ相同,在发送报文中表示本数据包在缓冲区中的相对 报文序号,在接收确认报文中表示正确接收到的相对报文序号,当SEQ达到最大值65535后自动归0 19
GB/T33602一2017 7.7通用宽扩展单元 通用宽扩展单元(UT=5),作为ASDU头部扩展8个八位位组的通用模式可支持多种服务,在通 用宽扩展单元标准头部与对象数据之间,预留8个八位位组作为对象数据信息扩展使用 其中.通用宽 扩展单元标准头部定义同对象单元的ASDU标准头部定义;频道CH占1个八位位组,表示逻辑的通 信渠道,可用于服务代理之间长连接的分享管理,或无连接情况下分频道组播,其取值可由服务提供者 定义;子服务Ss(占1个八位位组)和序号SEQ(占2个八位位组)的定义与对象数据集单元中相同;预 留扩展EX占4个八位位组,为服务提供者预留,其具体结构和含义由服务提供者定义 通用宽扩展单 元结构如图19所示 序号 标准AsDu 频道 子服务 APCH头 对象数据 扩展预留EX 单元头部 CH SS SEQ 1个 2个 4个 4个 1个 4个 N个八位位组 八位位组 八位位组 八位位组 八位位组 八位位组 八位位组 图19标准单元的通用宽扩展单元结构 8 服务数据传输 8.1简单类型数据交换法 通信双方所交换的数据类型为基本数据类型,且数据个数较少的情况下可采用参数数据单元进行 数据交换 在应用服务数据单元中将每个交换的数据描述信息与数据值都包含在内 以关联服务请求 为例,其具体参考格式如图20所示 帧结构 APCH ASDU CT 说明 CC SC FI UI 备用 PC 参数1 参数2 值 0x00 0x01 4十nl十n2十, Ox05 NTLV NTLV 长度(八 nl n2 位位组 图20简单类型数据交换的APDU标准单元 8.2公共预定义数据类型交换法 通信双方所交换的数据为单一数据类型或结构性数据,且其类型包含在公共类里面时可采用对象 单元进行数据的交换和解析 由于公共数据类型是双方都已知的,交换时可以直接使用类型标识cI作为双方的编解码依据 以 注册事件(RegisterEvent)请求为例,具体参考格式如图21所示,其中cI=13为公共数据类型 结构 APCH ASDU CC SC U1 C OS OC 说明 FL 对象1l 值 0x00 0xlD 4十1关nl 0x02 13 nl=43 长度(八位位组 nl 图21公共数据类型交换的APDU标准单元 20
GB/33602一2017 8.3用户自定义数据类型交换法 通信双方所交换的数据为单一数据类型或结构性数据,但不包含在公共类里面时,通信双方可通过 类管理服务定义或交换类定义,然后使用相应的类标识CI进行服务数据的的交换和解析 自定义的数据类由服务端使用CreateClas创建新的数据类定义,在创建后客户端可通过List Clase、服务获取到当前服务所有相关类的列表,使用GeClas、服务可获取指定数据类的描述信息 常见的自定义数据交换分为以下两种应用情况 用户预定义的数据类;服务端先使用CreateClass为服务创建新的数据类定义,类标识范围为 a 该服务下的192一244(依据表4定义内容),在创建后客户端可通过ListClasses服务获取到当 前服务所有相关类的列表,使用GetClass服务可获取指定数据类的描述信息,并可在后续的 服务请求,响应中使用该数据类实例化的对象单元直接进行数据交换; 用户临时定义的数据类;服务端在响应客户端请求时临时创建符合客户端要求的数据类定义 b 并在本次会话中使用,类标识范围为该服务下的245~255(依据表4定义内容),服务端先使 用类描述单元告知数据接收方后续数据类的定义信息,再使用对象数据单元直接进行数据 交换 8.4流数据交换法 通信双方在进行比较复杂的数据交换时,如文件传输等,难以使用一个类表达的服务时,可使用流 数据单元进行数据交换 在使用数据流传输服务时,数据流的编码方法通过数据流单元的子服务(SS)参数进行约定 流数 据的编解码应依据服务参数的s描述实现 流数据交换服务的过程如下 在服务的Request过程,逐个对IN参数,按照参数的编码方法把数据编码后,通过简单的按顺 a 序合并形成请求服务的数据流 在服务的Indication过程则按照Request的逆向进行解码, b 在服务的Response过程,逐个对OUT参数,按照参数的编码方法把数据编码后,通过简单的 按顺序合并形成服务响应数据流; 在服务的Confirm过程则按照Response的逆向进行解码 d 服务交互和服务代理 9.1概述 服务消费者、服务代理和服务提供者间的交互过程包括关联(Assoeiate,服务传输、主动释放(Re lease)或中止关联(Abor),通信异常处理 9.2关联的建立 关联Associate是指服务消费者到服务提供者之间的端到端的连接,包括本地服务关联,通过代理 的远方服务关联 关联过程包含底层的套接字(Socket)层面的连接,包含安全认证过程 关联的建立 是在每个服务交互过程隐含的,即在每次服务会话时建立关联,会话结束时根据情况应释放关联,由客 户端通知服务端,服务端释放与关联有关的资源 服务端应为每个已建立的关联创建一个定时器,如果 长时间未收到客户端的服务请求,视为会话已结束,并释放有关的资源 如果客户端需要长时间保持关 联,应定时发送Test请求 如果检测到通信异常或服务端拒绝释放关联,应使用Abort服务中止关联 关联建立过程中的关键技术点说明如下 21
GB/T33602一2017 服务关联Assoeiate的建立 a 服务关联的建立原则如下: l在一对客户,服务端之间,当使用sC的服务时,可共享一个AssociatelD,系统设立特定As sociatelD供使用SC的服务共享,若不使用SC的服务,每个服务对应一个AssociatelD: 22 通信关联关系谁建谁拆,连接发起者负责链路的保持和销毁,服务端只在链路长期未收到 数据时通过Abort终止关联 b)长连接和短连接服务交互过程 服务的长连接通过Associate和Release显式建立,短连接的Assoeiate和Release采用隐式建 立 具体方法是 在需要长连接时需在服务传输过程前通过Associate建立链接,在过程中通过test维持 链接,在结束时用Release拆除链接 只需短连接时,在服务调用前不做任何关联操作; 22 33 在服务调用时包括长、短连接),首先判断是否已有链接(关联),如果没有则使用 Associat te建立链接,并在收到返回后用Release拆除链接 如果在服务调用时发现已经 有链接则直接使用已有链接,不做任何关联操作 无连接服务交互过程 c 无连接服务适用于广播或组播型的服务,以及测试维护型的服务 该类服务低层协议采用无连接 的通信协议如;以太网、,IP,UDP等),不需建立连接,但每帧报文都需带收发地址,可采用频道(CH)机 制优化支持分组广播型服务 典型应用如:变电站的采样值服务用以太网协议广播发送 9.3服务代理交互过程 服务代理交互用于支持跨服务域的关联的建立,实现链路的管理、服务请求和服务应答的转发 服 务代理可通过在APDU之前增加包含关联ID(AssociateID)的代理赖头的方式来实现 代理头结构 见附录F的F.3 关联ID包括全局和局部两种,全局AssociateID在端到端的范围内保持唯一,局部 AssoeiateID在分段连接中保持唯一 图22为服务通过代理实现交互的过程 服务提供 服务消费 域管理 CA-Asl ClientA 服务管理M CAAs2 ProyX CB-Asl CA-As3 CA-AslCA-As2 CB-As2 CB-AsS ClientB X关联对应表CB-AslCB-As2 CC-As3 SererB Proy CA-A2cA-As3,Pont cC-As2 1z关联对应表 CB-As2CB-As3,Port2 cC-As2cc-As3,Port2 cC-Asl ClientC Proxv CC-As1 cc-As2 Y关联对应表 图22服务代理交互过程图 22
GB/33602一2017 图中客户端A与客户端B共同使用服务代理x与远方服务通信,客户端C单独使用服务代理Y 与远方服务通信,服务代理乙为服务端的服务代理 关As*表示各个客户端与服务代理之间,服务代 理与服务代理之间,服务代理与服务端之间建立的Associate关联;实粗线表示为实际socket连接,虚 细线表示为关联关系 服务代理之间的实际socket连接中可能会存在多个Assoeiate关联(即共享 TCP连接),服务代理与客户端或服务代理与服务端之间的实际socket连接中只存在一个Associate 关 联(即独享TCP连接);关联对应表为服务代理中存在的映射表,用来锁定连接关系 其交互过程如下 建立Associate关联 服务关联过程的详细流程见图23所示,以客户端A连接服务端B作为例子来说明其过程 客户端A向客户端以目的服务的三段式服务名为参数,向代理x发关联请求,客户端代 理X产生值为CA-As的AssociateID,并记录此ID到关联对应表当中,并用来标记客户 端A; 客户端服务代理X解析目的服务的DomainNanme,并通过域管理获取对应域代理服务Z 的IP地址;判断与其是否存在物理连接,如果不存在,则建立物理连接; 代理X将为收到的关联数据帧加代理倾头,并将代理帧头的AssociateID设为CA-Asl 后发送给代理Z; 代理Z产解析代理帧头CA-Asl,生成值CA-As2(在使用全局AssociateID时CA-A2值 直接使用CA-Asl的值)的AssociateID,记录CA-Asl与CA-As2的关联关系; 代理乙去代理帧头,解析服务参数并以本地客户端的形式,通过Assoeiate的ProviderID 和ServerID参数建立与服务B的关联关系,服务B产生值为CA-As3并通过Assoeiate 的AssociateID参数返回CA-As3给代理Z; 代理Z接收到服务B返回的建立链路成功帧,将CA-As3和当前与服务Bsocket连接参 数一并记录到关联对应表中,与CA-As2构成CA-As2,CA-As3以及soeket关联关系 代理Z将建立链路成功帧中返回的Assoeiate的A teID参数由CA-A3替换为CA ssociate As2,然后添加CA-Asl到代理头上,发送给代理X; 代理X接收到代理Z返回的建立链路成功,解析出CA-Asl和CA-As2,然后将CA As1和CA-As2记录到本代理中的关联对应表中; 代理X将收到返回数据包去掉添加的代理帧头,并将Associate的AssociatelD参数值由 CA-As2替换为CA-As!后发送给客户端A 0客户端A接收到代理X返回的建立链路成功帧,记录当前的CA-Asl,通知上层应用链路 以建立成功 23
GB/T33602一2017 服务请求者 服务代理 服务代理 服务提供者 nm=Rsse 建立监听 建立监听 建立约听 是香泉务 卫 路 建 C豆 SOCK wwRo" iR 发送请次 发送请术 花 响应关联请 AaileRept "XMs" 我咖务干 "中 图23跨域服务关联过程流程图 b)服务传输 在建立好关联关系后,客户端和服务端服务之间才能进行服务数据传输,以客户端B访问服务端B 的服务为例,其通信过程如下 客户端B向代理X发送数据服务访问,代理X接收到客户端B的访问请求,根据客户 1 端B的标记CBAs1通过关联对应表来寻找代理Z的CB-As2,然后将以AssociateID为 CBAs2的代理帧头添加到数据服务访问帧头部,发送给代理Z 代理乙接收到代理x的数据服务访问帧,解析代理帧头,获得CBAs2,通过关联对应表 来寻找与其对应服务B的连接;代理Z将头去掉,然后通过关联CBAs3的socket转发 数据服务访问帧给服务B; 服务B接收到数据服务访问帧后,返回数据服务访问结果帧给代理Z; 33 4 代理乙根据端日Rou2和关联CB.As通过关联对应表,寻找关联cBA2,然后将以.A sociateID为CBA2的代理帧头添加到数据访问结果赖头部,发送给代理X; 代理x接收到数据访间结果帖,解析代理航头,获取CBA2,根据关联对应表,寻找到 CBAsl;代理X去掉头,将数据访问结果通过关联CBAs1l发送给客户端B,同时复 位此对关联的生命值 主动释放和终止关联 C 客户端与服务端通信结束或者需要中止,则发送release和abort帧,以客户端C和服务端B通信 为例,并以发送release帧为例 客户端C向代理Y发送release帧,代理Y接收到客户端C的访问请求,根据客户端C的 标记CCAsl通过关联对应表来寻找代理Z的CC-As2,然后将AssoeiatelD为CCAs2 的代理头添加到release帧头部,发送给代理Z 代理乙接收到代理Y的release帧,解析帧头,获得CC-As2,通过关联对应表来寻找与其 对应服务B的连接;代理Z将帧头去掉,然后通过关联cCAs3、端口Port3转发release 帧给服务B 33 服务B接收到release帧后,返回关联释放确认帧给代理Z 24
GB/33602一2017 4 代理Z根据端口Port3和关联cC-As3通过关联对应表,寻找关联cC-A2,然后将cC A2添加到关联释放确认帧头部,发送给代理Y;代理Z删除cC-As3的关联,删除端口 Port3上的物理连接,同时删除关联对应表上的记录; 代理Y接收到关联释放确认帧,解析帧头,获取cC-A2,根据关联对应表,寻找到cC Asl;代理Y去掉帧头,将数据访问结果帧通过关联cC-As1发送给客户端C;代理Y删 除关联对应表中的数据,然后检测代理Y与代理Z之间是否还存在As ate关联,如果 Ssociat 不再存在,则删除代理Y和代理Z之间的物理连接; 6 客户端C接收到关联释放确认帧,释放客户端C和代理Y之间的物理连接 77 通信流程中,省略了超时计时,超时计时与a)建立关联时的超时计时相同,不再重复;对 于abort命令,直接结束当前的操作,不等待当前操作完成,其通信流程与release相同 不再重复 d)通信异常处理 通信通道异常等都会造成交互的中断导致关联失效,在通信过程中应采取相应措施,应包含的处理 要求如下 在各环节采用生命计数器进行对通信过程进行监视,在超出预期时间后应采取相应措胞、 恢复通信并告警 通信空闲时发送测试帧监视通道和服务是否正常; 2 在异常发生时,应尽可能发出abort命令,通知相关服务释放资源; 33 应设置关键资源使用情况监视,以发行异常资源消耗 4 25
GB/T33602一2017 附 录 A 规范性附录) 兼容DL/860.72协议服务编号 根据电力系统通用服务协议编码规则对DL/T860.72中的抽象通信服务接口进行服务编号,详见 表A.1 表A.1DL/T860.72服务编号 对象 服务名称 中文描述 服务编号 服务器 GetServerDirectory 读服务器目录 0xO1 Assoeiate 关联 0x02 关联 异常中止 Abort 0x03 释放 Release 0x04 逻辑设备 GetLogicalDeviceDireectory 0x05 读逻辑设备目录 GetLogiealNodeDireetory 读逻辑节点目录 0x06 逻辑节点 GetAIlDataValues 读所有数据值 0x07 GetDataValues 读数据值 0x08 设置数据值 SetDataValues Ox09 数据 读数据目录 0x0A GetDataDireetory 0xoB GetDataDefinition 读数据定义 GetDataSetValues 0x0C 读数据集值 SetDataSetValues 设置数据集值 0xOD CreateDataSet 数据集 建立数据集 0x0E DeleteDataSet 删除数据集 0x0F GetDataSetDirectory 读数据集目录 0x10 选择激活定值维 SelectAetiveSG 0xll selectEdits 0x12 选择编辑定值组 SetEditS(GValue 设置定值组值 0x13 定值组控制块 ConfirmEditS(GValues 确认编辑定值组值 0x14 GetEditSGValue 读定值组值 0x15 GetSGCBValues 读定值组控制块值 0xl6 Report 报告 0x17 读缓存报告控制块值 GetBRCBValues 0x18 SetBRCBvalues 报告控制块 设置缓存报告控制块值 0x19 GetURCBValues 0x1A 读非缓存报告控制块值 SetURCBValues 设置非缓存报告控制块值 0xlB 26

电力系统通用服务协议GB/T33602-2017

随着电力行业的发展,各类电力企业之间的合作与交流日益频繁。为了保证电力系统中各方的权益和利益,电力系统通用服务协议GB/T33602-2017应运而生。

该协议是由中国电力科学研究院和国家电网公司联合制定,旨在规范电力系统中各方的服务行为,明确权利义务,保障双方的合法权益。

根据协议,电力系统中的服务可以分为技术服务、管理服务、咨询服务等多种类型,不同类型的服务需要遵守相应的规定。

同时,协议还规定了服务的报价、支付方式、服务期限、违约责任等方面的具体要求,并明确了争议解决机制。

在签署协议前,各方应当充分了解协议的内容,严格遵守协议规定,自觉履行相关义务。同时,协议还规定了服务质量的标准,要求服务提供方应当保证服务质量,并对服务出现的问题及时处理。

通过遵循该协议,电力系统中的各方将能够更加准确地明确自己的权利和义务,实现互利共赢,为电力行业的健康发展提供有力保障。

电力系统通用服务协议的相关资料

    和电力系统通用服务协议类似的标准

    电网设备通用模型数据命名规范
    上一篇 本文分享国家标准电网设备通用模型数据命名规范的全文阅读和高清PDF的下载,电网设备通用模型数据命名规范的编号:GB/T33601-2017。电网设备通用模型数据命名规范共有23页,发布于2017-09-01
    电力系统模型数据动态消息编码规范
    本文分享国家标准电力系统模型数据动态消息编码规范的全文阅读和高清PDF的下载,电力系统模型数据动态消息编码规范的编号:GB/T33603-2017。电力系统模型数据动态消息编码规范共有15页,发布于2017-12-01 下一篇
    相关推荐