게임 서버

위키백과, 우리 모두의 백과사전.

게임 서버(game server)란 멀티플레이 비디오 게임을 즐기기 위해 게임 클라이언트에 쓰이는 서버로, 자신의 컴퓨터나 다른 사람의 컴퓨터에서 실행된다.

게임 서버 호스팅[편집]

게임 서버 호스팅은 게임 서버를 운영하는 회사에서 직접 유지하거나, 게임을 즐기는 사람들이 자신의 비용으로 서버를 직접 운영한다. 게임 서버는 웹 기반 도구들을 제공하기도 하는데, 이를 통해 서버의 상태를 유지보수하기도 한다.

게임 서버의 종류[편집]

게임 서버는 리슨(Listen) 서버와 전용(Dedicated) 서버로 구별된다. 리슨 서버는 게임 클라이언트와 같은 프로세스로서 실행되며, 별도의 서버 없이 다른 플레이어가 호스팅하는 서버에 접속해서 플레이를 하거나 다른 플레이어를 초대할 수 있다. 다만 게임을 끌 때 서버도 같이 꺼진다는 것이 단점이기에, 해당 플레이어가 게임을 종료하면 그 서버의 호스트를 다른 플레이어로 변경하는 과정을 거친다. 랜 파티에서 즐겨 쓰이는 방식이기도 하다.

전용 서버는 클라이언트 프로세스와 별개로 실행된다. 별도의 고성능 네트워크상에 있는 전용 컴퓨터에서 실행되며, 플레이어들은 전용 서버에 접속해서 쾌적한 게임 플레이를 즐길 수 있다.

대규모 다중 사용자 온라인 게임의 전용 서버는 특정 회사가 운영하는 대용량 게임 서버이다. 해당 게임을 개발한 업체 혹은 개발사의 허락을 받은 업체(이른바 게임 퍼블리셔)에 의해서만 서버를 실행 및 유지를 할 수 있다. 이러한 서버에서는 불특정 다수의 플레이어들이 같이 게임을 즐길 수 있다.

게임 서버 개발[편집]

게임 개발 과정에서, 게임 서버 프로그래머라는 직책을 가진 사람들이 게임 서버를 개발하는 경우가 일반적이다. 게임 서버를 개발하기 위해서는 다음과 같은 기술을 연마해야 한다.[1] 물론, 개발하고자 하는 게임 기획에 대한 이해는 필수이다.

  • 네트워크 기본 지식
  • 데이터베이스 기본 지식
  • 프로그래밍 언어
  • 자료 구조, 알고리즘
  • OS 지식
  • 프레임워크/아키텍처 공부
  • 암호화 방식, 인터넷 프로토콜, XML 등

게임 서버를 개발하기 위해 이러한 기능들을 모두 직접 개발하거나 뒤끝, 프라우드넷, 포톤 서버, Bamer 등의 게임 엔진을 사용하기도 한다.

각주[편집]