鲍忠贵、刘贵全等编著的《抽象语法记法ASN.1原理与应用》不仅详细描述了ASN.1抽象语法,而且在编码规则方面也给出了很细致的讲解。
本书主要对ASN.1的抽象语法和编码规则进行了描述和研究,旨在让读者对ASN.1有一个既全面又深入的认识和理解。第1章对ASN.1背景进行了回顾,并且简要介绍了其语法。第2章详细介绍了ASN.1的语法基础。第3章逐一介绍了ASN.1的各种常用类型。第4章介绍了对象的抽象语法记法。第5章首先介绍了ASN.1语法的参数化赋值,然后介绍了其约束规范。第6章关于ASN.1编码规则,主要介绍了基本编码规则、非典型编码规则、正则编码规则以及紧缩编码规则。第7章给出了几个应用实例,为读者进一步领悟ASN.1提供了很好的平台。第8章针对ASN.1语法与常用的C语言进行了映射。最后,附录部分给出了一些应用程序来帮助读者理解ASN.1。
本书主要面向那些从事协议规范或基于ASN.1的协议实现方面的读者。无论读者是刚刚接触ASN.1还是对ASN.1已经有了较深的认识,认真研读本书,都将在这方面获得新的认识和突破。
鲍忠贵、刘贵全等编著的《抽象语法记法ASN.1原理与应用》主要对信息技术中常用的ASN.1的抽象语法和编码规则进行了描述和研究,旨在让读者对ASN.1有一个既全面又深入的认识和理解。第1章对ASN.1背景进行了回顾,并且简要介绍了其语法。第2章详细介绍了ASN.1的语法基础。第3章逐一介绍了ASN.1的各种常用类型。第4章介绍了对象的抽象语法记法。第5章首先介绍了ASN.1语法的参数化赋值,然后介绍了其约束规范。第6章关于ASN.1编码规则,主要介绍了基本编码规则、非典型编码规则、正则编码规则以及紧缩编码规则。第7章我们还提供了几个应用实例,为读者进一步领悟ASN.1提供了很好的平台。第8章针对ASN.1语法与常用的C语言进行了映射,最后,附录部分我们给出了一些应用程序来帮助读者理解ASN.1。
《抽象语法记法ASN.1原理与应用》主要面向那些从事信息技术开发、信息化标准研究的学者和工程技术人员,特别是正在从事协议规范研究或基于ASN.1的协议实现方面的读者。
第1章 抽象语法记法概述
1.1 问题的背景
1.2 ASN.1简介
1.3 ASN.1和网络协议
第2章 ASN.1语法基础
2.1 词汇及词法约定
2.1.1 字符集
2.1.2 词项
2.2 文法
2.2.1 产生式
2.2.2 标签
2.2.3 模块定义
2.2.4 类型和值的定义与赋值
第3章 ASN.1类型
3.1 一个例子
3.2 基本类型
3.2.1 布尔类型
3.2.2 整数类型
3.2.3 枚举类型
3.2.4 实数类型
3.2.5 位串类型
3.2.6 八位位串类型
3.2.7 字符串类型
3.2.8 空类型
3.3 时间类型
3.3.1 通用时间
3.3.2 世界时间
3.4 隐式和显式标签类型
3.4.1 隐式标签类型
3.4.2 显式标签类型
3.5 组合类型与扩展类型
3.5.1 标签
3.5.2 结构类型
3.5.3 选择类型
3.5.4 类型扩展
3.6 其他类型
3.6.1 嵌入式PDV类型EMBEDDED PDV
3.6.2 外部类型EXTERNAL
第4章 信息对象的抽象语法记法
4.1 ASN.1词项
4.2 引用定义
4.3 对象类定义和赋值
4.4 语法表
4.5 对象定义和赋值
4.6 对象集合定义和赋值
4.7 关联表
4.8 对象类别字段类型记法
4.9 来自对象的信息
4.10 应用示例
4.10.1 简化的OPERATION类别用法举例
4.10.2 “Object Class Field Type”用法举例
4.10.3 对象和对象集合的用法举例
第5章 参数化赋值与约束
5.1 ASN.1规范的参数化
5.1.1 参数化定义
5.1.2 参数化赋值
5.1.3 引用参数化的定义
5.1.4 抽象语法参数
5.2 约束规范
5.2.1 一般约束规范
5.2.2 子类型约束
5.2.3 用户定义的约束
5.2.4 表约束,包括成分关系约束
5.2.5 内容约束
5.2.6 应用示例
第6章 抽象语法记法编码规则
6.1 基本编码规则(BER)
6.1.1 简单定长方法
6.1.2 结构化定长方法
6.1.3 结构化非定长方法
6.1.4 BER编码
6.1.5 示例
6.2 非典型编码规则(I)ER)
6.3 正则编码规则(CER)
6.4 压缩编码规则(PER)
6.4.1 PER与BER的比较
6.4.2 PER编码
6.4.3 示例
6.5 XML
6.5.1 XML简介
6.5.2 XML编码规则(XER)
6.5.3 ASN.1到XML Schema的映射
6.6 其他编码规则
6.6.1 LWER
6.6.2 BADnet
6.6.3 OER
6.6.4 SER
第7章 应用实例
7.1 ASN.1编码器
7.1.1 ASN.1编译器的定义
7.1.2 一个ASN.1编译器的设计和实现(C实现)
7.2 基于ASN.1的应用层网络协议的开发实例
7.2.1 抽象表示法
7.2.2 DER编码
7.3 基于ASN.1的网络管理协议SNMP应用
7.3.1 SNMP基础知识
7.3.2 ASN.1描述管理信息结构(SMI)
7.4 ASN.1在视频会议系统中的应用
7.4.1 HI 323协议简介
7.4.2 H.245协议消息
7.5 ASN.1在雷达系统数据交换中的应用
7.5.1 雷达系统简介
7.5.2 实验编码流程
7.5.3 各种编码方法实现及比较
7.5.4 结果分析
第8章 ASN.1到C的记法映射
8.1 固有类型
8.1.1 整型
8.1.2 布尔类型
8.1.3 枚举类型
8.1.4. 实型
8.1.5 空类型
8.1.6 位串类型
8.1.7 UTF8字符串、IA5字符串、可打印字符串、可见字符串
8.1.8 通用时间
8.1.9 世界时间
8.1.10 对象标识符类型
8.1.11 对象描述符类型
8.2 构造类型
8.2.1 选择类型
8.2.2 序列类型
8.2.3 集合类型
8.2.4 单一序列类型
8.2.5 单一集合类型
8.2.6 组件类型
8.2.7 任意类型
8.2.8 子类型
8.3 值的映射
8.4 类型定义和值定义的映射
8.5 映射规则的实现
附录 参考程序
A1 ASN.1应用层协议参考程序
A2 ASN.1在SNMP网络管理协议应用示例
参考文献