Yet Another Fog Simulator (YAFS)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
docs a commit Apr 24, 2018
src some fixed bugs Oct 31, 2018
AUTHORS.TXT a commit Mar 9, 2018
CHANGES.txt a commit Apr 6, 2018
LICENSE.txt a commit Feb 27, 2018 a commit Feb 27, 2018 comments Jul 26, 2018
README.txt a commit Apr 5, 2018
setup.cfg a commit Feb 27, 2018 a commit Apr 6, 2018

YAFS logo

YAFS (Yet Another Fog Simulator) is a simulator tool based on Python of architectures such as: Fog Computing ecosystems for several analysis regarding with the placement of resources, cost deployment, network design, ... IoT environments are the most evident fact of this type of architecture.

The highlights points of YAFS are:

  • Dinamyc topology: entities and network links can be created or removed along the simulation.
  • Dinamyc creation of messages sources: sensors can generate messages from different point access along the simulation.
  • And for hence, the placement allocation algorithm and the orchestration algorithm, that are extended by the user, can run along the simulation.
  • The topology of the network is based on Complex Network theory. Thus, the algorithms can obtain more valuable indicators from topological features.
  • The results are stored in a raw format in a nosql database. The simpler the format, the easier it is to perform any type of statistics.

YAFS is released under the MIT License. However, we would like to know in which project or publication have you used or mentioned YAFS.

Please consider use this cite when you use YAFS:



YAFS requires Python 2.7 (Python 3.6 or above is not supported)

You can install YAFS easily via pip:

    $ pip install yafs

You can also download and install YAFS manually:

    $ cd where/you/put/yafs/
    $ python install

Getting started

The YAFS tutorial is a good starting point for you. You can also try out some of the Examples shipped with YAFS but in any case you have to understand the main concepts of Cloud Computing and other related architectures to design and modelling your own model.

Documentation and Help

The documentation contains a tutorial, the architecture design explaining key concepts, a number of examples and the API reference.

For more help, contact with the authors or You must dig through the source code


  • june / 25 / 2018 Bug Fixed - The DES.src metric of the CSV results is fixed. Identifies the DES-process who sends the message
  • june / 20 / 2018 Messages from sources have an unique identifier that is copied in all the transmissions. We can trace each application invocation.


Authors acknowledge financial support through grant project ORDCOT with number TIN2017-88547-P (AEI/FEDER, UE)