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...

Full description

Saved in:
Bibliographic Details
Published inIEEE transactions on parallel and distributed systems Vol. 33; no. 12; pp. 4654 - 4671
Main Authors Tu, Huaqing, Zhao, Gongming, Xu, Hongli, Fang, Xianjin
Format Journal Article
LanguageEnglish
Published New York IEEE 01.12.2022
The Institute of Electrical and Electronics Engineers, Inc. (IEEE)
Subjects
Online AccessGet full text
ISSN1045-9219
1558-2183
DOI10.1109/TPDS.2022.3199031

Cover

More Information
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