서버가 끊어버리는것에 대한 질문
11:00 에 클라가 도배를 하면 서버에서 끊어버린다는 내용이 있어서 질문 드립니다.
서버에서 먼저 끊으면 안된다고 하셨는데,
도배나 어떤 악질 유저 같은 경우에는 TIME_WAIT 남더라도 끊어버리는것이 맞나요?
답변 2
0
서버에서 먼저 끊는 것이 맞습니다. 다만 이 경우 정상적인 TCP 세션 종료가 아니라 비정상적인 강제 종료 방식(RST)으로 연결을 끊어야 합니다. 이렇게 하려면 setsockopt() 함수를 이용해 SO_LINGER 설정을 해주면 됩니다.
struct linger sl;
sl.l_onoff = 1; // linger 옵션 사용
sl.l_linger = 0; // 대기 시간 0초
setsockopt(sockfd, SOL_SOCKET, SO_LINGER, &sl, sizeof(sl));
close(sockfd); 참고하시기 바랍니다. 😄
0
안녕하세요, 인프런 AI 인턴입니다.
Sungwon Jung님께서 질문하신 내용은 서버와 클라이언트 간의 연결 관리와 관련된 부분입니다. 서버에서 클라이언트의 도배와 같은 비정상적인 행동을 탐지했을 때, 서버 측에서도 연결을 강제로 종료할 수 있습니다. 이 경우, 악성 유저로 인해 서버 성능이 저하되거나 다른 사용자들에게 불편을 끼칠 수 있으므로, TIME_WAIT 상태가 남더라도 즉각적인 조치가 필요할 수 있습니다.
관련해서 유사한 질문과 답변을 참고하시면 도움이 될 것 같습니다:
클라이언트가 먼저 연결종료를 해야한다고 하신부분 질문입니다.
- 서버가 클라이언트의 연결을 강제로 종료하는 경우, 클라이언트가 정상적으로 응답하지 않는 경우나 네트워크 문제 등 다양한 상황에서 고려할 수 있는 방법에 대한 논의가 있습니다.
- 서버가 클라이언트의 연결을 강제로 종료하는 경우, 클라이언트가 정상적으로 응답하지 않는 경우나 네트워크 문제 등 다양한 상황에서 고려할 수 있는 방법에 대한 논의가 있습니다.
-
- 서버에서 하트비트를 통해 연결의 유효성을 검증하고, 클라이언트로부터 일정 시간 동안 아무런 응답이 없는 경우 연결을 종료하는 방식도 설명하고 있습니다.
- 서버에서 하트비트를 통해 연결의 유효성을 검증하고, 클라이언트로부터 일정 시간 동안 아무런 응답이 없는 경우 연결을 종료하는 방식도 설명하고 있습니다.
서버는 클라이언트의 비정상적인 행동을 사전에 감지하고 필요한 경우 연결을 끊어 시스템의 안정성을 유지하는 것이 중요합니다. 이는 서비스의 품질을 유지하기 위한 일반적인 방법 중 하나입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
recv, send 리턴값 질문
0
75
2
스타,워크와 같은 디스창 (Disconnected)도 비정상 종료에 대응하는 시스템으로 봐야할까요?
0
96
2
수업과 관련해서 읽어볼 만한 책 있나요?
0
110
1
TCP 의도적 장애 테스트 질문
0
159
2
shutdown()을 호출하는 이유
0
163
1
프로토콜이 적용된 파일 송신 서버에서 send, recv 질문 있습니다!
0
152
2
"파일 송신 서버 제작" 강의 질문입니다!
0
151
2
대표적인 장애 유현 2
0
131
2
대표적인 TCP 장애 유현
0
160
2
이벤트 기반 파일 입출력과 callback 기반 파일 입출력이 네트워크에도 쓰이는 기법인가요?
0
120
2
개발환경 질문이 있습니다.
0
137
1
TCP/IP vs UDP , 멀티 스레드에서의 병목 현상에 대한 질문이 있습니다!
0
221
2
메모리 관련 문제로 질문드립니다.
0
186
2
테스트 환경 질문드립니다!
0
168
2
ThreadAcceptLoop 의 우아한(?) 종료에 대해 질문드립니다.
0
419
2
하트비트 시 서버에서의 연결 종료
0
451
2
강사님 질문 드립니다.
0
249
1
소켓 입/출력 설계 정리
0
450
1
멀티스레드 기반 서버 관련 질문..!
0
410
2
빅 엔디언과 리틀 엔디언
0
375
2
TIME_WAIT 관련 문의드립니다.
0
226
1
강사님 강의자료 인쇄용으로 부탁드립니다.
0
288
1
bind 함수 관련 궁금증
0
357
2
스마트포인터 사용여부 및 가능성
0
259
2





