2011-09-08 2 views
1

나는 아무 쓸데없이 다음을 수행하는 방법을 찾고있었습니다. 나는 여기 누군가가 나를 올바른 방향으로 인도 할 수 있기를 바랬다.프로그램 적으로 iscsi 패킷에서 특정 바이트를 추출하십시오.

문제는 다음과 같습니다. ISCSI 패킷의 양이 다양한 wireshark 추적 톤이 있습니다. 나는 이니시에이터에 의해 보내지는 명령을 바이트 단위로 파싱하여 각 패킷에 대해 파일에 써야한다. 원래 wireshark 응용 프로그램 (아래 SS 참조)에서 쉽게 볼 수 있기 때문에 원래이 작업을 수동으로 수행 할 예정 이었지만이 추적 중 일부는 거대 (1-2Gb)이며 수동으로 수행하는 데 오래 걸릴 것입니다. 내가 tshark를하고 rawshark 문서로 찾고 있었어요

http://img690.imageshack.us/img690/6067/wiresharksample.png

,하지만 난 내가 원하는 걸 얻을 수 있습니다 중 하나 확실하지 않다 :

더 내가 필요한 것은 이것이다, 명확합니다. 친구가 직접 추적을 구문 분석하기 위해 libpcap을 사용하도록 제안했지만, 각 패킷을 추출하는 데 필요한 바이트를 식별 할 수있는 방법을 찾아야한다고 말할 수 있습니다. 이상적으로는 저를 위해 그것을 인식하는 것을 사용하고 싶습니다 (ie wireshark의 ISCSI 해부사).

누구나 올바른 방향으로 나를 가리킬 수 있습니까? 원시 패킷 데이터를 조사하지 않고 필요한 바이트를 식별하지 않고 각 ISCSI 패킷에서 이러한 명령을 구문 분석 할 방법이 필요합니다. 참고 사항 - 위의 그림과 같이 항상 패킷의 마지막 16 바이트는 아니므로 마지막 16 바이트를 가져갈 수 없습니다.

모든 통찰력을 주시면 감사하겠습니다.

답변

0

패킷을 PDML/XML (파일 -> 내보내기 -> 파일 -> 다른 이름으로 저장 PDML)로 내보내는 경우 모든 프로토콜 필드가있는 멋진 XML 파일을 얻을 수 있습니다. 요구 사항에 따라이를 사용할 수도 있고, 인덱스로 사용하여 각 패킷의 원시 바이트를 찾을 수도 있습니다.

screen cap of PDML iscsi packet

관련 문제