트래픽 측정 기술출처 : 한국표준협회(
http://www.kisi.or.kr/information/information_detail.asp?selCommittee=&page=12&idx=3141)
최근 업무 전산화로 인한 분산 컴퓨팅 환경이 확대되고 네트워크 기반의 응용 프로그램이 다양하게 개발됨에 따라 네트워크 트래픽은 증가 일로에 있으며 어느 호스트에서 어떤 형태의 트래픽이 얼마만큼 유발되는지를 알아내는 일은 한정된 네트워크 자원을 효율적으로 활용하는데 매우 중요한 일이 되었다.
하지만, 현재의 네트워크 관리
시스템들은 트래픽 모니터링에 따른 통계값 제공 등의 단순 평면적인 정보만을 제공할 뿐, 네트워크를 정밀 분석하고 그에 따른 대책을 마련하기에는 미약하다. 따라서 효율적인 네트워크 자원 활용을 위하여 네트워크 트래픽을 자세히 분석하며, 네트워크 계층별, 지역별, 호스트별 및 트래픽 플로우별로 트래픽 분석 및 진단할 수 있는 시스템의 개발이 필요하다.
더 보기
트래픽 측정 요소는 사용자 입장에서와 서비스 제공업체 입장에서의 요구사항에 따라 고려해야할 측정 요소가 달라질 수 있으므로 측정 목적의 방향을 정확하게 정립해야 한다
사용자 입장에서의 트래픽 측정요소는 응용 어플리케이션 성능 감시, 서비스 수준 점검, 외부 침입 및 공격 점검 등이고 서비스 제공업체 입장에서의 트래픽 측정요소는 현재 운영 수준 점검, 서비스 수준 협상 시행, 장애 감지, 네트워크 성능향상을 위한 엔지니어링, 용량 계획, 사용자(고객)로의 피드백 등이다.
특히 서비스 제공업체인 경우 고객과의 서비스 수준 관리(SLM: Service Level Management)에 대한 관심이 높아지면서 서비스에 대한 성능 측정 기준으로 특정 측정대상에 적용될 수 있는 개별적인 조건을 정의하고 있는 SLO(Service Level Objective)와 여러 개의 SLO를 포함하고 이를 하나의 그룹으로 평가하여 서비스 수준에 의하여 부합여부를 결정하는 SLA(Service Level Agreement)의 개념이 부각되고 있다.
트래픽 측정은 측정 점에 따라 단말 시스템에 의한 측정, 네트워크 장치에 의한 측정, 외부장치에 의한 측정으로 나눌 수 있다.
단말 시스템에 의한 측정은 이용자가 자신의 트래픽과 요금 등을 파악하기 위해 이용하는 사례가 많다.
네트워크 장치에 의한 측정의 대표적인 예는 전화 교환기에 의한 트래픽 측정이다. 카운터에 의해 측정이 주체가 되는데 다양한 서비스 등급과 품질 등급이 생기고 속도 등급마다 짧은 주기의 측정이 필요하게 되면 카운터 수가 증가하고 네트워크 장치에 대한 부하가 증대된다.
외부장치에 의한 측정의 대표적인 예는 프로토콜 데이터에 의한 트래픽 측정이다. 라우터와 스위치 등 네트워크 장치에 접속된 통신케이블로부터 직접 전송신호를 분기시켜 외부장치 내로 끌어들여 트래픽을 계측한다.
트래픽을 측정하는 방법은 방식에 따라 능동적 방법 대 수동적 방법, 링크 단위 측정 방법 대 종단 간 측정 방법, 집합단위 측정 방법으로 대별된다.
이 중 링크 단위 측정 방법 및 집합단위 측정 방법에서는 플로우(Flow) 개념이 이용된다. 플로우는 송신자에서 수신자로의 단방향성 패킷의 흐름을 나타낸다.
능동적 측정방법에서는 네트워크에 프로브(Probe)를 설치하여 측정 결과를 기록하며 HTTP/FTP 다운로드 성능 등의 사용자 단계 어플리케이션 측정을 한다.수동적 측정방법에서는 측정용 별도의 트래픽은 투입하지 않고 패킷을 감시하고 세션 정보를 요약한다.
링크 단위 측정방법은 일정기간 동안 라우터 인터페이스별 패킷수, 바이트수, 손실 패킷수 등의 메트릭을 측정하고 종단 간 측정방법의 경우 호스트와 네트워크 요구 성능 차이를 분석한다. 능동적 방법은 모두 종단 간 측정 방법을 사용한다.
집합단위 측정 방법은 플로우(Flow)를 정의하고 Flow aggregation 측정을 한다.
트래픽을 분석하는 툴은 NetFlow, cflowd, FlowScan, SnifferPro, IPacket, IFlow등을 사용하고, 네트워크 성능을 측정하기 위해서는 ping, traceroute, Network Vantage, NetPerf 등을 이용한다. 네트워크 감시의 경우 MRTG, RMON이 쓰이고 Visualization 툴로는 RRD를 사용한다.
ping(packet internet groper)은 TCP/IP 프로토콜을 사용하는 응용 프로그램으로 다른 호스트에 IP 데이터그램이 도착할 수 있는지를 검사하는 것을 의미한다. ping을 검사하는 프로그램은 ICMP(Internet Control Message Protocol) echo request라는 메시지를 원격 호스트로 보내 응답을 기다린다. 즉, 송신한 ICMP echo request를 받은 호스트가 동작 중이면 응답할 것이고 호스트가 동작하지 않으면 응답하지 않을 것이기 때문이다. 이와 같이 ping은 진단용으로 네트워크 또는 시스템에 장애가 발생했는지의 여부를 조사하는데 사용된다.
traceroute는 연결하는 특정 호스트까지의 경로를 확인할 수 있는 명령어로서 인터넷 병목현상을 확인할 수 있다. 호스트에서 다른 호스트로의 datagram의 흐름(route)을 표시하기 위해 ICMP와 IP headerso의 TTL(Time To Live)를 이용한다. 목적지까지 찾아가는 경로를 파악할 수 있으나 귀환경로를 알려주는 것은 아니다.
tcpdump는 네트워크 인터페이스 상에 있는 패킷 중에서 명시된 expression에 일치하는 것만을 선별하여 그 패킷의 헤더 정보를 보여주는 응용 프로그램이다. 이 프로그램은 네트워크 상에서 돌아다니는 모든 패킷을 캡쳐함으로써 사용자에게 유용한 정보를 보여준다.
SNMP(Simple Network Management Protocol)는 네트워크 관리를 하기 위한 표준화된 프로토콜이다. CMIP(Common Management Information Protocol)도 있지만 대부분 SNMP를 사용한다.
MIB(Management Information Base)는 망 기기를 감시, 제어하기 위해 사용되는 체계화된 관리 정보 항목들로서 망에서 관리되는 장치가 정적 또는 동적 정보로서 유지되며, 관리 장치가 그 내용을 얻고 변경한다. 약어 MIB은 보통 ‘미브’라고 읽는다. MIB1은 네트워크 관리에 필요한 최소한의 관리대상을 정의하고 있고 114개의 object를 갖는다. MIB2는 MIB1의 확장 판으로 MIB1의 모든 object를 포함하고 총 171개의 object를 포함한다. 확장 MIB는 MIB1, MIB2에서는 규정되어있지 않으나, 벤더가 가지고 있는 독자적인 기능을 SNMP에서 관리할 수 있도록 정의한 관리 항목이다. SNMP와 같은 네트워크 관리 프로토콜이 장비를 체크하는 항목은 MIB에 수록되어 있다. 이 MIB는 SNMP에서 관리하는 정보의 데이터베이스와 같은 것으로 어떤 항목에 대하여 문의하면 어떤 대답이 되돌아올지를 각각 정해놓고 있다.
MRTG(Multi Router Traffic Grapher)는 SNMP 프로토콜을 기반으로 C, Perl Script 프로그래밍 언어를 이용하여 네트워크 장비 인터페이스 트래픽 총량을 제공함으로써 네트워크 상황을 파악하는 1차적인 도구이다.
RMON(Remote Monitoring)은 전체 발생 트래픽, 세그먼트에 연결된 각 호스트들의 트래픽, 호스트들 간의 트래픽 발생 현황을 파악하게 해준다.
RFTM(Real Time Flow Management)은 플로우 규정 방식, 측정 장비들에 대한 계층구조, 계측 수치화 및 원격 계측기로부터 데이터 수집을 위한 메커니즘 등의 사항을 제공하는 RFC 2721, 2722에 규정된 방식이다.
Cisco´s NetFlow는 송신자에서 수신자로의 단 방향성 패킷의 흐름으로 정의된다. Cisco의 NetFlow는 Cisco 라우터가 각 네트워크 인터페이스를 통해 지나가는 트래픽의 플로우 정보를 제공하는 기능이다.
인터넷 트래픽 패턴분석 연구결과, 대부분의 인터넷 패킷은 송신자와 수신자 사이의 연속적인 흐름을 이루고 있고 이러한 연속적인 데이터 흐름을 플로우라 한다. 특히 MPLS(Multi Protocol Lebel Switching)는 트래픽을 플로우로 모델링하여 고정된 Lebel을 이용하여 고속으로 패킷을 스위칭 함으로써 IP 라우팅의 성능을 향상시키는 기술로서 최근 이슈화되고 있다.
Cflowd는 Cisco의 NetFlow를 이용한 스위칭 방법을 분석하기 위해 현재 사용되고 있는 플로우 분석도구이다.
트래픽 측정방법은 크게 수동적인 방법과 능동적인 방법으로 분류되고 수동적인 측정으로 네트워크 상의 트래픽 종류와 양을 파악하여 그 네트워크 트래픽의 특성을 파악하고, 능동적인 측정으로 측정 패킷을 측정하고자 하는 네트워크에 투입하여 그 패킷이 서비스되는 것을 관찰하여 상태를 파악하는 것이다. 따라서, 수동적이 측정과 능동적인 측정은 네트워크 트래픽의 파악과 분석에 필수적인 역할을 한다.
네트워크 관리자가 두 측정 결과를 적절히 이용한다면 네트워크 트래픽과 네트워크 상태를 잘 파악하여 효율적인 네트워크 관리를 할 수 있을 뿐만 아니라, 네트워크 플래닝과 같은 네트워크 확장에 객관성을 지닌 잣대를 얻을 수 있을 것이다.
Trackback : http://charlie.tistory.com/trackback/27