KR100509242B1 - 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법 - Google Patents

메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법 Download PDF

Info

Publication number
KR100509242B1
KR100509242B1 KR10-2001-0065706A KR20010065706A KR100509242B1 KR 100509242 B1 KR100509242 B1 KR 100509242B1 KR 20010065706 A KR20010065706 A KR 20010065706A KR 100509242 B1 KR100509242 B1 KR 100509242B1
Authority
KR
South Korea
Prior art keywords
message
application
performance
service
analyzing
Prior art date
Application number
KR10-2001-0065706A
Other languages
English (en)
Other versions
KR20030033631A (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 KR10-2001-0065706A priority Critical patent/KR100509242B1/ko
Publication of KR20030033631A publication Critical patent/KR20030033631A/ko
Application granted granted Critical
Publication of KR100509242B1 publication Critical patent/KR100509242B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Abstract

본 발명은 네트워크 환경의 여러 시스템에서 실행되는 다수의 응용(application)에 의하여 처리되는 다양한 서비스를 분석하고, 서비스 처리시 발생하는 네트워크, 시스템, 응용, 쓰레드(thread) 혹은 프로세스(process), 메시지 등에 대한 각종 유용한 정보를 수집, 분석하여 이미 개발된 응용이나 개발 중인 응용의 성능을 시험 및 분석하는 방법에 관한 것이다. 이러한 본 발명의 방법은 다수의 시스템이 연결된 네트워크에서 시스템에서 수행되는 응용들과 응용들의 연동에 의해 처리되는 서비스의 성능을 분석 및 시험하기 위한 방법에 있어서, 사용자 데이터를 입력하는 단계; 입력된 사용자 데이터를 디코딩하여 일반화된 데이터베이스를 생성하는 단계; 성능시험과 관련된 메시지를 획득하는 단계; 획득된 메시지를 상기 데이터베이스를 이용하여 통계처리 및 분석하는 단계; 및 통계처리 및 분석 결과를 제공하는 단계로 이루어진 것을 특징으로 한다. 따라서, 본 발명은 네트워크 환경의 여러 시스템에서 실행되는 다수의 응용에 의하여 처리되는 다양한 서비스의 성능을 분석하고 이미 개발된 응용이나 개발 중인 응용에 대해 기능 및 성능 시험을 수행하거나 사용자 요구에 맞는 각종 성능을 분석하여 응용의 QA를 제공할 수 있다.

Description

메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법 { Method of testing applications or services by message analysis }
본 발명은 네트워크 환경의 여러 시스템에서 실행되는 다수의 응용(application)에 의하여 처리되는 다양한 서비스를 분석하고, 서비스 처리시 발생하는 네트워크, 시스템, 응용, 쓰레드(thread) 혹은 프로세스(process), 메시지 등에 대한 각종 유용한 정보를 수집, 분석하여 이미 개발된 응용이나 개발 중인 응용의 성능을 시험 및 분석하는 방법에 관한 것이다.
종래에 네트워크의 각 시스템에서 수행되는 응용(application)이나 서비스(service)의 성능시험은 이미 잘 알려진(well-known) 응용에 대한 응답시간, 시간대별 변화 등에 대한 측정 및 통계 데이터를 제공하는 것이다. 즉, 종래의 응용이나 서비스의 성능시험은 특정 포트나 단위시스템에서 캡춰링된 메시지를 바탕으로 최종 결과만을 분석하는 방식이었다.
이와 같은 종래의 성능시험 기술은 표준화된 프로토콜이나 이미 그 형식이 잘 알려진(거의 표준화되어 있는) 사용자 메시지에 대한 측정 통계 자료나 분석 자료를 제공하고 이미 개발이 완료된 응용에 대해서만 성능을 분석할 수 있으므로 성능분석에 의해 문제점이 발견된다하더라도 그 해결이 불가능하여 문제가 있는 응용을 그대로 사용하면서 시스템 증설과 같은 방법으로 서비스 성능을 향상시킬 수 밖에 없었다. 즉, 종래의 성능시험방법에서는 개발중에 있는 응용의 구체적인 문제점을 찾아내거나 개선하기 불가능하고, 특정 서비스를 위하여 사용자에 의해 결정된 다양한 형식의 사용자 데이터를 분석할 수 없었다.
이에 본 발명의 목적은 상기와 같은 문제점을 해결하기 위하여, 표준화된 프로토콜이나 이미 그 형식이 잘 알려진 사용자 메시지 뿐만 아니라 다양한 형식의 사용자 데이터를 처리 및 분석할 수 있고, 메시지, 프로세스, 쓰레드, 응용, 시스템, 네트워크 단위로 분석 및 통계를 처리함과 아울러 이들 간의 유기적이고 복합적인 관계를 분석할 수 있는 응용이나 서비스의 성능시험방법을 제공하는 것이다.
본 발명의 다른 목적은 이미 개발된 응용 뿐만 아니라 개발 중인 응용에 대한 성능시험을 가능하게 하여 특정 서비스에 대한 성능저하 원인을 추적하고 오류를 검출하여 응용 자체를 개선할 수 있도록 함으로써 특정 서비스에 대한 응용의 성능을 보장할 수 있는 성능시험방법을 제공하는 것이다.
본 발명의 또 다른 목적은 사용자 요구에 맞는 각종 성능을 분석하여 응용의 품질보증(QA:Quality Assurance)을 제공하고, 네트워크 환경에서 여러 응용에 의해서 처리되는 서비스(또는 기능)의 QoS(Quality Of Service) 보장할 수 있도록 최적의 응용을 개발할 수 있는 성능시험방법을 제공하는 것이다.
상기와 같은 목적들을 달성하기 위하여 본 발명의 방법은, 다수의 시스템이 연결된 네트워크에서 시스템에서 수행되는 응용들과 응용들의 연동에 의해 처리되는 서비스의 성능을 분석 및 시험하기 위한 방법에 있어서, 사용자 데이터를 입력하는 단계; 입력된 사용자 데이터를 디코딩하여 일반화된 데이터베이스를 생성하는 단계; 성능시험과 관련된 메시지를 획득하는 단계; 획득된 메시지를 상기 데이터베이스를 이용하여 통계처리 및 분석하는 단계; 및 통계처리 및 분석 결과를 제공하는 단계로 이루어진 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.
도 1은 본 발명이 적용되는 네트워크 환경을 도시한 네트워크 구성도이다. 도 1에 도시된 네트워크는 신호를 전송하는 물리적인 매체(101)와 이 물리적인 매체(101)를 통해 상호 접속된 시스템들(102~107)로 구성되어 있다. 그리고 네트워크의 시스템들은 시험과 관련된 하나 이상의 대상시스템(102, 103)과, 서비스와 무관한 시스템(104, 105)으로 구분되고, 대상시스템에는 본 발명에 따른 기능을 처리하는 에이전트(106)가 탑재되어 있다. 이러한 네트워크 환경에서 시험과 관련된 서비스는 하나 이상의 시스템 간 또는 시스템 내부적으로 전달되는 메시지를 통해 처리된다.
본 발명은 네트워크 환경에서 다수 시스템의 연동에 의해 수행되는 서비스의 성능을 분석 및 시험하고, 각 시스템에 위치한 서비스 관련 응용의 성능을 보장하는 품질보증(QA) 기술이다.
본 발명에 따른 시스템의 물리적인 구성은 독립된 시스템인 마스터(master: 107)와 시험대상 시스템에 탑재되는 에이전트(agent:106)로 구성되거나 마스터(master) 단독으로 구성될 수 있다.
도 2a는 마스터(Master)와 에이전트(agent)로 구성되는 본 발명의 시스템을 도시한 도면이고, 도 2b는 마스터만으로 구성된 본 발명의 시스템을 도시한 도면이다.
도 2a를 참조하면, 에이전트(agent: 106)는 메시지 획득부(201)와, 메시지 디코딩부(202), 통계처리부(203), 시험부(204)로 이루어지고, 마스터(Master: 107)는 사용자 인터페이스부(205)와 성능분석부(206), 시뮬레이션부(207), 보고기능부(208)로 구성된다. 그리고 에이전트(106)는 실행되고 있는 시스템의 내부 및 외부 메시지 중 시험대상이 되는 메시지에 대한 메시지 획득 기능과, 획득된 메시지를 디코딩하는 기능, 통계 기능, 시험 기능 등을 수행하여 그 결과를 마스터(master)로 송신하는 역할을 수행한다. 마스터(107)는 각 에이전트(106)로부터 수신된 자료를 기반으로 성능 분석 기능, 시뮬레이션 기능, 보고 기능을 처리한다.
이때 마스터(Master)와 에이전트(agent) 구조로 이루어진 경우에는 네트워크 간에 송수신되는 메시지 뿐만 아니라 각 시스템 내부적으로 처리되는 프로세스 간 메시지에 대한 획득 및 통계, 분석이 가능하고, 이를 종합적으로 분석하여 프로세스, 쓰레드, 응용, 시스템, 네트워크 및 서비스에 대한 정확하고 풍부한 성능 분석 자료를 얻을 수 있다.
마스터(Master) 단독으로 구성되는 본 발명의 시스템은 도 2b에 도시된 바와 같이, 메시지 획득부(201), 메시지 디코딩부(202), 통계 처리부(203), 시험부(204), 사용자 인터페이스부(205), 성능분석부(206), 시뮬레이션부(207), 보고기능부(208)로 구성된다. 이러한 마스터(107')는 네트워크 간 처리되는 서비스에 대한 분석이 가능하다. 마스터(Master: 107')는 단독으로 네트워크 상에서 송수신되는 메시지에 대해 메시지 획득 기능, 메시지 디코딩 기능, 통계 기능, 성능 분석 기능, 시험 기능, 시뮬레이션 기능, 보고 기능을 모두 통합적으로 처리하여 성능 분석 결과를 제공한다.
도 2a 및 도 2b에 있어서, 메시지 획득부(201)는 응용 개체 간에 송수신되는 메시지를 획득(capturing)하는 기능을 처리하는 것으로, 응용 개체 간에 TCP/IP를 이용하여 네트워크 상에서 전달되는 메시지와 파이프(pipe), 메시지 큐(message que) 등 시스템 내부 프로세스 간 통신(IPC)방법에 의해 전달되는 메시지를 모두 획득한다. 메시지 디코딩부(202)는 획득된 메시지를 사용자가 정의한 형식으로 디코딩하는 기능을 처리한다. 이 기능으로 메시지의 종류, 및 이 메시지와 관련된 서비스 등에 대한 정보를 획득할 수 있다.
통계처리부(203)는 획득된 메시지를 기반으로 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스에 대해 메시지 처리 시간, 로드(load), 부하량, 손실율(loss), 병목 현상 등에 대한 통계를 처리한다. 시험부(204)는 메시지, 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스별로 기능 및 성능을 시험한다. 이 시험기능을 이용하여 개발자 및 시험관은 개발 중이거나 개발된 응용에 대한 기능 및 성능에 대해 다양하고 주문화된 시험을 실시할 수 있고, 시험 결과를 다양한 방식의 객관적인 자료로 출력할 수 있다.
성능 분석부(206)는 디코딩된 메시지를 기반으로 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스에 대해 성능을 분석하는 기능으로, 사용자 중심의 다양하고 유용한 정보를 산출한다. 시뮬레이션부(207)는 실제 망 환경을 구축하지 않고서도 메시지, 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스에 대한 시물레이션을 수행한다. 이 시뮬레이션 기능을 이용하여 프로그램 개발자는 자신이 개발하는 메시지, 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스에 대해 사전에 충분히 성능을 예측하고 성능을 시험할 수 있어 효율적인 개발 환경을 제공하게 되며 개발 기간을 단축시킬 수 있다. 사용자 인터페이스부(205)는 시험을 위한 각종 사용자 데이터를 설정하기 위해 사용자와 시스템을 인터페이스하는 부분이고, 보고기능부(208)는 분석된 모든 결과를 텍스트 형식이나 그래프 형식, 표 형식 등 다양한 형태로 출력한다.
도 3은 본 발명이 적용되는 하나의 시스템이 여러 응용으로 구성된 예이다.
도 3을 참조하면, 한 시스템(102 혹은 103) 내에는 여러 가지 종류의 응용(applications)이 실행되고 있다. 이들 응용 중에는 시험과 관련된 하나 이상의 응용(301, 302)이 있을 수 있고, 시험과 무관한 응용(303)이 있을 수 있다. 본 발명의 기술은 이들 응용 중에서 시험과 관련된 응용의 메시지만을 획득하여 시험과 관련된 응용에 대한 성능 분석 결과를 제공한다.
도 4는 본 발명이 적용되는 시험과 관련된 응용이 다수의 쓰레드나 프로세스로 이루어진 것을 도시한 도면이고, 도 5는 하나의 쓰레드나 프로세스가 다수의 메시지로 이루어진 것을 도시한 도면이다.
도 4 및 도 5를 참조하면, 하나의 응용은 다수의 쓰레드(401~403)나 하나 이상의 프로세스(404~406)로 구성되고, 하나의 쓰레드나 프로세스는 다수의 메시지(501~504)를 처리한다. 이때 본 발명에서는 쓰레드나 프로세스에서 처리되는 다수의 메시지를 구분하기 위하여 메시지에 대한 디코딩 기능을 제공하고, 메시지, 쓰레드 및 프로세스, 응용 단위로 시험 및 분석이 가능하다.
도 6은 본 발명에 따른 특정 서비스 또는 기능의 처리 흐름도이다. 서비스 또는 기능(이하 서비스로 통일한다)은 하나 이상의 프로세스(404~406) 또는 쓰레드(401~403)들의 연동에 의하여 처리되고, 하나 이상의 메시지(501~504)들이 서비스를 처리하는데 사용된다. 즉, 일반적으로 서비스는 다수의 프로세스나 쓰레드 간에 여러 종류의 메시지를 송수신하여 정보를 처리하여 이루어진다. 따라서 서비스의 성능을 분석하거나 시험하려면, 이러한 프로세스 또는 쓰레드와 메시지의 처리 절차와 흐름에 관한 정보가 필요하다. 본 발명의 시스템에서는 이러한 서비스 처리 흐름도를 기반으로 각 메시지를 디코딩하여 정확하게 분석된 서비스의 성능 자료를 제공한다.
도 6을 참조하면, 정의된 서비스는 프로세스 i 내지 프로세스 n 사이에 상호 전달되는 메시지 a 내지 메시지 g로 이루어진다. 이때 각 프로세스는 특정 시스템의 특정 응용에서 수행된다.
메시지a는 프로세스(혹은 쓰레드)i로부터 프로세스 j로 전달되는 메시지이고, 메시지 b는 프로세스 j에서 프로세스 k로 전달되는 메시지이며, 메시지c는 프로세스 k에서 프로세스 j로 전달되는 메시지이다. 메시지d는 프로세스 k에서 프로세스 n으로 전달되는 메시지이고, 메시지 e는 프로세스 n에서 프로세스 k로 전달되는 메시지이다. 메시지 f는 프로세스 k에서 프로세스j로 전달되는 메시지이고, 메시지 g는 프로세스 j에서 프로세스i로 전달되는 메시지이다. 이와 같은 경우 통상 메시지 a, b, d 는 요구(Req)메시지이고, 메시지 c, e, f, g는 요구에 대한 응답(Res) 메시지이다.
도 7은 본 발명에 따라 서비스 혹은 응용의 성능을 분석하는 방법의 전체 흐름도이다.
도 7을 참조하면, 사용자에 의해 본 발명의 방법이 시작되면, 먼저 사용자 데이터를 등록하는 절차가 수행된다(701). 사용자 데이터는 앞서 설명한 네트워크 환경 구성, 시스템 구성, 응용 구성, 프로세스 또는 쓰레드 구성, 서비스 처리 절차를 의미한다. 또한 다양한 형식으로 정의된 메시지 형식 및 파라미터에 관한 정보를 포함한다.
사용자 데이터가 등록되면, 등록된 사용자 데이터를 해독하여 본 발명의 방법에서 사용하는 여러 정보 데이터베이스(DB)를 형성한다(702). 이 데이터베이스는 본 발명에 따라 이루어지는 처리의 전과정에서 사용하는 정보를 의미하며, 일반화된 구조를 가지고 있어 모든 사용자 환경을 수용할 수 있는 능력을 제공한다.
삭제
이어 성능분석이나 시험 등 사용자에 의하여 수행할 작업이 선택되면(703), 네트워크 상이나 프로세스 간 통신 상의 메시지(패킷)를 모니터(획득)한다(704). 모든 메시지(패킷)는 획득되는 시간을 기록하여 정확한 분석의 기반을 마련하고, 단계 702에서 생성된 데이터베이스를 사용하여 각 메시지를 디코딩하고 분석한다(705). 이러한 분석과정에서는 프로세스, 쓰레드, 응용, 시스템, 네트워크, 및 서비스에 대해 부하, 처리 시간, 로드 등의 기본적인 통계자료 뿐만 아니라 여러 가지 측정 데이타를 근거로 하는 다양한 성능 분석 자료가 생성된다.
이러한 통계 및 성능 분석 결과는 텍스트, 그래프, 표 등 다양한 방법으로 표시하게 되고, 보고서 형식으로 출력된다(706). 이어 사용자가 중단을 선택하기 전까지는 계속해서 메시지 획득, 분석, 보고 과정이 반복되며, 사용자의 중단에 의하여 선택된 기능 수행이 종료된다(707).
도 8은 본 발명에 따라 서비스 및 네트워크 정보를 설정(사용자 데이터를 등록)하는 절차를 도시한 순서도이다.
도 8을 참조하면, 단계 801에서는 사용자 데이터를 입력하기 위한 언어를 선택한다. 사용자 데이터는 네트워크 환경 구성, 시스템 구성, 응용 구성, 프로세스 또는 쓰레드 구성, 서비스 처리 절차이고, 이러한 정보는 GUI를 기반으로 하는 사용자 환경을 통해 사용자가 용이하게 등록할 수 있다. 또한 일반적으로 가장 많은 개발 환경에서 사용하는 C 언어나 C++ 언어의 해석기 기능을 제공하여 개발자의 개발 소스를 그대로 등록하여 쉽게 사용자 환경을 인식할 수 있다. 뿐만 아니라 SDL, XML과 같은 시스템 설계 및 개발 언어를 해석하는 기능을 제공하여 사용자의 여러 환경을 그대로 인식하여 사용자 데이터 등록에 사용자 편리성을 부각할 수 있다.
사용자 데이터를 등록하기 위하여 언어를 선택한 후 이어 네트워크 환경부터 등록한다(802). 네트워크 환경 등록은 도 1과 같은 전체 네트워크 구성을 등록하고, 각 시스템 IP 주소 및 시스템 운영체제, 시스템 이름과 같은 여러 시스템 정보를 입력한다. 이어 각 시스템에 대해 구성되는 응용을 등록하고, 각 응용을 구성하는 쓰레드 및 프로세스에 대해 등록하며, 통신 방법, 프로세스 및 쓰레드 이름, ID와 같은 여러 정보를 입력한다.
이와 같이 네트워크 환경에 대한 등록을 완료하면, 이어 서비스를 등록한다(803). 서비스 등록은 도 6에 도시된 바와 같은 서비스 처리 절차도를 프로세스, 쓰레드, 메시지를 기반으로 등록한다.
서비스 등록이 완료되면, 다음은 메시지를 등록한다(804). 메시지 등록 과정에서는 개발 과정에서 개발된 소스 코드를 직접 읽어 들여 자동으로 등록하는 기능을 제공하여 사용자의 편리성을 극대화한다. 또한 메시지 등록과 함께 파라미터 등록도 이루어진다(805).
메시지에 대한 파라미터까지의 모든 사용자 데이터가 등록 완료되면, 등록된 사용자 데이터를 사용자가 이해하기 쉽도록 문자, 그래프 형태로 표시하여 사용자의 확인을 받고 사용자 데이터 등록 과정을 종료한다(806,807).
도 9는 본 발명에 따라 네트워크, 시스템, 응용에 대한 분석 및 통계 데이터를 처리하는 절차를 도시한 흐름도이다.
통상, 메시지는 크게 시스템 외부 메시지와 시스템 내부 메시지로 구분된다. 먼저 시스템 내부 메시지는 시스템 내의 응용 간에 프로세스 간 통신(IPC) 방법을 사용하여 전송되는 메시지를 의미하며, 시스템 외부 메시지는 시스템 간에 네트워크 통신 방법에 의하여 전송되는 메시지를 의미한다.
도 9을 참조하면, 서비스 및 응용에 대한 성능 분석을 처리하기 위하여 먼저 시스템 내부 및 외부 메시지를 모두 획득(capturing)한다(901). 이 메시지 획득은 원래의 메시지 송수신에 전혀 영향을 미치지 않고, 복사 처리되어 이루어진다.
획득된 메시지가 등록된 시스템과 관련된 메시지이면(902), 부하량, 메시지 크기 등 시스템 관련 통계를 처리한다(903). 이어 시스템 관련 통계가 완료되면, 등록된 응용과 관련된 메시지인지 판별하여(904) 관련있는 메시지이면 응용관련 통계를 처리하고(905), 관련된 응용처리부로 메시지를 전송한다(906). 응용처리부는 해당 응용에서 처리하는 메시지에 대한 디코딩 기능 및 파라미터 검출 기능을 주로 처리하며, 시스템 성능 상 다수의 쓰레드로 구현될 수 있다.
획득된 메시지가 등록된 시스템이나 응용과는 무관한 메시지이면, 폐기하거나 표준화된 프로토콜 및 메시지 기반의 일반적인 통계 처리 기능을 수행한다(907).
도 10은 응용처리부에서 본 발명에 따라 서비스, 메시지, 파라미터에 대한 분석 및 통계 데이터를 처리하는 절차를 도시한 흐름도이다.
일반적으로, 등록된 메시지는 여러 종류이다. 그리고 메시지의 크기가 매우 크므로, 메시지를 등록된 형식으로 디코딩하는 것은 적지 않은 처리 시간이 필요하다. 또한 서비스 처리를 위하여 매우 많은 메시지가 발생되기 때문에 하나의 프로세스로 모든 응용의 메시지를 처리하는 것은 매우 부담이 크다. 따라서 응용별로 쓰레드를 두거나 하나 이상의 쓰레드를 운영하여 메시지를 처리하는 것이 바람직하다.
도 10을 참조하면, 도 9의 과정에서 처리된 메시지는 관련 응용처리부로 전송된다. 응용처리부는 메시지를 수신하면(1001), 먼저 메시지 종류를 분석하여 등록된 메시지인가를 판별한다(1002).
등록된 메시지이면, 메시지 크기, 로드 등 메시지에 관련된 기본 통계를 처리하고(1004), 실시간 처리에 필요한 메시지 내용을 디코딩한다(1004). 메시지 디코딩 기능은 실시간(real time)과 오프 라인(off line)으로 이루어진다. 실시간 처리 과정에서는 주로 메시지 종류, 메시지 번호, 각종 식별 번호 및 ID를 판별해 내는 디코딩 과정이 처리되며, off 라인으로는 메시지 전체에 대한 디코딩 과정이 처리된다.
디코딩 과정에서 오류가 검출되지 않으면(1005), 각종 키(식별 번호 및 ID 검출)를 처리한다(1006).
이어 디코딩 결과를 이용하여 파라미터를 분석하고, 파라미터에 대한 통계를 처리한다(1007). 또한 디코딩 과정에서 검출된 각종 식별번호 등을 이용하여 서비스 관련 분석 기능을 수행하고, 서비스 관련된 통계를 함께 처리한다(1008).
만일, 수신한 메시지가 등록된 메시지가 아니거나 디코딩 과정에서 오류가 검출된 경우에는 오류를 분석하여 보고서를 작성하고, 오류에 대한 통계를 처리한다(1009).
이상에서 설명한 바와 같이, 본 발명은 네트워크 환경의 여러 시스템에서 실행되는 다수의 응용(application)에 의하여 처리되는 다양한 서비스의 성능을 분석하고 관련된 네트워크, 시스템, 응용, 쓰레드 및 프로세스, 메시지 등에 대한 각종 유용한 정보를 수집, 분석하여, 이미 개발된 응용이나 개발 중인 응용에 대해 기능 및 성능 시험을 수행하거나 사용자 요구에 맞는 각종 성능을 분석하여 응용의 QA(Quality Assurance)를 제공할 수 있다.
더욱이, 본 발명은 표준화된 프로토콜이나 이미 그 형식이 잘 알려진(거의 표준화되어 있는) 사용자 메시지 뿐만 아니라 특정 서비스를 위하여 사용자에 의하여 결정된 다양한 형식의 사용자 데이터를 처리 분석할 수 있는 능력을 제공하며, 이미 개발된 응용이나 서비스 뿐만 아니라 개발 중인 응용이나 서비스에 대한 시험 및 성능 분석 기능, 성능 저하 원인 추적 기능, 오류 검출 및 추적 기능 등의 종합적이고, 근본적인 성능 분석 및 개선 기능을 제공함으로써 서비스 성능 및 응용 성능을 최적화할 수 있다. 또한 본 발명은 제공하려는 서비스 중심으로 개발 중인 응용의 성능을 분석하고 시험하여 최고의 성능을 보장하는 응용을 개발할 수 있게하며, 기존의 기술에서 제시하는 서비스 성능 향상을 위한 해결책보다 더 근원적이고 효율적이며 경제적인 해결책을 제시할 수 있다.
또한 본 발명 시스템은 기존의 네트워크 분석 도구에서 제공하지 못하는 영역까지 모니터할 수 있는 능력을 제공한다. 따라서 기존의 네트워크 분석 도구와 함께 사용하여 더욱 정확하고, 빈틈없는 분석 결과를 제공할 수 있어 시스템과 네트워크를 최적의 상태로 운용할 수 있게 한다.
도 1은 본 발명이 적용되는 네트워크 환경 구성의 예,
도 2a 및 도 2b는 본 발명에 따른 에이전트와 마스터의 구성 예,
도 3은 여러 응용으로 구성되는 시스템 구성의 예,
도 4는 여러 프로세스 또는 쓰레드로 구성되는 응용의 예,
도 5는 여러 메시지를 처리하는 쓰레드 또는 프로세스의 예,
도 6은 여러 쓰레드 또는 프로세스 간 메시지 전달로 이루어지는 서비스의 흐름도,
도 7은 본 발명에 따라 서비스 혹은 응용의 성능을 분석하는 방법의 흐름도,
도 8은 본 발명에 따라 서비스 및 네트워크 정보를 설정하는 절차를 도시한 순서도,
도 9는 본 발명에 따라 네트워크, 시스템, 응용에 대한 분석 및 통계 데이터를 처리하는 절차를 도시한 흐름도,
도 10은 본 발명에 따라 서비스, 메시지, 파라미터에 대한 분석 및 통계 데이터를 처리하는 절차를 도시한 흐름도이다.
*도면의 주요부분에 대한 부호의 설명
102~105: 시스템 106: 에이전트
107: 마스터 101: 전송매체
301~303: 응용 401~403: 쓰레드
404~405: 프로세스

Claims (11)

  1. 다수의 시스템이 연결된 네트워크에서 시스템에서 수행되는 응용들과 응용들의 연동에 의해 처리되는 서비스의 성능을 분석 및 시험하기 위한 방법에 있어서,
    사용자 데이터 입력 방식을 선택하는 단계와, 네트워크 환경을 등록하는 단계와, 서비스 절차를 등록하는 단계와, 메시지 및 파라메터를 등록하는 단계로 이루어져 사용자 데이터를 입력하는 단계;
    상기 입력된 사용자 데이터를 디코딩하여 일반화된 데이터 베이스를 생성하는 단계;
    성능시험과 관련된 메시지를 획득하는 단계;
    상기 획득된 메시지가 등록된 시스템과 관련된 메시지인지를 판별하여 관련된 메시지이면 시스템 관련 통계처리 및 분석하는 단계;
    상기 획득된 메시지가 등록된 응용과 관련된 메시지인지를 판별하여 관련된 메시지이면 응용관련 통계처리 및 분석하는 단계;
    상기 획득된 메시지가 등록된 프로세스나 쓰레드와 관련된 메시지인지를 판별하여 관련된 메시지이면 통계처리 및 분석하는 단계;
    상기 획득된 메시지가 등록된 메시지와 관련된 메시지인지를 판별하여 관련된 메시지이면 상기 메시지를 데이터베이스를 이용 디코딩하여 오류를 검출하고 파라미터 분석 및 통계처리하는 단계; 및
    상기 통계처리 및 분석된 결과를 제공하는 단계로 이루어진 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  2. 삭제
  3. 제1항에 있어서, 사용자 데이터 입력 방식은 C/C++언어나 GUI툴, SDL, XML중 어느 하나인 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  4. 제1항에 있어서, 상기 네트워크 환경을 등록하는 단계는
    네트워크 구성을 입력하는 단계와, 시스템의 구성을 입력하는 단계와, 응용 프로그램의 구성을 입력하는 단계와, 쓰레드나 프로세스 구성을 입력하는 단계로 이루어진 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서, 상기 메시지를 디코딩하여 분석하는 단계는
    각 응용별로 생성된 별도의 메시지 분석 쓰레드에 의해 수행되는 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  8. 제7항에 있어서, 상기 서비스 분석은 각 메시지 분석 쓰레드로부터 수신된 정보를 종합하여 처리하는 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  9. 제1항에 있어서, 상기 응용은 개발완료된 응용이나 개발중인 응용인 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  10. 제1항에 있어서, 상기 메시지는 시스템내에서 프로세스간통신방식으로 전달되는 메시지나 시스템간에 네트워크 프로토콜에 따라 전달되는 메시지인 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
  11. 다수의 시스템이 연결된 네트워크에서 시스템에서 수행되는 응용들과 응용들의 연동에 의해 처리되는 서비스의 성능을 분석 및 시험하기 위한 방법에 있어서,
    시험대상 시스템에 탑재되어 해당 시스템의 메시지를 획득 및 분석하여 성능정보를 마스터로 전송하는 다수의 에이전트와, 상기 다수의 에이전트로부터 수신된 성능정보를 분석하는 별도의 마스터로 구성되고,
    상기 에이전트는 상기 마스터로부터 수신된 사용자 데이터에 기반하여 관련 메시지를 획득하는 기능과 획득된 메시지를 데이터베이스를 이용하여 분석하는 기능, 분석된 메시지를 통계처리하는 기능, 및 시험기능을 수행하고,
    상기 마스터는 사용자로부터 사용자 데이터를 입력받고 분석결과를 표시하는 기능, 성능분석기능, 시뮬레이션 기능을 수행하는 것을 특징으로 하는 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기 위한 방법.
KR10-2001-0065706A 2001-10-24 2001-10-24 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법 KR100509242B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0065706A KR100509242B1 (ko) 2001-10-24 2001-10-24 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0065706A KR100509242B1 (ko) 2001-10-24 2001-10-24 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법

Publications (2)

Publication Number Publication Date
KR20030033631A KR20030033631A (ko) 2003-05-01
KR100509242B1 true KR100509242B1 (ko) 2005-08-23

Family

ID=29566161

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0065706A KR100509242B1 (ko) 2001-10-24 2001-10-24 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법

Country Status (1)

Country Link
KR (1) KR100509242B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0147329B1 (ko) * 1994-12-21 1998-09-15 양승택 메시지 빌딩 시스템이 적재된 프로토콜 테스터를 이용한 호분배 기능 시험 방법
KR20000038666A (ko) * 1998-12-08 2000-07-05 이계철 국간전송망의 회선분배장치에 대한 성능관리 방법
KR100307616B1 (ko) * 1994-01-31 2001-12-15 김징완 산업공정감시제어시스템
KR100347183B1 (ko) * 2000-11-04 2002-08-03 박홍성 이동통신망용 무선데이타 성능분석 시스템
KR20020078240A (ko) * 2001-04-06 2002-10-18 (주)엔프라테크 통신 품질 정보 수집 방법과 이를 내장한 컴퓨터가 판독가능한 기록 매체와 이를 이용한 통신 품질 분석 시스템및 그 방법
KR100358352B1 (ko) * 1999-12-21 2002-10-25 한국전자통신연구원 웹 기술을 이용한 통합 액세스망의 과금 관리 시스템 및방법
KR20030016800A (ko) * 2001-08-22 2003-03-03 마이씽크 테크놀로지 컴패니, 리미티드 인터넷을 통한 실시간 데이터 분석 및 처리 방법과 시스템
KR100381358B1 (ko) * 2000-07-27 2003-04-23 (주)디지털랩 응용프로그램 인터페이스 훅킹 방식을 이용한 웹사이트 평가 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100307616B1 (ko) * 1994-01-31 2001-12-15 김징완 산업공정감시제어시스템
KR0147329B1 (ko) * 1994-12-21 1998-09-15 양승택 메시지 빌딩 시스템이 적재된 프로토콜 테스터를 이용한 호분배 기능 시험 방법
KR20000038666A (ko) * 1998-12-08 2000-07-05 이계철 국간전송망의 회선분배장치에 대한 성능관리 방법
KR100358352B1 (ko) * 1999-12-21 2002-10-25 한국전자통신연구원 웹 기술을 이용한 통합 액세스망의 과금 관리 시스템 및방법
KR100381358B1 (ko) * 2000-07-27 2003-04-23 (주)디지털랩 응용프로그램 인터페이스 훅킹 방식을 이용한 웹사이트 평가 방법
KR100347183B1 (ko) * 2000-11-04 2002-08-03 박홍성 이동통신망용 무선데이타 성능분석 시스템
KR20020078240A (ko) * 2001-04-06 2002-10-18 (주)엔프라테크 통신 품질 정보 수집 방법과 이를 내장한 컴퓨터가 판독가능한 기록 매체와 이를 이용한 통신 품질 분석 시스템및 그 방법
KR20030016800A (ko) * 2001-08-22 2003-03-03 마이씽크 테크놀로지 컴패니, 리미티드 인터넷을 통한 실시간 데이터 분석 및 처리 방법과 시스템

Also Published As

Publication number Publication date
KR20030033631A (ko) 2003-05-01

Similar Documents

Publication Publication Date Title
CN110868336B (zh) 数据管理方法、装置和计算机可读存储介质
US8631124B2 (en) Network analysis system and method utilizing collected metadata
US20040216139A1 (en) System controlling test/measurement devices on a network using markup language documents and methods thereof
JP2000196705A (ja) メッセ―ジ/シ―ケンス編集機能を有する自動通信プロトコル試験システムおよび試験方法
US9329961B2 (en) Testing development using real-time traffic
CN104991979B (zh) 实验室数据处理方法及处理系统
CN114356785B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN107291608B (zh) 测试脚本的生成方法、接口的订阅/注册方法及装置
CN106648722B (zh) 基于大数据的Flume接收端数据处理方法和装置
CN115104336A (zh) 跟踪和公开用于生成分析的数据
CN113407458B (zh) 接口的测试方法、装置、电子设备及计算机可读介质
US20040268318A1 (en) Expert system for intelligent testing
KR100509242B1 (ko) 메시지 분석을 통해 응용이나 서비스의 성능을 시험하기위한 방법
CN111339051B (zh) 日志处理方法、系统、设备及存储介质
US8429458B2 (en) Method and apparatus for system analysis
JP2624160B2 (ja) データフォーマット変換装置
CN105426349A (zh) 一种逻辑表达式的传输交换方法及装置
US20060130146A1 (en) Network packet generation apparatus and method having attack test packet generation function for information security system test
CN112825506B (zh) 一种流量镜像检测方法及装置
KR20080047248A (ko) 알피씨 기반 소프트웨어의 원격지 보안 테스팅 장치 및방법
Wong et al. Coverage testing software architectural design in SDL
CN1312587C (zh) 一种嵌入式实时操作系统故障分析定位系统和方法
CN113645052A (zh) 一种固件调试方法及相关设备
KR100485764B1 (ko) 패킷 로그 및 스크립트 언어를 이용한 응용 시험 방법
CN113760235B (zh) 一种ble开发调试系统及方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100913

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee