페이로드시그니쳐기반인터넷트래픽분류 박준상, 윤성호, 안현민, 김명섭고려대학교컴퓨터정보학과 {junsang_park, sungho_yoon, queen26, tmskim}korea.ac.kr 요 약 응용레벨트래픽분류는안정적인네트워크운영과자원관리를위해서필수적으로요구된다. 트래픽분류방법에있어서페이로드시그니쳐기반트래픽분류는패킷헤더기반, 통계기반분석등의다양한분류방법의평가기준으로활용될만큼높은분류정확도와분석률을보장하고있는방법이다. 하지만네트워크고속화, 응용프로그램의다양성으로인해분류정확도, 처리속도가감소되고있다. 이러한문제점을해결하기위해서페이로드시그니쳐모델, 입력데이터최적화모듈, 패턴매칭모듈등의분류시스템의세부구성모듈에대한부분적인성능향상을위한다양한연구가수행되고있다. 하지만분류시스템의성능향상을위해서는응용의분류기준정의와각응용프로토콜의특징을고려한시그니쳐모델정의가선행된후에분류기준및시그니쳐모델에최적화된세부모듈구성요구된다. 본논문에서는응용의분류기준, 페이로드시그니쳐모델, 입력데이터필터, 패턴매칭측면에서최근의연구동향을조사하고, 페이로드시그니쳐기반분류시스템의분류정확도와처리속도향상을위한최적의분류시스템의구조를제안한다. 1. 서론 1 네트워크의고속화와더불어다양한서비스와응용프로그램이개발됨에따라개인또는기업은인터넷으로대표되는네트워크에대한의존이상당히커져가고있다. 이와같은현실속에서네트워크의효율적운용과관리를위한응용레벨의트래픽의모니터링과분석은네트워크사용현황파악과확장계획수립등의다양한분야에서필요성이증가하였다. 예를들어종량제과금, CRM, SLA, 보안분석등트래픽모니터링및분석에대한필요성은지금뿐만아니라앞으로더욱더크게증가할것이다. 응용레벨트래픽분류방법에있어페이로드시그니쳐기반분석방법은헤더정보기반, 통계기반분류방법론에비해상대적으로높은분류정확성과분석률을보장할있는방법이다 [1-4]. 하지만네트워크링크의고속화, 응용프로그램을구성하는프로토콜의복잡성, 응용프로그램다양성으로인해처리속도및분류정확도가감소되고있다. 이러한문제를해결하기위해서분류시스템을구성하는세부모듈의부분적인성능개선안들이제안되고 이논문은 2012 년정부 ( 교육과학기술부 ) 의재원으로한국연구재단 (2012R1A1A2007483) 및 2013 년도정부 ( 미래창조과학부 ) 의재원으로한국연구재단 - 차세대정보. 컴퓨팅기술개발사업 (2010-0020728) 의지원을받아수행된연구임. 있다 [5-7]. 하지만분류시스템의세부모듈은트래픽의분류기준과분류대상트래픽의특징에따라다른구성이요구된다. 예를들어, HTTP 트래픽을응용레벨프로토콜기준으로분석하기위해서는정규표현식보다는 HTTP 프로토콜의요청 method(e.g. GET, POST, HEAD ) 를단순한스트링형태의시그니쳐로구성하여매칭하는방법이처리속도와메모리사용측면에서효과적이다. 반면에 HTTP 트래픽을세부서비스단위로분석하기위해서는시그니쳐가나타나는 HTTP 프로토콜의주요필드 (e.g. URI, Host, User-agent) 에서시그니쳐를추출하고, 필드단위매칭을수행하면분류정확도와처리속도를향상시킬수있다 [8]. 하지만기존의연구에서는트래픽의분류기준, 분석대상응용의프로토콜특징을고려하지않고, 분석대상링크에서발생하는모든트래픽을동일한분석구조를통해분석하기때문에분류속도, 분류정확도가감소되고있다. 본논문에서는최근페이로드시그니쳐기반분석방법의성능향상에관한다양한연구를분류기준, 시그니쳐모델, 입력데이터필터, 매칭알고리즘관점에서조사하고, 분류시스템구현을위한요구사항을도출한다. 도출된요구사항을기반으로분류정확도, 처리속도에최적화된분석시스템의구조를제안한다. 본장의서론에이어, 2 장에서는페이로드시그니쳐기반분석방법의범위와성능향상을위한 10
기존의연구를조사하고요구사항을도출한다. 3 장에서는요구사항을기반으로분류시스템의구조를제안한다. 마지막으로 4 장에서는결론및향후연구에대해기술한다. 2. 페이로드시그니쳐기반분석방법 시그니쳐기반분석방법은전통적으로보안, 응용트래픽분류등의다양한분야에서활용되어왔다. 시그니쳐기반분석방법은패킷또는플로우의특정위치에서응용을식별하기위한고유한정보를추출하여이를기반으로분류하는방법이다. 시그니쳐의추출위치와가공방법에따라 Header[9], Payload[3], Statistic[10], Behavior 시그니쳐 [11] 로구분할수있다. 본논문에서는페이로드시그니쳐기반응용레벨트래픽분류방법으로조사범위를제안한다. Figure 1. Inspection range 그림 1 은페이로드시그니쳐기반트래픽분류방법의탐색범위를정의하고있다. 본논문에서는 Transport 이후의데이터를페이로드로구분한다. 페이로드시그니쳐기반분석방법은 IP, Transport, 페이로드의조합으로응용트래픽분류하는것으로정의한다. IP 와 Port 를이용한트래픽분류방법이 CDN, 다이나믹포트사용으로인해분류정확도가감소하였지만 [12] 에의하면 30%-70% 이상의트래픽을정확하게분석할수있는방법으로조사되었다. 또한 IP, Port, 페이로드시그니쳐의조합으로시그니쳐를구성함으로써분류정확도를향상시킬수있으며, 페이로드시그니쳐의탐색공간을줄여서분류속도를향상시킬수있다. 2.1 페이로드시그니쳐기반분석모듈페이로드시그니쳐기반분류시스템은트래픽과페이로드시그니쳐를입력으로받아서입력데이터필터모듈을통해시그니쳐및패킷데이터의탐색공간을최소화하는과정을거친후패턴매칭을통해분류결과를도출한다. 그림 2 는페이로드시그니쳐기반분석시스템의입 / 출력데이터와주요모듈을나타내고있다. Figure 2. Diagram of payload signature-based classifier 트래픽은패킷또는패킷의집합인플로우로구성되며, 분류결과또한이와같은단위로도출된다. 시그니쳐는패킷또는스트림단위로추출되며패킷단위에서추출된시그니쳐는패킷단위로매칭을수행하며, 스트림단위로추출된시그니쳐는패킷의페이로드를재조합하여스트림으로구성한후트래픽을분석하게된다. 시그니쳐및페이로드필터는패턴매칭의부하를최소화하기위해서패턴매칭과정에서불필요한데이터를제거하는역할을수행한다. 패턴매칭모듈은패턴매칭알고리즘을적용하여페이로드와시그니쳐의매칭여부를결정한다. 패턴매칭결과는시그니쳐에정의된분류기준에따라분석결과로저장된다. 2.2 분류기준기존의페이로드시그니쳐기반트래픽분류방법은 QoS, SLA 등과같은분류결과의활용방안을고려하지않고, 시그니쳐구성에의존적으로분류기준을정의하고트래픽을분류하고있다. 표 1 은기존의페이로드시그니쳐기반트래픽분류방법에서사용하고있는분류기준을보여주고있다. Table I. Classification criteria Type Classes Ref. Applicat afreeca, rainbow, alsong, nateon, ion gomplayer, donkeyp2p [1] Protocol Web(HTTP, HTTPS), FTP, BT, SSH, SMTP [13] Functio Bittorrent(Downloading, DHT n management, Tracker access) [14] Service google, naver, daum, yahoo [8] Traffic Interactive, Game, Bulk, Multimedia, Mail, type Web, P2P, Conferencing [4] Mixture HTTP, BitTorrent, SMTP, MSN, Kugoo, SSL, Gnutella [15] 표 1 과같이기존의페이로드시그니쳐기반분석방법은통일된기준없이시그니쳐구성에따른분류결과를제시하고있다. 이와같은분류결과는 QoS 나방화벽에모호한정책으로반영됨에따라효과적인네트워크자원관리가불가하다. 따라서네트워크관리정책을반영할수있는구체적인분류기준을확립하고이를기반으로트래픽을분류할수있는방안이요구된다. 2.3 시그니쳐모델페이로드시그니쳐는기술방법에따라 Fieldbased simple string, simple string, regular expression 으로구분할수있다. 표 2 는 BitTorrent 의페이로드시그니쳐를시그니쳐의기술방법에따라구분한결과를나타내고있다. Table II. Signature example for each type Model Example Ref. Field-based User-Agent : BTWebClient, simple string Domain : utorrent, Host : update [8] Simple string \x13bittorrent protocol [16] regular expression ^\x13bittorrent protocol.* [21] 11
기존의페이로드시그니쳐기반분석방법은동일한시그니쳐에대해서로다른형태의시그니쳐기술방법을사용하고있다. 이는프로토콜의특징과분석시스템의성능을고려하지않고, 시그니쳐모델을정의하였기때문이다. 프로토콜의특징을고려한시그니쳐기술방법이요구된다. HTTP 와같은프로토콜은 HTTP 의특정필드에서시그니쳐가추출된다. 이와같은트래픽은필드단위로시그니쳐를추출하고매칭하는것이분류정확도를향상시킬수있을뿐만아니라필드단위매칭을통해분류시스템의처리속도를향상시킬수있다. 정확도에영향을미치지않는다면 regular expression 보다는 simple string 형태의기술방법이분류시스템의부하를줄일수있다. 동일한페이로드시그니쳐를 regular expression 또는 simple string 형태로기술할수있다. 시그니쳐의기술방법은패턴매칭알고리즘을결정하기때문에분류시스템의처리속도에영향을미치게된다. Regular expression 은 simple string 형태의기술방법보다폭넓은표현력을갖는다. 하지만모든시그니쳐를 regular expression 형태로기술하는것은 automata 에기반한패턴매칭을수행하기때문에계산복잡도와메모리사용량측면에서 simple string 보다많은부하를요구하게된다. 2.4 입력데이터필터및패턴매칭알고리즘대용량의트래픽과많은양의시그니쳐는분류시스템의처리속도와메모리사용량을증가시키기때문에입력데이터를최소화할수있는방법과시그니쳐형태에적합한분류알고리즘이요구된다. 방법으로 Field-based filter 가있다. [8] 에서는 HTTP 트래픽을응용프로그램, 서비스, 기능으로분류하기위해서 HTTP 프로토콜의필드를 Domain, Host, URI 로구분하여각필드의시그니쳐를자동으로추출하여 Hash 기반으로분석하는방법론을제안하였다. Hash 를이용하여시그니쳐를필터링하여시그니쳐의탐색공간을줄이고, 페이로드를필드단위로매칭하기때문에전체페이로드를검사하는부하를줄일수있었다. 하지만해시키의비교를위해서는시그니쳐의추출시점에서시그니쳐추출방법과분류시점에서페이로드에서필드를추출하는방법이동일해야적용이가능한방법이다. [1] 은패킷의페이로드데이터에서응용트래픽분류를위한시그니쳐가매칭되는 offset 은프로우의첫 5 번째패킷이며, 패킷페이로드의 1,000Byte 이하임을증명하였다. 또한 Snort 에서는패킷의페이로드내에서시그니쳐가나타나는범위를제한하기위해서 offset, depth, within 과같은옵션을제공하고있다 [22]. 이와같이패킷의페이로드내에서시그니쳐의존재유무를검사하는범위를 offset 을기준으로제한함으로써분류시스템의처리속도를향상시킬수있다. 패턴매칭알고리즘은 Single string matching 과 Multiple string matching 알고리즘으로구분된다. Single string matching 은연속된문자열로구성된단일스트링을페이로드와 1:1 로매칭하여성공또는실패의결과를반환한다. 대표적인알고리즘으로 KMP(Knuth Morris Pratt), BM(Boyer Moore) 이사용된다 [17]. Multiple string matching 알고리즘은그결과값을수락또는실패로제공하는알고리즘과여러개의서비스 ID 를제공할수있는알고리즘으로구분할수있다. DFA 와 NFA 는수락또는실패로결과를제공하기때문에동일한분류 ID 를갖는시그니쳐들에대해서만하나의오토마타로구성할수있다 [18]. 반면에 Aho-Corasick 은복수개의서비스의시그니쳐를단일트리로구성하고한번의트리탐색으로각분류 ID 값을반환한다 [17]. 스트링매칭알고리즘의시간 / 공간복잡도를최소화하기위한다양한연구가수행되고있다 [18, 19]. 하지만모든시그니쳐에대해최적의성능을보장할수없으며시그니쳐구성에의존적인결과로나타난다. 따라서시그니쳐의기술방법에적합한매칭알고리즘을적용해야한다. 3. 제안하는분류방법론 Figure 3. input data filter and pattern matching algorithm 시그니쳐의탐색공간을최소화할수있는방법은 Hash-based filter, Offset-based filter 으로구분할수있다. 또한트래픽의탐색공간을최소화할수있는 본장에서는 2 장에서기술한분석시스템설계시요구사항을기반으로제안하는페이로드시그니쳐기반분석시스템의구현방안을제안한다. 그림 4 는본논문에서제안하는분류시스템의구성도를보여주고있다. 12
Figure 4. Diagram of payload signature-based classification system 페이로드시그니쳐기반분류시스템을구성하기위해서는분류기준을정의하는것이우선이되어야한다. 본논문에서는프로토콜, 서비스, 응용프로그램, 기능의 4 차원의분류기준을제안한다. 4 차원의분류기준은 1 개의플로우를 4 가지관점으로분류함으로써 QoS, SLA, 방화벽과같은분류결과를활용하는단계에서유연성을제공할수있다. 분류기준이정의되면분석대상응용의트래픽의특성을분석하여시그니쳐모델을정의해야한다. 본논문에서는 Field-based simple string, Simple string, Regular expression 3 가지페이로드시그니쳐모델으로구분한다. 각응용레벨프로토콜의특징을고려하여시그니쳐모델을선정한다. 표 3 은각시그니쳐모델에적합한특징을갖는응용과해당응용의시그니쳐를보여주고있다. Table III. Signature example for each type Model Example App. Field-based simple string Simple string regular expression User-agent : Mozilla; Host : www; Domain : youtube; Uri : login content : NCPT; depth : 4; RE : ^(\x01.?.?.?.?.?.?.?.?\x01 \x02.?.?.?.?.?.?.?.?\x02 \xff.?.?.?.?.?.?.?.?\x0ff) youtube nateon skype youtube 와같이 HTTP 를이용하여트래픽을발생하는응용은 Field-based simple string 형태의시그니쳐기술방법이적합하다. nateon 과같은응용은페이로드의특정위치에서나타나는연속된문자를시그니쳐로사용하는 Simple string 형태로기술한다. skype 는시그니쳐가고정된문자로나타나지않고, 특정범위내의문자가랜덤하게발생하기때문에 regular expression 형태의기술방법이적합하다. Input data filter 는시그니쳐와페이로드의탐색범위를최소화할수있는모듈이다. Hash-based signature filter, Field-based payload filter, Offset-based payload filter 로구성된다. 각모듈은시그니쳐모델과시그니쳐자동추출여부에따라서결정된다. 시그니쳐를특정응용의프로토콜의필드에서자동으로추출할수있다면 Hash-based signature filter 에적용한다. 하지만시그니쳐추출과정에서관리자의개입이요구되면시그니쳐와페이로드에서동일한문자열을추출할수없기때문에 field-based payload filter 를적용한다. 프로토콜의특정필드단위로구성된시그니쳐가아닌경우에는 offset-based payload filter 가적용된다. 패턴매칭알고리즘은 Single string, Multiple string, Regular expression matching 으로구성된다. Single string matching 알고리즘은 Hash-based signature filter 에의해서매칭된결과를검증하기위한목적으로패턴매칭을수행한다. 또한 Field-based payload filter 에의해서추출된필드를매칭하기위해적용된다. Multiple string matching 알고리즘은 Simple string 형태로기술된복수개의시그니쳐를단일트리로구성하고트리에대한한번의탐색으로시그니쳐의탐색공간을줄일수있는패턴매칭알고리즘으로 Aho-Corasic 을사용한다. Regular expression 형태로기술된시그니쳐는 Automata 를이용하여패턴매칭을수행한다. 페이로드시그니쳐기반분석시스템의분류정확성, 처리속도를향상시키기위해서는분석시스템의세부모듈의부분적인성능향상과함께분류기준과시그니쳐모델에적합한분석시스템구조를설계해야한다. 4. 결론및향후과제 본논문에서는응용레벨트래픽분류분야의페이로드시그니쳐기반분류방법의성능향상을위한기존의연구를분류기준, 시그니쳐모델, 입력데이터최소화방법, 패턴매칭알고리즘측면에서조사하였다. 조사결과를바탕으로분류정확도, 처리속도향상을위한분류시스템의요구사항을도출하였다. 이를기반으로분류결과의활용도, 분류정확도, 처리속도향상을위한페이로드시그니쳐기반분류시스템의구조를제안하였다. 본논문에서는범용컴퓨터환경에서소프트웨어적으로접근할수있는성능향상기법을제안하였다. 최근 GPU, FPGA 와같은하드웨어를기반으로분류시스템의성능을향상시킬수있는방법이제시되고있는데, 본논문에서제안하는소프트웨어적인성능향상기법을하드웨어와접목하여성능을극대화할수있는방안에대한연구를수행할계획이다. 참고문헌 13
[1] J. S. Park, S. H. Yoon, M. S. Kim, Software Architecture for a Lightweight Payload Signature-based Traffic Classification System, Proc. Traffic Monitoring and Analysis Workshop, Vienna, Austria, pp. 136-149, Apr. 2011. [2] A. Dainotti, A. Pescape, K. Claffy, Issues and future directions in traffic classification, IEEE Network: The Magazine of Global Internetworking, Vol. 26, No. 1, pp. 35-40, Jan. 2012. [3] R. Antonello, S. Fernandes, D. Sadok, J. Kelner, Characterizing Signature Sets for Testing DPI Systems, Proc. IEEE GLOBECOM Management of Emerging Networks and Services Workshop, Houston, TX, USA, pp. 678-683, Dec. 2011. [4] Aceto, G.., Dainotti, A., de Donato, W., Pescape, A., PortLoad: taking the best of two worlds in traffic classification, Proc. IEEE INFOCOM Conference on Computer Communications Workshops, San Diego, CA, USA, pp. 1-5, Mar. 2010. [5] Huang, N. F., Jai, G. Y., Chao, H. C., Tzang, Y. J., Chang, H. Y., Application traffic classification at the early stage by characterizing application rounds, Information Sciences, Vol. 232, pp. 130-142, May 2013. [6] T. Ban, S. Guo, M. Eto, D. Inoue, K. Nakao, Towards Cost- Effective P2P Traffic Classification in Cloud Environment, IEICE Transactions on Information and Systems, Vol. E95-D, No. 12, pp. 2888-2897, Dec. 2012. [7] Khalife, J. M., Hajjar, A., Díaz-Verdejo, J., Performance of OpenDPI in Identifying Sampled Network Traffic, Journal of Networks, Vol. 8, No. 1, pp. 71-81, Jan. 2013. [8] Ji-Hyeok Choi, Myung-Sup Kim, "Processing Speed Improvement of Traffic Classification based on Payload Signature Hierarchy," Proc. of the Asia-Pacific Network Operations and Management Symposium (APNOMS) 2013, Hiroshima, Japan, Sep. 25-27, 2013. [9] Sung-Ho Yoon, Jun-Sang Park, and Myung-Sup Kim, "Signature Maintenance for Internet Application Traffic Identification using Header Signatures," Proc. of the 4th IEEE/IFIP International Workshop of the Management of the Future Internet (ManFI 2012), Hwaii, USA, Apr. 16, 2012. [10] Y. Jin, N. Duffield, J. Erman, P. Haffner, S. Sen, and Z.-L. Zhang, A modular machine learning system for flow-level traffic classification in large networks, ACM Transactions on Knowledge Discovery from Data, vol. 6, no. 1, pp. 1-34, March, 2012. [11] Sung-Ho Yoon, Myung-Sup Kim, "Behavior Signature for Big Data Traffic Identification," Proc. of the International Conference on Big Data and Smart Computing (BigComp) 2014, Bangkok, Thailand, Jan. 15-17, 2014, pp. 261-266. [12] A. Moore and K. Papagiannaki, Toward the Accurate Identification of Network Applications, in Passive and Active Network Measurement, ser. Lecture Notes in Computer Science, C. Dovrolis, Ed. Springer Berlin Heidelberg, 2005, vol. 3431, pp. 41 54. [13]YANG, Baohua, et al. SMILER: towards practical online traffic classification. In:Proceedings of the 2011 ACM/IEEE Seventh Symposium on Architectures for Networking and Communications Systems. IEEE Computer Society, 2011. pp. 178-188. [14] PARK, Byungchul; HONG, JW-K.; WON, Young J. Toward fine-grained traffic classification. Communications Magazine, IEEE, 2011, Vol. 49, No.7, pp. 104-111. [15] LIU, Tingwen, et al. Improving matching performance of DPI traffic classifier. In:Proceedings of the 2011 ACM Symposium on Applied Computing. ACM, 2011. pp. 514-519. [16] MU, Cheng, et al. Automatic traffic signature extraction based on fixed bit offset algorithm for traffic classification. The Journal of China Universities of Posts and Telecommunications, 2011, Vol. 18, pp. 79-85. [17] CHAUDHARY, Ajay; SARDANA, Anjali. Software based implementation methodologies for deep packet inspection. In: Information Science and Applications (ICISA), 2011 International Conference on. IEEE, 2011. pp. 1-10. [18] QI, Yaxuan, et al. Towards high-performance pattern matching on multi-core network processing platforms. In: Global Telecommunications Conference (GLOBECOM 2010), 2010 IEEE. IEEE, 2010. pp. 1-5. [19] ANTONELLO, Rafael, et al. Deterministic finite automaton for scalable traffic identification: the power of compressing by range. In: Network Operations and Management Symposium (NOMS), 2012 IEEE. IEEE, 2012. pp. 155-162. [20] LIU, Tingwen; SUN, Yong; GUO, Li. Fast and memoryefficient traffic classification with deep packet inspection in CMP architecture. In: Networking, Architecture and Storage (NAS), 2010 IEEE Fifth International Conference on. IEEE, 2010. pp. 208-217. [21]L7-filter, http:// http://l7-filter.sourceforge.net/, accessed Aprl. 2014. [22]Snort, http://www.snort.org, accessed Aprl. 2014. 14