LTE_Uu接口协议栈中ASN_1模块的设计与应用
DSRC协议ASN.1模块的设计与实现
第2 8卷 第 6期
20 0 8年 6 月
文章编号 :0 1 9 8 (0 8 0 10 — 0 1 20 )6—19 0 4 0— 4
计 算机 应 用
Co u e p iai n mp t rAp lc to s
Vo . . 128 No 6
J n 0 8 u e2 0
DR S C协 议 A N 1模 块 的 设 计 与 实 现 S.
唐 波 , 王 能
( 华东师范大学 信息科学技术学院 , 上海 20 4 ) 0 2 1
(b i s 13 cr) tws @ 6 .o e n
摘
要: 通过研 究专用短程通信( S C 协议栈 中的应 用层部 分 , 对其 中的 A N. P R编解码模块 , 计并 实 DR ) 针 S 1 E 设
现 了一种编解码框 架, 架包括 A N 1映射规 则、 框 S. 通用编解码流程 以及符合 小设备应 用的 内存 管理机制 。良好 的模 块划分使得此框架具有较好的通 用性 。测 试结 果表 明, 此实现框 架具有 良好 的性 能, 满足协议的实时性要 求。 关键词 : 专用短程通信 ; S . ;紧缩编码 规则 ;内存管理 A N1
式减少冗余 :
1 省略类型字段 : ) 由于通信 双方有 着互 相兼容 的 A N 1 S .
描述 , 接收方总是可以通过参考 A N 1描述 来获知编码域 中 S. 各个字段是哪种类型的 内容 ; 2 精简长度字 段 : 于定值 的长度 字段 , E ) 对 P R可 以省略 编码 ; 并且长度字段 的单位根据编码对象 的不 同可 以是位 、 字
s o t a h r me r a o d pef r n c , a tme t h e ・i e uie n ft e p o o o . h w h tt e fa wo k h sg o ro ma e nd i e st e r a tme r q r me to ae nt t yo teapi t nl e f ei t hrR neC m u i t n( S C rt o s c , bt c:B sdo es d fh pl a o yr dc e S ot ag o m n ai D R )po clt k r h u ci a oD a d c o o a
N[1].1编解码模块在LTE协议栈中的研究与应用
要进行特殊的处理。 3)对RRC消息的赋值不仅存在于解码过程中,LTE 协议栈高层也需要对RRC消息进行赋值,并将赋值的 RRC消息交由编解码模块进行编码。因此,将内存管理 作为一个独立的模块。并供LTE协议栈高层调用,可以 保证数据的一致性。 内存管理模块的设计基于“多次申请,一次释放”的 原则.使用一个数组作为ASN.1编解码模块的专用内存 区.并用一个偏移变量指向当前可用的内存,提供3个 函数。分别是初始化函数、内存分配函数以及内存释放 函数。解码过程及LTE协议栈高层对RRC消息赋值所 需要的内存均在专用内存区中按顺序申请,待完成一次 解码任务或编码任务后统一释放内存,开销仅为D(1)。
l Wide band network l贲带网络
文章编号:1002—8692(201 1)01---0070--04
口日匹亘耍雯亟圜
ASN.1编解码模块在LTE协议栈中的 研究与应用
李小文。冉靖
(重庆邮电大学计算机科学与技术学院,重庆400065) 【摘 要】ASN.1能实现异构系统之间的信息交换,用它描述的信息独立于任何应用环境,开发LTE协议栈软件必须设计并实现针
l—l l—I :[匝]÷_忙卫i:
;[巫二H_书]妇:;
i
: :
I
I
Gen.
:[亘[]叶—[卫::
闻1
l
:
Partnership Pmject)的TD—SCDMA(Time Division
ITF柠制而协议转结构图
Synchronous
CDMA)系统11l和LTE系统。I.TE系统采用
ASN.1来描述窄中接口的层3的RRC消息。笔者针对
的基本信息单元是指由ASN.1结构类型所构成的RRC
LTE网络架构和协议栈
LTE网络架构和协议栈随着移动通信技术的不断发展,LTE(Long Term Evolution)成为4G移动通信的主流技术。
LTE网络架构和协议栈是构建LTE系统的核心组成部分,下面将对LTE网络架构和协议栈进行详细介绍。
一、LTE网络架构LTE网络架构由两部分组成:E-UTRAN(Evolved UMTS Terrestrial Radio Access Network)和EPC(Evolved Packet Core)。
1. E-UTRAN(Evolved UMTS Terrestrial Radio Access Network)E-UTRAN是LTE系统的无线接入网络,包括基站和与之相连的核心网。
基站被称为eNodeB,负责无线信号的传输和接收。
eNodeB通过X2接口相连,用于基站之间的信号传输和协同。
与核心网的连接通过S1接口实现,包括控制面和用户面的传输。
2. EPC(Evolved Packet Core)EPC是LTE系统的核心网络,负责用户数据的传输和控制信息的处理。
EPC由三个主要组成部分构成:MME(Mobility Management Entity)、SGW(Serving Gateway)和PGW(Packet Data Network Gateway)。
MME负责移动性管理和控制平面的处理;SGW负责用户数据的传输;PGW连接到外部数据网络,负责数据分组的处理和路由。
二、LTE协议栈LTE协议栈由各种协议组成,实现系统中不同层次之间的通信和控制。
LTE协议栈按照OSI(Open Systems Interconnection)参考模型分为七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
1. 物理层物理层负责数据的传输和调制解调。
LTE使用OFDM(Orthogonal Frequency Division Multiplexing)技术进行信号的调制和解调,以提高传输效率和抗干扰性能。
ASN.1在网络管理中的应用研究
【A b s t r a c t】 T h e A S N . 1 l a n g u a g e d e i f n e s s t r u c t u r e o f m a n a g e m e n t i n f o r m a t i o n , m a n a g e m e n t i n f o ma r t i o n b a s e , s i m p l e n e t w o r k m a n a g e m e n t p r o t o c o 1 .
【K e y w o r d s】 A S N . 1 : S M I ; M I B ; S N M P
1 简介
在 电 信 和 计 算 机 网 络 领 域 ,抽 象 语 法 标 记 语 言
( Ab s t r a c t S y n t a xNo t a t i o no n e , AS N. 1 是 一套 标准 ,是 描 述 数 据 的表 示 、 编码 、 传输 、 解 码 的灵 活 的记 法 。它 提供 了一 套正 式 、 无 歧 义 和精 确 的规则 形 式化 描 述独 立 于特 定计算 机 硬件 的对 象结 构 。 简单 网络 管理 协议 ( S i mp l e Ne t wo r k Ma n a g e me n t P r o t o c o l , S N MP )构 成 了 互 联 网 工 程 工 作 小 组 ( I n t e r n e t E n g i n e e r i n g T a s k F o r c e, I E T F )定义 的 I n t e r n e t 协议 簇 的
ASN.1
ASN.1在网络管理中的应用研究作者:刘雪飞吴伯桥凌涛来源:《信息安全与技术》2013年第06期【摘要】 ASN.1语言定义了网络管理信息结构、网络管理信息库、简单网络管理协议。
以这些网络管理相关RFC文档为例,对应用于网络管理中的常用ASN.1语法进行了总结性研究。
【关键词】抽象语法标记语言;网络管理信息结构;网络管理信息库;简单网络管理协议【中图分类号】 TP393 【文献标识码】 A1 简介在电信和计算机网络领域,抽象语法标记语言(Abstract Syntax Notation one, ASN.1)是一套标准,是描述数据的表示、编码、传输、解码的灵活的记法。
它提供了一套正式、无歧义和精确的规则形式化描述独立于特定计算机硬件的对象结构。
简单网络管理协议(Simple Network Management Protocol, SNMP)构成了互联网工程工作小组(Internet Engineering Task Force ,IETF)定义的Internet协议簇的一部分。
该协议支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。
它由一组网络管理的标准组成,包含一个应用层协议SNMP、管理信息结构(Structure of Management Information, SMI)和网络管理信息库(Management Information Base , MIB)。
本文通过对以上网络管理相关的RFC文档的研究,总结了ASN.1的基本使用规则。
2 管理信息结构文档(RFC1155)RFC1155主要定义了TCP/IP网络中网络管理信息的结构和标识,其定义主要使用ASN.1通用的数据类型。
网络是由一个一个基本对象组成,这些基本对象可以概括为多种对象类型,要描述对象类型,通常要有对象类型的名字、语法和编码。
ASN.1中的OBJECT IDENTIFIER类型,它是一种为管理方便而分配的以”.”号分割的数字序列,该数字序列唯一定义了在网络中的对象类型。
ans1语法
ans1语法
ASN.1(Abstract Syntax Notation One)是一种接口定义语言,用于描述数据结构的语法。
它是一种标准化的语法,用于描述数据交换的格式和结构。
ASN.1定义了数据类型、数据结构、数据元素的规则和符号,使得不同系统和应用程序之间能够进行互操作。
ASN.1的基本语法规则包括以下几点:
1.数据类型:ASN.1定义了基本的数据类型,如 INTEGER、BOOLEAN、BIT
STRING、OCTET STRING、NULL、REAL等。
2.数据结构:ASN.1使用记录(RECORD)、序列(SEQUENCE)、集合
(SET)等数据结构来描述复杂的数据类型。
3.标签和长度:在ASN.1中,每个数据元素都有一个标签和一个长度。
标签
用于标识数据元素,长度用于表示数据的长度。
4.约束:ASN.1定义了各种约束,如值约束、大小约束、存在约束等,用于限
制数据元素的取值范围和表现形式。
5.模块化:ASN.1支持模块化定义,可以将一组相关的数据类型和数据结构定
义在一个模块中,以便重用和共享。
在实际应用中,可以使用各种工具和软件来生成代码、检查语法和生成文档等。
这些工具可以帮助开发人员更轻松地使用和管理ASN.1定义的数据结构和数据类型。
ASN1讲解
► DER(ASN.1
Distinguished Encoding Rules)
BER的子集,定义了唯一一种方法,使用ASN.1语法将数 BER的子集,定义了唯一一种方法,使用ASN.1语法将数 据对象转换成二进制字节码
BER
DER
ASN.1背景 ASN.1背景
► 特点
标准性 高效性 扩展性 比其他任何一种语言更为丰富的数据结构
► OctetString
任意的字节流,长度可以为任意值(包括0) 任意的字节流,长度可以为任意值(包括0) DEROctetString
byte[] data = ... ; DEROctetString derOctetString = new DEROctetString(data);
ASN.1编码介绍 ASN.1编码介绍
DERInteger version = new DERInteger(new BigInteger(2));
ASN.1编码介绍 ASN.1编码介绍
► OID编码示例 OID编码示例
pkcspkcs-1 OBJECT IDENTIFIER ::= { iso(1) member-body(2) US(840) rsadsi(113549) pkcs(1) 1 } memberrsaEncryption OBJECT IDENTIFIER ::= { pkcs-1 1 } pkcsSHA1WithRSAEncryption OBJECT IDENTIFIER ::= { pkcs-1 5 } pkcs提示 1.2.840.113549.1.1.5 提示 ... 06 09 2A 86 48 86 F7 0D 01 01 05 ...
ASN.1基本概念和语法 ASN.1基本概念和语法
lte,uu接口协议栈
lte,uu接口协议栈篇一:LTE-Uu口信令流程详解汇总LTE空口信令流程详解以及相关优化案例汇总 1、附着信令流程1.1 、Attach附着信令流程(统计时延:红色的为开始和结束信令)EPS MMEPS MMUL CCCHDL CCCHUL DCCHDL DCCHDL DCCHUL DCCHEPS MMEPS MMEPS MMEPS MMUL DCCHDL DCCHEPS MMEPS MMEPS MMEPS MMUL DCCHDL DCCHUL DCCHDL DCCHDL DCCHUL DCCHEPS MMEPS MMEPS SMEPS SMEPS MMEPS MMUL DCCHDL DCCHUL DCCHAttach request Unknown(0x0734) rrcConnectionRequest rrcConnectionSetup rrcConnectionSetupCompleterrcConnectionReconfiguration dlInformationTransfer rrcConnectionReconfigurationComplete Security protected NAS message Authentication request Authentication response Unknown(0x077B) ulInformationTransfer dlInformationTransfer Security protected NAS message Security mode command Security mode complete Unknown(0x0790) ulInformationTransfer ueCapabilityEnquiry ueCapabilityInformation securityModeCommand rrcConnectionReconfiguration rrcConnectionReconfigurationComplete Security protected NAS message Attach accept Activate default EPS bearer context request Activate default EPS bearer context accept Attach complete Unknown(0x072D) ulInformationTransfer rrcConnectionReconfiguration rrcConnectionReconfigurationCompleteattach.xlsAttach信令流程详解1.2、Detach去附着信令流程(统计时延:红色的为开始和结束信令)EPS MMEPS MMDL DCCHEPS MMEPS MMDL DCCHEPS SM Detach request Unknown(0x0734) ulInformationTransfer dlInformationTransfer Security protected NAS message Detach accept rrcConnectionRelease PDN connectivity requestdeatch.xlsDetach信令流程详解2、呼叫业务信令流程2.1、UE主叫信令流程(统计时延:红色的为开始和结束信令)EPS MMUL CCCHDL CCCHUL DCCHDL DCCHUL DCCHDL DCCHUL DCCHDL DCCHUL DCCH Extended service request rrcConnectionRequest rrcConnectionSetup rrcConnectionSetupComplete rrcConnectionReconfiguration rrcConnectionReconfigurationComplete securityModeCommand rrcConnectionReconfiguration rrcConnectionReconfigurationComplete rrcConnectionReconfiguration rrcConnectionReconfigurationCompleteUE 主叫信令.xlsUE主叫信令流程详解2.2、UE被叫信令流程(统计时延:红色的为开始和结束信令)DL PCCHEPS MMUL CCCHDL CCCHUL DCCHUL DCCHDL DCCHDL DCCHUL DCCHDL DCCHUL DCCH Paging Extended service request rrcConnectionRequest rrcConnectionSetup rrcConnectionSetupComplete rrcConnectionReconfiguration rrcConnectionReconfigurationComplete securityModeCommand rrcConnectionReconfiguration rrcConnectionReconfigurationComplete rrcConnectionReconfiguration rrcConnectionReconfigurationCompleteUE 被叫信令.xlsUE被叫信令流程详解3、重选与切换信令流程3.1、小区重选信令流程DL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCH systemInformationBlockType1 systemInformation systemInformationBlockType1 systemInformationBlockType1 systemInformation systemInformationBlockType1 systemInformationBlockType1 systemInformationBlockType1重选.xls重选信令流程详解3.2、基站内同频切换信令流程(统计时延:红色的为开始和结束信令)UL DCCHDL DCCHUL DCCHDL DCCHUL DCCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCHDL BCCH:DL SCH measurementReport rrcConnectionReconfiguration rrcConnectionReconfigurationComplete rrcConnectionReconfiguration rrcConnectionReconfigurationComplete systemInformationBlockType1 systemInformationBlockType1 systemInformationBlockType1 systemInformationBlockType1 systemInformation基站内同频切换信令流程详解基站内同频切换信令.xls3.3、基站间同频切换信令流程(统计时延:红色的为开始和结束信令)UL DCCHDL DCCHUL DCCHDL BCCH:DL SCHDL DCCHUL DCCH measurementReport rrcConnectionReconfiguration rrcConnectionReconfigurationCompletesystemInformationBlockType1 rrcConnectionReconfiguration rrcConnectionReconfigurationComplete基站间同频切换信令流程详解基站间同频切换信令.xls 4、跟踪区域更新信令流程4.1、新小区所属跟踪区域不在终端跟踪区域列表中信令流程4.2、周期性跟踪区域更新信令流程篇二:TDD-LTE协议栈-下篇-空口协议TDD-LTE协议栈-下篇-空口协议协议栈-下篇下篇:1无线侧接口协议2.核心网侧接口协议一、无线侧接口协议1.1S1接口1.2 S1篇三:LTE培训材料-7 LTE接口协议分析一、LTE接口概述——LTE系统总体架构EPS通过IP连接是用户通过公共数据网(PDN)接入互联网,以及提供诸如VoIP等业务。
asn.1定义的简单类型
asn.1定义的简单类型
ASN.1是一种用于定义网络数据的国际标准,它主要用于在网络中编码数据以便于交换数据。
在ASN.1定义的简单类型中,包括布尔型,整型,实数型,枚举型,比特串型和字节串型等。
这些类型的数据是以明文的形式进行编码的。
其中,整数型可以表示浮点数,枚举型可以表示MERATED标识符,比特串型和字节串型可以表示非结构化数据。
在ASN.1的编码规则中,主要数据类型及其编码方式都是以特定的格式编码的,比如布尔型编码为0或1,整型编码为固定长度的二进制数字,实数型编码为分数形式,枚举型编码为一系列合法的枚举值,比特串型和字节串型编码为有序的序列。
总的来说,ASN.1中的简单类型定义简洁明了,编码规则明确易懂,使数据交换更加高效,同时也保障了数据的完整性和准确性。
asn1二进制数据解析获取类型
asn1二进制数据解析获取类型(原创版)目录1.ASN1 简介2.二进制数据解析3.获取类型方法4.应用示例正文【ASN1 简介】ASN1(Abstract Syntax Notation One)是一种用于表示和编码数据的抽象语法规范。
它是一种通用的数据表示方法,广泛应用于各种网络协议和数据交换格式中。
ASN1 使用二进制编码方式,可以描述多种数据类型,例如整数、浮点数、字符串、数组等。
【二进制数据解析】ASN1 编码的数据是二进制格式,通常需要经过解析才能转换为对应的数据类型。
解析过程主要包括以下步骤:1.确定数据类型:根据编码数据中的类型标签,确定数据类型。
类型标签是一个整数,表示数据类型的编码值。
例如,整数的类型标签为 0,浮点数的类型标签为 1,字符串类型标签为 2 等。
2.解析数据长度:根据编码数据中的长度指示符,确定数据长度。
长度指示符可以是一个整数,也可以是一个变长字段。
整数长度指示符表示数据长度的固定值,而变长字段则表示数据长度是可变的。
3.提取数据:根据确定的数据类型和数据长度,从编码数据中提取相应的数据。
【获取类型方法】在 ASN1 编码的数据中,可以通过类型标签获取数据类型。
类型标签是一个整数,表示数据类型的编码值。
例如,整数的类型标签为 0,浮点数的类型标签为 1,字符串类型标签为 2 等。
根据类型标签,可以确定数据的类型,从而进行相应的解析和处理。
【应用示例】假设有一个 ASN1 编码的数据:0x02010203010102030101020301,其中前两个字节表示类型标签,后两个字节表示数据长度。
根据类型标签0x02,可以确定该数据类型为浮点数。
根据数据长度 0x0101,可以确定数据长度为 3。
从原始数据中提取数据,得到浮点数:3.1415926535。
同样,对于编码数据:0x01020102010102030101020301,类型标签为0x01,表示数据类型为整数。
LTE系统中ASN.1编解码的研究与实现的开题报告
LTE系统中ASN.1编解码的研究与实现的开题报告一、选题背景和研究意义随着移动通信技术的不断发展,LTE系统(Long Term Evolution)已成为现代移动通信网络的主流技术,它将数据传输速度提高到前所未有的高度,可以满足人们对高速、高质量和多元化的通信服务需求。
在LTE系统中,ASN.1(Abstract Syntax Notation One)编解码技术扮演着至关重要的角色,它可以将网络中的各种信息进行标准化的表示,方便数据交换和互联。
本研究的目的是对LTE系统中ASN.1编解码技术进行深入研究,探索其在实现高效、可靠数据传输方面的优势和应用价值,同时还将尝试基于已有的LTE编解码器框架,实现一个符合标准的ASN.1编解码器模块,以期为现代移动通信技术的发展做出贡献。
二、研究内容和技术路线1. ASN.1编解码技术的原理和标准化意义ASN.1是一种以树状结构描述数据和数据类型的语言,它提供了一个通用的框架,可以将各种数据类型和协议数据单元(PDU)进行标准化的编解码,方便在网络中进行数据交换和传输。
本文将对ASN.1编解码技术的基本原理和标准化意义进行深入研究,以便更好地理解其在LTE 系统中的应用价值。
2. ASN.1编解码技术在LTE系统中的应用场景和技术优势ASN.1编解码技术在LTE系统中被广泛应用于控制面和用户面数据的传输,如LTE网络中各种协议数据单元(PDU)的编解码、信令的传输等。
本文将对ASN.1编解码技术在LTE系统中的应用场景和技术优势进行分析和总结,以便更好地发挥ASN.1编解码技术在LTE系统中的优势。
码器模块本研究将基于已有的LTE编解码器框架,尝试实现一个符合ASN.1编解码标准的编解码器模块,主要包括标准ASN.1格式解析器和ASN.1数据转换工具,以期提高数据传输效率和灵活性。
4. 改进和提高ASN.1编解码器的性能及调试技巧最后,本文将针对ASN.1编解码器实现过程中的问题和难点,尝试改进和提高其性能和可调试性,以便更好地应用于移动通信网络中。
ASN简介
Selection类型 Selection类型
说明:语法格式为:SelectionType ::= identifier "<" Type 说明:语法格式为:SelectionType identifier是已命名的类型,Type是一个choice类型的选项 identifier是已命名的类型,Type是一个choice类型的选项 示例: FileAttribute ::= CHOICE { date-lastdate-last-use AttributeList ::= SEQUENCE { firstfirst-attribute date-last-used < FileAttribute, date-lastsecondsecond-attribute file-name < FileAttribute } filelistOfAttributes AttributeList ::= { firstfirst-attribute 27, secondsecond-attribute "PROGRAM" }
类型分类-简单类型
简单类型:相当于原子,没有下层组件, 包括: BitString,Boolean,CharacterString,E mbeddedPDV,External,InstanceOf,Int eger,Null,ObjectClassField,ObjectIde ntifier,OctetString,Real,Tagged.
|
3.ASN.1类型定义和赋值 3.ASN.1类型定义和赋值
在ASN.1中,一个类型就是值的一个集合。有些 ASN.1中,一个类型就是值的一个集合。有些 类型有有限个值,有些则有无限多个。一个给定 的ASN.1类型的值是该类型集合里的一个元素。 ASN.1类型的值是该类型集合里的一个元素。 除了CHOICE和ANY类型以外,每种ASN.1类型 除了CHOICE和ANY类型以外,每种ASN.1类型 CHOICE ASN.1 都有一个标签,由一个类和一个非负的标签数组 成。 标签的四种类型:Universal, 标签的四种类型:Universal,Application , Private,ContexPrivate,Contex-specific
LTE-Uu接口协议栈中ASN.1模块的设计与应用
LTE-Uu接口协议栈中ASN.1模块的设计与应用
李校林;文小强
【期刊名称】《电视技术》
【年(卷),期】2010(034)010
【摘要】基于ASN.1及其UPER编码规则的理论,提出了LTE-Uu接口协议栈中ASN.1编解码模块的设计与应用方案.设计过程首先包含完整编译码所需信息的数据结构,并通过调用独立的编解码函数库,从数据结构中提取相应的参数完成解析.通过检验ASN.1编解码模块在协议一致性测试中的应用,该模块能够达到3GPP协议实际测试的要求.
【总页数】4页(P71-73,83)
【作者】李校林;文小强
【作者单位】重庆信科设计有限公司,重庆400065;重庆邮电大学,通信新技术应用研究所,重庆400065;重庆邮电大学,通信新技术应用研究所,重庆400065
【正文语种】中文
【中图分类】TN929.5
【相关文献】
1.ASN.1编解码模块在LTE协议栈中的研究与应用 [J], 李小文;冉靖
2.T.38协议栈中ASN.1模块的改进设计 [J], 赵晓华;邓秀兰;余厚全
3.LTE协议栈中ASN.1模块的设计与实现 [J], 李小文;冉靖
4.H.323协议栈中ASN.1模块的设计与实现 [J], 吕谦;黄本雄
5.T.38协议栈中ASN.1模块的设计与实现 [J], 赵晓华;余厚全
因版权原因,仅展示原文概要,查看原文内容请购买。
ASN1讲解ppt课件
DERInputStream dis = new DERInputStream(new FileInputStream(“xxx”)); DERObject derObj = dis.readObject();
DEROutputStream dos = new DEROputStream(new FileOutputStream(“xxx”)); dos.writeObject(derObject);
30
82 02 51 30 82 01 BA A0 03 02 01...
13
ASN.1基本概念和语法
► OID = Object Identifier
▪ 表示一个诸如算法,属性类型或注册机构对象定义的一 个整数序列
▪ OID的值由注册机构来赋予,每个注册机构负责定义一 个特定的序列开头的所属序列
▪ 提示 ... 02 01 02 ...
►DERInteger
DERInteger version = new DERInteger(new BigInteger(2));
16
ASN.1编码介绍
► OID编码示例
pkcs-1 OBJECT IDENTIFIER ::= { iso(1) member-body(2) US(840) rsadsi(113549) pkcs(1) 1 }
▪ 提示 如果选择certificate项,则Identifier octet项为30 ▪ 提示 如果选择extendedCertificate项,则identifier octet项是A0
24
ASN.1编码介绍
►其他常用对象
▪ DERObject implements DEREncodable ▪ DERInputStream / ASN1InputStream ▪ DEROutputStream / ASN1OutputStream
ASN.1解码器的设计与实现及其在3G中的应用
ASN.1解码器的设计与实现及其在3G中的应用
李鹏
【期刊名称】《移动通信》
【年(卷),期】2011(35)2
【摘要】文章首先解析了ASN.1协议的语法和特点,然后针对BER编解码进行了深入探讨,并提出了基于BER编码结构的解码器设计思路,最后给出了3G中ASN.1 BER编码方式话单解码器的应用示例.
【总页数】5页(P59-63)
【作者】李鹏
【作者单位】中国联合网络通信有限公司邢台市分公司
【正文语种】中文
【相关文献】
1.网络电话中ASN.1编解码器的实现研究 [J], 段大高;邓中亮
2.嵌入式VOIP系统中ASN.1编解码器的实现 [J], 袁作月;黄本雄;苏应飙
3.OSI/MMS系统中ASN.1编/解码器的设计与实现 [J], 丁心泉;顾冠群;雷静
4.基于BER的ASN.1语法编译器及编解码器实现与应用 [J], 郑伟光;万宇涛;王薇
5.ASN.1中PER解码器的设计与实现 [J], 陈乐然;杜晓宁;马海龙
因版权原因,仅展示原文概要,查看原文内容请购买。
asn1和基本编码规则解读
ASN.1和基本编码规则作者:亢朝峰业务四室摘要:该文说明了ASN.1和基本编码规则(BER)的原理和应用。
文中,首先描述了 ASN.1,并给出了几种常见类型的相应的例子,来说明ASN.1的应用;接着对基本编码规则(BER),通过对MAP中的LocationRequest的请求操作消息的参数进行编码的具体实现,来说明基本编码规则的工作原理。
总之,ASN.1和基本编码规则实际中有非常广泛的应用。
关键词:ASN.1 基本编码规则 MAP消息LocationRequestASN.1作为一种数据表示标准产生于20世纪80年代早期的开放系统互联Internet网络模型,但OSI模型并没有得到广泛的应用,而ASN.1标准继续使之发展,今天在实际中已有大量应用,这些应用包括:3G移动系统:使用ASN.1标准数据交换的第三代移动通信网络。
这一系统基于UMTS(通用移动通信系统)标准,其使用了ASN.1和分组编码标准(PER)。
IP语音:在通信领域中的另一个重要应用是通过包转换网络(如因特网)传递语音数据。
多媒体数据信号编解码器(CODEC)标准(H.323等等)基于ASN.1并且使用于分组编码标准来获取理想的数据传输速率。
安全应用:因特网安全授权同样也使用了ASN.1。
高级编码标准在数据表示方面形成了一个方便的、平台无关的标准,比加密要优越。
PKIX、PKCS和X.509也是我们所熟悉的标准,它们也是基于ASN.1的。
传统通信网络:ASN.1和基本编码规则(BER)已经在主要通信领域流行了很长一段时间,所有的ss7到ISDN的一切都使用了ASN.1 BER信息在各种类型的设备和计算机之间传递信号。
军事和空间应用:美国国家宇航局(NASA)在其航空通信网规范中,也正在使用ASN.1和分组编码规则作为空对地或地对空协议。
一、概述众所周知,抽象是解决软件开发问题的有效手段。
利用抽象,设计人员可以定义系统的一个部分而不用关注这个部门实际上是如何实现或者表达的。
ASN.1编解码运行库系统的研究
ASN.1编解码运行库系统的研究
高益;黄俊伟
【期刊名称】《电信交换》
【年(卷),期】2009(000)002
【摘要】采用一种新的编解码函数库分层法;介绍多种编解码规则;重点对ASN.1编解码运行库系统进行分析。
【总页数】4页(P46-48,F0003)
【作者】高益;黄俊伟
【作者单位】重庆邮电大学移动通信信息产业部重点实验室,重庆400065
【正文语种】中文
【中图分类】TP312
【相关文献】
1.ASN.1编解码运行库系统的设计和实现 [J], 高益;黄俊伟
2.ASN.1编解码运行库系统的研究和设计 [J], 何西良;高益
3.ASN.1自动编解码运行库软件的研究与设计 [J], 高益;黄俊伟
4.浅析ASN.1编解码系统 [J], 费文强
5.ASN.1的PER分层运行库系统的设计和实现 [J], 高益
因版权原因,仅展示原文概要,查看原文内容请购买。
ASN.1编解码器在协议一致性测试中的应用的开题报告
ASN.1编解码器在协议一致性测试中的应用的开题报告一、研究背景及意义在网络通信中,协议是通信双方之间的标准化交流方式,而协议的一致性是保证通信的重要保证。
协议一致性测试是检测网络设备和软件产品是否遵循规定协议的过程。
一般地,协议一致性测试通常采用黑盒测试方法,即只对待测试系统输入输出进行测试,而不对其内部实现进行测试。
随着网络通信协议的不断更新和升级,协议测试越来越复杂和繁琐,效率和精确度也成为了被重视的问题。
因此,协议一致性测试需要一个高效、可靠、灵活的测试工具支撑。
ASN.1编解码器作为一种常用的网络通信协议格式,可以为协议一致性测试提供重要的支持。
ASN.1(Abstract Syntax Notation One)是一种协议描述语言,可以用于描述数据结构和数据格式,定义网络协议和通信协议。
ASN.1编解码器是一种用于编码和解码ASN.1格式的数据的工具。
在协议一致性测试中,ASN.1编解码器可以被用来在待测试系统和测试驱动器之间传递ASN.1格式的数据。
ASN.1编解码器可以将ASN.1数据结构转换为二进制格式,然后传输给待测试系统,待测试系统执行协议操作后将二进制格式的数据传回测试驱动器,ASN.1编解码器将其转换回ASN.1数据结构,以验证待测试系统是否符合规定的协议格式。
因此,本次研究旨在探讨ASN.1编解码器在协议一致性测试中的应用。
二、研究内容及方法本文主要研究ASN.1编解码器在协议一致性测试中的应用。
具体研究内容包括:1. ASN.1编解码器的原理和基本概念:介绍ASN.1编解码器的基本原理、ASN.1数据结构和编解码器设计等内容。
2. ASN.1编解码器在协议一致性测试中的应用:详细介绍ASN.1编解码器在协议一致性测试中的应用,包括编解码器的实现原理、编解码器的编写方法、编解码器的测试流程等内容。
3. 测试案例的设计与实现:根据具体的测试需求,设计测试用例,并编写测试程序进行测试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1引言随着移动通信技术的蓬勃发展,以及移动通信与宽带无线接入技术的相互融合,3GPP开展了UTRA长期演进(Long Term Evolution,LTE)技术的研究。
与以往的TD-SCDMA等3G移动通信系统相比,LTE能提供对各种数据传输的支持和比以往所有移动通信系统更高的数据传输率,这必然会加大用户设备(UE)与eNodeB之间的信令交互。
在3GPP制定的标准中,引入了使用UPER编码规则的ASN.1语言来描述LTE-Uu接口协议栈信令消息[1]。
ASN.1的数据类型可分为简单类型和复合类型两大类。
简单类型是通过直接规定一组该类型值而定义的不可分解的基本数据类型,包括Null,Bool,Integer,Bit String,Octet String,Object Identifier等。
复合类型是引用一个或多个其他类型构成的任意复杂的数据类型,这里的其他类型可以是简单类型,也可以是复合类型。
复合类型有Sequence,Choice,Set,Sequence of,Set of等[2]。
LTE-Uu接口协议栈信令消息采用的均是紧凑而快的编码方式,从而能获得更高的通信效率。
需要指出的是,ASN.1中数据类型的编码,具体实现时必须严格按照X.691协议来完成。
否则即使是编解码过程中1bit的差错,也可能使整个LTE系统无法正常运行[3]。
文献[4-7]讨论了提出开发自动编译器和新ASN.1运行库等的解决方法,但这些都主要针对TD-SCDMA及其他协议标准,而且一方面LTE-Uu接口协议栈的大部分功能与TD-SCDMA等相比已经有了很大的变化,另一方面信令消息随着LTE协议版本的变化仍然在不断改变。
因此,笔者结合文献[4-7]各自ASN.1方案具有的优点,对LTE-Uu接口协议栈中ASN.1语言描述信令消息的编码和解码技术及在此基础上的一致性测试应用做了探索性的研究。
2LTE-Uu接口协议栈结构在3GPP协议中,LTE-Uu接口协议栈从功能和任务上来看,分为物理层(L1)、数据链路层(L2)和无线资源控制层(L3)。
数据链路层又分为媒介接入控制(Medium文章编号:1002-8692(2010)10-0071-03LTE-Uu接口协议栈中ASN.1模块的设计与应用*李校林1,2,文小强2(1.重庆信科设计有限公司,重庆400065;2.重庆邮电大学,通信新技术应用研究所,重庆400065)【摘要】基于ASN.1及其UPER编码规则的理论,提出了LTE-Uu接口协议栈中ASN.1编解码模块的设计与应用方案。
设计过程首先包含完整编译码所需信息的数据结构,并通过调用独立的编解码函数库,从数据结构中提取相应的参数完成解析。
通过检验ASN.1编解码模块在协议一致性测试中的应用,该模块能够达到3GPP协议实际测试的要求。
【关键词】LTE-Uu接口协议栈;ASN.1编解码器;UPER【中图分类号】TN929.5【文献标识码】ADesign and Application of ASN.1Module in LTE-Uu Interface Protocol StackLI Xiao-lin1,2,WEN Xiao-qiang2(1.Chongqing Information Technology Designing Co.,Ltd.,Chongqing400065,China;2.Institute of the Applications of Advanced Telecommunications Technology,Chongqing University of Posts and Telecommunications,Chongqing400065,China)【Abstract】A practical project on the design of the ASN.1encoder and decoder in the LTE-Uu interface protocol stack is put forward and realized in this paper on the theory of the ASN.1and its UPER coding rule.The design contains the complete coding and decoding information data structure,and by calling a separate codec library,the corresponding parameters is extracted from data structure to complete the analysis.By examining the ASN.1encoding and decoding modules in protocol conformance testing application,it is demonstrated that the function of ASN.1encoder and decoder modules meet the3GPP protocol actual testing requirements.【Key words】LTE-Uu interface protocol stack;ASN.1encoder and decoder;unaligned packed encoding rules·实用设计·*国家科技重大专项(2009ZX03002-009)Access Control,MAC)层、无线链路控制(Radio Link Control,RLC)层和分组数据汇聚协议(Packet Date Convergence Protocol,PDCP)层[8]。
ASN.1编解码模块处于LTE RRC层中信息的最关键部分,是LTE-Uu接口协议栈信息块重组过程的核心之一[1]。
L3RRC层消息在发送端首先经过ASN.1编解码模块的编码,形成RRC的PDU模块,再分别经L2的PD-CP,RLC层和MAC层处理后,经L1物理层发送出去。
在接收端,则需要进行发送端的逆过程,经L1物理层接收后,经过L2的MAC,RLC和PDCP层的处理,再送往L3 RRC层的ASN.1编解码模块进行信令消息的解码,完成信令消息的解析。
其中,MAC层的主要任务是完成逻辑信道与传输信道之间的映射,因此发送端的MAC层实体需要通过对不同映射关系下的数据添加不同的MAC头来区分不同类型的数据。
接收端则需要根据不同的传输信道指示及数据格式去掉相应的MAC头;RLC层的功能主要完成数据的分段、重组及确保数据的正确有序传输;PDCP层主要完成对信令消息的加密和完整性保护;最后是RRC层进行ASN.1消息编解码的模块化处理及解析。
3ASN.1UPER编解码模块设计与实现目前,国内外通信软件协议栈制造商对LTE中各个接口协议栈都十分重视。
OSS Nokalva和Trillium公司推出的软件除了信令消息分析功能外,有的还具备部分协议模拟功能。
虽然ASN.1编解码部分在这些软件中的形式各有千秋,但其达到的效果是完全一致的。
ASN.1编解码处理流程如图1所示。
在对LTE-Uu接口协议栈的ASN.1编解码模块的设计中提出了软件设计中模块定义和代码实现的方案,并给出了实际开发中遇到的某些困难的解决方法。
要实现ASN.1编解码模块,需要:1)将该协议栈中用ASN.1记法描述的消息(rrc.asn)编译成C语言描述的源文件(rrc.h);2)生成ASN.1记法描述的消息(rrc.asn)中对应C数据结构的编解码函数(rrc.c)。
图1中的编译是指将ASN.1记法描述的rrc.asn文件编译成rrc.h文件以及与rrc.h对应的rrc.c文件。
其中rrc.h 文件用于声明编译之后生成的C数据类型和编解码函数,rrc.c文件用于实现编解码函数。
这些编解码函数再调用图1中的ASN.1编解码基本函数库(Basic_asn.h,Basic_asn.c)实现编解码功能。
最后得到用于LTE-Uu接口协议栈的可执行文件,从而完成从ASN.1描述到二进制比特流的转换,使得其信息能在LTE系统网络中传输。
图1的编译过程比较繁杂,因为如果将TD-SCDMA空中接口的ASN.1消息手工翻译成C文件则会多达数万行,任务庞大。
不过LTE RRC的ASN.1消息相对TD-SCDMA 来说,简化了很多。
笔者通过剔除不必要的ASN.1类型并设计特定的数据结构,将LTE RRC的这些消息经过ASN.1映射成C文件后,再加上其他一些优化措施,将整个LTE RRC消息的C文件(rrc.c,rrc.h)压缩至1~2Mbyte。
LTE RRC消息编译成C代码文件后,还需进行编解码函数库的编写。
ASN.1模块的比较核心部分就是编解码函数库,它包括ASN.1的各个数据类型所对应的编解码函数,具体实现必须严格根据X.691协议中的UPER编码规则来编写。
之后,再进行一系列的严格测试才能确定其正确性。
最后完整的ASN.1编解码函数库的源代码约为6000行。
4ASN.1编解码模块的测试与应用由于LTE RRC的ASN.1消息中包含很多协议数据单元(PDU),不同的PDU下面又包含许多复杂结构。
因此使用结构测试的方法对ASN.1编解码模块进行测试,同时通过观察该模块在一致性测试中的应用来进一步验证ASN.1编解码模块的可靠性。
4.1ASN.1模块的结构测试结构测试又称为“白盒测试”或单元测试,它是基于软件内部结构进行测试的,其目的是通过执行每条语句、遍历程序的各个分支来检查整个程序代码的正确性。
在测试的实现中采取了有步骤分层次的方法:先对简单类型编解码函数进行测试,然后对复杂类型编解码函数进行测试。
为确保测试的准确性和可靠性,在复杂类型测试中采用了两种方法:一种是采用手工对接口信令消息中包含RRC-Connection-Setup消息的DL-CCCH-Message进行赋值,先调用ASN.1编解码模块进行编码,对于编码后的结果再调用ASN.l编解码模块进行解码。
选取DL-CCCH-Mes-sage 消息是因为这种类型消息包含了几乎所有的ASN.1的数据类型,并且包含的复合结构比较多,具有很强的通用性。
经多次符合X.691标准的随机赋值测试后发现,解码后的结果与开始的赋值是完全一致的。
另外一种方式是结合OSS Nokalva 公司的OSS ASN.1GUI 软件对DL-CCCH-Message 消息赋值,通过该软件生成符合UPER 编码规则的比特流。