칼럼

[강상진의 Tech유람] 게임 스트리밍, 하드웨어 성능을 클라우드로 극복하다.

발행일시 : 2019-04-08 00:00
[강상진의 Tech유람] 게임 스트리밍, 하드웨어 성능을 클라우드로 극복하다.

게임 산업은 관련한 IT 기술을 발전시키는데 큰 역할을 해왔다. 실사용자의 수요가 있는 곳에 필요한 기술을 개발하게 되는 시장원리의 이치에 따라 많은 기술들이 게임 산업을 위해 발전해온 것이다.
 
대표적으로는 고화질의 그래픽을 빠르게 연산하여 일정한 프레임으로 만들기 위한 GPU(Graphics Processing Unit)와 같은 H/W를 만들게 하였고, 수많은 사용자가 동시에 게임을 즐기기 위한 분산형 N/W 구현, 사람과 같이 똑똑한 캐릭터를 만들기 위한 인공지능 기술을 S/W에 탑재하여 실제 세계에 보다 가까워지는 게임이 만들어지고 있다.
 
클라우드 컴퓨팅 또한 비즈니스에 많은 변화를 가지고 왔다. 저렴한 원격의 파일 저장소, 빅데이터 솔루션, API로 쉽게 사용할 수 있는 머신러닝과 인공지능, SaaS 형태의 CRM, KMS, Office 솔루션 등의 클라우드 서비스는 이제 기업에서 없어서는 안 될 중추 역할을 하고 있다. 클라우드 기술이 가장 각광받고 있는 부분은 대용량 저장소와 분석 기술을 탑재한 빅 데이터와, 이렇게 저장되고 가공된 데이터를 활용한 머신러닝과 인공지능, 빠른 시스템 확장성을 자동화하고 쉽게 관리할 수 있는 쿠버네티스와 같은 가상화 기술이다.
 
게임 스트리밍의 출현
 
최근, 클라우드에서 색다른 관심을 받고 있는 분야가 바로 클라우드를 활용한 게임 스트리밍 분야이다. 넷플릭스(Netflix)가 영화와 드라마와 같은 콘텐츠를 별도의 셋톱 박스와 같은 장비 없이 인터넷을 통한 구독(subscription)과 같은 형태로 사용자에게 전달하듯이, 게임 또한 구독의 개념을 도입하고 별도의 클라이언트 단말기기 없이 즐기자라는 개념에서 시작된 기술이다.
 
필자가 마이크로소프트에서 프로그램 매니저(Program Manager)로 일할 때 담당하던 제품 중에 Xbox, Zune, Surface와 같은 게임 콘솔, 모바일과 테이블형 엔터테인먼트 H/W들이 있었다. 당시에 Xbox 콘솔의 무게와 부피는 데스크톱보다 조금 작은 수준이었고, CD를 넣고 게임을 구동할 때의 하드웨어 소음과 발열은 게임을 좋아하지 않는 가족들의 미움을 충분히 살 정도의 수준이었다. 지금도 MMORPG나 고화질의 그래픽이 포함된 FPS 게임을 충분히 즐기기 위해서는 그래픽 카드와 메모리,  CPU 등의 부품이 고급 사양이여만 제대로 즐길 수 있는 상황이다.
 
게임 스트리밍은 고품질의 게임 애플리케이션을 고가의 고성능 장비를 클라이언트가 아닌 서버에서 준비하고, 이를 마치 인터넷 방송과 같이 실시간으로 클라이언트에 제공하고, 게임을 즐기는 게이머들은 일반적인 스펙의 PC, IPTV, 모바일 단말에 저가의 컨트롤러를 연결하여 즐길 수 있다는 장점이 있다.
 
스트리밍 기술의 고찰
 
스트리밍(streaming)이란 끊임없이 미디어 콘텐츠를 사용자에게 제공하는 기술을 일컫는다. 일반적으로 멀티미디어 콘텐츠를 인터넷을 통해 사용자의 단말기에 전달하는 기술을 의미하는데, 단순한 파일 다운로드 방식과는 달리 멀티미디어 특성에 맞는 전처리 과정을 가지고 있다.
 
먼저 미디어를 디지털 형식으로 변환하고 압축하기 위한 인코딩(encoding) 과정을 거치고, 사용자의 네트워크와 단말기 성능 환경에 맞게 다양한 해상도의 품질을 확보하기 위한 트랜스코딩(transcoding), 저마다 다른 미디어 전송 및 재생 형식을 가진 다양한 디바이스를 지원하기 위한 패키징(packaging) 과정이 이에 해당한다.
 
이렇게 전처리가 완료된 멀티미디어 콘텐츠는 원격지의 사용자에게 빠르게 전달하기 위해 인터넷 구간에 캐시와 가속, 로드밸런싱, 이중화 구성(failover)등이 필요하며 일반적으로 CDN 업체를 통해 이를 제공한다. 전달이 완료된 조각 파일 형식의 미디어들은 다시 사용자의 플레이어에서 재조립되어 영상의 형태로 서비스가 된다.

인터넷상의 라이브 미디어 방송에 필요한 기술들 <인터넷상의 라이브 미디어 방송에 필요한 기술들>

위의 그림과 같이 일반적인 라이브 미디어 스트리밍은 미디어 서버에서 전처리 과정을 통해 만들어진 미디어 콘텐츠를 인터넷을 통해 사용자에게 전달하는 단일 방향 흐름의 워크 플로우를 가지고 있다.

게임 스트리밍 또한 게임 구동 화면을 마치 영화의 장면처럼 지속적으로 비디오 형식으로 전달하기 위해 알맞은 파일 형식으로 압축하고 변형하는 등의 동일한 전처리 과정과, 이를 인터넷 상의 모든 사용자에게 전달하는 전달 과정을 동일하게 포함하고 있다.
 
게임 스트리밍이 사용하는 기술은?
 
게임 스트리밍 기술은 크게  세 가지 기술로 나눌 수 있다.

먼저, 수많은 사용자를 대응하기 위해서 대규모의 클라우드 노드를 구성하고, 게임 콘솔이나 고성능 PC, 모바일 단말기에서 수행하던 게임 로직을 각 클라우드 노드 상에서 실행하는 기술, 클라우드에서 생산된  게임 영상을 유무선 인터넷을 통하여 사용자의 단말기에 스트리밍 하는 기술, 사용자의 컨트롤러에 입력한 사용자 입력을 클라우드 노드에 즉시 전송되어 게임에 반영하는 기술이 이에 해당한다.
 
일반적인 온라인 게임의 아키텍처와는 달리, 그래픽 생산과 이를 사용자에게 전달하기 위한 압축 기술, 게임 상태를 온라인 상에 흩어진 사용자에게 동일하게 전달하는 로직, 각 사용자의 입력을 전달받아 이를 처리하는 입력 프로세싱 등의 모든 로직이 게임 서버에 존재한다.

일반적인 온라인 게임과 게임 스트리밍의 아키텍처 비교 <일반적인 온라인 게임과 게임 스트리밍의 아키텍처 비교>

게임의 대부분 연산과 로직, 컨텐트들이 서버로 옮겨짐에 따라, 온라인 게임의 특성상, 갑자기 늘어날 수 있는 게이머 들의 동시 트래픽을 소화하기 위해, 게임 서버는 클라우드 상의 가상 머신(VM)에서 실행되고 트래픽에 맞게 적절히 스케일링(scaling) 된다. 클라이언트는 단순히 조작(control)에 대한 입력만 클라우드 상의 서버에 전달하는 역할과 스트림 된 게임의 내용을 재생하는 역할을 하게 되어 결과적으로 저전력과 저사양의 최소한의 환경만 필요하게 된다.
 
격변하는 게임 스트리밍 시장
 
구글은 이미 2018년에 진행한 “Stream 프로젝트”에서, "어쌔신 크리드 오디세이"라는 게임을 1080P HD 해상도 상에서 60 프레임으로 제공하는 데 성공하였다. 이어 최근에는 크롬 브라우저로 게임 스트리밍을 즐길 수 있는 서비스인 “스타디아(Stadia)”를 통해 본격적인 서비스를 개시하였고, 전 세계에 보유한 클라우드 네트워크를 활용할 계획이다.
 
마이크로소프트는 “xCloud" 프로젝트의 베타 버전을 연말에 시작할 예정이다. 오랫동안 Xbox 콘솔 게임과 PC 게임, 게이밍 H/W 명가의 자리를 지킨 만큼, 마이크로소프트 리서치(Microsoft Research)의 연구를 통해 게임 스트리밍에 적합한 네트워크 토폴로지와 네트워크 지연을 줄일 수 있는 비디오 인코딩/디코딩 연구를 하고 있다.
 
전자상거래 업체인 아마존은 현재 아마존 프라임 가입자에게 ‘트위치 프라임(Twitch Prime)’을 통해 매월 무료 게임을 제공하는 제한된 형태의 스트리밍 서비스를 지원하고 있으며, 내년부터는 직접 게임 스트리밍 서비스를 제공하는 자체적인 사업을 AWS 인프라를 활용하여 시작할 전망이다.
 
그 외에도 전통적인 게임 개발사인 EA(Electronic Arts)의 "프로젝트 Atlas", 엔비디아의 "Geforce Now", 스팀의 "In-Home Streaming" 서비스 등을 준비했거나 이미 서비스를 시작하였으며, 문라이트(moonlight)와 같은 오픈소스 또한  활발히 연구되고 있다.
 
게임 스트리밍 산업이 성공하기 위한 핵심 기술 요소
 
게임 스트리밍이 앞으로 얼마나 빠르게 성공할 수 있느냐는 다음과 같은 요소에 달려 있다.  
▶ 4K 고해상도의 게임 스크린 화면을 좀 더 가볍게 압축할 수 있는 비디오 인코딩/디코딩 기술
▶ 대용량 스트리밍을 빠르게 전송할 수 있는 글로벌 서버의 배포 수준과 네트워크 지연 극복 기술
▶ FPS와 같은 게임에서 사용자의 입력 또한 빠르게 서버에 전달하는 네트워크 토폴로지
▶ 모바일, 태블릿, PC 등의 다양한 기기의 입력 환경 제약을 극복하기 위한 컨트롤러 장치의 혁신
▶ 양질의 게임을 스트리밍 서비스로 빠르게 전환하거나 개발하여 퍼블리싱 할 수 있는 사업성
 
가장 중요하고 오랜 투자가 필요한 부분은 역시 게임 환경을 저해하지 않는 수준의 네트워크 수준을 확보하는 것이다. 네트워크 상의 지연 현상을 해결하지 못한다면 게임에서의 가장 중요한 요소인 게임과 인간의 반응 속도가 예상과 달라지게 될 것이고, 게임성이 보장될 수 없다. 그렇지만 서비스 사업자 입장에서는 글로벌한 인프라를 촘촘히 보유하는 것도 상당한 비용과 시간이 걸리는 문제이기에, 이미 글로벌한 서비스 인프라를 확보한 업체들이 훨씬 우위에 있다고 할 수 있다.
 
다만, 5G 통신이 대중화되면서 게임과 이동 통신이 결합되면 네트워크 부분은 예상보다 빠르게 해결될 수도 있기 때문에, 향후 이동통신 기술의 발전으로 인해 게임 스트리밍 산업이 탄력을 받을지 지켜보는 것도 흥미로운 기다림일 것이다.

강상진 sangjinn@gmail.com CDN과 클라우드 보안 전문 기업인 아카마이 테크놀로지스(Akamai Technologies)에서 웹 성능 제품을 담당하고 있다. 이전에는 삼성SDS와 마이크로소프트에서 소프트웨어 개발 및 프로그램, 프로젝트 관리를 담당하였다. 다양한 IT 기술을 글과 컨퍼런스, 교육을 통해 많은 이들에게 전달하고 공유하며, 상호 작용하는 IT 엔지니어의 삶을 즐기고 있다.

(*이 칼럼은 Nextdaily의 편집방향과 다를 수 있습니다.)

© 2019 nextdaily.co.kr 무단전재 및 재배포금지

(주)넥스트데일리 | 등록번호 : 서울 아 01185 | 등록일 : 2010년 03월 26일 | 제호 : 넥스트데일리 | 발행·편집인 : 구원모
서울시 금천구 가산디지털2로 123, 701호ㅣ발행일자 : 2005년 08월 17일 | 대표전화 : 02-6925-6318 | 청소년보호책임자 : 나성률

Copyright © Nextdaily. All Rights Reserved