2001년12월17일 홍순화 [email protected]...
TRANSCRIPT
POSTECHDP&NM Lab.
(1/28)
로드 분산 방법을 이용한네트워크 트래픽 모니터링 및 분석
로드 분산 방법을 이용한네트워크 트래픽 모니터링 및 분석
2001년 12월 17일홍순화
[email protected]분산처리 및 네트워크 관리 연구실
POSTECHDP&NM Lab.
(3/28)
배경
?네트워크 트래픽 모니터링 및 분석 필요성?네트워크 트래픽 모니터링 및 문제점 파악?네트워크 트래픽 증가 원인 분석?네트워크 회선 계획
?네트워크 트래픽 추세?짧은 시간 동안에도 수시로 변함?장기적으로 계속해서 증가?대용량(10 Mbps 이상) 트래픽의 일반화
? Video, Audio 등의 멀티미디어 트래픽 증가
?문제점?기존 네트워크 트래픽 분석 시스템은 네트워크 트래픽 추세를 잘
반영하지 못하기 때문에 네트워크 트래픽 모니터링 및 분석의 필요성을 만족시키지 못한다.
서론
POSTECHDP&NM Lab.
(4/28)
네트워크 트래픽 분석 시스템 문제점
•일, 월, 년 단위의 네트워크 트래픽모니터링 및 분석 기능을 제공하지 않음장기간 모니터링 결여
•멀티미디어 서비스를 분석하지 못함•네트워크 기반의 새로운 서비스를파악하기 어려움
잘 알려진 서비스만 분석
(예 : telnet, ftp )
•초당 10 ~ 15 만 개의 패킷을 저장하고분석하기 어려움
•분석 시간 및 응답 시간이 늘어남대용량 트래픽 처리의 한계
설명문제점
•시스템 과부하 시 패킷 손실 발생•비연속적으로 발생하여 정확한 트래픽분석을 할 수 없음
패킷 손실
서론
POSTECHDP&NM Lab.
(5/28)
문제점 접근 방법
?네트워크 분석 시스템의 로드 분산
?패킷 손실 방지 연구
?대용량 트래픽 저장을 위한 패킷 해쉬
?데이터베이스를 이용한 장기간 동안의 모니터링 및 분석
? UDP/TCP 포트 번호를 이용한 멀티미디어 서비스 분석 및새로운 서비스 대비
서론
POSTECHDP&NM Lab.
(6/28)
네트워크 트래픽 분석 시스템 구조관련연구
?로드 집중 네트워크 트래픽 모니터링 및 분석 구조
analysis
network interfaceuser
network traffic datapacket header information
analyzed information
capture presentation
centralized environment
시스템 과부하로인한 분석, 응답 시간
지연
시스템 과부하로인한 패킷 손실
POSTECHDP&NM Lab.
(7/28)
패킷 캡처 원리 및 패킷 손실
device driver(Link level)
device driver(Link level)
ProtocolStack
ProtocolStack
packet captureapplication
NetworkKernel
Kernel
User
packets
Kernel packet memoryKernel packet memory
User memoryUser memory
interrupt
2. 블록 단위로 패킷 전달
3. 블록 단위로 패킷 전달
4. 패킷 하나씩 전달
관련연구 : 패킷 캡처
로드가많이 걸림
1. promiscuous mode 설정
로드가많이 걸림
POSTECHDP&NM Lab.
(8/28)
패킷 손실 원인 및 대처 방법
? 시스템 사양 향상? 패킷 캡처 모듈의 시스템
자원 사용 보장
? 패킷 캡처 모듈의 패킷처리 시간 단축
패킷 캡처 모듈의 자원 부족? 분석 및 프리젠테이션 프로
세스의 과부하
? 패킷 캡처 프로세스 자체의과부하
사용자
? 시스템 사양 향상
? 네트워크 드라이버 모듈최적화
커널의 네트워크 자원 부족? 디바이스 드라이버 에서의
인터럽트? 커널의 패킷 메모리 할당
실패
커널
대처 방법손실 원인손실 레벨
관련연구 : 패킷 캡처
커널 레벨 손실 : 네트워크 드라이버 모듈을 최적화 하는 방법은 한계가분명하기에 시스템 사양을 높여야 한다.
사용자 레벨 손실 : 시스템 사양을 높여도 트래픽 처리 방법에 따라 손실이 발생하므로 패킷 캡처 프로그램의 자원 사용을 보장해야 한다.
POSTECHDP&NM Lab.
(9/28)
패킷 단위 분석과 트래픽 분석
? 저장 공간 문제
? 패킷 분석 시 패킷손실 위험
? 일정 시간 간격의트래픽 비교
? 장기간 분석에 적당
? 분석에 제한이 없음
패킷의 헤더 정보를 일정 시간 동안저장한 뒤 시간별로 트래픽 분석
일괄처리
트래픽 분석
? 분석에 제한? 장기간 분석에
부적당? 패킷 캡처 시 패킷
손실 위험
? 누적되는 실시간트래픽 확인
? 저장 공간 효율패킷 하나가 들어올 때마다 트래픽분석
실시간
트래픽 분석
? 트래픽 분석에 적당하지 않음
? 패킷 하나 하나의동작 확인 가능
패킷 하나씩의 정보 확인
패킷 단위
분석
단점장점설명분석 방법
관련연구 : 패킷 분석
?일괄처리 트래픽 분석 방법이 대용량, 장기간 모니터링에 적당함
POSTECHDP&NM Lab.
(10/28)
네트워크 트래픽 분석 시스템 조사
UserInterface
Load distribution
Analysis Scope
Analysis IntervalAnalysis Method
CaptureMethod
Textnolayer 7currentpacket by packet
libpcapTcpdump
Webyeslayer 71 minute, hourly, daily, monthly, yearly
batchtraffic analysis
libpcapWebTrafMon II
Webyeslayer 25 minute, hourly, daily, weekly, monthly
batch traffic analysis
snmpagent
MRTG
Webnolayer 75 second, hourlyreal-time traffic analysis
libpcapNtop
?각 도구들의 장단점을 파악하여 설계 및 구현에 반영한다.
관련연구
POSTECHDP&NM Lab.
(11/28)
요구사항
?기본 요구 사항 : ?트래픽의 총량 분석?호스트 정보 분석?프로토콜(network, transport, application layer) 정보 분석
?호스트와 프로토콜과의 관계 분석?웹 기반의 사용자 인터페이스
?단기간 모니터링 (분, 시)?장기간 모니터링 (일, 월, 년)?패킷 손실 방지
?대용량 트래픽 분석
?멀티미디어 서비스 분석 및 새로운 서비스 대비
요구사항
POSTECHDP&NM Lab.
(12/28)
구조 : 로드 분산 구조Centralized Traffic Analysis Architecture
(로드 집중 구조)Distributed Traffic Analysis Architecture
(로드 분산 구조)
presentation
analysis
capture
network interface user
network traffic datapacket header information
analyzed information
analysis
capture presentation
usernetwork interface
packet header information network traffic data
distributedenvironment
■패킷 캡처 모듈의 시스템 자원 사용 보장■분석 시간과 응답 시간의 향상
하나의 시스템에서 모두 처리 세 개의 시스템에서 모듈 분리
설계 : 문제점 해결
centralizedenvironment
POSTECHDP&NM Lab.
(13/28)
패킷 캡처 : 바이너리 로그 파일
패킷 하나 처리 시간(usec) 손실률(%)0.5 0.012 0.56
10 0.9100 46.72200 65.21600 91.19
packet generating (Mgen)
94 Mbps traffic
packet capturing (probe)
800 MHz, 128 MBLinux
800 MHz, 128 MBLinux
로드 분산을 통해 패킷 캡처 프로그램의 CPU 사용을 보장한 뒤독립된 패킷 캡처 모듈에서 패킷 처리 시간을 줄이면 패킷 손실을 막을 수 있다.
설계 : 문제점 해결
패킷 손실 테스트 베드
패킷 하나 처리 시간 (usec)
손실률 (%)
2 usec : 바이너리 파일10 usec : 텍스트 파일200 usec : 데이터베이스
POSTECHDP&NM Lab.
(14/28)
포항공대 인터넷 회선에서 1 분 동안 패킷 캡처 후 패킷 해쉬848,869 개의 패킷? 46,141 개 (18배 압축)
dst port total size src portprotocol countdst ipsrc ipframe typetime
3 개
1568 * 3 = 4704 bytes
패킷 헤더 정보
분석 : 패킷 해쉬를 통한 패킷 압축설계 : 문제점 해결
POSTECHDP&NM Lab.
(15/28)
멀티미디어 서비스 분석 : UDP/TCP 포트
?RTP (UDP)Quick Time
19114freenet (TCP)FreeNet
6347gnutella (TCP)Gnutella
서버 1214fasttrack (TCP)FastTrack
서버 1755MMST (TCP)Windows Media
클라이언트 6972RTP (UDP)Real Media
포트 번호프로토콜서비스
? UDP/TCP 포트 번호로 스트리밍, P2P 등의 멀티미디어 트래픽 분석 가능? UDP/TCP 포트 정보를 사용자 인터페이스를 통해 입력 받도록 설계
설계 : 문제점 해결
POSTECHDP&NM Lab.
(16/28)
시스템 구조
database
web-basedtraffic analyzerweb-based
traffic analyzer
(minutely, hourly, daily, monthly, yearly)
probe
network point
promiscuous mode packet capturehash log format and save into DB
user
distributedenvironment
request
response
packet header information log file
log format
port information
port information
make short term, long term traffic data
minutely
minutely
hourly, daily, monthly, yearly
statistics network traffic data
analyzeranalyzerpacket
analyzerpacket
analyzer
설계
패킷을 캡처 해서 분단위로 로그 파일에저장한다.
로그 파일을 분 단위로 읽어 같은 패킷을합친 뒤 DB에 저장한다. 분 단위 정보를계속해서장기간동안의 정보로만든다.
사용자의 요청을 분석한뒤 데 이 터 베 이 스 에 서정보를가공해 보여준다 .
POSTECHDP&NM Lab.
(17/28)
패킷 캡처 모듈 (Probe)Log File
log format
log format
log format
분 단위로 패킷 헤더정보를 저장
probe(analysis packet header)
network point
promiscuous mode log format
로그 포맷
length dst portsrc portprotocoldst ipsrc ipframe typetime
설계
?한 패킷을 처리하는 CPU time을 줄여야 함 : binary log file 사용
POSTECHDP&NM Lab.
(18/28)
로그 포맷
6 6 2 4data CRC
46-1500 bytes
TCP data
Ethernet
IP
TCP
Log format2 2
time length frame_type src_ip dst_ip protocol src_port dst_port1 4 42 2 2 21 (bytes)
frame capture time (minute)
total Ethernet frame size(Ethernet header + data + CRC)
Dst addr
Srcaddr Type
4 1 IP data4Dst addrSrc addr Protocol
dst portsrc port
설계
POSTECHDP&NM Lab.
(19/28)
패킷 분석 모듈
hashingToDBhashingToDB
database
hash log format and make minute table
makeTable
make hour, day, month, year table
Log Filelog format
hashing log format
read log format
(minute, hourly, daily, monthly, yearly)
minute
dst port total size src portprotocol countdst ipsrc ipframe typetime
해쉬 로그 포맷
설계
hourly, daily, monthly, yearly
POSTECHDP&NM Lab.
(20/28)
Database Schema
0~4,294,967,295NoINT UNSIGNEDcount
20자리수NoBIGINT UNSIGNEDlength
0 ~ 65,535 PRINoSMALLINT UNSIGNEDdst_port
0 ~ 65,535 PRINoSMALLINT UNSIGNEDsrc_port
0 ~ 255 PRINoTINYINT UNSIGNEDprotocol
0~4,294,967,295PRINoINT UNSIGNEDdst_ip
0~4,294,967,295PRINoINT UNSIGNEDsrc_ip
0 ~ 65,535PRINoSMALLINT UNSIGNEDether_type
0 ~ 59PRINoTINYINT UNSIGNEDminute
DescriptionDefaultKeyNullTypeField
설계
minute_2001_11_01_12_table (2001년 11월 1일 12시)
POSTECHDP&NM Lab.
(21/28)
웹기반 트래픽 분석 모듈
Web Interface(user)
Web-based Traffic Analyzer
Database
Analyzer
Web
ServerSQL
reply
CGI
request
설계
UDP/TCP 포트 정보가 추가되면, 과거의 트래픽정보에도 반영된다.
minute_table hour_tableday_table month_tableyear_table
port information table
Database
port management
responseport information
CGI
port information
port information
POSTECHDP&NM Lab.
(22/28)
http
구현
Binary Log File
packet capture using libpcap
probe
packet analyzer
save packet header information into log file
make hashing log format and save minute data into database
MySQL Client
NFS distributed environmentNFS distributed environment
MySQLServer
C-CGI, MySQL Client
SQL
reply
C-CGI, Apache web-server
Internet
make hourly, daily, monthly and yearly table
user
Database
CRONminutely, signal
minutely
minutely ~ yearly
web-based traffic analyzer
3 PCs,Pentium III 800 MHz, 256 MB, Linux
POSTECHDP&NM Lab.
(23/28)
대용량 트래픽 처리 (분 단위)
40 ~ 44 분의 5분간, MRTG와 트래픽 총량 비교
WebTrafMon II : 95.8 Mbps
MRTG : 94.7 Mbps
시스템 적용
포항공대 인터넷 회선에서 테스트
POSTECHDP&NM Lab.
(27/28)
결론
?로드 분산 네트워크 트래픽 모니터링 및 분석 구조 제시
?대용량 트래픽의 패킷 손실 없는 정확하고 빠른 분석
?장기간 동안의 트래픽 모니터링 및 분석
? UDP/TCP 포트 정보를 이용한 멀티미디어 서비스 분석 및새로운 서비스 대비