Abstract: imposesdifferent constraints in implementation of a

Abstract: Simulations are considered as the most convenientapproach for validating any research proposal. A simulatorattempts to model a real-world setting in order to analyzethe behavior of any algorithm. A large number of simulationsoftware for ad hoc network has been proposed in literature.These simulators are based on execution of simulation onstandalone computers. This paper introduces the notion of’simulation as a service’ for mobile ad hoc network’ssimulation based on cloud computing. Cloud computing is anemerging discipline that enables outsourcing computing taskremotely based on pay-as-you-go model. The paper providesa generalized architecture to perform ad hoc networksimulations on cloud platforms. Similar to different servicemodels provided by cloud, some service models have beenintroduced for cloud based simulation. The proposedapproach provides different advantages such as dynamicservice provisioning to support large scale simulation,sharing of simulation models and reduced cost for simulationetc. The proposed tool has been implemented on Herokuplatform that demonstrates the scalability of proposedapproach.Keywords: ad hoc network, simulation as a service, cloud basedsimulation, collaborative simulation1 IntroductionSimulation has been considered as amongst few effectivestrategies for validating any research proposal. They areespecially useful in situations where the environment imposesdifferent constraints in implementation of a proposition. Ad hocnetwork (an infrastructure-less wireless network) is one sucharea where it is often impossible to perform real-timeimplementation of any proposed solution.A testbed provides an alternative to analyze and validate aresearch proposal in lab-settings. However, testbeds are noteconomically feasible. In addition, it is very difficult to deploy,control and monitor a testbed environment. Simulations are analternative and cost effective approach for the validation ofscientific proposals. A simulator is a piece of software thatmimics the behavior of any real world environment. It provides ahandy approach to conduct research experiments. The input toany simulation software is a set of scenarios and the outputs areusually captured in trace file. The input scenarios arereproducible thus enhances the credibility of the experiments.The trace files can be used for further analysis.A large number of simulation software has been proposedin literature 1, 2. Among them, NS-2, Opnet and JIST/SWANSare some of the popular software. These simulation toolsgenerally provide a scripting language, such as TCL, formodeling simulation scenarios. The details of the various entitiesinvolved in simulation are written in programming languageslike C/C++ and Java. In addition, a number of statistical andvisualization packages are often supported by the software. Theproblem with current simulation software is that most of themare not suitable for simulating large scenarios. Some efforts havebeen put in this direction to produce scalable simulation tool kits(see details in section 2). JIST/SWANS, for instance, providesscalability by embedding simulation time into a virtual machine3.This paper presents a novel cloud based approach tosimulation. A novel tool called Online Ad hoc NetworkSimulation System (OASIS) has been proposed. According toCayirci 4, Modeling and Simulation as a service “is a modelfor provisioning modeling and simulation (M&S) services ondemand from a cloud service provider (CSP), which keeps theunderlying infrastructure, platform and softwarerequirements/details hidden from the users”. Cloud computinghas emerged as a new model of computing. It comprises a set ofpooled resources available to users as a utility. This enablesexecution of high performance computing (HPC) algorithms.The paper presents a generalized architecture to simulation basedon cloud computing. The approach defines different types ofservice models similar to service models supported byconventional cloud computing systems.Rest of the paper discusses the proposed scheme. In thenext section, a review of literature relevant to cloud basedsimulation is provided. The proposed approach to cloud basedsimulation is then presented. The discussions on implementationand evaluation of proposed approach are then provided. Thepaper concludes with discussions on limitations and possibleextensions of proposed work.2 Literature ReviewIn literature, a large number of software has been proposedfor simulation of MANET. Some of these tools are NS-2,Glmosim, Opnet, JSim, OMNet++, QualNet and JIST/SWANS1, 2, 5. Among these tools, only few provide support for largescale simulation. For instance, Glomosim 6 enables scalablesimulation using parallel discrete simulation capability provided by Parsec and can be run on shared memory symmetricprocessor computer. JIST/SWANS 7 is a Java basedsimulation tool that provides a highly efficient sequentialsimulation engine. It adopts virtual machine based simulation i.e.simulation time advances not by any clock but entitiesthemselves. The software claims to simulate networks twice aslarge as what can be simulated by NS-2 and GlmoSim.There have several efforts put in literature to providemodeling and simulation as a service on cloud platform. In 8,the concept of modeling and simulation as a service isintroduced. In 9, the authors presented a polymer portal whichis motivated by the fact that simulation software are oftenexpensive to use. So, a user can learn the simulation softwarefirst before actually buying the simulator. In addition, thesimulation can be rented when needed to reduce the cost. Theauthors in 10 proposed that all the activities of modeling andsimulation ranging from development and execution to analysisshould be performed online via a web browser on a cloudplatform. Cayirci 4 presented a survey on cloud basedmodeling and simulation. In 11, Simulation Software-as-aService(SimSaaS) is proposed for cloud that provides rapidsimulation in an elastic cloud environment. In 12, the authorspresented a network simulation environment based on theconcept of cloud computing.Based on the literature review, it is found that there has notbeen any effort put in to simulate ad hoc networks on cloudplatform and the work presented in this paper can be consideredthe first proposal in this direction.3 Cloud based simulation of mobile adhoc networkThis section presents the proposed approach to cloud basedsimulation. The basic motivation behind the proposition is thework on gird portal proposed for solving scientific applications13. Grid computing combines a large number of looselycoupled resources belonging to different administrative domainsfor solving computationally intensive problems. Grid portalsprovide a transparent, one point access to grid resources forsolving scientific problems. It is believed that similar to gridportals, an interface to cloud environment for submission of jobsand simulation of different research algorithms can bedeveloped. This provides a much more simplified approach tolarge scale simulation.3.1 Advantages of cloud based simulationThe development of a cloud based simulator providesseveral key benefits. The first and foremost important benefit isthe dynamic provisioning of resources. The computationalresources can be dynamically allocated for simulation when everrequired. This is unlike the conventional simulation approachthat will not work for very large number of nodes.The second advantage is that the simulation models areaccessible to wide range of researchers. Hence, experiments andsimulation scenarios can be reproduced by researchers to analyzeand extend any approach proposed by other researchers. Anotheradvantage of cloud based simulation is collaborative researchand sharing of important results.The simulations can be accessed globally irrespective of thelocation. Even the simulation can be controlled from thin clientslike mobile devices. Finally, the cloud can be easilyadministered, can be deployed with very low deployment cost,and requires very low associated cost for maintenance ofhardware.3.2 Proposed architectureFigure 1 shows the layered architecture of proposed cloudbased simulation. At the infrastructure layer resides differenttypes of computation and storage resources that are dynamicallyprovisioned using the hypervisor software. The platform layerhosts the actual operation system. Then, at the simulation layer,various components of simulation (as discussed later on) areavailable as services. These services can be accessed usingapplication interfaces or directly by client.Figure 1: Proposed architecture for cloud based simulationFigure 2 shows the various components of proposedsimulator. Every virtual machine hosts a simulation instance foran end user. A simulator comprises simulation engine,simulation library, simulation scripts and traces of simulation.Different user interfaces are provided to configure and control,visualize and analyze any simulation. In addition, scripts can bedeployed directly by end user interacting with simulator.3.3 User interfacesThe user interface provides an intuitive interface to end userfor interaction and creation of simulation networks. Figure 3shows the snapshots. The control panel (Figure 3a) provides aninterface for the management of various designing options.The control panel provides options to:• Add a New Node in the current configuration• Load a previously saved configuration• Save current configuration• Visualize the network• View Details of a node• Start the simulation Figure 2: Components of proposed simulatorThe Add New Node option provides the interface toconfigure the new node and starts the execution of node etc.Figure 3b shows the screen for configuration of a new node. Itprovides configuration for node identification, node’s IP addressand options for creating and removing links with other nodes etc.The visualizer is shown in Figure 3c. The nodes are representedas circles with their colors representing various states (such assending a message and receiving a message).a) Control Panel b) Configuration Panelc) VisualizerFigure 3: User interfaces for cloud based simulation3.4 SimulatorThe simulator is responsible for execution of scripts anddelivering the output of the simulation results to the end user.The client is relieved of the processing capabilities and theexecution of the simulation scripts are handled at cloud server.So the client requirements are minimized and the simulations areoptimally executed at the server end. The results of thesimulation are saved as a trace file and can be visualized on anywell known visualizer like NAM 14.3.5 Service ModelsThe proposed approach exposes different types ofsimulation services to end users as discussed below.3.5.1 Configuration-as-a-Service (CaaS):Using this service, a simulation scenario can be configured.A user can add/ delete a node, view/ set properties of node, load/save a configuration. These configurations are saved on thecloud.3.5.2 Deployment-as-a-Service (DaaS):Simulation scripts can be deployed at cloud servers usingthis service. Once a simulation script is deployed, it can beexecuted on cloud. The simulation scripts and results are alsoaccessible to a wide range of researchers for reproducing thesimulation experiments.3.5.3 Simulation-as-a-Service (SimaaS):A configured and deployed simulation can be executedusing this service. The simulation is executed and results aresaved on cloud storage which is then accessible to end user andcommunity of researchers.3.5.4 Visualization-as-a-Service (VaaS):One a simulation is running, it can be visualized in runtimeusing this service. Figure 3c shows snapshot of visualization4 Implementation DetailsThe proposed approach has been implemented on Herokucloud platform 15. As a bench mark algorithm, the servicediscovery scheme presented in 16 has been implemented. Therelevant scripts and different simulation scenarios have beenexecuted. Figure 4 shows the snapshot of simulation. Thevarious messages exchanged among the nodes, logs and servicerecords are shown in figure. The simulator implements various(such as MAC, transport and routing) protocols, statisticalanalysis tools and algorithms for ad hoc network simulation.Two basic routing protocols i.e. AODV 17 and DSR 18 areprovided for simulation. The simulation results are generated astrace files that can be read by any visualizer such as NAM. Theproposed approach has been analyzed by varying the number ofnodes as well as services in the network. Figure 4: Snapshot of simulationFigure 5 shows the performance of our simulator when itis run on cloud computing environment of Heroku. The resultsare compared with the same simulation run on a non-cloudenvironment. The simulations were performed with differentnumber of nodes. The results are obtained after 300sec ofsimulation. Hence, some service discovery requests remainunanswered. From the graph, it can be seen that with the rise innumber of nodes, the number of service discovery requests thatremain unanswered rises very sharply in non-cloud basedsimulation. While in the cloud-based simulation, the rise inunanswered discovery requests is linear. The reason is that thecloud based simulation dynamically provisions itself with therise in need of resource requirements. Hence, performancedoesn’t degraded sharply.Simulation ParametersSimulation Time 300 secServices 50Service Advertisement Frequency 10 / secRequests Issued 30 / minFigure 5: Performance with varying number of nodesFigure 6 shows the result with varying number ofservices. It can be seen that as the number of service increases,the cloud based simulation shows linear degradation inperformance while the non-cloud simulation degrades verysharply. The results confirmed that the cloud based simulationenvironment is scalable and is able to be simulated virtually forany resource requirements.Simulation ParametersSimulation Time 300 secNodes 100Service Advertisement Frequency 10 / secRequests Issued 30 / minFigure 6: Performance with varying number of services5 Open research issues in cloud basedsimulationCloud based simulation is a new paradigm that opensvarious research issues. This section outlines some of theseresearch issues and limitations of cloud based simulation. Thefirst challenge is the emergence of new security threats. Thesimulation performed on the cloud servers can be exposed toprivacy issues. The datasets used for simulation can be ofproprietary nature. Insecure interfaces and APIs, weakness ofhypervisors and account hijacking can be exploited tocompromise the privacy and integrity of cloud data. Thearchitecture of cloud (public, private or community cloud)becomes an important question in this situation. The availabilityof services becomes an issue as cloud services can become anattractive point for cyber attacks. Another important researchissue is the service model supported by the cloud. What are thevarious types of simulation services supported and how manysuch services are sufficient?6 ConclusionThis paper proposes a cloud based and scalable approach toad hoc network simulation. A generalized architecture has beenproposed and implemented, and different types of services havebeen identified. Different scenarios for evaluation of proposedapproach have been discussed. The proposed tool provides anovel approach that can be used in combination with othertechniques e.g. parallelization techniques adopted by othersimulators. New types of service models can be introduced forcloud based simulation. The proposed tool provides a reference010203040506010 100 200 500 1000Unanswered RequestsNodesCloud basedSimulationNon CloudSimulation01020304050607010 50 100 200 500Unanswered RequestsServicesCloud basedSimulationNon CloudSimulationimplementation of cloud based simulation. In future, differentsimulation packages for implementation of MAC layer models,routing protocols, simulation visualizes, mobility models andsupporting tools for statistical analysis can be developed.