google.com, pub-6766303929253490, DIRECT, f08c47fec0942fa0

Cisco 기본지식(10) – ECMP


1. ECMP란?

Cisco에서 ECMP (Equal-Cost Multi-Path)는 동일한 비용(Metric)을 가진 여러 개의 경로를 동시에 라우팅 테이블에 설치하여 트래픽을 여러 링크로 분산하는 기능입니다. 단순히 백업 경로를 사용하는 것이 아니라, 여러 경로를 동시에 Active 상태로 활용하여 대역폭을 늘리고 장애 대응 시간을 최소화하는 것이 목적입니다.

일반적인 라우팅에서는 목적지까지의 가장 좋은(Best) 경로 하나만 선택합니다.

예를 들어

      R2
     /
R1 ---- R4
     \
      R3

R1에서 R4까지

R1-R2-R4 : Cost = 20
R1-R3-R4 : Cost = 20

라면 두 경로의 Cost가 동일합니다.

ECMP가 활성화되어 있다면

R1 Routing Table

10.1.1.0/24

via R2
via R3

처럼 두 개의 Next Hop이 동시에 Routing Table에 들어갑니다.


2. ECMP가 필요한 이유

① Load Balancing

한 링크만 사용하는 것이 아니라

10Gb
+
10Gb
=
20Gb 수준의 활용

이 가능합니다.

(실제로는 Flow 단위 분산이므로 정확히 20Gb가 되지는 않습니다.)


② 장애 복구

ECMP가 없다면

Primary
↓

Fail

↓

Routing 재계산

↓

Backup 사용

이 과정이 필요합니다.

ECMP는

Primary
Backup

둘 다 Active

이므로

한 링크가 죽으면 나머지 링크만 계속 사용하면 됩니다.

Failover 시간이 매우 짧습니다.


③ 링크 활용률 증가

예전 방식

Link1 : 90%

Link2 : Idle

ECMP

Link1 : 45%

Link2 : 45%

3. Cisco에서 ECMP 동작 방식

Cisco Router는

Routing Protocol이 동일 Cost를 계산하면

Routing Table에 여러 개의 Next Hop을 넣습니다.

예)

show ip route

O 10.10.10.0/24

via 192.168.1.2
via 192.168.2.2

Forwarding Table(FIB)에도

CEF

Destination

↓

Hash

↓

Next Hop 선택

4. 어떤 Routing Protocol이 지원하는가?

거의 대부분 지원합니다.

ProtocolECMP 지원
Static RouteO
OSPFO
EIGRPO
IS-ISO
BGPO (설정 필요)
RIPO

5. OSPF에서 ECMP

예)

R1

   R2
  /
 /
R1
 \
  \
   R3

    \
     R4

Cost

R1-R2-R4 = 20

R1-R3-R4 = 20

OSPF는 SPF 계산 후

동일 Cost를 발견하면

Routing Table

10.1.1.0/24

via R2

via R3

둘 다 설치합니다.


6. EIGRP의 경우

EIGRP는

Equal Cost

Metric = 동일

이면 ECMP 사용

또한

Unequal Cost

variance

기능으로

비용이 조금 다른 경로도 동시에 사용할 수 있습니다.

이것이 OSPF와 가장 큰 차이입니다.


7. BGP의 ECMP

BGP는 기본적으로 Best Path 하나만 선택합니다.

Cisco에서는

maximum-paths

설정을 해야 합니다.

예)

router bgp 65001

maximum-paths 4

그러면 최대 4개의 Equal Path 사용


8. Cisco CEF와 ECMP

Cisco는 대부분

CEF(Cisco Express Forwarding)를 사용합니다.

패킷마다 라우팅 테이블을 조회하지 않고

Destination

↓

Hash 계산

↓

Next Hop 선택

합니다.

예)

Flow A

↓

Hash

↓

R2

----------------

Flow B

↓

Hash

↓

R3

이렇게 Flow별 분산됩니다.


9. Load Balancing 방식

(1) Per Packet

Packet1 → Link1

Packet2 → Link2

Packet3 → Link1

Packet4 → Link2

장점

  • 가장 균등

단점

  • Packet 순서 변경(Out-of-order)
  • TCP 성능 저하 가능

현재는 거의 사용되지 않습니다.


(2) Per Flow (권장)

Flow A → Link1

Flow B → Link2

Flow C → Link1

Flow D → Link2

Flow 단위

  • Source IP
  • Destination IP
  • Port
  • Protocol

등을 Hash하여 결정합니다.

Cisco 기본값도 대부분 Per Flow입니다.


10. Hash 알고리즘

CEF는

예를 들면

Src IP

Dst IP

Src Port

Dst Port

Protocol

을 조합하여

Hash를 생성합니다.

Hash

↓

Next Hop 선택

그래서

같은 TCP Session은

항상 같은 링크를 사용합니다.


11. Cisco 명령어

ECMP 확인

show ip route

예)

O 10.10.10.0/24

via 10.1.1.2

via 10.2.2.2

CEF 확인

show ip cef

또는

show ip cef exact-route

Load Sharing 확인

show adjacency

OSPF

router ospf 1

maximum-paths 4

EIGRP

router eigrp 100

maximum-paths 4

BGP

router bgp 65000

maximum-paths 4

12. 최대 ECMP 경로 수

Cisco IOS 버전과 플랫폼에 따라 기본값과 최대값이 다릅니다.

일반적인 예시는 다음과 같습니다.

Protocol일반적인 기본값설정 가능한 최대값(플랫폼 의존)
OSPF416~64 이상
EIGRP416 이상
IS-IS416 이상
BGP132~64 이상

실제 지원 수는 사용 중인 IOS/IOS XE/NX-OS 버전과 하드웨어의 FIB 용량에 따라 달라질 수 있습니다.


13. ECMP의 한계

  1. 경로 비용이 동일해야 함
    • OSPF, IS-IS 등은 동일 Metric이어야 ECMP가 적용됩니다.
    • EIGRP는 variance를 통해 예외적으로 Unequal-Cost Load Balancing을 지원합니다.
  2. 완벽한 대역폭 분산은 아님
    • Flow 기반 해시를 사용하므로, 소수의 대용량(Elephant) Flow가 특정 링크에 집중될 수 있습니다.
  3. 해시 편향(Hash Polarization)
    • 여러 장비가 동일한 해시 알고리즘과 입력 값을 사용하면 특정 링크만 반복적으로 선택되는 현상이 발생할 수 있습니다. 일부 Cisco 플랫폼은 해시 시드(seed) 변경이나 향상된 해시 알고리즘으로 이를 완화합니다.
  4. 하드웨어 제약
    • 실제 ECMP 경로 수와 해시 방식은 ASIC 및 플랫폼(Catalyst, Nexus, ASR 등)에 따라 차이가 있습니다.

14. ECMP 동작 예시

             10G
        +-----------+
        |           |
     R2 |           | R3
        |           |
        +-----------+
           \       /
            \     /
              R1
               |
         10.10.10.0/24

R1의 라우팅 테이블:

10.10.10.0/24
  via 192.168.1.2
  via 192.168.2.2

트래픽 예시:

FlowNext Hop
PC1 → Server1R2
PC2 → Server1R3
PC3 → Server2R2
PC4 → Server3R3

각 Flow는 해시 결과에 따라 하나의 링크를 지속적으로 사용하므로 TCP 세션의 패킷 순서가 유지됩니다. R2 링크에 장애가 발생하면 해당 링크로 향하던 Flow는 남아 있는 R3 경로로 재분배되며, 새로운 해시 결과에 따라 전달이 계속됩니다.


핵심 정리

항목내용
목적동일 비용 경로를 동시에 사용하여 부하 분산 및 고가용성 확보
적용 조건동일한 Administrative Distance와 동일한 최적 경로 비용(프로토콜별 정책 적용)
기본 분산 방식대부분의 Cisco 플랫폼에서 CEF 기반 Per-Flow 해시
지원 프로토콜Static, OSPF, EIGRP, IS-IS, RIP, BGP(설정 필요)
주요 장점링크 활용률 향상, 빠른 장애 복구, 대역폭 효율 증대
주의사항Flow 기반 분산으로 인해 트래픽이 항상 균등하게 나뉘지는 않으며, 플랫폼별 ECMP 지원 개수와 해시 방식이 다를 수 있음

Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다