ⓒ IEMEK J. Embed. Sys. Appl. 2015 Aug. 10(4) 241-255 ISSN : 1975-5066
http://dx.doi.org/10.14372/IEMEK.2015.10.4.241
LTE 기반 모바일 DaaS 환경에서 비디오 스트리밍을 위한
Linux TCP 구현물의 실험적 성능 분석
(An Experimental Analysis of Linux TCP Variants for Video Streaming in LTE-based Mobile DaaS Environments)
성 채 민, 홍 성 준, 임 경 식*, 김 대 원, 김 성 운
(Chaemin Seong, Seongjun Hong, Kyungshik Lim, Dae Won Kim, Seongwoon Kim)
Abstract : Recent network environment has been rapidly evolved to cloud computing environment based on the development of the Internet technologies. Furthermore there is an increasing demand on mobile cloud computing due to explosive growth of smart devices and wide deployment of LTE-based cellular networks. Thus mobile Desktop-as-a-Service(DaaS) could be a pervasive service for nomadic users. In addition, video streaming traffic is currently more than two-thirds of mobile traffic and ever increasing. All such trends enable that video streaming in mobile DaaS could be an important concern for mobile cloud computing. It should be noted that the performance of the Transmission Control Protocol(TCP) on cloud host servers greatly affects Quality of Service(QoS) of video streams for mobile users. With widely deployed Linux server platforms for cloud computing, in this paper, we conduct an experimental analysis of the twelve Linux TCP variants in mobile DaaS environments. The results of our experiments show that the TCP Illinois outperforms the other TCP variants in terms of wide range of packet loss rate and propagation delay over LTE-based wireless links between cloud servers and mobile devices, even though TCP CUBIC is usually used in default in the current Linux systems.
Keywords : TCP variants, Mobile cloud, Mobile DaaS, LTE networks, Video streaming
*Corresponding Author ([email protected]) Received: 7 May 2015, Revised: 20 May 2015, Accepted: 8 June 2015.
C. Seong, S. Hong, K. Lim: Kyungpook National University
D.W. Kim, S. Kim: ETRI
※ 본 논문은 2012학년도 경북대학교 학술연구비 와 2015년도 정부(미래창조과학부)의 재원으로 정 보통신기술진흥센터의 지원을 받아 수행된 연구임 (No.14-824-09-004).
Ⅰ. 서 론
최근의 네트워크 환경은 지리적인 제약을 받지 않고 제 3의 공간에서 인터넷을 이용하여 개인의
컴퓨터에 접근하는 클라우드 컴퓨팅(cloud computing) 환경으로 변화하고 있다. 인터넷 사용 이 가능한 기기를 통해 물리적 컴퓨터 환경이 아닌 원격으로 가상화된 컴퓨터를 제공받는 서비스를 Desktop-as-a-Service(DaaS)라고 한다[1].
게다가 세계적으로 스마트폰, 태블릿과 같은 모 바일 기기의 사용 증대는 클라우드 컴퓨팅 형태에 도 영향을 미쳐 모바일 클라우드 컴퓨팅(mobile cloud computing)이 출현하였다. 이에 맞춰 서비스 모델도 변화하여 DaaS를 모바일 DaaS로 정의하였 으며 무선 네트워크는 모바일 DaaS 사용자에게 크 게 영향을 주며 중요한 부분을 차지하고 있다[2].
또한 국내의 경우 2011년부터 시작된 LTE 무 선 네트워크의 사용자 비율이 점차 높아지고 있다.
2012년 6월 기준 LTE 가입자는 약 709만 명으로
전체 이동통신 가입자(약 5,299만 명)에서 13.4%를 차지하였으며 꾸준히 증가하고 있는 상황이다[3].
그리고 2014년 기준으로 비디오 스트리밍 트래픽이 모바일 트래픽 중 전체 66%로 지속적으로 증가하 고 있다[4]. 이러한 동향들은 모바일 DaaS에서도 중요한 관심사로 자리 잡고 있다. 비디오 스트리밍 의 Quality of Service(QoS)는 LTE 기반 모바일 DaaS(LTE-based mobile DaaS)에서 클라우드 서 버의 Transmission Control Protocol(TCP)로부터 크게 영향을 받는다. 또한 무선 네트워크의 빈번한 임의 손실로 동작되는 혼잡 제어 기능은 QoS를 악 화시키므로 이에 대한 연구가 필요한 실정이다.
따라서 본 논문에서는 클라우드 서버로 널리 사 용되는 Linux 플랫폼의 12가지 TCP 혼잡 제어 알 고리즘의 처리율(throughput)을 LTE 기반 모바일 DaaS 환경에서 높은 손실률(loss rate)과 지연 시 간(propagation delay)에 따라 측정하였다. 이 데이 터를 기반으로 Linux TCP의 성능을 혼잡 제어 특 징과 함께 분석하고 비교하였다. 또한 혼잡 윈도우 크기(congestion window size) 변화 그래프와 실 시간 처리율 그래프로 효율성을 심도 있게 분석하 고자 한다.
본 논문의 구성은 다음과 같다. 2장에서는 모바 일 클라우드 컴퓨팅과 TCP를 대상으로 진행된 기 존의 연구를 요약하였다. 3장에서는 LTE 기반 모 바일 DaaS 환경을 설명하였으며 Linux TCP 혼잡 제어 알고리즘의 측정 데이터를 분석하고 혼잡 제 어 기능을 비교하였다. 4장에서는 결론을 맺으며 향 후 연구를 제시하였다.
Ⅱ. 관련 연구
모바일 클라우드 컴퓨팅에 대한 관심이 급증하 면서 그에 대한 서비스 모델 및 시스템 구조에 대 한 연구가 활발히 진행되고 있다[5]. 모바일 클라우 드 컴퓨팅은 클라우드 컴퓨팅과 달리 네트워크의 안정성과 단말기의 가용성을 고려해야 한다[6, 7].
네트워크의 안정성은 TCP 성능에도 크게 영향을 받는다.
본래 TCP는 주로 유선 네트워크를 대상으로 구 현되었으나 무선 네트워크가 출현하면서 기존에 존 재하지 않았던 여러 문제가 발생하였다. 그 문제들 은 무선 네트워크의 특성인 제한된 대역폭 (bandwidth), 높은 패킷 손실률과 버스트 에러 (burst error), 종단 연결간의 긴 지연 시간, 빈번한
연결종료로 이는 네트워크를 불안정하게 한다[8].
무선 네트워크를 포함하는 LTE 기반 모바일 DaaS 환경에서도 동일한 문제점을 가지고 있어 이에 대 한 연구가 필요하다.
또한 클라우드 서버의 플랫폼은 주로 Linux로 Windows보다 CPU 사용량, 메모리 사용량을 효율 적으로 사용하기 때문이다[9]. 이는 다수의 접속이 이루어지는 모바일 DaaS 환경에서 자원을 절약하 여 QoS를 높여준다. 그리고 TCP는 기본적으로 네 트워크 간의 데이터를 신뢰성 있게 전송하기 위해 설계되었다. 이에 따라 TCP는 흐름 제어와 혼잡 제 어 알고리즘을 사용하여 네트워크상에서 발생하는 혼잡을 해결하고자 하였다. 특히 본 논문에서는 Linux 플랫폼의 TCP에 초점을 맞추어 혼잡 제어 알고리즘을 분석하였다.
많은 TCP 혼잡 제어 알고리즘이 구현되면서 Afanasyev[10]는 이를 해결하고자 하는 특성별로 분류하여 정리하는 연구를 진행하였다. 기본적으로 초기 유선 네트워크에 발생하는 혼잡 붕괴를 해결 하기 위해서 TCP Reno, TCP Vegas, TCP Veno 가 존재한다. 패킷 손실을 방지하기 위해 Fast Recovery 알고리즘을 사용하는 TCP Reno는 초기 TCP로 standard TCP라고도 불린다. 하지만 중복 손실에 대해서 제대로 동작하지 못하고 혼잡을 미 리 방지할 수 없다는 단점을 가진다. 그래서 RTT 나 병목 버퍼(bottleneck buffer)를 이용해 네트워 크 상태를 예측하는 TCP Vegas와 TCP Veno가 등장하였다. 또한 우선순위를 고려하여 데이터 전송 서비스를 제공하는 TCP LP도 구현되었다.
하지만 이는 유선 네트워크 환경에 맞게 디자인 되어진 알고리즘으로 무선 네트워크에서 발생하는 패킷 손실과 혼잡을 구분하지 못한다. 이러한 상황 을 해결하기 위해 사용가능한 대역폭을 예측하는 대표적인 알고리즘으로 TCP Westwood+가 있다.
또한 최근에는 큰 대역폭과 높은 RTT를 가진 고속 네트워크가 출현하였다. 기존의 TCP 혼잡 제 어 알고리즘으로는 신속하게 대역폭을 확보하기 어 렵기 때문에 HSTCP, HTCP, TCP Hybla, BIC TCP, TCP CUBIC, TCP Illinois, YeAH TCP 등 다양한 알고리즘이 소개되었다. 각 알고리즘마다 손 실율 혹은 지연시간과 같은 요소들을 고려하였으며, 빠르게 대역폭을 사용하기 위해 기존의 Addictive Increase Multiplicative Decrease(AIMD) 알고리 즘을 수정하였다. 각 알고리즘마다 목표로 하는 네 트워크 환경이 다르기 때문에 성능의 정도는 차이 가 있으며, 특히 손실율과 지연 시간에 따른 네트워
크 환경 특성에 영향을 많이 받는다. 그리고 본 논 문의 실험 환경인 모바일 DaaS 환경은 고속 네트 워크와 무선 네트워크 성질을 동시에 지니고 있는 새롭게 등장한 환경으로 의의가 있다.
이처럼 네트워크상에 다양하게 발생하는 문제들 을 해결하기 위해 여러 TCP 혼잡 제어 알고리즘이 등장하였다. 이를 이용하여 다양한 네트워크 환경에 서 성능을 향상시키기 위한 많은 연구가 활발히 진 행되고 있다.
먼저 Callegari[11]는 높은 지연시간과 유선 네 트워크와 유사한 낮은 손실률을 가진 네트워크를 구성하여 Linux TCP 혼잡 제어 알고리즘의 처리율 에 관해 연구하였다. 나아가 Adami[12]는 이전의 논문을 바탕으로 RTT를 증가시켜 위성 네트워크와 유사하게 구성하였으며, Linux 커널 모듈인 TCP probe를 이용하여 혼잡 윈도우 크기변화를 비교하 였다.
그 외에도 Wu[13]는 10Gbps 대역폭의 광대역 환경에서 고속 네트워크를 위해 구현된 Linux TCP 와 standard TCP인 TCP Reno를 비교하였다. 비 교 대상은 프레임 크기, 버퍼 크기, 지연 시간, 손실 률에 의한 혼잡 윈도우 크기와 처리율이다. 손실률 이 없고 지연 시간이 길 때 TCP CUBIC은 TCP Reno, BIC TCP, HSTCP, STCP, HTCP보다 나쁜 성능을 보였다. TCP CUBIC의 성능은 낮은 손실률 이 있는 환경에서도 좋지 않았다. 반대로 STCP의 처리율은 대체적으로 우수하였다. 본 논문에서는 STCP를 기반으로 구현된 YeAH TCP가 있어 STCP를 실험에서 제외하였다.
더불어 Alvarez-Horine[14]은 클라우드 환경에 서 적응형 비디오 스트리밍 서비스를 이용하는 경 우 TCP 혼잡 제어 알고리즘 성능에 대한 연구가 진행되었다. 지연 시간을 고려하지 않은 높은 손실 률 환경에서 TCP CUBIC, BIC TCP, TCP Vegas, HTCP, HSTCP에 대해 분석이 이루어졌다. 하지만 아직까지 모바일 클라우드 환경에서 TCP 성능에 대한 연구가 미흡한 상태이며, LTE 기반 모바일 DaaS 환경은 손실률과 지연 시간을 동시에 고려해 야 한다. 따라서 본 논문에서는 이러한 환경에서 비 디오 스트리밍 서비스를 이용하는 경우 TCP의 성 능에 대한 연구를 진행하였다.
Ⅲ. LTE 기반 모바일 DaaS 환경에서 Linux TCP 구현물의 실험적 성능 분석
그림 1. 모바일 DaaS 환경에서 비디오 스트리밍 Fig. 1 Video Streaming in Mobile DaaS
Environments
1. LTE 기반 모바일 DaaS 실험 환경
다음 그림 1은 사용자가 LTE 기반 모바일 DaaS 환경에서 비디오 스트리밍 서비스를 받는 시 나리오를 나타낸다.
하이퍼바이저(hypervisor)인 Quick Emulator (QEMU)에 의해 생성된 가상머신(virtual machine) 으로 원격접속하기 위해서 Simple Protocol for Independent Computing Environments(SPICE) 프 로토콜을 이용하였다[15].
접속자가 비디오 서버(video server)에게 비디 오 스트리밍을 요청하면 클라우드 서버(cloud server)의 SPICE가 비디오를 먼저 수신한다. 수신 받은 SPICE는 영상에서 변화되는 부분을 이미지화 시켜 사용자에게 전송한다. 이 두 단계는 모바일 DaaS 환경에서 비디오 스트리밍의 한 과정으로 서 로 밀접한 관계를 가진다.
일반적으로 서버 간은 유선 네트워크로 구성되 며 클라우드 서버와 사용자 사이는 무선 네트워크 로 구성되어 있다. 특히 무선 네트워크 구간은 모바 일 DaaS 환경에서 병목 구간이므로 전체적인 성능 은 TCP와 LTE에 의해 좌우된다. 따라서 클라우드 서버에서 사용자에게 이미지 데이터를 전송할 때 혼잡 윈도우 크기 변화와 처리율에 관해 분석고자 한다.
클라우드 서버와 사용자 사이에 LTE 기반 모바 일 DaaS 환경을 구성하기 위해 그림 2와 같이 네 트워크 환경을 에뮬레이터할 수 있는 NetEm을 사 용하였다[16]. NetEm을 이용하여 서버를 LTE 평 균 대역폭인 40Mbps로 설정하였고 지연 시간과 손 실률을 변경시키면서 TCP 혼잡 제어 알고리즘의 성능을 측정하였다. 지연 시간의 범위는 0ms, 5ms,
그림 2. 네트워크 토폴로지 Fig. 2 Network Topology
10ms, 20ms, 30ms, 40ms, 50ms으로 설정하였고 손실률은 으로 설정하였 다. 최하 5Mbps에서 최대 100Mbps까지 대역폭을 변경하는 경우 처리율 그래프의 추이는 비슷하므로 생략하였다.
Linux 플랫폼을 사용하였으며 서버는 CentOS 6.5를 사용하였고 사용자는 Ubuntu 14.04를 사용 하였다. 사용자는 Linux의 기본 TCP 혼잡 제어 알 고리즘인 TCP CUBIC을 사용하였고 서버에서는 12가지 Linux TCP(TCP Reno, TCP Westwood+, BIC TCP, TCP CUBIC, TCP LP, HSTCP, HTCP, TCP Hybla, TCP Illinois, TCP Vegas, TCP Veno, YeAH TCP)를 실험에 사용하였다.
실험은 실시간 처리율을 측정하기 위한 데이터 스트리밍 프로그램과 네트워크의 최대 사용 가능한 대역폭을 측정하는 Iperf를 사용하였다[17]. 데이터 스트리밍 프로그램은 TCP/IP 소켓을 이용하였으며 101,625,856 byte(약 102 Mbyte)의 데이터를 전 송했다.
2. Linux TCP 성능 분석
2.1 12가지 Linux TCP 실측 데이터 분석 결과 그림 3은 LTE 평균 대역폭인 40Mbps 환경에 서 Linux TCP 혼잡 제어 알고리즘을 대상으로 지연 시간에 따라 측정된 처리율을 나타낸 그래프이며, 그 림 4는 손실률에 따라 측정된 처리율을 표현한 그래 프이다. 일반적으로 지연 시간과 손실률의 증가는 처 리율을 감소시켰으나 유선 네트워크와 유사한 손실률인 경우는 12가지 Linux TCP 모두 최대 사용 가능한 대역폭을 기록하였다. 하지만 본 논문에서는 유선 네트워크를 제외한 LTE 기반 모바일 DaaS 환 경에 초점을 맞추어 분석하고자 한다.
먼저 TCP Illinois는 그림 3-5와 그림 6-8에서
지연 시간이나 손실률에 의한 처리율이 12개 TCP 중 1위를 기록하였으며 변동이 제일 작았다. 이는 손 실률과 지연 시간을 동시에 고려하여 구현되어진 혼 잡 제어 기능을 포함하기 때문이다. 또한 기존의 AIMD를 고속 네트워크를 고려하여 Concave AIMD(C-AIMD)를 제안하였다[18]. C-AIMD는 패 킷 손실이 발생하여도 주어진 대역폭을 빠르게 사용 할 수 있도록 해준다. 그러므로 이러한 특성이 손실 률과 지연 시간으로 인해 변동이 심한 LTE 기반 모 바일 DaaS 환경에서도 높은 처리율을 기록하는데 크 게 기여하였다.
BIC TCP, YeAH TCP, TCP Westwood+가 TCP Illinois 다음으로 지연 시간과 손실률에 의한 처리율 변동이 작았으며 2~4위를 기록하였다. BIC TCP는 고속 네트워크와 RTT unfairness를 고려하 여 지연 시간에는 크게 영향을 받지 않았다[19]. 그 러나 손실률일 때 5위를 기록하여 손실률에는 비교적 약한 모습을 보였다.
이와는 다르게 지연 시간을 기반으로 네트워크 상태를 예측한 YeAH TCP는 손실률에 강했다[20].
더군다나 이런 특성의 영향으로 TCP Illinois 다음으 로 높은 처리율을 기록하였다. 또한 TCP Westwood+도 강한 손실률과 긴 지연 시간을 고려 하였다. 그리고 본래 초기 무선 네트워크 환경을 목 표로 구현되어 유사한 본 논문의 실험 환경에서도 좋 은 결과를 보였다. 하지만 고속 네트워크 환경에서는 비효율적인 동작으로 YeAH TCP, TCP Illinois에 비 해 대체적으로 처리율이 낮게 나왔다[21].
그리고 초기 유선 네트워크의 혼잡을 제어하기 위한 TCP Reno와 혼잡 제어에서 우선순위를 고려한 TCP LP가 대부분 최하인 11위와 12위이다[22, 23]. standard TCP라고도 불리는 TCP Reno는 유 선 네트워크를 고려하여 구현되어 손실률과 지연 시 간에 크게 민감하다. TCP LP는 fairness를 고려하 기 때문에 혼잡 제어의 우선순위를 결정한다. 이는 혼잡 제어 속도를 임의로 조절하여 처리율에 악영향 을 끼쳤다.
그 외 고속 대역폭 혹은 긴 지연 시간의 특성을 지닌 네트워크 환경을 위해 구현된 HSTCP, HTCP, TCP Hybla, TCP CUBIC이 있고, RTT를 기반으로 네트워크 상태를 예측하기 위해 구현된 TCP Vegas 와 TCP Veno가 있다[9].
HSTCP는 손실률이 인 경우 지연 시간에 따른 처리율은 7위로 중간 정도의 성능이다. 손실률 이 이상인 경우 급격하게 처리율이 낮아지자 손
실률에 약하였으나 지연 시간이 높은 경우는 처리율 이 높게 나왔다. 이는 지연 시간과 고속 네트워크 환 경을 고려하여 구현되었기 때문이다[24].
HTCP도 마찬가지로 긴 지연 시간과 고속 네트 워크를 고려하여 손실률이 높은 환경에서는 성능이 좋지 않았다[25]. 그림 3-5의 그래프에서 지연 시간 이 10ms이상인 경우 HTCP의 측정된 처리율은 평균 4위, 5위, 8위를 기록하였고, 그림 6-8의 그래프에서 는 손실률이 이상인 경우 7위, 5위, 6위를 기록 하였다.
이와는 반대로 TCP Hybla는 동시에 손실률이 크고 지연 시간이 긴 경우 다른 TCP 혼잡 제어 알고 리즘보다 처리율의 감소하는 폭이 작았다. 이는 TCP Hybla가 급격히 긴 지연 시간을 가진 환경에 강하여 손실률과 무관하게 지연 시간에 의해 처리율이 상승 하기 때문이다[26]. 그러나 그림 6과 그림 7을 기반 으로 손실률에 강한 알고리즘이라고 보기는 어려우 며 손실률에 민감하였다.
TCP Vegas는 지연 시간이 0ms인 경우 측정된 처리율이 최하였으며 이는 네트워크 상태를 실시간 RTT에 따라 예측하고 그 값에 따라 혼잡 제어를 하 는 특성 때문에 일어난 현상이다[27]. 전반적으로 하 위권을 기록하여 좋지 않은 성능을 보였다. 이는 높 은 손실률을 가진 모바일 DaaS 환경에서 변동이 큰 RTT로 네트워크 상태를 정확하게 예측하기 어렵기 때문이다.
TCP Veno는 TCP Reno의 혼잡 제어 기능을 통해 네트워크 상태를 예측한다. 그림 3-5의 그래프 에서 8위, 7위, 4위를 기록하였고, 그림 6-8에서는 4 위, 8위, 7위를 기록하였다. 이를 미루어 보았을 때 지연 시간이 길어질수록 다른 TCP보다 처리율 변동 이 크다. 하지만 높은 손실률로 인해 전체적으로 처 리율이 급격하게 떨어지는 경우는 TCP Veno가 높 은 처리율을 기록하였다. 이는 TCP Veno가 혼잡과 임의 손실을 구분하여 혼잡을 제어하는 기능을 가졌 기 때문에 높은 손실률 환경에서 강세를 보였다[28].
TCP CUBIC은 2장의 관련 연구와 동일하게 낮 은 손실률 에서도 취약한 모습을 보였다. 더군다 나 손실률인 경우 급격하게 처리율이 감소하였 다. 그러나 지연 시간을 고려하여 구현된 알고리즘으 로 긴 지연 시간을 가지는 환경에서는 순위가 증가하 였다[29]. 하지만 증가의 효과와는 다르게 그림 3-5 의 그래프에서 6위, 10위, 11위를 기록하였고, 그림 6-8에서 처리율은 평균 10위를 기록하여 저조한 순 위를 기록하였다.
Average rank
≥ ,
≥
Linux TCP
Consideration
Loss Delay
1 TCP Illinois o o
2 YeAH TCP o o
3 TCP
Westwood+ o o
4 BIC TCP x o
5 TCP Veno o x
6 HTCP x o
7 TCP Vegas x x
8 TCP Hybla x o
9 HSTCP x o
10 TCP CUBIC x o
11 TCP LP x x
12 TCP Reno x x
표 1. LTE 기반 모바일 DaaS 환경에서 Linux TCP Table 1. Linux TCP Variants in LTE-based Mobile
DaaS
표 1은 LTE 기반 모바일 DaaS 환경에서 12가 지의 Linux TCP 혼잡 제어 알고리즘의 손실률, 지연 시간에 대한 고려 여부와 성능 측정 결과의 순위를 정리하였다. 순위는 본 실험 결과에서 지연시간이 20ms이상이고 손실률은 이상인 상황에 대해 국 한하여 구한 평균 순위이다.
TCP 혼잡 제어 알고리즘마다 다른 특성을 가지 고 있으나 LTE 기반 모바일 DaaS 환경은 유선과 무 선 네트워크를 동시에 포함하고 있다. 유선 네트워크 와 같은 낮은 손실률을 포함하는 경우 처리율의 차이 가 미미하므로 본 논문에서는 무선 네트워크 환경에 초점을 두고 다음 대표적인 세 가지 TCP에 대하여 자세하게 비교하기로 한다. 초기 무선 네트워크의 문 제를 해결하기 위해 제안되었던 TCP Westwood+와 본 논문의 실험 환경에서 최고 성능을 보인 TCP Illinois, 대중적으로 유선 네트워크에서 사용되는 Linux 플랫폼의 기본 설정인 TCP CUBIC에 대해 혼 잡 제어 기능과 실시간 처리율 변화를 분석하였다.
그림 3. delay=0ms~50ms, bandwidth=40Mbps, loss= 일 때 처리율 Fig. 3 Throughput with delay=0ms~50ms, bandwidth=40Mbps and loss=
그림 4. delay=0ms~50ms, bandwidth=40Mbps, loss= 일 때 처리율 Fig. 4 Throughput with delay=0ms~50ms, bandwidth=40Mbps and loss=
그림 5. delay=0ms~50ms, bandwidth=40Mbps, loss= 일 때 처리율 Fig. 5 Throughput with delay=0ms~50ms, bandwidth=40Mbps and loss=
그림 6. loss= ~ , bandwidth=40Mbps, delay=10ms일 때 처리율 Fig. 6 Throughput with loss= ~ , bandwidth=40Mbps and delay=10ms
그림 7. loss= ~ , bandwidth=40Mbps, delay=20ms일 때 처리율 Fig. 7 Throughput with loss= ~ , bandwidth=40Mbps and delay=20ms
그림 8. loss= ~ , bandwidth=40Mbps, delay=50ms일 때 처리율 Fig. 8 Throughput with loss= ~ , bandwidth=40Mbps and delay=50ms
1: Initialization:
2:
3:
4:
5:
6:
← ←
← ←
← ← ← ←
_ ← _
7: On each ACK:
8: _
9: if ≤ then ← 10: else ←
11: Packet loss:
12:
13:
14:
_
←
←
15: Timeout:
16:
17:
18:
← ← _
←
←
19: update_params():
20: if _ then ←←
21: else 22:
23:
24:
25:
if then ←
←
← ←
_
26: alpha():
27: ←
28: if ≤ then ←
29:
30:
31:
else ←
←
←
32: beta():
33: ← ←
34: if ≤ then ←
35: else
36: if ≤ or ≤ then ←
37:
38:
39:
else ←
←
←
40: rtt_reset():
41: ← ←
알고리듬 1. Linux TCP Illinois 알고리듬 Algorithm 1. Linux TCP Illinois Algorithm
2.2 TCP Illinois, Westwood+, CUBIC 알고리즘 분석 Algorithm 1의 TCP Illinois는 큐잉 지연시간 (queueing delay())을 바탕으로 혼잡 윈도우 크기 ()를 조절한다[18]. 큐잉 지연시간의 최댓값 ()과 평균값()은 측정된 최대 RTT( ) 와 최소 RTT(), 평균 RTT()를 이용 하여 줄19~25와 같은 과정으로 구한다. 큐잉 지연 시간의 최댓값과 평균값을 비교해 실제 혼잡이 아닌 임의 손실로 인해 네트워크 환경이 악화되었는지를 구분한다.
또한 다른 주요 특징은 C-AIMD를 사용하여 줄 7~10처럼 혼잡 윈도우 크기를 조절한다. 혼잡이 발 생하는 경우 와 혼잡 윈도우 크기를 큐잉 지연시간에 따라 조금 낮춘 후 빠르게 혼잡 윈도우 크기를 곡선으로 증가시킨다. 이때 증가하는 정도는
이고 감소하는 정도는 이며 갱신은 패킷이 손실 되는 경우 큐잉 지연시간을 이용하여 줄26~39와 같 이 이루어진다.
이러한 특징으로 인해 LTE 기반 모바일 DaaS 환경에서 패킷 손실이 일어난다면 다음 그림 9처럼 혼잡 윈도우 크기가 ( )배만큼 낮아지고 곡선 형 태로 만큼 빠르게 증가시킨다. 실험 환경은 대역폭 이 40Mbps이고 지연 시간이 50ms, 손실률 을 가진 환경이다. 이 그림은 Iperf를 통해 60초 동안 송신 데이터에 대한 혼잡 윈도우 크기와 의 변화 추이를 나타낸 그래프이다. 30초에서 40초 사 이의 변화는 C-AIMD 형상을 잘 나타내며 y축 범위 가 0에서 400인 점을 감안하면 다른 TCP보다 빠르 게 혼잡 윈도우 크기를 증가시켰다. 그림 10인 TCP Westwood+와 그림 11의 TCP CUBIC의 y축은 최 대 200으로 두 배 차이가 난다.
Algorithm 2의 TCP Westwood+는 ACK 패킷
그림 9. TCP Illinois 혼잡 윈도우 크기변화 Fig. 9 cwnd Dynamics in TCP Illinois
그림 10. TCP Westwood+ 혼잡 윈도우 크기변화 Fig. 10 cwnd Dynamics in TCP Westwood+
그림 11. TCP CUBIC 혼잡 윈도우 크기변화 Fig. 11 cwnd Dynamics in TCP CUBIC
1: On each ACK:
2:
←
3: Packet loss:
4: ← _
5: if then ←
6: Timeout:
7: ← _
8: ←
알고리듬 2. Linux TCP Westwood+ 알고리듬 Algorithm 2. Linux TCP Westwood+ Algorithm
으로 추측한 실제 데이터의 전송 속도()를 바탕으로 다음 전송에 사용 가능한 대역폭을 예측하여 혼잡 윈도우 크기를 조절한다[21]. 줄1~2와 같이 사용 가능 대역폭을 예측하는 식에서 는 사용 가능한
예측 대역폭 값이고 는 ACK 패킷으로 실제 데이터 를 전송한 속도이다. 또한 는 일반적으로 이전까지 사용 가능한 대역폭의 예측 값을 90% 반영하기 위 해서 0.9를 사용한다. TCP Illinois에서 평균 RTT를 사용하는 것처럼 TCP Westwood+도 사용 가능한 대역폭의 평균 예측 값을 구하여 변동이 큰 LTE 기 반 모바일 DaaS 환경에서 강세를 보인다. 하지만 혼 잡 윈도우 크기가 낮아진 경우 줄1~5와 같이 AIAD (Addictive Increase Adaptive Decrease) 패러다임 을 이용하기 때문에 패킷 손실이 발생한 후라면 그 림 10처럼 소극적인 증가를 보인다.
다음은 TCP CUBIC에서 혼잡 윈도우 크기를 증가시키는 cubic function이다[29] :
식 (1), (2)의 cubic function에서 는 최근
1: Initialization:
2: ← ← _
3: On each ACK:
4: if then ←
5: else ←
6: if then ← 7: else _
8: Packet loss:
9:
10:
if and _
then ←
11: else ←
12: ← ←
13: Timeout:
14: _
15: _ : 16:
17:
if then ←
or _ ←
18:
19: else ←
_ ←
20:
21:
← __ _
← or _
22: _ :
23: ← ← ← _ ← 알고리듬 3. Linux TCP CUBIC 알고리듬 Algorithm 3. Linux TCP CUBIC Algorithm
에 일어난 패킷 손실 직전에 혼잡 윈도우 크기를 의 미하고 는 최근에 일어난 패킷 손실로부터 흐른 시 간을 의미한다. 는 미리 정해져 있는 상수로 Linux 에서 기본 값으로 0.4로 설정되어 있으며, 는 Fast Recovery에서 multiplicative decrease의 계수로 0.2로 설정되어 있다. 삼차원 식이기 때문에
에 가까워질수록 혼잡 윈도우 크기는 작게 증가하고
이상이 되는 경우는 혼잡이 없는 상태로 판단 하여 증가 가속도가 올라가면서 증가한다.
Algorithm 3에서 TCP CUBIC의 주요 특징은 패킷 손실이 발생한 후 다음 ACK가 도착하는 경우 줄3~7과 같이 수행한다. 그런 다음 줄15~21과 같 이 패킷 손실이 발생한 때로부터 흐른 시간()을 고 려하여 혼잡 윈도우 크기를 조절한다. 낮은 손실률과 높은 RTT를 가진 환경에서 혼잡 윈도우 크기가 감 소될 때 줄8~12와 같이 는 실제 사용 가능한 대역폭과 가까운 값을 가지고 가 낮기 때문에 패킷 손실에 빠르게 대처한다. 하지만 높은 손실률을 가진 환경에서는 반복적인 패킷 손실로 가 지속적으 로 작은 값을 가지게 되면서 혼잡 윈도우 크기의 증 가가 어렵다는 단점이 있다. 이는 그림 11과 같이 대 역폭을 크게 활용하지 못하는 추세를 보이며 TCP Westwood+보다는 절반의 성능을 보이고 TCP
Illinois보다는 대략 4배나 낮았다.
2.3 TCP Illinois, Westwood+, CUBIC 실시간 처리율 다음 그림 12는 TCP Illinois, Westwood+, CUBIC을 손실률과 지연 시간이 높은 환경에서 Iperf로 600초간 실시간으로 처리율을 나타낸 그래 프이다. 빈번하게 패킷 손실이 발생하는 경우 전반적 으로 처리율이 급격하게 떨어졌으나 TCP Illinois는 (b), (d)와 같이 빠른 속도로 다시 높은 처리율을 기 록하였다. TCP Westwood+는 손실률이 높아지자 (b), (d)와 같이 낮은 처리율을 기록하며 손실률에 민 감한 모습을 보였다. 하지만 낮은 손실률을 가진 (a), (c) 에서는 지연 시간이 길어져도 TCP Illinois의 최 소 처리율과는 비슷하였다. 그러나 (c)에서 처리율의 증가 속도가 느려서 평균적으로 낮은 성능을 보여주 었다. 따라서 TCP Westwood+는 높은 손실률과 긴 지연 시간을 가지는 LTE 기반 모바일 DaaS 환경에 서는 주어진 대역폭을 사용하기에는 비효율적이다.
TCP CUBIC은 (b), (d)처럼 손실률이 높을 때 낮은 평균 처리율을 보이며 증가하는 폭도 낮았다.
이는 cubic function이 빈번한 패킷 손실에 크게 영 향을 받기 때문이다. 반대로 (a), (c)에서는 손실률이 낮기 때문에 혼잡 제어 기능이 정상적으로 수행되어 처리율이 증가되는 양상을 확인할 수 있었다. 그러나
그림 12. TCP CUBIC, TCP Illinois, TCP Westwood+의 처리율 변화 Fig. 12 Trends of Throughput over TCP CUBIC, TCP Illinois, TCP Westwood+
TCP Westwood+와 TCP Illinois에 비해 지연 시간 이 상승하는 경우 평균 처리율이 크게 낮아 현저히 낮은 성능을 보여 좋은 성능을 기대하기 어려웠다.
Ⅳ. 결 론
본 논문의 실험 결과에서 TCP Illinois는 지연 시간과 손실률에 크게 영향을 받지 않고 좋은 처리 율 기록하였으며, 주어진 대역폭을 다른 TCP보다 효율적으로 활용하였다. TCP Westwood+는 지연 시간에 크게 영향을 받지 않았으나 손실률에는 영 향을 받아 TCP Illinois보다 처리율이 낮았으며, TCP CUBIC은 손실률이 높은 환경에서 전체 순위 중에 하위권을 기록하여 LTE 기반 모바일 DaaS 환경에서 높은 처리율을 보장하지 못 하였다.
이처럼 LTE 기반 모바일 DaaS 환경에서 비디 오 스트리밍을 받는 경우 QoS를 보장하기 위해서 는 지연 시간과 손실률 두 요소를 고려해야 하며, 기존의 유선 네트워크에서 사용하던 TCP Reno나 TCP CUBIC으로는 성능을 보장하지 못한다. 지연 시간 혹은 손실률을 고려하는 TCP 혼잡 제어 알고 리즘이 다수 존재하지만 두 요소를 동시에 고려해 야 하므로 기존의 사용하던 경우에 따라서는 TCP 혼잡 제어 알고리즘을 변경할 필요가 있다. 따라서 본 논문에서는 Linux TCP의 성능을 측정하였고 혼잡 제어 기능의 동작 과정을 분석한 결과를 바탕 으로 TCP Illinois가 LTE 기반 모바일 DaaS 환경 에 적합하다고 제안하는 바이다.
나아가 LTE 기반 모바일 DaaS 환경에서 사용 자의 만족도를 위해 QoE(Quality of experience) 를 고려하는 방향도 존재한다. 최근 통계에 따르면 모바일 어플리케이션 트래픽이 폭발적으로 증가하 는 추세이며, 특히 모바일 트래픽 중에서도 비디오 스트리밍 트래픽이 대다수 차지하고 있다. 기존의 프로그레시브 스트리밍 방식은 네트워크 자원을 비 효율적으로 사용해 혼잡을 일으켜 QoE를 악화시키 므로 이를 해결하기 위해 다양한 rate control 기 법들이 등장하였다. 더불어 rate control 기법이 부 재한 비디오 스트리밍인 경우 Dynamic Adaptive Streaming over HTTP(DASH)기법과 같은 적응형 스트리밍 방법도 존재한다[4].
따라서 향후 rate control 기법이 부재하는 모 바일 클라우드 환경에서 클라우드 서버와 사용자간 의 네트워크 상태를 고려하는 DASH 알고리즘을 고안하여 QoE를 보장하기 위한 연구를 진행하려고
한다.
References
[1] S. Cristofaro, F. Bertini, D. Lamanna, R.
Baldoni, “Virtual distro dispatcher: a light-weight desktop-as-a-Service solution,”
Proceedings of Cloud Computing Conference, pp. 247-260, 2009.
[2] R.S. Chang, J. Gao, V. Gruhn, J. He, G.
Roussos, W.T. Tsai, “Mobile cloud computing research – Issues, challenges, and needs,”
Proceedings of IEEE 7th International Symposium on Service Oriented System Engineering, pp. 442-453, 2013.
[3] H.C. Yi, S.Y. Kim, J.Y. Choi, “Analysis of TCP performance in LTE wireless network,”
Journal of KIIT, Vol. 11, No. 5, pp. 97-104, 2013 (in Korean).
[4] S. Lederer, C. Müller, C. Timmerer, “Dynamic adaptive streaming over HTTP dataset,”
Proceedings of The 3rd Multimedia Systems Conference, pp. 89-94, 2012.
[5] A.R. Khan, M. Othman, S.A. Madani, S.U.
Khan, “A survey of mobile cloud computing application models,” IEEE Communications Surveys & Tutorials, Vol. 16, No. 1, pp.
393-413, 2014.
[6] R. Sharma, S. Kumar, M.C. Trivedi, “Mobile cloud computing: A needed shift from cloud to mobile cloud,” Proceedings of The 5th International Conference on Computational Intelligence and Communication Networks, pp.
536-539, 2013.
[7] D. Dev, K.L. Baishnab, “A review and research towards mobile cloud computing,”
Proceedings of The 2nd IEEE International Conference on Mobile Cloud Computing, Services, and Engineering, pp. 252-256, 2014.
[8] F. Lefevre, G. Vivier, “Understanding TCP’s behavior over wireless links,” Proceedings of Symposium on Communications and Vehicular Technology, pp. 123-130, 2000.
[9] M.F.M. Fuzi, R.S. Hamid, M.A. Ahmad,
“Virtual desktop environment on cloud
computing platform,” Proceedings of IEEE 5th Control and System Graduate Research Colloquium, pp. 80-84, 2014.
[10] A. Afanasyev, N. Tilley, P. Reiher, L.
Kleinrock, “Host-to-host congestion control for tcp,” IEEE Communications Surveys &
Tutorials, Vol. 12, No. 3, pp. 304-342, 2010.
[11] C. Callegari, S. Giordano, M. Pagano, T.
Pepe, “Behavior analysis of TCP Linux variants,” Proceedings of International Symposium on Performance Evaluation of Computer and Telecommunication Systems, pp. 218-225, 2010.
[12] D. Adami, C. Callegari, S. Giordano, M.
Pagano, T. Pepe, “A behavioral study of TCP Linux variants over satellite networks,”
Proceedings of IEEE/IPSJ 11th International Symposium on Applications and the Internet, pp. 474-479, 2011.
[13] Y. Wu, S. Kumar, S.J. Park, “On transport protocol performance measurement over 10Gbps high speed optical networks,”
Proceedings of The 18th International Conference on Computer Communications and Networks, pp. 1-6, 2009.
[14] R. Alvarez-Horine, M. Moh, “Experimental evaluation of Linux TCP for adaptive video streaming over the cloud,” Proceedings of IEEE Globecom Workshops, pp. 747-752, 2012.
[15] N.U. Kim, S.M. Jung, T.M. Chung, “A remote control architecture for thin-client in mobile cloud computing,” Proceedings of International Conference on Information Science and Applications, pp. 1-2, 2013.
[16] S. Hemminger, “Network emulation with NetEm,” Proceedings of Linux Conference, 2005.
[17] https://iperf.fr/
[18] S. Liu, T. Basar, R. Srikant, “TCP-illinois: a loss and delay-based congestion control algorithm for high-speed networks,”
Proceedings of The 1st International Conference on Performance Evaluation Methodologies and Tools, pp. 417-440, 2006.
[19] L. Xu, K. Harfoush, I. Rhee, “Binary
increase congestion (BIC) control for fast long-distance networks,” Proceedings of The 23rd Annual Joint Conference of the IEEE Computer and Communications Societies, pp.
2514-2524, 2004.
[20] A. Baiocchi, A. Castellani, F. Vacirca,
“YeAH-TCP: Yet another highspeed TCP,”
Proceedings of The 5th International Workshop on Protocols for FAST Long-Distance Networks, pp. 37-42, 2007.
[21] L.A. Grieco, S. Mascolo, “Performance evaluation and comparison of Westwood+, New Reno and Vegas TCP congestion control,” ACM Computer Communication Review, Vol. 34, No. 2, pp. 25-38, 2004.
[22] V. Jacobson, “Congestion avoidance and control,” Proceedings of ACM Computer Communication Review, Vol. 18, No. 4, pp.
314-329, 1988.
[23] A. Kuzmanovic, E.W. Knightly, “TCP-LP: A distributed algorithm for low priority data transfer,” Proceedings of IEEE 22nd Annual Joint Conference of the IEEE Computer and Communications, pp. 1691-1701, 2003.
[24] https://www.ietf.org/rfc/rfc3649.txt
[25] R.N. Shorten, D.J. Leith, “H-TCP: TCP for high-speed and long distance networks,”
Proceedings of The 5th International Workshop on Protocols for FAST Long-Distance Networks, pp. 95-101, 2004.
[26] C. Caini, R. Firrincieli, “TCP-Hybla: A TCP enhancement for heterogeneous networks,”
International Journal of Satellite Communications and Networking, Vol. 22, No. 5, pp. 547-566, 2004.
[27] L.S. Brakmo, S.W. O’Malley, L.L. Peterson,
“TCP Vegas: New techniques for congestion detection and avoidance,” ACM Computer Communication Review, Vol. 24, No. 4, pp.
24-35, 1994.
[28] C. Fu, S. Liew, “TCP Veno: TCP enhancement for transmission over wireless access networks,” IEEE Journal on Selected Areas in Communications, Vol. 21, No. 2, pp.
216-228, 2003.
[29] S. Ha, I. Rhee, L. Xu, “CUBIC: A new
TCP-friendly high-speed TCP variant,”
ACM SIGOPS Operating Systems Review, Vol. 42, No. 5, pp. 64-74, 2008.
Chaemin Seong (성 채 민)
She received her B.S.
degree in School of Computer Science and
Engineering from
Kyungpook National University, Daegu, Korea, in 2014. She is currently working toward M.S. degree in School of Computer Science and Engineering, Kyungpook National University. Her research interests in- clude mobile cloud computing and multi- media streaming.
Email: [email protected]
Seongjun Hong (홍 성 준)
He is currently working toward B.S. degree in School of Computer
Science and
Engineering, Kyungpook National University. His research interests in- clude mobile cloud computing.
Email: [email protected]
Kyungshik Lim (임 경 식)
He received his M.S.
degree in Computer Science from the Korea Advanced Institute of Science and Technology, Seoul, Korea, in 1985 and his Ph.D. degree in Computer and Information Sciences from the University of Florida, Gainesville, FL, in 1994. From 1985 to 1998, he had been a principal member of the research staff and the head of the Computer Communications Section of the Electronics and Telecommunications Research Institute, Daejon, Korea. Since March 1998, he has been a faculty member of the School of Computer Science and Engineering in the Kyungpook National University, Daegu, Korea. His research interests include mobile computer communications and computing, wireless networks, and mo- bile cloud computing.
Email: [email protected]
Dae Won Kim (김 대 원)
He received his Ph.D.
degree from Kyungpook National University, Korea, in 2004. He has been a principal member of the research staff in
Electronics and
Telecommunications Research Institute, Daejon, Korea. His research interests include cloud computing, VDI, and digital signal processing.
Email: [email protected]
Seongwoon Kim (김 성 운)
He received the B.S.
degree from Pukyong Natinal University, Korea, the M.S. degree from Chungnam National University, Korea in
1987 and 1998
respectively. He received his Ph.D. de- gree from Chungnam National University, Korea in 2006. He has been a principal member of the research staff in Electronics and Telecommunications Research Institute, Daejon, Korea. His research interests include computer structure, SoC, green computing, and cloud computing.
Email: [email protected]