WO2002082727A1 - Method for collecting a network performance information, computer readable medium storing the same, and an analysis system and method for network performance - Google Patents

Method for collecting a network performance information, computer readable medium storing the same, and an analysis system and method for network performance Download PDF

Info

Publication number
WO2002082727A1
WO2002082727A1 PCT/KR2002/000593 KR0200593W WO02082727A1 WO 2002082727 A1 WO2002082727 A1 WO 2002082727A1 KR 0200593 W KR0200593 W KR 0200593W WO 02082727 A1 WO02082727 A1 WO 02082727A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
test
network
network performance
module
Prior art date
Application number
PCT/KR2002/000593
Other languages
French (fr)
Inventor
Soo-Young Oh
Original Assignee
Nfratech Inc.
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 Nfratech Inc. filed Critical Nfratech Inc.
Publication of WO2002082727A1 publication Critical patent/WO2002082727A1/en

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/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • H04L43/55Testing of service level quality, e.g. simulating service usage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Definitions

  • the present invention relates to a system and method for analyzing
  • the present invention relates to a
  • Internet-related business categories include web contents
  • providers such as network service providers, portal service providers, and
  • IDC internet contents delivery
  • CDN web contents delivery
  • PMP performance measurement portal
  • Internet equipment providers e.g., PCs, servers, load
  • recording medium storing a network performance information collecting
  • performance information comprises: (a) accessing a network performance
  • test location (uniform resource location), and a test location used for testing the network
  • test homepage and file downloading ; and (d) generating a log file on the basis
  • a schedule module including at least one test from among a
  • an ICMP (Internet control message protocol) module having a
  • trace-route function to transmit an ICMP echo message to at least one network
  • the recording medium further comprises a manager program including
  • a TCP client module for transmitting the analysis log information using a
  • the manager program controls generation and removal of at least one
  • agent program including an ICMP module, a Winlnet module, an analysis
  • TCP client module a TCP client module
  • schedule module a schedule module
  • analysis system comprises: a plurality of client systems for using a client
  • server and a database, for providing predetermined schedule instructions for a network performance analysis to clients that are locally scattered and installed
  • server system for providing various types of statistical information on the basis
  • the (b) comprises: (1 ) attempting to access a corresponding medium
  • the computer readable recording medium storing the method, and the network
  • FIG. 1 shows a block diagram for a network performance analysis
  • FIG. 2 shows a client program according to a preferred embodiment of
  • FIG. 3 shows a signal flowchart between a TCP client module and a log server for describing data communication protocol
  • FIG. 4 shows a flowchart for an operation of a manager program
  • FIG. 5(a) shows a flowchart for an operation of an agent program
  • FIG. 5(b) shows a flowchart for an operation of an agent program
  • FIG. 6 shows a flowchart for describing a network performance test by
  • FIG. 7 shows a flowchart for an access to a server according to a
  • FIG. 8 shows a flowchart for describing packet flows of a trace-route
  • FIG. 9 shows a diagram for measuring a receiving speed and a cut
  • FIG. 10 shows a flowchart for a network performance analysis method
  • FIG. 1 1 shows a network performance analysis server system
  • FIG. 1 shows a block diagram for a network performance analysis
  • NPASS network performance analysis server system
  • the NPASS 100 comprises a log server 1 10, a database server 120,
  • the NPASS 100 generates various types of statistical information
  • the network manager for providing various services, and it is also preferable for the network manager to be able to process the statistical information such that it can be
  • the client system 200 that is accessible to the Internet or the networks
  • manager program 210 comprises a manager program 210 and an agent program 220, and it is a
  • the client system 200 receives the schedule
  • the client system 200 receives
  • the hops include network
  • a server such as a server, a RAS (remote access server), or a router.
  • RAS remote access server
  • the client system accesses a
  • predetermined site via a plurality of hops, and downloads the first web page
  • the measured system 300 may be a system for managing a
  • the Internet is exemplified for the measured system 300, but the
  • measured system may further comprise wire and wireless communication
  • FIG. 2 shows a client program according to a preferred embodiment of
  • the client program 200 comprises: a
  • manager program 210 including a TCP client module 212; and an agent
  • program 220 including a schedule module 221 , an ICMP (Internet control
  • the client program 200 accesses a web site according to a schedule
  • an IDC Internet data
  • a plurality of client servers may also be set within the
  • the TCP client module 212 transmits various types of analysis
  • the log server 110 provides various categories of statistical
  • the log data tested by the client that is, a kind of a protocol, are
  • the client program 200 generates log data when each test is not
  • the log data are stored in a client PC's HDD or a floppy disk and
  • the log server 1 10 checks whether the log data transmitted by the client program 200 are correct, and transmits checking results to the
  • the log server 110 checks the log data and notifies the
  • client program 200 of an ACK or NAK response is included in client program 200 of an ACK or NAK response.
  • the TCP client module 212 is installed in the manager program to perform TCP
  • FIG. 3 shows a signal flowchart between a TCP client module and a
  • the client program 200 waits for an ACK
  • the client program 200 determines that
  • the log server 110 performs several tests on the transmitted log
  • the client program drives a timer, which is
  • timing out software That is, when the client program transmits log information
  • the client program processes this as time ⁇
  • the log information is transmitted to the log server 1 10 through the
  • the ACK/NAK frame is then transmitted to the client through
  • a second problem may exist in that the frame synchronized state
  • log time information and the ACK/NAK may be transmitted together.
  • the client program checks to what log the
  • schedule module 221 receives schedule information on a test procedure and a
  • the NPASS controls the client programs
  • using the NPASS may be configured so as to 1 ) perform a test during
  • each client program is assigned a serial number, and the NPASS controls the
  • the ICMP module 222 has a trace-route function to transmit an ICMP
  • the ICMP module 222 the ICMP module 222
  • routers on the corresponding paths, time delay factors between the hops, and
  • the client program may define ICMP items including TTL (time to live),
  • the packet loss rates generated from the respective routers may be any packet loss rates generated from the respective routers.
  • the ICMP packets are transmitted to the hops each provided on the corresponding path by the predetermined number of ICMP
  • the Winlnet module 223 measures the users' network performance on
  • the performance measurement may be performed under the
  • the client program 200 reads the schedule set by the NPASS 100
  • the analysis module 224 generates various measurement result data
  • the media connection module 225 performs a media access operation to wire and wireless terminals or modems in each test stage. In this instance,
  • the media access operation includes a first network access method for
  • Internet may be calculated. Furthermore, the client program separately
  • the client program uses the access methods of the wire and wireless
  • the through the first network access method includes (1) access information, (2)
  • the client program processes cases of when the
  • the client program is programmed to check an RAS access when the
  • the client program when determining that the RAS access has failed, the client program leaves an error message of "User authentication has failed," and in
  • MSDN Microsoft Developer Network
  • the client program After successful access, the client program performs corresponding
  • the download count represents a number of files that form the first
  • images files e.g., those of GIF and JPG formats) as download target files.
  • the download size indicates a number of total bytes of the files that
  • the download speed shows a mean down speed (in bytes/sec)
  • problems may be generated to the actual data
  • predetermined server provided in a corresponding medium after access
  • the measurement server transmits
  • an error code (e.g., 404) to the client program instead of contents of the file.
  • the error code transmitted by the server becomes a measuring target
  • the error code is dynamically processed by the corresponding
  • the DNS count represents a number of times the DNS used for
  • IP Internet protocol
  • the DNS time indicates a total time spent calling the DNS that is
  • the server count represents a number of HTTP server connection
  • the server time shows a total time used for a HTTP server connection
  • the client program uses an ICMP protocol at each
  • Table 4 shows items that are transmitted to the NPASS and used as
  • the description of the first item that is, the (1) access information.
  • FIG. 4 shows a flowchart for an operation of the manager program
  • the number of tasks represents the number of agent
  • information include personal information (e.g., a name, an address, and a
  • step S114 It is checked whether the number of tasks is provided in step S114.
  • the manager program 210 When the number of tasks is provided, the manager program 210
  • step S1 14 When the number of tasks is provided in step S1 14, it is checked
  • server 1 10 (e.g., a socket connection) is performed in step S122.
  • test data are transmitted to the log server 1 10 in
  • step S124
  • the number of the process for going to the step S124 may be
  • step S132 corresponding to a message transmission is received from the corresponding agent program in step S132.
  • step S134 When the ACK message is received, it is checked whether a
  • predetermined time is passed in step S136.
  • time includes a period from a start time to an end time of driving the agent
  • step S138 and it goes to the previous step S130.
  • a plurality of agent programs 220 may be installed
  • the manager program may generate at least two agent
  • FIG. 5(a) shows a flowchart for an operation of the agent program
  • the agent program is executed in step S210,
  • step S212 the ping message is used to test transmission
  • refreshing represents a function for terminating the agent program for each
  • predetermined time interval e.g., a one-hour time interval
  • agent program is re-executed by the manager program.
  • agent program is terminated and reset, and when it requires no refreshing, a
  • ping message is transmitted to check the network activation state in step S218.
  • step S222 when the schedule information includes an
  • network test information may be
  • feedback may be determined by the schedule information, and when the
  • schedule information includes no further information on the measured targets
  • FIG. 5(b) shows a flowchart for an operation of the agent program
  • an agent program is executed in step S250, and
  • step S252 An access to a medium is attempted to check whether the access to
  • step S256 determines whether the access to the log server is successful in step S256.
  • step S256 When the log-in access in step S256 is successful, corresponding log
  • trace-route test is performed in step S260.
  • a URL download test operation is performed in step S262, test log
  • step S264 the access to the medium is cancelled
  • FIG. 6 shows a packet flow of the trace-route according to the
  • FIG. 5 in detail.
  • the corresponding hops determine
  • the corresponding packet is no longer transmitted to the destination, but a time-out packet, preferably a time exceeded error ICMP
  • response by the time exceeded error ICMP packet is based on the RFC792
  • terminal may receive a time exceeded error ICMP packet from the first router
  • the terminal may receive a time exceeded error
  • ICMP packet from the second hop such as a router.
  • the trace-route operation may be
  • hops e.g., routers
  • test information such as a packet loss
  • FIG. 7 shows a flowchart for a network performance test by a client
  • the NPASS is accessed to download schedule information including a starting time, a
  • step S310 measuring target, a URL, and a test location required for the test in step S310.
  • An ICMP test is performed to analyze network service contents
  • step S330 thereby receiving test results in step S330.
  • An access to a corresponding service e.g., a predetermined Internet
  • step S360 access to the corresponding site is disconnected in step S360, and it goes to
  • FIG. 8 shows a server access diagram according to the preferred embodiment
  • the measured server by a test program, and the measured server transmits an
  • the measuring program When receiving the access permission signal, the measuring program
  • measured server provides a corresponding file to the measuring program (i.e.,
  • connection succeeded and the corresponding time spent is measured as a
  • the communication protocol may apply identical methods to the Telnet, the FTP, and
  • FIG. 9 shows a process for measuring a receiving speed and a
  • ACK & header data (i.e., "ACK & header data") is received from the measured server, that is, an
  • the information is used so as to measure receiving speeds and
  • FIG. 10 shows a flowchart for a network performance analysis method
  • step S410 the log server 1 10 is operated in step S410 to
  • step S416 It is checked in step S416 whether the log information is formatted
  • the reason for receiving formatted data is for the
  • FIG. 1 1 shows an NPASS according to the preferred embodiment of
  • the NPASS comprises a log server 1 10, a
  • the database server 120 includes a database server 120, and a web server 130.
  • the database server 120 includes a web server 120.
  • a daily report generator 121 comprises a daily report generator 121 , an access time analyzer 122, a
  • download time analyzer 123 a download speed analyzer 124, an agent
  • the NPASS receives, in a predetermined log format, network
  • contents service performance information from corresponding media, analyzes
  • each information set stores the same, and provides each stored analysis
  • the network performance analysis request system may also receive a
  • Internet and network infrastructures may be measured and managed by using
  • services such as consulting may be provided so that effective
  • contents services may be provided through information on various types of
  • the Internet performance may be enhanced

Abstract

This invention relates to a method for collecting network performance information, a computer readable recording medium storing the same, and a system and method for analyzing network performance. A client system including a manager program and agent programs receives schedule information from a network performance analysis server system, starts driving using the information, performs network testing, accesses a network or a site to execute a service test operation, and provides testing information to the network performance analysis server system. An ICMP unit of the agent program installs a trace-router function to transmit an ICMP echo message to a router on the target URL's path, and checks a response to find the router's existence on the path and its delay time. A WinInet unit of the agent program measures performance of CPs or ISPs under general Internet user environments. An analyzer of the agent program outputs measurement results using data measured by a measurement unit.

Description

METHOD FOR COLLECTING A NETWORK PERFORMANCE
INFORMATION, COMPUTER READABLE MEDIUM STORING THE SAME,
AND AN ANALYSIS SYSTEM AND METHOD FOR NETWORK
PERFORMANCE
CROSS REFERENCE TO RELATED APPLICATION
This application is based on Korea Patent Application No. 2001 -18292
filed on April 6, 2001 in the Korean Intellectual Property Office, the content of
which is incorporated herein by reference.
BACKGROUND OF THE INVENTION
(a) Field of the Invention
The present invention relates to a system and method for analyzing
network performance. More specifically, the present invention relates to a
method for collecting network performance information, a computer readable
recording medium installing the same, and a system and method for analyzing
network performance using the medium.
(b) Description of the Related Art
In general, Internet-related business categories include web contents
providers such as network service providers, portal service providers, and
broadcasting service providers; sales service providers or brokers for electronic
commerce and shopping malls; and equipment and solution providers.
In addition to these categories, they further include data center hosting
(IDC) service providers, web contents delivery (CDN) service providers, and performance measurement portal (PMP) service providers for measuring
Internet performance and web server performance, which complement each
other.
Recently, various protocols and services have been developed under
the open TCP/IP network systems, and the Internet and web environments
have also been greatly developed. Accordingly, methods for measuring
network performance together with the development of various and new
services are now becoming an important issue to the service providers and
service users.
Conventional web service providers also perceive the need for
monitoring the access performance and managing the network from the clients'
viewpoint as well as for the conventional internal system management.
Further, Internet equipment providers (e.g., PCs, servers, load
balancers, and repeaters) are gradually becoming more aware of business
methods that require pre/post services for clients through an analysis of
accurate performance and status of client systems on the PMP basis so as to
strengthen their competitiveness.
However, since access performance according to the current client
management methods used by various network service providers is far
different from access performance measured while using the network service,
there is an urgent need to manage network access performance that the clients
actually experience.
As the number of network service users has greatly increased, heavy loads have occurred in network servers, and the users have sometimes been
unable to access a server because of the bottleneck phenomenon on the
network, and hence, users' complaints have grown. Accordingly, it is now
required to manage the service satisfaction of users in addition to simply
providing the network services.
However, the management of companies that provide services to
network users are mainly focused on the management of databases provided
to the users and the management of the networks.
Since performance evaluated by the management of the networks is
different from the network service performance actually experienced by the
users, problems exist in that the network access performance that the users
generally experience is less than that which is ascertained by such
management.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a computer readable
recording medium storing a network performance information collecting
program for more fluently collecting basic data for managing networks such as
the Internet and PC networks and basic data for managing contents services
for users to thus easily obtain network using states, and for managing access
performance to the Internet or the PC networks.
It is another object of the present invention to provide a method for
collecting network performance information using the network performance information collecting program.
It is still another object of the present invention to provide a network
performance analysis system using the network performance information
collecting method.
It is yet another object of the present invention to provide a network
performance analysis method using the network performance information
collecting method.
In one aspect of the present invention, a method for collecting network
performance information comprises: (a) accessing a network performance
analysis server according to program starting, and downloading schedule
information including a starting time, a measuring target medium, a URL
(uniform resource location), and a test location used for testing the network
performance; (b) analyzing service response times for respective network
intervals and disconnection intervals on the basis of the schedule information
to test network or Internet devices; (c) accessing a corresponding service to
test homepage and file downloading; and (d) generating a log file on the basis
of respective test results of (b) and (c), and transmitting the log file to the
network performance analysis server.
In another aspect of the present invention, a computer readable
recording medium with a network performance information collecting program
comprises: a schedule module, including at least one test from among a
predetermined time range and a number established by a system manager of a
measuring side, for managing schedule information on performance measurement; an ICMP (Internet control message protocol) module having a
trace-route function to transmit an ICMP echo message to at least one network
or Internet device provided on a path of a measuring target URL on the basis of
the schedule information, and checking its response to check an existence
state and its delay time of the network or Internet device on the path; a Winlnet
module for measuring performance of CPs (contents providers) or ISPs
(Internet service providers) under an environment identical with that of normal
Internet use; and an analysis module for calculating measuring results on the
basis of data measured by the ICMP module and the Winlnet module.
The recording medium further comprises a manager program including
a TCP client module for transmitting the analysis log information using a
predetermined protocol.
The manager program controls generation and removal of at least one
agent program including an ICMP module, a Winlnet module, an analysis
module, a TCP client module, and a schedule module.
In still another aspect of the present invention, a network performance
analysis system comprises: a plurality of client systems for using a client
program installed in a client PC (personal computer) or a server-level computer
of a plurality of Internet users, accessing a measured system through the
Internet or the network, receiving network performance test information on web
sites and network performance, and outputting the network performance test
information; and a network performance analysis server system, including a log
server and a database, for providing predetermined schedule instructions for a network performance analysis to clients that are locally scattered and installed
on the system, receiving data collected according to its response, and
providing various categories of statistical data on the basis of the data.
In still yet another aspect of the present invention, a network
performance analysis method using a plurality of client systems for collecting
network performance test information on the basis of predetermined schedule
information and outputting the information and a network performance analysis
server system for providing various types of statistical information on the basis
of the information comprises: (a) downloading the schedule information of
items for measuring the network performance to the agent program when a
task number and user information are input to the manager program of the
client system and at least one agent program is generated; (b) checking
whether a format of log information is a previously established data format
when the log information of test data collected and provided on the basis of the
downloaded schedule information is transmitted; (c) outputting an error
message and going to (b) when the data format is not previously established;
(d) storing the data format in a predetermined database when the data format
is previously established; and (e) transmitting an ACK message to the manager
program and going to (b) when the data format is stored in the database.
The (b) comprises: (1 ) attempting to access a corresponding medium
on the basis of the schedule information; (2) testing a network or Internet
device through a service response time for each network interval and an
analysis of a disconnection interval; (3) accessing a corresponding service and testing downloading of a homepage and a file; (4) generating a log file on the
basis of each test result; and (5) disconnecting the access to the corresponding
medium when the test of downloading the homepage and the file is finished,
and going to (1 ) when a unit test process is provided in the schedule
information.
According to the network performance information collecting method,
the computer readable recording medium storing the method, and the network
performance analysis system and method using the recording medium,
network service performance and contents service performance may be
checked on the basis of network performance information used for accessing a
predetermined web site and service performance information provided to the
corresponding web site through an agent program, each installed in a client
personal computer.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute
a part of the specification, illustrate an embodiment of the invention, and,
together with the description, serve to explain the principles of the invention:
FIG. 1 shows a block diagram for a network performance analysis
system according to a preferred embodiment of the present invention;
FIG. 2 shows a client program according to a preferred embodiment of
the present invention;
FIG. 3 shows a signal flowchart between a TCP client module and a log server for describing data communication protocol;
FIG. 4 shows a flowchart for an operation of a manager program
according to a preferred embodiment of the present invention;
FIG. 5(a) shows a flowchart for an operation of an agent program
according to a preferred embodiment of the present invention;
FIG. 5(b) shows a flowchart for an operation of an agent program
according to another preferred embodiment of the present invention;
FIG. 6 shows a flowchart for describing a network performance test by
the client program according to a preferred embodiment of the present
invention;
FIG. 7 shows a flowchart for an access to a server according to a
preferred embodiment of the present invention;
FIG. 8 shows a flowchart for describing packet flows of a trace-route
according to a preferred embodiment of the present invention;
FIG. 9 shows a diagram for measuring a receiving speed and a cut
ratio according to a preferred embodiment of the present invention;
FIG. 10 shows a flowchart for a network performance analysis method
by a log server according to a preferred embodiment of the present invention;
and
FIG. 1 1 shows a network performance analysis server system
according to a preferred embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
In the following detailed description, only the preferred embodiment of
the invention has been shown and described, simply by way of illustration of
the best mode contemplated by the inventor(s) of carrying out the invention. As
will be realized, the invention is capable of modification in various obvious
respects, all without departing from the invention. Accordingly, the drawings
and description are to be regarded as illustrative in nature, and not restrictive.
FIG. 1 shows a block diagram for a network performance analysis
system according to a preferred embodiment of the present invention.
Referring to FIG". 1 , the network performance analysis system
comprises a network performance analysis server system (NPASS) 100; a
plurality of client systems 200; and a plurality of measured systems 300.
The NPASS 100 comprises a log server 1 10, a database server 120,
and a web server 130, and it provides schedule instructions for performance
analysis to the clients, each of which is locally scattered and installed on the
system, and it receives test information that is collected in response to the
schedule instructions from them.
Also, the NPASS 100 generates various types of statistical information
on the basis of the test information, and provides the statistical information to a
user who requests a network performance analysis, through the web server
130.
Namely, it is desirable to provide statistical information to a network
manager for providing various services, and it is also preferable for the network manager to be able to process the statistical information such that it can be
used for comparison within their own company or within the same industry.
The client system 200 that is accessible to the Internet or the networks
comprises a manager program 210 and an agent program 220, and it is a
computer system positioned at a home for the network performance analysis
test, or a computer system or a server system installed at a predetermined
place of business for the network performance analysis.
Regarding its operation, the client system 200 receives the schedule
information from the NPASS 100, starts its operation on the basis of the
schedule information, performs a network test for measuring how the user
experiences the network, accesses a specific service provider or a site to
perform a service test for measuring how the user experiences the contents
service, and provides corresponding test information to the NPASS 100.
During the network test, as an example, the client system 200 receives
test information at hops that are provided on a path from the client system to a
specific site, and tests network service states such as network efficiencies on
the basis of the test information. In this instance, the hops include network
devices such as a server, a RAS (remote access server), or a router.
Also, during the service test, the client system accesses a
predetermined site via a plurality of hops, and downloads the first web page,
that is, a homepage, to the client system to thereby test contents service states.
The measured system 300 may be a system for managing a
homepage and a plurality of web pages. The Internet is exemplified for the measured system 300, but the
measured system may further comprise wire and wireless communication
networks, cable networks, optical communication networks, business intranets,
public broadband networks, and other public networks.
A realization method and an operation principle of respective modules
of the client program according to the preferred embodiment of the present
invention will now be described.
FIG. 2 shows a client program according to a preferred embodiment of
the present invention.
Referring to FIGs. 1 and 2, the client program 200 comprises: a
manager program 210 including a TCP client module 212; and an agent
program 220 including a schedule module 221 , an ICMP (Internet control
message protocol) module 222, a Winlnet module 223, an analysis module 224,
and a media connection module 225. Functions of the respective modules will
be separately described for ease of explanation.
The client program 200 accesses a web site according to a schedule,
downloads the first web page to the client program 200 or downloads a
predetermined file to the client program 200 according to the schedule, to
automatically measure service performance of the corresponding site and the
performance of the network through which the client program 200 accesses the
corresponding web site, and it transmits measurement results to the log server
110 of the NPASS 100.
It is desirable to install the client program in a computer system provided to the home of a high use Internet user, or in a server level system, or
to install the client program in various local regions (e.g., an IDC (Internet data
center) under various environments so as to measure in many ways how the
clients experience the network performance. In this instance, a single agent is
provided, and a plurality of client servers may also be set within the
requirements of the client system.
The respective modules in the client program 200 will now be
described in detail.
The TCP client module 212 transmits various types of analysis
information generated by the client program 200 to the log server 110 that is an
assigned management server using a protocol such as a TCP socket
communication. The log server 110 provides various categories of statistical
information to a system that requests a network performance analysis, on the
basis of data collected by the clients which are locally scattered and installed
on the system.
The log data tested by the client, that is, a kind of a protocol, are
transmitted to the log server 1 10 of the NPASS 100 to be stored in a database.
The client program 200 generates log data when each test is
terminated. The log data are stored in a client PC's HDD or a floppy disk and
are used for processing abnormal program errors and system errors and for
safely transmitting test results to the log server 110 through the Internet.
In order to remove various errors that may occur during transmission of
the log information, the log server 1 10 checks whether the log data transmitted by the client program 200 are correct, and transmits checking results to the
corresponding client program 200. That is, when receiving log data from the
client program 200, the log server 110 checks the log data and notifies the
client program 200 of an ACK or NAK response.
In the above-described preferred embodiment of the present invention,
the TCP client module 212 is installed in the manager program to perform TCP
socket communication, and it is also obvious that a UDP client module is
installed in the manager program to perform UDP socket communication.
In addition, a manager program and an agent program are individually
installed in the client program in the embodiment of the present invention, and
further it is obvious that they may be concurrently installed in the client program.
FIG. 3 shows a signal flowchart between a TCP client module and a
log server for describing data communication protocol.
Referring to FIGs. 1 and 3, the client program 200 waits for an ACK
response on the transmitted log data from the log server 1 10. If receiving the
ACK response from the log server 1 10, the client program 200 determines that
information is safely transmitted.
The log server 110 performs several tests on the transmitted log
information to check whether the data are lost or damaged on the network or
the Internet, and transmits test results to the client through an ACK or NAK
response. When the client receives a NAK message from the log server 1 10,
the client assumes that a problem is generated while a corresponding log
frame is transmitted, and the client again transmits the log information to the log server 1 10. This process is repeated for each identical time frame until the
client receives an ACK response from the log server 1 10. During this process,
subsequent errors may be assumed.
First, when the client transmits log information to the log server but
fails to receive an ACK/NAK signal from the log server 1 10 because of
disconnection of data communication with the log server 1 10, the client
program stands by indefinitely while waiting to receive the ACK/NAK signal.
To solve the first problem, the client program drives a timer, which is
timing out software. That is, when the client program transmits log information,
resets the timer, and receives no ACK/NAK signal from the log server 110
within a predetermined time frame, the client program processes this as time¬
out, and determines that no log information is transmitted to the log server 110.
This time-out function creates benefits, but it may cause the following
problems.
It is assumed that the client transmits log information and drives the
timer and this log information is transmitted through a low-speed network.
The log information is transmitted to the log server 1 10 through the
low-speed network, and it is processed to thereby generate a corresponding
ACK/NAK frame. The ACK/NAK frame is then transmitted to the client through
the low-speed network. During this process, however, a time-out may occur in
the client program because of a lot of time spent in the process.
A second problem may exist in that the frame synchronized state
between the log information of the client program and the ACK/NAK frame transmitted by the log server 110 may not be guaranteed because of the
ACK/NAK frame transmitting after the time-out.
In order to solve the second problem, a piggyback method is used for
the ACK/NAK frame. That is, "log time" information in the log information
transmitted to the log server 110 is provided to the ACK/NAK frame so that the
log time information and the ACK/NAK may be transmitted together.
Accordingly, by using the information, the client program checks to what log the
ACK/NAK frame transmitted by the log server 110 is matched.
Referring to FIG. 2, in order for the client program 200 to measure the
performance of the Internet or the network in various and effective ways, the
schedule module 221 receives schedule information on a test procedure and a
corresponding method from the log server 110 when driving the agent program
220. Using the schedule information, the NPASS controls the client programs
each of which is locally scattered and installed on the system.
For example, respective schedule items that a manager may control
using the NPASS may be configured so as to 1 ) perform a test during
predetermined time periods, 2) add a location of a measuring target URL and
modify it, 3) set various categories of information used for tests such as test
areas and media types, and 4) provide a different schedule to each client.
In particular, so as to perform the functions of 3) and 4), it is desirable
to separate the client program from the NPASS. To perform the separation,
each client program is assigned a serial number, and the NPASS controls the
clients' measuring operation on the basis of the serial numbers. The ICMP module 222 has a trace-route function to transmit an ICMP
echo message to respective network or Internet devices such as routers that
are provided on the path of the measuring target URL, and check
corresponding responses, thereby testing the routers' existence states on the
paths as well as corresponding delay times. Namely, the ICMP module 222
uses the trace-route function to find information on addresses of the hops (e.g.,
routers) on the corresponding paths, time delay factors between the hops, and
packet loss rates.
The client program may define ICMP items including TTL (time to live),
lengths of ICMP packets, number of ICMP packets, and time-out, and manage
the ICMP items.
The packet loss rates generated from the respective routers may be
measured by adjusting the number of ICMP packets. That is, when the ICMP
packet is transmitted to each router provided on the path of a predetermined
URL, each hop is required to echo the ICMP packet in normal cases. The loss
rate may be measured by counting the number of ICMP packets safely
transmitted to the client program by the router after being transmitted to the
hops.
For example, it is assumed that the user sets the ICMP items such that
TTL = 30, the length of the ICMP packet = 64 Bytes, the number of ICMP
packets = 10, and Time-out = 3000ms.
Under this state, when a trace-route operation is performed on a
predetermined URL, the ICMP packets are transmitted to the hops each provided on the corresponding path by the predetermined number of ICMP
packets (the number is set to be ten in this example). If a predetermined hop
transmits nine echo responses to the client program, the corresponding packet
loss rate is calculated as follows.
100% - (9/10)*100 = 10%
The Winlnet module 223 measures the users' network performance on
the networks or the Internet, and uses Winlnet functions of the Internet
Explorer (IE) installed in the Windows O/S (operating system) as a default. By
performing performance measurement on the basis of the Winlnet functions,
subsequent merits may be obtained.
That is, in the case specifications of general-purpose application
protocols (e.g., HTTP or FTP) of the TCP/IP are changed, the performance
measurement may be continuously performed using the updated IE Winlnet
functions without additional modification of the client program.
Also, the performance measurement may be performed under the
identical IE environments used by general Internet users.
The client program 200 reads the schedule set by the NPASS 100
through the schedule module 221 , and performs a test operation according to
the schedule.
The analysis module 224 generates various measurement result data
on the basis of the data measured by the respective measurement modules of
the client program.
The media connection module 225 performs a media access operation to wire and wireless terminals or modems in each test stage. In this instance,
the media access operation includes a first network access method for
accessing the network such as the Internet through computer communication
(e.g., the 104XY-phone number method via a modem) or through a wireless
Internet that requires additional access attempts by a user, and a second
network access method through a high-speed communication network or an
exclusive line that needs no additional access attempts by the user.
Through the above-described media access operation, the actual
access rate of the user receiving desired services through the network or the
Internet may be calculated. Furthermore, the client program separately
transmits notification of access failures that may occur and access failure
reasons to the measurement server, thereby providing notification of problems
that exist between wire and wireless intervals of the networks or the Internet,
and suggesting corresponding improvement ideas.
To execute data communication through the wire and wireless
terminals or the wire and wireless modems, an additional process for making
the Windows O/S recognize the above-noted terminals and modems is needed.
Accordingly, after making the Windows O/S recognize driver programs
according to individual methods corresponding to the respective media, the
user may drive respective wire and wireless devices through the "phone
access network" Windows program with no concern regarding the
characteristics of the corresponding media, which have been widely applied to
the conventional modem usage and recent ADSL devices. The client program uses the access methods of the wire and wireless
terminals to use the Windows standard RASAPI (remote access service
application programming interface) for directly controlling the "phone access
network" Windows program, and it also uses the characteristics of the modem
provided to each device to find the modem's access speed or problems
caused by access failure.
Items to be measured and managed by the client program that
manages services of an Internet or network management system will now be
described in detail. In particular, the measurement and management items
according to the first network access method through computer communication
such as the 014XY phone number method or through the wireless Internet, and
those according to the second network access method through the high-speed
communication network or the exclusive line, may be separately described.
First, information to be collected and processed by the client program
through the first network access method includes (1) access information, (2)
data communication information, (3) ICMP trace-route information, and (4)
other categories of information according to contents and characteristics of the
corresponding items.
Corresponding contents and configuration of each information set will
now be described.
(1 ) Access information
Probable error factors and various measurement parameters that may
be generated during attempting data communication by using a wire and wireless terminal or a wire and wireless modem, are provided in Table 1
Table 1
Figure imgf000022_0001
In particular, messages transmitted to an upper program from the TAPI
when an accessing state is disconnected will be subsequently summarized in
the case of the access error code.
For reference, the client program processes cases of when the
subsequent messages are transmitted from the Windows O/S as errors, and
leaves a log message for each corresponding case.
The client program is programmed to check an RAS access when the
access is abnormally disconnected while the subsequent messages are not
transmitted from the TAPI.
Also, when determining that the RAS access has failed, the client program leaves an error message of "User authentication has failed," and in
another case, it leaves a log of "The line has been disconnected normally."
LINEDISCONNECTMODE_NORMAL // Process as "Disconnect
access from remote place"
LINEDISCONNECTMODEJJNKOWN // Process as "Disconnect
unknown call connection"
LINEDISCONNECTMODE_BUSY // Process as "Line is busy"
LINEDISCONNECTMODE_NOANSWER // Process as "No answer
from another user's repeater"
LINEDISCONNECTMODE_NODIALTONE // Process as "No dial tone
detected"
RASDISCONNECTMODE_AUTHENTICATEFAIL // Process as "User
authentication failed"
The definitions and descriptions of the above-noted errors are
provided as documents to the MSDN (Microsoft Developer Network)
periodically issued by Microsoft Corporation.
(2) Data communication information
After successful access, the client program performs corresponding
detailed tests according to the test procedure transmitted from the log server
1 10 of the NPASS 100. Table 2 describes respective items generated through
the test procedure. Table 2
Figure imgf000024_0001
The transmission speed will now be described in further detail.
The download count represents a number of files that form the first
page, and the client processes text-based HTML files or general-purpose
images files (e.g., those of GIF and JPG formats) as download target files.
The download size indicates a number of total bytes of the files that
configure the first page of the test target URL.
The download speed shows a mean down speed (in bytes/sec)
calculated after actually receiving the contents of all the files that configure the
first page of the test target URL.
The error code will now be described in detail.
As an example, problems may be generated to the actual data
communication because of error factors that may be generated from a
predetermined server provided in a corresponding medium after access
through the medium is successfully performed. These error factors need to be
processed differently from the error factors generated when accessing the
medium. Namely, when the client program uses a GET instruction of the HTTP
so as to receive a predetermined file from a measurement server and no such
file is found from the measurement server, the measurement server transmits
an error code (e.g., 404) to the client program instead of contents of the file.
The error code transmitted by the server becomes a measuring target
item. Generally, the error code is dynamically processed by the corresponding
server or within the range of a protocol to be thereby transmitted to the client
program. The DNS Lookup will now be described.
The DNS count represents a number of times the DNS used for
modifying a URL that directs the location of the files (e.g., HTML files or image
files) into an IP (Internet protocol) address is called.
The DNS time indicates a total time spent calling the DNS that is
required for downloading the first page.
The server connection will now be further described.
The server count represents a number of HTTP server connection
tasks required for downloading files that configure the first page of a test target
URL.
The server time shows a total time used for a HTTP server connection
task required for receiving the first page.
(3) ICMP trace-route information
In order to make the relations of the hops provided on the data
transmission paths numbers, the client program uses an ICMP protocol at each
performance of the test to perform the trace-route, thereby creating items of
Table 3. The measuring basis of the respective items will refer to the ICMP
module description.
Table 3
Figure imgf000027_0001
(4) Other categories of information
Table 4 shows items that are transmitted to the NPASS and used as
important index keys for processing various statistical analyses and databases,
though they are not related to the actual measurement. Table 4
Figure imgf000028_0001
In the above, various types of information that the client program collects and processes through the first network access method are described.
In the case of the second network access method, an additional access
operation by a user is not required, and accordingly, it may be desirable to omit
the description of the first item, that is, the (1) access information.
FIG. 4 shows a flowchart for an operation of the manager program
according to the preferred embodiment of the present invention.
Referring to FIG. 4, when the manager program is executed in step
S110, a number of tasks and other categories of information are input in step
S112. In this instance, the number of tasks represents the number of agent
programs managed by the manager program. The other categories of
information include personal information (e.g., a name, an address, and a
telephone number) of the agent program's manager; network environments
(e.g., an IP address, an access medium, and a network speed in the case of a
fixed IP) under which the agent program will be operated; and information (e.g.,
an IP address of a main log server, and a URL of a schedule file) for
communication with the log server.
It is checked whether the number of tasks is provided in step S114,
and when it is not found, the agent program is executed in step S1 16, and it
returns to step S1 14.
When the number of tasks is provided, the manager program 210
performs a multitasking operation with the log server 110 and the agent
program 220.
An operation between the manager program 210 and the log server 1 10 will now be described.
When the number of tasks is provided in step S1 14, it is checked
whether test data to be transmitted to the log server 1 10 are provided in step
S120, and when the test data are not found, a standby mode is executed, and
when they are found, it is checked whether a network connection to the log
server 1 10 (e.g., a socket connection) is performed in step S122.
When it is found that the socket is not connected, a standby mode is
performed until the socket is connected, and when the socket is found to be
connected, the corresponding test data are transmitted to the log server 1 10 in
step S124.
It is checked whether an ACK message is received from the log server
1 10 in step S126, and when the ACK message is not received, an operation for
going to the step S124 and transmitting the test data again is repeated, and
when the ACK message is received, an operation for going to the step S120
and transmitting other test data to the log server 1 10 is repeated. In this
instance, the number of the process for going to the step S124 may be
controlled to be a predetermined number by the manager.
An operation between the manager program 210 and the agent
program 220 will now be described.
When the number of tasks is provided in the previous step S1 14, a
predetermined message for checking a driving state is transmitted to the agent
program in step S130, and it is checked whether an ACK message
corresponding to a message transmission is received from the corresponding agent program in step S132.
When the ACK message is not received, it is checked that the agent
program is not executed, and accordingly, the agent program is executed in
step S134. When the ACK message is received, it is checked whether a
predetermined time is passed in step S136. In this instance, the predetermined
time includes a period from a start time to an end time of driving the agent
program.
When the time is not passed, it goes to the previous step S130, and
when the time is passed, an end message is transmitted to the agent program
in step S138, and it goes to the previous step S130.
Referring to FIG. 2, a plurality of agent programs 220 may be installed
in the client PC, and when a client program that includes a manager program
and an agent program is installed in a server-level computer of huge capacity
and high-speed, the manager program may generate at least two agent
programs.
In the case at least two agent programs are generated as described
above, an operation of the log server 1 10 and at least two agent programs is
possible as well as an operation of the log server 1 10 and one agent program.
Here, it is obvious that the steps S130 through S138 perform a multitask
operation with each generated agent program.
FIG. 5(a) shows a flowchart for an operation of the agent program
according to the preferred embodiment of the present invention, and in detail, it
is a flowchart for an operation of the agent program that uses the second network access method through a very high-speed communication network or
an exclusive line that does not require an additional access attempt operation
by the user.
Referring to FIG. 5(a), the agent program is executed in step S210,
and a ping message is transmitted to check an activation state of the network
in step S212. In this instance, the ping message is used to test transmission
and receiving states between systems using the ICMP.
When the network is not activated, a standby mode is performed until
the corresponding network is activated, and when it is activated, schedule
information is downloaded from the log server 1 10 in step S214, and it is
checked whether the agent program is required to be refreshed before the
items set by the schedule are tested in step S216. In this instance, the
refreshing represents a function for terminating the agent program for each
predetermined time interval (e.g., a one-hour time interval), and the terminated
agent program is re-executed by the manager program. The refreshing function
previously protects the agent program's abnormal execution that may be
generated because of various reasons, and minimizes occurrences of the
abnormal execution.
When the agent program requires refreshing, the execution of the
agent program is terminated and reset, and when it requires no refreshing, a
ping message is transmitted to check the network activation state in step S218.
When the network is found to be not activated, a standby mode is
performed until it is activated, and when the network is activated, a trace-route is performed according to schedule information in step S220, and a URL
according to the schedule information is downloaded to receive test information
in step S222. For example, when the schedule information includes an
instruction to access a predetermined site, network test information may be
received from the hops used for accessing the corresponding site, and test
information may be received through a downloading operation of images and
tests that configure a homepage of the accessed site.
It is checked whether a manager program is started in step S224, and
when it is not started, the corresponding manager program is started in step
S226, the test information generated by performing the step S220 and the test
information generated by executing the step S222 is transmitted to the started
manager program in step S228, and it feeds back to the previous step S214. In
this instance, the process of obtaining the test information through the
feedback may be determined by the schedule information, and when the
schedule information includes no further information on the measured targets
to be tested, the process is obviously terminated.
FIG. 5(b) shows a flowchart for an operation of the agent program
according to a second preferred embodiment of the present invention, and in
detail, it is a flowchart for an operation of the agent program that uses the first
network access method through the 014XY telephone method or wireless
media that require an additional access attempt operation by the user.
Referring to FIG. 5(b), an agent program is executed in step S250, and
a schedule and operating environments are input in step S252. An access to a medium is attempted to check whether the access to
the corresponding medium is successful in step S254, and when the access
fails, the access is attempted until the access is successful, and when the
access is successful, an access to the main log server is attempted to check
whether the access to the log server is successful in step S256.
When the log-in access in step S256 is successful, corresponding log
information is transmitted, and a trace-route test is performed in steps S258
and S260. When the log-in access is checked and found to have failed, the
trace-route test is performed in step S260.
A URL download test operation is performed in step S262, test log
information is calculated in step S264, the access to the medium is cancelled,
and it goes to the step S254 to attempt an access to a medium according to
schedule information in step S266.
FIG. 6 shows a packet flow of the trace-route according to the
preferred embodiment of the present invention, describing the step S220 of
FIG. 5 in detail.
Referring to FIG. 6, when the agent program 220 provides an ICMP
message to the hops on the Internet or the network according to a schedule so
as to access a predetermined Internet site, the corresponding hops determine
the paths of the packets provided to the hops and reduce items of the TTL that
relates to the packets' lifetime.
As a result, when the TTL value of the packet provided to the hop is
set to be zero, the corresponding packet is no longer transmitted to the destination, but a time-out packet, preferably a time exceeded error ICMP
packet is transmitted to the corresponding packet's transmitter as an echo. The
response by the time exceeded error ICMP packet is based on the RFC792
standard documents.
Accordingly, when the terminal that performs the trace-route sets the
TTL value of the first ICMP echo message to be '1 ' and transmits it, the
terminal may receive a time exceeded error ICMP packet from the first router
on the path.
When the terminal transmits an ICMP echo message having the TTL
value as '2' to the destination, the terminal may receive a time exceeded error
ICMP packet from the second hop such as a router.
When the above method is repeated, the trace-route operation may be
performed up to the target hop connected to a predetermined Internet site,
information and delay time of all the hops (e.g., routers) provided on the paths
to the destination may be obtained, and test information such as a packet loss
rate may also be found.
FIG. 7 shows a flowchart for a network performance test by a client
program according to the preferred embodiment of the present invention, in
detail, describing a network performance test according to a client program that
uses the second network access method through a very high-speed
communication network or an exclusive line that requires no additional access
attempt operation by a user.
Referring to FIG. 7, when the client program is started, the NPASS is accessed to download schedule information including a starting time, a
measuring target, a URL, and a test location required for the test in step S310.
An attempt to access a medium according to the corresponding
schedule through a wire/wireless modem, a terminal, or a LAN card installed in
the client system in which the client program is installed is executed in step
S320.
An ICMP test is performed to analyze network service contents
including a service response time and a disconnection interval for each
network interval (i.e., a hop), thereby receiving test results in step S330.
An access to a corresponding service (e.g., a predetermined Internet
site) is executed to test a homepage and a file downloading process and
receive test results in step S340.
Various test results received through the steps S330 and S340 are
used to generate log information, and the generated log information is
transmitted to the log server 1 10 to store it in a database in step S350.
When the test of the networks or the service performance for receiving
a predetermined service according to the schedule information is finished, the
access to the corresponding site is disconnected in step S360, and it goes to
the previous step S320 so as to perform a next test according to the schedule
information, and thereby repeat a unit test process under an established
schedule.
In the above, a network performance test through the client program
that uses the first network access method using a computer communication (e.g., 014XY) or a wireless Internet that requires an additional access operation
by a user is described, and the network performance test through the client
program that uses the second network access method through a very high¬
speed network or an exclusive line that requires no additional access attempt
by the user excludes the steps S320 and S360 from the whole steps of FIG. 7,
which will no longer be described.
FIG. 8 shows a server access diagram according to the preferred
embodiment of the present invention, describing the step S320 of FIG. 7 in
detail.
Referring to FIG. 8, an access to a corresponding measured server
(i.e., "request HTTP connect") is performed so as to download a file installed in
the measured server by a test program, and the measured server transmits an
access permission signal (i.e., "accept HTTP connect") to the test program that
is responsive to the above-noted request.
When receiving the access permission signal, the measuring program
requests a test file from the measured server (i.e., "get test file"), and the
measured server provides a corresponding file to the measuring program (i.e.,
"ACK").
The above-described process is referred to as a "server connection,"
and when the process is successfully executed, it is defined as "server
connection succeeded," and the corresponding time spent is measured as a
server access spending time.
When an access to a file of the measured server from the test program is attempted and no response is provided from the corresponding server, it is
processed as "server connection failed."
The above-noted access process to the measured server is applied to
the HTTP type and general TCP type communication environments. Namely,
the communication protocol may apply identical methods to the Telnet, the FTP,
and the SMTP, as well as the HTTP.
FIG. 9 shows a process for measuring a receiving speed and a
disconnection rate, describing the step S340 of FIG. 7 in detail.
Referring to FIG. 9, when an access to the measured server is
successfully performed, information on the file to be downloaded is requested
from the measured server (i.e., "get test file header"), and file size information
(i.e., "ACK & header data") is received from the measured server, that is, an
HTTP server according to a corresponding response. The test program finds
the actual size of the file provided to the server using the file size information.
In this instance, the information is used so as to measure receiving speeds and
disconnection rates.
When collecting the basic file information, an actual download of the
corresponding file is requested on the HTTP protocol basis, and the file is
transmitted according to its response (i.e., "get test file connect," and "ACK &
real data.")
Regarding the actual downloading of the file, the test program
downloads the file contents to the corresponding server until the transmitted file
size information is satisfied. When the connection state to the server is disconnected or the server
does not respond for a long time when the size of the currently received file
has not reached the total file size at the time of receiving the file data, it is
processed to be a file download error.
When the total file is successfully downloaded, a receiving speed (or a
transmission rate) is measured in reference to Equation 1.
Equation 1
. . . , , . . file size receiving speed (or transmission rate) = downloading time
FIG. 10 shows a flowchart for a network performance analysis method
by the log server according to the preferred embodiment of the present
invention.
Referring to FIG. 10, the log server 1 10 is operated in step S410 to
reset a socket connected to the client in step S412.
Log information according to test data provided from the manager
program of the client program is received in step S414.
It is checked in step S416 whether the log information is formatted
data, and when the log information is not formatted, an error message is output
to the manager program of the client program in step S418, and it goes to the
step S414. In this instance, the reason for receiving formatted data is for the
client program and the log server 110 to transmit and receive established
protocols through a predetermined setting.
When the log information is found to be formatted data in step S416, it is transmitted to a database to be stored therein in step S420, an ACK
message that reports a normal receipt state is transmitted to the corresponding
manager program in step S422, and it goes to the previous step S414 to
receive log information according to test information.
FIG. 1 1 shows an NPASS according to the preferred embodiment of
the present invention.
Referring to FIG. 1 1 , the NPASS comprises a log server 1 10, a
database server 120, and a web server 130. The database server 120
comprises a daily report generator 121 , an access time analyzer 122, a
download time analyzer 123, a download speed analyzer 124, an agent
information analyzer 125, a homepage analyzer 126, a hop and error
information analyzer 127, a service contents modifier 128, and a help message
providing analyzer 129.
The NPASS receives, in a predetermined log format, network
performance test information from a plurality of client systems 100 and
contents service performance information from corresponding media, analyzes
each information set, stores the same, and provides each stored analysis
information set to a network performance analysis request system through a
web server 130.
The network performance analysis request system may also receive a
predetermined request, and access a predetermined medium through
predetermined hops at a predetermined time period to thereby provide
customized network performance analysis information. In particular, the format of various types of network performance analysis information is obviously
processed to be other types so that the user may easily check the
corresponding analysis information.
The respective analyzers of FIG. 1 1 are conceptually separated so as
to describe functional operations of the database server, and they are not
separated in the hardwired manner.
As described above, the performance of the international and global
Internet and network infrastructures may be measured and managed by using
the Internet performance measuring program.
Also, services such as consulting may be provided so that effective
contents services may be provided through information on various types of
indices used for receiving contents on the web via the Internet and the
infrastructures.
Further, by measuring and managing far-reaching Internet service
performance and web using states, the Internet performance may be enhanced
through providing equipment services and contents services.
While this invention has been described in connection with what is
presently considered to be the most practical and preferred embodiment, it is to
be understood that the invention is not limited to the disclosed embodiments,
but, on the contrary, is intended to cover various modifications and equivalent
arrangements included within the spirit and scope of the appended claims.

Claims

WHAT IS CLAIMED IS:
1 . A method for collecting network performance information comprising:
(a) accessing a network performance analysis server according to
program starting, and downloading schedule information including a starting
time, a measuring target medium, a URL (uniform resource location), and a test
location used for testing the network performance;
(b) analyzing service response times for respective network intervals
and disconnection intervals on the basis of the schedule information to test
network or Internet devices;
(c) accessing a corresponding service to test homepage and file
downloading; and
(d) generating a log file on the basis of respective test results of (b) and
(c), and transmitting the log file to the network performance analysis server.
2. The method of claim 1 , wherein (b) further comprises attempting to
access a corresponding medium on the basis of the schedule information.
3. The method of claim 2, wherein (d) further comprises canceling the
access to the corresponding medium when the test of (c) is finished, and going
to a step of attempting to access the corresponding medium when the
schedule information includes a unit test process.
4. The method of claim 1 , wherein (c) comprises:
(b-1 ) requesting an HTTP connection from the corresponding medium,
and receiving an HTTP connection permission message according to its
response; and (b-2) requesting a test file from the measured server according to
receipt of the HTTP connection permission message, and receiving an ACK
message according to its response.
5. The method of claim 1 , wherein in (b), a trace-route function is used
to calculate an address of a hop provided on a corresponding path, a time
delay factor between the hops, and a packet loss rate.
6. The method of claim 1 or 5, wherein in (b), Internet control message
protocol items including a TTL (time to live), an Internet control message
protocol packet length, a number of Internet control message protocol packets,
and a time-out are used.
7. The method of claim 1 , wherein (d) comprises:
(d-1) requesting a test file header from the corresponding medium, and
receiving file size information including corresponding header data together
with an ACK message in response to it; and
(d-2) requesting a test file from the measured server according to
receipt of the file size information, and receiving an ACK message according to
its response and the actual file data.
8. A computer readable recording medium with a network performance
information collecting program comprising:
a schedule module, including at least one test from among a
predetermined time range and a number established by a system manager of a
measuring side, for managing schedule information on performance
measurement; an ICMP (Internet control message protocol) module having a trace-
route function to transmit an ICMP echo message to at least one network or
Internet device provided on a path of a measuring target URL on the basis of
the schedule information, and checking its response to check an existence
state and its delay time of the network or Internet device on the path;
a Winlnet module for measuring performance of CPs (contents
providers) or ISPs (Internet service providers) under an environment identical
with that of normal Internet use; and
an analysis module for calculating measuring results on the basis of
data measured by the ICMP module and the Winlnet module.
9. The recording medium of claim 8, wherein the trace-route function
includes:
at least one address of a hop provided on a path;
a time delay factor between the hops; and
a packet loss rate.
10. The recording medium of claim 8, wherein at least one Winlnet
function of the Internet Explorer installed in the Windows driving system is used
so as to measure the performance.
11. The recording medium of claim 8, further comprising a manager
program including a TCP client module for transmitting the analysis log
information using a predetermined protocol.
12. The recording medium of claim 1 1 , wherein the manager program
controls generation and removal of at least one agent program including an ICMP module, a Winlnet module, an analysis module, a TCP client module,
and a schedule module.
13. A network performance analysis system comprising:
a plurality of client systems for using a client program installed in a
client PC (personal computer) or a server-level computer of a plurality of
Internet users, accessing a measured system through the Internet or the
network, receiving network performance test information on web sites and
network performance, and outputting the network performance test information;
and
a network performance analysis server system, including a log server
and a database, for providing predetermined schedule instructions for a
network performance analysis to clients which are locally scattered and
installed on the system, receiving data collected according to its response, and
providing various categories of statistical data on the basis of the data.
14. The system of claim 13, wherein the network performance test
information comprises at least one of delay measuring information, packet loss
measuring information, disorder rate information, and transmission rate
measuring information.
15. The system of claim 14, wherein the delay measuring information
comprises at least one of delay factor test information in a client system, delay
factor test information to the measured system on the network, and delay factor
test information in the measured system.
16. The system of claim 13, wherein the client program comprises: a schedule module, including at least one test from among a
predetermined time interval and a number set by a system manager of the
measuring side, for managing schedule information on performance
measurement;
an ICMP module, having a trace-route function, for transmitting an
ICMP echo message to at least one network or Internet device provided on a
path of a measuring target URL on the basis of the schedule information,
checking its response, and checking an existence state and a delay time of the
network or Internet device on the path;
a Winlnet module for measuring performance of CPs or ISPs under an
environment identical with that of general Internet use; and
an analysis module for calculating measuring results on the basis of
data measured by the ICMP module and the Winlnet module.
17. The system of claim 13, further comprising a manager program
including a TCP client module for using a predetermined protocol to transmit
analysis log information generated according to measuring network
performance to a predetermined management server.
18. The system of claim 17, wherein the manager program controls
generation and removal of at least one agent program including an ICMP
module, a Winlnet module, an analysis module, a TCP client module, and a
schedule module.
19. A network performance analysis method using a plurality of client
systems for collecting network performance test information on the basis of predetermined schedule information and outputting the information and a
network performance analysis server system for providing various types of
statistical information on the basis of the information, the method comprising:
(a) downloading the schedule information of items for measuring the
network performance to the agent program when a task number and user
information are input to the manager program of the client system and at least
one agent program is generated;
(b) checking whether a format of log information is a previously
established data format when the log information of test data collected and
provided on the basis of the downloaded schedule information is transmitted;
(c) outputting an error message and going to (b) when the data format
is not previously established;
(d) storing the data format in a predetermined database when the data
format is previously established; and
(e) transmitting an ACK message to the manager program and going to
(b) when the data format is stored in the database.
20. The method of claim 19, wherein (b) comprises:
(1 ) attempting to access a corresponding medium on the basis of the
schedule information;
(2) testing a network or Internet device through a service response time
for each network interval and an analysis of a disconnection interval;
(3) accessing a corresponding service and testing downloading of a
homepage and a file; (4) generating a log file on the basis of each test result; and
(5) disconnecting the access to the corresponding medium when the
test of downloading the homepage and the file is finished, and going to (1)
when a unit test process is provided in the schedule information.
21. The method of claim 19, wherein (b) comprises:
(1 ) testing a network or Internet device through a service response time
for each network interval and an analysis of a disconnection interval on the
basis of the schedule information;
(2) accessing a corresponding service and testing downloading of a
homepage and a file;
(3) generating a log file on the basis of each test result; and
(4) going to (1 ) when a unit test process is provided in the schedule
information after the test of downloading the homepage and the file is finished.
22. The method of one of claims 19 through 21 , wherein the schedule
information includes a start time, a measuring target medium, a URL, and test
location information used for a network performance test.
23. The method of claim 20 or 21 , wherein the step of testing
downloading of the homepage and the file comprises:
requesting an HTTP connection from a corresponding medium, and
providing an HTTP connection permission message according to its response;
and
requesting a test file from the measured server according to receipt of
the HTTP connection permission message, and receiving an ACK message according to its response.
24. The method of claim 20 or 21 , wherein the step of testing the
network or Internet device comprises calculating an address of a hop provided
on a corresponding path, a time delay factor between hops, and a packet loss
rate by using a trace-route function.
25. The method of claim 20 or 21 , wherein the step of testing the
network or Internet device comprises using Internet control message protocol
items including a TTL, an Internet control message protocol packet length, an
Internet control message protocol packet number, and a time-out.
26. The method of claim 20 or 21 , wherein the step of testing
downloading of the homepage and the file comprises:
requesting a test file header from the corresponding medium, and
receiving file size information including corresponding header data together
with an ACK message according to its response; and
requesting a test file from the measured server according to receipt of
the file size information, and receiving actual file data together with an ACK
message according to its response.
27. The method of claim 19, further comprising (f) providing various
types of statistical information processed so that the stored data format may be
applied to a network performance analysis requester.
PCT/KR2002/000593 2001-04-06 2002-04-03 Method for collecting a network performance information, computer readable medium storing the same, and an analysis system and method for network performance WO2002082727A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2001-0018292A KR100405054B1 (en) 2001-04-06 2001-04-06 Method for collecting a network performance information, Computer readable medium storing the same, and an analysis System and Method for network performance
KR2001-0018292 2001-04-06

Publications (1)

Publication Number Publication Date
WO2002082727A1 true WO2002082727A1 (en) 2002-10-17

Family

ID=19707924

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2002/000593 WO2002082727A1 (en) 2001-04-06 2002-04-03 Method for collecting a network performance information, computer readable medium storing the same, and an analysis system and method for network performance

Country Status (2)

Country Link
KR (1) KR100405054B1 (en)
WO (1) WO2002082727A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2399189A (en) * 2003-03-05 2004-09-08 Quazal Technologies Inc Coherent data sharing by delaying the processing of data by a time related to the network latency
EP1530341A1 (en) * 2003-11-06 2005-05-11 Hitachi, Ltd. Load balancing system
EP2106109A1 (en) * 2008-03-25 2009-09-30 Fujitsu Limited Method for identifying a device transmitting an echo signal, echo source identifying method for identifying echo source, measuring apparatus for identifying a source of an echo, and echo source identifying apparatus
US7827531B2 (en) 2007-01-05 2010-11-02 Microsoft Corporation Software testing techniques for stack-based environments
GB2471769A (en) * 2009-07-06 2011-01-12 Omnifone Ltd Automatically identifying configuration issues by network testing
CN104951399A (en) * 2015-06-19 2015-09-30 北京齐尔布莱特科技有限公司 Software test system and method
WO2019000301A1 (en) * 2017-06-29 2019-01-03 麦格创科技(深圳)有限公司 Network information collection method and system
CN110457199A (en) * 2018-05-08 2019-11-15 北京京东尚科信息技术有限公司 The method and apparatus of performance test
CN112511454A (en) * 2020-10-14 2021-03-16 网宿科技股份有限公司 Method, system and device for detecting network quality
CN112671822A (en) * 2020-10-20 2021-04-16 北京字跳网络技术有限公司 Service request processing method, device, storage medium, server and system
CN113063454A (en) * 2020-09-15 2021-07-02 山东华科信息技术有限公司 Detection system and detection method for batch detection of water immersion sensors

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100485764B1 (en) * 2001-10-24 2005-04-29 (주)유윈 Method of testing performance of applications using packet log or a script language
KR100509242B1 (en) * 2001-10-24 2005-08-23 (주)유윈 Method of testing applications or services by message analysis
KR100706602B1 (en) 2004-12-16 2007-04-11 한국전자통신연구원 System and its method for measuring communication quality
KR100704117B1 (en) * 2004-12-23 2007-04-05 에스케이 텔레콤주식회사 Wireless Internet contents quality management system and method
KR100791913B1 (en) * 2006-07-05 2008-01-04 주식회사 맥스포 Tester for node module of ubiquitous sensor network system, test method for node module and remote monitoring apparatus for ubiquitous sensor network system
KR100814403B1 (en) * 2006-10-12 2008-03-18 삼성전자주식회사 Formula based network management system supporting queueing mechanism and method of measuring performance parameter
US8589542B2 (en) 2009-02-16 2013-11-19 Qualitest Technologies, Inc. First application receiving text script or application program interface (API) call from second application and executing applications in independent memory spaces

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10143401A (en) * 1996-11-14 1998-05-29 Nec Corp Server performance measurement system
US5938729A (en) * 1996-07-12 1999-08-17 Microsoft Corporation System and method for monitoring server performance at a client computer
JP2000013362A (en) * 1998-06-25 2000-01-14 Nippon Telegr & Teleph Corp <Ntt> Communication network quality evaluation method and evaluation system
JP2000200230A (en) * 1999-01-05 2000-07-18 Hitachi Software Eng Co Ltd Method for measuring performance of client-server system, and client-server system
WO2000042513A1 (en) * 1999-01-11 2000-07-20 William Kuykendall Network management system
US6148335A (en) * 1997-11-25 2000-11-14 International Business Machines Corporation Performance/capacity management framework over many servers
KR20010018998A (en) * 1999-08-24 2001-03-15 오수영 System for analysing of network-quality and method for analysing of network-quality using the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000312226A (en) * 1999-02-25 2000-11-07 Hitachi Ltd Method for warranting communication quality
KR100358721B1 (en) * 2000-07-29 2002-10-30 인프라닉스 주식회사 The system and method for collecting and analysing QoS data of client/server system
KR20020058767A (en) * 2000-12-30 2002-07-12 이계철 Apparatus and Method for an efficiency test of Internet Quality Measurement System

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5938729A (en) * 1996-07-12 1999-08-17 Microsoft Corporation System and method for monitoring server performance at a client computer
JPH10143401A (en) * 1996-11-14 1998-05-29 Nec Corp Server performance measurement system
US6148335A (en) * 1997-11-25 2000-11-14 International Business Machines Corporation Performance/capacity management framework over many servers
JP2000013362A (en) * 1998-06-25 2000-01-14 Nippon Telegr & Teleph Corp <Ntt> Communication network quality evaluation method and evaluation system
JP2000200230A (en) * 1999-01-05 2000-07-18 Hitachi Software Eng Co Ltd Method for measuring performance of client-server system, and client-server system
WO2000042513A1 (en) * 1999-01-11 2000-07-20 William Kuykendall Network management system
KR20010018998A (en) * 1999-08-24 2001-03-15 오수영 System for analysing of network-quality and method for analysing of network-quality using the same

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2399189A (en) * 2003-03-05 2004-09-08 Quazal Technologies Inc Coherent data sharing by delaying the processing of data by a time related to the network latency
GB2399189B (en) * 2003-03-05 2006-07-19 Quazal Technologies Inc Coherent data sharing
US7527558B2 (en) 2003-03-05 2009-05-05 Quazal Technologies Inc. Coherent data sharing
EP1530341A1 (en) * 2003-11-06 2005-05-11 Hitachi, Ltd. Load balancing system
CN100379207C (en) * 2003-11-06 2008-04-02 株式会社日立制作所 Load balancing system
US7827531B2 (en) 2007-01-05 2010-11-02 Microsoft Corporation Software testing techniques for stack-based environments
EP2106109A1 (en) * 2008-03-25 2009-09-30 Fujitsu Limited Method for identifying a device transmitting an echo signal, echo source identifying method for identifying echo source, measuring apparatus for identifying a source of an echo, and echo source identifying apparatus
US8265231B2 (en) 2008-03-25 2012-09-11 Fujitsu Limited Method for identifying a device transmitting an echo signal, echo source identifying method for identifying echo source, measuring apparatus for identifying a source of an echo, and echo source identifying apparatus
WO2011004188A3 (en) * 2009-07-06 2011-04-14 Omnifone Ltd A method for automatically identifying potential issues with the configuration of a network
GB2471769A (en) * 2009-07-06 2011-01-12 Omnifone Ltd Automatically identifying configuration issues by network testing
CN104951399A (en) * 2015-06-19 2015-09-30 北京齐尔布莱特科技有限公司 Software test system and method
CN104951399B (en) * 2015-06-19 2017-11-07 北京齐尔布莱特科技有限公司 A kind of software testing system and method
WO2019000301A1 (en) * 2017-06-29 2019-01-03 麦格创科技(深圳)有限公司 Network information collection method and system
CN110457199A (en) * 2018-05-08 2019-11-15 北京京东尚科信息技术有限公司 The method and apparatus of performance test
CN113063454A (en) * 2020-09-15 2021-07-02 山东华科信息技术有限公司 Detection system and detection method for batch detection of water immersion sensors
CN112511454A (en) * 2020-10-14 2021-03-16 网宿科技股份有限公司 Method, system and device for detecting network quality
CN112671822A (en) * 2020-10-20 2021-04-16 北京字跳网络技术有限公司 Service request processing method, device, storage medium, server and system
CN112671822B (en) * 2020-10-20 2022-06-17 北京字跳网络技术有限公司 Service request processing method, device, storage medium, server and system

Also Published As

Publication number Publication date
KR20020078240A (en) 2002-10-18
KR100405054B1 (en) 2003-11-07

Similar Documents

Publication Publication Date Title
WO2002082727A1 (en) Method for collecting a network performance information, computer readable medium storing the same, and an analysis system and method for network performance
US8825849B2 (en) Distributed data collection and aggregation
US7937470B2 (en) Methods of determining communications protocol latency
US7277938B2 (en) Method and system for managing performance of data transfers for a data access system
CN101933290B (en) Method for configuring acls on network device based on flow information
US20050262104A1 (en) Method and system for internet performance monitoring and analysis
US20050060425A1 (en) Application-based autonomic connectivity
US7661033B2 (en) Method and system for establishing network connections
US20030069974A1 (en) Method and apparatus for load balancing web servers and virtual web servers
US20030172163A1 (en) Server load balancing system, server load balancing device, and content management device
US20060029016A1 (en) Debugging application performance over a network
US20060045019A1 (en) Network testing agent with integrated microkernel operating system
WO2002023434A2 (en) Agent-based performance monitoring service
US20230199073A1 (en) Proxy selection by monitoring quality and available capacity
WO2022134616A1 (en) Wireless network delay processing method and system and access server
US8914432B2 (en) Real world traffic
US20060069777A1 (en) Request message control method for using service and service providing system
CN110401706A (en) Service request processing method, device, storage medium and terminal
US20030014128A1 (en) System, method, and apparatus for measuring application performance management
CN1860734A (en) Method and apparatus for network throughput measurement
CN108259576B (en) Software and hardware real-time information transmission system and method
CN101494654B (en) Method and apparatus for determining server accessibility
KR100706955B1 (en) Method and System for Managing Network by Using Agent Independent of Network Element
JP5381247B2 (en) Load distribution device, load distribution method, load distribution program, and load distribution system
CN112242937B (en) Network speed measuring method and device, electronic equipment and computer readable medium

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 69(1) EPC OF 15-01-2004

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP