CHAPTER 4
1. SLA Managenment
2. Speculative Resource Provisioning model
3. Resource Allocation System
56
USER INTERFACE
Speculative Speculative
Resource Dispatcher / Load
Predictor
Provisioning Scheduler Balancer
Speculative
Resource
Provisioning
Monitoring Confidence History Table Pattern Model
Estimation Table
Virtual
resources
Cloud
resources
Instances
Figure 4.1 Speculation resource provisioning architecture
The SLA Management Acts as an interface between the User and the
Cloud computing components. It requires the interaction between the following
mechanisms that supports SLA oriented resource allocation
computing capacities, CPU cores, RAM and image properties. The RAS in cloud
controller should decide which host to run the user application in a VM. Early
studies shows that there are two host level resource allocation strategies, like
Random (rand) and Max Core First (mcf), which are used during resource
provisioning by (Hu et al. 2013).
it fails it won’t add any extra timing delay. It is equivalent to the timing without
using speculation as by its mechanism.
Validation
R==R' ?
Re-execute with predicted
Predictive resource
operation
Speculative Resource
Branch Address
History Pattern
Hash Function Hash Function Table
Table
HF HF (PT)
(HT)
Updates
The present usage of the pattern of the cloud resource usage is used to
identify the historical patterns that are close to it. Assumptions are made as
61
clients operating within the same application domain, and also the historical
knowledge of the pattern matching are considered for predicting resource usage.
Weighted interpolation is used for estimating the similarity between present and
historical patterns, and hence resource usage for the patterns is predicted for
capacity planning (Candeia et al. 2015). The pattern matching is closer to the
string matching algorithm. Our pattern matching algorithmic rule uses the
fundamental of Knuth-Morris-Pratt (KMP) string pattern matching algorithm.
The KMP algorithm consists of preprocessing step which divide the input data
into independent blocks that runs in parallel. The KMP matching algorithm rule
uses degenerating property (pattern having same sub-patterns superficial over
once among the pattern) of the pattern, and sliding window approach is used for
finding possible matches.
Our predictor pattern use both CPU and memory, and also consider
scaling component. There may be potentially unlimited number of user accessed
62
4.3.3 Monitoring
(4.1)
(4.2)
63
(4.3)
ECi is the Execution cost of the application runs in the host i, ɸ is the
unit of cost determined by resource provider. The cost may comprise many
resource components like CPU utilization rate, memory usage, network
bandwidth consumption and disk accesses.
ɸ (4.4)
The client sends its demand to the cloud controller alongside the
SLA. In view of client SLA, the cloud controller alleviates computational risk
management, and guarantees that the Client’s SLA never violates the cloud
infrastructure QoS. Assuming that it is succeeding, the request is further
processed by submitting it to the instance controller. When a request is
submitted to the instance controller, the Speculative Resource Provisioning
(SRP) module is executed in parallel to know the prior resource requirement for
the request.
Our predictor maintains a history table and pattern table, for each and
every service requisition conforming to SLAs. The history table is a sequence of
‘n’ history entries that records the most recent service request along with SLA.
The pattern table is a record of all the observed sequences of requests alongside
the predicted patterns as given in Figure 4.4
Service RD LF ET EC conf
id … … … … … …
0 … <REQ, xx xx xx xx 4
… … SLA>
t-1 … … … … … … …
T <REQ,SLA> Pattern Table
History Table history depth=1 Efficient speculative values for SLA
history depth=1
σ (4.5)
Whenever a cloud controller receives the resource requisition, it also receives the
resource list with current resource parameters like RD, LF from instance
controller. In meantime it performs traditional Resource identification using
REQ operation to spot the available resources. Meanwhile, once a pattern of
resource provisioning for the service request is acquired from the pattern table,
the controller can use this information to predict future provision for the similar
request, and speculatively issue SPEC operation of the potential resource. The
user request would be handled by the SPEC initiated resource. The execution
time and the cost will also be judged in advance via pattern table entries. If it
gets slightly deviated the best values will be recorded along with Execution
Time (ET) and Execution Cost (EC) in the pattern table. Conceptually, the
controller should also attempt to issue SPEC whenever a resource scaled up or
down.
When a server receives a SPEC request, it first checks the time stamp
to ensure the instantaneous availability of virtual resources. If this check fails, it
generates a response message that sets the confidence level for the pattern that
triggered the SPEC request, to the minimum value, to inhibit future SPEC
requests, until the resource provision pattern is re-established. If the resource
receives the REQ message followed by SPEC message, then the confidence level
(conf) gets incremented ensuring high confidence in envisioning future
prediction. However, our algorithm still avoids some portion of the resource
allocation latency while issuing server state updates based on SPEC request, and
allowing the controller to resume processing. Meanwhile, when the response to
the resource request arrives at the remote node, it is discarded.
configured cloud resources. In any case, once all servers are configured, any
remaining speculative processing servers are permitted to depart from the
adjustment of load variation and resource density. Speculative Processing
ensures non-expansion of idleness, because of workload variations. Controller
executes a speculative action, updating the load variation in the predicted server
using a SPEC request message. Notwithstanding the resource provisioning
parameters, the SPEC request contains the current vector time stamp. The
controller records speculative activities in the history table as though they have
triggered by an actual resource request by it. Neglecting to do so could lead our
predictor to observe false patterns. For example, if a SPEC request is not
recorded in the history table, but rather succeeded in staying away from resource
provision latency, the predictor would record this as a pattern.
At this stage, if the node had detached during scale down, it won’t be
considered for resource prediction in future iterations (Doyle et al. 2016;Shyam
& Manvi 2016). In the event of immense load and resource density deviation
after scale up or down, the server is idle, and is willing to designate resource to
the recently arrived request. This recently changed state of the server is upgraded
in the controller part. Finally, at the time the SPEC request arrives, the host
server may officially issue its redesigned state to the controller, in lieu of giving
resource for the SPEC request. In this situation, the predictor has effectively
predicted the server; however it is not early enough to avoid a load and resource
conflict.
(4.6)
(4.7)
The percentage of the prediction hit ratio will increase the QoS such
as responsiveness and throughput.
resources with ‘n’ queues and each queue corresponds to particular application.
The Application tasks may vary depends on its computing capacity. In a multi
tiered web application the components involved are DNS server for User
Interface, Application server for business logic and back end database server
Aljazzaf (2015).
When a user performs the read only tasks in the web application only
DNS server faces the workload as compared to other components. Hence the
queues are assigned weights based on their task performance.
The performance of the queue is measured by the arrival rate, and the
service rate of the queue. When the length of the queue increases over a period
of time, it is termed as lower service rate than arrival rate. When a queue length
70
is negligible, arrival rate is lower than service rate. The under provisioning of
resource cause increased queue length, and over provisioning of resource results
in negligible queue length. The queue length is determined by threshold values.
Conserving right amount of resource through prediction causes fair queue length
and efficient utilization of resources. The Load balancer also gets initiated
through WFQ by knowing the change that will happen in workload
characteristics. Each incoming request is serviced by hardware and software
resources on the server. The response time is coined by multiple resource
specific response time. The Speculative induced scheduler and load balancer
motivates the achievement of Target Response time.
(4.8)
(4.9)
The length of the queue (Q) at the instant of time is measured as sum
of initial Queue length (Q0) and the arrival rate ( of the tasks minus service
rate (µ) at the interval of time (t). The length of the queue must not be negative.
(4.10)
(4.11)
(4.12)
71
aggregated just in time, when it was required to undergo in this module. The
Service Allocation policy includes: Determine the resource pool capacity to
support workload characteristics, Adjust capacity to a resource pool.
aware of energy consumption for the task execution, in order to improve the
energy efficiency.
The prizing Model is the space where cloud users get attracted by the
service provider. The computing resources provided are concealed in the data-
center. In a cloud investment market, the user and provider have different
objectives and requirements. The need of trustworthiness between user and
provider will increase the popularity of cloud platform.
4.9 SUMMARY
resource provisioning strategy. Hence there is a need for intelligent and adaptive
framework, which understands the change in workload and occurrences of
transaction in the server to quickly make a decision in resource allocation and
provisioning. We also evaluated effectiveness of our methodology which avoids
the cause of SLA violation by providing adequate resource, with lesser energy
consumption. From the result we observed that our SRPM adapts to the change
in workload, and intelligently provide the resources based on the expected
service request occurrence through historical records. The Summative Cloud
Resource Management Framework and its Features are shown as follows,