版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、IEC62056的技术文件ASN.1语法简介深圳航天泰瑞杰电子有限公司修订记录版本日期,作者评论1 .02012-5-23梁高强初版范围:本文对IEC62056系列标准中涉及的ASN.1语法进行了简要总结,便于开发工程师阅读和理解DLMS/COSEM通信协议。目录1.什么是1?ASN.1 52.助理秘书长1历史53.应用领域54.ASN.1语法75.ASN.1显式值)76.ASN.1容器77.ASN.1修饰符87.1。可选)87.2。默认值)87.3。CHOICE)88.标题字节(标签)88.1。类别位98.2。结构化位98.3。原始类型99.ASN.1长度编码109.1。固定长度方法109.
2、1.1。短代码。109.1.2。长代码。119.2。不定长模式1110.asn.1的数据类型1 110.1。ASN.1布尔型1210.2。ASN.1整数类型1210.3。ASN.1位字符串类型1310.4。ASN.1八位字节字符串类型1310.5。空的14型10.6。对象标识符类型1410.7。ASN.1序列和集合类型1410.8。ASN.1可打印字符串和IA5String类型1510.9。ASN.1 utc型ASN.1语法简介1.什么是asn.1?ASN.1的全称是抽象语法符号点1,而抽象语法1(ISO在ASN之后加上数字1以保持ASN的开放,以便将来功能更强大的ASN可以命名为ASN.2,
3、但它还没有出现)是一种描述网络上传输的消息的独立于机器的描述语言。一般来说,抽象语法是ASN.1规范描述的描述文本,这里涉及到另一种语法:传输语法,它是实际通信系统之间的代码流。例如,字母A是抽象语法,0X41是传输语法。2.ASN.1历史从1982年开始,许多开发应用层标准的人意识到他们面临着同样的问题:数据结构变得越来越复杂,很难用预定的规则来编码位或字节。ASN.1就是由此诞生的。它特别适合于在现代通信应用中表示复杂的、可变的和可扩展的数据结构。它不是由一些表格和一些固定的框架格式描述的,而是由一种抽象语法语言描述的。这样做的优点是极大地提高了协议的抽象性、通用性和可扩展性。3.应用领域
4、在GSM系统中,通过空中接口传输的补充业务内容采用ASN.1的误码率编码格式,其RRM模块和其他三层消息采用ASN.1编码。3G移动系统使用具有ASN.1标准数据交换的第三代移动通信网络。该系统基于通用移动通信系统(UMTS)标准,使用ASN.1和分组编码标准(PER)。在3GPP的第3层消息系统中,ASN.1用于描述第3层消息(包括Uu、Iub、Iur、Iu和其他接口的第3层消息),ITU-T X.691推荐的各种算法用于编码和解码。例如,无线资源控制消息采用超级编码格式。IP语音在通信领域的另一个重要应用是通过分组交换网络(如互联网)传输语音数据。多媒体数据信号编解码器标准(H.323等。
5、)是基于ASN.1的,并用于块编码标准以获得理想的数据传输速率。安全应用程序互联网安全授权也使用ASN。1 .高级编码标准在数据表示方面形成了一个方便的、独立于平台的标准,优于加密。公钥基础设施、PKCS和509也是一个熟悉的标准,它也基于ASN.1长期以来,传统通信网络和基本编码规则一直在主要通信领域流行。所有ss7到ISDN都使用ASN.1 BER信息在各种类型的设备和计算机之间传输信号。军事和空间应用美国航天局也在其航空通信网络规范中使用ASN.1和块编码规则作为空对地或地对空协议。下图显示了DLMS的应用程序:使用ASN请求服务原语。1描述如下AARQ-apdu :3360=应用0隐式
6、序列协议-版本0INCLUDE BIT STRING version 1(0) DEFAULT version 1 ,应用程序上下文名称1应用程序上下文名称,被称为-接入点标题2接入点标题可选,名为-AE-限定词3AE-限定词可选,被叫-接入点-调用-id4接入点-调用-标识符可选,被叫设备调用标识5设备调用标识可选,呼叫-接入点-标题6接入点-标题可选,呼叫自动识别限定符7自动识别限定符可选,呼叫-接入点-调用-id 8接入点-调用-标识符可选,调用-调用-标识9调用-标识符可选,如果只使用内核,则以下字段不存在。发送方-acse-要求10隐式ACSE-要求可选,-仅当选择了认证功能单元时,
7、以下字段才应出现。机制名11INCLUDE机制名可选,-仅当选择了认证功能单元时,以下字段才应出现。调用-身份验证-值12显式身份验证-值可选,实现-信息29隐式实现-数据可选,用户信息30隐式关联信息可选4.ASN.1语法ASN.1语法遵循传统的巴科斯范式BNF风格,最基本的表达式如:名称:=类型。表示为定义某个名称为名字的元素,它的类型为类型。例如:MyName :=IA5String。表示为定义了一个名为我的名字的元素或变量,其类型为ASN.1类型IA5String(类似于美国信息交换标准码字符串)。一个用ASN.1语法描述的数据帧,看上去应该是下面的样子:名称:=标记隐式/显式数据类型
8、空-数据0隐式空,项目11INCLUDE/ExplicIt数据类型A1 OPTIONAL项目22隐式/显式数据类型主动脉第二声可选项目33数据类型5.ASN.1显式值(显式值)有些时候,我们需要定义一种ASN.1类型,它的子集元素包含预定义值名称:=类型(显式值)。显式值(显式值)必须是ASN.1类型允许选择的值,而且也必须是元素所允许的值。例:我的名字:=IA5String(汤姆)表示我的名字是字符串汤姆的IA5String编码。又例如:我的名字:=IA5String(汤姆|乔)表示字符串的值既可以是汤姆,也可以是乔。这种语法的使用是为了扩展确定的解码器,例:数据访问结果:=枚举成功(0)硬
9、件剥离(1)暂时故障(2)读写被拒绝(3)其他原因(250)6.ASN.1容器容器是值一个包含了其他相同或者不同类型元素的数据类型(例如序列值顺序或集合值器械包类型).目的是为了组合一些复杂的数据类型集。ASN.1规范定义了4种容器类型:序列,单一序列(序列),集合和单一集合(套).虽然它们意义不同,但是语法是一样的。名称:=容器名称类型名称类型】。方括号中的内容和容器的元素个数都是可选项。还可以进行嵌套定义。例:通过列表获取请求:=序列调用标识和优先级调用和优先级陪集属性描述符列表序列7.ASN.1修改器ASN.1定义了各种修改器,如可选(可选),默认(DEFAULT),和选择(CHOICE
10、)。他们可以改变表达式的声明。典型地用于定义一种要求编码灵活,而定义又不繁琐的类型。7.1 .可选(可选)顾名思义,其表示改变一个元素以便在编码时它的类型是可选择的。即编码器可以忽略这个元素,解码器不能假设它将出现。定义:名称:=可选类型7.2 .默认(默认值)默认修改器允许容器包含默认值。如果待编码的数据值等同于它的默认值,那么它将在发送的数据流中被忽略。7.3 .选择(CHOICE)选择修改器允许一个元素在给定的实例中可以有多个可能值。获取-响应:=选择获取-响应-正常1隐式获取-响应-正常用数据块获取响应2隐式用数据块获取响应列表获取响应3隐式列表获取响应8.ASN.1头字节(标签)He
11、arder字节位于ASN.1编码的开头,通常是一个八位字节,由三部分组成,有以下两种形式,如下图所示:当标签不超过30时,标签仅在一个八位字节中编码。当标签大于30时,标签以多个八位字节编码。当以多个二进制八位数编码时,第一个二进制八位数的最后五位都是1,而其余二进制八位数的最高位是1,表示将有后续操作,0表示标记结束。8.1。类别位分类位由两位表示,用于描述数据将被解释的上下文。第7位第6位类别和解释00通用的01应用程序10特定于上下文(特定于上下文)11私人(私人)在所有类型中,一般类别是最常用的。8.2。结构化位构造位指示给定代码是否由同一类型的多个代码构成。容器类型需要结构化元素,因
12、为从逻辑上讲,它们只是其他元素的集合。结构化元素有自己的头字节和长度字节,其后是元素的每个元素组件的单独编码。也就是说,这些元素组件是可独立解码的ASN。1数据类型。严格来说,容器类是唯一允许使用结构化位的数据类型。这是因为对于其他数据类型,给定内容只允许一种编码。因此,所有其他数据类型的结构化位都是0。8.3。原始类型ASN.1报头字节的低5位定义了32个ASN。1的原始类型密码ASN .1类型影响1布尔型存储布尔值2整数存储整数3位串存储位阵列4八位字符串存储字节数组5空的保留位(例如,在选择修改器中)6对象标识符识别算法和协议16序列和单序列未分类元素的容器17集合和单个集合分类元素容器19可打印字符串ASCII编码(忽略一些不可打印的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年太原幼儿师范高等专科学校单招职业适应性考试题库附答案详解(完整版)
- 2026年天津滨海职业学院单招职业倾向性考试题库及完整答案详解1套
- 2026年天津医学高等专科学校单招职业适应性测试题库附参考答案详解(基础题)
- 2026年秋季注册环保工程师培训专项训练试卷含答案
- 门窗行业培训教材
- 2025年传染病、食源性疾病及肿瘤信息上报管理培训考核试题及答案
- 2025年托幼机构卫生保健人员培训试题及答案
- 2026年塔里木职业技术学院单招职业适应性考试题库及答案详解(考点梳理)
- 2026年宁波财经学院单招职业适应性测试题库含答案详解(巩固)
- 2026年四川邮电职业技术学院单招职业倾向性测试题库及参考答案详解一套
- 人工智能在智能家居应用
- 机制砂场生产管理制度
- 针灸安全规范管理制度
- 医疗设备采购与招标流程
- 雨课堂学堂在线学堂云中华戏曲艺术鉴赏华侨单元测试考核答案
- 2025中国高等教育学会秘书处招聘6人备考题库(非事业编制北京)附答案
- 2026春节复工复产安全第一课
- 2025年文化旅游节庆活动项目可行性研究报告
- 2026年开封大学单招职业适应性考试必刷测试卷带答案
- 第2课《做事要仔细》(名师课件)
- DB61∕T 2103-2025 砖瓦用页岩矿资源储量核实技术规范
评论
0/150
提交评论