This paper introduces the implementation of client and server for the FPS game which adopts the control element of the racing genre. Game playability is enhanced by combining the users interaction, shooting elements of FPS and the car control element of racing game. User’s tank can move along the slope and the client can stably synchronize with server independently of hardware. By deploying the neutral monster, game excitement is raised. Game server is designed using the IOCP socket to provide the multiplayer game. The proposed game is implemented, and shows the effectiveness of the combining method.
In cloud and game servers, SSDs are used as cache on large capacity disk-based storage. In that configuration, the SSD can be exploited as write-back or write-through cache. Though the write-back cache can improve write performance significantly, data can be lost when the SSD fails. On the contrary, performance improvement is limited in the write-through cache though it has high reliability. By the way, reliability can be improved by applying RAID technique to SSD cache while exploiting write-back for better performance. In this paper, we analyse the reliability and the performance of hybrid storage using SSD cache over disk-based primary storage. In particular, we mathematically analyse reliability and also measure performance of real storage systems with various SSD cache configurations.
The UCC (User Created Contents) culture has evolved through the game. Video sites Photo specialized UCC the UCC, real-time broadcasting, such as flash-based discusses a range of the UCC. This phenomenon is not an exception in the game too. Games, especially the 'Mercy nima (Machinima)' the words evolved as a form of one of our shows in the UCC. Games like this are a lot of video UCC and the service model, but efficient video content for the service based on the server side of the codec is not much research on automation technology. In this paper in order to improve the server-side based on the automatic translation system, has developed a codec, video game technology in the future will have to contribute to the development of the UCC.
리눅스는 공개용 운영체제였으나 점차 그 사용이 늘어나고 있어 현재는 서버 및 개인용 컴퓨터로도 사용되고 있는 효율적인 운영체제 이다. 이에 본 논문에서는 국내의 게임 개발업체의 게임제작 및 운용기술의 효율성을 위해서 리눅스 서버 기반의 게임 설계 소프트웨어를 개발 하고자 한다. 이를 통해서 게임 산업체의 개발 공정 프로세스의 효율적인 운영 및 관리가 가능하다. 그리고 통신 방송 융합 환경에서의 양방향 게임 설계 공정에도 효율성을 줄 수 있다.
다양한 플랫폼에 따라 게임을 개발하는 데에는 중복되는 작업들이 있는 것 같다. 각 플랫폼 에 따라 데이터를 관리하고 처리하는 유사한 작업이 포함되는데, 이는 개발기간에도 영향을 미 친다. 본 논문은 최근 유행하고 있는 전투 시뮬레이션 게임을 멀티 플랫폼 기반으로 서버를 설 계 하고 제작하여 플랫폼 형태와 상관없이 동일한 서버와 같은 전투 시뮬레이션의 결과를 볼 수 있는 서버 프레임 워크를 제안한다. JSON 데이터 포맷을 사용하여 속성-값 쌍으로 이루어 진 프로토콜을 사용하여 디버깅하기 편하게 설계 하였다. 프로그래밍 언어에 독립적이기 때문 에 다양한 언어와 통신을 할 수 있는 장점도 가지고 있다. 서버는 아마존 서버를 이용하여 쉽 게 서버 구조를 확장하거나 서버 스펙을 업그레이드 할 수 있는 모델을 제안한다.
데이터 센터의 전력 소모가 크고, 그 중에 컴퓨터 서버의 전력 소모 비중이 높기 때문에, 최근 서버의 전력 절약을 위한 연구가 다양한 방향에서 진행되고 있다. 서버 컴퓨터의 구성 유닛들 중에서 특히 CPU는 주된 전력 소모 원인이다. 본 논문에서는 게임 서버 클러스터 환경에서 서버 CPU의 전력 소모를 최소화하기 위한 신규 클라이언트들을 서버에 배정하는 방법을 제안한다. 우리는 클라이언트-서버 배정 문제를 최적화 문제로 모델링하고, 시뮬레이티드 어닐링 기반 방법으로 그 해를 구한다. 우리의 방법의 특징들 중 하나는 CPU의 동작 주파수를 부하에 따라 적절히 선택하는 것으로서, 저 부하시에는 낮은 주파수를 선택해 전력 소모를 줄이게 된다. 우리의 조사에 따르면, 온라인 게임 서버의 전력 소모를 고려한 클라이언트-서버 배정에 관한 연구는 거의 없었다.
게임 애플케이션에서 사용하는 데이터의 크기가 점차 커짐에 따라 물리적인 게임 서버 자원은 점차 늘어 가고 있다. 이에 따라 서버의 I/O 성능을 향상시키기 위해 게임 서버에 I/O 가상화 기술 을 도입하고자 하는 요구가 점차 증가하고 있다. 그러나, I/O 지연 시간이 수시로 변하는 게임 서버 는 I/O 응답성을 쉽게 보장하기가 힘들다. I/O 가상화 효과를 극대화하기 위해 I/O 응답성 보장은 매우 중요하며 가상 머신의 우선순위에 따라 I/O 지연 시간을 관리할 수 있는 I/O 스케줄링 기법이 반드시 필요하다. 따라서 본 논문에서는 가상화 환경에서 최대 I/O 지연 시간을 보장하는 효율적인 지연 제약 스케줄링 기법을 제안한다. 또한 제안한 기법을 이용하여 지연시간을 보장하는지 실험을 하여, 패킷의 손실량이 줄고 스케줄링의 공정성이 증가한 것을 확인하였다.
온라인 게임 개발을 위해서는 서버 개발 기술이 중요하다. 왜냐하면 사용자들이 게임을 진행 하는 클라이언트가 서버에 종속적으로 구현되기 때문이다. 본 연구는 서버 개발 기술 중 서버 가 데이터를 데이터베이스에 저장하고 불러오는 데이터연동 방식을 연구하였다. 서버의 데이터 연동은 장소에 관계없이 게임을 이어서 진행할 수 있는 온라인게임의 특성 때문에 매우 중요한 사항이다. 본 논문에서는 여러 데이터연동 방식을 정의와 함께 제안하며 분류하였다. 제안된 방 식들을 사례를 통해 평가하였다. 본 연구를 통해 향후 온라인 게임 서버의 개발 시에 게임의 특징에 맞는 데이터연동 방식을 선택할 수 있을 것으로 기대된다.
온라인 게임 개발에 있어 전통적인 개발 방법론은 서버, 클라이언트를 별도의 모듈로 개발하 는 것이다. 하지만 이 방법은 네트워크 프로토콜 정의, 기획 데이터 관리 등 중복된 모듈이 많 아 개발 비용과 유지보수 비용이 증가한다. 이에 서버, 클라이언트 개발 시 각 영역별로 통합된 단일 모듈을 기반으로 개발하는 방법론을 제시하였다. 제시된 방법론을 온라인 게임 “충무공 해 상대전”에 적용하여 그 효율성을 보였다. 적용된 사례에서는 서버와 클라이언트의 모듈 통합으 로 프로젝트 규모를 15.1% 줄일 수 있었다.
가상공간에서 대규모 게임 사용자들 간의 상호작용이 활발히 일어나는 MMORPG(Massively Multi-player Online Role-Playing Games)에서는 다수의 클라이언트의 접속 요청 및 작업 요청을 실시간으로 빠르게 처리할 수 있어야 한다. 그러나 클라이언트의 접속자 수가 늘어날수록 처리해야 할 작업량이 많아지며, 게임서버의 부하도 높아지게 된다. 이를 해결하기위해 많은 개발자들은 분산서버구조를 적용하여, 동적 맵 분할, 서버의 기능에 따른 부하 분산 등의 기법들을 제시하고 있다. 현재 대부분의 MMORPG 게임서버는 하나의 월드를 Zone방식으로 나누어서 각각의 영역을 다수의 게임서버가 담당하여 게임을 진행하고 있다. 이러한 방식은 사용자의 빈번한 서버이동에 따른 데이터 갱신 등의 오버헤드를 발생하여 게임서버에 큰 부하를 주고 있다. 따라서 본 논문에서는 게임서버의 부하를 줄이기 위해 데이터의 연산을 담당하는 연산서버를 적용하여 기존 게임서버의 효율은 높이고 더 많은 사용자의 접속과 작업을 처리할 수 있는 구조를 제안하고, 수학적인 모델링과 성능분석을 통해 기존 연구들과의 비교 시의 제안 기법의 효율성을 보였다.
동일한 가상공간에서 대규모 게임 사용자들 간의 상호작용이 활발히 일어나는 MMORPG(Massively Multi-player Online Role-Playing Games)에서는 많은 부하가 발생하며 이로 인하여 지연현상 및 자원부족 등의 문제를 발생시킨다. 이를 해결하기 위해 많은 개발자들이 분산서버 연구에 노력하고 있지만 주로 정적, 동적 맵 분할에 의한 분산 서버 연구개발에 편중되어있다. 본 논문은 MMORPG에서 서버의 부하 균등화를 위한 게임 사용자 중심의 분산 처리 기법을 제안하고, 4장에서의 구현을 통한 성능평가를 통해 본 논문에서의 제안 기법이 심리스 (seamless) 서버 모델과 존 서버 모델에서 생기는 핫스팟 (hot-spot) 및 특정 서버에 대한 게임 사용자 몰림 현상에 대해 효율적으로 대응할 수 있음을 보였다.
한 업체가 신규 게임 또는 사용자가 많지 않은 게임들을 서비스 하는 경우, 게임별 별도의 서버를 두는 것 보다 서버 여러 대에서 함께 서비스하는 경우가 편리할 것이다. 본 논문에서는 동일 성능의 서버들로 구성된 클러스터 상에서 게임 여러 개를 효과적으로 서버에 배치하는 방법을 제안한다. 우리의 방법에 의하면, 서버들간 부하 불균등을 줄여 사용자 기각률을 최소화할 수 있는 게임 배치를 구할 수 있다. 본 논문에서 제안한 방법은 게임 서비스 시 서버 수, 서버당 게임 수 등과 같은 서버 운영 사항들을 결정하는데 도움을 줄 것으로 예상한다. 우리의 조사에 따르면, 서버 클러스터에서의 게임 배치에 관한 기존 연구는 거의 발표되지 않았다.
대부분의 온라인 게임서버 엔진에서의 Accept()사용한 Looping방식의 동적인 메모리 할당 방식의 사용은 다수의 클라이언트를 동시에 수용하고 진행해야하는 온라인 게임 상의 로그인 서버엔진에 많은 부하와 함께 병목현상을 유발하게 된다. 따라서 본 논문에서는 온라인상에서의 효율적인 게임서버를 위해 정적인 메모리 할당기법을 사용하여 메모리 단편화를 최소화하고, 클라이언트의 접속 시 세션연결 및 클라이언트 객체의 초기화를 위해 발생하는 부하를 최소화하기 위한 AcceptEx()를 사용한 풀링기법과 정적메모리를 생성하여 동적 할당처럼 포인터로 할당하는 메모리 풀링 기법을 합친 객체 풀링기법을 제안하고, 제안 기법을 적용한 게임엔진을 설계하여 구현한 후, 성능평가를 통해 제안한 기법의 효율성을 보였다.