51学通信技术论坛

标题: 请帮忙看看,为啥我抓包用wireshark看到Malformed Packet [打印本页]

作者: toto    时间: 2012-3-9 21:26:56     标题: 请帮忙看看,为啥我抓包用wireshark看到Malformed Packet

1#包显示Malformed Packet,导致GTP一部分内容看不到,数据包应该是完整的,而且我的wireshark支持GTPv0/v1/v2解码,不知道大家有什么好办法解决这个问题。
Wireshark version:1.7.0

作者: hycl5410    时间: 2012-6-11 13:48:04

直接看16进制的编码,对照29.060和25.413来看。
把鼠标点在target identification上,显示出
8a 00 08 64 f0 00 e7 1f 00 07 8f   
看29.060
0x8a=138 dec  target identification
0x00 08 Length
64 f0 00 e7 1f 00 07 8f    Target RNC-ID

再看25.413
64 f0 00 PLMN
e7 1f  LAC
00 RAC
07 8f  RNC ID

我的wireshark显示的也有问题,估计是wireshark认为Target RNC-ID要占一个byte的tag。具体编码规范我也不是很知道了。


作者: 爱卫生    时间: 2012-6-11 20:54:43

hycl5410 发表于 2012-6-11 13:48
直接看16进制的编码,对照29.060和25.413来看。
把鼠标点在target identification上,显示出
8a 00 08 64 ...

呵呵,H大侠V5。

那我就在接着H大侠的往后说下个人的观点。我也很赞同H大侠的说法,可能是wireshark对RNC-ID的解码问题。这个问题在网上搜索一下,就会发现很多人报过bug给wireshark,但没解决。比如:https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3974

所以要解决问题只能靠我们自己啦。解决的方法可以是自己来解码:

1)打开TS29.060的7.5.6章节关于forward relocation request消息的格式说明:

2)如H大侠说的,找到最后一个正常显示的target identification信息元素,是以07 8F结尾的。后面跟的是8b 01 30,这个8b对应的是什么信息元素,是通过type标识的,target identification的type值是8a,10进制是138,和7.7.37中target id的说明是一致的,同样8b,代表type=139,就是UTRAN transparent container,该字段也是一个强制字段,根据规范的说明,后面两个字节跟的是长度,就是0130(target id的type后面也有两个字节的长度部分,是00 08,十进制也是8),十进制是304。因此从01 30后面的304个字节应该都是UTRAN transparent container的内容。但该内容是从UTRAN透传过来的,GTP规范中未说明。需要找一个比较完整的报文对比来解码就好了。






欢迎光临 51学通信技术论坛 (http://51xuetongxin.com/bbs/) Powered by Discuz! X2