2.综述 (续上篇)
上篇地址:/DBKrg
2.2DLMS/COSEM应用层主要特点
2.2.1DLMS/COSEM应用层结构
DLMS/COSEM AL的主要部件是应用服务对象(ASO)。它给其服务用户提供服务(COSEM应用进程),并使用支撑层提供的服务。客户机和服务器侧都包含三个必需的部件:
——连接控制服务元素(ACSE); ACSE提供了建立和发布应用连接(AA)的服务。
——扩展的DLMS应用服务元素(xDLMS_ASE); xDLMS ASE提供了在COSEM AP之间传输数据的服务。
——控制功能(CF) 。 控制功能(CF)元素规定ASO服务如何调用ACSE、xDLMS ASE和支持层的服务的相应服务原语。
在客户机侧,有第四种可选元素为客户机SN_MAPPER ASE。
客户机和服务器DLMS/COSEM ASO都可能包含其他可选的应用协议组件。
当服务器使用SN引用时,可选的客户机SN_Mapper ASE存在于客户机侧AL ASO中。它使用LN和SN引用提供服务之间的映射。
DLMS/COSEM AL还执行OSI表示层的一些功能:
——对ACSE APDU和xDLMS APDU进行编码和解码;
——替换地生成和使用表示ACSE和xDLMS APDU的XML文档;
——应用压缩和解压;
——应用、验证和删除加密保护。
2.2.2连接控制服务元素ACSE
为了面向DLMS/COSEM连接(CO)通信配置的目的,使用ISO/IEC 15953:1999和ISO/IEC 15954:1999中规定的CO ACSE。
为建立和发布应用连接提供的服务如下:
——COSEM-OPEN;
——COSEM-RELEASE;
——COSEM-ABORT。
COSEM-OPEN服务用于建立AA。它是基于ACSE A-ASSOCIATE服务。它导致由Application_Context_Name、Security_Mechanism_Name和xDLMS语境参数的值标识的那些ASE过程开始使用AA。AA可能以不同的方式建立:
——通过客户机和服务器之间的消息交换(使用COSEM-OPEN服务)建立确认的AA以协商语境。可以在单个客户机和单个服务器之间建立确认的AA;
——通过从客户机到服务器发送的消息(使用COSEM-OPEN服务),使用服务器应支持的假定的语境参数,建立非确认的AA。可以在客户机和一个或多个服务器之间建立非确认的AA;
——预先建立的AA可能预先存在。在这种情况下,不使用COSEM-OPEN服务。客户机应了解服务器支持的语境。预先建立的AA可以确认的或非确认的。
COSEM-RELEASE服务用于释放AA。如果成功,则导致AA的使用完成,而不会在传输过程中丢失信息(完全释放)。在某些通信配置中(例如在基于TCP-UDP/IP的配置中),COSEM-RELEASE服务基于ACSE A-RELEASE服务。在其他一些通信配置中(例如基于HDLC、面向连接的3层配置中),确认的AA和支持的协议层连接之间存在一对一的关系。在这种配置中,可以通过断开对应的支持层连接来简单释放AA。预先建立的AA不能被释放。
COSEM-ABORT服务导致非正常断开AA,可能丢失传输中的信息,COSEM-ABORT服务不依赖于ACSE A-ABORT服务。
2.2.3xDLMS应用服务组件
要访问COSEM对象的属性和方法,使用xDLMS ASE的服务。它基于DLMS标准,DL/T 790.441—2004。本文档规定了扩展功能的范围,同时保持向后兼容性。扩展包括以下内容:
——追加服务;
——追加机制;
——追加的数据类型;
——新DLMS版本号;
——新一致性块;
——澄清PDU大小的含义。
2.2.4层管理服务
图11显示了COSEM应用层顶部适用的服务一览,没有示出层管理服务。尽管客户机侧和服务器侧的服务原语不同,但APDU是相同的。