2013-09-05 2 views
0

인데, 여기서 libpcap은 패킷에 타임 스탬프를 저장하지만 패킷의 타임 스탬프는 패킷의 데이터에 상주하는지 여부를 나타냅니다. 수신 측에서는 동일한 패킷이 수신되면 수신 측의 타임 스탬프가 libpcap에 의해 덮어 쓰게됩니다.여기서 패킷의 타임 스탬프는 패킷이 나가면 패킷의 타임 스탬프가

+0

libpcap는 패킷을 보낼 때가 아니라 도착했을 때 패킷을 타임 스탬프합니다. – EJP

답변

0

libpcap은 보내는 패킷에 타임 스탬프를 지정하지 않습니다. 전송 측에서는 타임 스탬프가 일부 네트워크 프로토콜의 일부로 수행 될 수 있습니다. 예를 들어, TCP를 사용하면 Timestamp 옵션 (RFC 1323)을 사용할 수 있습니다. TCP 타임 스탬프 옵션을 사용하면 보내는 패킷이 네트워크 스택에 의해 타임 스탬프 처리됩니다.

수신 측에서 libpcap은 OS에서 패킷을 수신하고 커널에 의존하여 유효한 타임 스탬프를 제공합니다. 커널은 네트워크 인터페이스 드라이버 또는 네트워킹 스택에서 타임 스탬프를 가져옵니다.

수신 타임 스탬프는 패킷의 일부분이어서는 안되며 따라서 수신 된 패킷의 일부가 될 보낸 사람 타임 스탬프를 덮어 쓰지 않아야합니다. (TCP의 경우)

희망 사항은 귀하의 질문에 대한 답변을 제공합니까?