KR101407057B1 - 트래픽 생성 방법 및 트래픽 생성 장치 - Google Patents

트래픽 생성 방법 및 트래픽 생성 장치 Download PDF

Info

Publication number
KR101407057B1
KR101407057B1 KR1020100107228A KR20100107228A KR101407057B1 KR 101407057 B1 KR101407057 B1 KR 101407057B1 KR 1020100107228 A KR1020100107228 A KR 1020100107228A KR 20100107228 A KR20100107228 A KR 20100107228A KR 101407057 B1 KR101407057 B1 KR 101407057B1
Authority
KR
South Korea
Prior art keywords
packet
traffic
idt
time interval
memory
Prior art date
Application number
KR1020100107228A
Other languages
English (en)
Other versions
KR20120046890A (ko
Inventor
신광식
김항기
박창준
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020100107228A priority Critical patent/KR101407057B1/ko
Priority to US13/218,009 priority patent/US20120110166A1/en
Publication of KR20120046890A publication Critical patent/KR20120046890A/ko
Application granted granted Critical
Publication of KR101407057B1 publication Critical patent/KR101407057B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

트래픽 생성 방법 및 트래픽 생성 장치가 개시되어 있다. 트래픽 생성 방법은 서버와 클라이언트 사이에 발생하는 트래픽을 분석하고 모델링하는 단계와 분석을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계를 포함할 수 있다. 따라서, 다양한 패턴의 트래픽을 복잡도가 낮은 방법을 이용해 정확하게 모델링 할 수 있어 기존의 서버 테스팅 방법보다 간단한 방법으로 정확한 서버 테스팅을 실시할 수 있다.

Description

트래픽 생성 방법 및 트래픽 생성 장치{METHODS OF GENERATING TRAFFIC AND APPARATUSES OF GENERATING TRAFFIC}
본 발명은 트래픽 생성 방법 및 트래픽 생성 장치에 관한 것으로 더욱 상세하게는, 서버 테스트를 하기 위한 트래픽 생성 방법 및 트래픽 생성 장치에 관한 것이다.
서버와 클라이언트를 연결하는 네트워크에서 발생되는 트래픽을 모델링하여 서버 테스팅을 하는 방법으로서 단순 패킷 스트림(Simple Packet Stream)을 사용하는 방법, 특정 서버 어플리케이션에서 발생되는 특징적인 패킷을 재복원하는 방법 등과 같은 여러 가지 방법들이 사용되고 있다.
네트워크 테스팅 툴인 iperf에서 사용되는 패킷 스트리밍 방법은 일정한 간격으로 분리된 패킷을 생성하여 네트워크 상태를 테스팅 하는 방법으로서, RFC 2544와 RFC 2889에서 권고된 표준 라우터 성능 테스트에서 사용된다. 또 다른 네트워크 테스팅 방법으로는 무한 FTP 소스(infinite FTP source)를 사용하여 네트워크 트래픽을 모델링하는 방법이 있다.
이러한 기존의 네트워크 테스팅 방법은 현재 네트워크 환경에서 발생되는 패킷 스트림의 다양성 고려한 테스트를 하기에는 부족한 점이 많다.
특정 어플리케이션에 특성화된 트래픽을 생성하여 네트워크를 테스팅하는 방법은 실제 어플리케이션에서 발생되는 트래픽의 특성을 통계치로 산출하여 실제 어플리케이션에서 발생하는 트래픽 특성을 고려하여 테스팅하는 방법을 사용한다.
SURGE(Scalable URL Reference Generator)는 HTTP(Hyper Text Transfer Protocol) 워크로드를 생성하는 어플리케이션 특성화된 네트워크 테스팅 방법이다. 이러한 HTTP 워크로드 생성 방법은 워크로드의 변화에 따라 어떻게 서버와 네트워크가 응답하는지에 대해 알 수 있다. 실제로 웹 서버는 클라이언트에 의해 발생된 다양한 요구들을 처리해야 하기 때문에, SURGE는 서버에 엑세스하는 실제 유저들을 모방하는 실제 웹 워크로드 생성 툴을 생성하기 위해 파일 사이즈 분포(File Size Distribution), 요청 사이즈 분포(Request Size Distribution), 임베딩된 파일 레퍼런스(Embedded File Reference), 웹서버 사용에 있어 개별 사용자의 아이들 기간(Idle Periods of Individual Users of Web server usage) 등을 다양한 변수를 적용하여 네트워크 테스팅을 실시한다.
Tmix는 ns-2 시뮬레이터에서 사용되는 트래픽 생성 시스템이다. Tmix는 실제의 네트워크에서 발생되는 트래픽처럼 동시 트래픽을 생성하여 네트워크를 테스팅하기 위해 사용될 수 있다. Tmix는 웹이 진화함에 따라 제공되는 서비스의 형태인 피투피(Peer to Peer) 및 원격 이메일 접속과 같은 웹서비스의 트래픽 모델로서 활용되어 실제와 유사한 서버 테스팅을 할 수 있는 시뮬레이터로서 활용된다.
D-ITG(Distributed Internet Traffic Generator)는 여러 가지 전송 계층 프로토콜(TCP, UDP, ICMP, DNS, Telnet, VoIP)에 전송되는 트래픽을 시뮬레이션 할 수 있다.
D-ITG는 패킷 사이즈와 패킷 사이의 생성 시간(Inter departure Time)을 이용해 실제로 생성되는 트래픽의 형태를 정확하게 모델링할 수 있다. 또한, D-ITG는 One-Way -Delay(OWD)와 Round-Trip-Time(RTT) 측정, 패킷 손실 측정, 지터(jitter) 및 처리량 측정 등을 수행할 수 있다.
Tmix와 D-ITG와 같은 패킷 생성 장치는 전통적인 인터넷 네트워크에서 발생할 수 있는 트래픽 특성을 반영한 트래픽을 생성하기 위한 것이다. 하지만, 현재 서비스되는 온라인 게임에서 발생되는 트래픽은 데이터 송신자와 수신자 사이에 상호 작용이 활발하기 때문에 이러한 전통적인 인터넷 트래픽의 특성과 달리 온라인 게임에서 발생되는 패킷의 사이즈는 작고 주기적인 특성을 가지고 있다. 하지만 기존에 존재하는 서버 테스팅을 위한 시뮬레이션 툴은 이러한 온라인 게임에서 발생하는 패킷의 특성을 반영한 트래픽을 생성하지 못한다.
따라서, 본 발명의 제1 목적은 온라인에서 제공되는 특정한 서비스에서 발생할 수 있는 트래픽의 특성을 반영하여 트래픽을 발생시키는 방법을 제공하는 것이다.
또한, 본 발명의 제2 목적은 온라인에서 제공되는 특정한 서비스에서 발생할 수 있는 트래픽의 특성을 반영하여 트래픽을 발생시키는 장치를 제공하는 것이다.
상술한 본 발명의 제1 목적을 달성하기 위한 본 발명의 일 측면에 따른 트래픽 생성 방법은 서버와 클라이언트 사이에 발생하는 트래픽을 분석하고 모델링하는 단계와 상기 분석을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계를 포함할 수 있다. 상기 서버와 클라이언트 사이에 발생하는 트래픽을 분석하고 모델링하는 단계는 상기 서버와 상기 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 패킷의 특성을 분석하는 단계와 상기 수집된 패킷을 소정의 기준을 기초로 적어도 두개의 집합으로 분류하고 상기 집합 중 적어도 하나의 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 수행하는 단계를 포함할 수 있다. 상기 서버와 상기 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 전체 패킷의 특성을 분석하는 단계는 패킷 사이즈에 따라 분포된 트래픽의 정보를 분석하는 단계와 패킷의 발생 시간 간격 정보에 따라 분포된 트래픽의 정보를 분석하는 단계를 포함할 수 있다. 상기 소정의 기준은 트래픽 밀도의 이동 평균값(Moving Average Value)일 수 있다. 상기 분석을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 동기화하여 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계는 소정의 메모리에 접근하여 상기 메모리에 저장 공간이 있는지 여부를 판단하는 단계, 상기 메모리에 저장 공간이 있는 경우, 상기 발생 시간 간격 정보와 상기 패킷을 생성하는 단계와 생성된 상기 발생 시간 간격 정보와 상기 패킷을 결합한 후, 상기 메모리에 저장하고, 상기 메모리에 저장 공간이 없는 경우 상기 메모리를 제외한 다른 메모리에 접근하여 상기 다른 메모리에 저장 공간이 있는지 여부를 판단하는 단계를 포함할 수 있다. 상기 분석을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 동기화하여 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계는 소정의 메모리에 접근하여 상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는지 여부를 판단하는 단계, 상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는 경우, 상기 메모리에서 상기 패킷과 상기 발생 시간 간격 정보를 산출하는 단계와 상기 발생 시간 간격 정보를 기초로 패킷을 전송하기 위한 타이머를 설정하여 상기 패킷을 발생 시간 간격 정보에 따른 시간 간격으로 전송 단계를 포함할 수 있다. 상기 분석을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 동기화하여 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계는 상기 패킷이 전송되는 전송 프로토콜을 구별하여 상기 전송 프로토콜에 맞는 소켓의 속성을 정의하는 단계를 더 포함할 수 있다.
또한 상술한 본 발명의 제2 목적을 달성하기 위한 본 발명의 일 측면에 따른 트래픽 생성기는 서버와 클라이언트 사이에 발생하는 트래픽을 분석하고 모델링하는 분석 모델부, 상기 분석 모델부로부터 제공된 트래픽 정보를 기초로 패킷 및 IDT를 생성하는 패킷-IDT 생성부와 상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-IDT 전송부를 포함할 수 있다. 상기 분석 모델부로부터 제공된 트래픽 정보를 기초로 패킷 및 IDT를 생성하는 패킷-IDT 생성부는 상기 분석 모델부로부터 제공된 트래픽 정보에 기초하여 패킷을 생성하는 패킷 생성부, 상기 분석 모델부로부터 제공된 트래픽 정보에 기초하여 발생 시간 정보를 생성하는 발생 시간 간격 정보 생성부와 상기 패킷 생성부에서 생성된 상기 패킷과 상기 발생 시간 간격 정보 생성부에서 생성된 상기 발생 시간 간격 정보를 결합하여 동기화 하는 패킷-발생 시간 정보 결합부를 포함할 수 있다. 상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-패킷-발생 시간 간격 전송부는 패킷-발생 시간 정보 결합부에서 결합된 상기 패킷과 상기 발생 시간 정보를 저장하는 패킷-발생 시간 간격 저장 메모리와 상기 패킷-발생 시간 간격 저장 메모리에 저장된 상기 발생 시간 간격 정보를 읽어 상기 패킷의 전송 간격을 결정하는 타이머 이벤트 핸들러를 포함할 수 있다. 상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-패킷-발생 시간 간격 전송부는 상기 패킷-발생 시간 간격 저장 메모리에서 추출되어 전송될 상기 패킷의 전송 프로토콜을 구별하고 패킷을 전송하는 소켓의 속성을 정의하는 전송 프로토콜 분석부를 더 포함할 수 있다. 상기 분석 모델부는 상기 서버와 상기 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 전체 패킷의 특성을 분석하고 상기 전체 패킷을 소정의 기준을 기초로 적어도 두개의 집합으로 분류하고 상기 집합 중 적어도 하나의 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 할 수 있다. 상기 서버와 상기 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 전체 패킷의 특성을 분석하고 상기 전체 패킷을 소정의 기준을 기초로 적어도 두개의 집합으로 분류하고 상기 집합 중 적어도 하나의 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 하는 것은 패킷 사이즈에 따라 분포된 트래픽의 정보를 분석하고 패킷의 발생 시간 간격에 따라 분포된 트래픽의 정보를 분석하여 상기 전체 패킷을 소정의 기준을 기초로 적어도 두개의 집합으로 분류하고 상기 집합 중 적어도 하나의 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 할 수 있다. 상기 소정의 기준은 트래픽 밀도의 이동 평균값(Moving Average Value)일 수 있다. 상기 패킷-IDT 생성부는 상기 패킷과 상기 발생 시간 간격 정보를 저장하기 위한 메모리에 접근하고 상기 메모리에 저장 공간이 있는 경우, 상기 발생 시간 간격 정보와 상기 패킷을 생성하고 상기 발생 시간 간격 정보와 상기 패킷을 결합한 후 상기 메모리에 저장하고 상기 메모리에 저장 공간이 없는 경우 상기 메모리를 제외한 다른 메모리에 접근하여 상기 다른 메모리에 저장 공간이 있는지 여부를 판단할 수 있다. 상기 패킷-IDT 전송부는 상기 패킷과 상기 발생 시간 간격 정보를 저장한 메모리에 접근하고 상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는 경우 상기 메모리에서 상기 패킷과 상기 발생 시간 간격 정보를 산출하고, 상기 패킷이 전송되는 전송 프로토콜을 구별하여 상기 전송 프로토콜에 맞는 소켓의 속성을 정의한 후, 상기 발생 시간 간격 정보를 기초로 패킷을 전송하기 위한 타이머를 설정하여 상기 패킷을 상기 발생 시간 간격 정보에 따른 시간 간격으로 전송할 수 있다.
상술한 바와 같이 본 발명의 실시예에 따른 트래픽 생성 방법 및 트래픽 생성 장치에 따르면, 기존의 트래픽을 분석하는 방법보다 좀 더 단순화된 방법 사용하여 특정한 서비스가 네트워크를 통해 제공될 때 발생하는 트래픽을 분석하여 모델링 할 수 있고, 분석된 트래픽의 특성을 기초로 트래픽 생성기를 통해 실제 특정 온라인 서비스를 제공시 네트워크에서 발생되는 트래픽과 유사한 트래픽을 발생시킬 수 있다.
따라서, 다양한 패턴의 트래픽을 복잡도가 낮은 방법을 이용해 정확하게 모델링 할 수 있어 기존의 서버 테스팅 방법보다 간단한 방법으로 정확한 서버 테스팅을 실시할 수 있다.
도 1은 Left4Dead(L4D)의 IDT 분포를 나타낸 히스토그램이다.
도 2는 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 3은 L4D에서 발생하는 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 4는 WOW에서 발생하는 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 5는 본 발명의 일실시예에 따른 트래픽 생성기를 나타낸 개념도이다.
도 6은 본 발명의 일실시예에 따른 분석 모델부에서 온라인 게임의 트래픽을 모델링하고 생성하는 방법을 나타낸 개념도이다.
도 7은 본 발명의 일실시예에 따른 트래픽 생성기에서 패킷을 생성하는 방법을 나타낸 순서도이다.
도 8은 본 발명의 일실시예에 따른 패킷-IDT 생성부에서 패킷을 생성하는 방법을 나타낸 순서도이다.
도 9는 본 발명의 일실시예에 따른 패킷-IDT 전송부에서 패킷을 전송하는 방법을 나타낸 순서도이다
도 10은 본 발명의 일실시예에 따른 분석 모델부를 이용해 시뮬레이션한 L4D(Left4Dead)의 IDT 분포를 나타낸 히스토그램이다.
도 11은 본 발명의 일실시예에 따른 수신단에서 측정한 트래픽 생성기를 사용하여 생성한 L4D의 IDT 분포를 나타낸 히스토그램이다.
도 12는 본 발명의 일실시예에 따른 분석 모델부를 이용해 시뮬레이션한 L4D(Left4Dead)의 패킷 사이즈(byte) 분포를 나타낸 히스토그램이다.
도 13은 본 발명의 일실시예에 따른 수신단에서 측정한 트래픽 생성기에서 생성되는 L4D의 패킷 사이즈(byte) 분포를 나타낸 히스토그램이다.
도 14는 본 발명의 일실시예에 따른 분석 모델부를 이용해 예측한 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 15는 본 발명의 일실시예에 따른 트래픽 생성기를 사용해 수신단에서 측정한 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 16은 본 발명의 일실시예에 따른 분석 모델부를 이용해 예측한 WOW의 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 17은 본발명의 일실시예에 따른 트래픽 생성기에서 생성되는 WOW의 패킷 사이즈 분포를 수신단에서 측정한 것을 나타낸 히스토그램이다.
18은 본 발명의 일실시예에 따른 네이글 알고리즘을 사용하지 않고 트래픽 생성기에서 생성된 트래픽의 IDT 분포를 나타내는 히스토그램이다.
도 19는 본 발명의 일실시예에 따른 네이글 알고리즘을 사용하지 않고 트래픽 생성기에서 생성된 트래픽의 패킷 사이즈 분포를 나타내는 히스토그램이다.
도 20은 본 발명의 일실시예에 따른 L4D에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 21은 본 발명의 일실시예에 따른 L4D에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
도 22는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용한 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 23은 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용한 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
도 24는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용하지 않은 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 25는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용하지 않은 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
이하, 본 발명의 일실시예는 설명의 편의상 온라인 게임의 서버와 클라이언트 사이에서 생성되는 트래픽을 시뮬레이션하는 방법에 관한 것 이지만, 이러한 온라인 게임 트래픽 시뮬레이션 외에도, 본 발명의 본질에서 벋어나지 않는 한, 본 발명은 게임 서버가 아닌 웹 서버, ERP 서버 등 다양한 서버 테스트 기술 분야에서 트래픽 생성을 하는 방법 및 장치로 활용될 수 있고 이러한 활용은 본 발명의 권리범위에 속한다.
즉, 이하 본 발명에서 발명을 개시하기 위해 온라인 게임 패킷과 같은 특정한 분야에 한정적인 용어를 사용하지만 이는 본 발명의 설명의 편의를 위한 것으로서 본 발명을 활용하여 서버 테스팅을 할 수 있는 일반적인 서버와 클라이언트 사이의 네트워크에서 발생되는 패킷도 포함되는 개념이다.
또한 이하 본 발명의 실시예에서 사용되는 IDT(Inter Departure Time)는 패킷이 발생되는 간격을 말하는 것으로서 발생 시간 간격 정보는 IDT와 동일한 의미이다.
도 1 내지 도 4는 다양한 장르의 게임에서 발생할 수 있는 패킷 사이즈와 발생 시간 간격 정보(Inter Departure Time, 이하 IDT라고 함.)의 분포를 나타낸 히스토그램이다.
도 1 내지 도 4에서는 다양한 장르의 게임 중 Left4Dead(L4D)와 WOW(World of Warcraft)를 선택하여 패킷 사이즈와 IDT를 측정하여 히스토그램을 이용하여 이들의 분포를 나타낸 것이다.
Left4Dead(이하, L4D라고 함)는 Valve Corporation에 의해 제작된 FPS(First-Person Shooter) 장르의 게임이고 World of Warcraft(이하, WOW라고 함)는 Blizard사에서 제작한 MMORPG(Massive Multiplayer Online Role Playing Game) 장르의 게임이다.
FPS 장르는 1인칭 슈팅 게임으로 가상 환경 속에서 게임 상의 캐릭터의 시점을 통해 전개되는 게임의 형태로서 일인 또는 팀 플레이로 상호 대전하는 형태를 가진다. FPS 장르의 게임에서는 클라이언트와 서버 사이에 패킷의 처리 속도가 빨라야 하기 때문에 전송 계층으로 UDP가 이용할 수 있다.
MMORPG는 가상 공간에서 다수의 사람들이 서로 상호 작용을 하면서 특정한 역할을 수행하는 대규모 다중 사용자 온라인 롤플레잉 게임 또는 다중 접속 역할 수행 게임을 말한다.
TCP는 연결 지향적이고 전송된 패킷에 대한 신뢰도가 높은 특성을 가지기 때문에, MMORPG 장르에 잘 맞고 긴 세션 동안 에러의 증식을 막을 수 있어 WOW와 같은 MMORPG 장르의 게임에서는 TCP가 전송 프로토콜로 이용될 수 있다.
도 1은 Left4Dead(L4D)의 IDT 분포를 나타낸 히스토그램이다.
도 1을 참조하면, L4D의 IDT는 대부분 50 ms보다 작은 값을 가지는 것을 볼 수 있다.
도 2는 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 2를 참조하면, WOW의 IDT는 L4D의 IDT와 다르게 200ms의 값에서 다수 분포하는 것을 볼 수 있다.
도 1과 도 2를 비교하면, L4D의 경우, IDT가 WOW에 비해서 상당히 짧은 것을 알 수 있다.
WOW와 달리 L4D는 FPS 장르의 게임으로서 서버와 클라이언트 사이의 상호 작용에 민감한 특성을 가지기 때문에 낮은 지연성(Latency)과 점 대 점(Point to Point) 통신뿐만 아니라 실시간 게임 로직을 가능하게 하기 위한 광대역 채널이 요구된다. 이러한 FPS 장르에서 발생되는 패킷의 특성으로 인해 클라이언트가 손실된 패킷을 재전송하기 위해 걸리는 시간보다 더 짧은 시간 간격에서 패킷을 전송해야 하므로 패킷은 UDP를 통해 전송된다.
즉, FPS 장르의 게임의 서버와 클라이언트 사이에 상호 작용이 빈번한 특성으로 인해 패킷이 발생되는 간격인 IDT가 WOW와 같은 MMORPG 게임에 비해 짧은 특성을 가진다.
도 3은 L4D에서 발생하는 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 3을 참조하면, L4D에서 발생하는 대부분의 패킷의 사이즈(Byte)는 100 바이트에서 150 바이트 사이의 값을 가진 것을 알 수 있다.
도 4는 WOW에서 발생하는 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 4를 참조하면, WOW에서 발생하는 대부분의 패킷 사이즈(byte)는 50 바이트에서 70 바이트 사이의 값을 가진 것을 알 수 있다.
도 3과 도 4를 비교하면 WOW의 패킷 사이즈는 L4D의 패킷 사이즈보다 작다. WOW와 같은 MMORPG 장르의 게임은 에러 회복을 하기 위해 긴 지연 시간을 가지는 TCP 연결을 사용하기는 하지만, 작은 패킷 사이즈를 사용함으로서 RTT(Round Trip Time)를 감소시킨다. 이러한 MMORPG 장르 게임의 특징으로 인해 발생되는 패킷 사이즈는 L4D와 같은 FPS 장르와 달리 작은 패킷 사이즈를 가질 수 있다.
도 1 내지 도 4를 참조하면, 온라인 게임에서 발생되는 패킷은 그 특성이 상이하고 변화가 심하기 때문에 각 구간별로 랜덤 분포 함수를 이용하여 트래픽 분포를 분리하는 방법을 사용하는 기존의 네트워크 트래픽 모델링 방법을 사용할 경우, 분리되어야 할 데이터 구간으로 많아질 수 있다. 따라서, 종래의 네트워크 트래픽 모델링 방법을 사용할 경우 네트워크 트래픽 모델링의 복잡도가 높아진다.
본 발명의 일실시예에 따르면, 패킷의 특성에 따라 패킷을 분류하여 모델링하는 방법을 사용하는 기존의 네트워크 모델링 방법과 다른 새로운 패킷 모델링 방법을 사용함으로서 모델링의 복잡도를 감소시키면서 정확한 패킷 모델링을 수행할 수 있다.
도 5는 본 발명의 일실시예에 따른 트래픽 생성기를 나타낸 개념도이다.
도 5를 참조하면, 트래픽 생성기는 분석 모델부(500), IDT 생성기(510), 패킷 생성기(520), IDT-패킷 결합부(530), IDT 메모리(540-1, 540-2), 패킷 메모리(550-1, 550-2), 전송 프로토콜 분석부(555), 타이머 이벤트 핸들러(560)를 포함하여 구성될 수 있다.
트래픽 생성기를 구성하는 각 구성부는 설명의 편의상 개별적인 구성으로 표현했으나 각 구성부는 본 발명의 본질에서 벋어나지 않는 한 복수의 구성부가 하나의 구성부로 구현되거나, 하나의 구성부가 복수의 구성부로 구현될 수 있다.
또한 IDT 메모리(540-1, 540-2), 패킷 메모리(550-1, 550-2)의 경우, 메모리로서 큐와 스택 등과 같은 메모리를 사용할 수 있다.
분석 모델부(500)는 온라인 게임의 트래픽을 모델링할 수 있다.
도 6은 본 발명의 일실시예에 따른 분석 모델부(500)에서 온라인 게임의 트래픽을 모델링하고 생성하는 방법을 나타낸 개념도이다.
도 6을 참조하면, 분석 모델부(500)는 온라인 게임의 트래픽을 모델링하기 위해 측정된 패킷의 통계를 산출할 수 있다(단계 S600).
온라인 게임의 트래픽을 모델링하기 위해 측정된 패킷의 통계를 산출해야한다. 트래픽 수집 모듈을 사용해 온라인 게임에서 발생하는 패킷을 수집 할 수 있고, 수집된 패킷을 통계화하여 확률 밀도 함수(PDF, Probability density Function)와 같은 특정 함수로 표현할 수 있다. 현재 서비스 중인 대다수의 온라인 게임에서 발생되는 패킷의 분포는 불규칙한 성향이 크기 때문에 온라인 게임 패킷에서 발생되는 모든 패킷을 표현한 확률 밀도 함수는 계산의 복잡도가 높고 모델링하기가 어렵다.
불규칙한 패킷 분포를 단순화하여 모델링하기 위해, 패킷 분포 도메인을 변환할 수 있다(단계 S610).
트래픽 밀도의 이동 평균값(Moving Average Value)과 같은 소정의 값을 기준으로 전체 패킷 데이터 집합을 소정의 값을 만족하는 제1 데이터 집합과 소정의 값을 만족하지 않는 제2 데이터 집합으로 분리할 수 있다. 분리된 집합 중 소정의 값 이상을 가지는 제1 데이터 집합만을 이용해 모델링을 실시하는 경우, 전체 패킷 데이터 집합을 좀 더 단순화하여 모델링할 수 있다.
제1 데이터 집합만을 이용한 모델링을 수행할 경우, 제2 데이터 집합이 기존의 전체 패킷 데이터 집합을 표현하고 있는 원시 도메인에서 제거되기 때문에 원시 도메인에서 제1 데이터 집합만이 표현된 확률 밀도 함수는 불연속성을 가질 수 있다. 이러한 불연속성을 없애기 위해서 기존의 전체 패킷 데이터 집합을 표현한 원시 도메인에서 제1 데이터 집합만을 표현한 새로운 제1 데이터 집합 도메인으로 도메인을 변환하는 방법을 사용할 수 있다.
본 발명의 일실시예에 따르면, 분석 모델부(500)는 제1 데이터 집합만을 사용하지만, 필요한 경우 실제에 가까운 온라인 게임의 트래픽 모델링을 수행하기 위해 제2 데이터 집합을 제1 데이터 집합과 함께 사용하여 트래픽을 모델링할 수 있다.
또한 본 발명의 일실시예에 따르면, 전체 패킷 데이터 집합을 제1 데이터 집합과 제2 데이터 집합과 같이 소정의 기준으로 두 집합으로 분류할 수 있지만, 본 발명의 본질에서 벋어나지 않는 한 트래픽 모델링의 단순화를 위해서 적어도 두 개 이상의 집합으로 패킷 데이터의 집합을 나누어 모델링에 사용할 수 있고 이러한 둘 이상의 집합으로 패킷 데이터의 집합을 나누어 모델링하는 방법 또한 본 발명의 권리 범위에 포함된다.
제1 데이터 집합 도메인의 제1 데이터 집합을 표현한 분포 그래프에서 피크를 찾고, 곡선 맞춤을 통해, 제1 데이터 집합을 이용한 트래픽 모델링을 할 수 있다(단계 S620).
제1 데이터 집합은 곡선 맞춤을 이용해 수학 모델, 확률 밀도 함수 모델, 히스토그램 모델 등 트래픽 분석의 목적에 따라 다양한 형태로 표현될 수 있다.
모델링을 통해 얻어진 트래픽 특성을 기초로 서버의 네트워크 부하를 테스트하기 위한 트래픽의 예상 확률 분포 함수를 생성할 수 있다(단계 S630).
모델링한 트래픽 특성을 기초로 트래픽 생성 모듈을 사용해 확률 밀도 함수를 생성하고 제1 데이터 집합 도메인에서 제1 데이터 집합만으로 표현된 확률 밀도 함수를 전체 패킷 데이터 집합으로 표현하기 위한 변환 테이블을 이용해 도메인 변환을 수행할 수 있다. 이러한 과정을 통해 온라인 게임 트래픽의 예상 확률 밀도 함수를 생성할 수 있다.
예상 확률 분포 함수는 온라인 게임에서 생성되는 트래픽의 특성을 표현할 수 있는 IDT, 패킷 사이즈 등과 같은 것의 확률 밀도 함수가 될 수 있고 이뿐만 아니라 트래픽의 특성을 표현할 수 있는 다른 변수의 확률 밀도 함수가 될 수 있다.
본 발명의 일실시예에 따르면, 이러한 분석 모델부는 온라인 게임 트래픽을 모델링하기 위한 하나의 예시로서 이러한 방법은 출원 번호 2010-0058220 "온라인 게임 트래픽 모델링을 위한 변환적 접근 방법"에 개시되어 있다.
하지만, 전술한 것은 하나의 실시예로서 본 발명은 이러한 트래픽 분석 및 모델링 방법에 한정되지 않고 본 발명의 본질에서 벋어나지 않는 한 다른 방법을 사용하여 네트워크상에서 발생하는 트래픽을 분석하여 모델링하는 방법을 사용할 수 있다.
IDT 생성기(510)는 타이머 이벤트 핸들러(560)에서 패킷의 생성의 간격을 조절할 수 있도록 IDT를 생성할 수 있다.
패킷 생성기(520)는 패킷 사이즈로 분류된 특정한 게임에서 발생할 수 있는 패킷을 생성할 수 있다.
IDT-패킷 결합부(530)는 패킷은 패킷과 연관된 IDT에 의해 제어되기 때문에 패킷과 IDT를 결합할 수 있다.
패킷 메모리(550-1, 550-2)는 데이터 블록을 유지할 수 있는 더블 버퍼의 형태로 구현되어 타이머 이벤트 핸들러(560)와 패킷 생성부(520)에서 동시에 접근할 수 있도록 할 수 있다.
IDT 메모리(540-1, 540-2)도 패킷 메모리(550-1, 550-2)와 마찬가지로 타이머 이벤트 핸들러(560)와 IDT 생성부(510)가 동시에 접근할 수 있도록 더블 버퍼의 형태로 구현될 수 있다.
전송 프로토콜 분석부(555)는 전송 계층 프로토콜에 맞는 소켓을 사용하기 위해 전송 프로토콜을 구별하고 패킷을 전송하는 소켓의 속성을 정의할 수 있다.
전송 프로토콜을 분석하여 패킷을 전송시 사용되는 특정 프로토콜(예를 들어, TCP, 또는 UDP)에서 특정 알고리즘의 사용 여부를 결정할 수 있다.
예를 들어, WOW와 같은 MMORPG 게임의 트래픽을 분석하기 위해서는, 전송 프로토콜 분석부에서 WOW에서 사용하는 전송 계층의 프로토콜이 TCP임을 분석할 수 있다. 이러한 전송 프로토콜 분석부(555)의 분석을 기초로 소켓 옵션을 TCP_NODELAY로 설정함으로써, TCP에서 패킷을 전송시 네이글 알고리즘(Nagle Algorithm)을 사용하지 않아 정확한 서버 시뮬레이션을 위한 트래픽이 생성될 수 있다.
타이머 이벤트 핸들러(560)는 IDT 메모리(540-1, 540-2)에 저장된 IDT 정보를 기초로 IDT가 만료된 경우에 활성화되어 패킷을 전송할 수 있도록 하고, 패킷 전송이 끝나면 IDT 메모리(540-1, 540-2)로 부터 다음번 활성을 위한 IDT를 읽어와 타이머를 초기화 할 수 있다. 즉, 타이머 이벤트 핸들러에서는 IDT를 기초로 패킷의 생성 간격을 조절할 수 있다.
트래픽 생성기에 포함되는 각 구성을 이용하여 패킷을 생성하는 방법을 살펴보면, 분석 모델부(500)가 특정 온라인 게임에서 발생할 수 있는 트래픽을 모델링하고, 모델링 결과에 따라 패킷 생성부(520) 및 IDT 생성부(510)를 이용하여 온라인 게임의 발생 패킷 특성에 맞도록 패킷 및 IDT를 생성할 수 있다. 생성된 패킷 및 IDT는 IDT-패킷 결합부(530)에서 하나로 동기화되어 결합될 수 있고, 결합된 IDT와 패킷은 IDT 메모리(540-1, 540-2) 및 패킷 메모리(550-1, 550-2)에 저장될 수 있다. 패킷 메모리(550-1, 550-2)에 저장된 패킷은 타이머 이벤트 핸들러(560)에 의해 IDT 간격에 따라 전송될 수 있다.
도 7은 본 발명의 일실시예에 따른 트래픽 생성기에서 패킷을 생성하는 방법을 나타낸 순서도이다.
도 7을 참조하면, 서버와 클라이언트 사이에서 발생되는 트래픽의 특성을 분석하고 모델링을 할 수 있다(단계 S700)
트래픽의 특성을 분석하기 위해서는 발생되는 모든 패킷 중 일부의 패킷만을 이용해 모델링을 해 트래픽의 예상 확률 밀도 함수를 구하는 방법을 사용할 수 있다. 하지만 이러한 방법은 하나의 실시예로서 본 발명의 본질에서 벋어나지 않는 한 네트워크에서 발생되는 트래픽을 분석하여 모델링할 수 있는 다른 방법을 사용하는 것 또한 본 발명의 권리범위에 포함된다.
모델링을 통해 분석된 트래픽의 특성을 기초로 패킷과 IDT를 생성할 수 있다(단계 S710).
트래픽 분석으로 얻어진 트래픽의 특성을 기초로 이러한 특성을 반영하여 동일한 IDT 분포와 패킷 사이즈 분포를 가지는 트래픽을 생성할 수 있다.
생성된 IDT와 패킷은 결합될 수 있다(단계 S720).
IDT가 만료된 후 패킷을 전송하기 때문에 패킷과 IDT는 하나로 동기화되어 전송되어야 한다.
결합된 IDT와 패킷은 메모리에 저장될 수 있다(단계 S730).
하나로 결합되어 동기화된 패킷과 IDT는 전송될 때 까지 메모리에 저장될 수 있다.
큐에 저장된 IDT-패킷은 전송될 수 있다(단계 S740)
IDT 정보에 의해 타이머 이벤트 핸들러에 타이머가 초기화되고 IDT가 만료된 경우, 패킷이 전송되는 방법을 사용하여 실제의 서버와 클라이언트 사이에서 발생하는 트래픽과 동일하게 트래픽을 생성할 수 있다
도 8과 도9는 본 발명의 일실시예에 따른 패킷-IDT를 생성하고 패킷-IDT를 전송하는 방법을 나타낸 순서도이다.
이하 도 8과 도 9에서 사용되는 패킷-IDT 생성부와 패킷-IDT 전송부는 트래픽 생성기에서 패킷-IDT 생성하는 부분과 패킷-IDT를 전송하는 부분을 분리하여 표현한 것으로 예를 들어, IDT 생성부, 패킷 생성부, IDT-패킷 결합부를 포함한 구성을 패킷-IDT 생성부라는 용어로 정의할 수 있고, IDT 메모리와 패킷 메모리와 타이머 이벤트 핸들러를 포함한 구성부를 패킷-IDT 전송부라고 정의 할 수 있다. 이러한 구분은 편의상 분석 모델부를 제외한 온라인 게임 트래픽 생성기에 포함되는 각 구성부를 기능상 나누어 정의한 것으로서 본 발명의 본질을 벋어나지 않는 한 다른 구성부가 포함되거나 제외된 구성 또는 하나로 합쳐지거나 분리된 구성을 가질 수 있다.
도 8은 본 발명의 일실시예에 따른 패킷-IDT 생성부에서 패킷을 생성하는 방법을 나타낸 순서도이다.
도 8을 참조하면, 패킷-IDT을 생성하기 위해 WRITE 메모리에 접근할 수 있다(단계 S800).
트래픽 생생기에서 사용하는 큐는 이중큐로서 인덱스를 달리하여 WRITE 메모리와 READ 메모리로 구분될 수 있다. 패킷 및 IDT를 생성하는 부분인 패킷 및 IDT 생성부는 WRITE 메모리로 분류된 큐에 생성된 큐를 저장할 수 있고 패킷 및 IDT를 전송하는 부분인 패킷 및 IDT 전송부는 패킷-IDT를 전송하는데 사용하는 큐를 READ 메모리로 분류하여 패킷-IDT 전송에 사용한다. READ 메모리에 저장된 패킷-IDT가 모두 전송된 경우, READ 메모리를 WRITE 메모리로 전환하여 다시 패킷 및 IDT 생성부에서 생성된 패킷 및 IDT를 메모리에 저장할 수 있도록 한다.
따라서, 패킷 및 IDT 생성부가 생성한 패킷 및 IDT를 저장하기 위해 패킷 및 IDT 생성기는 메모리 중 WRITE 메모리를 선택하여 접근해야한다.
WRITE 메모리가 비어있는지 여부를 판단할 수 있다(단계 S810)
패킷-IDT 전송부가 전송에 사용하는 메모리가 READ 메모리에 해당하기 때문에, WRITE 메모리인 경우에도 패킷 생성부에서 생성되어 전송되지 못한 패킷-IDT로 모두 차있는 경우가 있다. 패킷-IDT가 가득 찬 WRITE 메모리는 생성된 패킷-IDT를 저장할 수 없다. 따라서 WRITE 메모리가 비어있는지 여부를 판단할 수 있다.
WRITE 메모리가 비어 있지 않은 경우 비어있는 WRITE 메모리를 찾기 위해 단계 S800으로 돌아갈 수 있다.
WRITE 메모리가 비어있는 경우, IDT와 패킷을 생성할 수 있다(단계 S820).
비어있는 WRITE 메모리에 IDT와 패킷을 저장하기 위해 IDT 생성부와 패킷 생성부에서 각각 IDT와 패킷을 생성할 수 있다.
생성된 IDT와 패킷은 IDT-패킷 결합부에서 동기화되어 결합될 수 있다(단계 S830).
패킷과 IDT는 온라인 게임 패킷을 발생시키는 데 있어서, 생성되는 패킷의 특징을 반영할 수 있는 정보로서 하나의 단위로 생성되어야 하므로 IDT와 패킷은 서로 동기화되어 결합되어야 한다.
동기화된 IDT와 패킷은 WRITE 메모리에 저장될 수 있다(단계 S840).
패킷 생성부에서 생성된 패킷과 IDT 생성부에서 생성된 IDT는 IDT 패킷 결합부에서 동기화되어 하나로 결합될 수 있고, 하나로 결합된 IDT-패킷 쌍은 WRITE 메모리에 저장될 수 있다.
WRITE 메모리가 가득 차있는지 여부를 판단할 수 있다(단계 S850).
생성된 IDT와 패킷은 WRITE 메모리에 저장될 공간이 있는지 여부를 판단할 수 있다.
해당 WRITE 메모리에 생성되어 저장된 IDT 및 패킷 쌍으로 가득 차있지 않은 경우, WRITE 메모리의 비어 있는 저장 공간을 채우기 위해 단계 S820으로 돌아가 IDT와 패킷을 생성하는 단계를 다시 수행할 수 있다.
해당 WRITE 메모리에 생성되어 저장된 IDT-패킷 쌍으로 가득 차있는 경우, 해당 WRITE 메모리에는 더 이상 생성된 패킷-IDT를 저장하지 않고, 다른 비어있는 WRITE 메모리를 찾아 생성된 IDT-패킷를 저장하기 위해 단계 S800으로 돌아가 비어있는 WRITE 메모리를 찾아 생성된 IDT와 패킷을 동기화하여 저장하는 단계를 다시 수행할 수 있다.
전술한 패킷-IDT 생성 단계를 통해 메모리의 용량에 비해 과도하게 생성되는 것을 막을 수 있어 생성된 패킷-IDT가 메모리에서 사라지는 현상이 발생하지 않는다.
도 9는 본 발명의 일실시예에 따른 패킷-IDT 전송부에서 패킷을 전송하는 방법을 나타낸 순서도이다
도 9을 참조하면, 패킷-IDT 전송부는 READ 메모리를 지정하여 접근할 수 있다(단계 S900).
패킷-IDT 전송부는 존재하는 메모리 중 하나를 선택하여 선택된 메모리에 존재하는 패킷-IDT를 전송할 수 있다. 이러한 전송 과정을 수행하기 위해 패킷-IDT 전송부는 자신이 선택한 메모리를 READ 메모리로 지정하여 해당 메모리에 포함된 패킷을 전송 중인 것으로 표시할 수 있다.
패킷-IDT 전송부에 의해 지정된 READ 메모리에 패킷-IDT가 존재하는지 여부를 판단할 수 있다(단계 S910).
READ 메모리는 패킷-IDT 전송부에 의해 선택된 메모리로서 패킷-IDT 전송부에 의해 선택된 메모리가 비어있을 경우가 존재할 수 있다. 따라서, 패킷-IDT 전송부는 선택한 메모리에 전송할 패킷-IDT가 존재하는지 여부를 판단할 수 있다.
패킷-IDT 전송부에 의해 비어있는 메모리로 판단된 경우, 해당 메모리에 패킷 생성부와 IDT 생성부에서 생성된 패킷과 IDT가 저장될 수 있도록 WRITE 메모리로 메모리의 인덱스 값을 변경하고 패킷-IDT 전송을 위해 다른 메모리를 READ 메모리로 다시 지정할 수 있다(S 920).
비어있는 패킷은 다시 패킷-IDT 전송부에서 READ 메모리로 지정하여 사용할 수 있도록 WRITE 메모리로 인덱스를 변경하여 패킷-IDT 생성부에서 생성된 IDT와 패킷을 저장할 수 있도록 한다. 또한 다른 메모리를 이용하여 패킷을 전송할 수 있도록 단계 S900으로 돌아가 패킷-IDT를 전송하는데 사용할 메모리를 READ 메모리로 지정할 수 있다.
패킷-IDT 전송부에 의해 지정된 READ 메모리에 패킷-IDT가 존재하는지 여부를 판단하여 해당 READ 메모리에 패킷-IDT가 존재하는 경우, READ 메모리에 존재하는 패킷-IDT를 메모리에서 꺼낼 수 있다(단계 S930).
READ 메모리에서 산출된 패킷-IDT를 기초로 IDT가 타이머 이벤트 핸들러에 전송되어 패킷이 전송될 시간을 초기화할 수 있다(단계 S940).
온라인 게임에서 발생하는 패킷의 특성을 시뮬레이션하기 위해서는 해당 IDT에 맞추어서 패킷을 생성해야 한다. 패킷의 발생 시간 간격을 조절할 수 있는 IDT를 이용해 어느 정도 시간 간격 후에 패킷이 전송되어야 하는지 여부를 결정할 수 있기 때문에 타이머를 초기화하여 시간 간격을 조절할 수 있다.
패킷-IDT 전송부는 IDT의 만료 여부를 판단할 수 있다(단계 S950).
본 발명의 일실시예에 따른 온라인 게임 패킷 생성 방법은 IDT가 경과한 후 패킷을 전송하는 방법을 사용하기 때문에, IDT 경과 여부를 판단할 수 있다.
IDT가 경과한 경우 패킷을 전송할 수 있다(단계 S960).
IDT가 경과한 경우 IDT와 동기화된 패킷을 전송하는 방법을 사용해 온라인 게임 서버에서 발생할 수 있는 패킷을 생성할 수 있다.
패킷의 전송이 끝나면 다시 단계 S900으로 돌아가 해당 READ 메모리에 존재하는 패킷이 모두 전송되어 있는지 여부를 판단할 수 있다.
도 10 내지 도 13는 본 발명의 일실시예에 따른, 분석 모델부를 사용하여 예측한 트래픽의 IDT의 히스토그램과 트래픽 생성기를 사용하여 생성한 트래픽의 IDT의 히스토그램이다.
트래픽 생성기를 사용하여 생성한 트래픽은 생성된 트래픽을 수신하는 수신단에서 측정되었다.
도 10은 본 발명의 일실시예에 따른 분석 모델부를 이용해 시뮬레이션한 L4D(Left4Dead)의 IDT 분포를 나타낸 히스토그램이다.
도 11은 본 발명의 일실시예에 따른 수신단에서 측정한 트래픽 생성기를 사용하여 생성한 L4D의 IDT 분포를 나타낸 히스토그램이다.
도 10과 도 11을 비교하면, 본 발명의 일실시예에 따른 트래픽 생성기에서는 실제의 온라인 게임 트래픽의 IDT 분포와 유사한 IDT 분포를 가지도록 트래픽을 생성할 수 있다.
도 12는 본 발명의 일실시예에 따른 분석 모델부를 이용해 시뮬레이션한 L4D(Left4Dead)의 패킷 사이즈(byte) 분포를 나타낸 히스토그램이다.
도 13은 본 발명의 일실시예에 따른 수신단에서 측정한 트래픽 생성기에서 생성되는 L4D의 패킷 사이즈(byte) 분포를 나타낸 히스토그램이다.
도 12와 도 13을 비교하면, 본 발명의 일실시예에 따른 트래픽 생성기에서는 실제의 패킷 사이즈 분포와 유사한 패킷 사이즈 분포를 가질 수 있도록 트래픽을 생성할 수 있다.
즉, 본 발명의 일실시예에 따르면 L4D와 같은 FPS 장르의 경우, 트래픽 생성기에서 생성되는 IDT와 패킷은 실제 온라인 게임의 클라이언트와 서버 사이에서 발생하는 트래픽과 유사한 특성을 가지도록 생성될 수 있다.
도 14 내지 도 17은 본 발명의 일실시예에 따른, 온라인 게임(World of Warcraft, 이하 WOW라고 함.)에서 생성되는 트래픽을 분석 모델부를 이용해 시뮬레이션한 IDT 분포와 패킷 사이즈 분포를 나타낸 히스토그램과 트래픽 생성기를 사용해 WOW의 IDT 분포와 패킷 사이즈 분포를 나타낸 히스토그램이다.
트래픽 생성기를 사용하여 생성한 트래픽은 생성된 트래픽을 수신하는 수신단에서 측정되었다.
도 14는 본 발명의 일실시예에 따른 분석 모델부를 이용해 예측한 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 15는 본 발명의 일실시예에 따른 트래픽 생성기를 사용해 수신단에서 측정한 WOW의 IDT 분포를 나타낸 히스토그램이다.
도 14와 도 15를 비교하면, 트래픽 생성기에서 생성된 트래픽의 IDT는 L4D와 달리 분석 모델부에서 예측한 트래픽의 IDT 분포와 상이한 IDT 분포 값을 가진 것을 확인할 수 있다.
도 16은 본 발명의 일실시예에 따른 분석 모델부를 이용해 예측한 WOW의 패킷 사이즈 분포를 나타낸 히스토그램이다.
도 17은 본발명의 일실시예에 따른 트래픽 생성기에서 생성되는 WOW의 패킷 사이즈 분포를 수신단에서 측정한 것을 나타낸 히스토그램이다.
도 16과 도 17을 비교하면, 본 발명의 일실시예에 따른 트래픽 생성기에서는 실제의 패킷 사이즈 분포와 다소 상이한 패킷 사이즈 분포를 가진 시뮬레이션 패킷을 생성하는 것을 확인할 수 있다.
도 14 내지 도 17을 참조하면, L4D와 달리 WOW에서는 트래픽 생성기에서는 분석 모델부에서 예측한 트래픽 특성과 상이한 IDT과 패킷 사이즈를 가지는 트래픽이 수신단에서 측정됨을 볼 수 있다.
분석 모델부에서 예측한 트래픽과 트래픽 생성기를 통해 생성된 트래픽을 수신단에서 측정한 것의 차이는 WOW와 같은 MMORPG 장르의 게임에서 사용하는 전송 프로토콜인 TCP에서 사용되는 네이글 알고리즘(Nagle Algorithm)에 의해 발생된다.
일반적으로 사용하는 TCP는 작은 패킷을 연속해서 보낼 때 발생하는 패킷 헤더에 의한 오버헤드를 줄이기 위하여 작은 패킷을 모아서 한 번에 보내는 네이글 알고리즘을 사용한다. 네이글 알고리즘의 사용은 불필요한 헤더 사용을 줄임으로써 네트워크 자원을 효율적으로 사용하는 장점이 있는 반면에 개개 패킷의 지연시간은 늘어나게 된다.
따라서, WOW와 같은 MMORPG 장르의 게임에서 패킷의 지연을 방지하기 위해 TCP 소켓 옵션 중 TCP_NODELAY를 설정하는 방법을 사용하여 네이글 알고리즘을 비활성화 시킬 수 있다. 트래픽 생성기에서 TCP_NODELAY 소켓 옵션을 설정하여 TCP단에서의 패킷 전달시 지연 없이 바로 네트워크 보낼 수 있다.
도 18과 19는 본 발명의 일실시예에 따른 네이글 알고리즘을 사용하지 않고 TCP를 통해 전송된 트래픽을 측정한 히스토그램이다.
도 18은 본 발명의 일실시예에 따른 네이글 알고리즘을 사용하지 않고 트래픽 생성기에서 생성된 트래픽의 IDT 분포를 나타내는 히스토그램이다.
도 19는 본 발명의 일실시예에 따른 네이글 알고리즘을 사용하지 않고 트래픽 생성기에서 생성된 트래픽의 패킷 사이즈 분포를 나타내는 히스토그램이다.
도 18과 도 19를 참조하면 TCP 계층에서 네이글 알고리즘을 사용하지 않는 경우, 분석 모델부에 예측된 트래픽의 IDT와 패킷 사이즈와 동일한 분포를 가지는 것을 볼 수 있다.
도 20 내지 도 25는 본 발명의 일실시예에 따른 IDT와 패킷 사이즈를 Q-Q 플롯을 이용하여 비교한 그래프이다.
Q-Q 플롯은 기댓값과 실제값 사이의 차이를 표시하기 위한 방법으로 시뮬레이션으로 생성된 IDT 및 패킷 사이즈 값과 실제 생성되는 IDT와 패킷 사이즈 값을 비교한 것이다. 직선에 가깝게 마크가 찍힐수록 분석 모델부에서 예측한 트래픽과 트래픽 생성기에서 생성되어 수신단에서 수신된 IDT와 패킷 사이즈가 유사한 것으로 판단할 수 있다.
도 20은 본 발명의 일실시예에 따른 L4D에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 21은 본 발명의 일실시예에 따른 L4D에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
도 20과 도 21을 참조하면, 분석 모델부에서 예측된 트래픽의 IDT와 패킷 사이즈 값과 트래픽 생성기를 사용하여 생성된 트래픽의 IDT와 패킷 사이즈 값이 거의 일치하는 것을 알 수 있다.
도 22는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용한 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 23은 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용한 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
도 22와 도 23을 참조하면, 분석 모델부에서 예측된 트래픽의 IDT와 패킷 사이즈 값과 트래픽 생성기를 사용하여 생성된 트래픽의 IDT와 패킷 사이즈 값이 일치하지 않는 것을 볼 수 있다.
도 24는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용하지 않은 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 IDT와 분석 모델부에서 생성된 트래픽의 IDT를 비교한 Q-Q 플롯이다.
도 25는 본 발명의 일실시예에 따른 TCP 계층에서 네이글 알고리즘을 사용하지 않은 경우, WOW에서 트래픽 생성기를 사용해 생성된 트래픽의 패킷 사이즈와 분석 모델부에서 생성된 트래픽의 패킷 사이즈를 비교한 Q-Q 플롯이다.
도 24와 도 25를 참조하면, TCP 계층에서 네이글 알고리즘을 사용하지 않은 경우 분석 모델부에서 예측된 트래픽의 IDT와 패킷 사이즈 값과 트래픽 생성기를 사용하여 생성된 트래픽의 IDT와 패킷 사이즈 값이 네이글 알고리즘을 사용한 도 22 및 도 23에 비하여 일치하는 값을 가지는 것을 볼 수 있다.
이상의 도 20 내지 도 25를 통해, 본 발명의 일실시예에 따른 트래픽 생성 방법 및 장치를 사용하는 경우, 실제의 온라인 게임에서 서버와 클라이언트 사이에 발생할 수 있는 트래픽을 거의 유사하게 재현해낼 수 있음을 볼 수 있다. 따라서, 본 발명에서 개시된 방법을 사용하는 경우, 기존의 트래픽 측정 방법 보다 복잡도가 감소하면서도 정확하게 서버 트래픽을 시뮬레이션 할 수 있다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (16)

  1. 서버와 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 패킷에 대한 패킷 사이즈와 트래픽 밀도에 따라 분포된 트래픽 정보를 분석하는 단계;
    상기 수집된 패킷을 상기 트래픽 정보에 관한 소정의 기준을 기초로 적어도 두 개의 집합으로 분류하고 상기 집합 중 상기 소정의 기준을 만족하는 제1 데이터 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 수행하는 단계;
    상기 트래픽 모델링을 기초로 패킷과 발생 시간 간격 정보(Inter Departure Time, IDT)를 생성하고 생성된 상기 패킷과 상기 발생 시간 간격 정보를 결합한 후 메모리에 저장하고 상기 발생 시간 간격 정보를 기초로 상기 패킷을 전송하는 단계; 및
    상기 메모리에 저장된 상기 발생 시간 간격 정보에 기반하여 다음번 패킷 전송에 대한 타이머를 초기화하는 단계를 포함하되,
    상기 트래픽 모델링을 수행하는 단계는,
    상기 수집된 패킷을 표현한 원시 도메인을 상기 제1 데이터 집합을 표현한 제1 데이터 집합 도메인으로 변환하는 단계; 및
    상기 제1 데이터 집합 도메인의 확률 밀도 함수를 미리 정해진 변환 테이블에 기반하여 상기 원시 도메인의 확률 밀도 함수를 생성하는 단계를 포함하는 것을 특징으로 하는 트래픽 생성 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 소정의 기준은,
    상기 트래픽 밀도의 이동 평균값(Moving Average Value)인 것을 특징으로 하는 트래픽 생성 방법.
  5. 제1항에 있어서, 상기 전송하는 단계는,
    소정의 메모리에 접근하여 상기 메모리에 저장 공간이 있는지 여부를 판단하는 단계;
    상기 메모리에 저장 공간이 있는 경우, 상기 발생 시간 간격 정보와 상기 패킷을 생성하는 단계;및
    생성된 상기 발생 시간 간격 정보와 상기 패킷을 결합한 후, 상기 메모리에 저장하고, 상기 메모리에 저장 공간이 없는 경우 상기 메모리를 제외한 다른 메모리에 접근하여 상기 다른 메모리에 저장 공간이 있는지 여부를 판단하는 단계를 포함하는 트래픽 생성 방법.
  6. 제1항에 있어서, 상기 전송하는 단계는,
    소정의 메모리에 접근하여 상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는지 여부를 판단하는 단계;
    상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는 경우, 상기 메모리에서 상기 패킷과 상기 발생 시간 간격 정보를 산출하는 단계; 및
    상기 발생 시간 간격 정보를 기초로 패킷을 전송하기 위한 타이머를 설정하여 상기 패킷을 발생 시간 간격 정보에 따른 시간 간격으로 전송 단계를 포함하는 트래픽 생성 방법.
  7. 제6항에 있어서, 전송하는 단계는,
    상기 패킷이 전송되는 전송 프로토콜을 구별하여 상기 전송 프로토콜에 맞는 소켓의 속성을 정의하는 단계를 더 포함하는 트래픽 생성 방법.
  8. 서버와 클라이언트 사이에 발생하는 트래픽을 분석하고 모델링하는 분석 모델부;
    상기 분석 모델부로부터 제공된 트래픽 정보를 기초로 패킷 및 IDT를 생성하는 패킷-IDT 생성부; 및
    상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-IDT 전송부를 포함하되,
    상기 분석 모델부는,
    상기 서버와 상기 클라이언트 사이에서 발생되는 패킷을 수집하고 수집된 전체 패킷에 대한 패킷 사이즈와 트래픽 밀도에 따른 트래픽 정보를 분석하고 상기 전체 패킷을 상기 트래픽 정보에 관한 소정의 기준을 기초로 적어도 두 개의 집합으로 분류하고 상기 집합 중 상기 소정의 기준을 만족하는 제1 데이터 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링을 수행하고,
    상기 트래픽 모델링은,
    상기 수집된 패킷을 표현한 원시 도메인을 상기 제1 데이터 집합을 표현한 제1 데이터 집합 도메인으로 변환한 후, 상기 제1 데이터 집합 도메인의 확률 밀도 함수를 미리 정해진 변환 테이블에 기반하여 상기 원시 도메인의 확률 밀도 함수를 생성하고,
    상기 패킷-IDT 전송부는,
    메모리에 저장된 발생 시간 간격 정보에 기반하여 다음번 패킷 전송에 대한 타이머를 초기화하는 것을 특징으로 하는 트래픽 생성기.
  9. 제8항에 있어서, 상기 분석 모델부로부터 제공된 트래픽 정보를 기초로 패킷 및 IDT를 생성하는 패킷-IDT 생성부는,
    상기 분석 모델부로부터 제공된 트래픽 정보에 기초하여 패킷을 생성하는 패킷 생성부;
    상기 분석 모델부로부터 제공된 트래픽 정보에 기초하여 발생 시간 정보를 생성하는 발생 시간 간격 정보 생성부;및
    상기 패킷 생성부에서 생성된 상기 패킷과 상기 발생 시간 간격 정보 생성부에서 생성된 상기 발생 시간 간격 정보를 결합하여 동기화 하는 패킷-발생 시간 정보 결합부를 포함하는 트래픽 생성기.
  10. 제8항에 있어서, 상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-패킷-발생 시간 간격 전송부는,
    패킷-발생 시간 정보 결합부에서 결합된 상기 패킷과 상기 발생 시간 정보를 저장하는 패킷-발생 시간 간격 저장 메모리; 및
    상기 패킷-발생 시간 간격 저장 메모리에 저장된 상기 발생 시간 간격 정보를 읽어 상기 패킷의 전송 간격을 결정하는 타이머 이벤트 핸들러를 포함하는 트래픽 생성기.
  11. 제10항에 있어서, 상기 패킷-IDT 생성부에서 생성된 패킷 및 IDT를 전송하는 패킷-패킷-발생 시간 간격 전송부는,
    상기 패킷-발생 시간 간격 저장 메모리에서 추출되어 전송될 상기 패킷의 전송 프로토콜을 구별하고 패킷을 전송하는 소켓의 속성을 정의하는 전송 프로토콜 분석부를 더 포함하는 트래픽 생성기.
  12. 삭제
  13. 제8항에 있어서, 상기 트래픽 모델링을 하는 것은,
    상기 패킷 사이즈에 따라 분포된 트래픽의 정보를 분석하고 패킷의 발생 시간 간격에 따라 분포된 트래픽의 정보를 분석하여 상기 전체 패킷을 소정의 기준을 기초로 적어도 두개의 집합으로 분류하고 상기 집합 중 적어도 하나의 집합에 포함된 패킷 정보를 사용하여 트래픽 모델링하는 것을 특징으로 하는 트래픽 생성기.
  14. 제8항에 있어서,상기 소정의 기준은,
    상기 트래픽 밀도의 이동 평균값(Moving Average Value)인 것을 특징으로 하는 트래픽 생성기.
  15. 제8항에 있어서, 상기 패킷-IDT 생성부는,
    상기 패킷과 상기 발생 시간 간격 정보를 저장하기 위한 메모리에 접근하고 상기 메모리에 저장 공간이 있는 경우, 상기 발생 시간 간격 정보와 상기 패킷을 생성하고 상기 발생 시간 간격 정보와 상기 패킷을 결합한 후 상기 메모리에 저장하고 상기 메모리에 저장 공간이 없는 경우 상기 메모리를 제외한 다른 메모리에 접근하여 상기 다른 메모리에 저장 공간이 있는지 여부를 판단하는 것을 특징으로 하는 트래픽 생성기.
  16. 제8항에 있어서, 상기 패킷-IDT 전송부는,
    상기 패킷과 상기 발생 시간 간격 정보를 저장한 메모리에 접근하고 상기 메모리에 상기 패킷과 상기 발생 시간 간격 정보가 저장되어 있는 경우 상기 메모리에서 상기 패킷과 상기 발생 시간 간격 정보를 산출하고, 상기 패킷이 전송되는 전송 프로토콜을 구별하여 상기 전송 프로토콜에 맞는 소켓의 속성을 정의한 후, 상기 발생 시간 간격 정보를 기초로 패킷을 전송하기 위한 타이머를 설정하여 상기 패킷을 상기 발생 시간 간격 정보에 따른 시간 간격으로 전송하는 것을 특징으로 하는 트래픽 생성기.
KR1020100107228A 2010-10-29 2010-10-29 트래픽 생성 방법 및 트래픽 생성 장치 KR101407057B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100107228A KR101407057B1 (ko) 2010-10-29 2010-10-29 트래픽 생성 방법 및 트래픽 생성 장치
US13/218,009 US20120110166A1 (en) 2010-10-29 2011-08-25 Method and apparatus for generating traffic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100107228A KR101407057B1 (ko) 2010-10-29 2010-10-29 트래픽 생성 방법 및 트래픽 생성 장치

Publications (2)

Publication Number Publication Date
KR20120046890A KR20120046890A (ko) 2012-05-11
KR101407057B1 true KR101407057B1 (ko) 2014-06-12

Family

ID=45997906

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100107228A KR101407057B1 (ko) 2010-10-29 2010-10-29 트래픽 생성 방법 및 트래픽 생성 장치

Country Status (2)

Country Link
US (1) US20120110166A1 (ko)
KR (1) KR101407057B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378919B2 (en) 2014-10-29 2016-06-28 Samsung Display Co., Ltd. Bonding apparatus and method for manufacturing display device using the same
KR20220052531A (ko) 2020-10-21 2022-04-28 길주형 물속 생물 및 무생물 형태의 이물질 측정시스템

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102040094B1 (ko) * 2018-10-19 2019-11-05 국방과학연구소 사이버 훈련 시스템에서 인터넷 배경 트래픽 발생을 위한 데이터 구축 방법 및 그 장치
KR102111748B1 (ko) 2018-10-29 2020-05-15 국방과학연구소 트래픽 발생 장치, 트래픽 에이전트 장치 및 이를 포함하는 트래픽 발생 시스템
KR102139370B1 (ko) 2020-05-11 2020-07-29 국방과학연구소 트래픽 발생 장치, 트래픽 에이전트 장치 및 이를 포함하는 트래픽 발생 시스템

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6028847A (en) * 1997-07-31 2000-02-22 Hewlett-Packard Company Multiple stream traffic emulator

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000031B2 (en) * 2000-04-07 2006-02-14 Broadcom Corporation Method of providing synchronous transport of packets between asynchronous network nodes in a frame-based communications network
US7616571B1 (en) * 2002-07-03 2009-11-10 Netlogic Microsystems, Inc. Method and apparatus for calculating packet departure times
US8938532B2 (en) * 2009-04-08 2015-01-20 The University Of North Carolina At Chapel Hill Methods, systems, and computer program products for network server performance anomaly detection

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6028847A (en) * 1997-07-31 2000-02-22 Hewlett-Packard Company Multiple stream traffic emulator

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378919B2 (en) 2014-10-29 2016-06-28 Samsung Display Co., Ltd. Bonding apparatus and method for manufacturing display device using the same
KR20220052531A (ko) 2020-10-21 2022-04-28 길주형 물속 생물 및 무생물 형태의 이물질 측정시스템

Also Published As

Publication number Publication date
KR20120046890A (ko) 2012-05-11
US20120110166A1 (en) 2012-05-03

Similar Documents

Publication Publication Date Title
Vishwanath et al. Realistic and responsive network traffic generation
JP4233884B2 (ja) サービス品質のプロービングを行う方法
JP5875725B2 (ja) コンテンツ再生情報推定装置及び方法及びプログラム
KR101407057B1 (ko) 트래픽 생성 방법 및 트래픽 생성 장치
Ghasemi et al. Performance characterization of a commercial video streaming service
Manzano et al. Dissecting the protocol and network traffic of the OnLive cloud gaming platform
KR20100055234A (ko) 전송 계층에서 트래픽을 분류하는 방법 및 장치
Basso et al. Measuring DASH streaming performance from the end users perspective using neubot
Nechaev et al. A Preliminary Analysis of TCP Performance in an Enterprise Network.
Lin et al. Low-storage capture and loss recovery selective replay of real flows
Yaun et al. Large-scale tcp models using optimistic parallel simulation
Alssaheli et al. Implementation of network traffic monitoring using software defined networking Ryu controller
US11677651B2 (en) UDPING—continuous one-way monitoring of multiple network links
Marshall et al. Optimizing consistency by maximizing bandwidth usage in distributed interactive applications
Michael et al. A critical performance analysis of Thin Client platforms
Liu et al. Toward scalable emulation of future internet applications with simulation symbiosis
Ahsan et al. DASHing towards hollywood
CN116708258B (zh) 一种背景流网络拓扑汇聚方法及装置
Saldana et al. Online games traffic multiplexing: Analysis and effect in access networks
Shin et al. Online gaming traffic generator for reproducing gamer behavior
Marshall et al. Does reducing packet transmission rates help to improve consistency within distributed interactive applications?
Kolesnikov Load Modelling and Generation in IP-based Networks
Guillier et al. Towards a user-oriented benchmark for transport protocols comparison in very high speed networks
Belmoukadam et al. From encrypted video traces to viewport classification
Kolesnikov et al. Foundations and Research Field

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170605

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee