해결된 질문
작성
·
444
0
TCP 에코 서버 제작 : 클라이언트 연결 받기 및 통신 수업에서
포트 바인드 코드 설명에서 NIC이 여러개 있으면 IP주소도 여러개 있을 수 있다고 하셨는데, NIC의 개수와 비례해서 IP주소도 늘어나는 것인가요? 예를들어 NIC이 3개이면 IP주소도 항상 3개인 것인지. 아니면 그 이상 또는 이하로 IP주소를 가져도 상관 없는건지 궁금합니다.
Listen 코드 설명에서 1번 클라이언트가 접속을 요청하고 Accept 처리까지 끝나서 ~~하는 과정에서 다른 클라이언트가 접속을 요청하면 요청 자체가 날아가서 접속이 안된다 라고 하셨는데, 이때 날아가는 요청은 1번 클라이언트의 요청인지 아니면 다른 클라이언트의 요청인지 궁금합니다.
답변 1
0
그렇지는 않습니다. NIC 한 개에도 원하면 여러 IP주소를 설정(바인드) 할 수 있습니다. 경우에 따라서 NIC 하나에 대해 IP주소를 할당하지 않는 것도 가능합니다.
뒤 이어진 다른 클라이언트의 요청이 되겠습니다. 그러나 실제로 날아가는 것이 아니라 백로그 큐에 저장되어 처리가 이어집니다. 과거에는 이 값을 보통 5로 설정했지만 지금은 OS가 더 큰 값으로 대응하고 있습니다. 늦어지더라도 결국 처리가 되긴 하는데...이게 불가능 할 수준까지 가면 서비스가 불가능 할 정도의 과부하 상황인 것이고 OS조차 반응이 느려진 상태가 된 경우가 많습니다. 참고하시기 바랍니다. 감사합니다.
답변 감사합니다!