-
해쉬 양극화 hash polization (트래픽 분산)Computer/Network 2024. 11. 12. 23:49
다양한 경로의 트래픽 전송 네트워크 전송에 있어서 ECMP(Equal-Cost Multi-Path)로 경로를 구성할 때 hash를 이용하기도 한다.
대표적인 방식은 source, destination의 IP, port 등을 이용하여 hash 알고리즘을 수행하고 그 결과로 경로를 선택하는 방식이다.
이러한 방식으로 경로를 선택하면 효율적으로 트래픽을 분산할 수 있고 동일한 입력에 대해서 동일한 결과를 출력하면 각 트래픽마다 일관성 있는 결과를 보장할 수 있게 된다.하지만 항상 장점만 있는 것은 아닌데 동일한 해쉬 알고리즘을 이용하는 장비가 연속적으로 구성되는 경우이다.
위 그림과 같이 동일한 해쉬가 알고리즘을 수행하는 장비가 연속적으로 있는 경우 switch A에서는 4개의 경로로 잘 분산되고 있지만 switch B, C에서도 동일하게 경로를 선택하게 되면 결과적으로 절반의 경로만 이용하는 것을 볼 수 있다.
트래픽 분산의 문제로 전체대역폭 중 일부밖에 사용하지 못하는 상황이 된다.해결 방안은 장비별로 다른 hash 알고리즘을 사용하여 경로를 선택하게 만들면 된다.
(switch A에서 사용하는 해쉬 알고리즘과 B, C 계위에서 사용하는 hash 알고리즘을 다른 것을 선택하면 B, C로 들어온 트래픽이 새로운 hash 알고리즘을 바탕으로 경로가 선택된다)
또 traffic의 로드 밸런싱 단위를 per-flow에서 per-packet으로 변경하는 방법도 있다. packet 별로 분산되기 때문에 B, C에서도 양극화가 발생할 가능성이 적어진다. (대신 out of order의 문제로 재전송이 증가할 수 있음)출처 : https://support.huawei.com/enterprise/en/doc/EDOC1100086965?ref=blog.joe-brothers.com
'Computer > Network' 카테고리의 다른 글
AAA(Authentication, Authorization, and Accounting) (1) 2024.11.17 네트워크 지연의 종류 (0) 2024.11.16 AWS 기본 학습01. 용어 정리 (2) 2024.11.15 네트워크 전송 방식 (Unicast, Brodcast, Multicast, Anycast) (0) 2024.07.22