GB/T29265.204-2017

信息技术信息设备资源共享协同服务第204部分:网关

Informationtechnology—Informationdeviceintelligentgroupingandresourcesharing—Part204:Gateway

本文分享国家标准信息技术信息设备资源共享协同服务第204部分:网关的全文阅读和高清PDF的下载,信息技术信息设备资源共享协同服务第204部分:网关的编号:GB/T29265.204-2017。信息技术信息设备资源共享协同服务第204部分:网关共有29页,发布于2018-05-01
  • 中国标准分类号(CCS)L65
  • 国际标准分类号(ICS)35.200
  • 实施日期2018-05-01
  • 文件格式PDF
  • 文本页数29页
  • 文件大小1.38M

以图片形式预览信息技术信息设备资源共享协同服务第204部分:网关

信息技术信息设备资源共享协同服务第204部分:网关


国家标准 GB/T29265.204一2017 信息技术信息设备资源共享协同服务 204部分:网关 第 nmtelligemt lnformationtechnology一lnformationdevice groupingand resourcesharing一Part204:Gateway 2017-11-01发布 2018-05-01实施 国家质量监督检验检疫总局 发布 国家标准化管理委员会国家标准
GB/T29265.204一2017 目 次 前言 范围 2 规范性引用文件 术语和定义 缩略语 通用控制网络结构概述 基于通用控制网络结构的交互流程 GCS 7.1GCS类型 7.2GCS的服务属性 7.3GCS的数据类型 7.4Gcs的服务调用接口 .5服务调用错误代码表 服务调用消息格式 8 8.1服务调用请求消息 8.2服务调用响应消息 8.3服务属性更新通知消息 GCCP网关功能 12 9.1概述 12 9.2通用控制服务器 13 9.3通用控制客户端 13 附录A(规范性附录通用控制服务wSDL语言描述 15 附录B资料性附录GcCP网关转发控制消息的例子 21
GB/T29265.204一2017 前 言 GB/T29265《信息技术信息设备资源共享协同服务》分为如下部分 -第1部分:系统结构与参考模型; 第102部分;远程访问系统结构; 第201部分:基础协议 第202部分;通用控制基础协议; 第203部分:基于IPV6的通信协议; 部分:网关; 205部分:远程访问基础协议; 部分:远程访问服务平台; 部分:设备类型; 第302部分:服务类型; 03部分通用控制设备描述 部分;数字媒体内容保护 第305部分电力线通信接口; 第306部分;服务质量" 部分;可扩展的远程用户界面协议; 401部分;基础应用 第 402部分;应用框架, 第 第403部分;远程音视频应用框架 第404部分;远程通用管理应用框架 第405部分;媒体中心设备; 第406部分;网络多媒体终端及应用 第501部分;测试 第502部分;远程访问测试与验证 本部分为GB/T29265的第204部分 本部分按照GB/T1.12009给出的规则起草 本部分由全国信息技术标准化技术委员会(SAC/Tc28)提出并归口 请注意本文件的某些内容可能涉及专利 本文件的发布机构不承担识别这些专利的责任 本部分起草单位;闪联信息技术工程中心有限公司、北京市闪联信息产业协会、深圳市闪联信息技 术有限公司,美的集团有限公司、海信集团有限公司、联想集团有限公司、世意法(北京)半导体研发有限 责任公司、四川长虹电器股份有限公司、TCL.集团股份有限公司康佳集团股份有限公司,长城计 算机集团公司,创维集团有限公司、浙江风向标科技有限公司、电子技术标准化研究院、北京市海淀 区教育科学研究院、深圳市九洲电器有限公司 本部分主要起草人:张维华、孙育宁、皇晓琳、王有学、孙志勇、王斌、马延文、孙国滨、胡静宜、杨磊、 李嘉,刘孟红、杨富东
GB:/T29265.204一2017 信息技术信息设备资源共享协同服务 第204部分网关 范围 GB/T29265的本部分规定了信息设备资源共享协同服务的通用控制网络结构、基于通用控制网 络结构的交互流程、通用控制服务、服务调用消息格式以及GcCP网关功能 本部分适用于连接IGRsSIP网络和IGRsGcCP网络的设备,即IGRsGcCP网关 规范性引用文件 下列文件对于本文件的应用是必不可少的 凡是注日期的引用文件,仅注日期的版本适用于本文 件 凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件 GB/T292865.201-2017信息技术信息设备资源共享协同服务第20部分;基础协议 GB/T29265.202-2012信息技术信息设备资源共享协同服务第202部分;通用控制基础协议 GB/T29265.303-2012信息技术信息设备资源共享协同服务第303部分;通用控制设备描述 术语和定义 下列术语和定义适用于本文件 3.1 本地I设备localIPdeviee 接人家庭网络中具有网络接口、符合IGRS通信协议,支持必要网络功能的设备 3.2 本地IP网络localIPnetwork 家庭网络中,连接信息设备、通信设备、娱乐设备的高速信息通道,通常用以太网实现,特点是频带 宽、速率高 3.3 通用控制基础协议generalcontrolcoreprotool;GcCP 适用于非IP的功能简单、资源有限的设备,实现设备间互连、资源共享、协同服务的协议 3.4 GcC设备cccCPdevice 应用GCCP进行设备互连、资源共享、协同服务的设备 3.5 GcCP网关GcCPgateway -种连接1GRsIP网络和IGRsGcCP两种不同网络,实现不同网络中设备间进行设备互连、资源 共享、协同服务的设备 注:GcCP网关连接IGRsP网络和GRsGccP网络,同时集成GcS服务器和GcS客户端,可以作为一个GcS服 务器向GCS客户端提供GCS,也可以作为GCS客户端请求获得GCS服务器提供的GCS服务,从而实现 GRsIP网络和IGRsGcCP网络之间的Gcs代理
GB/T29265.204一2017 3.6 GcCP网络GcCPnetwork 由GcCP设备依据GCCP组成的网络 3.7 通用控制服务generaleontrolserviee;GCS GCCP设备向IGRs网络提供的控制服务,IG;Rs网络上的设备通过通用控制服务对GCCP设备的 控制 或者,IGRS本地IP设备向GCCP网络提供的控制服务,GCCP网络上的设备通过GCS对IGRS 本地P设备的控制 3.8 通用控制服务器GCSserer 提供GCS的设备 3.9 通用控制客户端GCSclient 请求获得GCS的设备 缩略语 下列都略语适用于本文件 GCCP通用控制基础协议(GeneralControlCoreProtocol GCS通用控制服务(GeneralControlservice HTML超文本置标语言(HyperTextMarkupL.anguage) HTTP超文本传输协议(HyperTextTransferProtocol 1GRs资源共享协同服务(IntelligentGroupingandResourceSharing UDP通用数据报协议(UserDataProtocol) wsDL网络服务描述语言(webServiceDeseriptionLanguage) XML可扩展置标语言(ExtensibleMarkupL.anguage) 通用控制网络结构概述 S 通用控制应用框架是基于GB/T29265.201一2017,面向IGRs网络中的通用控制应用而定义的一 系列应用交互规则 通用控制应用框架属于IGRS应用框架,是GRs上层交互框架,与具体传输协议 无关,可以支持UDP,HTTP传输协议 通用控制应用框架规定通用控制服务器和通用控制客户端在 IGRS基础协议下的通信协议和交互过程 功能符合GB/T29265.202-2012和GB/T29206.303-2012的设备称为GCCP设备 GCCP设 备组建成GCCP网络,由GCCP网关将在线GCCP设备组织成一个设备列表,在通用控制服务里面呈现给 IGRS网络中的通用控制客户端;其他设备如IGRS电视这样的产品,也可以将符合GB/T29265.303一 2012的功能(如开关,换台等)组织成GCS,使得IGRS电视作为一个通用控制服务器向通用控制客户端提 供GCS. GcCP网络的结构如图1所示
GB:/T29265.204一2017 通用控制客户端 通用控制服务器 IGRS 本地P网络 客户端引掌 GCS 通用控制网络结构 基于通用控制网络结构的交互流程 基于通用控制网络结构的交互流程如图2所示 通用控制服务器 通用控制客户端 GetDevieeList 返回设备列表 GecFuncionList 返回功能列表 GetPauramLiss 返回功能的参数列表 GeParamlnf0 返回参数格式信息 SetValue 返回控制操作结果 GeVaue 返回指定状态值 订阅事件通知 返回订阅标识符 事件发生时发送通知消息 图2基于通用控制网络结构的交互流程 具体流程如下 通用控制服务器在线宣告; a
GB/T29265.204一2017 b 通用控制客户端添加该通用控制服务器; 通用控制客户端要访问该通用控制服务器时候,向通用控制服务器获取其设备列表(GcS. c GetDeviceList); d 通用控制客户端要访问某指定设备时候,向通用控制服务器获取功能列表(GCS;:GetFunc- ionList); 通用控制客户端要访问某设备某功能时候,向通用控制服务器获取功能的参数信息(GcSs: G retParamlist); fD 通用控制客户端设置参数,获取参数信息(GCS::GetParamlnfo),调用(GCS::SetValue),通 用控制服务器对具体GcCP设备的访问和控制 通用控制客户端读取状态,调用(GCS::(GetValue); g h 通用控制客户端可订阅通用控制服务器上的设备上线离线,设备告警,状态变化等事件,当这 些事件发生时,通用控制服务器会发送相应的事件通知消息给订阅者" 通用控制服务器下线通知 GCS 7.1G:CS类型 GCS类型定义如下 urn;IGRSServieeServieeType:GCSl GCS的wSDL语言描述见附录A 7.2cCcs的服务属性 GCS的服务属性如表1所示 表1GCS的服务属性 服务属性名称 可选/必选 相关数据类型 描述 Devicel.astOnline 必选 Type_DevieeList 最近上线设备列表 Devicel.asOfflne 最近离线设备列表 必选 Type_DeviceList DevieceAlarm 必选 Type_DeviceAlarm 最近设备告警信息 DevieeStatus 必选 Type_ChangedStatusList 最近改变的设备状态 7.3GCS的数据类型 GcCS的数据类型如表2所示 表2GCS的数据类型 数据类型名称 可选/必选 数据类型 描述 Type_DeviceList 必选 Complex 设备列表 功能列表 Complex Type_Functionlist 必选 Type_ParamList 必选 Complex 参数列表 TypeParamlnfo 必选 Complex 参数信息 TypeParamValueList Complex 参数值列表 必选 必选 参数代码列表 Type_ParamCodeList Complex Type_DeviceAlaram 必选 Complex 设备告警 人型参数信息 Complex Type_InputParmlnfo 必选
GB:/T29265.204一2017 表2(续 数据类型名称 可选/必选 数据类型 描述 Type_EnumParamlnfo 必选 枚举型参数信息 Complex Type 必选 设备描述 Device Complex Type_Funetion 必选 Complex 功能描述 必选 参数描述 Type_Param Complex ParamValue 必选 参数值描述 Complex TEe 7.4GCs的服务调用接口 7.4.1GetDeviceList GetDeviceList函数的功能为获取通用控制服务器上的GCCP设备列表 GetDevieeList的输人/输出参数如表3所示 表3GetDeyieeList的输入/输出参数 相美数据类型 参数 输人/输出 描述 CurrentDevieeList 输出 Type_DeviceList 当前在线设备列表 返回值 -成功;0:; 失败:见7.5错误代码表 GetFunctiomList 7.4.2 GetFunctionList函数的功能为获取通用控制服务器上某GCCP设备的功能列表 GetFunetionlist的输人/输出参数如表4所示 表4GetFunctionLis的输入/输出参数 参数 相关数据类型 描述 输人/输出 DeviceAddr 输人/输出 Unsignedshort 设备地址 Funetionlist 输出 Type_Functionlist 指定设备的功能列表 返回值: 成功;0; -失败;见7.5错误代码表 7.4.3GetParamList GetParamList函数的功能为获取某设备某项功能的参数列表 GetParamList的输人/输出参数如表5所示 表5GetParamList的输入/输出参数 参数 输人/输出 相关数据类型 描述 设备地址 DeviceAddr 输人/输出 Unsignedshort FunetionCode 输人/输出 Unsignedshort 功能代码 Paramlist Type_Paramlist 输出 参数列表
GB/T29265.204一2017 返回值 成功;0; 失败:见7.5错误代码表 7.4.4 GetParamlnfo GetParamlnfo函数的功能为获取某参数的相关信息 GetParamlnfo的输人/输出参数如表6所示 表6GetParamlnfo的输入/输出参数 相关数据类型 参数教 输人/输出 描述 DevieeAddr 输人/输出 Unsignedshort 设备地址 ParamCode 输人/输出 UnsignedShort 参数代码 输出 参数相关信息 Paramlnfo Type_Paramlnfo 返回值 成功:0; 失败;见7.5错误代码表 7.4.5SetValue SetValue函数的功能为设置参数值,实现对GcCP设备的控制 SetValue的输人/输出参数如表7所示 表7SetValue的输入/输出参数 参数 输人输出 相关数据类型 描述 DevieeAddr 输人/输出 Unsignedshort 设备地址 FunetionCode 输人/输出 Unsignedshort 功能代码 ParamValueList Type-ParamValueList 输人 参数值列表 输出 ExecResult Unsignedchar 执行结果代码 ExecResutDese 输出 String 执行情况描述 返回值: 成功:0; 失败:见7.5错误代码表 7.4.6cetvalue GetValue函数的功能为获取设备状态 GetValue的输人/输出参数如表8所示 表8Getvalue的输入/输出参数 参数 输人/输出 相关数据类型 描述 DewiceAddr 输人/输出 Unsignedshort 设备地址 ParamCodeList 输人 Type_ParamCodeList 要获取状态的参数代码列表 ParamValeList 输出 Type_ParamValueList 返回的参数值列表 返回值 成功:0;
GB/T29265.204一2017 失败;见7.5错误代码表 7.4.7SubseribeServieeAttribute SubseribeServiceeAttribute函数的功能为订阅服务属性更新事件,当服务属性发生变化时,会通知 客户端 SubseribeServiceAttribute的输人/输出参数如表9所示 表9SubseribeServiceAttribute的输入/输出参数 相关数据类型 参数 输人/输出 描述 ServiceAttributeName 输人 String 要订阅的服务属性名 输出 服务属性订阅标识符 Subscribeld String 返回值 成功:0:; 失败;见7.5错误代码表 7.4.8UnSubscrileServiceAttribute UnSubseribeServiceAttribute函数的功能为取消订阅服务属性更新事件 UnSubscribeServiceAttribute的输人/输出参数如表10所示 表10UnSuhscribeServiceAttribute的输入/输出参数 参数 输人/输出 相关数据类型 描述 Subscribed 输人 服务属性订阅标识符 String 返回值 成功:0: 失败:见7.5错误代码表 7.4.9FileTransfer FileTransfer函数的功能为文件传输命令,用于透明文件的传输 FileTransfer的输人/输出参数如表11所示 表11FileTransfer的输入/输出参数 参数 输人/输出 相关数据类型 描述 设备地址 DeviceAddr 输人/输出 Unsignedshort FileFlag 输人/输出 Unsignedshort 文件标识行 Offset Unsignedshort 输人/输出 文件数据偏移 Filelen 输出 Unsignedshort 文件总长度 输出 本次数据长度 Datalen Unsignedshort 文件数据,将一个字节编码为16进 输出 Data String 制字符串,如0xlA编码为“1A" 返回值 成功:0:;
GB/T29265.204一2017 失败;见7.5错误代码表 7.5服务调用错误代码表 IGRS服务调用错误代码表如表12所示 表12IGRS服务调用错误代码 误码编号 错误码名称 值 含义 E o RETSUCCESS 成功 E RET_FAILED 失败 参数无效 E3 RET_INVALIDPARAM E4 RETServiceAttriNotFound -100 服务属性未找到 设备未找到 E5 RET_DevieeNNotFound -101 E6 RET_DevieeOffline -102 设备已离线 E7 RETFileNotFound -103 文件不存在 服务调用消息格式 8.1服务调用请求消息 IGRS服务调用消息格式符合GB/T29265.201一2017中对服务调用消息格式的规定 客户端基于与目标服务间建立的会话对目标服务进行“请求/响应”模式的功能调用 1GRs服务调用消息格式如表13所示 表13IGRS服务调用消息格式 消息 消息字段说明 M-POST/目标服务标识符HTTP/1.l 扩展HTTP命令行 Host 必备字段 目标主机P 端口 地址 必备字段,GRS版本号 01-IGRSVersion:IGRS/1.0 1-IGRSMessageType;InvokeServiceRequest 必备字段,内容应如此 必备字段,类型为ur,定义见GB/T29265,201 01- SourceDevieed发出请求的设备标识符 2017的7.1.2 必备字段,类型为uri,定义见GBT29265.201 1-TargeDevwiced目标设备标识符 2017的7.1.2 消息体的长度字节 必备字段 Content-Length; Contenttype:text/xtml;charset=utf8 必备字段 MAN;"http://www.igrs.org/speel.0";ns=01 必备字段 MAN;"http://schemas.xmlsoap.org/soap/enveope/";ns=02 必备字段 02 "IGRS-I SoapAetion lInvokeService-Request 必备字段 SOAPENV:Envelope xmlnsSO)APENV="http;//schemas.xmlsoap.org/soap/envelope/ 必备字段 SOAP-ENV:encodingStyle http;//schemas,Xmlsoaporg/s0ap/ encoding SAPENVBodv 必备字段 必备字段,request属性指示该调用消息需要 Session xmlns="http://www.igrs.org/speel.0"request="NeedResponse" 响应
GB:/T29265.204一2017 表13(续 消息 消息字段说明 Clientd》源客户标识符GB/T29265.204一2017 表14(续 消息 消息字段说明 源服务标识符 必备字段,类型为32位msgnellnt (SourceServiceId /SourceServiceId TargetClientld》目标客户标识符(/TargetClientld》 必备字段,类型为32位unsignedlnt 必备字段,类型为32位unsignedlnt cknowledgeld Acknowledgeld》调用响应消息序列号《/Ael 与请求消息中的调用请求Sequenceld相同 必备字段,定义见GB/T29265.201一2017第 eturnCode ReturnCode》 调用响应状态码《/Re 10章 此处为具体调用响应消息--)》 可选字段,表示独立于该服务调用的错误响应 信息,如该服务调用方法不支持等 此处的 AVReturnCode)AV通用错误返回码服务调用响应状态码 《ReturnCode /ReturnCode 文的AV通用错误返回码AVReturnCode是 二者必具其一且仅具其一的关系 《输出参数名称)输出参数值输出参数名称》 应符合服务调用接口定又 《输出参数名称)输出参数值/输出参数名称》 应符合服务调用接口定义 调用接口名称 必备字段 -此处为具体调用响应消息结束--》 必备字段 《7Session /s(OAP-ENV;Body 必备字段 /SOAPENV:Envelope 必备字段 8.3服务属性更新通知消息 在服务属性发生变化时,服务可以基于与客户(控制点)间建立的会话对客户进行通知,该通知不需 要响应 IGRS服务属性更新通知消息格式如表15所示 表15IGRS服务属性更新通知消息格式 消息 消息字段说明 M-NOTIFY/IGRSHTTP/1.1 扩展HTTP命令 行 目标主机P地址;端口 必备字段 Host 目 MAN;"http://www.igrs.org/speel.0";ns=01 必备字段 01-IGRSVersion:1GRs/1.0 必备字段,1IGRs版本号 必备字段,内容应如此 01-IGRSMessageType;ServieceNotifyClient 必备字段,类型为un,定义见GB/T29265.201 01-SourceDevieeld;发出请求的设备标识符 2017的7.1.2 必备字段,类型为un,定义见GB/T29265.201 1TargeDevieeld,目标设备标识符 2017的7.1.2 10
GB:/T29265.204一2017 表15(续 消息 消息字段说明 01-Sequenceld;设备管道消息序列号 ength消息体的长度字节 必备字段 Content-T Contenttype:text/xml;charset=utf8 必备字段 必备字段 MAN"http://schemas.xmlsoap.org/soap/enveope/";ns=02 02-SoapAction"IGRSServiceToClient-Notify" 必备字段 SOAPENV Envelope xmns;SOAPENV="http://schemas,.xmlsoap.org/soap/envelope/" 必备字段 SOAPENV;encodingStyle="http;//schemas,xtmlsoap.org/soap/enco ding SOAP-ENV:Body 必备字段 必备字段,request 属性指示该调用消息不需要 Session xmlns="http://www.igrs.,org/specl.0"request="NoResponse" 响应 SoureeServieeld》源服务标识符(《/SoureeServieeld 必备字段,类型位32位unsignedlnt(0保留 elementname sequence omplexType /element 新离线设备通知消息中的具体通知消息部分的xmlschema定义如下 b elementname="L.astOflineDeviceNotification"y complexType Seguence elementname="Subseriptionld”type="xsd;string" elementname="ServiceAttributeName”type="xsd:string") elementname="ServiceAttributeValue”type="Type_DeviceList"八 segquence /complexType》 /element 设备告警通知消息中的具体通知消息部分的xmlschema定义如下 ication"y elementname="DeviceAlarmNotifid 11
GB/T29265.204一2017 complexType) 《sequence elementname="Subseriptionld”type="xsdstring"八 "ServiceAttributeName”type="xsd:string"/ element namme "ServiceAttributeValue”type="Type_DeviceAlarm" elementname sequence /complexType》 /element 设备状态更新通知消息中的具体通知消息部分的xmlschema定义如下 elementname-"StatusChangeNotifieation") complexTy ype seguence, elementname="Subseriptionld"”type="xsd;string"八 elementnatme="ServieeAttributeValue”type="Type_ChangedStatusList"八) sequence GB/T29265.204一2017 g.2通用控制服务器 GCCP网关作为通用控制服务器时实现的功能 网关在GCCP网络中监听GcCP设备的在线宣告,获取在线设备的信息,组织成设备列表 a b) 在IGRs网络上呈现GCS 收到通用控制客户端的获取设备列表的请求时,返回设备列表 c 收到通用控制客户端的获取设备功能列表的请求时,返回指定设备的功能列表; d 收到通用控制客户端的获取设备参数信息的请求时,返回指定参数的具体信息; e 收到通用控制客户端的对设备的控制请求时,将控制请求信息转换为GCCP网络中的控制请 求指令发送给指定设备;从该设备获得响应;将响应转发给通用控制客户端; 收到通用控制客户端的对设备的控制请求时,将状态请求信息转换为GCCP网络中的状态请 求指令发送给指定设备;从该设备获得响应;将响应转发给通用控制客户端; h 收到通用控制客户端的对设备的文件传输请求时,将文件传输请求信息转换为GCCP网络中 的文件传输请求指令发送给指定设备;从该设备获得响应;将响应转发给通用控制客户端 将GcCCP设备上线、离线、告警状态变化等事件通知预定了相应服务属性变化通知的通用控 制客户端 设备上线;发给通用控制客户端设备上线通知消息; 2) 设备离线;发给通用控制客户端设备离线通知消息; 33) 设备告警;发给通用控制客户端设备告警通知消息; 4)设备状态变化:发给通用控制客户端设备状态变化通知消息 g.3通用控制客户端 GcCP网关作为通用控制客户端时实现的功能 一个GcCP网络最多存在7个网关,每个网关都被分配一个特殊地址,并被分配一个网关标 aa 识,GcCP网关的标识为1-7 b 网关监听IGRs网络,发现提供GCS的通用控制服务器,与之建立会话 网关获取通用控制服务器上的设备列表和其他信息,形成虚拟的GCCP设备列表: c I)用GetDevieelist获得虚拟设备的地址和设备类型信息 用GetFunctionList获得设备的功能信息 用GetParamList和GetParamlnfo获得设备的具体功能的参数信息; 33 根据以上信息生成虚拟设备的设备描述文件; 4 5 根据通用控制服务器的特征信息以及每个虚拟设备原来的地址每次为该设备分配一个固 定的映射地址; 6 形成一个虚拟GCCP设备列表;列表中的设备地址为映射地址 在GcCP网络中的其他设备访问虚拟设备 d 监听到一个网关的设备宣告,通过它的特别地址知道它是一个网关,也知道了它的网关标识: 利用文件传输命令向网关获取虚拟GCCP设备列表 22) 3 使用该列表中的虚拟设备的地址和来源网关标识向来源网关获取虚拟设备的设备描述文件 4)需要与虚拟设备进行通信时,使用虚拟设备的地址和来源网关的标识,向来源网关发送 消息; 网关进行代理通信,即分析GCCP消息的动作,由网关来向通用控制服务器发出相关服 5 务请求,获得服务响应后将相关数据或结果返回给GCCP网络的请求设备 网关截获发往虚拟设备的消息并代理通信 e 网关接到网关标识与自己标识匹配的发往虚拟设备的消息,根据地址确定目标设备;假设 13
GB/T29265.204一2017 目标设备来自通用控制服务器A,地址为AddrB;然后分别进行代理通信 22 对文件传输消息的代理通信 若要传输的文件是设备描述文件,则转步骤i); iD iD 向通用控制服务A发送FileTransfer服务请求(参数中设备地址为AddrB,文件标 识符为指定文件),接收服务响应,获得整个文件 ii)网关再伪装成目标设备(利用其虚拟地址)将获得的文件传输给请求设备 3 对控制请求消息的代理通信 向通用控制服务器A发送SetValue服务请求(参数中设备地址为AddarB,其他参数由原 GCCP命令中转化得到).接收服务响应.网关再伪装成目标设备(利用其虚拟地址)将结 果转换为GCCP控制响应消息发给原请求设备 对状态请求消息的代理通信 向通用控制服务器A发送GetValue服务请求(参数中设备地址为AddrB,其他参数由原 GcCP命令中转化得到),接收服务响应,网关再伪装成目标设备(利用其虚拟地址)将结 果转换为GcCP状态响应消息发给原请求设备 fD 网关向通用控制服务器订阅感兴趣的设备上线,离线,告警,设备状态改变等事件,当通用控制 服务器上相应事件发生时,会收到通用控制服务器的相应通知消息,此时作出相应处理: 1 当收到设备上线离线通知消息时,更新虚拟设备表添加新上线的设备,删除离线的设备 或者重新向通用控制服务器请求全部设备列表; 2 收到设备告警通知消息:根据消息内容指定的目标设备地址,将告警消息转发给目标设备; 33 收到状态改变通知消息:根据消息内容指定的目标设备地址,将消息转发给目标设备 14
GB/T29265.204一2017 附 录 规范性附录 通用控制服务wsDL语言描述 〈wsdl;definitionsxmlns;igrsdvd="http://www.igrs.org/igrs/rGRsGcs" "http tp://www.igrs.org/igrs/ServiceDescription" Xmlns;igrs= xmlns:wsdl="http schemas.xmlsoap.org/wsdl" xmlns;xsd="http. www.,w3.org/2001/XMLSchema xmlns:soap= schemas.xmlsoap.org/wsdl/soap/"xmlns="http://schemas.xmlsoap.org/w /IGRsGcs"name="rGRsGCcs" "targetNamespace "htt sd ttp://www,.igrs.org/igrs/ wsdl;types》 /IGRsGcs" "http:/ xsd:schematargetNamespace= /www,.igrs.org/igrs/ 数据类型定义 complexTypename="Type_Device") sequence type="unsignedshort") -"DeviceCodie" elementname= elementname="DeviceName" type="string" /sequence /complexType》 "Type_DeviceList") complexTIypename= segquence》 elementname="DeviceCount”type="unsignedshort"八 elementname="Devices”type="tpe_Device"min0ccurs="0" 7/sequence 《/complexType》 kcomplexTyper "Type_Function"》 name= sequence》 elementname="FunctionCode" "unsignedshort"八 tyPe= "ttring") elementname="FtunctionName" type= /seguence /complexType> complexTypename="Type_FunctionList"》 sequence elementname="F'unctionCount"type="unsignedshort") elementname="Functiones" "0") "tpe="type_Bunretio"=inOceurs- 《/seguence /complexType> "Type_Paran" complexTypename= sequence elementname="ParamCode”type="unsignedshort") elementname="ParamName "string") type= 15
GB/T29265.204寧2017 7/sequence /complexType》 complexTypename="TypeParamList sequence elementname="ParamCount" "unsignedshort"? tyPpe= elementname="Params”type="type_Param”minOccurs="o"? /seguence /complexType (complexIypename="Type_DataType sequence 'char"minOccurs="0"? "charValue”type elementname "shortvalue”type="short"minOccurs="o" elementname int"min0ccurs="0" elementname intValue type udcharValue type="unsignedchar"min0ccurs="0"? elementname elementname ushortValue type="unsignedshort"minOccurs="o"? “uintValue unsignedint"min0ccurs="0"? elementname type elementname=“floatvalue”type="float"minOccurs="0" /seguence)》 /complexType>》 (complexTypename="Type_InputParamInfo"》 sequence elementname="ValueDesc" type="string"? " elenentname="nitalue”type="type_Datarype" elementname="MaxValue" "type-DataType" type= elementname="MinValue"type="type_DataType"? "?y type="type_Dataype" elementname= "stepValue" /seguence 7complexIype complexTy ypename="Type_BnumParamInfo" sequence' elementname="InitValue" type="umsignedshort" elementname="OptionCount"type="unsignedshort") G type="string”minOccurs="0” elementname= 0ptions /sequence /complexType complexTypename="Type_ParamInfo" sequence elementname="DataType"type="unsignedchar" "Pa elementname= ParamAttr”type="unsignedchar" elementname="InputIypeData" "pe_InputParaminfo"mioceuws-"Oo" type= elementname="BnummlypeData”type="tye_BnumParamInfo"minOccurs="" 16
GB/T29265.204一2017 7/sequence》 /complexType》 "TpeParamValue'" coeplexTypenae sequence / elementname="ParamCode" "unsignedshort" type= elementname="ParamDataType”type="unsignedchar"八 /seguence /complexType> (complexTypename="Iype_ParamValueList" sequence elementname="ParamvalueCount" type="unsignedchar") elementname="ParamValues”type="type_ParamValue"minOccurs="o"八 7/sequence /complexType> complexTy ypename="Type_ParamCodeList"" sequence elementname="ParamCodeCount" edshort" type="unsigne elementname="ParamCodes”type="unsignedshort"minOccurs="0"八 /sequence /complexType (complexTypename="Type_DeviceAlarm" seguence T elementname="DestDeviceAdtr”type="unsigpedshort" elementname="SreDeviceAddr" "八) "unsignedshort' type= elementname="AlarmType”type="unsignedshort") (elementname="AlarmDesc”type="string") /sequence 7/complexIype complexTypename="Type_ChangedStatusList"》 sequence (elementname="DestDeviceAddr”type="unsignedshort" "srcDeviceAddr" elementname type="unsignedshort" elementname "ParamCodeCount" "unsignedshort" tyPe= "tye="unsignedshort"minOccurs="O" ParamCodles" (elementname /SeguenCe》 /complexType> /xsd:schema /wsdl:tyPes -服务调用接口定义-- 〈messagename="GetDeviceListRequest" /message 〈messagename="GetDeviceListResponse"" 17
GB/T29265.204寧2017 partname="CurrentDeviceList" type="Type_DeviceList") 〈partname="result”type="xsd;short"? /message) "G cetFunctionListReguest") messagename= "unsignedshort"? partname="DeviceAddr"type= /message messagename "GetFunctionListResponse" 〈partname="DeviceAddr”type="unsignedshort"? partname="FunctionList type="Type_FunctionList"? "sd.short" partname result”type= messaqe st" "GetPar messaaename aramRequest 〈partname="DeviceAddr”type="unsignedshort"? partname "FunctionCode”type="unsignedshort"? eSSage messagename="GetParamListResponse" "DeviceAddr" type="unsignedshort") partname partname="FunctionCode”type="unsignedshort"?) ParamList"?y ?" partname="ParamList type="Type partname="result”type="xsd:short" /message messagename="GetParamInfoRequest"》 partname="DeviceAddr" type="unsignedshort") partname="ParamCode”type="unsignedshort"? messaqe 'GetParamInfoResponse"》 messagename "DeviceAddr”type="unsignedshort") partname "unsignedshort"? partname="ParamCode”type= 〈partname="ParamInfo”type="ype_ParamInfo") "xsd;short" partname="result”type /message 〈messagename="SetValueRequest" partname="DeviceAddr”type="unsignedshort") partname="FunctionCode" type="unsignedshort") partname="ParamvalueList"type="Type_ParamValueList") message "SetValueResponse" messagename t"? artname="DeviceAddr”type="unsignedshort partname="FunctionCode" "unsignedshort"? tYPe= gartname="BxecResult"type="unsignedchar"? partname="BxecResultDesc" type="string"? 18
GB/T29265.204寧2017 1 (partname="result" type="xsd;short” 《/message' 《messagename="GetValueReguest" gartname="DeviceAdr"type="unsignedshort") name="ParamCodeList" type="Type_ParamCodeList"? sSage messaaename="GetvalueResponse" partname="DeviceAddr”type="unsignedshort"? partname="ParamvalueList" ParamvalueList"? "type="Type partname="result"type="xsd;short"/? message 《messagename="FileTransferRequest" ? partname "DeviceAddr”type="unsignedshort" "FileFlag”type="unsignedshort"? name t"? "Offset”type name unsignedshort" meSSage messagename="FileTransferResponse" partname=“DeviceAdd nedshort"? tyPe unsign6 “FileFlag 'unsignedshort") partname type “offset”type="unsignedshort"? par name name “FleLen”type="unsignedshort" name "unsigpedshort") “DataLen”type= name=“Data" type="string" result"”type="xsd;short") name nessaqe "cCsO portTypename Operation operationname="GetDeviceList" tt" inputmessage="GetDeviceListRequest 'GetDeviceListResponse" outputmessage /operation operationname="GetFunctionList"y st"? "GetFunctionListRequest inputmessage= outputmessage="GetFunctionListResponse"? /operation operationname="GetParamList" st"? inputmessage="GetParamListRequest outputmessage="GetParamListResponse"? /operation GB/T29265.204?2017 "GetParam InfoResponse") outputmessage /operation operationname="SetValue" inputmessage="setvalueRequest" outputmessage="setValueResponse" /operation operationname="GetValue" inputmessage="GetvalueRequest" outputmessage="GetValueResponse" /operation "E1eTransfer" operationname= st" -"FileTransferRequest inputmessage= outputmessage="FileTransferResponse" 7operation GB/T29265.204一2017 附录B (资料性附录) GCCP网关转发控制消息的例子 B.1概述 本附录提供了一个GCCP网关接收到来自通用控制客户端的请求,将请求转发给GcCP设备的例 子 该请求为打开一个设备(比如打开一个灯或者其他电子设备),交互流程如图B.1所示 通用控制客户端 GccP网关 GcCP设备 GetDeviceList 返回设备列表 B.2 GetFunctionList 返回功能列表 B.3 GetParamList 返回功能的参数列表 B.4 GetParamlnfo 返回参数格式信息 B.5 SetVaue B.6 设备控制请求 设备控制响应 返回运行结果 图B.1GcCP网关转发控制消息的流程 本例中假定GcCP网关已经按照GB/T29265.202一2012和GcCP设备关联,并且已经从GcCP 设备中获取了所有需要向通用控制客户端应答的信息 经过初始与GCcCP网关的握手后,GcCP客户端向GcCP网关发送“SetValue”消息,请求GCcCP设 备完成工作,从GcCP设备返回的消息也按照相同的方式返回到GcCP客户端上 下面是具体的流程例子,为了提高可读性,HTML头已经去掉仅仅列出了HTML的内容 GcCP消息遵循十六进制的格式 B.2GetDeviceList和其返回消息 sOAP-ENV:EnvelopexmlnsSOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" soAPEv.encodingstyle="ht /encodir ing") ttp:/7/schemas.xmlsoap.org/soap/ 21
GB/T29265.204一2017 s0AP-Ew;Body //www.igrs.org/specl.0”request="NeedResponse" SessionXmlns= "http:/ ClientID>》1230001/ClientID> ServiceID>》1230002/ServiceID》 anceID》1/SequenceID) (seguer GetDeviceList》 /GetDeviceList /Session 《/S0AP-ENV;Body /SOAP-EAN:Envelope SOAP-ENV:Envelopexmlns;SOAP-ENV="http://schemas,.xmlsoap.org/soap/envelope/ sSOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding" SOAP-ENV:Body Sessionxmlns="http://www.igrs.org/spec1.0"》 CurrentDeviceList (DeviceCount》2/DeviceCount Devices DeviceCode》6《/DeviceCode》 GB/T29265.204一2017 /s0AP-Ev;Body /sOAP-ENV;Bnvelc lope s0AP-EvBamel lopexmlns;s0AP-Bv= /schemas.xmlsoap.org/soap/envelope/" -"htp/" /encodin soaPEwy,;ercodingstyle="htp:/ 7/schemas.xmlsoap.org/soap/ ng" sOAP-ENV;Body Sessionxmlns="htt /spec1.0" tpP:/7/www.igrs.org SourceServiceld》1230003《/SourceServiced) TargetClientId1230004/TargetClientId 〈AcknowledgeId 2 /AcknowledgeIdy ReturnCode》100《/ReturnCode》 unctionist ReturnCode o /ReturnCode 8 /DeviceAddr》 DeviceAddr 2 FunctionCount /FunctionCount》 'unCt1OnS 〈unctionCode》 /FunctionCode FunctionName》On/0ff《/FunctionName Functions Functions FunctionCode》2《/FunctionCode FunctionName》Toggle《/FunctionName' /Functions /FunctionList 《/Session /SOAP-ENV:Body /SOAP-ENV:Envelope B.4GetParaml.ist和其返回消息 s0AP-Bw,Eamvelopexmlns.s0AP-Bv-"htp://schemas.xnlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/ SOAP-ENV:Body (Session姐lns="http://wew.igrs.org/spec1.0”request="NedReeponse") 1230001《/clientID C1ientID 1230002/ServiceIDy ServiceID SeauenceID 7/SequenceIDy GetParamList DeiceAddr /DeviceAddr》 unctionCode》 《7FunctionCode /GetParamList /Session 'sOAP-ENv ;Body /soAP-BNv;Bnvelope' sOAP-ENV, 难ine,soPw-"htp:/ 1ope/" Envelope 7schemas,.xmlsoap.org/soap/envelG S0AP-EN,ercodingstyle="http: 1ng/" //schemas.xmlsoap.org/soap/encodin s0oAPEv,Bodty? Sessionxmlns= /spe.0") "ttp:/ /www.igrs.org/ sourceServiceId》1230003《/SourceServiced Taa argetal: entId》1230004GB/T29265.204一2017 AcknowledgeId /AcknoledgeId ReturnCode》100/ReturnCode GetParamList ReturnCode》 /ReturnCode》 DeviceAddr》 /DeviceAddr》 FunctionCode》 /FunctionCode ParamList ParamCount》 /ParamCount》 /ParamCode》 ParamCode ParamName》Val〈/ParamName》 ParamS /ParamList》 GetParamList》 /Session /SOAP-ENV;Body /SOAP-ENV;Envelope B.5GetParamlnfo和其返回消息 sOAP-ENV:BnvelopexmlnsSOAP-EANV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding SOAP-ENV:Body Sessionxmlns "http://www.igrs.org/spec1.0”reguest="NeedResponse" ClientID>1230001〈/ClientID ServiceID>1230002《7/ServiceID D /SequenceID (SequenceI GetParamInfo) DeviceAddr /DeviceAddr》 ParamCode /ParamCode》 GetParamInfo /Session /SOAP-ENV:Body 7/SOAP-ENV:Envelope "http://schemas.>xlsoap.org/soap/envelope/" (SOAP-BNV:BnvelopeXmlns:SOAP-ENV= / soAP-Bv,encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" sOAP-ENv :Body "http://www.igrs.org/spec1.0" Sessionxmlns= 1230003 SourceServiceId 7SourceServiceId 《TargetclientId》1230004GB/T29265.204一2017 《/BnumDataType》 BnumDataype XXX 》1230001〈/ClientID ceID)》1230002《/ServiceID SeguenceID /SequenceID DeviceAddr》 /DeviceAddr》 ionCode》 /FunctionCode》 ParamValueList ParamValueCount》1《/ParamValueCount》 ParamValues》 ParamCode /ParamCode》 ParamDataType》1《/ParamDataType ParamValues》 /ParamValueList》 /SetValue /Session /SOAP-ENV:Body /SOAP-ENV:Bnvelope GCCPRequest Totallength:0x0D control:0x01 Network ID 0x0001 rargetID:0x0008 D0x100o SourCe 0x30 MessageID 0x01 MessageCheck MessageBody EunctionCode 0x01 code:0x01 Parameter value:0x0001 Parameter1 cCccPResponse: Totallength;0x0E control:0x01 NetworkID:0x0001 TargetD;0x1000 sourceID:0x0008 25
GB/T29265.204?2017 ID:0x31 Message Check:0x05 Message MessageBody FunctionCode:0x01 Operationresult 0x00 OperationresultDescription:0x4F0x4B0x00 soAP-Ev,Bnvelope xmlns:sOAP-ENV= -"http ;//schemas,.xmlsoa /envelope/ ap.org/soap/" /encoding soPB8w.encodtngstyle="http:/ //schemas.xmlsoap.org/soap/ sOAP-ENv:Body Sessionxmlns= "http//ww.igrs.org /spec1.0" SourceServiceId1230003/SourceServiceIdy TargetClientId1230004/TargetClientId AcknowledgeId) /AcknowledgeId) ReturnCode100/ReturnCode SetValue /ReturnCode ReturnCode DeviceAddr /DeviceAddr /FunctionCode

信息技术信息设备资源共享协同服务第204部分:网关GB/T29265.204-2017

随着信息技术的不断发展,越来越多的设备互联互通。这就需要一种机制来让不同的设备之间能够相互通信。而网关就是连接不同网络之间的重要枢纽。在信息技术信息设备资源共享协同服务中,网关起到至关重要的作用。

什么是网关GB/T29265.204-2017?

GB/T29265.204-2017是中国国家标准化管理委员会发布的信息技术信息设备资源共享协同服务标准的一部分,主要规定了网关的定义和实现方式。

根据该标准的定义,网关是一个连接不同网络的设备,它能够将不同网络协议转换成其他网络协议,从而实现不同网络之间的通信。在信息技术信息设备资源共享协同服务中,网关是资源提供者和资源使用者之间的桥梁,它能够将资源分配给需要它们的客户端。

网关的作用

网关GB/T29265.204-2017的主要作用是实现不同网络之间的通信。具体来说,它可以完成以下任务:

  • 协议转换:将不同网络协议之间进行转换,使得不同网络之间的设备可以相互通信。
  • 数据转发:将接收到的数据转发到指定的目的地,从而实现对资源的访问。
  • 安全控制:对进出网关的数据进行检查和过滤,保证网络的安全性和稳定性。

网关的实现方式

根据GB/T29265.204-2017标准,网关的实现方式可以分为硬件和软件两种。

硬件网关是一种物理设备,通常由路由器、交换机、防火墙等设备组成。它们通过协议转换和数据转发实现不同网络之间的连接。

软件网关则是一种运行在计算机上的程序,通常是通过虚拟化技术实现的。软件网关可以运行在不同的操作系统和硬件平台上,具有灵活性和可扩展性。

总结

网关是信息技术信息设备资源共享协同服务中非常重要的一部分。它能够实现不同网络之间的通信,极大地提高了资源利用的效率。GB/T29265.204-2017标准规定了网关的定义和实现方式,为信息技术行业的发展提供了指导。

信息技术信息设备资源共享协同服务第204部分:网关的相关资料

和信息技术信息设备资源共享协同服务第204部分:网关类似的标准

工业沉淀硫酸钡
上一篇 本文分享国家标准工业沉淀硫酸钡的全文阅读和高清PDF的下载,工业沉淀硫酸钡的编号:GB/T2899-2017。工业沉淀硫酸钡共有10页,发布于2018-05-01
信息技术信息设备资源共享协同服务第205部分:远程访问基础协议
本文分享国家标准信息技术信息设备资源共享协同服务第205部分:远程访问基础协议的全文阅读和高清PDF的下载,信息技术信息设备资源共享协同服务第205部分:远程访问基础协议的编号:GB/T29265.205-2017。信息技术信息设备资源共享协同服务第205部分:远程访问基础协议共有31页,发布于2018-05-01 下一篇
相关推荐