已关闭问题
请RANAP高手进, RANAP消息的Value 的长度是几个字节  (进入论坛模式)
提问者:sdzhyq   |  提问时间:2013-12-5 11:20
我使用wireshark看ranap的包,绝大部分消息的value的长度都是1个字节来表示,但有的消息如RelocationPrepare等,需要sccp两条消息才能发到接收方,此时该ranap消息的长度就是2个字节。
这个如何才能正确区分呢?
关闭所有答案回应    问题答案 ( 2 条 )
呵!做RANAP 的兄弟少啊,3G的时代已过去了。自己琢磨出如下门道,请行家里手指正。

看了很多的RANAP消息,看出了一点规律:无论是initiatingMessage、successfulOutcome还是outcome,在criticality字段后就是Value字段的总长度,若Value包含的值比较长,超过255,则长度指示就一定是用2字节,若Value包含的值较短,则一般长度指示就是一个字节。但也有2字节的情形。
无论是哪种情况,只要长度是用2字节编码的,其第一个字节的高4位一定是8,剩余的1.5字节都是长度的值,即0x8018表示长度为24
0x8102表示长度为258
 |  回应该答案 (0)  |  回答者:sdzhyq   |  2013-12-17 09:16
呵!做RANAP 的兄弟少啊,3G的时代已过去了。自己琢磨出如下门道,请行家里手指正。

看了很多的RANAP消息,看出了一点规律:无论是initiatingMessage、successfulOutcome还是outcome,在criticality字段后就是Value字段的总长度,若Value包含的值比较长,超过255,则长度指示就一定是用2字节,若Value包含的值较短,则一般长度指示就是一个字节。但也有2字节的情形。
无论是哪种情况,只要长度是用2字节编码的,其第一个字节的高4位一定是8,剩余的1.5字节都是长度的值,即0x8018表示长度为24
0x8102表示长度为258
 |  回应该答案 (0)  |  回答者:sdzhyq   |  2013-12-17 09:19