Tenant-Grained Request Scheduling in Software-Defined Cloud Computing
2022
Cloud providers host various services for tenants’ requests (e.g., software-as-a-service) and seek to serve as many requests as possible for revenue maximization. Considering a large number of requests, the previous works on fine-grained request scheduling may lead to poor system scalability (or high schedule overhead) and break tenant isolation. In this article, we design a tenant-grained request scheduling framework to conquer the above two disadvantages. We formulate the tenant-grained request scheduling problem as an integer linear programming and prove its NP-hardness. We consider two complementary cases: the offline case (where we know all request demands in advance), and the online case (where we have to make immediate scheduling decisions for requests arriving online). A normalization-based algorithm with an approximation factor of
$ {O}(1)$
is proposed to solve the offline problem and a primal-dual-based algorithm with a competitive ratio of
$[(1-\epsilon), {O}(\log 3\cdot n+\log (1/\epsilon))]$
is designed for the online scenario, where
$\epsilon \in (0,1)$
and
$n$
is the number of racks in the cloud. We also discuss how to integrate our proposed algorithms with the previous (fine-grained) request scheduling mechanism. Extensive simulation and experiment results show that our algorithms can obtain significant performance gains, e.g., the online algorithm reduces the scheduler's overhead more than
$90\%$
and achieves tenant isolation, while obtaining similar network performance (e.g., throughput) compared with the fine-grained request scheduling methods.
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
47
References
0
Citations
NaN
KQI