# Agent-Based Virtual Machine Migration for Load Balancing and Co-Resident Attack in Cloud Computing
## 1 Introduction  
Cloud computing is based on a group of networked servers, typically comprised of various commodity hosts with diverse computing resources [1, 2]. Virtualization technology is commonly utilized in cloud computing to mask server heterogeneity, permit server consolidation, and enhance server utilization [3, 4, 5]. Virtualized hosts can host multiple virtual machines (VMs) with different resource requirements and varied workload types [6]. When servers host heterogeneous VMs with differing resource requirements, which may fluctuate unpredictably, it can cause an imbalance in resource usage within hosts, leading to service level agreement breaches and performance degradation. Unequal computing demands and workload imbalances can result in an accumulation of resource usage imbalances within hosts. For example, a VM that needs higher CPU resources but fewer memory resources [7] may result in imbalanced resource usage on the host. As a result, VM allocation to hosts should consider both computing resource parameters, such as the number of cores and memory size, as well as the dynamic workload. The dynamic balancing of workloads in cloud computing is increasingly achieved through live VM migration [8], which transfers VMs from an overloaded host to another with idle computing resources [9]. At the same time, it should be noted that the co-location of VMs produced for service requests from different customers on the same physical server in cloud computing introduces distinct security and reliability risks that have been overlooked by currentload balancing algorithms. Co-Resident Attacks (CRAs) are malicious attacks on cloud computing services, which means that malware-infected VMs are on the same server as a target VM. Then, the malicious VMs may establish a side channel to enable data theft or corruption [10; 11]. Various CRA mitigation techniques have been proposed, including side-channel elimination, VM assignment or migration, and game-theory-based strategies [12; 13; 14; 15]. Ref. [16] provides an overview of several existing CRA defense mechanisms. In recent years, CRA mitigation strategies based on probabilistic combinatorial models have been proposed and analyzed, including data partitioning, replication and Non-Volatile Memory (NVM). These strategies have been developed to address both data reliability and security issues. Although existing load balancing mechanisms in cloud computing generally do not consider co-resident attack factors, VM allocation and migration can mitigate these attacks while also being the primary means of achieving cloud computing load balancing. Therefore, by integrating load balancing and co-resident attack factors into a unified VM migration mechanism, both issues can be mitigated simultaneously. Motivated by this notion, our research endeavors to establish a comprehensive approach that integrates VM migration, load balancing, and CRA while addressing these concerns within a unified framework. Agent-based methods have emerged as an effective approach for load balancing and co-resident attack mitigation in cloud computing environments. Agent-based cloud computing is a productive and efficient approach to managing cloud resources, as demonstrated by various examples [17; 18]. This paradigm uses Agent-based strategies to achieve complex goals, such as load balancing and CRA mitigation, in a constantly evolving cloud computing environment. Agent-based load balancing is a method of distributing incoming requests across multiple servers in a distributed system, with the goal of optimizing resource utilization and minimizing response time. This approach employs a software agent that is deployed on each server, which communicates with other agents to coordinate the distribution of incoming requests. Our research objective is to develop policies for VM live migration that address both load-balancing and security concerns in a Cloud Computing environment.