ASNPER编码标准规范.doc
《ASNPER编码标准规范.doc》由会员分享,可在线阅读,更多相关《ASNPER编码标准规范.doc(18页珍藏版)》请在咨信网上搜索。
1、ASN.1编码规范及实现方式一、 ASN.1语言概述ASN.1(Abstract Syntax Notation Number One),抽象语法描述1,是一种 ISO/ITU-T 原则。该语言描述了一种对数据进行表达、编码、传播和解码数据格式,它提供一整套正规格式用于描述对象构造,具备类似于面向对象程序设计语言中所提供类型机制,可定义任意复杂构造数据类型,而不同数据类型之间还可以有继承关系。因而,ASN.1是以一种独立于计算机架构和语言方式来描述数据构造。同步,ASN.1 描述可以容易地映被射成 C 、C+ 或 Java 数据构造,直接作为应用程序代码使用,并得到运营程序库支持。 ASN.1
2、作为一种数据表达原则产生于20世纪80年代初期开放系统互联(OSI)网络模型,虽然OSI模型并没有得到广泛应用,但是ASN.1原则在继续进化。今天已有大量实际应用,这些应用涉及:3G移动系统、IP语音、安全应用、老式电信网络、军事和空间应用等许多方面。此外,ASN.1 有各种原则化编码规则:如基本编码规则(BER)、规范编码规则(CER)、辨认名编码规则(DER)、压缩编码规则(PER)和 XER 编码规则(XER)。这些编码规则描述了如何对 ASN.1 中定义数值进行编码,以便用于传播,而与计算机、编程语言或它在应用程序中如何表达等因素无关。同步,该编码具备先进标记系统、信息扩展性、支持迅速
3、可靠传播等特点,这在无线传播中是一种优势。因而,ASN.1不但适合表达当代通信应用中那些复杂、变化及可扩展数据构造,并且尚有适合合同编码方式。同步,3GPP原则ASN.1文档中也包括了完整、详细数据单元(PDU)合同。这些都为3G移动系统中ASN.1应用打下了基本。3G合同ASN编码跟普通编码相比具备高效性、严谨性以及规范性等特点。 二、PER 编码简介3GPP规范中,由ASN.1到传播码转换统一使用定义在ITU-T X.691中PER(Packed Encoding Rules)规则,因而这里讲ASN编译码规则也就是ASN编码中PER编译码规则。PER 有两个变体:对齐方式和非对齐方。对齐方
4、式用于:Iub、Iur、Iu 接口ASN.1 传播编码。非对齐方式:仅用于空中(UU)接口ASN.1转换,两者编码过程基本相似。在对齐方式下,若前面所有单元信息经编码后得到比特流长度不是一种八位组倍数,而后一种信息又是以八位组为单位(字符串),那么就需要在前面生成比特流背面补“0”,使其长度为8倍数。因此普通补位数为07bit。而非对齐方式无此限制。所有信息单元按编码规则生成比特数据将按其被编码顺序首尾相连,中间不需要任何填充。按ITU-T X.691规定,若最后编码结束后。所得编码不是8倍数,信息编码结束后填充由RRC负责。此外,PER编译码必要依赖于3GPP原则文档,也就是说,收发双方也必
5、要懂得层3消息详细构造,这样编码和译码才干被编译和辨认。三、PER编码规则 PER编码规则定义了各种数据类型,简朴地可分为两大类。第一类是构造类,如CHOICE、SEQUENCE 、ENUMERATED 等。另一类是简朴类,如INTEGER、REALL 、BOOLEAN 等。下面将对如下惯用类型编码规则做一种总结: 3.1 INTEGER整型是合同规范中用得最多一种数据类型。对这种数据类型编码之前,一方面要拟定其取值范畴,即上下界之间数个数。而编码长度是依照数范畴来拟定。当2m范畴2m+1时,对该整数取值用m+1位二进制表达。但对范畴内数编码不是对其实值而是对其索引值进行编码,编码索引值是从0
6、开始。例1: TimeslotNumber :=INTEGER (0.14) 上面例子中TimeslotNumber为整型,范畴是014共15个数,由于231524,故编码为4bit,若取值为7,则编码为0111。例2: MaxAllowedUL-TX-Power :=INTEGER (-50.33) 同理,MaxAllowedUL-TX-Power为整型,范畴是5033共84个数,268427编码长度为7bit,若取值为0,则编0索引值50(-50索引值为0),因而编码为:0110010。3.2 BOOLEAN布尔逻辑型编码只须1bit。用“1”表达TRUE,“0”表达FALSE。例:DL-
7、TM-RLC-Mode :=SEQUENCE segmentationIndicationBOOLEAN上面segmentationIndication是一种 BOOLEAN型,意思是段批示。当咱们需要这种批示时编码为1,不需要时编码为0。3.3 BITSTRING比特串编码提成两种状况:长度固定:直接将比特串与前面比特流叠加即可;长度可变:按前述整型编码规则,以描述长度范畴至少比特原则在比特串前面加上用于描述长度所需比特,然后将待编码比特串加在后边。例1:RoutingParameter :=BIT STRING (SIZE (10)上面RoutingParameter是一种定长,且长度为1
8、0比特串,编码时直接给出10位二制数,例如编码为:。例2:SIB-Data-variable :=BIT STRING (SIZE (1.214)SIB-Data-variable是一种变长比特串,编码之前一方面编长度,由于长度范畴为1214共需要编8比特,因而若SIB-Data-variable是一种5位比特串时则编码为:00000100 11111(前面8位是比特串长度编码,背面5位是该比特串值)。3.4 OCTETSTRING八位组串编码原则与比特串相似。提成长度可变八位串和长度不可变八位串两种。与比特串编码不同是编码值是八位串而不是比特串。例: VALUE := OCTETSTRING
9、(SIZE(1.8)若VALUE值是长度为3八位串,则编码为:010,背面跟着3个由于长度区间为八,因此长度编码L为3位,而3bmin=2。因而编码为010。背面则跟着3个八位组如:00000000 11111111 00000000 。3.5 CHARACTER STRINGS 字符串编码方式有各种状况编码方式与BITSTRING 和OCTETSTRING 编码方式类似,只是对不同类型字符串有不同编码办法,下面将着重阐明CHARACTER STRINGS 中惯用NumricString、PrintableString、NameString编码办法: NumricString类型中成员为09,
10、共十个数。因而在编码时长度可定为4bit(231024).,因而此种类型串编码是每个数字编为4比特。同理,PrintableString中包括字符为:“a.z”、“A.Z”、“0.9”、“space”、“,”、“(”、“)”,“”、“、”、“-”、“/”、“.”、“”、“?”、“:”共74个字符,每个字母应编码为7比特。NameString共52个大小写字母,每个字母编码则为6bit。 NumricString 123 编码为: 0001 0010 0011。 NameString “cat”编码为: 011100 011010 100010,上面每个字母编6比特,每个字母值是其在NameSt
11、ring中索引值。3.6 NULLNULL类型不用编码。3.7 ENUMERATED枚举型编码类似于整型,也是以描述枚举内全体成员所需比特数至少原则进行编码。其值范畴从0开始。枚举类型编码时,只对其项索引值编码。例:Modulation :=ENUMERATED mod-QPSK ,mod-8PSK 上面是一种Modulation是枚举类型,编码时,一方面看枚举项个数为2,212,因而编码为1bit,当选mod-QPSK调制模式时编码为0,选mod-8PSK调制模式时编码为1。3.8 CHOICE选取型编码类似于整型,以至少比特来描述选取体内各成员索引值。值范畴从0开始。与枚举不同是,编完CH
12、OICE索引值,紧接着就应编码索引值相应单元。而枚举型将索引值编完后就结束。下面将以一种例子对这种类型编码进行阐明:例:NumberOfTransportBlocks:=CHOICE zeroNULL,oneNULL,smallINTEGER (2.17),largeINTEGER (18.512)NumberOfTransportBlocks是一种选取类型,若信息传播块个数为16,则应当选取CHOICEsmall项,然后在对该项值进行编码。一方面CHOICE里有4项,编码为2bit,small为第3项编码值为2,选取项编码为:10。然后再对small项编码,由于取值为16,索引值为14,整数
13、范畴是217共16个数,要编4比特,因而要对索引值14编4比特,即编码为:1110。3.9 SEQUENCE普通说来,序列编码后都会产生一种前导位图,用以批示序列中可选项或缺省项与否存在。每以可选项(或缺省项)用1bit来批示,“1”表达存在,“0”表达不存在。若一种序列型中包括n个标注为可选(或缺省)成员,那么,前导位图长度就是n bit。位图中比特顺序与序列中各可选(或缺省)成员排列一致。然后再对SEQUENCE 中各成员进行编码,这种类型相应于C语言中构造。下面将以实例来阐明:IndividualTimeslotInfo-LCR:=SEQUENCE timeslotNumberINTEG
14、ER(1.15) OPTIONAL,tfci-ExistenceBOOLEAN,midambleShiftAndBurstTypeMidambleShiftAndBurstType-LCR OPTIONAL,modulationENUMERATED mod-QPSK,mod-8PSK ,ss-TPC-SymbolsNULL ,additionalSS-TPC-SymbolsINTEGER(1.15) OPTIONAL上面是一种SEQUENCE构造编码时咱们分两步进行: 拟定其前导位图.该构造中有3个可选项,故可拟定位图长度为3bit。咱们依照需要选取其中项,若某项选取了编码位图为1,否则为0。
15、假设咱们选取了timeslotNumber而其他项都不选话,则在对构造内部编码之前应编码为:100 依照SEQUENCE构造内部项,从上到下依次编码。TimeslotNumber 取值为6,则编码为0101;tfci-Existence 存在TFCI批示,则编码为1;modulation 选取mod-QPSK,编码为0;ss-TPC-Symbols 为空类型,不用编码综上可得:该构造编码为100 0101 1 03.10 SEQUENCE(SIZE(ib.ub)OF componentSEQUENCE OF在ASN.1描述中用作循环。循环次数由SIZE 拟定。SEQUENCE OF前导比特为S
16、IZE中数范畴,编码规则与整数型相似。紧跟在前导比特之后是循环体成员component编码,component可以是构造也可以是一种整型参数。各成员编码后顺序放置,每两个成员之间编码值不需分隔符,该类型相应于C语言中数组。下面将以一种例子来阐明: MNC :=SEQUENCE (SIZE (2.3) OF DigitDigit :=INTEGER (0.9) 上面MNC移动网络码,在上面循环中咱们将分几步阐明:一方面拟定其循环次数,由SIZE (2.3)可知其循环次数为23次,普通咱们选取2次,则编码为0。第一次对Digit进行编码为:0010(取值为2)。第二次对Digit进行编码为:001
17、1 (取值为3)。综上,对该循环编码为: 0 0010 0011。四、PER编码实例分析下面我将以手机释放流程中RRC CONNECTION RELEASE消息为例讲述PER编译码过程: 手机释放合同流程分CC层释放、RRC释放等2个阶段。其详细合同流程如图1所示。UE通话过程DISCONNECTRELEASERELEASE COMPLETERRC CONNECTION RELEASERRC CONNECTION RELEASE COMPLETENETWORK图1手机释放合同流程上面合同流程是通话完毕后终结UE和网络连接过程,涉及两个某些,前一种某些是完毕呼喊终结过程,背面一某些是信令链路释放
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASNPER 编码 标准规范
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。