IoTSim Release


BigDataSDNSim is a discrete-event simulation tool designed to enable the modeling and simulation of Big Data Management Systems (BDMS such as Apache Hadoop YARN), MapReduce programming model, and Software Defined Network (SDN)-enabled networks within cloud computing environments. It is the first tool that models and simulates the three merging technologies (MapReduce-BDMS, Stream-BDMS, SDN, cloud) in a single simulator.  The simulator is capable of capturing the key functions, characteristics, and behaviors of the SDN-enabled MapReduce computing environment. It is also capable of modeling the functionalities of MapReduce applications in line with mimicking diverse SDN capabilities and interactions with BDMS systems in a seamless manner. The conceptual architecture of the simulator is shown below.

Conceptual Architecture of BigDataSDNSim

BigDataSDNSim differs from other simulation tools in supporting a holistic simulation framework that simulates MapReduce applications, BDMS, and SDN-related networks in cloud-based environments. In particular, BigDataSDNSim is capable of modeling and simulating:

  • A generic big data approach for executing different big data programming models (e.g. MapReduce, Stream) simultaneously;
  • MapReduce applications within big data cluster management (BDMS), which is one of the key prominent framework for running different big data models;
  • The behaviors and features of SDN dynamic networks coupled with the coordination and interaction with MapReduce applications within cloud environments;
  • Dynamic routing mechanisms based on graph theory to enable any type of network topology to be seamlessly simulated;
  • Modeling several policies for SDN, MapReduce, and VM within cloud data centers for multilevel optimization;
  • Variety of cloud data center nodes combined with SDN controllers to satisfy the requirements of big data applications


Find the following links to download the simulator and user manual to start work on it.

  • BigDataSDNSim __ Code [LINK]
  • BigDataSDNSim __ User manual [LINK]
  • BigDataSDNSim __ Introduction Video [Coming Soon!]

Support email: Khalid Alwasel (

Scientific References

Khaled Alwasel, Rodrigo N. Calheiros, Saurabh Garg, Rajkumar Buyya, and Rajiv Ranjan, “BigDataSDNSim: A Simulator for Analyzing Big Data Applications in Software-Defined Cloud Data Centers“,


IoTSim-Edge simulator provides the following features to simulate the IoT and edge environment.

  1. Variety of IoT devices need to be combined with edge IoT gateways  to satisfy the requirements of an application
  2. Modeling networking graph between diverse type of IoT and edge computing device in an abstract manner can be very challenging
  3. Modeling data and control flow dependencies between IoT and Edge layers to support diverse data analysis work-flow structure is non-trivial
  4. Capacity planning across edge computing layer is challenging as it depends on various configuration parameters including data volume, data velocity, upstream/downstream network bandwidth, to name a few
  5. The communication between IoT and edge devices is very different from cloud datacenter communication, which is generally based on wired and/or wireless protocol.
  6. The energy model of sensor nodes
  7. Modeling the mobility pattern of devices dynamicity of IoT environment

IoTSim-Edge simulator also models the distribution and processing of streaming data generated by IoT devices in the Edge computing environment.


Above figure describes The IoTSim-Edge sytstem model. To better describe the management of computing, the computing environments are divided into two main  layer 1 (L1), edge systems and microdata centers; and layer 2 (L2), IoT devices. The IoTSim-Edge also supports of modelling of data  analysis tasks as MicroElements (MELs) – a fundamentaly new graph-based abstraction to model and program IoT applications.

Unique Features

  • New IoT application graph modeling abstraction that allows practitioners to define the data analytic operations and their mapping to different parts of the infrastructure (e.g. IoT and edge).
  • The abstraction that supports modeling of heterogeneous IoT protocols along with their energy consumption profile.
  • It allows practitioners to define the configuration of edge and IoT devices along with the specific protocols they support for networking.
  • The abstraction that supports modeling of mobile IoT devices.
  • It also captures the effect of handoff caused by the movement of IoT devices. This supports a cooperative edge-to-edge communication that allows the transfer of the processed data of the respective IoT device by one edge via another edge.


Find the following links to download the simulator and user manual to start work on it.

  • IoTSim-Edge __ Code [LINK
  • IoTSim-Edge __ User manual [LINK]
  • IoTSim-Edge __ Introduction Video [LINK]

Support email: Khalid Alwasel (, Deepak Puthal  (  and Devki Nandan Jha (

Scientific References

  1. X. Zeng, S. K. Garg, P. Strazdins, P. Jayaraman, D. Georgakopoulos and R. Ranjan, “IOTSim: a Simulator for Analysing IoT Applications,” Journal of System Architecture, Elsevier. [ISI Impact Factor: 0.44] (Accepted July 2016)
  2. G. Kecskemeti, G. Casale, D. N. Jha, J. Lyon, R. Ranjan, “Modelling and Simulation Challenges in the Internet of Things,” IEEE Cloud Computing, IEEE Computer Society. (To Appear January 2017, Reviewed by Editorial Board) [ISI Impact Factor: 4.39]
  3. D. N. Jha, K. Alwasel, A. Alshoshan, X. Huang, R. K. Naha, S. K. Battula, S. Garg, D. Puthal, P. James, A. Y. Zomaya, S. Dustdar, and R. Ranjan, “IoTSim-Edge: A Simulation Framework for Modeling the Behaviour of IoT and Edge Computing Environments“, Software: Practice and Experience, 2019. (Minor Revision May 2019)


IoTSim-Stream is an IoT Simulator for Stream processing on the big data that offers an environment to model complex stream graph applications in Multicloud environment, where the large-scale simulation-based studies can be conducted to evaluate and analyze these applications. It leverages the features of CloudSim and integrating real-time processing model with workflow scheduling and execution to execute the modeled stream graph application in Multicloud environment.

IoTSim-Stream supports the modelling of different patterns/structures of stream workflow applications, which are linear (a multi-stage application where each stage processes input stream generated by the previous stage and produces the output stream to the following stage), branching (an application with limited precedence constraints that splits data stream to perform different parallel processing and then combining the results for further analysing) and hybrid (a mix of linear and branching patterns).

Above figure shows simple instance of large-scale datastream-processing service that an be simulated and modelled using IoTSim-Stream. The example service consists of Apache Kafka (data ingestion layer), Apache Storm (data analytics layer), and  Apache Cassandra Systems (data storage layer).

Unique Features

  • Support modeling data incentive IoT-based applications using stream processing model (aka stream graph applications).
  • Support modeling Multicloud environment as an execution environment for stream graph application.
  • Support user-defined resource provisioning and scheduling policies.


Find the following links to download the simulator and user manual to start work on it.

  • IoTSim-Stream __ Code [LINK]
  • IoTSim-Stream __ User manual [LINK]
  • IoTSim-Stream __ Introduction Video [LINK]

Support email: Mutaz Barkia (  and Khalid Alwasel (

Scientific References

  1. M. Barika, S. Garg, A. Chan, R. N. Calheiros and R. Ranjan, “IoTSim-Stream: Modeling Stream Graph Application in Cloud Simulation,” Future Generation Computer Systems Journal,  Elsevier Press. [ERA A Journal, ISI impact factor: 3.99] (accepted April 2019, in press)
  2. X. Zeng, S. K. Garg, P. Strazdins, P. Jayaraman, D. Georgakopoulos and R. Ranjan, “IOTSim: a Simulator for Analysing IoT Applications,” Journal of System Architecture, Elsevier. [ISI Impact Factor: 0.44] (Accepted July 2016)