Relying on rapid advancement of hardware and communication technology, Internet of Things (IoT) is consistently promoting every sphere of cyber-physical environments. Consequently, different IoT-enabled systems such as smart healthcare, smart city, smart home, smart factory, smart transport and smart agriculture are getting significant attention across the world. Cloud computing is considered as the base stone for offering infrastructure, platform and software services to develop IoT enabled systems [1]. However, Cloud datacenters reside at a multi-hop distance from the IoT data sources that increases latency in data propagation. This issue also adversely impacts the service delivery time of IoT enabled systems and for real time use cases such as monitoring health of critical patients, emergency fire and traffic management, it is quite unacceptable. In addition, IoT devices are geographically distributed and can generate a huge amount of data in per unit time. If every single IoT-data is sent to Cloud for processing, the global Internet will be overloaded. To overcome these challenges, involvement of Edge computational resources to serve IoT-enabled systems can be a potential solution [2]. Fog computing, interchangeably defined as Edge computing, is a very recent inclusion in the domain of computing paradigms that targets offering Cloud-like services Wiley STM / Editor Buyya, Srirama: Fog and Edge Computing: Principles and Paradigms, Chapter 17 / Modelling and Simulation of Fog and Edge