KOS조
프로젝트 개요
기술개발 과제
국문 : EOS기반 분산형 클라우드 게이밍 플랫폼 개발
영문 : Development of distributed cloud gaming platform based on EOS
과제 팀명
KOS
지도교수
김성환 교수님
개발기간
2019년 3월 ~ 2019년 6월 (총 4개월)
구성원 소개
서울시립대학교 컴퓨터과학부 2013920054 임종범(팀장)
서울시립대학교 컴퓨터과학부 2013920017 김용준
서울시립대학교 컴퓨터과학부 2013920022 노기선
서울시립대학교 컴퓨터과학부 2013920055 장원석
서론
개발 과제의 개요
게임 산업 규모는 매 년 커져감에 반해 하드웨어의 보급의 속도는 그렇지 못한 편이다. 이에 블록 체인 기술과 함께 분산형 클라우드 게이밍 플랫폼 서비스를 제공, 사용자(게이머)로 하여금 다양 한 플랫폼에서 고사양의 게임을 플레이 할 수 있도록 도와주는 것이 주된 개발 과제이다.
개발 과제 요약
◇ EOS Block Chain을 활용한 분산형 클라우드 게이밍 DApp(Decentralized Application)
◇ 저사양 PC를 소유한 게이머가 고사양 게임을 플레이 할 수 있는 Platform
◇ 트랜잭션 처리 시 수수료가 필요 없는 EOS를 이용한 경제적인 서비스
◇ EOS의 월등한 트랙잭션 처리 속도로 인한 빠른 게임 플레이 환경 제공
◇ IPFS를 이용한 빠르고 쾌적한 스트리밍 서비스
개발 과제의 배경
◇ 게이머와 게임 산업의 규모는 커지고 있지만 하드웨어의 보급이 그 속도를 따라가지 못하고 있음 > 클라우드 게이밍을 통한 하드웨어 격차 감소
◇ 분산형 클라우드 게이밍 플랫폼 개발을 통한 향상된 스트리밍 서비스 제공 > 기존 클라우드 게이밍 플랫폼과 비교하여 스트리밍 지연속도 감소
◇ 기존 시장에서 사용되던 이더리움 기반이 아닌 EOS 기반 플랫폼을 개발 > 이더리움보다 월등한 EOS의 초당 트랜잭션 처리 수가 게임 처리 속도의 향상을 제공
개발 과제의 목표 및 내용
◇웹을 기반으로 한 실시간 스트리밍 게이밍 플랫폼 제공
◇ 다양한 사용자의 욕구를 충족시키기 위해 폭넓은 장르의 게임 지원
◇ EOS 기반의 DApp개발로 다양한 경쟁력 확보
◇ IPFS/Adaptive HTTP Protocol을 활용한 스트리밍 환경 개발
관련 기술의 현황
관련 기술의 현황 및 분석(State of art)
- 전 세계적인 기술현황
◇ 3세대 블록체인 후보 이오스(EOS)
1) EOS란?
1 프로젝트로서의 EOS
• EOS는 블록체인 프로젝트로서, 최초의 블록체인 OS(First Blockchain Operating System)을 표 방함. 즉, EOS는 DApp을 개발하고 구동하기 위한 플랫폼을 개발하는 프로젝트라 할 수 있음
※ ( DApp 이란? ) 탈중앙화 어플리케이션(Decentralized Application)의 약자. 데이터의 흐름, 저 장, 로직이 탈중앙화 되어 있어서 중앙화된 어플리케이션의 대표적인 문제점인 운영자의 탈선, 해 킹으로 인한 데이터 위변조, 개인 정보 유출, 서버 다운 등의 문제가 일어날 가능성을 극도로 낮춰 줌
• DApp의 한계
근간이 되는 블록체인의 성능 자체가 대부분 중앙화 서버대비 떨어지기 때문에 스케일링이 어렵 고, 사용자들이 트랜잭션을 일으킬 때마다 비용을 지불해야함. 또, 중앙화된 서버에서의 개발 방 식과는 전혀 다르기 때문에, 해킹에 취약해지거나 퍼포먼스가 떨어지는 문제가 있을 수 있음
• EOS는 이러한 한계를 극복하기 위한 프로젝트라고 할 수 있음.
고성능을 요구하는 상용 서비스(거래소, 소셜미디어 등)가 가능한 수준의 스케일링이 가능
사용자들이 플랫폼을 사용할 때마다 지불해야 되는 비용(가스)가 없음
2 소프트웨어로서의 EOS
• Block.one이 개발중인 EOS.IO를 의미함
3 토큰으로서의 EOS
• ERC20 : 이더리움 블록체인 상에 그 수량과 교환방식 등이 정의된 토큰 EOS21이라는 프로토콜을 통해 EOS기반의 토큰으로 전환할 수 있게 됨
2) EOS의 BP 시스템
1 DPoS 방식의 EOS
3. 관련 기술의 현황
대표자들은 전체적인 블록체인의 방향을 설정하고 블록 생성을 담당. 이러한 대표자를 블록프로듀서 (Block Producer,BP)라고 부름
2 EOS DPoS의 대표자, BP의 역할과 보상
• EOS BP의 역할
1. EOS 메인 블록체인의 지원
개발자, 플랫폼 커뮤니티 지원 이오스 관련 콘텐츠 배급 등
2. 이오스 메인 블록체인의 운영
매 라운드 ( 126초 ) 동안 0.5초당 1개 블록 생성
• EOS BP의 혜택
1년 동안 EOS 발행량의 1%를 보상으로 받음
총 보상의 25%는 상위 21명 BP, 나머지 75%는 상위BP와 백업BP를 포함한 모든 BP가 투표율에 따 라 받음
3) 스마트 컨트랙트
- 특허조사 및 특허 전략 분석
내용
- 기술 로드맵
내용
시장상황에 대한 분석
- 경쟁제품 조사 비교
내용
- 마케팅 전략 제시
1) EOS블록체인 기반 서비스를 제공함으로써
◇ 채굴자는 개인으로서 경제적이득(가상화폐)을 얻을 기회가 생긴다.
◇채굴자는 시장 활성화가 커져갈수록, 같은 서비스 제공으로 더 많은 이득을 얻을 수 있다.
◇ 사용자(게이머)는 저성능의 컴퓨터를 소유하고 있더라도, 약간의 이용료를 지불하여 고사양의 게임을 최고의 퀄리티로 즐길 수 있다.
1. 개발 과제의 개요
◇ 사용자(게이머)는 기존 클라우드 게이밍 서비스보다도 훨씬 더 저렴한 가격으로 이용할 수 있 다.
◇5G 상용화와 더불어 안정적인 서비스 제공을 통해 커다란 시장이 형성될 수 있다.
2) 월등한 EOS의 초당 트랜잭션 처리 수로 인한 게임 처리 속도의 향상
◇ 쾌적한 게임 플레이 가능
3) 국내에서 인기 있는 게임 위주 서비스 제공
◇ 기존의 클라우드 게이밍 플랫폼에서 제공되는 게임들은 해외에서 인기있는 게임 위주였기 때 문에 국내 게이머들의 관심을 끌기 어려웠다.
◇ 국내에서 인기 있는 게임 위주로 서비스를 제공하여 국내 게이머들의 관심도 증가
개발과제의 기대효과
기술적 기대효과
◇ 분산형 컴퓨팅을 통한 안정적인 서비스 제공
◇ 저사양 플랫폼에서 고사양 게임 가능
◇ 이더리움보다 월등한 EOS의 초당 트랜잭션 처리 수가 게임 처리 속도의 향상을 제공
경제적, 사회적 기대 및 파급효과
◇ 새로운 기술 보급을 통한 시장 흐름 변화
◇ 개인의 소비 패턴 변화(기존 : 하드웨어 성능 중시 → 서비스 제공이후 : 클라우드 서비스 중시)
◇ 생소했던 클라우드 게이밍에 국내 인지도 상승
기술개발 일정 및 추진체계
개발 일정
◇ 먼저 AWS 서비스를 기반으로 Node.js 웹 서버를 구축한 후, Ejs/CSS 등을 이용하여 간단하고 기본적인 페이지 라우팅 구조(Back-End), UI/UX(Front- End) 등을 구축해놓는다.
◇ 그 다음, EOS.IO기반 로컬 체인을 구축하고, 웹 서버와 연동한 뒤 사용자 회원가입/지불 시스템 등의 로직을 Smart Contract로 구현한다.
◇ Smart Contract 구현에 성공하면, 실 게임 구동 서버-클라이언트 간 기본적인 실시간 스트리밍 서비스를 구현한다.
◇ 실시간 스트리밍 서비스 구현에 성공하면, Smart Contract로 사용자 - 게임 구동 서버 매칭 로직을 구현하고, 스트리밍 시 전송되는 비디오/오디오 데이터를 EOS.IO Storage 기반으로 저장하는 방식으로 EOS.IO 위에 올려서 스트리밍 서비스를 구현한다.
◇ 마지막으로 세부적인 기능들을 구현한 뒤 UI/UX를 다듬고 테스트한다.
구성원 및 추진체계
가. 개발 일정
3월 : 기존 EOS 기술 및 클라우드 시스템 분석
분산형 클라우드 시스템 설계 및 구현
4월 : 게임 스트리밍 서비스 설계 및 구현
5월 : 매칭 시스템 설계 및 구현
6월 : 전체 시스템 테스트 및 검토
나. 구성원 및 추진체계
◇김용준: 분산형 클라우드 시스템, 매칭 시스템 담당 및 전체 검토
◇노기선: 분산형 클라우드 시스템, 게임 스트리밍 서비스 담당 및 전체 검토
◇ 임종범: 기존 시스템 분석, 게임 스트리밍 서비스 담당 및 전체 검토
◇ 장원석: 기존 시스템 분석, 매칭 시스템 담당 및 전체 검토
설계
설계사양
제품의 요구사항
1. 기능적 요구사항
◇1) 사용자가 보유한 토큰양을 불러와 서비스 사용 가능 시간을 산출해준다.
◇2) 게임 별로 각각 다른 비용을 책정하여, 그에 맞게 사용 시간을 차감한다. (고사양일수록 비용 상승)
◇3) 서비스 사용 시작부터 종료시 까지, 사용자가 플레이 하는 게임의 영상을 스트리밍 서비스 형태로 제공한다.
◇4) 키보드, 마우스 등 사용자가 게임 플레이를 위해 입력하는 입력 신호를 송/수신한다.
◇5) 스피커, 스크린샷 등 사용자 컴퓨터에 출력되는 출력 신호를 송/수신한다.
2. 비기능적 요구사항
◇1) EOS와 AWS를 이용한 SmartContract 환경을 조성한다.
◇2) IPFS를 이용하여 영상 스트리밍은 최소 30FPS에서 최대 60FPS까지 서비스 할수 있도록 한다.
◇3) 게임 플레이 시 입/출력 신호의 딜레이 최소화는 아주 중요하다. 이 딜레이는 반드시 짧아야한다.
◇4) 블록에는 게임 이용시간, 사용한 토큰 수, 플레이한 게임의 종류 등을 포함한다.
설계 사양
내용
개념설계안
◇ 웹 플랫폼 기반으로 구축함으로써 다양한 기기(데스크탑, 모바일 기기 등)에서 접근하기가 용이하다.
- 언제 어디서든 기기만 있으면 원하는 게임 실행 가능한 환경 구축
◇ 다양한 사용자의 욕구를 충족시키기 위해 폭넓은 장르의 게임 지원
- 고사양이 필요한 게임도 지원하여 하드웨어의 장벽 완화
◇ 실시간 게임 플레이 영상 및 입출력 조작 신호 송/수신(스트리밍)
- IPFS 시스템을 이용해 빠른 속도의 오디오/비디오 데이터 전송
- 기존의 실시간 스트리밍 방식에 비해 빠르고, 안전하고, 개방적임
- 실시간 스트리밍 서비스에서 가장 중요한 요소인 지연 시간(Latency) 개선 가능
◇ EOS 기반의 DApp으로 안정성 및 보안성, 가격 경쟁력 확보
- EOS는 타 블록체인 기반의 DApp(이더리움 등)에 비해 많은 트랜잭션 처리가 가능하도록 설계되어 있어 안정적이고, 그 외 수많은 장점 덕에 점점 사용률이 높아지는 DApp 플랫폼이다.
- 트랜잭션 당 사용료(Gas)를 내야 하는 이더리움(Ethereum)에 비해, EOS는 DApp 사용 시에 요금을 낼 필요가 없어 사용자 입장에서 경제적이다.
◇ 블록체인에 정보를 기록함으로써 토큰 거래 정보의 위변조를 방지, 신뢰성을 보장한다.
- 컴퓨팅 파워 제공자/게이머, 게임 플레이 관련 정보를 블록체인에 기록한다
- 컴퓨팅 파워 제공자와 게이머의 매칭은 스마트 컨트랙트로 수행된다
◇ Adaptive HTTP Protocol을 활용하여 쾌적한 스트리밍 환경을 제공한다.
- 동영상 콘텐츠를 다양한 해상도로 인코딩하고 여러 데이터 조각으로 나누어 저장한다.
- 네트워크 상황에 따라 실시간으로 적절한 해상도를 가진 영상 데이터 조각들이 다운로드 되어 버퍼링 없는 스트리밍 환경을 제공한다.
이론적 계산 및 시뮬레이션
내용
상세설계 내용
1 CLIENT : 웹 페이지를 통해 DApp에 접근하도록 구성, Node.js 기반 웹 Back-End, Front-End 구현(자체 구현)
2 EOS.IO 기반 DApp : 오픈소스 소프트웨어인 EOS.IO를 기반으로 게이밍 플랫폼 DApp 개발(오픈소스 기반 구현)
3 Smart Contract : 사용자(CLIENT)와의 이용권 - 요금 지불 시스템 및 요금을 지불한 사용자를 대상으로 게임을 구동할 수 있는 서버(SERVER)와 매칭 시스템 구현(자체 구현)
4 IPFS File Storage : EOS.IO 내부에 IPFS 방식으로 설계되어 있는 EOS.IO Storage를 기반으로 구현(오픈소스기반 구현)
5 Server : 게임을 실제 구동하는 서버, 구동 중 실시간으로 출력된 오디오/비디오 데이터를 캡처하여 오픈소스 소 프트웨어인 ffmpeg을 이용하여 인코딩 후, DApp 내부 IPFS File Storage에 업로드하고 사용자(CLIENT) 단말기에 서 받아 화면에 출력하는 방식으로 구현. 서버에 전달된 게이머의 입력신호는 서버에서 구동되는 게임의 입력으로 처리되도록 구현. (오픈소스 기반 구현)
결과 및 평가
완료 작품의 소개
프로토타입 사진 혹은 작동 장면
내용
포스터
내용
관련사업비 내역서
내용
완료작품의 평가
내용
향후계획
내용
특허 출원 내용
내용