User Experience Provisions Using Cloud Technology

Jaeyoon Lee

Team Lead/Service Platform Dept., Altimedia Corp.

The term "cloud" began to become popular from the point when various connected devices appeared and network speeds above a certain level began to be secured. With the emergence of services that can store data in virtual spaces on the network rather than local storage on PCs, not only the IT industry but also the general public have become familiar with the word “cloud”. Now, as almost all service platforms adopt the concept of cloud, it has become an inseparable technology from real life.

The cloud described in this article is also similar with the concept in which the service operates in a virtual environment. However, it focuses more on how the user experience in media services can be provided on the concept of cloud.

Pay-TV services, a major supplier of media services, are provided through dedicated terminal devices(set-top boxes) manufactured to meet the needs of each operator. Set-top boxes are based on specialized hardware to provide broadcast services, and have specialized functions such as channel selection, broadcast signal reception, video/audio playback control, and various data transmission and reception. On the other hand, they have relatively low computational and storage capabilities. Therefore, it has a very low cost structure compared to other devices such as mobile phones, and the replacement cycle is quite long due to its limited usability.

As a result, Pay-TV operators must consider low-spec set-top boxes already installed in the field when developing new functions or upgrading services. Of course, it is not desirable (although technically possible) to provide the same service on HD terminals five years after installation and the latest UHD terminals. Therefore, it was a common approach to create and operate services that could operate optimally in each set-top box separately.

The problem was the cost. As the speed of development of technologies and services increased, the maintenance cost of terminals and services to accommodate them also raised significantly. Whenever high-end set-top boxes were developed and new platforms such as Android were added, operators had no choice but to create service applications accordingly. Moreover, the difficulty of maintenance had dramatically increased for suppliers due to the fragmentation of services.

However, these concerns were solved by incorporating cloud technology into the user experience of media services. Since the service basically operates in the cloud environment and the set-top box has a structure that only handles display processing, it is possible to eliminate or minimize dependence on terminal hardware from the service standpoint. We collectively refer to these technologies and services as 'Cloud UI'.

The cloud UI is based on virtualization technology for the service platform and is divided into three approaches according to the UI delivery method as below.
•   First, a Video Cloud Solution (VCS) that delivers service screens in a video manner.
•   Second, Image Cloud Solution (ICS) that delivers service screens in an image manner.
•   Third, Graphic Cloud Solution (GCS) that delivers the results of the operation constituting the service screen in the form of commands which are easily processed by the terminal.

VCS and ICS services are created in the form of web applications running on a typical web browser. GCS, in general, should consider both the ease of service development and the efficiency of platform operation. For this, Altimedia has a solution that supports services written in JavaScript based on Node JS.

Looking at the characteristics of each solution, first of all, VCS sends a video-based screen drawn by the browser, so the data transmitted from the server is large. Also, the video needs to be encoded and transmitted, so it has to allocate as much resources as server CPU or memory. Therefore, while the performance that one server can handle is inevitably less than that of ICS and GCS, there is no limit to the UI that can be expressed as much as video is transmitted.

ICS transmits the screen drawn by the browser in an image method, therefore less data is transmitted than VCS and less server resources are consumed than video. However, assuming that an application with fancy animations is serviced, it cannot express a smooth screen naturally as much as VCS.

Whereas VCS and ICS transmit the screen itself to the user, GCS sends the command that the set-top box should draw and the client in the set-top box draws directly on the screen based on the command. Therefore, the data transmitted is significantly reduced compared to VCS and ICS, and the cloud system can be built in most economical way. However, since the final drawing process is to be performed in the set-top box, there may be a difference in performance depending on the hardware specification.

The figure below is a diagram of a hybrid cloud UI system that uses GCS and ICS together. By developing the main menu frequently used by most users with GCS, many user requests can be processed at a low cost. Also, various web applications can be easily provided by applying ICS for individual services with intermittent requests. The Cloud UI system can be most efficient by building a combination of the above three methods in consideration of the characteristics of the service, necessary performance, and economic feasibility.

The game industry has been actively using cloud technology since early on. The widely known Steam and Stadia, which were unveiled on Google a few years ago, are also using cloud technology to provide spectacular games comparable to console games such as PlayStation and XBox. With the development of virtualization technology and the improvement of the speed of wired and wireless networks, the provision of services using cloud technology is expected to become more common. In the very near future, we expect to have a cellphone being used as a laptop simply with Windows installed on the server.

클라우드 기술을 활용한 사용자경험 제공

‘클라우드’라는 용어가 대중화되기 시작한 것은 다양한 커넥티드 디바이스가 등장하고, 일정수준 이상의 네트워크 속도가 확보되기 시작하면서부터이다. PC에 저장하던 자료들을 로컬 스토리지가 아닌 네트워크상의 가상공간에 저장할 수 있는 서비스가 여기저기서 등장하면서, IT업계뿐만이 아닌 일반 대중들도 클라우드라는 단어에 익숙해지게 됐다. 이제는 거의 대부분의 서비스 플랫폼들이 클라우드 개념을 도입함에 따라 실생활과 떼어놓을 수 없는 기술로 자리잡고 있다.

이 글에서 설명하려는 클라우드 또한 가상의 환경에서 서비스가 동작한다는 개념은 비슷하다. 단, 미디어서비스에서의 사용자 경험이 클라우드라는 개념 위에서 어떻게 제공될 수 있는지를 중심으로 살펴보고자 한다.

미디어서비스의 주요 공급처인 유료방송서비스는 각각의 사업자의 니즈에 맞게 개발 제작된 전용 수신기(셋톱박스)를 통해 제공된다. 셋톱박스는 방송서비스를 제공하기 위해 특화된 하드웨어를 기반으로 하고 있으며, 채널 선국, 방송신호 수신, 비디오/오디오 재생제어, 각종 데이터 송수신과 같이 특화된 기능을 갖고있는 반면, 방송서비스에서의 필요성이 상대적으로 크지 않은 연산능력, 저장능력 등은 낮은 편이다. 그래서 핸드폰 등 타 디바이스와 비교해서 굉장히 낮은 원가구조를 갖고있고, 제한적인 활용성으로 인해 교체 주기도 상당히 긴 편이다.

결과적으로 유료방송사업자는 신규 기능을 개발하거나 서비스를 업그레이드 할 때 필드에 깔려있는 저사양 셋톱박스를 고려하지 않을 수가 없게 된다. 물론 설치된 지 5년이 지난 HD 단말과, 최신의 UHD 단말에서 동일한 서비스를 제공하는 것은 (기술적으로는 가능하나)바람직하지 않기 때문에 각각의 셋톱박스에서 최적으로 동작할 수 있는 서비스를 제작하여 별도로 운용하는 것이 일반적인 접근 방법이었다.

문제는 기술과 서비스의 발전속도가 점점 빨라지는 만큼 이를 수용하기 위한 단말과 서비스의 유지관리 비용 역시 크게 증가한다는 점이었다. 고사양 셋톱박스가 개발되고 안드로이드와 같이 새로운 플랫폼이 추가될 때마다 사업자는 그에 맞는 서비스 어플리케이션을 제작할 수 밖에 없는 상황이 발생했다. 아울러 공급사들 역시 서비스의 파편화에 따라 유지보수에 대한 어려움이 비약적으로 증가하게 됐다.

하지만 이러한 고민들은 미디어서비스에 대한 사용자 경험에 클라우드 기술을 접목하면서 해결이 가능하게 됐다. 서비스는 기본적으로 클라우드 환경에서 동작하고 셋톱박스는 화면처리만 담당하는 구조를 가지게 됨으로써, 서비스 입장에서 수신기 하드웨어에 대한 종속성을 없애거나 최소화 할 수 있게 된 것이다. 우리는 이러한 기술과 서비스를 통칭하여 ‘클라우드 UI’라고 부르고 있다.

클라우드 UI는 서비스 플랫폼에 대한 가상화 기술을 기반으로 하고 있으며, UI의 전달 방식에 따라 아래와 같이 3가지로 접근으로 구분하고 있다.
• 첫째, 서비스 화면을 비디오 방식으로 전달하는 VCS (Video Cloud Solution)
• 둘째, 서비스 화면을 이미지 방식으로 전달하는 ICS (Image Cloud Solution)
• 셋째, 서비스 화면을 구성하는 연산의 결과를 수신기에서 간단하게 처리할 수 있는 명령어 형태로 전달하는 GCS (Graphic Cloud Solution)

VCS와 ICS 서비스는 일반적인 웹브라우저상에서 실행되는 웹 애플리케이션 형태로 제작된다. GCS는 일반적으로 서비스 개발의 편이성과 플랫폼 운용 효율성이 모두 고려돼야 하는데, 이를 위해 알티미디어는 Node JS 기반으로 자바스크립트로 저작된 서비스를 지원하는 솔루션을 보유하고 있다.

각각의 솔루션 특징을 살펴보면 우선 VCS는 브라우저에서 그려지는 화면을 비디오 방식으로 전송하기 때문에 서버로부터 전송되는 데이터가 크고, 비디오를 인코딩하여 전송해야하기때문에 그 만큼 서버 CPU나 메모리같은 리소스를 많이 할당해야한다. 따라서 한 대의 서버가 처리할 수 있는 성능이 ICS, GCS보다 적어질 수 밖에 없는 반면, 비디오를 전송하는 만큼 표현할 수 있는 UI에 제한이 없는 것이 특징이다.

ICS는 브라우저에서 그려지는 화면을 이미지 방식으로 전송하기때문에 VCS보다는 전송되는 데이터가 적고 서버 리소스도 비디오보다는 적게 소모된다. 하지만 화려한 애니메이션을 가지는 애플리케이션을 서비스한다고 가정했을 때 VCS만큼 유려한 화면을 자연스럽게 표현하지는 못한다.

VCS와 ICS가 사용자에게 보여야 할 화면 자체를 전송하는데 반해, GCS는 셋톱박스가 그려야 할 정보들을 전송하고 셋톱박스에 있는 클라이언트가 해당 정보들을 기반으로 화면에 직접 그리는 방식이다. 그렇기 때문에 VCS, ICS보다 전송되는 데이터가 현저하게 줄고 클라우드 시스템도 가장 경제적으로 구축할 수 있다. 단 셋톱박스에서 최종 드로잉 과정을 수행해야 하기 때문에 하드웨어의 사양에 따라 성능에 차이는 있을 수 있다.

위에 그림은 GCS와 ICS를 혼용하는 하이브리드 형태의 클라우드 UI 시스템 구성도이다. 대부분의 사용자가 자주 사용하는 메인 메뉴를 GCS로 개발하여 적은 비용으로 많은 사용자의 요청을 처리하고, 간헐적인 요청이 들어오는 개별 서비스에 대해서는 ICS를 적용하여 다양한 웹 어플리케이션을 손쉽게 제공할 수 있다. 클라우드 UI 시스템은 서비스의 성격과 필요 성능, 그리고 경제성 등을 감안하여 위 세가지 방법을 혼용하여 구축하는 것이 가장 효율적이라고 할 수 있다.

게임 산업에서는 일찌감치 클라우드 기술을 적극적으로 활용해 왔다. 널리 알려진 Steam이나 몇년 전 구글에서 공개한 Stadia도 클라우드 기술을 활용하여 PlayStation이나 XBox와 같은 콘솔게임 수준의 화려한 게임을 제공하고 있다. 가상화 기술의 발전과 유무선 네트워크 속도의 향상에 따라 클라우드 기술을 활용한 서비스 제공은 더욱 보편화될 전망이다. 이제는 핸드폰만 있으면 서버에 설치된 윈도우를 내 노트북처럼 이용할 날도 곧 도래할 것으로 보인다.