게임 서버, C++로 처음부터 만들어보기 — 똑같이 만들면 TCP를 쓰면 되니까지난 편에서 UDP 서버의 연결 계층을 만들었다. 헤더에 ack와 ack_bits라는 필드를 넣어두고 값은 0으로 비워뒀다.이번엔 그걸 채운다. TCP가 공짜로 해주던 걸 손으로 만드는 작업이다.그런데 TCP와 똑같이 만들면 안 된다. 똑같이 만들 거면 TCP를 쓰면 되니까.안 보내도 되는 것들TCP는 모든 바이트를 책임진다. 유실되면 재전송하고, 순서가 틀리면 맞출 때까지 기다린다.게임에서는 그게 손해다.초당 30번 플레이어 위치를 보낸다고 하자. 0.5초 전 위치 패킷이 유실됐다. TCP는 그걸 기어코 다시 보내고, 도착할 때까지 그 뒤 패킷을 전부 막는다. 최신 위치가 이미 도착해서 버퍼에 쌓여 있는데도 꺼내 쓸 수가 없..