Tenant-Grained Request Scheduling in Software-Defined Cloud Computing
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 (o...
Saved in:
| Published in | IEEE transactions on parallel and distributed systems Vol. 33; no. 12; pp. 4654 - 4671 |
|---|---|
| Main Authors | , , , |
| Format | Journal Article |
| Language | English |
| Published |
New York
IEEE
01.12.2022
The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Subjects | |
| Online Access | Get full text |
| ISSN | 1045-9219 1558-2183 |
| DOI | 10.1109/TPDS.2022.3199031 |
Cover
| Summary: | 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 <inline-formula><tex-math notation="LaTeX"> {O}(1)</tex-math> <mml:math><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="xu-ieq1-3199031.gif"/> </inline-formula> is proposed to solve the offline problem and a primal-dual-based algorithm with a competitive ratio of <inline-formula><tex-math notation="LaTeX">[(1-\epsilon), {O}(\log 3\cdot n+\log (1/\epsilon))]</tex-math> <mml:math><mml:mrow><mml:mo>[</mml:mo><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:mi>ε</mml:mi><mml:mo>)</mml:mo><mml:mo>,</mml:mo><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mo form="prefix">log</mml:mo><mml:mn>3</mml:mn><mml:mo>·</mml:mo><mml:mi>n</mml:mi><mml:mo>+</mml:mo><mml:mo form="prefix">log</mml:mo><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>/</mml:mo><mml:mi>ε</mml:mi><mml:mo>)</mml:mo><mml:mo>)</mml:mo><mml:mo>]</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="xu-ieq2-3199031.gif"/> </inline-formula> is designed for the online scenario, where <inline-formula><tex-math notation="LaTeX">\epsilon \in (0,1)</tex-math> <mml:math><mml:mrow><mml:mi>ε</mml:mi><mml:mo>∈</mml:mo><mml:mo>(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="xu-ieq3-3199031.gif"/> </inline-formula> and <inline-formula><tex-math notation="LaTeX">n</tex-math> <mml:math><mml:mi>n</mml:mi></mml:math><inline-graphic xlink:href="xu-ieq4-3199031.gif"/> </inline-formula> 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 <inline-formula><tex-math notation="LaTeX">90\%</tex-math> <mml:math><mml:mrow><mml:mn>90</mml:mn><mml:mo>%</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="xu-ieq5-3199031.gif"/> </inline-formula> and achieves tenant isolation, while obtaining similar network performance (e.g., throughput) compared with the fine-grained request scheduling methods. |
|---|---|
| Bibliography: | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 |
| ISSN: | 1045-9219 1558-2183 |
| DOI: | 10.1109/TPDS.2022.3199031 |