A crucial performance concern in distributed decentralized environments, like clouds, is how to guarantee that jobs complete their execution within the estimated completion times using the available resources’ bandwidth fairly and efficiently while considering the resource performance variations. Formerly, several models including reservation, migration, and replication heuristics have been implemented to solve this concern under a variety of scheduling techniques; however, they have some undetermined obstacles. This paper proposes a dynamic job scheduling model (DTSCA) that uses job characteristics to map them to resources with minimum execution time taking into account utilizing the available resources bandwidth fairly to satisfy the cloud users quality of service (QoS) requirements and utilize the providers’ resources efficiently. The scheduling algorithm makes use of job characteristics (length, expected execution time, expected bandwidth) with regards to available symmetrical and non-symmetrical resources characteristics (CPU, memory, and available bandwidth). This scheduling strategy is based on generating an expectation value for each job that is proportional to how these job’s characteristics are related to all other jobs in total. That should make their virtual machine choice closer to their expectation, thus fairer. It also builds a feedback method which deals with reallocation of failed jobs that do not meet the mapping criteria.