Ad Block 한번만 꺼주시면 안될까요..?
게임 개발/서버-통신

게임 서버의 종류 정리

UniCoti(유니코티) 2022. 8. 21.

게임의 서버에는 여러 종류가 있다.

자신의 게임 유형, 특징에 따라 올바른 방법을 사용하여

더 빠르고, 원활한 서버를 만들어야 한다.

 

그에 따라 몇 가지 방법을 소개하기 전에,

우리는 호스트, 서버, 클라이언트라는 개념을 알아야 한다.

간단히 설명하자만

클라이언트는 플레이어라고 생각하면 되며

조금 제대로 된 의미는 '게임을 플레이하는 컴퓨터'이다.

 

호스트는 서버가 하는 일중 하나이며 클라이언트들이 참가할 수 있는

네트워크 공간을 마련한다.

 

서버는 네트워크 공간마련, 게임 속 상호작용, 연산 등

게임에 필요한 연산을 해준다.

 

유니티에서는 Photon Engine의 상품인 PUN2+나 PUN2를 이용해서 만든다.


이제 종류를 설명하겠다.

 

1. 전용서버(Dedicated Server)

 

전용서버란 호스트가 방을 파놓고

클라이언트가 방에 들어가서

연산은 서버가 많이 해줄 수 있기 때문에

개인의 컴퓨터는 쾌적하게 플레이할 수 있다.

하지만 서버의 연산이 많아지기에 다른 방식에 비해서 고정비용이 발생한다.


2. 리슨서버(Listen Server)

 

리슨서버는 플레이어 중 한 명이

서버의 역할을 대신하여 참가한다.

그래서 "Play as Host"라고 불리기도 한다.

리슨서버는 개인의 컴퓨터중 하나가

서버의 역할을 해준다고 할 수 있기에

서비스 유지 비용이 적게 든다.

또한 물리적으로 가까운 사람들끼리 한다면

속도가 전용서버보다 빠를 수 있다.

 

하지만 리슨서버 방식은 호스트의 기기 성능에 따라

품질이 달라질 수 있다.

또한 호스트가 게임을 종료할 경우 게임을 일시정지하고

남은 클라이언트 중 한 명을 호스트로 선정하는 절차가 필요하다.


3. P2P(Peer to Peer)

P2P방식은 게임에 참가한 "모두"가 호스트 역할을 한다.

클라이언트들이 서로 직접 연결된 상태이다.

클라이언트가 직접 연산하고

그 값을 다른 클라이언트에 전파한다.

이방식은 전용서버가 없다는 점에서 리슨서버와 비슷하지만

서로 연결되어 있기에 어느 한 명이 게임을 나가도

호스트를 새로 선정할 필요가 없다.

 

하지만 P2P는 서로서로 이어져있기에

클라이언트(참가자)가 많아지면 각자의 연산이 급격하게 늘어난다.

그렇기에 통상적으로 P2P방식은 16명을 넘기지 않는다.


Tip

원래는 Peer to Peer인데 

two와 to의 발음이 비슷한 걸 이용하여

Peer two Peer로 바꾸고

Two를 숫자 2로 표기하여

Peer 2 Peer, 줄여서

P2P가 된 것이다. 하나의 문화이다.


이렇게 서버의 종류를 소개해봤는데

보안문제도 말해보자면

클라이언트에서 하는 일이 많을수록

보안에 취약하다.

웹사이트에서 f12로 명시되는 변수가 많은

웹게임이 보안에 취약한 것과 비슷한 이유이다.

 

그런 이유로 P2P서버는 호스트(서버)가 없고
클라이언트끼리 서버를 자처하기에 

해킹에 가장 취약하다.

 

리슨서버는 한 명이 서버를 자처하기에

P2P보다는 아니지만 해킹에 취약하다.

 

전용서버는 서버가 하는 일이 많고,

클라이언트의 연산비용이 적기에

해킹에 비교적 안전하다.

 

여기까지 서버의 종류, 보안, 팁을 적어봤다.


도움이 되었길 바라며,

 

끝.

댓글

💲 추천 글