分类:
2010-03-05 00:08:15
Telecontrol Application Service
Element (TASE.2)
Inter-Control Centre Communications Protocol (ICCP)
将ACE与VC6集
TASE.2 consists of three
documents
Abstract Syntax Notation 1
(ASN.1)
( ISO/IEC 8824 and 8825 )
ISO/IEC 8824-1:1998, Information
technology - Abstract Syntax Notation One (ASN.1): Specification
of
basic notation
ISO/IEC
8824-2:1998, Information technology - Abstract Syntax Notation One (ASN.1):
Information object
specification
ISO/IEC 8825-1:1998, Information technology - ASN.1 encoding rules:
Specification of Basic Encoding
Rules (BER), Canonical
Encoding Rules (CER, and Distinguished Encoding Rules
(DER)
ISO/IEC 8825-2:1998, Information technology -
ASN.1 encoding rules: Specification of Packed Encoding
Rules (PER)
ISO/ISP 14226-1:1996 Industrial automation
systems -- International Standardized Profile AMM11:
MMS
General Applications Base Profile -- Part 1: Specification of ACSE,
Presentation and Session protocols for use by MMS
ISO/ISP 14226-2:1996 Industrial automation
systems -- International Standardized Profile AMM11:
MMS General Applications Base Profile -- Part 2: Common MMS requirements
ISO/ISP 14226-3:1996 Industrial automation
systems -- International Standardized Profile AMM11:
MMS General Applications Base Profile -- Part 3: Specific MMS
requirements
学习好地方
(有些参考论文)
http://corba.blogbus.com/index.html
(个人blog)
ASN.1 --- MMS ----ICCP
-----IEC
61850
==========================================
编码的基本原则是类型—长度—值的三段式结构,简称TLV(Type
— Length--Value)结构。
ASN.1编码的基本型结构和递归型结构
ASN.1 TAG含义:
ASN.1有四种类型:
可以使用ASN.1的分配符(::=)给类型和值指定名字,这些名字可以用于定义其它类型或值。
除了CHOICE和ANY类型以外,每种ASN.1类型都有一个标签,由一个类和一个非负的标签数组成。标签值可以唯一区分ASN.1类型。也就是说,ASN.1类型的名字并不影响它的抽象含义,只有标签值才有这个作用。有四类标签:
MMS中
Bits 7,6 Bit 5 Description, key
words
-------- ----- -------------------------
0 0
0 Description: Universal Tag,
Primitive
Example keywords: INTEGER,
BITSTRING, BOOLEAN
0 0 1 Description: Universal Tag,
Constructed
Example keyword:
SEQUENCE, SEQUENCE OF
1 0 0 Description: Context
Specific, Primitive
Example Keyword:
IMPLICIT
1 0 1 Description: Context Specific,
Constructed
Example Keywords:
IMPLICIT SEQUENCE
IMPLICIT SEQUENCE
OF
-----------------------------------------------------------------------------------------
识别符由小写字母开头,类型索引由大写字母开头。
类型索引由大写字母开头。
简单类型(Simple types)
结构化类型:
隐式和显式标签类型:
其他类型:
包括CHOICE和ANY类型。
基本编码规则BER(Basic Encoding Rules)
三种编码方法
简单的non-string类型使用第一种(简单、定长编码);结构类型可使用任一种结构化的编码方法;简单的string类型根据值的长度是否已知可使用任一种方法。隐式标签定义的类型可使用下层类型的方法,显式标签定义的类型使用结构化的编码方法。
每种BER编码方法都有三或四部分:
简单定长方法(Primitive, definite-length method)
这种方法用于简单类型及通过对简单类型使用隐式标签生成的类型。它要求值的长度是事先预知的
1.Identifier octets,有两种形式:较小的标签值(标签值在0和30之间)和较大的标签值(标签值大于等于31)
Class
Bit 8 Bit 7
universal
0 0
application
0 1
context-specific 1 0
private
1 1
2.Length octets:有两种格式:短型(长度在0至127之间)和长型(长度在0至21008-1之间)
3.Contents octets:给出了值的具体表示(如果类型是由隐式标签定义的,则给出了下层类型的值)
结构化的、定长方法适用于简单的string类型、结构类型、在二者基础上通过隐式标签生成的类型和在任何类型基础上由显式标签生成的类型。要求值的长度事先已知。BER编码方法各部分如下:
1.Identifier octets:与第3.1节介绍的一样,但bit6的值为1,表示编码方法是结构化的。
2.Length octets:见第3.1节。
3.Contents octets,值的组件的BER编码的串联
3.3 结构化非定长方法(Constructed, indefinite-length method)
结构化的、非定长编码用于简单string类型、结构类型、在二者基础上使用隐式标签生成的类型和在任何类型基础上使用显式标签生成的类型。不要求事先知道值的长度。BER编码各部分如下:
由于end-of-contents octet出现在通常普通BER编码出现的位置(例如,在一个sequence值的内容octet出现的位置),可把
00和00分别视为identifier和length octet。因此end-of-contents octet实际上是一个具有
universal class,标签值为0,长度为0的值的简单定长编码。