Cloud computing is a popular technology that delivers a reliable, fault-tolerant, secure, consistent and scalable computational services. CloudSim is a toolkit used for simulating the cloud computing environments. CloudSim is a generalized and extensible simulation framework that offers modeling, simulation, and experimentation of evolving cloud computing infrastructures and services, encouraging its users to focus on specific system design issues that they wish to analyze. Its library contains the basic classes for describing data centers, virtual machines, applications, users, computational resources, and policies for management of various system components such as scheduling and service provisioning. CloudSim is not a ready-made solution; it is a library that requires the users to compose a Java program using its components to frame the desired scenario. However, CloudSim can be used to develop a ready-made solution. CloudSim is more popular among researchers and industry-based developers who needs to test the performance of a newly developed application service in a controlled and easy to install environment.