DOI QR코드

DOI QR Code

A Context-based Adaptive Multimedia Streaming Scheme in IoT Environments

IoT 환경에서 컨텍스트 기반 적응적 멀티미디어 스트리밍 기법

  • Seong, Chaemin (School of Computer Science and Engineering, Kyungpook National University) ;
  • Hong, Seongjun (School of Computer Science and Engineering, Kyungpook National University) ;
  • Lim, Kyungshik (School of Computer Science and Engineering, Kyungpook National University/Software Technology Research Center (SWRC), Kyungpook National University)
  • Received : 2016.02.16
  • Accepted : 2016.05.31
  • Published : 2016.07.30

Abstract

In Internet of Things (IoT) environments, billions of interconnected devices and multimedia sensors generate a huge amount of multimedia traffic. Since the environment are in general deployed as a server-centric architecture wireless sensor networks could be bottlenecks between IoT gateways and IoT devices. The bottleneck causes high power consumption of the device and triggers very heavy network overload by transmission of sensing data. The deterioration could decrease the quality of multimedia streaming service due to delay, loss, and waste of device power. Thus, in this paper, we propose a context-based adaptive multimedia streaming scheme to support enhanced QoS and low power consumption in IoT environments. The goal of the scheme is to increase quality score per voltage of the streaming service, given an adaptation algorithm with context that are classified network and hardware such as throughput, RTT, and CPU usage. From the both context, the quality score per voltage is used in the comparison of a only network context-based adaptive multimedia streaming scheme, a fixed multimedia streaming and our scheme. As a result, we achieves a high improvement that means the quality score per voltage is increased up to about 4, especially in case of resolution change.

Keywords

1. 서 론

사물인터넷(Internet of Things, IoT) 환경은 일반적으로 센서나 스마트폰과 같은 수십억 개의 장치들로 구성된다. 서로 연결된 장치들은 1조 개 이상의 연결이 이루어질 수 있으며, 많은 양의 센서 데이터가 발생한다. 이와 같이 수많은 장치들을 사용자가 관리하고 제어하는 서비스를 제공하기 위하여 다수의 오픈 플랫폼이 등장하였다. 그러나 오픈 플랫폼과 관련된 연구는 연결된 장치 관리나 데이터 소유자 정의, 데이터 공유 기술과 같이 IoT 환경을 구성하는 기능에 집중되어 있다. 하지만 해당 환경은 센서 간의 거대한 연결 구조를 지님과 동시에 무선 네트워크 환경을 포함할 가능성이 높기 때문에 센서 데이터를 수집하고 저장하는 기술뿐만 아니라 분석하여 가공하는 기술이 필요하다[1]. 이와 같은 기술은 어플리케이션의 서비스 목적과 관련이 있어 다양한 방법이 존재하며, 그 예로 중복된 데이터를 제거하거나 결합하여 수집하는 방법을 들 수 있다. 또한 IoT 환경에서의 센서 데이터는 일반적으로 서버로 모두 전송되는 서버 중심 구조를 지니기 때문에 네트워크 부하가 일어날 가능성이 높고, 특히 무선 네트워크가 병목 구간이 되어 서비스 품질이 낮아진다. 그러므로 수집한 데이터를 가공하고 네트워크 상태를 해결하기 위해 환경을 구성하는 센서 노드나 게이트웨이에서 지능적으로 데이터를 인식하고 분석하여 트래픽 양을 관리하는 것과 같은 가공 기술이 필요하다.

그리고 센서 네트워크 환경에서 멀티미디어를 운반하는 다수의 어플리케이션이 존재하며, 예로 생태계 환경 감시와 비디오 감시시스템 등이 있다[2]. 이는 해당 네트워크 환경을 포함하는 IoT 환경에서도 동일하게 적용되며, 카메라 센서로 인해 발생하는 멀티미디어 데이터는 테라바이트 단위로 발생시켜 네트워크 부하를 일으킬 가능성이 높다. 또한 이는 장치의 전력 소모량을 급증시키고 네트워크 상태를 불안정하게 하여 서비스 품질이 급격하게 감소한다. 그러므로 센서로 인하여 소모되는 전력을 관리하는 기술이 중요하기 때문에 사용자에게 멀티미디어 스트리밍 서비스를 제공할 때와 관련된 일련의 데이터를 고려해야 한다. 그 예로 센서 노드의 전력 소모와 직접적으로 관련된 요소인 하드웨어 자원 사용량이 있으며, CPU 사용량과 메모리 사용량을 예로 들 수 있다[3]. 또한 멀티미디어 스트리밍 서비스는 사용자에게 끊임없이 연속적으로 전송해야하므로 네트워크 연결을 관리해야 한다. 이를 위하여 IoT 장치가 멀티미디어 데이터를 서버로 전송할 때와 관련된 컨텍스트를 고려해야 한다. 기본적으로 전력 소모를 대폭 줄여야 하지만, 동시에 사용자에게 재생되어질 때의 품질을 고려해야 하므로, 그에 대비하여 효율적인 전력 소모가 필요하다. 따라서 게이트웨이와 장치에 지능을 부여하여 데이터를 컨텍스트에 따라 적응적으로 가공하는 방법이 필요하며, 이를 통해 과도한 전력을 소모하는 네트워크 트래픽을 줄이고 서비스 품질을 최대한 증가시킬 필요가 있다.

따라서 본 논문에서는 IoT 환경에서 컨텍스트를 기반으로 적응적으로 멀티미디어 스트리밍 서비스를 제공하여, 전력대비 높은 품질의 서비스를 사용자에게 제공하는 기법을 제안한다. 또한 컨텍스트를 인지하기 위해 멀티미디어가 전송될 때 게이트웨이에서 네트워크 상태와 장치의 하드웨어 상태를 관찰한다. 그러나 하드웨어 상태는 게이트웨이에서 측정하기 어렵기 때문에 장치에서 측정하여 게이트웨이와 협업하는 시스템 구조를 지닐 필요가 있다. 또한 네트워크에 관한 정보는 장치에서 멀티미디어를 수신하는 서버까지의 환경을 범위로 설정하여 처리율과 지연시간을 얻으며, 하드웨어 정보는 장치의 CPU 사용량을 이용한다. 이를 바탕으로 적응적 멀티미디어 스트리밍 기법은 카메라 센서에서 촬영하는 데이터의 초당 프레임 수와 해상도를 조절한다. 그러므로 해당 기법을 통해 멀티미디어 스트리밍 서비스의 QoS(Quality of Service)를 보장함과 동시에 네트워크 전송량과 하드웨어 자원 사용량을 감소시켜 무선장치의 전력 소모량 감소를 추구한다.

본 논문의 구성은 다음과 같다. 2장에서 관련 연구를 소개하고 3장에서는 IoT 환경에서 컨텍스트 기반 적응적 멀티미디어 스트리밍 기법을 제안한다. 이에대한 연구 결과는 4장에서 제시하며, 5장에서 결론 및 향후 연구를 제시한다.

 

2. 관련 연구

2.1 IoT 환경에서 멀티미디어 스트리밍 컨텍스트

IoT 환경은 일반 통신 네트워크와 센서 네트워크가 혼합된 새로운 형태의 환경이며, 센서의 감지 및 전송 계층과 사용자에게 데이터를 제공하기 위한 어플리케이션 계층으로 나눠진 구조가 대표적이다[4]. 또한 해당 환경은 장치 간의 방대한 연결로 구성되어 있어 센서 데이터와 관련한 컨텍스트를 수집하여 이를 고려하여 데이터를 가공하는 것이 중요하다. L. Sanchez[5]는 컨텍스트 정보란 센서에서 발생한 데이터를 처리하여 생성된 데이터로 정의하였고, G.D. Abowd[6]는 어떤 상황의 특징을 나타내는 정보로 정의하였다. 그 외에도 S. Yanwei[7]는 컨텍스트를 지능형 장치 간에서 협력을 위해 필요한 정보라고 하며, IoT 서비스 사용자, 사물, 시스템을 통해 모델링하여 설명하였다. 따라서 컨텍스트는 서비스가 이루어질 때에 관련한 주변 상황에 대한 정보이며, 이를 인지하는 것은 가공 데이터의 특성을 분석하는 것이므로 서비스 향상에 필요한 요소이다.

그러므로 IoT 환경에서 멀티미디어 스트리밍 서비스에 관한 컨텍스트는 센서 노드에서 멀티미디어 생성과 관련되고 생성된 데이터를 장치에서 서버로 전송하는 것과 관련된 일련의 데이터이다. 이 때 관련된 네트워크가 컨텍스트의 일부 요소이며, 지연 시간과 손실률을 예로 들 수 있다[8]. 특히 센서 노드와 게이트웨이 간의 네트워크는 무선 환경인 Wi-fi, 블루투스, LTE 등으로 구성되어 유선 환경보다 한정된 자원을 제공하기 때문에, 멀티미디어 스트리밍 서비스 제공으로 생성되는 방대한 트래픽 양에 민감하다. 이러한 특성으로 인해 발생하는 문제를 해결하기 위해 여러 연구가 진행되었으며, A. Floris[9]는 자동차 MIoT(Multimedia IoT) 어플리케이션을 통해 녹화한 멀티미디어를 MOS(Mean Opinion Scores) 방법을 통해 QoE(Quality of Experience)를 평가하였다. 실험을 위해 사용한 비디오의 비트레이트는 700과 1500을 사용하여 높은 품질의 비디오에 대해 평가하였으며, 대부분이 MOS 2이하이다. MOS는 주관적인 평가 기법으로 1에서 5까지 점수가 매겨지며, 2이하는 두 번째로 나쁜 품질을 나타내지만 차량용 카메라 센서를 이용한 점에 의의가 있다. 그러나 서비스 품질의 감소를 막는 방안과 결과를 객관적인 지표로 평가하는 연구가 필요한 실정이다.

P. Martinez-Julia[10]는 CCN(Content Centric Networking)과 IoT를 접목한 환경에서 DASH(Dynamic Adaptive Streaming over HTTP)를 이용한 서버로부터 데이터를 적응적으로 받아온다. 이 환경에서 HTTP 기반으로 통신하며, 비디오의 PSNR(Peak Signal Noise Ratio)과 캐싱을 이용해 다운로드 받는 시간을 줄였다. D. Shin[11]은 IoT 환경의 기반이 되는 무선 센서 네트워크에서 통신장애로 인해 발생하는 센서 데이터 손실을 감소시키기 위하여, 원형 큐 자료구조 기반 최대/최소값 중심의 2MC(Maximum/Minimum Compression) 알고리즘을 제안하였다. 이 알고리즘은 하드웨어 컨텍스트를 고려하여 데이터 전송의 오차율을 줄인다는 점에서 의의가 있으나, 멀티미디어 스트리밍 서비스의 QoS를 보장하기 위해서 네트워크 컨텍스트를 고려하여야 한다. 그리고 S. Persia[12]는 무선 센서 네트워크에서 Zigbee와 IPv4를 이용하여 멀티미디어 서비스를 제공하고 QoS를 CBR(Constant Bit rate)과 지터(jitter)일 때로 나누어 평가하였다. 그러나 이와 같이 스트리밍 서비스를 제공할 때 QoS 분석과 관련한 연구는 있으나, 센서 네트워크의 전력 소모량과 멀티미디어의 전송 흐름 등과 관련한 컨텍스트를 통합적으로 고려하여 QoS를 보장하는 멀티미디어 스트리밍 서비스에 관한 연구가 필요한 실정이다.

2.2 IoT 오픈 플랫폼

IoT 환경은 거대한 센서 네트워크로 구성되어 있으며, 해당 환경과 관련한 한정된 자원을 지닌 장치와 동적인 연결 구조를 효율적으로 관리하기 위한 다양한 오픈 플랫폼들이 등장하였다. 리눅스 재단의 IoTivity[13], 구글의 Brillo[14], 애플의 Homekit[15], KETI의 Mobius[16]를 예로 들 수 있다. IoTivity는 해당 환경과 관련한 장치를 운영체제와 네트워크 프로토콜에 상관없이 연결할 수 있는 오픈소스 소프트웨어 프레임워크를 개발하고 있다. Brillo는 IoT용 운영 체제이며, 안드로이드를 기반으로 개발되었고 다양한 장치에서 동작을 지원한다. Homekit은 가정 내 장치를 관리하는 어플리케이션을 개발할 수 있는 스마트홈 플랫폼이다. Mobius는 개방형 플랫폼으로 사용자가 직접 개발이 가능한 환경을 제공한다. 다양한 오픈 플랫폼이 존재하지만 환경을 구성하는 게이트웨이나 장치에 지능을 부여하고 주변 환경을 실시간 관찰하기 위해 본 논문에서는 개방형 플랫폼인 Mobius를 사용한다. 또한 이 플랫폼들은 2015년 발간된 기기간의 표준 규격인 oneM2M을 준수한다[17].

 

3. 컨텍스트 기반 적응적 멀티미디어 스트리밍 기법

3.1 IoT 환경에서 적응적 멀티미디어 스트리밍

Fig. 1은 IoT 환경에서 적응적 멀티미디어 스트리밍 서비스에 대해 나타낸다. 네트워크 환경은 일반적으로 서버와 게이트웨이 구간을 유선 환경으로 구성하고 장치와 게이트웨이 사이의 구간을 Wi-fi, bluetooth, LTE와 같은 무선 환경으로 구성한다. 서비스를 이용하기 위해서는 일반적으로 각 장치마다 플랫폼을 설치하여 장치에서 발생한 센서 데이터를 서버로 전송한다. 이러한 환경에서 카메라 센서로부터 생성된 멀티미디어 데이터는 대개 게이트웨이를 거쳐 서버로 전송한다. 이 때 멀티미디어 품질과 관련한 해상도, 초당 프레임 수와 같은 정보는 초기에 설정하여 전송한다. 만약 수동으로 바꾸지 않는다면 품질을 유지하므로 네트워크 및 하드웨어에 관한 상태를 실시간으로 고려할 수 없다. 또한 이러한 구조의 네트워크는 장치와 게이트웨이 사이의 무선 네트워크가 병목 구간이 되어 잦은 부하가 발생한다. 특히 멀티미디어 데이터는 센서 데이터 중에서 파일 크기가 큰 편에 속하므로 네트워크 트래픽 양이 다른 센서보다 많이 발생되어 장치의 전력 소모를 가속화시킨다. 이는 전력이 해당 서비스를 이용할 때 센서를 실행시키고 데이터를 전송하는 경우에 소모되기 때문이다.

Fig. 1.Adaptive Multimedia Streaming Service in IoT Environments.

따라서 IoT 게이트웨이에서 서버에서부터 장치까지의 전체 네트워크 상태와 IoT 장치에서 하드웨어 상태를 관찰하여 멀티미디어의 품질을 조절함에 따라 전력 소모를 줄이고 전력소모 대비 품질을 증가시켜야 한다. 이를 수행하는 소프트웨어가 IoT 게이트웨이에 위치한 적응적 스트리밍 매니저(Adaptive Streaming Manager)와 IoT 장치의 협업 매니저(Collaboration Manager)이다. 적응적 스트리밍 매니저는 전체 네트워크 상태를 관찰함과 동시에 장치들의 하드웨어 상태를 모두 수집한다. 해당 데이터를 바탕으로 카메라 센서가 발생시키는 멀티미디어 데이터 품질을 선택하여 협업 매니저에게 전달하여 제어한다.

3.2 멀티미디어 스트리밍 컨텍스트 및 과정

본 논문에서는 게이트웨이와 장치가 협업하여 멀티미디어 스트리밍 서비스를 전력대비 최상의 품질로 제공하기 위해 컨텍스트를 이용한다. 이 때 컨텍스트는 장치에서 생성한 멀티미디어 데이터를 서버로 전달할 때와 관련된 일련의 데이터로 장치의 하드웨어 상태를 나타내는 CPU 사용량과 서버에서부터 장치까지의 네트워크 상태를 나타내는 처리량(Throughput)과 RTT(Round Trip Time)로 볼 수 있다. 네트워크 및 하드웨어 상태를 이전과 비교하기 위해 현재 평균 상태를 표현하는 가중 평균값을 이용한다. 각 컨텍스트 요소마다 가중 평균값을 가지며 다음 식 (1)에서 식 (3)까지와 같이 구한다. 네트워크 컨텍스트인 현재의 가중평균 처리율(STHRi)과 가중평균 RTT(SRTTi)는 멀티미디어 스트리밍 서비스가 시작할 때부터 주기적으로 2초마다 구한다. 현재의 가중평균 값은 실시간 처리율(THR)과 실시간 RTT(RTT)를 각자 일정 가중치 비율(α)을 반영하고 남은 비율만큼 이전의 가중평균 처리율(STHRi-1)과 가중 평균 RTT(SRTTi-1)를 반영한다. 이는 최근 시간에서 평균적으로 처리할 수 있는 능력을 나타내어 네트워크의 평균 상태로 볼 수 있다. 그렇기 때문에 현재 네트워크 평균 상태보다 실시간 네트워크 상태의 자원 사용이 많다면 네트워크에 혼잡이 생길 가능성이 있다. 따라서 가중 평균값은 네트워크 상태의 척도라고 보고 실시간 값이 작다면 평균 처리 가능한 역량보다 낮게 사용하여 품질을 올리고, 반대의 경우 처리 가능한 역량을 초과하였으므로 품질을 낮춰야 한다. 하드웨어 컨텍스트도 동일하게 가중 평균 값을 이용하여 평균 상태를 구한다. 실시간 CPU 사용량(CPU)을 가중치 β 비율만큼 적용하고 나머지 비율만큼 이전의 가중 평균값(SCPUi-1)을 반영하여 현재 하드웨어 평균 상태인 가중평균 CPU 사용량(SCPUi)을 구한다.

이와 같이 현재 처리 가능한 네트워크 평균 상태와 하드웨어 평균 상태를 혼합하여 품질을 조절한다. 이는 네트워크 상태만 고려하여 멀티미디어 데이터의 품질을 조절하는 기존의 기법과는 달리 한정된 하드웨어 자원을 가지는 환경을 고려하는 기법이라는 점에서 의의를 가진다. 본 논문에서 제안하는 기법은 하드웨어 자원을 고려하는 것과 마찬가지로 서비스의 품질을 동시에 고려하므로, 그와 밀접하게 관련이 있는 네트워크 컨텍스트를 바탕으로 선택 후 하드웨어 자원을 고려하여 조절의사를 결정한다.

Fig. 2는 앞서 설명한 기법을 기반으로 IoT 게이트웨이에서 네트워크 및 하드웨어 컨텍스트를 기반으로 카메라 센서의 품질을 적응적으로 조절하는 과정을 나타낸다. 따라서 RTT가 가중평균 RTT(SRTT)보다 작거나 처리율(THR)이 가중평균 처리율(STHR)보다 작은 경우 네트워크 상태가 좋다고 판단하며, 이 경우에 IoT 장치들은 품질을 올릴 수 있는 기회를 가진다. 이는 현재 네트워크의 지연시간이 평균 지연 시간보다 작아서 네트워크 상태가 원활하고 초당 전송할 수 있는 양이 평균 가용능력보다 작아 해당 값만큼 트래픽을 증가시킬 여유가 있다는 것을 타나낸다. 만일 네트워크 혼잡으로 인하여 처리율이 낮아진다면 지연시간에 의해 네트워크 상태를 유추할 수 있으며, 따라서 두 가지 요소를 모두 만족하면 네트워크 상태가 원활하다고 판단할 수 있다. 또한 IoT 장치의 하드웨어 상태도 동일하게 CPU가 가중평균 CPU(SCPU)보다 작아야 추가로 가용할 수 있는 자원이 있다는 것을 의미하므로 최종적으로 카메라 센서가 생성하는 멀티미디어 데이터 품질을 올린다. 반면에 RTT와 처리율(THR)이 가중평균 값보다 크다면 혼잡이 발생하거나 발생할 가능성이 존재하므로 멀티미디어 스트리밍 성공을 위하여 CPU의 상태와 상관없이 품질을 낮춰야 한다. 따라서 본 논문의 제안 기법은 네트워크 상태는 품질을 올리기 위한 최소한의 조건으로 사용한다.

Fig. 2.Context-based Adaptive Multimedia Streaming Process.

Algorithm 1은 IoT 게이트웨이에서 컨텍스트에 따라 적응적으로 멀티미디어 데이터 품질을 제어하는 과정을 구체화한 알고리즘이다. 첫 번째 줄부터 네 번째 줄까지는 수신된 응답 패킷의 전송하였던 시간(trans Time)과 도착 시간(ack Time)을 이용하여 RTT와 가중평균을 구한다. 다섯 번째 줄부터 여섯 번째 줄까지는 측정 간격 동안 네트워크상에서 트래픽 전송량을 이용하여 처리량을 계산한다. 일곱 번째 줄부터 스물네 번째 줄까지 네트워크 상태를 기반으로 하드웨어 상태와 더불어 적합한 품질을 결정한다. 일곱 번째 줄부터 여덟 번째 줄까지는 네트워크가 크게 혼잡하여 전송이 불가능하므로 카메라 센서의 품질을 최하로 낮춘다. 이 때 초당 프레임 수와 해상도를 동시에 함께 조절하며, 이 정보는 게이트웨이에서 IoT 장치로부터 센서가 조절 가능한 설정에 대한 정보가 담긴 프로파일을 전달받아 선택한다. 아홉 번째 줄부터는 본 논문에서 제안하는 기법의 처리과정에 따라 실시간 상태와 가중평균 상태의 대소비교를 통하여 품질을 낮추고 높인다. 하나의 컨텍스트 요소라도 이전 상태보다 좋지 않으면 현재 환경에서 멀티미디어 품질이 적절하지 않으므로 초당 프레임 수와 해상도를 한 단계씩 낮춘다. 반대로 모든 요소의 실시간 값이 가중 평균보다 낮다면 한 단계 높은 품질의 데이터를 생성하도록 제어한다. 가중치 α와 β는 환경에 따라서 적절한 수치가 달라지며, 본 논문의 환경에서는 게이트웨이와 장치간의 무선망의 네트워크 상태나 낮은 하드웨어 성능을 가진 장치에 의해 영향을 많이 받는다. 그러므로 제안 기법과 기존 기법을 비교하기 위해 적합한 가중치를 설정하기 위한 분석이 필요하며, 먼저 컨텍스트가 전력에 미치는 영향을 분석하고 시스템 구조 및 환경을 설명한다.

Algorithm 1.Context-based Adaptive Multimedia Streaming Algorithm.

Table 1은 멀티미디어 데이터 품질 요소에 따라 전력과 하드웨어 자원 사용량의 관계를 나타낸다. 초당 프레임 수(FPS)가 4이며 해상도(Resolution)가 320×240에서 640×480으로 증가할 때 CPU 사용량은 2.0%에서 7.5%로 증가한다. 이와 같은 하드웨어 사용량 증가는 전류를 468mA에서 479mA로 상승시킨다. 해상도가 640×480이고 초당 프레임 수가 4에서 30으로 증가하면 전류는 479mA에서 505mA로 상승한다. 따라서 데이터 품질을 나타내는 두 가지 요소는 하드웨어 자원 사용량과 전력 소모량에 관련되며, 또한 네트워크 트래픽 양도 데이터 품질 요소와 비례 관계이므로 전력 소모량과 비례한다고 볼 수 있다.

Table 1.A Relation between Hardware Resource and Voltage

3.3 시스템 구조

본 논문에서는 IoT 환경을 구축하기 위하여 KETI에서 개발한 IoT 오픈 플랫폼인 Mobius와 &Cube를 이용한다. 해당 플랫폼은 기기간의 통신 프로토콜을 지정한 oneM2M 규격을 따른다[17]. 또한 Mobius는 서버에서 센서나 장치를 계층적인 구조의 형식으로 관리하고 데이터를 수집하며, &Cube는 장치 및 게이트웨이에 탑재되는 소프트웨어로 Mobius와 연동되어 통신한다[16]. 또한 해당 플랫폼 환경에서 센서를 플랫폼과 연결하고 동작을 제어하기 위한 소프트웨어를 TAS(Thing Application Software)라고 한다.

Fig. 3는 IoT 환경에서 멀티미디어 스트리밍 서비스와 관련한 컨텍스트를 기반으로 장치에서 발생한 카메라 센서 데이터를 서버로 적응적으로 전송하기 위한 시스템 구조이다. 서버는 사용자에게 서비스를 제공하기 위한 사용자 어플리케이션과 Mobius 플랫폼을 동작시킨다. 또한 TAS는 카메라 센서 데이터를 수집하고 제어하여 &Cube에게 전송하는 소프트웨어이며, 장치와 게이트웨이에 위치할 수 있고 카메라 센서의 품질 옵션을 제어하는 것은 게이트웨이의 TAS이다. 제어를 위하여 네트워크를 관측하고 상태를 평가하며, 장치와 협업하여 하드웨어 상태를 수집하고 품질 정보를 장치에게 전송하여 변경한다. 변경되는 품질의 요소는 초당 프레임 수와 해상도이며, 카메라 센서는 Motion[18] 소프트웨어를 이용하여 제어한다.

Fig. 3.System Structure for Context-based Adaptive Multimedia Streaming.

IoT 환경을 바탕으로 설계한 시스템 구조에서 네트워크는 서버에서 게이트웨이까지 이더넷 환경으로 구성하고 게이트웨이에서 장치까지 Wi-fi 환경으로 구성한다. 해당 유선 환경은 대역폭이 100Mbps이고 지연시간은 약 0ms이며, 무선 환경은 평균 대역폭이 1Mbps이고 지연시간은 0ms에서부터 20ms까지 이고 손실률은 10-3으로 병목 네트워크 구간이다. 가변적인 네트워크 상태에서 제안 기법과 기존 기법의 성능을 분석하기 위하여 1개의 장치를 이용한다.

 

4. 실험 결과 및 고찰

네트워크와 하드웨어 컨텍스트를 기반으로 멀티미디어를 적응적으로 제공하는 기법을 분석하기 위해 Algorithm 1에서 제시된 가중치 α와 β에 따른 성능을 분석하여야 한다. 또한 해당 분석을 통해 고정 품질 전송 기법과 네트워크 컨텍스트 기반의 기존 기법들과 성능 비교를 하고자 한다. Table 2는 해당 실험에서 사용할 멀티미디어 데이터의 해상도와 초당 프레임 수 정보를 나타낸다. 또한 이 정보는 본 논문에서 제안하는 컨텍스트 기반 적응적 멀티미디어 스트리밍 기법만이 아니라 고정 스트리밍 기법과 네트워크 컨텍스트만을 고려하는 적응적 멀티미디어 스트리밍 기법에도 해당된다.

Table 2.Media Information

이 때 성능을 비교하기 위해서 네트워크 상태와 하드웨어 상태를 측정하여 전력 소모대비 멀티미디어 데이터 품질 점수를 구한다. 실험에 사용한 IoT 장치로 라즈베리 파이를 사용하였으며, 이 장치의 최대 허용 전류는 500mA이다. 해상도 640×480과 초당 프레임 수 30은 최대 전류를 초과하므로 처리율과 CPU 사용량은 이를 넘어서는 안 된다. 따라서 이를 최대 범위로 설정하고, Table 1의 값을 활용한다.

본 논문에서 제안하는 기법이 품질을 선택하는 기준은 전력의 소모를 줄이는 것과 동시에 높은 품질의 서비스를 제공하는 것이다. 만약 하나의 요소인 전력에만 초점을 둔다면 사용자에게 제공되는 서비스 품질을 보장할 수 없으며, 품질에만 초점을 둔다면 네트워크 트래픽이 급격하게 증가하여 상당한 전력을 소모한다. 그러므로 본 논문에서는 전력대비 품질점수인 QSV(Quality Score per Voltage)를 식 (4)와 같이 정의하여 측정한다. 전력은 CPU 사용량(CPU)과 품질 레벨(Quality Level)을 이용하여 전력대비 품질점수를 구하여 고정 스트리밍과 기존 기법인 네트워크 컨텍스트만을 고려하는 기법과 비교한다. 이 때 품질 레벨은 처리율을 의미하며, 네트워크 상태가 원활해짐에 따라 처리율이 높아지고 RTT가 낮아지면 증가하는 반면 과도하게 높은 처리율은 CPU 사용량을 급증시켜 감소하게 된다.

그러나 품질 레벨은 CPU 사용량과 단위나 범위가 다르므로 Table 1에서 장치의 최대 허용 전류인 5A를 넘는 처리율과 CPU 사용량을 참고하여 설정을 최대 품질로 보고 목표로 삼아 차이율을 구하여 비율을 통해 값을 도출할 필요가 있다. 이와 같이 차이율을 통해 전력대비 품질 점수를 구하는 식은 식 (5)와 같다. CPU 최대 사용량(CPUlimit)보다 실시간 CPU(CPU)가 낮을 경우 차이가 클 때 전력 소모가 낮으므로 실시간 CPU와 전력대비 품질점수(QSV)는 반비례의 관계이다. 그러나 품질 레벨의 경우는 최대 품질 레벨(Quality Levellimit)과 차이가 작아야하므로 품질 레벨이 증가할 때 전력대비 품질점수가 상승한다.

따라서 변경 가능한 멀티미디어 데이터 정보를 통해 네트워크와 하드웨어 컨텍스트를 통해 품질을 조절하여 높은 QSV를 달성하는 기법이 효율적이며, 이를 성능의 영향을 주는 가중치에 대한 분석에서 기존의 기법들과 비교하기 위한 성능의 척도로 삼는다. 해당 가중치는 Algorithm 1에서 가중 평균의 반영 비율을 나타내며, α와 β는 적용하려는 환경에 따라서 적절한 수치가 다르다. 본 논문의 환경에서는 게이트웨이와 장치간의 가변적인 무선망에 따라 실시간 컨텍스트 상태를 많이 반영할수록 QSV가 낮아지는 경향을 보인다.

이러한 경향은 Fig. 4와 같이 네트워크 컨텍스트만 고려하는 적응적 멀티미디어 스트리밍 알고리즘에서 가중치 α에 따른 평균 QSV에서도 나타난다. 품질 조절은 초당 프레임 수와 해상도 중 하나의 요소만 조절하여 각 요소마다 상관관계를 분석한다. 그리고 이를 분석하기 위하여 무선 네트워크 환경뿐만 아니라 IoT 장치에서 CPU 사용량을 0%에서부터 25%까지로 변화시킨다. 일반적으로 QSV는 실시간 네트워크 상태를 반영할 때 감소하는 추세를 보이기 때문에 α가 0.85일 때 네트워크 컨텍스트 기반 적응적 멀티미디어 스트리밍의 QSV가 낮다. α는 0.25일 때 제일 높지만 미디어 요소의 품질 범위에 따라 데이터 크기가 다르므로 고정 스트리밍보다 성능이 높고 낮음이 차이가 있다. 또한 가변적인 CPU 사용량으로 네트워크 컨텍스트를 고려하는 기법의 성능이 낮다. 먼저 해상도의 경우 적응적 멀티미디어 스티리밍이 480×360보다 낮지만 640×480보다는 높다. 또한 초당 프레임 수의 경우 해상도에 비해 데이터 크기가 많이 변하지 않으며, 실시간 네트워크 상태를 크게 반영할수록 고정 스트리밍보다 QSV가 낮다. 따라서 네트워크 컨텍스트를 반영하는 α는 0.25로 설정하여 하드웨어 컨텍스트를 반영하였을 경우와 비교한다.

Fig. 4.A Weight α Performance of Network Context-based Adaptive Multimedia Streaming.

Fig. 5는 네트워크 컨텍스트와 하드웨어 컨텍스트를 모두 반영하는 적응적 멀티미디어 스트리밍 기법에서 실시간 하드웨어 상태를 반영하는 가중치 β에 따른 QSV를 Fig. 4와 비교한다. α는 0.25일 때 모든 가중치 β는 네트워크 컨텍스트만 고려하는 기존 기법보다 QSV가 높고, 제일 낮은 0.25일 때 제일 높은 성능을 보인다. 이는 CPU 사용량이 변화하는 상황에서 가중 평균값을 많이 반영하여 실시간 사용량이 높다면 품질을 낮추기 때문이다. 그러므로 해당 환경에서는 α와 β는 0.25로 설정하여 실시간 QSV뿐만 아니라 처리율, RTT, CPU 사용량을 고정 스트리밍 기법과 네트워크 컨텍스트 기반의 기존 기법과 자세하게 분석하고자 한다.

Fig. 5.A Weight β Performance of Context-based Adaptive Multimedia Streaming.

또한 멀티미디어 품질 요소에 따라 성능에 미치는 영향이 다르므로 컨텍스트에 미치는 실시간 영향을 분석하기 위하여 각 요소마다 품질이 변하는 추세를 분석한다. 먼저 Table 3는 해상도에 따른 QSV와 네트워크 및 하드웨어 상태의 평균 성능 결과를 나타낸다. 컨텍스트 기반 적응적 멀티미디어 스트리밍 기법의 QSV는 고정 스트리밍보다 최대 3.89배 높아 전력 대비 처리율의 효율이 높은 서비스를 제공한다. 또한 고정된 해상도가 증가하면 CPU 사용량이 급격하게 증가하는데 그에 비해 전송된 네트워크 트래픽 양의 증가는 작아 QSV가 현저하게 감소하는 모습을 보인다. 네트워크 컨텍스트만 고려하는 기존 기법은 최하의 QSV보다 높으나 CPU 사용량을 고려하지 않아 제안 기법보다 낮은 모습을 보이며, RTT도 480×360 보다 크게 증가한 것을 확인할 수 있다. 그러나 본 논문의 제안 기법은 QSV가 기존 기법보다 약 1.51배 높을 뿐만 아니라 CPU 사용량도 고정된 일반 스트리밍보다 낮아 크게 향상된 모습을 보인다.

Table 3.Quality Score per Voltage and Results according to Resolution

앞서 설명한 평균 성능표의 결과와 마찬가지로 실시간 QSV 추세와 실시간 CPU 사용량과 실시간 RTT에서도 동일한 추세를 보인다. 먼저 Fig. 6는 시간에 따른 실시간 QSV 추세를 나타내며, 0에 가까울수록 처리율이 0에 근접하거나 과도한 CPU 자원의 사용을 의미한다. 반면 높을수록 전력 단위당 처리율이 높아 효율적인 멀티미디어 스트리밍을 수행하는 것을 의미한다. 50초 동안 기존 기법은 0에 근접하는 구간이 존재하여 제일 낮은 결과를 기록하고 컨텍스트 기반 멀티미디어 스트리밍 기법은 고정 스트리밍보다 대체적으로 높은 결과를 보인다.

Fig. 6.QSV Trend according to Resolution Change.

Fig. 7은 변화한 비디오의 해상도 추세를 나타내며, 초당 프레임 수는 30으로 고정이다. 품질 레벨은 해상도의 순서를 나타내고 0은 320×240, 1은 480×360, 2는 640×480이다. 최대 해상도를 사용하여 스트리밍 서비스를 제공하는 것은 장치의 허용 전류를 초과할 가능성이 높으므로 지양해야 한다. 그러나 기존의 기법은 하드웨어 상태를 고려하지 않고 최대 품질 레벨을 사용하므로 Fig. 6와 같이 QSV가 0에 가까운 구간이 생긴다. 반면에 제안 기법은 최대 전류를 넘지 않게 비디오 데이터를 처리하여 전력 소모를 고려하는 것을 확인할 수 있다.

Fig. 7.Resolution Change Trend.

다음 Fig. 8은 해당 전력 소모량을 실시간 추세로 나타낸 그래프이다. 해당 그래프에서 기존 기법은 40초부터 50초까지의 구간에서 최대 품질을 사용하여 CPU 사용량이 다른 기법들에 비해 급격하게 상승한다. 그에 반해 본 논문의 제안하는 기법은 안정된 CPU 사용량을 보이며, 대부분 고정 일반 스트리밍 기법보다 낮아 전력 소모량을 줄인다.

Fig. 8.CPU Usage Trend according to Resolution Change.

하드웨어뿐만 아니라 네트워크와 관련하여서도 기존 기법보다 제안 기법이 평균 성능에서 우세하다. 이를 Fig. 9에서 시간에 따라 실시간 RTT 추세로 나타내어 비교한다. 고정 스트리밍은 RTT 변화폭이 심하고, 기존 기법은 하드웨어 상태가 악화되었을 때 급격하게 지연되는 모습을 보인다. 반면 제안 기법은 낮은 RTT를 유지하고 변화하는 정도와 발생횟수가 다른 기법들보다 현저하게 낮다.

Fig. 9.RTT Trend according to Resolution Change.

마찬가지로 초당 프레임 수에 따른 평균 성능을 Table 4와 같이 비교하고자 한다. 설정된 고정 해상도는 640×480이고 기존 기법, 고정 스트리밍과 제안기법의 CPU 사용량, 처리율, RTT, QSV를 비교한다. 전반적으로 제안 기법의 적용으로 QSV가 최대 1.2배 증가하고 CPU와 RTT가 감소하여 성능이 향상된다. 그러나 초당 프레임 수는 해상도 요소에 비해 변화폭이 작아 미미한 증가를 보였으나 두 요소를 동시에 조절한다면 큰 효과를 보일 수 있으며, 이는 설정한 해상도 범위가 비디오 데이터 크기를 설정한 초당 프레임 수 범위보다 크게 변동시키기 때문에 발생하는 현상이다.

Table 4.Quality Score per Voltage and Results according to FPS

이와 같은 평균 성능을 실시간 추세로 비교하기 위하여 먼저 QSV 추세를 Fig. 10에 나타낸다. 제안 기법은 높은 QSV를 기록하나 기존 기법은 평균 성능이 낮고 고정 스트리밍은 실시간 추세의 대부분 구간이 낮다. 또한 초당 프레임 수의 품질 레벨은 0이 8fps이고 1은 16fps이며 2는 30fps로 설정하고, 평균 품질 레벨은 기존 기법과 제안 기법이 약 0.5와 0.4로 전력 소모량을 초과할 수 있는 2레벨은 사용하지 않는다. 그럼에도 불구하고 기존 기법은 QSV가 크게 감소하는 구간이 있어 평균 성능이 낮은 양상을 보여 제안 기법이 더욱 안정적임을 증명한다.

Fig. 10.QSV Trend according to FPS Change.

이러한 추세는 Fig. 11과 Fig. 12의 실시간 CPU 사용량과 RTT 추세에서도 확인할 수 있다. CPU 사용량에서 기존 기법은 급격하게 증가하는 구간이 있는 반면 제안 기법은 대체적으로 고정 스트리밍보다 낮은 양상을 보인다. 또한 RTT 추세에서도 고정 스트리밍보다 급격하게 증가하는 횟수가 작아 안정적인 모습을 보인다.

Fig. 11.CPU Usage Trend according to FPS Change.

Fig. 12.RTT Trend according to FPS Change.

 

5. 결론 및 향후 연구

본 논문은 IoT 환경에서 멀티미디어 스트리밍 서비스와 관련한 컨텍스트를 기반으로 지능형 게이트웨이에서 장치의 카메라 센서를 조절해 적응적으로 비디오 품질을 변경하여 전송하는 기법을 제안한다. 일반 스트리밍 기법은 장치의 전력 소모량을 고려하지 않아 허용 전류를 초과하여 사용할 수 있다. 또한 게이트웨이를 거쳐 서버로 데이터가 전송되는 시스템 구조이므로 네트워크 부하의 가능성이 높다. 하지만 본 논문에서는 해당 서비스와 관련된 네트워크와 하드웨어 상태를 게이트웨이에서 평가하여 비디오 품질과 연관된 해상도와 프레임 수를 적응적으로 조절하여 트래픽 양을 줄이고 하드웨어 자원 사용량을 줄여 성능을 향상시킨다. 특히 전력대비 비디오 품질을 비교한 결과 일반 스트리밍에 비해 최대 3.89배 높고 ,장치의 허용 가능 전류를 넘지 않게 품질을 조절하여 전력의 소모량에도 민감하게 조절한다.

하지만 여전히 IoT 환경에서 급증하는 네트워크 트래픽 양은 병목 구간에서 혼잡을 일으킬 위험성이 있다. 특히 HTTP 통신은 신뢰성을 보장하여 연속적으로 멀티미디어 스트리밍 서비스를 제공할 수 있으나, 일반적으로 장치의 전력 소모량을 고려하도록 설계되어 있지 않다. 그러므로 향후에는 제공하는 서비스 유형에 따라서 어플리케이션 계층과 전송 계층 프로토콜도 적응적으로 변경할 수 있다[19]. 일반적으로 어플리케이션 계층은 전력의 소모량을 낮추기 위해 CoAP을 사용하지만, UDP 기반에서 동작하기 때문에 연결의 신뢰성이 HTTP보다 낮아 멀티미디어 스트리밍 서비스에 적합하지 않을 가능성이 높다. 따라서 서비스 형태에 따라 적절한 전송 계층을 선택하여 신뢰성 있는 CoAP 통신을 제안하고자 하며, 이는 기존의 HTTP 기반 멀티미디어 스트리밍 통신보다 낮은 전력을 소모하지만 높은 품질의 데이터를 전송시키려는 목적을 지닌다.

References

  1. J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet of Things (IoT): A Vision, Architectural Elements, and Future Directions,” Journal of Future Generation Computer Systems, Vol. 29, No. 7, pp. 1645-1660, 2013. https://doi.org/10.1016/j.future.2013.01.010
  2. C. Chiasserini and E. Magli, “Energy Consumption and Image Quality in Wireless Video-surveillance Networks,” Proceeding of 13th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, pp. 2357-2361, 2002.
  3. D. Miorandi, S. Sicari, F.D. Pellegrini, and I. Chlamtac, “Internet of Things: Vision, Applications and Research Challenges,” Journal of Ad Hoc Networks, Vol. 10, No. 7, pp. 1497-1516, 2012. https://doi.org/10.1016/j.adhoc.2012.02.016
  4. K. Chang and J. Chen, “A Survey of Trust Management in WSNs, Internet of Things and Future Internet,” KSII Transactions on Internet and Information Systems, Vol. 6, No. 1, pp. 5-23, 2012. https://doi.org/10.3837/tiis.0000.00.012
  5. L. Sanchez, J. Lanza, R. Olsen, M. Bauer, and M. Girod-Genet, “A Generic Context Management Framework for Personal Networking Environments,” Proceeding of 3rd Annual International Conference on Mobile and Ubiquitous Systems-Workshops, pp. 1-8, 2006.
  6. G.D. Abowd, A.K. Dey, P.J. Brown, N. Davies, M. Smith, and P. Steggles, “Towards a Better Understanding of Context and Contextawareness,” Proceeding of 1st International Symposium on Handheld and Ubiquitous Computing, pp. 304-307, 1999.
  7. S. Yanwei, Z. Guangzhou, and P. Haitao, “Research on the Context Model of Intelligent Interaction System in the Internet of Things,” Proceeding of International Symposium on IT in Medicine and Education, pp. 379-382, 2011.
  8. S. Misra, M. Reisslein, and G. Xue, “A Survey of Multimedia Streaming in Wireless Sensor Network,” Journal of IEEE Communications Surveys & Tutorials, Vol. 10, No. 4, pp. 18-39, 2008. https://doi.org/10.1109/SURV.2008.080404
  9. A. Floris and L. Atzori, “Quality of Experience in the Multimedia Internet of Things: Definition and Practical Use-cases,” Proceeding of IEEE International Conference on Communication Workshop, pp. 1747-1752, 2015.
  10. P. Martinez-Julia, E.T. Garcia, J.O. Murillo, and A.F. Skarmeta, “Evaluating Video Streaming in Network Architectures for the Internet of Things,” Proceeding of Seventh International Conference on IEEE Innovative Mobile and Internet Services in Ubiquitous Computing, pp. 411-415, 2013.
  11. D. Shin and C. Kim, “Data Compression Method for Reducing Sensor Data Loss and Error in Wireless Sensor Networks,” Journal of Korea Multimedia Society, Vol. 19, No. 2, pp. 360-374, 2016. https://doi.org/10.9717/kmms.2016.19.2.360
  12. S. Persia and D. Cassioli, “IPv4 Wireless Multimedia Sensor Networks,” Proceeding of Third International Workshop on Software Engineering for Sensor Network Applications, pp. 58-63, 2012.
  13. IoTivity, https://www.iotivity.org/ (accessed Feb., 12, 2016).
  14. Google's Project Brillo, http://developers.google.com/brillo/ (accessed Feb., 12, 2016).
  15. Apple Homekit, https://developer.apple.com/homekit/ (accessed Feb., 12, 2016).
  16. J. Kim and J.W. Lee, “OpenIoT: An Open Service Framework for the Internet of Things,” Proceeding of 2014 IEEE World Forum on Internet of Things, pp. 89-93, 2014.
  17. J. Swetina, “Toward a Standardized Common M2M Service Layer Platform: Introduction to oneM2M,” Journal of IEEE Wireless Communications, Vol. 21, No. 3, pp. 20-26, 2014. https://doi.org/10.1109/MWC.2014.6845045
  18. Motion, http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome (accessed Feb., 12, 2016).
  19. P. Balamuralidhara, P. Misra, and A. Pal, “Software Platforms for Internet of Things and m2m,” Journal of the Indian Institute of Science, Vol. 93, No. 3, pp. 487-498, 2013.

Cited by

  1. 사용자 요소 기반의 신뢰성 있는 기기 탐색을 위한 사물인터넷 통합 시스템 개발 vol.20, pp.5, 2016, https://doi.org/10.9717/kmms.2017.20.5.791