분산형 서버 구조 기반 Map 밸런스 서버를 이용한 게임 서버 간 부하 관리 방법 A Management method of Load Balancing among Game Servers based on Distributed Server System Using Map Balance Server원문보기
일반적으로 분산 형 구조의 게임서버시스템 하에서 게임 배경처리는 일정크기로 나누어진 여러 개의 부분 배경들을 다수의 게임서버가 나누어서 처리한다. 그런데 분할된 게임 배경에 대한 게임 사용자들의 선호도가 사용자의 특성에 따라 다르게 나타나기 때문에 모든 게임 배경 내 사용자들의 분포를 일률적으로 만들기는 매우 어렵다. 이 때문에 캐릭터들이 한 장소에 급격히 집중되어 게임이 진행되는 경우, 서버가 처리할 수 있는 한계를 넘어 시스템이 일시적으로 다운되는 문제가 발생 할 수 있으며, 그 반대의 경우 수행할 캐릭터가 없는 상황에서도 배경처리를 계속 수행해야 하므로 게임서버의 효율이 상당히 떨어지게 된다. 이를 해결하기 위하여 본 논문에서는 Map밸런스 서버를 이용하여 사용자 처리를 위한 부하를 비교적 균등화 시킬 수 있는 Map 관리 방법을 제안 하였다. 제안한 모델 하에서는 사용자가 활동하지 않는 게임 내 공간 처리를 일시 중지시키는 방법으로 게임 서버의 부하를 감소시킬 수 있으며, 서버 간 처리하는 배경을 새로 할당하여 부하를 재분배함으로써 서버들의 효율을 극대화할 수 있다.
일반적으로 분산 형 구조의 게임서버시스템 하에서 게임 배경처리는 일정크기로 나누어진 여러 개의 부분 배경들을 다수의 게임서버가 나누어서 처리한다. 그런데 분할된 게임 배경에 대한 게임 사용자들의 선호도가 사용자의 특성에 따라 다르게 나타나기 때문에 모든 게임 배경 내 사용자들의 분포를 일률적으로 만들기는 매우 어렵다. 이 때문에 캐릭터들이 한 장소에 급격히 집중되어 게임이 진행되는 경우, 서버가 처리할 수 있는 한계를 넘어 시스템이 일시적으로 다운되는 문제가 발생 할 수 있으며, 그 반대의 경우 수행할 캐릭터가 없는 상황에서도 배경처리를 계속 수행해야 하므로 게임서버의 효율이 상당히 떨어지게 된다. 이를 해결하기 위하여 본 논문에서는 Map 밸런스 서버를 이용하여 사용자 처리를 위한 부하를 비교적 균등화 시킬 수 있는 Map 관리 방법을 제안 하였다. 제안한 모델 하에서는 사용자가 활동하지 않는 게임 내 공간 처리를 일시 중지시키는 방법으로 게임 서버의 부하를 감소시킬 수 있으며, 서버 간 처리하는 배경을 새로 할당하여 부하를 재분배함으로써 서버들의 효율을 극대화할 수 있다.
Generally, In distributed online game server system, game maps are processed separately by means of dividing into several unit blocks. But the keeping normal distribution of user in game map is very difficult because preferences of game users are not same according to individual user's private chara...
Generally, In distributed online game server system, game maps are processed separately by means of dividing into several unit blocks. But the keeping normal distribution of user in game map is very difficult because preferences of game users are not same according to individual user's private character. For this reason, if the huge number of users concentrate on particular region of same game map at once, the game server exceed their threshold so that the system can be getting down. Conversely, the efficiency of system goes down considerably because the game server must perform map processing continuously even under user_empty situation. To solve this problem, in this paper, we propose a Map management method to control relatively normal distribution of users in game maps using Map Balance Server. In suggested model, we can reduce the load of game servers by means of turn off the game map processing temporary when a server is under user_empty situation. we also can maximize server performance by means of redistribution of map processing load among servers.
Generally, In distributed online game server system, game maps are processed separately by means of dividing into several unit blocks. But the keeping normal distribution of user in game map is very difficult because preferences of game users are not same according to individual user's private character. For this reason, if the huge number of users concentrate on particular region of same game map at once, the game server exceed their threshold so that the system can be getting down. Conversely, the efficiency of system goes down considerably because the game server must perform map processing continuously even under user_empty situation. To solve this problem, in this paper, we propose a Map management method to control relatively normal distribution of users in game maps using Map Balance Server. In suggested model, we can reduce the load of game servers by means of turn off the game map processing temporary when a server is under user_empty situation. we also can maximize server performance by means of redistribution of map processing load among servers.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 대규모 사용자를 수용하는 MMORPG에서 사용자의 선호도로 인한 불균등한 게임 배경 점유에 따른 각 서버 부하의 불균형을 Map 밸런스를 제어하는 방법을 통하여 해결하여 게임 사용자 처리를 위한 각 서버들의 효율을 높이고 지연없는 게임이 진행될 수 있도록 하는 분산 처리 모델을 제안하였다.
이를 해결하기 위하여 본 논문에서는 Map 밸런스 서버를 이용하여 사용자 처리를 위한 부하를 비교적 균등화 시킬 수 있는 Map 관리 방법을 제안하였다.
제안 방법
5단계 이전에 운영하던 서버의 Map 관리 처리를 종료하고 Map을 이동한 새로운 서버에서에서 Map 관리를 수행한다. 이 때 Map 관리의 일관성을 유지하기 위하여 Map 관리를 이동한 상호 두 서버들은 완전한 동기화가 이루어지기 전에는 원래 Map을 관리한 서버에서 처리한 게임 데이터를 Map 밸런스 서버를 통하여 이동할 예정인 서버로 보내주어 게임 데이터를 동일하게 유지시켜야한다.
이것을 통하여 유지 시켜야 할 Map과 off 시켜야 할 Map을 찾아낸다. 그리고 Map 밸런스서버의 총 인원에 따른 연산 량을 감시하고 그 데이터를 통하여 일정 시간마다 서버 간 부하를 비교하여 과부하 때문에 연산 장애가 나타날 수 있는 가능성 여부를 검사하고 부하가 가장 적게 걸려있는 이동시킬 서버를 찾아낸다.
하지만 이 구조는 전체의 게임 배경을 분할하여 분할된 배경을 여러 서버가 함께 나누어 처리하는 방식으로 많은 사용자들이 한 배경에 갑자기 몰려들었을 경우 해당 게임 서버의 부하가 급격히 증가하여 최악의 경우 시스템 다운이 일어 날 수 있으며 반대로 어떤 배경 안에 캐릭터가 거의 존재하지 않을 경우 시스템은 거의 사용되지 않아 자원을 낭비하게 된다. 이를 해결하기 위하여 Map 밸런스 서버를 기존 시스템에 추가하여 기존 분산시스템이 가지는 단점을 해결하였다.
대상 데이터
3단계 가장 부하가 적은 Map을 선정하여 현재 가장 부하가 적게 걸린 이동 할 서버에 통보한다.
데이터처리
본 장에서는 참고문헌 [2]에서 제안한 기존 분산형 구조의 온라인 게임 시스템과 본 논문에서 제안한 Map 밸런스 서버의 기능과 동작을 비교하였다.
성능/효과
제안한 Map 밸런스서버 모델하에서는 개개의 게임 서버에서의 불필요한 연산을 사전에 제거하여 서버의 효율을 향상시키고, 이에 따라 생성되는 여분의 성능을 다른 서버들의 부하를 나누어 가질 수 있게 하여 전체 시스템의 효율을 높일 수 있다.
후속연구
이 문제를 해결하기 위하여 향후 서버 간 Map의 이동이 이루어지게 되는 기준이 되는 서버 간 부하 차이의 적정한 레벨의 선정에 관한 연구가 필요하다. 또한 2개의 서버에서 같은 Map을 동시에 수행할 때 야기되는 동기화 시의 오차 발생을 막기 위한 상호 데이터 확인 작업에 대한 통계적인 실증적 연구도 추가로 필요하다.
이 문제를 해결하기 위하여 향후 서버 간 Map의 이동이 이루어지게 되는 기준이 되는 서버 간 부하 차이의 적정한 레벨의 선정에 관한 연구가 필요하다. 또한 2개의 서버에서 같은 Map을 동시에 수행할 때 야기되는 동기화 시의 오차 발생을 막기 위한 상호 데이터 확인 작업에 대한 통계적인 실증적 연구도 추가로 필요하다.
질의응답
핵심어
질문
논문에서 추출한 답변
분산형 구조의 게임 서버 시스템은 어떤 구조를 띄고 있는가?
이에 반하여 분산형 구조의 게임 서버 시스템은 그림 3과 같이 하나의 게임을 운영하는 데 필요한 기능요소 즉, 캐릭터생성/삭제, 게임 Map 관리, 채팅, 거래 등을 위한 인증, 게임 룰 처리, 통신접속 및 사용자 정보관리에 대한 기능을 분리한 후, 이들을 각각의 독립적으로 담당하는 로그인/업데이트서버, 통신서버, 게임서버, 데이터베이스서버 등으로 분산시킨 후 각 서버들을 초고속의 내부 망으로 연결하여 게임을 처리하는 구조이다.
대칭형 서버에서 서비스 비용이 사용자 수 증가에 따라 선형적으로 증가하는 이유는?
대칭형 서버는 그림 2에서 보는 바와 같이 게임클러스터에 속해있는 서버들이 하나의 집합개념을 가지고 동작하기 때문에 서비스 비용이 사용자 수 증가에 따라 선형적으로 증가한다.
단일 서버구조에서 불가능한 대규모 사용자를 처리하기 위해서 고안된 서버 구조에는 어떠한 것들이 있는가?
이를 해결하기 위하여 그림 2와 같은 여러 개의 서버가 하나의 클러스터로 묶여서 하나의 게임배경을 처리하는 대칭형 클러스터링구조와 그림 3과 같이 게임서버가 수행하는 기능들을 독립적으로 분산 운용하여 각 기능을 독립적인 서버가 담당하도록 하는 분산형 다중서버구조의 채택이 대세를 이루고 있다[2].
참고문헌 (10)
제시카 멀리건, 브라짓 패트로브스키, 온라인게임기획, 이렇게 한다, 제우미디어, 2006.
이남재, 곽훈성, 진화하는 온라인 롤플레잉 게임을 위한 분산형 게임 서버 모델, 한국게임학회 논문지 제 2권 1호, pp 36-41, 2002.
T. Henderson: "Latency and Behaviour on a Multiplayer Game Server", Proc. of 3rd Int'1. Workshop on Networked Group Communication (NGC2001), LNCS2233, pp.1-13, 2001.
장봉석, 양기철, 배상현 광대역 이동통신망의 데이터 트래픽 공평서비스를 위한 상향링크 스케줄링 알고리즘, 한국정보기술학회 논문지 VOL.9 NO. 7, pp.85, 2011
G. Huang, M. Ye, and L. Cheng, "Modeling system performance in MMOG," IEEE Communications Society Globecom Workshops 29, pp.512-518, 2004.
A. Abdelkhalek, A. Bilas, and A. Moshovos, "Behavior and performance of interactive multi-player game servers," ISPASS01(2001), Vol.4, No.6, pp.137-146, 2001.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.