기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
리눅스에서 usb packet analyzer를 만들어 보려고 하는데요
호스트pc에서 동작하면서 usb 포트에 꽂혀 있는 장치와 서로 주고 받는
패킷을 볼 수 있는 프로그램을 만들어 보려고 합니다.
리눅스 구조 중에서 어디를 지켜보고 있어야 호스트 pc와 디바이스가
서로 주고 받는 패킷을 볼 수 있을지 잘 모르겠습니다.
어디를 찾아보고 공부해야할지 좀 도와주시면 감사하겠습니다.
USB 드라이버의 경우 패킷 구조가 복잡한 관계로 패킷을 구조체로 할당하여, 사용 합니다.
이 구조체 부분의 패킷이 전달되어 지는 부분을 살펴봐야 하고요...
(일단 USB에서 EP 쪽을 설정하는 레지스터과, 프로토콜 패킷의 구조체 위주로 살펴보시기 바랍니다.)
이를 위해서는 우선 전체적으로 USB 프로토콜 스펙에 대해 공부하실 필요가 있습니다.
그리고, 패킷 분석은 보통 리눅스용 USB 드라이버 쪽에서는 디버깅 메시지는, 전체적인 패킷 분석은,
Windows 단의 패킷 아날라이저 프로그램을 통해서 해보시기 바랍니다.
USB의 전체적인 패킷 분석툴은 Windows 쪽 프로그램이 잘 되어 있습니다.
USB 프로토콜 아날라이져가 있으면 정말 좋겠지만.. 이건 비싼 관계로...:)
usb 디바이스와 주고 받는 패킷이면 어떤 패킷인가요?
일반적인 네트워크 패킷은 넷필터를 보시면 될 것 같습니다.
아니 그전에 네트워크 패킷이라면 이더리얼로 보시면 되겠지만;;