24- 06 - 20 

 

오늘 공부한 내용은 게임 서버의 역사에 관한 것이다.

 

게임 서버의 종류를 가장 크게 분류하면

리슨 서버 / 데디케이티드 서버가 있고 추가로 P2P 서버 까지 세 종류로 나눌 수 있다.

 

 

리슨 서버

클라이언트로 접속한 유저 중 한명이 호스트가 되는 방식이다.

흡사 '방장' 과 같은 느낌

최근에 플레이 한 게임 중 '팰 월드' 라고 하는 게임에서 이러한 서버 방식의 멀티 플레이를 지원한다.

유저 개인이 호스트가 되어 작은 서버를 만들면 다른 유저가 접속 가능한 방식이다.

팰 월드의 특이한 점은 호스트가 게임을 종료하면 서버 또한 종료되기 때문에, 접속중이던 다른 유저도 

모두 게임이 종료되어 당황했던 기억이 있다.
보통 다른게임의 경우, 호스트가 연결이 끊어지면 접속중인 다른 유저가 호스트가 된다.

 

데디케이티드 서버

우리가 흔히 말하는 '서버' 그 자체라고 할 수 있다.

게임 서버 전용 컴퓨터가 별도로 존재하고, 이는 게임사에서 관리한다.

원리 자체는 리슨 서버와 어느정도 비슷한 듯..?

다만, 고정적인 하나의 서버만이 존재하게 되기 때문에

서버의 성능만 보장된다면 다른 방식보다 훨씬 안정적이며 절대적인 서버라고 할 수 있다.

 

P2P 서버는 

세션에 접속한 모두가 호스트가 되는 서버 방식이다.

해당부분에 대해서는 별도의 서버가 필요 없기 때문에 비용적인 측면에서 유리하고
별도의 서버 없이 접속자간 상호작용이 즉각적으로 이루어져서 반응속도가 빠르다.

하지만 세션에 접속한 인원이 많아질 수록 필요 연산량이 급증하기 때문에

다수 인원의 연결이 필요한 방식에는 적합하지 않고 

소규모의 유저간의 통신이 필요할 때 적합한 방식이다.

(대표적인 예시로 던전 앤 파이터의 파티플레이가 있다.)

 

 

 

오늘은 게임 서버의 역사와 종류에 대해 알아보았는데,

개인적으로 느낀 점으로는

명확하게 구분되어진다는 느낌보다는 그때 그때 어떤 게임이 사용한 방법을 정리한 내용 이라는 느낌이 들어

조잡하고 잘 이해되지 않는 부분도 있지만, 그래도 몰랐던 것들은 알아가는 과정이 의미가 있다고 생각한다.

 

 

    1. 게임 서버와 게임 클라이언트의 개념을 학습하고, 각각의 역할과 기능을 정확하지는 않더라도 자신이 좋아하는 게임을 바탕으로 설명해주세요.

      이해한 바로는,
      게임 클라이언트란 유저 개인이 특정 게임 서버에 접속하여 유저와 서버간 통신을 가능하게 해주는 프로그램
      그 외에 그래픽, 사운드, 렌더링 등 서버가 그때 그때 송신하기 어려운 무거운 정보들을 미리 개인의 디스크에 
      저장시키는 일종의 패키지 라고 할 수 있다.

      게임 서버는 각각의 클라이언트를 통제하여 하나의 온라인 환경을 만들어주는 역할을 하며
      클라이언트에서 실행된 동작을 계산하여 결과를 출력하거나, 
      보관이 필요한 데이터를 저장하는 심장의 역할을 한다.

      게임 '블루 아카이브' 의 경우 앱 스토어에서 다운받는 앱 자체가 클라이언트 라고 할수 있으며
      해당 블루 아카이브 앱을 실행하는 것으로 블루 아카이브(넥슨)의 서버에 접속 할 수 있게 된다.

        
    2. 자신이 조사한 게임 서버의 역할/기능 중 가장 흥미롭다고 생각한 것이 무엇인지 설명해주세요.

      통신의 속도에는 분명히 한계가 있다고 생각한다. 특히나 과거에는 그 환경이 더 열악했다.
      하지만, 대전게임이나 RTS 게임에서는 즉각적인 반응속도가 중요했기문에
      과거에 이를 어떻게 극복했는지 궁금했는데,
      P2P 라는 서버 방식을 사용하여 클라이언트 간의 직접적인 정보 전달로
      핑의 한계를 극복해 게이머를 만족시켰던 내용이 흥미로웠다.

      문득, 과거에 스타크래프트를 플레이 할 때
      상대의 통신환경이 안좋다면 나 까지 게임이 느려져서 답답했던 기억이 있는데,
      그 이유도  P2P의 통신 방식 특성 때문이라는걸 알게되었다.

 

 

 

+ Recent posts