안녕하세요
TCP 소켓에 대해서 공부하는 중 궁금한 점이 있어서 이렇게 포스팅을 합니다.
select를 이용한 TCP서버를 작성하는 중인데요
서버의 소켓 디스크립터가 set되면 accept을 수행하여 연결을 확립하는데요
이 과정에서 만약 문제가 생길경우, 그러니까 A가 서버에 접속을 요청하고 accept에서 문제가 생겨서 블럭이 된 상황에서
B가 서버에 접속을 요청할 경우 접속에 실패하게 되는데요
이렇게 문제가 되는 상황에서도 B가 제대로 접속하게 하는 방법이 있을까요?
정리하면.. 발생순서는 다음과 같습니다.
1. 서버 listen
2. A접속 요청
3. 서버 accept 수행 중 블럭 발생
4. B접속 요청
5. B접속 실패 <=== 문제점
많은분들의 조언 부탁드립니다