ICACT20220174 Slide.01
[Big Slide]
|
Chrome Click!! |
 |
This paper proposes an improvement using application of Naïve Bayes algorithm (based on Bayes theorem on probability theory to make judgments as well as classify data based on observed and statistical data) to improve the response time of VMs in the cloud, enhance the performance of cloud and cloud infrastructure. This new proposal is named as RCBA (Response Time Classification with Naive Bayes Algorithm). We simulated this proposed RCBA algorithm with the CloudSim engine and the result has improved from 4 popular load balancing algorithms: Round-Robin, FCFS, MaxMin and MinMin.
|
ICACT20220174 Slide.02
[Big Slide]
|
Chrome Click!! |
 |
Cloud Computing is the trend of developing computer networks, inheriting previous networks and distributed computing concepts to integrate the existing network resources and provide the basement network for computers, storage, platform, and other services. These are based on demand of convenience and quickness, means that providers allow users to terminate their service, easily release their resources. With this approach, it can minimize interactions with providers and users only pay for the resources actually used (pay-by-use). |
ICACT20220174 Slide.03
[Big Slide]
|
Chrome Click!! |
 |
In addition, quality of service (QoS) standard is also paid attention to, which is the basis for ensuring quality of cloud computing. According to the article, the QoS of cloud computing is mainly due to the allocation of resources for the applications running on it. To ensure the quality of service provided to customers, we must consider the space needs as well as in terms of response performance, availability, and reliability. According to the document, QoS includes the following models: Workload model, System model and applications of QoS model. From here, we can see that load balancing is one of the important factors in ensuring quality of service on Cloud Computing and it is one of the research directions to help Cloud Computing perform better and more developed.
With the purpose of find a strategy for load balancing on cloud computing with enhancing response time, this article is organized with 5 sections as follows: section 1 is the introduction of load balancing on cloud computing; Section 2 is about the related works including surveys, reviews from some recently publication research works on load balancing; section 3 is the proposed load balancing algorithm (RCBA); section 4 discusses about the simulation and results of the proposed algorithm; and finally section 5 is our conclusion. |
ICACT20220174 Slide.04
[Big Slide]
|
Chrome Click!! |
 |
Related Work |
ICACT20220174 Slide.05
[Big Slide]
|
Chrome Click!! |
 |
Related Work |
ICACT20220174 Slide.06
[Big Slide]
|
Chrome Click!! |
 |
In this article, we would like to propose an algorithm to reduce response time on the cloud, by improving response time for users (userbase) and data centre processing times. For Response Time Classification, we use Naive Bayes Algorithm, and for Virtual Machines Clustering we use K-Means. This new algorithm is named as RCBA (Response Time Classification with Naive Bayes Algorithm). The aim is to improve the response time by modifying the LB on cloud (cloud computing), and the application on the cloud environment (cloud in real time) by the scheduling policy used is Time-Share for virtual machines and tasks. The objective is to use the Naive Bayes classifier scheduling algorithm combined with K-means clustering to improve the response time of the load balancing system in the cloud environment. |
ICACT20220174 Slide.07
[Big Slide]
|
Chrome Click!! |
 |
RCBA |
ICACT20220174 Slide.08
[Big Slide]
|
Chrome Click!! |
 |
Module 1 |
ICACT20220174 Slide.09
[Big Slide]
|
Chrome Click!! |
 |
Module 2 |
ICACT20220174 Slide.10
[Big Slide]
|
Chrome Click!! |
 |
Allocate virtual machine services. This module is responsible for allocating requests to the right virtual machines through the appropriate conditions defined by module 1 and module 2. If a request is sent, the request is classified by module 1, and the virtual servers in question even if this virtual server is not loaded are also clustered by module 2. Then the algorithm will calculate to find out which request is most suitable for which virtual machine through the return parameters of Naive Bayes and K-Means functions above. If the response time of the request (calculated from module 1) is the smallest, then this request will be processed on the virtual hosts with the furthest means (i.e., belonging to group 1, and having lowest usage). For requests that are not small or large, we can use calculation methods such as analogy or difference to calculate the allocation. |
ICACT20220174 Slide.11
[Big Slide]
|
Chrome Click!! |
 |
The historical data is always update after the completion of a request processing. We limit a number of requests depending on the requirement and the characteristic of the cloud users. |
ICACT20220174 Slide.12
[Big Slide]
|
Chrome Click!! |
 |
In this article, we use the CloudSim library (version 4.0) and programmed in JAVA language with Eclipse IDE tool. The cloud simulation environment is from 5 to 15 virtual machines, and it creates a random request to the cloud services, including CloudSim's virtual machine provisioning, provisioning, and user-response service for testing. |
ICACT20220174 Slide.13
[Big Slide]
|
Chrome Click!! |
 |
We run simulation experiments on CloudSim with 5 pre-built virtual machines to respond and serve the requests. Requests are initialized with random length and size, number of requests are from 20-50. To evaluate and to compare, we run these same requests with 04 algorithms Round-Robin, MaxMin, MinMin and FCFS. |
ICACT20220174 Slide.14
[Big Slide]
|
Chrome Click!! |
 |
Table 1 is the configuration of the datacenter that we use to simulate our proposal. We use these numbers based on the current physical datacenters we used to work with. |
ICACT20220174 Slide.15
[Big Slide]
|
Chrome Click!! |
 |
Table 2 is about the Virtual Machine configuration. We configure the VM with the above settings due to the request and the processing resources of the request respectively. In our research model, we just limit the request not too big and too complicated, just need 1 CPU (core) to handle, and the RAM usage is also not an issue. |
ICACT20220174 Slide.16
[Big Slide]
|
Chrome Click!! |
 |
Table 3 is our requests settings. The Requests (mostly like web requests). We simulate the short and small requests as normal users, not special user like IT specialists of other users. These requests are represented by the Cloudlet in CloudSim and the size of the Cloudlets are initialized randomly using JAVA's random function. The number of Cloudlets is to 20 to 1000 respectively. |
ICACT20220174 Slide.17
[Big Slide]
|
Chrome Click!! |
 |
The proposed algorithm is built by creating the RCBASchedulingAlgorithm class, inheriting from the BaseSchedulingAlgorithm object (original in CloudSim), updating some methods and properties related to predictRequestNB, and adjusting the built-in functions to fit the proposed algorithm output. The adjustment are made as following: |
ICACT20220174 Slide.18
[Big Slide]
|
Chrome Click!! |
 |
The results of running simulation experiments on CloudSim with 5 pre-built virtual machines to meet the requirements, requests are initialized with random length and size, the number of Requests is from 20-1000 and compared with other load balancing algorithms. They are Round-Robin, MaxMin, MinMin and FCFS algorithms. We focus on the response time, and consider it as a key criteria to evaluate and compare between algorithms.
To understand more detail, we simulated with 4 circumstances. These 4 cases are different by the number of requests. They are 25, 50, 100 and 1000 requests respectively. With 4 cases, we store the historical data of last 100 requests which has been served by the cloud. These data are the data for classifying the next coming requests. For initialize, we already built a dataset of 100 requests, and it is updating while a request finished. |
ICACT20220174 Slide.19
[Big Slide]
|
Chrome Click!! |
 |
Figure 11 shows the results of the 1st case, we run with 25 requests. The response time of RCBA is the lowest among the 25 requests, despite the debut is a bit higher. In this case, we can easily see that the 20th request may be complicated and bigger than other requests, causing that all algorithms¡¯ response time longer. But RCBA is the best in this processing. |
ICACT20220174 Slide.20
[Big Slide]
|
Chrome Click!! |
 |
TABLE 5. Experimental results response time with 50 Requests |
ICACT20220174 Slide.21
[Big Slide]
|
Chrome Click!! |
 |
In figure 12, we can see the 50 requests are not same and equivalent to each other. These 50 requests are different, leads to the different handling of VMs. The overall perspective shows that RCBA is the best one among them, RCBA keeps the response time lowest among the 5 algorithms, except some requests (no 20, 25 and 50). RCBA shows its stability and the suit for various changing of requests. Besides, we see that Round-Robin algorithm is dominant and fast processing, FCFS algorithm is also quite stable due to the small number of requests. MaxMin algorithm is does not perform well in this case.
|
ICACT20220174 Slide.22
[Big Slide]
|
Chrome Click!! |
 |
TABLE 6. Experimental results response time with 100 Requests |
ICACT20220174 Slide.23
[Big Slide]
|
Chrome Click!! |
 |
To test with more request, the 3rd case is 100 requests. Figure 13 shows that RCBA is still the most stable algorithm among the 5 ones. RCBA is only not good at the 40th and 50th requests, but it is just a bit smaller than the smallest. In this case, among the 50 request, the variant are much more, the graph shows like the zigzag image of all algorithms, this kind of requests fits the reality of cloud users. In this case, due to the small number of requests, we still see MaxMin the worst one. MinMin shows better than the 2nd case, and RoundRobin is still the stable one besides RCBA. To see how stable the proposed RCBA is, we continue with the 4th case that we use 1000 requests. |
ICACT20220174 Slide.24
[Big Slide]
|
Chrome Click!! |
 |
TABLE 7. Experimental results response time with 1000 Requests |
ICACT20220174 Slide.25
[Big Slide]
|
Chrome Click!! |
 |
Figure 14 stands for the response time of 5 algorithms with the 4th case. In this case, we can se from the 1st request to the 400th request, RCBA is far away from the rests. But from the 400th onward, RCBA is stable and show its effectiveness. It slowly moves down and reach the smallest from 800th onward. This can tell us that RCBA will be stable for long term and much more request coming. We can see why it dose not fit the beginning due to the historical data storing. Very fast, RCBA can learn the trend, and it adjust for the best fit based on the historical data. In this case, we see MaxMin can perform very well, and always keep the stability during the process. With this number of requests, the non-dynamic and non-machine learning algorithms show the stable and perform not much different from each other¡¯s. But RCBA with Naïve Bayes and KMeans supports, it shows the advantages of Machine Learning and the effectiveness of it. |
ICACT20220174 Slide.26
[Big Slide]
|
Chrome Click!! |
 |
Figure 15 is the average response time (ART) of 5 algorithms in 4 cases. This figure is generated by the average of total requests, not only the selected requests like figure 11 to figure 14. In general, RCBA is the smallest average response time, performs best among the 5 algorithms. In this figure, we can see the characteristics of each algorithm: MaxMin performs well with more requests; FCFS ¡®s ART is increasing by the increment of requests; RoundRobin and MinMin perform not really good at all.
Through 04 cases of different number of requests with the same input, we can see that the distribution of RBCA is quite stable and reasonable. The response time of virtual machines is satisfied compared to other algorithms on the cloud (in the case of few and many requests). |
ICACT20220174 Slide.27
[Big Slide]
|
Chrome Click!! |
 |
This simulation experiment is only simulating a group of virtual machines, not counting the expansion of the virtual machine pool (VM pool) to reduce the load in case of need, because it is assumed that this group of virtual machines can handle maximum how many requests, if exceeded, we will expand the pool. However, the simulation experiment with a large request of over 1000 requests require a more powerful computer and a better processor, so this is the limitation of this simulation experiment. |
ICACT20220174 Slide.28
[Big Slide]
|
Chrome Click!! |
 |
Presenting the simulated experimental model, the parameters as well as the given scenario are based on the request process of the browsers in the cloud environment. From there, record the forecast response time parameters of virtual machines of the cloud. |
ICACT20220174 Slide.29
[Big Slide]
|
Chrome Click!! |
 |
We would like to express our big appreciation to the institutions: The Saigon International University and Ho Chi Minh City Open University in Vietnam for supporting us in our research on this topic. We wish to thank the students at the university who support us in this research experiment to achieve the desired results for this paper. |
ICACT20220174 Slide.30
[Big Slide]
|
Chrome Click!! |
 |
References |
ICACT20220174 Slide.31
[Big Slide]
|
Chrome Click!! |
 |
References |
ICACT20220174 Slide.32
[Big Slide]
|
Chrome Click!! |
 |
References |
ICACT20220174 Slide.33
[Big Slide]
|
Chrome Click!! |
 |
Thanks for your attention! Now! Floor is open for Questions and Answers. Welcome any comment or question. |