인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

cckiz153님의 프로필 이미지
cckiz153

작성한 질문수

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

IocpCore

강사님 궁금한 점이 하나 더 생겼습니다..

작성

·

348

1

네트워크를 공부할 때 TCP 연결을 종료하는 4way 핸드셰이크 과정에서 클라이언트는 TIME_WAIT 상태에서 2MSL 만큼 기다렸다가 FIN이 다시 오지 않으면 CLOSED 상태로 이전되어 연결이 종료되는 것으로 알고 있습니다. 2MSL만큼 기다리는 이유는 서버의 FIN을 기다리는 이유도 있지만 동일한 클라-서버의 연결이 바로 재성립되는 것을 방지하여 이전의 세그먼트가 흘러 들어가지 않도록 한다고 배웠는데 이것이 맞는지 궁금합니다.
 
그런데 이번 강의에서와 같이 SO_REUSEADDR을 지정한다면 위에서 말한 문제.. 예를 들어 이전의 연결에서 발생된 세그먼트가 흘러 들어가는 등의 문제가 발생하지 않는지 정말 궁금합니다.

답변 1

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

실제로 저런 극단적인 케이스가 일어나는 경우를 본 적이 없을뿐더러,
설령 그것이 일어난다 치더라도 어차피 MMO 서버는 패킷 조작이나
잘못된 패킷을 검증하는 역할도 기본적으로 겸해야 하기 때문에
큰 문제가 되진 않습니다.

cckiz153님의 프로필 이미지
cckiz153

작성한 질문수

질문하기