2014-12-29 2 views
2

UDP 서버와 클라이언트를 만들려고합니다. 클라이언트가 "연결"되어 있거나 연결이 끊어져 있는지 어떻게 확인할 수 있습니까? UDP는 실제로 Connection이 아니기 때문에. 멀티 플레이어 게임은 어떻게합니까?UDP 서버 만들기

+0

멀티 플레이어 게임을하는 방법을 모르지만 UDP를 통해 특정 유형의 연결을 구현해야하는 경우에는 자신의 응용 프로그램 계층 프로토콜을 구현해야합니다. – rodolk

답변

2

첫 번째 사람 게임을 한 적이 있는데 어느 시점에서 인터넷 연결이 끊어 졌습니까? 자동으로 연결 해제되기 전에 카운트 다운이있는 메시지를 받아야합니다. 이 그림을보고 타임 아웃까지의 카운트 다운 오른쪽 상단에 주목하십시오.

enter image description here

UDP는 계속 전송하고 패킷을 수신함으로써 연결을 유지한다. 예를 들어, 30 초 동안 서버가 클라이언트로부터 아무 것도받지 못했다면, 서버에 알리지 않고 (단절된 시간 초과) 클라이언트 연결이 끊어 졌다고 가정 할 수 있습니다.

구현은 대개 간단합니다. 타이머를 사용하고 패킷을 수신 할 때마다 타이머를 재설정하고 타이머가 TIMEOUT_VALUE 이상이되면이 클라이언트의 연결을 끊습니다.