通信人家园

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索

军衔等级:

  新兵

注册:2014-9-221
跳转到指定楼层
1#
发表于 2015-6-6 20:29:43 |只看该作者 |倒序浏览
本帖最后由 bidtem 于 2015-6-6 20:59 编辑

工具符合X690/X691规范,主要作用是根据ASN文本自动生成S1/X2接口的PDU编码和解码代码,同时:
- 自动生成测试代码
-自动生成消息打印代码(打印消息内容,方便调试阅读)
- 目前只支持纯C风格的编码和解码代码
- 高效率 (典型100字节长度消息编码在1.5秒/百万次,解码在1.8秒/百万次),可以根据目标接口进一步优化。(测试平台为CENTOS 6, 4G RAM, INTEL CORE 2 2.93G)

下面是生成的测试LOG:
>>>>>>> InitialContextSetupRequest START >>>>>>>>>>>
-- Structure display of encoding input:
InitialContextSetupRequest SEQUENCE {
   InitialContextSetupRequestIEs CLASS {
      MME-UE-S1AP-ID : 83322 [0x1457a]
      ENB-UE-S1AP-ID : 1 [0x1]
      UEAggregateMaximumBitrate SEQUENCE {
         BitRate : 50000000 [0x2faf080]
         BitRate : 50000000 [0x2faf080]
      }
      E-RABToBeSetupListCtxtSUReq SEQUENCE OF [1] {
         E-RABToBeSetupItemCtxtSUReqIEs CLASS {
            E-RABToBeSetupItemCtxtSUReq SEQUENCE {
               E-RAB-ID : 5 [0x5]
               E-RABLevelQoSParameters SEQUENCE {
                  QCI : 9 [0x9]
                  AllocationAndRetentionPriority SEQUENCE {
                     PriorityLevel : 1 [0x1]
                     Pre-emptionCapability : 1
                     Pre-emptionVulnerability : 0
                  }
                  GBR-QosInformation SEQUENCE {
                     BitRate : 0 [0x0]
                     BitRate : 0 [0x0]
                     BitRate : 0 [0x0]
                     BitRate : 0 [0x0]
                  }
               }
               TransportLayerAddress BIT STRING [1..160] [Len=32]: 0a 91 ff 09
               GTP-TEID OCTET STRING [4]: 0x7b0025
            }
         }
      }
      UESecurityCapabilities SEQUENCE {
         EncryptionAlgorithms BIT STRING [16..16] [Len=16]: c0 00
         IntegrityProtectionAlgorithms BIT STRING [16..16] [Len=16]: c0 00
      }
      SecurityKey BIT STRING [256] : 81 81 83 83 85 85 87 87 89 89 8b 8b 8d 8d 8f 8f
      UERadioCapability OCTET STRING [0..512] [Len=19]: 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 ...
   }
}

-- Encoding Result: Length = 136
0000   00 09 00 80 83 00 00 07 00 00 00 04 80 01 45 7a
0010   00 08 00 02 00 01 00 42 00 0a 18 02 fa f0 80 60
0020   02 fa f0 80 00 18 00 1b 00 00 34 00 16 05 40 09
0030   06 00 00 00 00 00 00 00 00 0f 80 0a 91 ff 09 00
0040   7b 00 25 00 6b 00 05 18 00 0c 00 00 00 49 00 20
0050   81 81 83 83 85 85 87 87 89 89 8b 8b 8d 8d 8f 8f
0060   91 91 93 93 95 95 97 97 99 99 9b 9b 9d 9d 9f 9f
0070   00 4a 40 14 13 01 02 03 04 05 06 07 08 09 0a 0b
0080   0c 0d 0e 0f 10 11 12 13

工具目前只在LINUX CENTOS 和 SUSE下测试过,详细使用说明请参考附件 EasyAsnGenerator.zip 包的README文件。
由于时间关系,X2AP 没有完整测试过。

EasyAsnSupp.zip (18.08 KB, 下载次数: 105)

EasyAsnGenerator.zip (124.9 KB, 下载次数: 102)

asn_codec_with_lib.zip (200.6 KB, 下载次数: 124)




举报本楼

本帖有 41 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系我们 |网站地图  

GMT+8, 2024-11-29 04:43 , Processed in 0.354560 second(s), 18 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部