메뉴 건너뛰기
.. 내서재 .. 알림
소속 기관/학교 인증
인증하면 논문, 학술자료 등을  무료로 열람할 수 있어요.
한국대학교, 누리자동차, 시립도서관 등 나의 기관을 확인해보세요
(국내 대학 90% 이상 구독 중)
로그인 회원가입 고객센터 ENG
주제분류

추천
검색

논문 기본 정보

자료유형
학위논문
저자정보

윤진명 (단국대학교, 단국대학교 대학원)

지도교수
김현진
발행연도
2017
저작권
단국대학교 논문은 저작권에 의해 보호받습니다.

이용수4

표지
AI에게 요청하기
추천
검색

이 논문의 연구 히스토리 (2)

초록· 키워드

오류제보하기
본 연구에서는 Parallel Failureless Aho-Corasick (PFAC) 알고리즘의 적용과 성능 향상을 위해 두 종류의 소자를 이용하였을 경우의 구현 방법을 연구하였다. 첫째로, Field Programmable Gate Array (FPGA) 상에서 Open Computing Language (OpenCL)를 이용한 PFAC 알고리즘의 적용과 성능 향상 방안을 제시한다. 두 번째로, Graphic Processing Unit (GPU) 상에서 Compute Unified Device Architecture (CUDA)를 이용한 기존 PFAC 알고리즘의 처리량 (throughput) 향상을 위한 메모리 접근의 개선 방법을 제안한다.
문자열 매칭 엔진은 네트워크 보안에서 핵심이다. 최신의 네트워크 속도에 대비하여 그 속도에 미치지 못하는 문자열 매칭 엔진으로 인하여 사용자들은 네트워크의 최대 속도를 이용하지 못하고 있다. 이에 대한 해결방안으로 문자들의 여러 묶음을 한 번에 처리하는 병렬 문자열 매칭 방법이 요구되고 많은 연구자들은 병렬 문자열 매칭의 연구를 진행하고 있다.
FPGA의 벤더들은 OpenCL을 이용한 병렬 처리 플랫폼을 제공하고 있고 GPU의 벤더들 역시 병렬 범용 연산 방법을 제공한다. FPGA는 명령어 처리에 중점을 둔 CPU에 대비하여 저전력의 fine-grained 병렬 처리 시스템을 구현할 수 있다. 이로써, 병렬 문자열 매칭이 가능하다.
PFAC 알고리즘은 Aho-Corasick (AC) 알고리즘을 변형하여 GPU에 적용하였고, CPU 상에서 구현된 AC 알고리즘과 Open Multiprocessing (OpenMP)을 이용한 Data-Parallel Aho-Corasick (DPFA) 보다 높은 성능 향상을 이루었다. 하지만 늘어나는 네트워크 속도에 비해서는 처리량이 부족하므로, 성능 향상이 필요하다.
본 논문에서는 두 개의 주제를 다룬다. 하나는 OpenCL을 이용한 FPGA 상에서의 PFAC 알고리즘의 적용과 성능 향상이고, 다른 하나는 GPU에서 PFAC 알고리즘의 처리량 향상이다. 실험에서 알고리즘의 공격 패턴으로 Snort 룰 셋 (Rule Set)과 입력 스트림으로 DEFCON을 사용한다. 첫 주제인 FPGA를 사용하는 실험에서는 ALTERA의 Stratix V가 탑재된 DE5-Net 보드를 사용하여 FPGA 구조를 고려한 최적화 방법을 제시한다. local id와 global id를 사용한 것을 비교하고, 비교에서 더 높은 성능을 보인 local id를 사용한 것에 대해서 최적화 방법을 실험한다. local id와 global id의 성능은 각각 약 1.1Gbps와 0.8Gbps이고, 최적화를 한 경우는 약 3.7Gbps이다. 다른 주제인 GPU를 사용하는 실험에서는 NVIDIA의 GTX660을 사용하여 PFAC 알고리즘의 메모리 접근 방법을 변경한다. 우리가 제안하는 방법은 PFAC 알고리즘과 비교하여 대략 6%의 처리량 향상이 있다.

목차

Ⅰ. 서 론 1
Ⅱ. 이론적 배경 5
1. 문자열 매칭 5
2. Aho-Corasick 알고리즘 7
3. Parallel Failureless Aho-Corasick 알고리즘 9
Ⅲ. FPGA 상에서 OpenCL을 이용한 병렬 문자열 매칭 구현과 최적화 방향 12
1. Altera OpenCL SDK에서의 FPGA의 구조 12
2. DE5-Net에서 OpenCL 최적화 15
3. 실험 결과 20
Ⅳ. GPU 상에서 Parallel Aho-Corasick Algorithm에 대한 메모리 접근 방법 23
1. GPU 구조 23
2. PFAC 알고리즘의 문제점 27
3. GPU 구조를 고려한 메모리 접근 방법 30
4. 실험 결과 36
Ⅴ. 결론 40
참고문헌 41
Abstract 43

최근 본 자료

전체보기

댓글(0)

0