3. 네트워크 분석 바이블 III
상태바
3. 네트워크 분석 바이블 III
  • 승인 2005.10.14 00:00
  • 댓글 0
이 기사를 공유합니다

Tech Guide / 스니퍼 활용 가이드
네트워크 비정상 원인 분석 시간 단축, 필터 기능으로 해결하라
네트워크 트래픽 경향 분석 알뜰 … 리포터 툴 이용도 좋은 방법

1. 네트워크 분석 바이블 I
2. 네트워크 분석 바이블 II
3. 네트워크 분석 바이블 III (이번호)
4. TCP/IP 트러블슈팅 I
5. TCP/IP 트러블슈팅 II
6. 애플리케이션 성능 관리

김근혜
피지피넷 스니퍼 분석 기술지원부 차장
kgsun@pgpnet.com
이번 호에서는 네트워크 관리자가 자신이 관리하는 네트워크의 트래픽 경향을 쉽게 파악하고 편리하게 관리하기 위해 사용할 수 있는 방법과, 네트워크상에 흘러 다니는 무수히 많은 패킷들 중에서, 보다 많은 문제를 유발하는 패킷을 뽑아내 네트워크 비정상 원인 분석의 시간을 단축시키는데 그 성능을 좌우하는 필터링 기능을 알아보도록 한다. <편집자>

지금까지 스니퍼를 이용해 네트워크 트래픽을 실시간 모니터링하는 관리자들에게 꼭 필요한 각 기능의 사용법과 활용 방법에 대해 알아봤다. 이들 기능은 실시간으로 네트워크의 현상을 진단하고 파악하기 위해 사용되는 가장 기본적인 기능들로 심각한 네트워크 문제가 아니라면 이를 활용해서도 충분히 현 네트워크의 증상에 대한 원인 분석을 할 수 있다.
이번 호에서는 네트워크 트래픽 경향 분석을 위한 스니퍼 활용도, 그리고 필터 기능들에 대해 살펴본다. 또한 네트워크 관리자들이 트래픽의 경향을 분석해 관리하고 있는 네트워크의 베이스라인을 구축하거나, 네트워크 컨설턴트들이 분석 요청을 의뢰 받아 네트워크 트래픽 분석 보고서 작업을 해야 할 경우 스니퍼의 어떤 기능을 활용해야 하는지를 설명한다. 더불어 네트워크 경향 파악을 위해 어떤 계획을 세우고 사전 준비를 어떻게 해야 하는지와 수많은 패킷 중에 분석하고자 하는 패킷들을 쉽게 찾아내는 필터링 기법들에 대해 알아본다.

네트워크 경향 분석
많은 네트워크 관리자 또는 관리를 대행 서비스하고자 하는 엔지니어라면 네트워크 경향 분석에 대한 의뢰를 받았을 경우 어디서부터 어떻게 시작을 해야 할 지 고민하게 될 것이다. 또한 네트워크 트래픽에 대한 정기적인 관리 부분에 대한 범위에 대해서도 궁금할 것이다.
기본적으로 네트워크 경향 분석을 통해서 정기적인 관리의 궁극적인 목적은 아래와 같다.

가. 네트워크 사용자의 만족도 분석
- 네트워크 서비스에 대한 사용자의 만족도와 향후 추진 계획을 점검한다.
나. 트래픽에 영향을 주는 요소들에 대한 정기적인 분석
- 새로운 배치, 이동, 장비 구매, 애플리케이션, 서비스의 도입 등과 같이 네트워크 트래픽에 영향을 줄 수 있는 요소에 대해 사전 점검을 실시한다.
다. 랜 및 왠의 용량에 대한 분석
- 트래픽이 특정 세그먼트에 집중되어 있거나, 서버 액세스를 위한 트래픽 흐름이 균형을 이루고 있는가를 파악, 문제가 있는 네트워크를 분리하거나 서버의 위치를 변경하기 위한 자료 수집이 필요하다.
- 왠 구간 회선 사용 현황을 주기적으로 파악해야 한다.
라. 대용량 트래픽에 대한 시간 계획 설정
- 시스템 백업같이 네트워크에 과도한 트래픽을 유발시키는 업무를 파악, 주요 업무시간 이후로 분리할 수 있도록 해야 한다.

이런 부분들을 적절하게 파악하기 위해 실제 필자가 사용한 경험을 중심으로 방법을 설명한다.
첫째, 네트워크 컨설턴트라면 네트워크 컨설팅 업체와의 미팅을 시작으로 분석 작업을 착수할 것이며, 관리자라면 기본적으로 파악하고자 하는 부분에 대해 미리 정의해 둬야 할 것이다.
네트워크 경향을 분석하기 위해 사용해야 될 스니퍼 장비 선택 및 준비(기가비트 또는 10/100Mbps, 왠(DS3, T1등), ATM(OC-3C MMF/SMF 등)가 이뤄져야 한다. 또한 중점적으로 파악해야 될 분석 내용(유해 트래픽 분석 또는 애플리케이션 구간별 응답 시간 등)이 어떤 것인지를 충분한 협의 후에 결정해야 할 것이다. 다음의 <표>는 저자가 분석 의뢰를 받았을 경우 사용하는 분석 항목이니 참고하기 바란다.
둘째, 관련자들과의 협의가 끝났다면 이제 네트워크 분석을 위해 첫번째 작업인 네트워크 경향 분석 작업에 들어가 보도록 하자.
<표>에서 소개됐던 분석 항목들 중 일반적인 네트워크 경향 분석에 관련한 부분들을 분석하기 위해서는 스니퍼 리포터 툴을 이용하도록 한다. 스니퍼 리포터는 예전에는 별도로 프로그램을 구입해야 했지만, 현재는 스니퍼 구매 시 포함돼 있다. 이 프로그램을 스니퍼 프로그램 설치 후 추가로 설치해야 하며, 설치 종료 후 스니퍼를 구동하고 툴→리포터가 활성화돼 있는지를 확인하기 바란다. 설치가 제대로 돼 있지 않으면 툴→리포터 부분이 비활성화 됐을 것이다.
스니퍼 리포터 실행 시 한글화 문제를 해결하고 깨끗한 보고서 출력을 위해 시스템 설정을 해야 할 부분이 있는데 <그림 2>와 같이 설정하도록 하자. 설정이 끝나면 스니퍼 리포터를 실행하도록 한다. 이를 실행하면 스니퍼 리포터 에이전트가 실행된다. 이 같은 준비가 되었다면 이제 스니퍼 모니터링 화면에서 올라오는 모든 트래픽 정보들을 자동으로 저장하기 위해 데이터베이스를 셋업한다. <그림 3>
다음은 스니퍼 리포터 세부 기능들을 살펴본다. 스니퍼 리포터는 콘솔과 에이전트로 구성된다. 에이전트는 앞에서 살펴봤던 데이터베이스에서 저장된 모든 CSV파일의 데이터를 DATA.MDB 파일로 변환해주는 기능을 제공한다. 콘솔은 이 변환된 DATA.MBD에서 원하는 분석 보고서를 뽑기 위한 기능을 콘솔화면을 제공한다.
여기서 주의해야 될 것은 스니퍼를 분석 지점에 연결한 후 리포터를 하기 위해 미리 스니퍼 리포터를 구동해 에이전트를 백그라운드로 실행해 놓도록 하여 자동으로 csv를 mdb 파일로 불러들이기를 해야 한다. 그렇지 않고 나중에 에이전트를 실행하게 한다면 csv를 mdb 파일로 불러들이기 하는데 오랜 시간이 걸리므로 분석 시간이 길어짐을 명심하기 바란다.
셋째, 네트워크 경향 분석 작업이 끝나면, 추가적으로 네트워크 분석 의뢰자의 요구가 있을 경우, 유해 트래픽 분석과 네트워크 피크시 원인 분석에 대한 분석 자료를 제공해야 할 것이다. 이를 위해서는 캡처 파일이 있어야만 가능하다. 따라서 스니퍼를 연결하고 네트워크 트래픽 경향 파악을 위해 데이터베이스를 설정 한 후 로우데이터를 저장하기 위해서는 지속적인 캡처 기능을 제공하는 스트리밍 캡처를 이용해야 한다.
이 설정 방법은 스니퍼→캡처→디파인 필터→버퍼에 가서 ‘save to files’라는 기능을 이용하면 된다. 위와 같이 설정 후 캡처를 실행하게 되면 모든 로우 데이터가 시스템에 저장된다.
버퍼 설정 탭에 패킷 사이즈라고 하는 항목이 있다. 이 곳에서는 캡처되는 패킷의 크기를 정의할 수 있다. 즉, 우리가 캡처하는 패킷에는 프로토콜 정의를 위한 헤더 정보와 사용자가 송수신하는 데이터에 대한 모든 내용이 포함돼 있다. 사용자 데이터 가운데 스니퍼가 디코드 할 수 있는 사이베이스, 오라클 및 HTML 코드는 분석에 도움이 되겠지만, 이외의 데이터들은 모두가 16진수와 ASCII(EBCDIC) 코드 값으로 나타나기 때문에 필요 없을 수도 있다. 때문에 이 데이터들은 캡처하지 않는 것이 분석에 도움될 수 있다.
패킷 사이즈라고 하는 항목이 이 것을 가능하게 해준다. 패킷의 기본적인 헤더 정보만 캡처하려면 64바이트로 설정해도 되겠지만, 전문가들이 권장하는 캡처 패킷의 크기는 128바이트다. 128바이트 패킷에는 기본 헤더 정보와 더불어 사용자 측에서 정의한 애플리케이션 헤더 정보들도 포함돼 있기 때문이다.
또한 Save to file 항목을 선택하면, 하단에 Wrap file names라고 하는 항목이 선택 가능하게 활성화 된다. 이 항목은 사용자가 정의한 파일의 개수를 제한하는 곳이며, 만약 캡처 파일의 크기를 100개로 설정하고 이 항목을 클릭해 선택했다면, 모든 패킷은 100개 파일 내에만 저장될 것이다. 이것은 하드 디스크의 용량이 제한적인 상황에서만 필요하며, 만약 장기적으로 패킷을 캡처할 필요가 있는 경우에는 이전에 캡처 했던 데이터들을 상실하게 된다.
이렇게 저장된 데이터를 기준으로 가장 밀릴 시간의 로우 데이터를 오픈하면 그 다양한 원인을 알 수 있다.

·네트워크 피크시 실제 정상 트래픽 사용률이 증가됐다.
·네트워크 피크시 유해 트래픽이 대량 유입됐다.
·네트워크 피크시 비업무용 트래픽(P2P) 관련 사용률이 증가됐다.

마지막으로, 이 모든 작업 후에는 측정 결과에 대한 보고서를 만들어야 한다. 네트워크 트래픽 경향 분석 보고서에는 앞에서 설명된 스니퍼 리포터로 정기적으로 관리돼야 될 트래픽의 경향에 대한 설명과 비정기적으로 발생되는 네트워크 원인 분석에 대한 내용이 추가돼야 할 것이다.

빠른 패킷 분석 위한 다양한 필터 기법들
스니퍼에는 다양한 필터 기능들이 제공된다. 필터란 패킷을 모니터링하거나 캡처하고자 할 때 모든 데이터가 아닌 분석하고자 하는 패킷만 뽑아내기 위한 작업을 말한다.
필터 구성 방법을 설명하기 전에 각 ‘모니터(Monitor)’, ‘캡처(Capture)’ 및 ‘디스플레이(Display)’ 필터들의 적용 범위에 대해 살펴보자. 스니퍼는 전체적으로 ‘모니터’, ‘캡처’ 및 디스플레이’ 필터를 제공한다. 이 가운데에서 ‘모니터’나 ‘캡처’에서 정의한 필터는 서로 공유가 가능하며, ‘디스플레이’에서 정의한 필터는 패킷을 디코딩해 보여주는 디코드 탭을 선택했을 경우에만 사용할 수 있다.
디코드 화면에서는 캡처 필터나 디스플레이 필터 가운데 하나를 선택해 적용할 수 있다. 때문에 각 디파인 필터나 창에 있는 ‘Address’, ‘Data Pattern’, ‘Port’ 및 ‘Advanced’ 탭의 설정 방법은 모두 동일하다. 정의하려는 필터에 다른 이름을 붙이려면, 프로파일 버튼을 클릭해 필터의 이름을 입력해 선택하면 된다.
디파인 필터의 어드레스 탭에서는 필터링해 관찰하거나 캡처하려는 MAC, IP 및 IPX 주소를 입력해 필터를 정의할 수 있다. 또한 디파인 필터의 포트 탭에서는 필터링해 관찰하거나 캡처하려는 특정 TCP/UDP 포트를 입력해 필터를 정의할 수 있다.
디파인 필터의 데이터 패턴에서는 사전에 캡처한 패킷 가운데 특정 패턴을 선택, AND/OR, Not 등의 논리적인 구성으로 필터를 정의하는 곳이다. 데이터 패턴은 특별한 비트 시퀀스, 패킷 내에서 특정 패턴의 옵셋(offset) 위치 등으로 정의된다. 최대 데이터 패턴의 길이는 32옥텟(octet)이다.
데이터 패턴의 정의를 손쉽게 하도록, 스니퍼는 이미 캡처된 패킷에서 사용자가 선택한 데이터 패턴을 복사해 사용할 수 있도록 한다. 이런 작업을 위해 이전에 캡처 된 파일을 열면 디코드 탭에서 디파인 필터를 호출하기 전에 특정 패킷을 선택한다. 디코드된 패킷에서 데이터 필드를 데이터 패턴 필드로 복사하려면 데이터 패턴 탭에서 Add Pattern/Set Data를 사용한다. 이러한 과정에서 옵셋과 길이가 자동으로 계산돼 데이터 패턴 공간이 채워지며, 필드 이름을 입력할 수 있다.
앞에서 설명된 필터 기능들은 네트워크 트래픽 분석 시 중요한 부분들이다. 네트워크 관리자들은 네트워크 문제 발생시 빠른 대처가 가장 시급한 문제이기 때문에 얼마나 빨리 원인분석에 도움이 되는 패킷들을 찾아내느냐가 중요 관건이다.
우리는 네트워크 상에 흘러다니는 수많은 패킷들을 다 분석할 필요가 없기 때문에 이 기능들을 충분히 숙지한다면 여러분은 네트워크 분석가로서 한걸음 더 다가설 수 있게 될 것이다.
필터가 작성됐다면 항상 적용해야만 그 기능을 발휘한다. <그림 7>은 필터 적용 방법이다. 모니터와 캡처의 필터 적용은 각각 별도이므로 데이터 분석 전에 그 적용 여부를 충분히 확인하기 바란다.
이상 3회에 걸쳐 실시간으로 모니터링을 하기위한 방법론과 데이터를 캡처하는 기능들에 대해 알아봤다. 다음호부터는 실제 패킷을 분석할 때 스니퍼 엑스퍼트 시스템을 어떻게 활용하고 패킷을 분석해야 하는지에 대해 살펴본다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.