2010-08-02 3 views
0

PacketDotNet 및 SharpPCap을 사용하여 VOIP 전화 시스템 용 H.225 패킷을 구문 분석하는 코드를 작성했습니다. 나는 Wireshark를 사용하여 구조를 보았지만 막혔습니다. 나는 This을 참조로 사용하고 있습니다.H.225 사용자 정보 패킷 구문 분석

내가 보는 H.225 패킷의 대부분은 빈 메시지 본문이있는 사용자 정보 유형이며 실제 정보는 Wireshark의 NonStandardControls 목록으로 표시됩니다. 나는이 컨트롤을 추출하고 나중에 구문 분석 할 수 있다고 생각했지만 실제로 시작하는 위치를 실제로 알지 못합니다.

거의 모든 경우에 항목은 H.225 데이터의 10 번째 바이트부터 시작합니다. 각 항목은 2 바이트로 기록 된 길이로 시작됩니다. 그러나, 나는 11 번째 바이트에서 시작하는 항목을 가진 패킷을 얻고있다.

이 패킷에서 볼 수있는 유일한 차이점은 메시지 본문에있는 값이 1 인 열린 유형 길이라고하는 것이지만 나머지는 모두 0 인 것으로 보입니다. 항목이 10 + 열린 유형 길이에서 시작하겠습니까? 이 오픈 타입 길이가 무엇인지 설명하는 문서가 있습니까?

감사합니다.

+0

나는 과거와 같은 문제가 있습니다. 이 프로젝트에서 어떤 진전이 있었습니까? H.225 패킷을 필터링하기 위해 어떤 패킷 형식이나 서명을 찾았습니까? (나를 언급하기 위해 @를 사용하십시오) – Abraham

답변

0

H.225는 고정 길이 인코딩을 사용하지 않으므로 사용자 ASN.1 PER 인코딩 (BER 아님)을 사용합니다.

아마도 C# 라이브러리를 찾을 수 없습니다. OPAL은 C API를 추가 할 수 있습니다.

+0

나는 ASN.1에 들어가기 시작했고 더 많이 이해하고 있다고 생각합니다. 그래서 당신은 아마 그것을 보길 원합니다. 나는 BinaryNotes를 사용하려했지만, 내가 찾은 ASN 파일에 대해 도망 간다. 그러나 패킷에서 찾고 있던 일부 정보를 얻었으므로 그곳에도 편재합니다. – Dan

+0

동일한 것을 시도하고 sharpPcap을 사용하여 호출자 ID 번호를 캡처합니다. 어떤 진전이 있니? 고맙습니다 –