Topic

Leaky Bucket

JackerLab 2026. 1. 22. 20:27
728x90
반응형

개요

Leaky Bucket 알고리즘은 컴퓨터 네트워크에서 데이터 패킷 흐름을 제어하기 위해 사용되는 트래픽 셰이핑(traffic shaping) 및 속도 제한(rate limiting) 기법입니다. 일정한 속도로 데이터를 흘려보내는 ‘양동이에서 물이 새는’ 개념을 기반으로 하며, QoS(Quality of Service), DDoS 방지, API 호출 제한 등 다양한 환경에서 활용됩니다.


1. 개념 및 정의

항목 설명
정의 버퍼 큐에 들어온 요청을 일정한 속도로 처리하는 알고리즘
목적 트래픽 급증 시 네트워크 안정성 확보 및 처리율 제어
필요성 자원 남용 방지 및 서비스 품질(QoS) 유지

이 알고리즘은 버스트 트래픽을 평탄화하여 시스템 부하를 줄이는 데 효과적입니다.


2. 특징

특징 설명 비교
일정한 처리 속도 큐에서 고정된 속도로 패킷을 제거 Token Bucket은 유연한 속도 허용
버퍼 기반 큐(양동이)에 요청 저장 버퍼가 가득 차면 패킷(요청) 폐기
단순한 구현 알고리즘 구조가 간단 하드웨어/소프트웨어 구현 용이

Token Bucket과 함께 가장 널리 쓰이는 트래픽 제어 알고리즘 중 하나입니다.


3. 구성 요소

구성 요소 설명 예시
버킷(큐) 요청을 저장하는 공간 메모리 버퍼
새는 구멍 고정 속도로 요청을 방출 초당 10개 요청 허용
버퍼 크기 한 번에 처리 가능한 최대 요청 수 100개 요청까지 저장 가능

구성 요소의 조합으로 트래픽의 흐름을 정교하게 제어할 수 있습니다.


4. 기술 요소

기술 설명 사용 예
Rate Limiting 초당 처리 요청 수 제한 API 서버에서 클라이언트 요청 제한
Traffic Shaping 일시적인 트래픽 평탄화 ISP의 QoS 제어
Drop Policy 초과 요청의 폐기 또는 대기 처리 drop-tail, random early detection

효율적인 처리와 함께 정책 선택이 성능과 직결됩니다.


5. 장점 및 이점

장점 설명 효과
네트워크 보호 급격한 요청 증가로부터 시스템 보호 서비스 다운 방지
QoS 보장 트래픽 평탄화로 안정된 성능 유지 사용자 경험 향상
간단한 구현 다양한 시스템에서 적용 용이 네트워크 장비, 웹 서버 등

과도한 요청 제어에 적합하며 마이크로서비스 환경에도 유용합니다.


6. 주요 활용 사례 및 고려사항

사례 설명 참고사항
API Gateway 사용자 요청을 초당 처리량 기준으로 제한 OpenAPI Rate Limit 연동 가능
DDoS 완화 악의적 트래픽 방출 속도 제한 프론트단 및 네트워크 레벨 적용
ISP 고객별 트래픽 속도 제어 QoS 및 과금 정책 연계 가능

실시간성 요구 시스템에는 Token Bucket이 더 적합할 수 있음


7. 결론

Leaky Bucket 알고리즘은 단순하면서도 효과적인 네트워크 및 서비스 제어 기법입니다. 고정 속도의 요청 처리 모델은 예측 가능한 시스템 운용을 가능하게 하며, 다양한 상황에서 QoS 보장과 자원 보호를 위한 핵심 요소로 자리잡고 있습니다. 상황에 따라 Token Bucket과 조합하여 하이브리드 방식으로도 사용 가능합니다.

728x90
반응형

'Topic' 카테고리의 다른 글

SVCB(Service Binding)  (0) 2026.01.23
Token  (1) 2026.01.23
NetworkPolicies  (0) 2026.01.22
Pod Security Standards (PSS)  (0) 2026.01.21
AppArmor(Application Armor)  (0) 2026.01.21