중요한 부분이라 다시 한번 제대로 개념을 잡도록 하겠습니다.
과거 버전은 6개의 route가 최대 경로 갯수, 차후의 버전에는 16개 이상의 경로가 지원된다.
이는 Load Balancing, Load Sharing 두가지 모두로 불리며, 아주 쉽게 백업 링크를 생성한다.
두번째 장점은 fast convergence이다. 이는 Successor와 Feasible Successor를 load balancing 하게 되므로 훨씬 안정적인 네트워크를 구성 할 수 있다.
Load Balancing을 위한 커맨드는 두가지가 있다.
maximum-paths [number] 를 통해 최대 경로수를 설정할 수 있고,
variance successor route의 FD에 값을 곱할 수 있다.
위의 그림을 보시길 바랍니다.
R4에서 Subnet1로 가는 경로는 총 3개가 있고 각각의 Metric [cost] 이 다릅니다.
Next-hop | Metric | RD(AD) | Variance 1 | Variance 2 | Variance 3 |
R1 | 50 | 30 | Yes | Yes | Yes |
R2 | 90 | 40 | No | Yes | Yes |
R3 | 120 | 60 | No | No | No |
값을 보면 라우터 R4에서 R1으로 가는 경로가 Metric이 가장 낮기 때문에 Successor로 선정됩니다.
여기서 FD는 50 이라는 것 을 알 수 있습니다.
그리고 R2 라우터로 가는 경로의 RD(AD)는 R1의 FD보다 낮은 40,
그리고 R3 라우터로 가는 경로의 RD(AD)는 R1의 FD보다 높은 60,
위의 글에서 FD와 RD(AD)를 구분할 줄 아는 것이 중요하다.
다시한번 개념을 잡고 넘어가자면
FD는 Feasible Distance로 자신의 라우터에서 목적지까지의 Cost
RD(AD)는 Reported Distance ( Advertised Distance)로 다음 라우터에서 목적지까지의 Cost를 말한다.
여기서 variance가 1로 설정된다면 메트릭이 같아야지만 load balancing이 가능하다.
그래서 당연히 R1으로 가는 길만이 successor route 가 되는 것이다.
그럼 이제 variance가 2가 된다면
FD에 2를 곱하게 된다. 그럼 varianced FD 는 100.
R2로 가는 route의 FD는 100보다 낮은 90
R4 는 이제 R4의 라우팅 테이블에 등록될것이다.
이렇게 되면서 R4에서 두 라우팅 경로는 Load balancing이 가능하게 된다.
그리고 variance 3일 때를 보자
FD에 3을 곱하면 150 이 된다.
R3를 통하는 루트는 120으로 150보다 낮지만,
경로가 라우팅 테이블로 등록되지 않는다.
이유는 이를 등록하면 routing loop 가 생길수도 있기 때문이다.
그래서 R4는 오직 R1과 R2를 라우팅 ㅔㅌ이블에 등록한다.
( variance와 maximum-paths setiing은 sh ip protocols 로 확인할 수 있다.)
variance 는 현재의 FD(목적지로 가는 최선의 루트의 Metric) 값에다가 곱셈을 한다.
다른 variance에 계산된 Feasible Successor 의 메트릭이 기존의 FD보다 작거나 같으면 이는 라우팅 테이블에 등록되는데
maximum-paths 에 있는 세팅에 맞게 추가된다.
라우팅 테이블 안의 Successor나 feasible로 등록되지 않은 라우팅 경로는 라우팅 테이블에 절대 등록되지 않는다.그리고 variance 세팅은 고려되지 않는다.
routes가 라우팅 테이블가 추가될때, 라우터는 로드밸런싱을 하는 몇몇 방법을 제공한다. 라우터가 트래픽을 메트릭으로 균등하게 배분하면, 낮은 매트릭의 route로는 좀 더 많은 패킷을 보낸다.
또한, 라우터는 모든 트래픽을 가장 낮은 metric의 루트로 보낼 수 있다, 다른 경로는 라우팅 실패에 있어 빠른 convergence를 제공한다.