15. NAT 트래버설과 홀펀칭: STUN·TURN·ICE, P2P vs 릴레이
난이도 중 해설 보기 →
문제
문제 15 — NAT 트래버설과 홀펀칭: STUN·TURN·ICE, P2P vs 릴레이
대부분의 플레이어는 공유기(NAT) 뒤에 있어 공인 IP를 직접 갖지 않는다. 이 환경에서 두 클라이언트를 직접 연결(P2P)하거나, 클라이언트가 서버에 안정적으로 연결하려면 NAT의 동작을 이해해야 한다.
다음을 설명하라.
-
NAT가 만드는 문제: NAT가 내부 주소/포트를 외부 주소/포트로 매핑하는 방식을 설명하고, 외부에서 내부로 "먼저" 연결을 시도할 수 없는 이유(인바운드 차단)를 설명하라.
-
NAT 유형: Full Cone, Restricted Cone, Port-Restricted Cone, Symmetric NAT의 차이를 매핑/필터링 동작 관점에서 설명하고, 각 유형이 홀펀칭 성공률에 어떤 영향을 주는지 설명하라.
-
STUN / TURN / ICE:
- STUN으로 클라이언트가 자신의 공인 매핑(서버 반사 주소)을 알아내는 과정.
- 홀펀칭(hole punching)이 양쪽에서 동시에 패킷을 보내 매핑을 여는 원리. UDP 홀펀칭과 TCP 홀펀칭의 차이.
- 직접 연결이 불가능할 때(특히 Symmetric NAT) TURN 릴레이로 폴백하는 이유와 비용.
- ICE가 후보(host/srflx/relay)를 수집하고 우선순위로 연결성 점검(connectivity check)을 하는 흐름.
-
게임에서의 선택: 실시간 대전 게임에서 P2P(홀펀칭)와 전용 서버(dedicated/relay) 중 무엇을 언제 택하는가? 지연·치트·NAT 실패율·운영 비용 관점에서 트레이드오프를 논하라.
답안 작성
내 답안 · 자동 저장
직접 답을 작성한 뒤, 위 해설 보기에서 모범답안과 대조하세요.