소켓에서 시도와 관련해서...
글쓴이: hurryon / 작성시간: 수, 2004/11/10 - 7:38오전
특정한 포트(예을 들어 21번이나 22번과 같은 포트)로 접속하여 해당하는 포트가 오픈되어 있는지 혹은 닫혀 있는지를 테스트하고 싶습니다.
해당하는 포트가 오픈이나 닫혀 있는 경우에는 문제 없이 테스트가 잘됩니다만...해당하는 시스템이 전원이 꺼져 있는 경우에는...이것을 알아내는데...시간이 무지하게 걸리고 있습니다.
아마도 소켓 옵션에서 이러한 경우에 재접속(?) 시간을 변경해 주는 옵션이 있을 듯합니다만...참고 링크나 문서의 페이지 넘버를 아신다면...부탁드립니다. ^^*
Forums:
connect 하기전에 icmp등을 이용하여 살아 있는지 확인하는 방법외
connect 하기전에 icmp등을 이용하여 살아 있는지 확인하는 방법외에는 없습니다.
connect의 시간은 상당히 깁니다. (2분?)
---
http://coolengineer.com
넌블러킹 connect 시도후 select / poll / kqueue
넌블러킹 connect 시도후 select / poll / kqueue 등으로 timeout을 준 후 connect 소켓의 에러유무를 검사하는 방법을 한번 사용해보세요.
원하시는 timeout 안에 동작을 완료할 수 있습니다. 게시판에 검색해보시면 관련글이 몇개 있습니다. UNP 에서 찾으셔도 있습니다.
소켓 자체의 타임아웃 옵션은 connect 동작에는 영향을 미치지 못합니다.
댓글 달기