21.01.2015 Views

Flow를 이용한 호스트 기반 트래픽 모니터링 및 - NM Lab at Korea ...

Flow를 이용한 호스트 기반 트래픽 모니터링 및 - NM Lab at Korea ...

Flow를 이용한 호스트 기반 트래픽 모니터링 및 - NM Lab at Korea ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

를 분석하는 시스템으로 나누어진다. 먼저 Flow 정보를<br />

생성하는 모듈인 Flow Gener<strong>at</strong>or 는 Observ<strong>at</strong>ion Point 에<br />

서 패킷을 캡쳐하여 1 분 동안의 패킷 헤더 정보를 모아<br />

서 Flow 정보로 변환 후 디스크에 파일로 저장한다. 저장<br />

된 Flow 파일은 파일 전송 모듈인 Flow Exporter 에 의해<br />

분석 모듈인 Traffic Analyzer 로 전송된다. Traffic Analyzer<br />

는 Flow 정보를 각 IP/Subnet 별로 <strong>트래픽</strong>을 분류하여<br />

DB 에 저장하는 역할을 하며, 마지막으로 Traffic Reporter<br />

가 DB 에 저장된 분석 정보를 웹을 통해 사용자에게 제<br />

공한다. 사용자에게 제공하는 정보로는 Campus 네트워크<br />

의 분, 시, 일, 주, 월 단위의 전체 <strong>트래픽</strong> 양과 IP/Subnet<br />

별 상위 10 개의 <strong>트래픽</strong> 양을 보여준다. 웹 <strong>기반</strong>의 사용<br />

자 인터페이스를 가짐으로써 사용자는 언제 어디서나 쉽<br />

게 네트워크를 <strong>모니터링</strong> 할 수 있다.<br />

III. <strong>호스트</strong> 분석 시스템 설계<br />

2008 년 한국통신학회 하계학술발표대회<br />

그림 2 는 분석 시스템의 구조를 보여준다. Traffic<br />

Trend. DB, Graph RRD 를 중심으로 <strong>트래픽</strong> 정보를 생성<br />

하는 부분과 <strong>트래픽</strong> 정보를 제공하는 부분으로 나누어진다.<br />

<strong>트래픽</strong> 정보를 생성하는 부분은 매분 주기로 Traffic<br />

Analyzer, RRD Manager 2 개의 모듈이 작동한다. Traffic<br />

Analyzer 는 Traffic Trend. DB 의 분, 시, 일, 주, 월 테이<br />

블에 해당 <strong>트래픽</strong> 정보를 분류하여 업데이트하며, RRD<br />

Manager 는 각 <strong>호스트</strong>에 대한 RRD 를 생성하고 업데이<br />

트하는 작업을 한다.<br />

<strong>트래픽</strong> 정보를 제공하는 부분은 사용자의 요청에 의<br />

해 동작된다. 사용자가 웹을 통해 <strong>트래픽</strong> 정보를 요청을<br />

하면 Traffic Reporter 가 Traffic Trend. DB 로부터는 <strong>트래픽</strong><br />

정보를 요청하고, Graph Gener<strong>at</strong>or 에게는 그래프 생성 요<br />

청을 한다. 요청에 의해 응답이 완료되면 Traffic Reporter<br />

는 Web Server 를 통해 사용자에게 <strong>트래픽</strong> 정보 <strong>및</strong> 추이<br />

그래프를 제공한다.<br />

3 장에서는 <strong>호스트</strong> 분석 시스템이 갖추어야 할 요구<br />

사항을 살펴보고, 이를 충족시키기 위해 시스템을 설계한<br />

내용을 기술한다.<br />

3.1 <strong>호스트</strong> <strong>트래픽</strong> 분석의 요구 사항<br />

본 논문에서 제안한 Enterprise 네트워크 내에서의<br />

Flow <strong>기반</strong> <strong>호스트</strong> 분석 시스템이 갖추어야 할 조건은 다<br />

음과 같다.<br />

첫째, 각 <strong>호스트</strong>의 <strong>트래픽</strong> 양을 여러 단위 시간 별로<br />

나타낼 수 있어야 한다. 실시간의 분 단위 정보를 토대로<br />

시, 일, 주, 월 단위의 <strong>트래픽</strong> 누적량을 제공하면 해당 호<br />

스트의 네트워크 사용에 대한 패턴을 파악할 수 있다.<br />

둘째, <strong>트래픽</strong> 양의 변화를 그래프를 통해 확인할 수<br />

있어야 한다. <strong>트래픽</strong> 추이를 그래프로 표현하게 되면 한<br />

눈에 파악할 수 있는 장점을 가진다.<br />

셋째, 과거의 <strong>트래픽</strong> 분석 정보를 확인할 수 있어야<br />

한다. <strong>모니터링</strong> 시스템의 사용자가 실시간 <strong>트래픽</strong> 현황을<br />

계속해서 지켜볼 수는 없으므로, 특정 시점의 <strong>트래픽</strong> 현<br />

황을 파악하기 위해서 과거의 <strong>트래픽</strong> 정보를 저장해 놓<br />

아야 한다.<br />

넷째, <strong>호스트</strong> 별 <strong>트래픽</strong> 분석 정보는 다양한 정보를<br />

제공해야 한다. <strong>트래픽</strong>의 양뿐만 아니라 접속 IP/Port,<br />

Protocol 등 상세 정보를 제공할 수 있어야 한다.<br />

3.2 시스템 전체 구조<br />

본 시스템은 KU-MON 시스템을 확장시킨 형태로 패<br />

킷을 캡쳐하고 Flow 정보를 생성하는 부분은 기존의 KU-<br />

MON 시스템과 동일한 형태를 가진다. 따라서 본 논문에<br />

서는 위에서 살펴 본 요구 사항을 충족시키기 위해 KU-<br />

MON 의 분석 시스템 부분을 개선하였다.<br />

그림 2. 분석 시스템 구조<br />

3.3 Traffic Trend. DB<br />

그림 3. Traffic Trend. DB 테이블 스키마<br />

Traffic Trend. DB 는 Host/Subnet 을 기준으로 분, 시,<br />

일, 주, 월 단위의 정보를 각각 하나의 테이블로 생성한<br />

다. 그림 3 에서 보는 바와 같이 총 10 종류의 테이블이<br />

존재하며, 접두사 'Local'은 Enterprise 네트워크 내부를,<br />

‘Remote’는 외부를 나타낸다. 외부에서 내부로 향하는<br />

<strong>트래픽</strong>은 ‘ In'을, 내부에서 외부로 향하는 <strong>트래픽</strong>에는<br />

'Out'이라는 접두사를 붙여 표현하였다.<br />

분 단위 <strong>트래픽</strong> 정보는 짧은 기간의 정보로써<br />

Local_Port, Remote_IP, Remote_Port, Protocol 에 의해 분<br />

류된 상세한 <strong>트래픽</strong> 정보를 저장하기 위해 A type 을 사<br />

용한다. 나머지 테이블은 외부의 수많은 IP/Port 로 인해<br />

분 단위와 같은 상세한 분류에 의한 정보 저장을 디스크<br />

의 제한으로 할 수가 없다. 따라서 Host 별 분 단위를 제<br />

외한 단위 시간 테이블은 Local_IP 만을 분류 기준으로<br />

하여 단위 시간 동안의 <strong>트래픽</strong> 누적량을 표현하기 위해<br />

B type 을 사용한다.<br />

일반적으로 한 <strong>호스트</strong>에서 발생할 수 있는 최대<br />

Bandwidth 가 100Mbps 인 점을 고려한다면, 1 분 동안의<br />

Byte, Packet, Flow 양을 저장하기 위한 데이터의 크기는<br />

4 byte 이면 충분하다. 하지만, 시간 단위 이상에서는 4<br />

byte 의 데이터 크기로는 오버플로우의 발생으로 올바른<br />

<strong>트래픽</strong> 양을 표현할 수 없기 때문에, 8 byte 의 데이터 크<br />

기를 사용한다.<br />

테이블의 저장 기간은 디스크의 효율적인 사용을 위<br />

해 일정 기간을 유지해야 한다. 분 단위 테이블의 개수가<br />

DB 의 총 데이터 양의 대부분을 차지한다. 분 단위 테이<br />

블의 유지기간이 길면 그 만큼 오래 전까지 분 단위 정

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!