네트워크 설계 및 실험 실습 제목 : 5 장 트래픽 생성과 추적 파일 분 석 1. 보고서 목차 1. 실습 목적 2. 실습 환경 3. 실습 내용 및 방법 4. 실험 전 학습준비 5. 실습 결과 및 고찰 6. 기타 - 참여원 활동내역 - 실습결과물.

Slides:



Advertisements
Similar presentations
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Advertisements

Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.
Format String Attack! 포맷 스트링 공격 경일대학교 사이버보안학과 학년 남주호.
컴퓨터와 인터넷.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
재료수치해석 HW # 박재혁.
Network Simulator 2 성균관대학교 모바일컴퓨팅 연구실
NS–2 (Network Simulator)
Chapter 16 : Struts 프레임워크 2. chapter 16 : Struts 프레임워크 2.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
김태원 심재일 김상래 강신택. 김태원 심재일 김상래 강신택 인터넷 통신망의 정보를 제공하는 서비스 인터넷의 자원 및 정보는 NIC가 관리 IP주소 또는 도메인으로 정보 검색 이용자 및 통신망 관한 정보를 제공.
인공지능실험실 석사 2학기 이희재 TCP/IP Socket Programming… 제 11장 프로세스간 통신 인공지능실험실 석사 2학기 이희재
최윤정 Java 프로그래밍 클래스 상속 최윤정
Ch.07-5 xml-rpc 사용하기 김상엽.
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
CUDA Setting : Install & Compile
뇌를 자극하는 Windows Server 2012 R2
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
Chapter 13 Wired LANs: Ethernet.
제 14장 Multicast & Broadcast
8장. 원격지 시스템 관리하기.
15장 X.25 패킷 교환망 15.1 X.25 계층 15.2 X.25와 관련된 기타 프로토콜 15.3 요약.
소리가 작으면 이어폰 사용 권장!.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
FTP 프로그램 채계화 박재은 박수민.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
제 2 장 WML 시뮬레이터 및 무선인터넷 서버 설치
TCP/IP 응용 프로그램에 적용 가능한 다양한 소켓 옵션을 이해하고 활용한다.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
메시지 큐[5] – test1.c 메시지 제어: msgctl(2) #include <sys/msg.h>
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
자바 5.0 프로그래밍.
17장 X.25 패킷 교환망 17.1 X.25 계층 17.2 X.25와 관련된 기타 프로토콜 17.3 요약.
제9장 네트워크 성능 및 품질 평가 과 목 : 네트워크 설계 및 실험 조 명 : 1 조
제7장 백본 부하 모델링 및 생성 1 과 목 : 네트워크 설계 및 실험 조 명 : 1 조
3장. CentOS 리눅스 설치.
자바 5.0 프로그래밍.
프로그래밍 개요
시스템 인터페이스 Lab3 Unix 사용법 실습.
27장. 모듈화 프로그래밍.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
제8장 백본 부하 모델링 및 생성 2 과 목 : 네트워크 설계 및 실험 조 명 : 1 조
Go Lang 리뷰 이동은.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
아두이노 매트릭스 코딩 매트릭스 기본 명령어 실습 01차시 ㈜헬로앱스 김영준.
제10장 네트워크 성능 및 품질 평가 과 목 : 네트워크 설계 및 실험 조 명 : 1 조 조 원 : 김성태. 이연화. 임시목
5강. 배열 배열이란? 배열의 문법 변수와 같이 이해하는 배열의 메모리 구조의 이해 레퍼런스의 이해 다차원 배열
보고서 #7 (기한: 6/2) 2개의 스택, stk1, stk2를 이용하여 큐를 구현하라.
네트워크 설계 및 실험 실습 제목 : 5장 트래픽 생성과 추적 파일 분 석 1.
Packet sniffing 응용 레벨이 아닌 네트워크 디바이스 레벨에서의 데이타을 얻는 것 네트워크 상의 트래픽을 분석
DK-128 직렬통신 기초 아이티즌 기술연구소
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
OpenCV 설정 2.21 만든이 딩딩.
05. General Linear List – Homework
3. 모듈 (5장. 모듈).
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
MIDP 네트워크 프로그래밍 ps lab 김윤경.
김덕용 게임 엔진론 Project 2차발표.
TERM PROJECT 최종 보고 발표 안내 2010 컴퓨터공학실험(Ⅰ).
소리가 작으면 이어폰 사용 권장!.
Wake On Lan 발표자: 김 홍 기 김홍기 조성오
CCIT 네트워크 발표 정보보호학과 평문 사이트와 SSL 사이트, SSL strip과 데이터 변조를 이용한 로그인 취약점
6 객체.
JAVA 프로그래밍 16장 JNLP.
Presentation transcript:

네트워크 설계 및 실험 실습 제목 : 5 장 트래픽 생성과 추적 파일 분 석 1

보고서 목차 1. 실습 목적 2. 실습 환경 3. 실습 내용 및 방법 4. 실험 전 학습준비 5. 실습 결과 및 고찰 6. 기타 - 참여원 활동내역 - 실습결과물

1. 실습목적 - NS-2 에서 트래픽을 생성하는 방법과 네트워크의 각 노드와 링크를 지 나가는 패킷을 담은 파일인 추적 (trace) 파일을 분석하는 방법을 파악 하여 네트워크의 성능 및 품질 평가에 활용하고자 한다. ◎ 주된 실습 내용 - ns-2 에서 링크와 큐 (queue) 구조 및 추적파일 포맷 이해 - ns-2 에서 트래픽을 생성하는 기본 방법 네 가지와 ftp 방법 사용 - tracefile 제작. 확인용 c 프로그램 작성 - ns-2 의 추적파일 분석 : 동적속도, 패킷손실율 및 ftp 업로드 속도 계산

2. 실습환경 기종 및 사양 : AMD Athlon(tm) 64 X2 Dual Core Processor GHz, 1.86GB RAM 운영체제 : Microsoft Windows XP Professional Version 2002 Service Pack 12 gcc, gdb, ns-2( 버전 2.30), awk, gnuplot, 셀 (shell) 프로그래 밍 Simtl

3. 실습내용 및 방법 순번진행 사항기타 사항 1 Ns-2 의 링크, 큐, ftp 방법 등의 자료 준비 확인자료 ( 준비사항 ) 확인 2 사전 준비된 자료의 유용한 정보 추출 및 공유자료 검토 및 공유 3 추출된 자료를 서로 간의 연계자료 연계 4 프로그램 실행 및 결과물 추출실습 5 산출된 결과 및 준비된 자료를 바탕으로 보고서 작성보고서 작성 6 실습 완료완료

4. 실습 전 학습 준비 (1) otcl 과 샘플 tcl 프로그램 이해 (2) ns-2 에서 링크와 큐 (queue) 구조 및 추적 (trace) 파일 포 맷 공부 (3) ns-2 에서 트래픽을 생성하는 기본 방법 네 가지와 ftp 사 용 방법 공부 (4) 패킷 drop 비율 ( 손실율 ) 및 ftp 속도 계산 awk 프로그램 작성 (5) shell 프로그램 참조 (do_chap5) (6) 실험절차에 따른 선행실험

(1) otcl 과 샘플 tcl 프로그램 이해 1)Otcl 개요 otcl 은 MIT 에서 구현한 Object tcl 을 말하는 것으로 Tcl/Tk(X-Window Toolkit) 를 오브젝트 기반 프로그래밍을 위해 확장한 것이다. otcl 구조의 특징은 tcl 과 같이 철저하게 동적으로 확장할 수 있도록 설계되었으며, 다른 언어를 포함 하기 보다는 tcl 문법과 개념을 바탕으로 개발된 것으로써 강력한 오브젝트 프로그래밍 시스템에 비해 간결하고 이식이 가능한 구조를 갖고 있다 키워드 -Class: class 정의 -instproc: class 의 메소드 정의 -instvar: class 의 멤버 변수정의 -self: 자신을 가리키는 객체 ( this 와 같음 ) -next: next-most shadowed method( 자신에서 가장 가까운 instance procedure) -new: 객체 생성후 레퍼런스 리턴 (c++ new 와 유사함 )

(2) ns-2 에서 링크와 큐 (queue) 구조 및 추적 (trace) 파일 포맷 1) 링크 단방향 링크 (Simplex Link) 단방향 링크는 한쪽 방향으로만 데이터를 보낼 수 있는 링크의 형태로 ns 명령과 옵션에 의 해서 대역폭, 전송지연, 링크의 큐 형태가 결정된다. 노드 사이에 임의의 대역폭과 전송지연, 그리고 해당 링크의 큐 형태를 결정하는 ns 명령어는 다음과 같은 형태를 갖는다. - $ns simplex-link node1 node2 bw delay queue_type 위 명령은 node1 과 node2 사이에 대역폭 bw, 전송지연 delay, 큐는 queue_type 에 의해서 선 택되는 큐 (queue) 의 형태를 갖는 단방향 링크를 생성하도록 한다. Queue_type 에 의해 정의 될 수 있는 큐 형태로는 Drop-Tail, RED, CBQ, WFQ, SFQ 등이 있으며, 앞의 큐 형태에서 변 화된 큐도 사용된다. 일반적으로 ns 시뮬레이터에는 각 옵션에 대한 디폴트 값이 정해져 있 다. 대역폭의 디폴트 값은 1.5Mbits/sec 로 정의되어 있고 시간지연의 디폴트 값은 100ms 로 정해져 있지만, 이러한 옵션은 사용자가 원하는 값으로 변화시켜 사용할 수 있다. ( 그림 1) 은 노드 n0 와 노드 n1 사이에 대역폭이 8Mbps, 전송지연이 0.1ms, 그리고 drop-tail 큐 형태를 갖는 단방향 링크를 설정하는 예를 보여주고 있다.

양방향 링크 (Duplex Link) 한쪽 방향으로만 데이터를 보낼 수 있는 단방향 링크와는 달리 양쪽 방향으 로 데이터를 전송할 수 있는 링크를 양방향 링크라고 정의한다. 링크 특성을 정의하기 위해 사용되는 옵션은 단방향 링크에서와 같다. 양방향 링크를 정 의하기 위해 사용되는 명령어는 다음과 같다. - $ns duplex-link node1 node2 bw delay queue_type 위 명령은 node1 과 node2 사이에 대역폭 bw, 전송지연 delay, 큐는 queue_type 에 의해서 선택되는 큐 형태를 갖는 양방향 링크를 생성하도록 한다. 각 옵션에 대한 디폴트 값과 큐 형태는 단방향 링크의 경우와 동일하다. ( 그림 2) 는 노드 r0 와 노드 r1 사이에 대역폭이 800Kbps, 전송지연이 100ms, 그리고 drop-tail 큐 형태를 갖는 양방향 링크를 설정하는 예를 보여주고 있다.

2) 큐 (queue) 큐란 ? 각 노드들 사이 link 구간의 문이라 봐도 무관. 즉 상단 그림에서 node I 와 j 사이에 링크 i-j 의 양 끝 부분 ( 노드 內 연결된 부분 ) 으로 노드 I 에서 packet 이 노드 j 를 거치는 과정상 패킷에 발생된 event 를 구체적으로 표현 해줄 수 있다 3) trace 파일 포맷 ns-2 에서 각 packet 들이 각 node 와 큐를 지나면서 발생된 사건 (event) 정보를 하 나의 레코드내에 관리하며 예를 들면 하단의 그림과 같다. 열을 기준으로 봤을 때, 1 열은 이벤트의 종류 ( 상단의 파란글씨 ), 2 열은 이벤트 발 생시간, 3 열은 송신노드 번호, 4 열은 수신노드 번호, 5 열은 패킷 종류, 6 열은 패킷 크기, 7 열은 구분자, 8 열은 흐름 식별자, 등등 이 된다

(3) ns-2 에서 트래픽을 생성하는 기본 방법 네 가 지와 ftp 사용 방법 1) exponential ON/OFF traffic ON 동안은 패킷크기 (size) 에 정의된 크기의 패킷을 속도 (rate) 에 정의된 데이 터 전달속도로 동일한 시간 간격으로 발생시키고, OFF 동안은 트래픽 발생 을 중단한다. ON 과 OFF 의 지속시간은 서로 독립적인 지수분포를 따르며, 이 들의 평균은 각각 burst 와 idle 에 정의된 값으로 설정된다. 아래 그림에서 볼 때 평균 burst 시간 =1/α, 평균 idle 시간 =1/β 이 된다.

2) Pareto ON/OFF traffic exponential ON/OFF traffic 과 동일하나 ON 과 OFF 의 지속시간이 서로 독립 적인 파레토 분포를 따르며, 이들의 평균은 각각 burst 와 idle 값에 의해 결 정된다. 파레토 분포는 지수분포보다 tail 분포의 값이 큰 특징을 갖는데, shape 에 의해 파레토 분포의 구체적 특성이 결정된다. 그림 5.3 에서 shape=α 가 된다. ON 동안은 패킷크기 (size) 에 정의된 크기의 패킷을 속도 (rate) 에 정의된 데이터 전달속도로 동일한 시간 간격으로 발생시키고, OFF 동안은 트래픽 발생을 중단한다.

3) CBR traffic 패킷크기 (size) 에 정의된 크기의 패킷을 속도 (rate) 에 정의된 데이터 전달속도로 동일한 시간 간격으로 발생시킨다. 다시 말해서 exponential ON/OFF 에서 OFF 구간이 없는 경우와 동일하다. 참고로 CBR traffic 하에서 발생 패킷간 시간 간격은 일정하게 또는 램덤하게 할 수 있다. 4) Tracefile traffic 실제 측정한 트래픽 데이터로 인가할 트래픽을 생성하는 방법이다

5) 기본 트래픽 흐름 생성 (4 가지 ) 이번 실험을 위해 4 가지 기본 트래픽 흐름 ( 세션 ) 생성 함수를 다음과 같이 procedure 로 구성하였다 ns 는 simulator object, src 와 dst 는 발. 착신 노드번호, burst 와 idle 은 트 래픽이 발생 / 중단되는 구간의 평균 시간간격, size 는 패킷의 크기, rate 는 평균 데이터 전달 속도, 그리고 fid 는 흐름 id 로 nam 에서 흐름 의 색깔을 구분하기 위한 것이다 proc create_exp_flow {ns src dst burst size idle rate fid } proc create_pareto_flow {ns src dst burst size idle rate shape fid} proc create_cbr_flow {ns src dst size rate fid} proc create_tracefile_flow {ns src dst tracefile fid}

6) ftp 흐름생성 ns-2 에서는 ftp 와 telnet 응용을 제공하고 있는데, 본 과목에서는 ftp 를 사용하여 다운로드, 업로드 속도를 측정한다. ftp 흐름 ( 세션 ) 생성 함수를 다음과 같이 procedure 로 구성하였다. proc create_ftp_flow {ns src dst fid} 여기서 ns 는 simulator object, src 와 dst 는 발. 착신 노드번호이다. fid 는 흐름 id 로 nam 에서 흐름의 색깔을 구분하기 위한 것이다. 프로그램 코드와 사용 예는 샘플 tcl 프로그램을 참조하기 바란다. 참고로 ns-2 에서 TCP 가 수용할 수 있는 최대 패킷크기 packetSize_ 는 1000 바이트의 기본값을 갖는다. 이 값을 어떤 값, 예로 1500 바이트로 변경하려면 다음과 같이 한다. Agent/TCP set packetSize_ 1500

5. 실습 결과 및 고찰 1) 샘플네트워크 생성 및 일반 트래픽 생성

(2) 큐 크기 조정 및 패킷 DROP 확인

(3) 동적 트랙픽 속도 계산 및 그래프 작성

(4) 패킷 DROP 율 계산 (5) ftp uproad 속도 계산

조원역할 및 활동내역 이연화 ( 조장 ) ns-2 에서 트래픽을 생성하는 기본 방법 네 가지 학습과 보고 서 작성 및 발표 김성태패킷 drop 비율 ( 손실율 ) 및 ftp 속도 계산 awk 프로그램 작성 임시목 ftp 사용 방법과 shell 프로그램 참조 최서수 ns-2 에서 링크와 큐 (queue) 구조 및 추적 (trace) 파일 포맷 학습 김진현 otcl 과 샘플 tcl 프로그램 이해 참여원 활동 내역