Wireshark 解码TCAP消息-对话框部分

Wireshark 解码TCAP消息-对话框部分,wireshark,gsm,ss7,Wireshark,Gsm,Ss7,我正在为完整的M3UA-SCCP-TCAP-MAP堆栈(通过SCTP)编写一个模拟器(用于学习)。到目前为止,M3UA+SCCP堆栈还可以 M3UA Based on the RFC 4666 Sept 2006 SCCP Based on the ITU-T Q.711-Q716 TCAP Based on the ITU-T Q.771-Q775 Wireshark仍然错了:-)。但是。。。这就是显示。它正确显示值-仅在错误的部分显示。可能是因为更容易解码 我缺少的是外部的定义[8]。Dia

我正在为完整的M3UA-SCCP-TCAP-MAP堆栈(通过SCTP)编写一个模拟器(用于学习)。到目前为止,M3UA+SCCP堆栈还可以

M3UA Based on the RFC 4666 Sept 2006 SCCP Based on the ITU-T Q.711-Q716 TCAP Based on the ITU-T Q.771-Q775
Wireshark仍然错了:-)。但是。。。这就是显示。它正确显示值-仅在错误的部分显示。可能是因为更容易解码


我缺少的是外部的定义[8]。DialoguePart被声明为外部…所以现在一切都有意义了。

对于您的消息,我自己的解码器说:

    begin [APPLICATION 2] (x67) 
        otid [APPLICATION 8] (x4) =102f0067h
        dialoguePortion [APPLICATION 11] (x30) 
            EXTERNAL (x28) 
                direct-reference [OBJECT IDENTIFIER] (x7) =00118605010101h
                encoding:single-ASN1-type [0] (x17) 
                    dialogueRequest [APPLICATION 0] (x15) 
                        protocol-version [0] (x2) = 80 {version1 (0) } spare bits= 7
                        application-context-name [1] (x9) 
                            OBJECT IDENTIFIER (x7) =04000001000503h
        components [APPLICATION 12] (x27) 
            invoke [1] (x25) 
                invokeID [INTEGER] (x1) =1d (01h)
                operationCode [INTEGER] (x1) = (22) SendRoutingInfo
                parameter [SEQUENCE] (x17) 
                    msisdn [0] (x5) = 90896734f2h
                        Nature of Address: international number (1)
                        Numbering Plan Indicator: unknown (0)
                        signal= 9876432
                    interrogationType [3] (x1) = (0) basicCall
                    gmsc-Address [6] (x5) = 9062859107h
                        Nature of Address: international number (1)
                        Numbering Plan Indicator: unknown (0)
                        signal= 26581970
现在,wireshark的padding 7和my spare bits=7都引用了协议版本字段,在Q.773中定义为:

AARQ-apdu ::= [APPLICATION 0] IMPLICIT SEQUENCE {
     protocol-version [0] IMPLICIT BIT STRING { version1 (0) }
     DEFAULT { version1 },
     application-context-name [1] OBJECT IDENTIFIER,
     user-information [30] IMPLICIT SEQUENCE OF EXTERNAL
     OPTIONAL }

位字符串定义将名称仅分配给前导位(版本1)。。。其余的(7位)没有给出名称和WiReSARK,把它们看作填充< /p>,看来我的解码是正确的。但为什么wireshark的解码方式不同呢?和我一样解码
dialogue-as-id OBJECT IDENTIFIER ::=  {itu-t recommendation q 773 as(1) dialogue-as(1) version1(1)}

DialoguePDU ::= CHOICE {
  dialogueRequest   AARQ-apdu,
  dialogueResponse  AARE-apdu,
  dialogueAbort     ABRT-apdu
}

AARQ-apdu ::= [APPLICATION 0] IMPLICIT SEQUENCE {
  protocol-version          [0] IMPLICIT BIT STRING {version1(0)} DEFAULT {version1},
  application-context-name  [1]  OBJECT IDENTIFIER,
  user-information          [30] IMPLICIT SEQUENCE OF EXTERNAL OPTIONAL
}
    begin [APPLICATION 2] (x67) 
        otid [APPLICATION 8] (x4) =102f0067h
        dialoguePortion [APPLICATION 11] (x30) 
            EXTERNAL (x28) 
                direct-reference [OBJECT IDENTIFIER] (x7) =00118605010101h
                encoding:single-ASN1-type [0] (x17) 
                    dialogueRequest [APPLICATION 0] (x15) 
                        protocol-version [0] (x2) = 80 {version1 (0) } spare bits= 7
                        application-context-name [1] (x9) 
                            OBJECT IDENTIFIER (x7) =04000001000503h
        components [APPLICATION 12] (x27) 
            invoke [1] (x25) 
                invokeID [INTEGER] (x1) =1d (01h)
                operationCode [INTEGER] (x1) = (22) SendRoutingInfo
                parameter [SEQUENCE] (x17) 
                    msisdn [0] (x5) = 90896734f2h
                        Nature of Address: international number (1)
                        Numbering Plan Indicator: unknown (0)
                        signal= 9876432
                    interrogationType [3] (x1) = (0) basicCall
                    gmsc-Address [6] (x5) = 9062859107h
                        Nature of Address: international number (1)
                        Numbering Plan Indicator: unknown (0)
                        signal= 26581970
AARQ-apdu ::= [APPLICATION 0] IMPLICIT SEQUENCE {
     protocol-version [0] IMPLICIT BIT STRING { version1 (0) }
     DEFAULT { version1 },
     application-context-name [1] OBJECT IDENTIFIER,
     user-information [30] IMPLICIT SEQUENCE OF EXTERNAL
     OPTIONAL }