데디케이티드 서버

1 개요

Dedicated Server

클라이언트-서버 구조를 기반으로, 호스트 역할만을 전담하는 하나의 시스템이 모든 사용자들을 수용하는 방식의 게임 서버를 말한다. 사용자의 게임 클라이언트 자체를 서버 호스트로 지정하는 리슨 서버(Listen Server) 혹은 Peer to peer 방식과 구별된다.

2 상세

간단하게 얘기하면 MMORPG같은 게임에서 24시간 돌아가는 서버가 바로 데디케이티드 서버 되겠다. 중요한 차이는 서버가 게임의 거의 모든 판정을 도맡는다는 점이다.

이런 데디케이티드 서버는 일반 사용자가 리슨 서버와 비교했을 때 리슨 서버가 이루지 못하는 점들을 모두 장점으로 가진다. 리슨 서버는 사용자 누군가가 호스트가 되므로 게임이 언제 중단될 수도 있고 회선이 불안정할 수도 있다. 그러나 데디케이티드 서버는 당연히 이런 일이 없다.

당연히 데디케이티드 서버만 만들면 누구나가 행복해질거라 생각하기 쉽지만, 데디케이티드 서버는 우선 비용 문제가 필요하며 안정적인 서비스는 가능하지만 빠른 속도를 보장해 주지는 못한다. 격투게임 처럼 1초에 60번씩 (=17ms) 판정을 체크해야 하는 경우에는 당연히 P2P의 속도를 데디케이티드 서버가 보장해줄 수는 없다.

한국 최초이자 세계 최초의 온라인게임인 바람의나라가 사용함으로써 여러 분야에서 최초 타이틀을 확보했다. 또한 대다수의 패키지 게임이 개인 데디케이티드 서버 기능을 도입했지만, 그러한 게임은 점점 사라지고 P2P 기반의 리슨 서버를 사용하는 경우가 늘어났다. 참고로, 콜 오브 듀티: 모던 워페어 2는 전작에서 지원했던 데디케이티드 서버를 삭제하고 리슨 서버를 사용하여 빈축을 산 바 있다. 게다가 이를 악용해서 각종 핵을 사용하는 경우도 늘어나고 있다.

대부분의 상업 온라인 게임들은 당연히 데디케이티드 서버를 사용하고 있다. 그러나 모든 부분이 데디케이티드 서버를 이용하는 것은 아니고, 빠른 반응속도가 필요한 액션 MORPG 같은 경우는 부분적으로 P2P 연결을 통해 구현하고 있다.

그리고 게임 개발사가 아닌 일반 사용자가 GameServers.com, i3D.net 등 서버 호스팅 업체로부터 서버를 임대받아 운영하는 경우도 있다. 콜 오브 듀티: 블랙 옵스 이후의 시리즈와 배틀필드 3의 데디케이티드 서버가 바로 이런 경우. 특정 사용자가 서버를 관리하는 방식이긴 하지만, 해당 게임 내의 호스트가 되는 것이 아니라 여러 유저들을 수용하는 하나의 시스템을 빌려서 운영하는 것이므로 이것 역시 데디케이티드 서버와 마찬가지다. 이 방식은 개인이 운영하는 데디케이티드 서버보다 훨씬 안정적이고, 서버를 임대한 개인이 게임 내에 조작 등을 할 수 없다는 장점이 있다. 그러나 월마다 서버 회사에 비용을 지불해야 하는 부담해야하며 또한 자신이 살고 있는 국가에 해당 서버 회사가 서비스를 하지 않을 경우 말짱 도루묵이 된다.

데디케이티드 서버 방식은 게임회사 입장에서 많은 서버 운용 비용이 들어간다는 문제가 있다. 모 잘나가는 게임의 데디케이티드 서버 운용비용이 월 몇억씩 깨진다던데 하지만 이런 단점을 한번에 씹어먹는 큰 장점이 있는데, 바로 핵에 강하다는거다. 그럴수밖에 없는게, 클라이언트에서 제아무리 메모리 해킹하고 누드패치도 해봤자 자기가 하는 뻘짓은 서버가 전부다 무시해버리기 때문이다. 피어 투 피어나 리슨 서버 방식은 서버가 무시할 수 있는 방법이 전혀 없다. 애당초 데디케이티드 서버 자체가 없기 때문이다.

그렇다고 데디케이티드 서버가 무조건 핵에 강하다는건 아니다. 행여나 플레이어의 이동 처리나 투사체 사격 판정을 클라이언트에서 해버리면 피어 투 피어나 리슨 서버와 동급으로 말짱 도루묵이다. 데디케이티드 서버라도 그냥 핵에 탈탈 털린다. 의외로 꽤 많은 게임이 이동과 투사체 사격 판정을 클라이언트에서 하고 있다. 서버에서 그거까지 다 하면 랙 엄청 쩔어 플레이 개판되고 데디케이티드 서버가 하는 일이 엄청나게 늘어나서 서버가 터져버리기 때문이라고. 핵게이트가 열렸습니다 여러분!

3 리슨 서버

리슨 서버는 간단히 말하면 스타크래프트의 로컬 멀티플레이어 같은 개념이다. 플레이어 누군가 한 명이 호스트가 되고 나머지가 클라이언트가 되는 방식이다. 호스트가 나가면 게임 서버도 닫히고, 호스트와 클라이언트의 사정에 따라 회선 사정도 크게 변할 수 있으나 기본적으로 다들 가까이 있다면 대역폭 면에 있어서는 큰 이득을 얻을 수 있다. 호스트만 문제가 되지 않으면 게임을 유지하는데도 큰 어려움도 없다. 때문에 랜파티 같은데서 자주 사용되는 방식이다.

온라인 게임에서도 리슨 서버 방식을 쓰는 경우가 있다. 데디케이티드 서버로 구동하기에는 서버에서 처리해야 하는 양이 너무 많거나 서버 유지비를 절약하기 위한 경우이다. 땅덩이가 넓지만 인터넷 회선이 느린 지역(가령 중국이나 동남아시아)에서 FPS 게임처럼 네트워크 품질에 민감한 게임에서 채택하기도 한다.

리슨 서버 방식은 호스트의 품질에 크게 영향을 받는 단점이 있다. 온라인 게임 제작에서, 리슨 서버 방식보다는 피어 투 피어나 데디케이티드 서버 방식을 선호하고 있다.

4 피어 투 피어

피어 투 피어, P2P의 가장 큰 차이점은 서버와 클라이언트가 없으며 모두가 서버이고 모두가 클라이언트가 되는 모델이다. 각각의 피어는 플레이어 모두에게 신호를 주고 받는다. 적은 수의 플레이어가 대량의 토큰을 주고 받는데 가장 유리한 방식으로, 실시간 전략 시뮬레이션이나 격투 액션 게임에 가장 잘 어울린다. 던전 앤 파이터가 이 방식을 던전 입장시에 활용하고 있다.

리슨 서버와 달리 호스트가 방폭을 해도 게임이 계속 유지된다는 장점이 있다. 그리고 호스트에 트래픽이 몰리는 문제도 해결되기 때문에 리슨 서버 방식보다 피어 투 피어 방식이 더 선호되고 있다. 스타크래프트같은 전략시뮬레이션 게임에서는 이 방식이 락스텝 동기화 알고리즘과 맞물려 필수적으로 사용되고 있다.

각각의 피어가 모두 서로간에 신호를 던지고 받는데, 싱크가 유지될 때까지 대기할 필요가 있는 게임들이 있다. 대전격투게임이나 전략시뮬레이션 게임이다. 이들은 회선이 대단히 빨라야 한다. 데디케이티드 서버는 이 방식을 쓰려면 전세계 가급적 많은 지역에 데디케이티드 서버를 구축해야 하는 문제가 있다. 피어 투 피어 방식을 쓰면 이 문제가 쉽게 해결된다. 데디케이티드 서버와의 네트워크 거리가 고려되지 않아도 되기 때문이다.

리슨 서버 방식과 피어 투 피어 방식은 인터넷 공유기에서 잘 작동하지 않는 문제가 있다. 이를 해결하려면 홀펀칭이나 릴레이같은 기법을 구사해야 한다. 프라우드넷같은 것이 이런 것을 잘 해주는 것으로 알려져 있다.

5 기타

마이크로소프트는 자사의 클라우드 서비스 Microsoft Azure를 기반으로 하는 클라우드 데디케이티드 서버엑스박스 원으로 출시되는 게임에 무료로 제공할 것이라고 밝혔다. 마이크로소프트가 모든 서버를 대신 운영해 주기 때문에, 각 게임 업체들은 사용 시간에 따른 호스팅 비용만 지불하면 된다. 또한 서버의 상황을 보다 손쉽게 모니터링할 수 있으며, 클라우드 컴퓨팅을 기반으로 하기 때문에 데이터 병목 현상에도 유동적인 대처가 가능하다. 그리고 이 클라우드 서버는 세계 각지에 설립된 마이크로소프트의 데이터 센터와 연결되어 있어 지연시간 문제도 어느 정도 해결할 수 있다고 한다. 요약하자면 게임 개발사들은 마이크로소프트의 클라우드 데디케이티드 서버를 사용함으로써 서버 운영비에 대한 부담을 덜 수 있고, 유저들은 좀 더 쾌적한 환경에서 멀티플레이를 즐길 수 있게 된다는 것이다.

한국 온라인 FPS 게임 AVA는 초기엔 국내에 흔치 않은 리슨 서버를 이용했었으나, 결국 2012년 들어서 데디케이티드 서버로 전환하였다. 확실히 리슨 서버를 이용할 땐 사용자들의 인터넷 연결 수준에 따른 반응속도 차이가 심각했고, 방장이 바뀔 때마다 게임이 정지되는 불편함이 있었지만 데디케이티드 서버를 이용하기 시작한 이후로는 이런 문제가 없어졌다.

카운터 스트라이크 온라인 역시 한국에선 보기 힘든 리슨 서버를 사용 중이다. 원작 카운터 스트라이크의 느낌을 살리려는 의도인 듯. 이 때문에 핵도 못 잡고 있는 상황이었는데, 마침내 2013년 10월 24일 업데이트를 통해 데디케이티드 서버를 제한적으로 지원하기 시작했고 2013년 11월 7일 업데이트를 거쳐 전체 서버로 확대되었다.