Autothrottle: Satisfying Network Performance Requirements for Containers

  • Lee, K.; 
  • Lee, K.; 
  • Park, H.; 
  • Hwang, J.; 
  • Yoo, C.
Citations

WEB OF SCIENCE

4
Citations

SCOPUS

5

초록

This paper investigates how to satisfy network performance requirements that are crucial in achieving the service level objectives (SLOs) in clouds. Traditional techniques for network performance management have a limited ability to satisfy the network SLOs. Our in-depth analysis reveals that the fundamental reason comes from decoupling of the CPU scheduler and the network traffic controller as the current CPU scheduler is not aware of such network requirements but only provides a fair-share amount of CPU to all containers. Thus, the container cannot perform the amount of network processing as needed to satisfy its SLO when the CPU allocation is insufficient. In this paper, we propose Autothrottle that dynamically adjusts the CPU allocation for the containers to satisfy their network SLOs. The key element of Autothrottle is a throttle algorithm that autonomously determines the amount of CPU for each container needed to satisfy the requirement. We implement Autothrottle in the Linux kernel and evaluate it with massive real-world workloads such as Apache Kafka. Our evaluation results show that Autothrottle successfully satisfies the given network SLO only with a 2% gap while the existing scheme achieves 20% less than the SLO. We further observe that Autothrottle also reduces the CPU overhead in network processing by 19%, improving the network throughput by 27% compared to the existing scheme. IEEE

키워드

Bandwidth; Bridges; Cloud computing; Cloud computing; containers; Containers; Linux; network performance; Resource management; service level objectives; Throughput
제목
Autothrottle: Satisfying Network Performance Requirements for Containers
저자
Lee, K.; Lee, K.; Park, H.; Hwang, J.; Yoo, C.
DOI
10.1109/TCC.2022.3186397
발행일
2023-04-01
유형
Article
저널명
IEEE Transactions on Cloud Computing
권
11
호
2
페이지
1 ~ 14