TCP IP/ Keepalive 패킷을 전송하는 주체가 항상 TCP server인가요 ?
조회수 1577회
TCP 연결이 수립된 후 데이터 교환이 없을경우 probe 패킷을 전송하고 ack을 받아 연결이 아직 지속되고 있는지 확인하는 기능을 keepalive라고 하는데요.
TCP Server가 있고 TCP Client가 있을 때 항상 Server만이 probe 패킷을 전송하나요 ?
현재 PC( Client ) - Embedded product( Server )구성에서 항상 TCP server가 keepalive probe 패킷을 전송하는것을 확인했는데, client에서는 probe패킷 전송을 하지 않는지요 . 감사합니다.
1 답변
-
보통 소켓 통신시 KEEPALIVE와 관련된 소켓 옵션을 지정하게 할 수 있어 일정시간(KEEPALIVE TIMER VALUE) 동안 패킷이 오지 않으면 서버든 클라이언트든 보낼 수가 있습니다. 서버와 클라이언트 둘 다 지정을 할 수 있고 둘 중 하나만 지정할 수도 있겠죠, 만약 둘 다 설정을 하였다면, 둘 중 짧은 타임아웃을 설정한 쪽에서 KEEPALIVE를 보내는 것만 보일 수 있겠네요.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력