Different type of faults are occurred within the entities of cloud environment, such as the faults in cloudlets include machine configuration, input and output size, sending and receiving omission, acknowledgement timeout, creation time out and cloudlet submission timeout. The faults of virtual machine are timeout fault, cloudlet execution, state transition fault, cloudlet length calculation fault, memory, PEs, bandwidth calculation, overflow of memory, task scheduling, computational fault, configuration fault, parameter missing in method, processor element scheduling, virtual machine selection fault, virtual machine is down fault before jobs are submitted, virtual machine is underutilized, and virtual machine allocation policy fault (worst-case) [76]. EFT is considering real-time application because it detects and corrects faults in real-time in a system. It detects run time errors proactively and corrects them according to fault status. Our proposed effective fault tolerant (EFT) scheme catches and recovers these faults to run the system smoothly.
Cloud consists of a number of cloud users ( to ) and cloudlets ( to ), hosts ( to ) and virtual machines ( to ) in the datacenter as shown in Figure 3.1. Multiple virtual machines are created in a host. In this paper, we propose an effective error detection and correction technique. There are three types of cloudlets used for either binary, vector or matrix operations. The cloudlets are submitted to datacenter broker. Broker knows availability of resources from the cloud information service (CIS) registry server. The request is sent to the virtual machine of datacenter. The datacenter consists of hosts and multiple VMs according to specification. VM lists are created with multiple virtual machines. The scheduling policy is applied to cluster virtual machines. The specification of virtual machine consists of memory (MB), numbers of processor element (PEs) which can executes millions of instructions per second (MIPS) and bandwidth (Mbps). After completing the calculation, the broker receives the response. The EFT detects the errors and corrects them based on operand types, operands and results as given in Figure 3.1. Finally send the results to clients and one's complement of the results to clients. If the result is correct, then client sends acknowledgment, Otherwise request for resending the result.
Figure 3.1: Block diagram of proposed EFT Technique in cloud computing.
The proposed effective fault tolerance technique can execute: (i) binary operation, (ii) vector operation and (iii) matrix operation. In cloud, multiple clients are connected to cloud servers as shown in Figure 3.2.
Figure 3.2: The flowchart of EFT technique in Cloud.
N numbers of data have been taken from cloud user and are converted to one’s complement. Client sends RTS (request to send) to the server and server replies acknowledgment to the client. At this moment data have been organized in a packet using data packetizing (DP) algorithm and sent through the channel. Server receives all data and unpacks the packets by data unpacketizing (DU) algorithm. Afterwards, the XNOR operation can detect errors. The results and one’s complement of the results are inserted in the packet and sent to the client. Afterwards, clients receive the response and calculate the XNOR operation between the result and its one`s complement to detect any error. Finally, accept the result if the outcome of XNOR is zero otherwise requests for resending the result.
Operation Error: The operation error is expressed that the outcome of operation is erroneous, such as, binary or vector or matrix operation errors. These outcome result may be changed for errors.
Operation Type Error: The operation type error changes the operation such as addition to subtraction etc.
Operands error: Operands error shows in binary operation, vector operation and matrix operation. The data bits are changed either single or multiple or burst-bits errors such as, A+ B= Result here, A or B operand may be changed for faults. Whenever faults are occurred in operand A or B, operand data bits have been changed their state. Character data type is 1 byte or 8 bits. The random numbers are generated within value. Integer data type is 4 bytes. The range of integer data are from 65568 to -65567. The random numbers are generated addressing within dataset. Long integer data type is 8 bytes or 64 bits. The random numbers are generated addressing within value. Floating point data is 8 bytes.
Input values are packetized and organized based on data types as shown in Figure 3.3. Values might be integer, floating point, text and image type. Packet size is calculated based by dividing with operand size. DP algorithm counts the number of input data, data itself and its one’s complement are inserted in a packet array until the packet is full. Whenever the packetizing is completed, the packet will be sent to servers. After all data are sent through the packet, DP algorithm is terminated.
The steps of data packetizing (DP) algorithm are given below:
a) Client takes input data, operation types, operands and operand types.
b) To calculate the operand size using the side of function.
c) To count total packets, packet size is divided by operand size.
d) Data and it’s one’s complement is 2n. So half of data and it’s one’s complement are inserted in packet. When a packet is full, data are added to next packets until total count of packets.
e) Packets are sent to server. Finally finish the algorithm until reach the maximum packets count.
Figure 3.3: Data packetizing (DP) algorithm.
DU algorithm is reverse process of DP algorithm as shown in Figure 3.4. It unpacks the received data and counts the total packets. After receiving all packets by the server, then DU algorithm is terminated.
The steps of data unpacketizing (DU) algorithm are given below:
a) Server receives packets and unpacks it by using data unpacketizing algorithm.
b) To calculate the operand size is using the sizeof (operand type).
c) To count total packets mathematically, it is calculated packets size divided by operands size.
d) Data and it’s one’s complement are unpacked until data packets are empty.
e) Finally finished the algorithm until packets counter is not reached to zero.
Figure 3.4: Data unpacketizing (DU) algorithm.
The protocol for effective fault tolerance is described in the Figure. 3.5. It has four major operations (i) client, (ii) data center broker, (iii) EFT manager and (iv) processing of cloud server. Firstly, the client takes input data, operation type and input data type. The input data are converted to corresponding one’s complement. Data and it’s one’s complement are packetized. The packets are submitted to datacenter broker. Secondly, the broker sends the packets to server. After receiving all packets, the packets are un-packetized. Any error in transmission can be detected by XNOR operation by Error Detection (ED) Algorithm. If errors are found in packets, then these packets are re-sent by client. Thirdly, server executes according to operation types such as, binary, vector or matrix operation. Fourthly, result and it’s one’s complement are packetized and sent to broker. The effective fault tolerant manager detects any faults in result and it’s one’s complement using XNOR operation. Finally, client accept the result if XNOR operation is zero, the sequence diagram for effective fault tolerant protocol.
Figure 3.5: Diagram of EFT protocol.
Datacenter broker behaves as a coordinator and receives data from clients and sends to available virtual machine for processing. After processing, it receives packets of results and one’s complements of results. Finally, sends the results to clients as shown in Figure 3.6. The EFT manager helps to detect and correct erroneous data. Accept the data if the XNOR operation is zero between the data and its one’s complement. In processing section, binary, vector or matrix operation is processed in server. Result and one’s complement are packetized. The packets are sent to client and waits for acknowledgment.
Figure 3.6: Sequence diagram for EFT protocol.
The failed packets have to be resent for recovery. When the errors are occurred in operands, operand types, operation types and results, the corrupted packets need to be resubmitted. The replications of instructions are executed on different execution cores and compared the results for error detection. The error correcting code (ECC) is a safeguard for memory bits. The single error correction and double error detection (SEC-DED) are used in address bus, data bus, control bus and flip-flop of register. EFT is better as a proactive technique. Because this scheme can detect errors before processing. It detects the error using ED algorithm and proactively handling all types of errors.
The EFT monitors the events triggering and detects the faults if it is occurred. Every tasks is processed by processing elements (PEs) as shown in Figure 3.7 (b). When the status of virtual machine is down, a fault is notified to broker. Whenever the VM is over utilized, an unavailability fault is notified to broker. The PEs and memory module are failed due to transient faults. If the number of available PEs are less than required number of PEs, then the status of PEs is failed based on the rules of quality of service. The virtual machine is considered as failed if all PEs are failed. A host is damaged if all virtual machines are down. Whenever a host is down, the broker finds out another new available host. If the availability acknowledgement is not received before the threshold time, then a timeout fault is occurred as shown in Figure 3.7 (a).
Figure 3.7: Error detection mechanism (a) virtual machine timeout fault and (b) same task executed different cores.
To get original data and it’s one’s complement have been submitted to the error detection (ED) for detecting the errors as shown in Figure 3.2. If the ED detects the errors, then it will request to clients for resending. The response error is detected using error detection (ED) mechanism on the client side.
Algorithm1: Effective Fault Tolerant (EFT) Algorithm
EFT (operandTypes, operationTypes, ArrayData [N])
// OperationTypes: Binary, Vector or Matrix Operation. Binary operation needs two operands. Vector operation is for set of linear operands. Matrix operation is for two dimensional array or multi-dimensional.
// OperandTypes: int, float, text and image type.
// For Error Detection using XNOR operation.
1
Input: N, ArrayData [N], operationType, operandType.
2
Output: Response time, FaultDetected, status.
3
X ArrayData.Count; // total data initialize
4
for i = 0 to X do
5
ArrayData1[i] (ArrayData[i] ) // client side
6
ArrayData1[i+1] ( ArrayData[i] )
7
if Received all packets then
Different types of operands are inserted in packets. System is calculated on data type and pushed data to the best fitting in the packet as shown in Figure 3.8. When it finds error, how many times need for retrying on erroneous data? System tries three times and after the failed operation is identified. Sometimes the last packet of operation partially packetizing is not full and loses some memory. So the best fitting packetizing is more needed.
Figure 3.8: TCP header and payload size in a packet [58].
All data needs unpack and calculation of packet loss and looking for the overhead are complex. Sometimes we find the undetectable errors of packetizing and unpacketizing algorithms. Minimum and maximum length of a packet header is 20 byte to 60 byte respectively as shown in Figure 3.9. The TCP packet size is 1500~1450 byte. The maximum TCP packet size is 64K (65535 bytes) but it is not used in network. The maximum transmission unit (MTU) for Ethernet is 1500 bytes for an instance. If the size of data is more than 1450 byte, then it splits more than 2 packets.
When synchronous (SYN) bit is active, TCP data is synchronized as a binary stream of file as shown in Figure 3.9. Sequence numbers are used to identify which data has been dispatched and accepted. Acknowledge (ACK) bit is used for acknowledgment from the server [19] [58].
Figure 3.9: A typical data structure of TCP packet [58].
When all data are received in server, the finish (FIN) bit is active. In payload, S= segment1, segment 2 …… segment(i) is the set of segments in packet (p0, p1, p2 … ) and all of them have same size. Here D1, D2 ….. , Dk+1, Dk+2… D2k, D2k+1, D2k+2…. D3k… are the set of n data that is needed to be packed in the segments of the packets. When a segment is full, a new segment is created. Packet is full by segments and a new packet is created. For this reason the TCP frame is discovered for resending error data. We find TCP non-jumbo frame size ≤ 1500. Multiple packets are contained in frames e.g. jumbo frame size is 9 kilo byte long. Number of data per segment defines segment size divided to data size. Data are inserted in a packet depending on packet size divided by size of data type. If the TCP packet size is 1500 ~ 1450 byte, then six packets are inserted in jumbo frame of payload [19] [58].
Figure 3.10 shows that clients send multiple packets to server and server receives the packets. These packets are stored in a queue of server according to the sequence numbers. Server processes packets in order of sequence number from the queue.
Figure 3.10 Window size is defined between sender and receiver [58].
The internet protocol (IPv4) structure is shown in Figure 3.11. The IPv4 indicates the version 4 and it can host up to addresses. But it has some reserved bits that will be used in future technology. The frame format consists of IPv4 header, frame header, payload and trailer. The payload consists of packets (P0, P1 …P (B-1)). If a TCP packet grasps 0 byte of data, then it would be at least 40 + 1=41 bytes that can send 0 byte over TCP packet. Hexadecimal codes of payload data are stored in a trailer and compared with main data after receiving [19] [58]. Now trailer is used for error detection using the CRC method. However our proposed EFT uses ED algorithm to detect the errors.
Figure 3.11: A typical block diagram of frame format [58].
The complexity is a measurable metric of an algorithm to compute the space and time complexity for given input size. An algorithm computes the response time within a finite and real time bound.
The proposed technique requires memory space for storage of data, segments, packets and frames. The random elements are added to temporary segments and inserted in these packets. If a packet is full, new packet is created. We have calculated the memory space for data, segments, packets and frames.
Let
n = Total number of input data.
m = Total number of data in a packet.
= Size of each data in the segment (byte).
= Segment size (byte).
IPHLX = Internet protocol header length size.
HLX = Header length size.
=Frame check sequence (trailer) size.
Total number of packets (B) =
The preferred payload size for frames ( ). For packet where 1≤ i ≤ , minimum number of packets are created.
The number of elements per segment = .
The number of segments per packet = .
The total data size of a packet ,
= × ( ) (3.1)
Total TCP packets size (B),
B = + (3.2)
The size of a frame ( =IP Header Length size + Frame header size + Payload size + .
Total frame size = IPHLX + + + (3.3)
Multiple packets are inserted in a frame and transmitted. Frames are received by the server and released the total space allocated by the receiver. Moreover the memory space of packets will be free. Different types of operands are inserted in packets. The last packet of operands is partially packetized and it is not full and some memory space is underutilized. So the best packetizing is more necessary.
The response time is calculated by considering the data input time, packetizing time, transmission time, unpacketizing time, error detection (ED) time and execution time.
Let
n = Total number of input data and m = Total number of data in a packet.
t = Transmission time of n data.
= Time to detect error for every XNOR operation on n elements and its one’s complement.
Operand = A and it's one's complement =
= = = = = = 0
Server accepts the operand if the outcome of XNOR is zero otherwise requests for resending the operand. Whenever data errors are occurred, more overhead is observed.
Result =P and its one's complement =
= = = = = 0
Client accepts the result if the outcome of XNOR is zero otherwise requests for resending the result.
Time complexity = O ( + ) (3.4)
Where the m number of data are transmitted in seconds and a packet data are m and input data are n. Error detection time at a point of time is , transmitted input data and its one's complement are 2n.
The EFT detects and corrects the errors after two steps of operation. Firstly, it receives data and it’s one’s complement. Secondly, the XNOR operation is used between the data and it’s one’s complement. The logical architecture of EFT has three level. The CRC technique is used to detect and correct errors using shift register circuit. The level of the logical architecture of CRC and checksum are multiple steps. From the steps, the fan in and fan out delay of logic circuit of EFT scheme is less than checksum and CRC techniques. We evaluate the protocol overhead on TCP frame. The EFT protocol overhead consists of payload size divided by total frame size. The packet size is 1500 byte and overhead is calculated = = 2.53%, where the frame size is payload (1500 byte) + preamble (8 byte) + header (14 byte) + trailer (4 byte) + minimum gap per packet (12 byte) = 1538 byte. The overhead of single bit, multiple bits and burst-bits errors are different. The overhead of burst-bits error is more than that of multiple bits and single bits. Suppose, the Z bits errors are occurred within and bits are consisted of a single data in Equation 3.6.
Space Overhead = (3.5)
The EFT scheme enhances extra instructions to detect and correct errors with effective fault detection and correction method. For this, extra overhead is increased for a fault tolerance system and more time and power are wasted. The time cost is proportional with power cost. The time complexity of matrix operation is more than vector and binary operations and the operation of binary is less time complexity than others. More memory and logical processor are required for matrix operation.
Aggressive Fault Tolerance Using Smart Decision Agent
Application of cloud computing is increasing gradually. It is a useful model for a collection of configurable computing resources such as data-centers, servers, data storage and application services in real-time. Due to the emergence of cloud computing, providing reliable service becomes vital issue. Transient faults may affect temporary unavailability of services and timeout to get response. These types of faults can be catastrophic in cloud applications such as, scientific research, financial and safety critical applications. To reduce the effect of such errors, a fault tolerant mechanism is required. The aggressive fault detection (AFD) module monitors the message using heartbeat mechanism and recovers from these faults using a smart decision agent. A smart decision agent takes decision on different types of hardware, software and communication faults.
An AFT technique is used for error detection and recovery from faulty environment. A smart decision agent helps to find out the faults and recovery from these faults. Different types of hardware, software and communication faults are detected and corrected based on a smart decision agent. This smart decision agent is used smartly to correct errors using checkpointing, replication or resubmission mechanism. It diminishes complexity and increases performance of fault tolerant schemes compared with checkpointing, resubmission and replication techniques.
Cloud environment consists of some entities such as datacenter, datacenter broker, host, virtual machine, cloud information service (CIS) and cloudlet as depicted in Figure 4.1. Virtual machines are allocated in host using the allocation policy. The processing capacity of a host is default setup for allocated virtual machines. In virtual machines VM0, VM1, VM2 … VMV and replica virtual machine VM0⸍, VM1⸍, VM2⸍… VMV⸍ have processing elements PE0, PE1… PEp. The cloudlets are scheduled by the scheduler and are processed by the PEs. The aggressive fault tolerant (AFT) technique can detect and correct transient, permanent, omission and time out faults in the cloud environment. The aggressive fault tolerant (AFT) technique can detect and correct transient, permanent, omission and time out faults in the cloud environment. In the AFT architecture, cloud users U0, U1... Un are managed by cloud manager. They submit the cloudlets to datacenter broker. The entities of datacenter are registered in the cloud information service (CIS). When virtual machines or hosts are created, the CIS table of resources are updated. The broker knows the available information of datacenter from the CIS. The broker is connected to datacenter. A cloudlet Ci is submitted to the available virtual machine (VMj) by broker. The processing capacity of virtual machine is represented by million instructions per second (MIPS). A certain length of cloudlet is executed by processing elements (PEs).
Figure 4.1: Proposed architecture of aggressive fault tolerance (AFT) in cloud computing.
If any fault is occurred during the cloudlet processing, then the AFT technique can detect and recover the faults. AFT has two modules (i) Aggressive faults detection (AFD) module (ii) Aggressive faults recovery (AFR) module. The AFD module detects the fault using heartbeat protocol and AFT recovers the faults using a smart decision technique. Heartbeat protocol is the most popular to detect the faults. In a heartbeat protocol, every process Pr sends “Alive now” message to other process Qp after a static interval time. Accept the process Pr is suspect list if it cannot be reached to Qp within the time threshold which is called timeout. This protocol determines suspect process Pr. It increases independently the accuracy of AFD module within the timeout.
Time-shared or space-shared scheduling is applied to cloudlets and virtual machines for processing as shown in Figure 4.2. There are two cores and two virtual machines. The eight tasks are t1, t2, t3, t4, t5, t6, t7 and t8. The tasks are processed in virtual machine by processing elements using space-shared mode as shown in Figure 4.2(a). The space-shared is applied on virtual machine and tasks are processed using time-shared as shown in Figure 4.2(b). The time-shared is applied for virtual machine and tasks are worked using space-shared as shown in Figure 4.2(c). The cores of virtual machines and tasks are shared for processing using time-shared mechanism as shown in Figure 4.2(d).
Figure 4.2: Cloudlets (tasks) time-shared and space-shared scheduling.
In the simulation, the entities create events to process the tasks. All events are stored in future queue during simulation and moved these events to deferred queue for processing as given in Figure 4.4.
Figure 4.3: The relationship among entities in cloud computing.
During the simulation, the events are generated and try to communicate among entities as shown in Figure 4.3. The stored events are processed on processor elements of virtual machine as described in Figure 4.4.
Figure 4.4: The movement of events in the cloud computing.
Every entity communicates among each other via event handler. Firstly, the events are stored in future queue during the event execution. Future queue is a queue to store the events to be executed in future. The events of future queue are moved to deferred queue whenever the events cannot be executed due to some faults as shown in Figure 4.5. The events are triggered first in first out (FIFO) manner until deferred queue is empty. This time of a fault injection module injects the faults and changes the triggering status, such as cloudlet failure, host failure, PE failure and virtual machine failure. The aggressive fault tolerant (AFT) technique can detect and correct transient, permanent, omission and time out faults in the cloud environment using the smart decision agent as shown in Figure 4.9.
Figure 4.5: The flowchart of events movement from future queue to deferred queue.
The cloud users submit the task to datacenter broker as described in Figure 4.4. The datacenter broker requests a query for available resources to cloud information service and sends the response according to CIS table.
Figure 4.6: Sequence diagram of aggressive fault tolerance (AFT).
The tasks dispatch to the specific virtual machine to execute using the PEs. If the virtual machine fails due to VM down, underutilization or overutilization, then cloud listeners are monitor the status of entities and sends the update status to datacenter broker. The CIS requests the fault history and update processing to AFTM. This fault tolerant manager detects and prevents according to algorithm. The fault history is updated in CIS. Afterwards datacenter broker requests to complete the tasks to virtual machine. The lengths of tasks are completed successfully and the response is sent to datacenter broker. Finally, the broker gives the results to cloud users.
In a datacenter, multiple hosts are created and multiple virtual machines are consisted in a host as shown in Figure 4.7. The cloudlets are processed on processing elements of virtual machine. The CloudletProcessingUpdate ( ) method is defined the list of finishing cloudlets. The virtual machine are created in host according to capacity of host.
Figure 4.7: Sequence diagram of datacenter, hosts and virtual machines.
The AFD module monitors the events triggering and detects the faults if it is occurred. Every tasks is processed by processing elements (PEs). The heartbeat algorithm detects the faults during message passing. When the status of virtual machine is down, a fault is notified to broker. Whenever the VM is over utilized, an unavailability fault is notified to broker. The PEs and memory module are failed due to transient faults. If the number of available PEs are less than required number of PEs, then the status of PEs is failed based on the rules of quality of service. The virtual machine is considered as failed if all PEs are failed. A host is damaged if all virtual machines are down. Whenever a host is down, the broker finds out another new available host. If the acknowledgement of availability is not received within the threshold time, then a timeout fault is occurred.
The AFR module recovers dynamically after a fault is occurred and it is recovered after fault detection. The cloudlets from cloud users are executed in virtual machine of processor element as shown in Figure 4.8. If the length of cloudlet is failed, then it will be again re-submitted for execution. Broker knows the available resources from CIS table. If the configuration of cloudlet is over than the available virtual machine, then broker requests to datacenter for creating new virtual machine within threshold time. The new virtual machine will be registered to CIS table. Otherwise virtual machine will be discarded.
Figure 4.8: AFT technique select the best mechanism resubmission technique.
The quality of service (service level agreement) ensures the commitment between the service provider and end-users as shown in Figure 4.9. If the available level is less than the agreed level, then availability and reliability level is decreased. The AFT technique makes a replica of cloudlet, replica of virtual machine and replica of host. If a part of system is failed, then the replica ensures recovery. The replica is defined as an available entity which executes the failed cloudlets. Whenever virtual machine is over utilized by overflow of memory or bandwidth, the tasks migrate to the replica virtual machine. Mean time to failure (MTTF) is defined as the average time of a non-repairable entity works before it fails. The mean time to repair (MTTR) is the time to repair the failed entities. The mean time between failures (MTBF) is calculated by the arithmetic average time between failures of a system [62]. The availability ensures the measurement of available resources for usability.
Mean Time between Failures (MTBF) = MTTF + MTTR (4.1)
(4.2)
Figure 4.9: AFT technique select the best mechanism checkpointing or replication technique.
We can calculate the Service Level Agreement (SLA) of available resources using the equation 4.2 [62]. If the MTBF is zero, the highest availability of a node is 99.9%. The highest availability of virtual machine re-executes the failed cloudlets.
Figure 4.10: Smart decision agent select the best technique depends on fault status.
Figure 4.11: Flow diagram of aggressive fault tolerance (AFT) using smart decision agent.
A smart decision agent takes decision on different types of faults as shown in Figure 4.10. When faults are occurred in system, these faults should be recovered. The smart decision agent recovers from failure using smartly decided the checkpointing, replication, re-submission, and migrations techniques as shown in Figure 4.11.
The data structure of AFT is given in Figure 4.12. It has the following classes:
a) AFD Class
b) AFR class
c) Cloudlets
d) Host
e) Virtual Machine
f) CIS
g) CPUBaseFaults
h) Datacenter broker
i) Smart Decision Agent
Every entity is communicated among them using events passing. The event handler manage the events among entities. The bidirectional communication is used for requesting and acknowledgement of a service. The EFT detects the faults of cloudlet, host, virtual machine and PEs. A smart decision agent takes the right decision according to fault status. If the status of cloudlet might be canceled or failed, memory or bandwidth is over utilized, virtual machine is either down or over utilized, hardware might be damaged, and the acknowledgement might be timeout, then smart decision agent decides according to fault status.
Figure 4.12: Class diagram of aggressive fault tolerance (AFT) using smart decision agent.
Each cloudlet length is executed on PEs of virtual machine from the cloudlet list as shown in Algorithm 2. The processing capacity of virtual machine processes the cloudlet of a certain length and updates the remained cloudlet length. If the cloudlet status is canceled or failed, then this task is resubmitted. Whenever the status of PE or VM or host is failed, the tasks are migrated to replica VM. The instructions are executed until it finishes the remaining length of cloudlet. RemainedLengthCi is updated of the cloudlet length and faults are occurred when checkpoint ensures last saved check point. Otherwise, failed cloudlet is executed by available (or healthy) virtual machine. The Smart_Decision_Agent (status) method percepts the status and actuator takes the smart decision for an action.
Algorithm2: Aggressive Fault Tolerance (AFT) Algorithm (Fault Detection and Recovery)
AFT (cloudletList, VMs, hosts, PEs)
// Parameters of cloudlet are cloudlet length, input and output size, status.
// Parameters of virtual machine are PEs, MIPS, memory, bandwidth, status.
// Parameters of host are memory, storage, bandwidth, PEList, status.
// Smart Decision Agent monitor status of cloudlet, VM, Host and PEs.
1
Input: CloudletList, VMList, HostList, PEList
Each cloudlet length is executed on virtual machine of PEs from cloudlet list as shown in Algorithm1. The cloudlet is processed in virtual machine of different PEs
The cloud coordinator has multiple sensors to communicate with clustering virtual machines as shown in Figure 4.11. Multiple virtual machines are uniquely separated and are monitored by the virtual machine manager ( ) or hypervisor. The sensors are communicated with .
Figure 4.11: Cloud coordinator monitoring in virtual machines [77].
Every cloud zone has a unique cloud coordinator to communicate with other zones. They communicates using messages as a coordinator. The low level hypervisor or virtual machine monitor (Vmm) is used for managing the multiple virtual machines to process multiple cloudlets. Every physical machines has multiple unique virtual machines. The virtual machine are clustered to complete the group work.