7
Research Article Design and Implementation of Software-Based Simulator for Performance Evaluation of Transmission Protocol Chang-Su Kim, Jong-Il Park, and Hoe-Kyung Jung Department of Computer Engineering, Pai Chai University, Daejeon 302-735, Republic of Korea Correspondence should be addressed to Hoe-Kyung Jung; [email protected] Received 24 December 2013; Revised 6 February 2014; Accepted 25 February 2014; Published 30 March 2014 Academic Editor: Jongsung Kim Copyright © 2014 Chang-Su Kim et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. We propose a method of soſtware-based transmission protocol simulation for the establishment of ubiquitous infrastructure as a method of securing reliability of a ubiquitous sensor network (USN), which is an important element of ubiquitous infrastructure establishment. For this, we designed a transmission protocol network performance measurement simulator. e network simulator was simplified and, thus, could be used for all types of protocol tests. It enabled transmission control protocol (TCP) and user datagram protocol (UDP) transmission and reception regardless of the number of times of transmission and reception. In addition, we implemented an independent network simulator on a platform that enabled transmission at predetermined intervals according to the number of times of transmission and provided the function of randomly transmitting a defined message. 1. Introduction Recently, as networking description has been improved; implementing ubiquitous environment is being studied which makes easily obtain information anytime and any- where you want. Especially, each heterogeneous device has sensor consisting of ubiquitous sensor network (USN) to collect information in ubiquitous environment. For this device, networking function is very important which is reliable between heterogeneous sensor devices. For a reliable USN, the technology to measure and improve the networking performance between dissimilar sensor devices is very important [1, 2]. However, the network performance evaluation method using smart bits, although it renders a reliable performance evaluation to provide the information needed to improve the soſtware and the hardware, may not be easily introduced to a company having a disadvantaged development environment because the tech- nology requires expensive hardware for the special purpose. In addition, there is an urgent need for a transmission protocol simulator, which can be readily applied to actual work in order to improve the development speed and can be easily used [3]. e most soſtware used in real work-site needs trans- mission control protocol (TCP) and user datagram protocol (UDP) necessarily performing network communication; so extra test program has been made for all cases to test developing program. erefore, transfer protocol simulator is highly required to utilize easily and fastening development applying for field work. e simulator should not be limited to a specific protocol such as session initiation protocol (SIP) but should be appli- cable to various protocols in which soſtware development is required, such as simple network management protocol (SNMP) [4], in order to maximize its utilization [5]. In this study, a soſtware-based transmission protocol simulator was designed and implemented. e network simulator was simplified and, thus, could be used for all types of protocol tests. It enabled TCP and UDP transmission and reception regardless of the number of times of transmission and reception. Further, an independent network simulator was realized on a platform that provided the function of randomly transmitting a defined message. e soſtware- based network simulator can be generally used in a graphical user interface (GUI) mode without the need for expensive hardware. Hindawi Publishing Corporation International Journal of Distributed Sensor Networks Volume 2014, Article ID 795153, 6 pages http://dx.doi.org/10.1155/2014/795153

Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

Research ArticleDesign and Implementation of Software-Based Simulator forPerformance Evaluation of Transmission Protocol

Chang-Su Kim, Jong-Il Park, and Hoe-Kyung Jung

Department of Computer Engineering, Pai Chai University, Daejeon 302-735, Republic of Korea

Correspondence should be addressed to Hoe-Kyung Jung; [email protected]

Received 24 December 2013; Revised 6 February 2014; Accepted 25 February 2014; Published 30 March 2014

Academic Editor: Jongsung Kim

Copyright © 2014 Chang-Su Kim et al.This is an open access article distributed under the Creative Commons Attribution License,which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

We propose a method of software-based transmission protocol simulation for the establishment of ubiquitous infrastructure as amethod of securing reliability of a ubiquitous sensor network (USN), which is an important element of ubiquitous infrastructureestablishment. For this, we designed a transmission protocol network performancemeasurement simulator.The network simulatorwas simplified and, thus, could be used for all types of protocol tests. It enabled transmission control protocol (TCP) and userdatagram protocol (UDP) transmission and reception regardless of the number of times of transmission and reception. In addition,we implemented an independent network simulator on a platform that enabled transmission at predetermined intervals accordingto the number of times of transmission and provided the function of randomly transmitting a defined message.

1. Introduction

Recently, as networking description has been improved;implementing ubiquitous environment is being studiedwhich makes easily obtain information anytime and any-where you want. Especially, each heterogeneous device hassensor consisting of ubiquitous sensor network (USN) tocollect information in ubiquitous environment. For thisdevice, networking function is very important which isreliable between heterogeneous sensor devices.

For a reliable USN, the technology to measure andimprove the networking performance between dissimilarsensor devices is very important [1, 2]. However, the networkperformance evaluation method using smart bits, althoughit renders a reliable performance evaluation to providethe information needed to improve the software and thehardware, may not be easily introduced to a company havinga disadvantaged development environment because the tech-nology requires expensive hardware for the special purpose.In addition, there is an urgent need for a transmissionprotocol simulator, which can be readily applied to actualwork in order to improve the development speed and can beeasily used [3].

The most software used in real work-site needs trans-mission control protocol (TCP) and user datagram protocol(UDP) necessarily performing network communication; soextra test program has been made for all cases to testdeveloping program. Therefore, transfer protocol simulatoris highly required to utilize easily and fastening developmentapplying for field work.

The simulator should not be limited to a specific protocolsuch as session initiation protocol (SIP) but should be appli-cable to various protocols in which software developmentis required, such as simple network management protocol(SNMP) [4], in order to maximize its utilization [5].

In this study, a software-based transmission protocolsimulator was designed and implemented. The networksimulator was simplified and, thus, could be used for all typesof protocol tests. It enabled TCP and UDP transmission andreception regardless of the number of times of transmissionand reception. Further, an independent network simulatorwas realized on a platform that provided the function ofrandomly transmitting a defined message. The software-based network simulator can be generally used in a graphicaluser interface (GUI) mode without the need for expensivehardware.

Hindawi Publishing CorporationInternational Journal of Distributed Sensor NetworksVolume 2014, Article ID 795153, 6 pageshttp://dx.doi.org/10.1155/2014/795153

Page 2: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

2 International Journal of Distributed Sensor Networks

2. Analysis of Requirements

As most of the conventional network simulators are speciallydesigned for a particular protocol, they may be used onlywhen the protocol has been accurately analyzed. Moreover,the use of conventional network simulators is limited becauseof their high price, which mostly runs into tens of thousandsof US dollars [6–9].

Therefore, in this study, we analyzed the operatingmethods of various conventional simulators and designeda simulator that can be used for testing all the differentprotocols, allowing TCP and UDP transmission and recep-tion regardless of the number of times of transmission andreception, enabling transmission at predetermined intervalsaccording to the number of times of transmission, andproviding the function of randomly transmitting a definedmessage. The designed network simulator has the followingfunctions:

(i) functioning independently on the platform,(ii) allowing for random transmission of a defined mes-

sage,(iii) not being limited to a specific protocol,(iv) allowing for choosing either server or client.

3. Simulator Design

This section describes the design and realization of theproposed simulator.The basic block diagram of the simulatoris shown in Figure 1. The SIP Tester module comprises threemodules, namely, the TCPmodule, the UDPmodule, and theTest Msg module.

First, the SIPTestermodule is the coremodule controllingthe TCPmodule, theUDPmodule, and the TestMsgmodule.Second, the TCP module controls TCP transmission andreception, and the UDP module controls UDP transmissionand reception. Third, the Test Msg module provides the texttransmitted by the TCP module and the UDP module.

3.1. Simulator Environment Design. Table 1 shows the basicenvironment for the transmission protocol simulator.

3.2. Simulator Default Setting. For the simulator to testnetwork traffic, the CUI was designed to reflect the followingrequirements. In the default setting, a server or a client thatplays the main function in the network can be set (Table 2).The records of the transmitted and the received data can beviewed in order for the simulator to use the data transmissionand reception information. A message to be transmittedcan be conveniently prepared and tested. With respect tothe performance information, the transmission interval, thenumber of times of transmission, and the random messagegeneration can be set.

4. Simulator Implementation

The implemented simulator largely comprises a UDP server,a UDP client, a TCP server, and a TCP client. Among them,

SIP tester module

TCP module Server

Client

Server

Client

Echo

Recv

Sleep

Count

Echo

Recv

Sleep

Count

UDP module

Test Msg module Msg Edit

Random

Get Text

Figure 1: Simulator block diagram.

Table 1: Simulator design environment.

Item Environment

Development platform Windows XP Professional Service Pack3

Development tool Microsoft Visual Studio 2008Application range Windows, Linux compatibleProtocol TCP, UDPSC model Allows for the selection of server-client

Message Allows for the determination oftransmission message by selecting file

Transmission speed Allows for millisecond-unit speedcontrol and MAX speed

Transmission amount Allows for the generation of 1 to 232data

Random data Allows for the generation andtransmission of random data

Table 2: List of simulator default settings.

Item Content NoteServer, client Server, client Radio button

Server Echo server functionselection Check box

Client Reception functionselection Check box

IP, port IP, port setting Text box

Start, stop Intuitive start andstop

Button,activated/inactivated

the UDP server and the TCP server perform the echo serverfunctions, while the UDP client and the TCP client performreception functions.

4.1. UDP Server. Figure 2 shows the execution screen of theUDP server.TheUDP server sets its own IP and port numberand determines whether to function as an echo server byusing a radio button.When the function is executed, the Start

Page 3: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

International Journal of Distributed Sensor Networks 3

Figure 2: UDP server execution screen.

button is inactivated and data reception starts by using the IPand the port that have been set in advance. This implies thattheUDP server functions as a UDP socket server by using theset values.

As the UDP server can intuitively recognize whether itis normally functioning, the log for data transmission andreception is managed as table-type record information at thecenter of the screen in order to inform the user regardingthe normal function of the simulator. As the UDP serverhas the immediate processing function enabling the optimumreception, the UDP server has the immediate processingmechanism without an additional setting for the Sleep orCount Information.

4.2. UDP Client. The UDP client is a simulator function thatis the opposite of the UDP server. The UDP client transmitsa message to the server waiting for data reception. The UDPclient execution screen includes a setting window in whichthe IP and the port of the server waiting for reception are set.

TheUDPclient provides a convenient interface to the useras it has a screen composition similar to that of the UDPserver. However, different from the server execution screen,there are five message selection buttons on the right, and the“Test Msg Edit” button is additionally activated. These arenecessary for the client to create the data to be transmittedto the server. Although the user can create and transmit therequired message each time the user needs it by using the“User defined message,” the user may create a data file inadvance and then test the data conveniently. An SIP messagetest is performed as follows.

4.2.1. Direct Input by User. When a user directly creates anSIPmessage and transmits themessage, the user creates “User

Figure 3: SIP INVITE message transmission.

Figure 4: Defining transmitted message in advance.

defined message” and transmits it, as shown in Figure 3. Thismethod is useful when the transmission of a short message istested, but the method is inefficient when the test needs to beperformed repeatedly.

4.2.2. Test Using File. It may not be efficient for a user to inputan input message each time. To resolve the inconvenience, atestmessage can be prepared in advance. For this, the user hasto click the “Test Msg Edit” button, and, then, a dialog boxappears. Figure 4 shows the procedure for saving a message.The message to save is put into the text window. When theuser clicks the “SAVE” button, the notification window “SaveOK” appears.

Page 4: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

4 International Journal of Distributed Sensor Networks

Figure 5 shows an example of generating a message 15times by using a predefined file.

4.2.3. Random Transmission. The function to randomlytransmit various types of messages is essential in a softwaredevelopment process. Figure 6 shows the screen after the datahave been transmitted. A hundred messages are randomlygenerated from selected objects to enable the simulation ofvarious types of data.

4.2.4. Transmission Speed. The simulator may transmit datain a millisecond-unit interval. To prevent another transmis-sion while transmitting data at a predetermined interval, the“Send” button is inactivated and the data are transmitted atthe defined interval.

4.2.5. Load Test Using Transmission Data Amount. For theload test, which is an essential test item for a networksimulator, the amount of transmission data can be set. Thenumber of amount of transmission data that may be selectedis 232.

4.3. TCP Server. As TCP is a connection-oriented transmis-sion protocol, a server needs a procedure for waiting for asocket connection, which includes a socket connection froma client or finishing off a socket connection when a client isfinished. For this, it is necessary to express the connectionstatus information of a client. As the TCP server was realizedby using the same GUI as that of the UDP server, a user mayintuitively understand the information. The method of usingthe TCP server is the same regardless of the TCP/UDP socket.As shown in Figure 7, the biggest difference between the TCPserver and the UDP server is the method of expressing theconnection information.The TCP server expresses the statusinformation by means of the “notice” value in the Up/Downdomain.

4.4. TCP Client. In contrast to UDP, the TCP client firstlyattempts the connection for the communicationwith a server,preferably with the TCP server. As in the case of the UDPclient, the connection and the finish of the connection areperformed simply by using the “Start” and “Stop” buttons,respectively. Figure 8 shows the normal data transmission bythe TCP client without a problem in the connection betweenthe servers.

4.5. Verification between Dissimilar Platforms. Thus far, thesimulator has been used as a server and a client, andthe simulator functioning was verified by using the samesystem for convenience. However, for the actual functioningof a simulator, the data transmission between dissimilarplatforms should be tested to check out whether the simulatorcan be used in an actual development process.

For this, a UDP server was created on Linux and thesimulator suggested in this study was used for verifyingthe functioning. Each of the UDP and TCP transmission

Figure 5: Mass transmission of message by using predefined file.

Figure 6: Random data transmission screen.

protocols was tested as a server and as a client. Herein, onlythe test performed with UDP is described.

To test the UDP server, the simulator suggested inthis study was used as the client. Figure 9 shows the datatransmission procedure using the simulator as a client in theprocess of testing the Linux-Windows network.

Page 5: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

International Journal of Distributed Sensor Networks 5

Figure 7: TCP server client connection screen.

Figure 8: TCP client data transmission.

4.6.Measurement of Network Performance. A software devel-oper often confronts a situation where the network per-formance should be measured. In such a situation, datamay be normally processed by adding a basic algorithm forperformance measurement to the code under development.

Such a procedure was performed repeatedly with respectto the same data; the data were transmitted by the simulator

Figure 9: Simulator for the test of data transmission betweendissimilar platforms (client).

10

90

475

653

0

100

200

300

400

500

600

700

Tim

e tak

en

Starting timeFinish time

Data amount

23:57:21 23:59:55 0:24:32 0:35:4423:57:11 23:58:25 0:06:37 0:26:211,000 10,000 50,000 100,000

Figure 10: Measurement of time taken for transmitting the samedata.

for 1000, 10000, 50000, and 100000 times and processed by aLinux server. Figures 10 and 11 show the correlation betweenthe number of times of the data transmission and the timetaken for the transmission.

The two figures given above indicate that the transmis-sion of random data has a delay of approximately severalpercentage points in comparison with the transmission ofthe same data. The result is consistent with the fact that,during a network software development, the transmissionperformance is excellent when the same data are processedor the data of the same length are repeatedly processed. The

Page 6: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

6 International Journal of Distributed Sensor Networks

15

93

506

708

0

100

200

300

400

500

600

700

800

Tim

e tak

en

Starting time 0:51:52 0:53:31 1:02:09 1:15:13Finish time 0:51:37 0:51:58 0:53:43 1:03:25

Data amount 1,000 10,000 50,000 100,000Figure 11: Measurement of time taken for transmitting randomdata.

delay can be attributed to the data processing delay by thesimulator or by the Linux server. Irrespective of what thecause of the delay may be, the result indicates that the sim-ulator functions normally. The verification of the simulatorshowed that the simulator can be used as a more convenienttool for a developer to develop the network software.

5. Discussion and Conclusions

In this study, a software-based network simulator wasdesigned, realized, and verified.The transport layer simulatorsuggested in this paper supports both the TCP and the UDPprotocols, functions as a server and a client for each of theprotocols, and allows for the testing of the server and theclient. Further, the simulator was designed and realized sothat an echo server, which is the most basic element of socketcommunication, is built-in for the simulator to be generallyused by a beginner who studies socket communication oreven by a high-ranking engineer who develops advancedsoftware.

Approximately 4 billion datamay be transmitted for a test.Data transmission with a similar platform such as Linux wasalso verified. Further, the simulator proposed in this paperprovides the advantage of convenient use as it is developedon the basis of GUI. The simulator also provides a functionaladvantage in the fact that a user can separately define an SIPmessage to measure the network performance. In particular,the performance of all text-based UDP and TCP protocolscan be measured.

Functions to evaluate the performance of various proto-cols such as SCTP may need to be added to the simulator infuture studies.

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper.

References

[1] G. Chen, J. Branch,M. Pflug, L. Zhu, andB. Szymanski, “SENSE:a wireless sensor network simulator,” Advances in PervasiveComputing and Networking-, pp. 249–267, 2005.

[2] A. Howard, M. J. Mataric, and G. S. Sukhatme, “Mobilesensor network deployment using potential fields: a distributed,scalable solution to the area coverage problem,” in DistributedAutonomous Robotic Systems 5, pp. 299–308, Springer, Tokyo,Japan, 2002.

[3] N. Baldo, F. Maguolo, M. Miozzo, M. Rossi, and M. Zorzi, Ns2-MIRACLE: A Modular Framework form Multi-Technology andCross-Layer Support in Network simulator 2, ICST (Institute forComputer Sciences, Social-Informatics and Telecommunica-tions Engineering), Brussels, Belgium, 2007.

[4] M. Schoffstall, J. Case, M. Fedor, M. Schoffstall, and J. Davin, Asimple networkmanagement protocol (SNMP). RFC, 1157, 1990.

[5] S. Floyd and Yokohama IETF TSVWG, HighSpeed TCP forLarge Congestion Windows, 2002.

[6] W. S. Lee and H. W. Lee, “Performance evaluation of coor-dinated multi-point transmission and reception in indoormobile communication systems,” Journal of Information andCommunication Convergence Engineering, vol. 11, no. 3, pp. 167–172, 2013.

[7] E. M. Nahum, J. Tracey, and C. P. Wright, “Evaluating SIPserver performance,” ACM SIGMETRICS Performance Evalua-tion Review, vol. 35, no. 1, pp. 349–350, 2007.

[8] D. Pesch, M. I. Pous, and G. Foster, “Performance evaluation ofSIP-based multimedia services in UMTS,” Computer Networks,vol. 49, no. 3, pp. 385–403, 2005.

[9] Z. S. Sensinode, K. Hartke, and C. Bormann, ConstrainedApplication Protocol(CoAP), 2013.

Page 7: Research Article Design and Implementation of Software ...downloads.hindawi.com/journals/ijdsn/2014/795153.pdf · Introduction Recently, as networking description has been improved;

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Journal ofEngineeringVolume 2014

Submit your manuscripts athttp://www.hindawi.com

VLSI Design

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

The Scientific World JournalHindawi Publishing Corporation http://www.hindawi.com Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Modelling & Simulation in EngineeringHindawi Publishing Corporation http://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttp://www.hindawi.com Volume 2014

DistributedSensor Networks

International Journal of