Tenant-Grained Request Scheduling in Software-Defined Cloud Computing - Tu, Huaqing; Zhao, Gongming; Xu, Hongli; Fang, Xianjin (IEEE transactions on parallel and distributed systems, 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) O(1)<inline-graphic xlink:href="xu-ieq1-3199031.gif"/> 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))] [(1-ε),O(log3·n+log(1/ε))]<inline-graphic xlink:href="xu-ieq2-3199031.gif"/> is designed for the online scenario, where \epsilon \in (0,1) ε∈(0,1)<inline-graphic xlink:href="xu-ieq3-3199031.gif"/> and n n<inline-graphic xlink:href="xu-ieq4-3199031.gif"/> 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\% 90%<inline-graphic xlink:href="xu-ieq5-3199031.gif"/> and achieves tenant isolation, while obtaining similar network performance (e.g., throughput) compared with the fine-grained request scheduling methods.