EVPN-VXLAN 멀티호밍을 통한 송신 링크 보호를 위한 Fast Reroute
EVPN-VXLAN 네트워크의 멀티호밍 PE(Peer Provider Edge) 디바이스에서 ELP(Fast Reroute Egress Link Protection) 기능을 활성화할 수 있습니다. 이 기능은 경로 컨버전스 시간을 개선하고 CE 디바이스에 대한 PE 디바이스 링크가 실패할 경우 멀티 호밍 고객 에지(CE) 디바이스로의 로드 밸런싱 트래픽 손실을 방지합니다.
혜택
CE 디바이스에 대한 링크 실패 시 멀티 호밍 CE 디바이스에 대한 로드 밸런싱 트래픽 손실을 방지합니다.
보다 높은 확장성의 EVPN-VXLAN 패브릭에서 이더넷 세그먼트 경로 멀티호밍을 위한 경로 컨버전스 시간을 개선합니다.
Fast Reroute ELP가 이더넷 세그먼트의 멀티호밍과 함께 작동하는 방법
EVPN 패브릭에서 고객은 안정성과 성능을 개선하기 위해 종종 CE 디바이스를 이더넷 세그먼트(ES)에 있는 두 개 이상의 PE 디바이스로 멀티홈합니다. 멀티호밍은 다음과 같은 이점을 제공합니다.
PE 디바이스와 멀티 호밍 CE 디바이스 연결이 실패할 경우 트래픽 손실로부터 보호합니다.
목적지에 대한 여러 경로 간 로드 밸런싱을 활성화합니다.
멀티호밍 CE와 다른 PE 디바이스 간의 연결은 ES 식별자(ESI)를 공유합니다. EVPN 디바이스는 ES 경로(EVPN Type 4 경로)를 사용하여 로컬 멀티호밍 피어 PE 연결을 광고합니다. PE 디바이스는 또한 ESI 경로를 사용하여 피어 디바이스 중 지정 전달자(DF)를 선택하여 ESI에서 중복 트래픽을 전송하지 않도록 합니다.
EVPN-VXLAN을 사용하면 멀티 홈 CE 디바이스에 연결된 PE 디바이스가 로컬로 연결된 각 ESI에 대한 ES 터널 경로(VXLAN 터널 경로)를 광고합니다. 원격 PE 디바이스는 이러한 보급을 수신하고 ES를 위한 로드 밸런싱 넥스트 홉 테이블을 생성합니다. 원격 PE 디바이스는 ES 다음 홉을 사용하여 ESI와 연결된 피어 PE 디바이스 중 멀티 호밍 CE 디바이스로 향하는 트래픽을 로드 밸런싱합니다.
원격 PE가 멀티호밍 CE 디바이스로 트래픽을 전송하는 동안 ESI 링크 중 하나가 실패하는 경우:
실패한 링크가 있는 PE 디바이스는 해당 ES 경로를 철회합니다.
원격 PE 디바이스는 디바이스가 경로 철회를 수신하고 로드 밸런싱 다음 홉을 조정할 때까지 장애가 발생한 링크에 해당하는 경로를 사용하여 ESI로 로드 밸런싱 트래픽을 계속합니다.
실패한 링크가 있는 PE 디바이스는 실패한 링크로 향하는 초과된(잔여) 로드 밸런싱 트래픽을 삭제합니다.
원격 PE 디바이스는 경로 철회를 수신하고 처리합니다. 원격 PE 디바이스는 MAC 주소, 라우팅 정보 및 다음 홉 테이블을 업데이트합니다. 이 시점에서 원격 PE 디바이스는 장애가 발생한 링크에 로드 밸런싱된 트래픽 전송을 중단합니다.
원격 PE 라우팅 테이블이 통합될 때까지(확장된 환경에서는 몇 초가 걸릴 수 있음) 대상 CE 디바이스는 일부 트래픽을 잃게 됩니다.
멤버 링크가 다운될 때 ESI에서 이러한 로드 밸런싱 트래픽 손실을 방지하기 위해 멀티호밍 피어 PE 장치에서 Fast Reroute ELP 기능을 활성화할 수 있습니다. 또한 이 기능은 특히 고도로 확장된 네트워크에서 ESI 경로 컨버전스 시간을 개선하는 데 도움이 됩니다.
이더넷 세그먼트에서 Fast Reroute를 사용하는 ELP
PE 디바이스에서 이 기능을 활성화하면 디바이스는 ES를 위한 각 피어 PE 디바이스에 ELP 터널이라는 백업 VXLAN 터널을 생성합니다. ES 링크 장애가 발생하면 PE 디바이스는 ELP 터널을 사용하여 하나 이상의 피어 PE 디바이스로 트래픽을 재라우팅합니다.
이 기능이 작동하려면 ESI와 관련된 모든 피어 PE 장치에서 균일하게 활성화해야 합니다. ES의 각 PE 디바이스는 모든 피어 PE 디바이스에 대한 ELP 터널을 갖습니다.
다음 그림은 다음과 같은 간단한 EVPN-VXLAN 패브릭에서 ELP 터널 재라우팅 프로세스가 작동하는 방식을 보여줍니다.
CE1은 피어 PE 디바이스인 PE1 및 PE2에 멀티호밍됩니다.
PE1과 PE2는 서로에 대한 ELP 터널을 갖습니다.
PE3는 PE1 및 PE2에서 VXLAN 터널 엔드포인트(VTEP)를 사용하여 CE1로 트래픽을 로드 밸런싱하는 원격 소스입니다.
그림 1에서는 CE1을 향한 모든 ES 링크가 작동 중이므로 PE1 및 PE2는 각각 로드 밸런싱된 트래픽의 일부를 CE1로 전달합니다. PE1 및 PE2는 ELP 터널을 사용할 필요가 없습니다.
그림 2에서는 PE1에서 CE1로의 링크가 실패합니다. PE1은 장애가 발생한 링크에 대한 ES 경로를 철회합니다. 그러나 PE3가 경로 컨버전스를 달성할 때까지 PE3는 여전히 일부 초과 로드 밸런싱 트래픽을 PE1로 보냅니다. 로드 밸런싱된 트래픽 부분을 삭제하는 대신 PE 1은 ELP 터널을 사용하여 해당 트래픽을 PE2로 다시 라우팅합니다. PE2는 로드 밸런싱된 트래픽의 두 부분을 모두 CE1로 전달합니다.
그림 3에서 PE3은 경로 컨버전스를 달성하고 ES에 대한 로드 밸런싱된 트래픽을 PE1로 전송하지 않습니다. PE3는 ES에 대한 모든 트래픽을 PE2로만 전송하고 PE2는 트래픽을 CE1로 보냅니다. PE1은 더 이상 PE2에 대한 ELP 터널을 사용할 필요가 없습니다.
후 ELP 터널이 사용되지 않음
여러 피어 PE 디바이스가 있는 ELP 터널
ES에 두 개 이상의 피어 PE 디바이스가 있는 PE 디바이스에서 이 기능을 활성화하면 PE 디바이스는 각 피어 PE 디바이스에 백업 VXLAN ELP 터널을 설정합니다. 그림 4를 참조하십시오. 각 PE 디바이스는 ES로 향하는 로드 밸런싱 트래픽에 대한 다음 홉 그룹을 유지합니다. 원격 소스 PE 디바이스는 그룹의 다음 홉 중 ES로 트래픽을 배포합니다. 또한 ES의 각 피어 PE 디바이스는 ES의 모든 ELP 터널과 함께 로드 밸런싱 다음 홉 그룹을 유지하므로 디바이스는 다시 라우팅된 트래픽도 로드 밸런싱할 수 있습니다.
그림 4 는 ES의 링크 중 하나에 장애가 발생하면 어떻게 되는지 보여줍니다. 이 경우 PE1에서 CE1로의 링크가 실패합니다. 그 결과 다음과 같은 결과가 나타납니다.
PE4가 경로 컨버전스를 달성할 때까지 PE4는 여전히 일부 초과 로드 밸런싱 트래픽을 PE1로 보냅니다.
PE1은 로드 밸런싱 트래픽 부분을 삭제하는 대신 두 ELP 터널에서 초과 로드 밸런싱 트래픽을 피어 PE 디바이스 PE2 및 PE3로 다시 라우팅합니다.
PE2 및 PE3은 PE4에서 수신하는 로드 밸런싱 트래픽과 PE1의 ELP 터널에서 수신하는 트래픽을 포함하여 모든 트래픽을 CE1로 보냅니다.
(표시되지 않음) PE4의 라우팅 테이블이 수렴됩니다. PE4는 PE1로의 트래픽 전송을 중단하고 PE2 및 PE3으로만 트래픽을 로드 밸런싱합니다.
에 대한 ELP 터널
Fast Reroute ELP 요구 사항 및 제한 사항
PE 디바이스에서 ELP 터널을 활성화하려면 계층 수준에서 [edit forwarding-options evpn-vxlan] reroute-address 명령문을 구성합니다. 디바이스가 ELP 터널에 사용하는 IP 주소를 문에 reroute-address 옵션을 사용하여 inet ip-address 지정합니다. PE 디바이스에서 Fast Reroute ELP 구성 은(는) 이 명령문과 이 기능을 구성하는 데 필요한 다른 단계에 대해 자세히 설명합니다.
이 기능을 사용하면 다음과 같습니다.
모든 피어 PE 디바이스의 ELP 터널이 작동하려면 특정 ES의 모든 피어 PE 디바이스에서 이 명령문을 구성해야 합니다.
멀티호밍 피어 PE 디바이스는 AE ESI 인터페이스가 다운될 때 액티브/액티브 상태의 어그리게이션 이더넷(AE) 인터페이스 번들 링크에 대한 MAC 주소 테이블 항목을 플러시하지 않습니다. 이 동작은 Fast Reroute 작업을 구현하고 경로 컨버전스 시간을 개선하는 데 도움이 됩니다.
Fast Reroute ELP에는 다음과 같은 제약이 있습니다.
이 기능은 AE 논리적 인터페이스에 구성된 멀티호밍에만 적용됩니다.
이 기능은 IPv4 클라이언트 트래픽에 대해서만 지원됩니다.
이 기능은 멀티캐스트 트래픽이 아닌 유니캐스트 트래픽 및 VLAN 플러딩에 대해서만 작동합니다.
이 기능은 엔터프라이즈 스타일의 인터페이스 구성에서만 지원됩니다. (이 유형의 인터페이스 구성에 대한 자세한 내용은 유연한 이더넷 서비스 캡슐화를 참조하십시오.)
이 기능은 특정 ESI와 연결된 한 번에 하나의 멀티호밍 피어에서만 ES 링크 장애 시 트래픽 재라우팅을 처리합니다.
Fast Reroute 명령을 실행하여 PE 디바이스에서 PE-CE 인터페이스를 관리상 로컬로 비활성화하는 경우와 같은 계획된 관리 링크 다운 이벤트에는 ELP가 set interface interface-name disable 지원되지 않습니다. PE 디바이스에 계획된 인터페이스 다운 유지 관리 이벤트의 경우, 필요한 경우 유지 보수 중 트래픽 손실을 방지하기 위한 다른 관리 조치를 취합니다. 그러나 CE 디바이스의 관리 링크 다운 명령으로 인해 PE-CE 링크가 다운되면 PE 디바이스는 링크 장애를 감지하고 이 경우 Fast Reroute 작업을 호출합니다.
PE 디바이스에서 Fast Reroute ELP 구성
ES에 대해 지원되는 멀티호밍 피어 PE 디바이스에서 Fast Reroute ELP 기능 요소를 구성합니다. 이 기능이 작동하려면 ES의 모든 멀티호밍 피어 PE 디바이스에서 이 기능을 활성화해야 합니다. 여기에 나열된 단계를 각 피어 PE 디바이스에서 균일하게 구성합니다.
ES의 멀티 호밍 CE 디바이스 또는 ES로 트래픽을 전송하는 원격 소스 PE 디바이스에서 해당 요소를 구성할 필요가 없습니다. CE 디바이스 및 원격 소스 PE 디바이스는 이 기능을 지원하지 않는 디바이스일 수 있습니다.
ES용 멀티호밍 피어 PE 디바이스에서 Fast Reroute ELP 기능을 활성화하려면:
Fast Reroute ELP 터널 생성 및 작업 확인
Fast Reroute ELP 터널 기능을 활성화하면 이 섹션의 CLI show 명령을 사용하여 ELP 터널 IP 주소, 다음 홉 ID, 소스 및 원격 VTEP 정보를 볼 수 있습니다.
여기에서 그림 2와 유사한 토폴로지를 기반으로 몇 가지 샘플 show 명령 출력을 설명하며, 참조를 위해 아래에 다시 포함합니다.
의 샘플 토폴로지
표 1 에는 샘플 토폴로지, PE 디바이스의 기본 lo0 IP 주소, ELP 터널의 보조 lo0 IP 주소가 나와 있습니다.
| 디바이스 | 디바이스 IP 주소 | ELP 터널 IP 주소 |
|---|---|---|
PE1 |
192.168.0.1/32 |
192.168.102.1/32 PE1에서 PE2로의 ELP 터널 |
PE2 |
192.168.0.2/32 |
192.168.201.1/32 PE2에서 PE1로의 ELP 터널 |
또한 샘플 토폴로지에는 그림 5의 CE 디바이스 뒤에 다음과 같은 호스트(표시되지 않음)가 있습니다.
| 호스트 설명 | VLAN 이름(VLAN ID) | MAC 주소 |
|---|---|---|
CE1 뒤의 수신기 |
VLAN2(VLAN ID 2) |
00:00:94:00:00:01 |
CE2 뒤에 있는 원격 소스 |
VLAN3(VLAN ID 3) |
00:01:95:00:00:01 |
마지막으로, 이 샘플 토폴로지에서 CE1에서 PE1 및 PE2로의 멀티호밍 링크에 할당된 ESI는 00:00:00:00:20:00:00:00:00:00:00입니다.
- 이더넷 스위칭 테이블 표시
- 이더넷 스위칭 vxlan-tunnel-end-point esi 표시
- show ethernet-switching vxlan-tunnel-end-point remote
- show ethernet-switching vxlan-tunnel-end-point 소스
- show route table __default_evpn__.evpn.0 extensive
- show route table bgp.evpn.0 extensive
- show interfaces(ELP 터널 VTEP 인터페이스 포함)
이더넷 스위칭 테이블 표시
show ethernet-switching table mac-address extensive 명령을 사용하여 특정 MAC 경로에 대한 ELP 터널 다음 홉을 확인합니다.
예를 들어, 이 출력은 PE1이 ELP 터널 다음 홉(ELP-NH 필드)을 사용하여 수신하는 모든 트래픽을 Vlan2(MAC 주소 00:00:94:00:00:01)의 CE1 뒤에 있는 호스트로 전송함을 보여줍니다.
user@PE1> show ethernet-switching table 00:00:94:00:00:01 extensive MAC address: 00:00:94:00:00:01 Routing instance: L3VRF_MVS1 VLAN name: Vlan2, VLAN ID: 2 Learning interface: ae0.0 ELP-NH: 11777 Layer 2 flags: in_hash,in_ifd,in_ifl,in_vlan,in_rtt,kernel,in_ifbd,advt_to_remote,rcvd_from_remote Epoch: 0 Sequence number: 3 Learning mask: 0x4000000000000000010000000000000000000001 BGP sequence number: 0
이더넷 스위칭 vxlan-tunnel-end-point esi 표시
show ethernet-switching vxlan-tunnel-end-point esi esi-identifier esi-value 명령을 사용하여 ELP 터널, VTEP IP 주소, 다음 홉 및 VTEP 인터페이스 이름을 확인합니다.
예를 들어, 이 출력은 PE1이 ESI 00:00:00:00:20:00:00:00:00:00:00:00에 대한 원격 VTEP PE2(RVTEP-IP필드)에 대한 ELP 터널 및 ELP 다음 홉(ELP-NH필드)을 가지고 있음을 보여줍니다.
user@PE1> show ethernet-switching vxlan-tunnel-end-point esi esi-identifier 00:00:00:00:20:00:00:00:00:00
ESI RTT VLNBH INH ESI-IFL LOC-IFL #RVTEPs
00:00:00:00:20:00:00:00:00:00 L3VRF_MVS1 28425 135034 esi.28425 ae0.0, 1 Aliasing
LOCAL-IFL ELP-NH RVTEP-NH-LIST
ae0.0 11777 11822,
RVTEP-IP RVTEP-IFL VENH MASK-ID FLAGS MAC-COUNT
192.168.0.2 vtep-8.32830 11821 0 2 52
show ethernet-switching vxlan-tunnel-end-point remote
show ethernet-switching vxlan-tunnel-end-point remote 명령을 사용하여 다음을 포함한 디바이스에 대한 ELP 터널 소스 VTEP 및 원격 VTEP 정보를 확인할 수 있습니다.
VTEP IP 주소 및 인터페이스 이름
해당 다음 홉 ID 및 ELP 터널 IP 주소
ELP-IP 출력 필드에 IP 주소가 포함되어 있으면 열의RVTEP-IP 원격 VTEP에 해당 ELP 터널이 있음을 의미합니다. ELP-IP 또한 해당 RVTEP-IP 주소가 ELP 터널 주소인 경우 행의 RVTEP-IP 열에 "ELP"가 포함됩니다.
이 출력의 의미에 대한 자세한 내용은 아래 샘플 출력과 표 3 을 참조하십시오.
user@PE1> show ethernet-switching vxlan-tunnel-end-point remote
Logical System Name Id SVTEP-IP IFL L3-Idx SVTEP-Mode ELP-SVTEP-IP
<default> 0 192.168.0.1 lo0.0 0 192.168.102.1
RVTEP-IP IFL-Idx Interface NH-Id RVTEP-Mode ELP-IP Flags
192.168.0.2 2756 vtep.32830 11821 RNVE 192.168.201.1
192.168.201.1 2757 vtep.32831 11822 RNVE ELP
VNID MC-Group-IP
530 0.0.0.0
531 0.0.0.0
| 출력 필드 | 의미 |
|---|---|
SVTEP-IP—192.168.0.1 ELP-SVTEP-IP—192.168.102.1 |
PE1(192.168.0.1)은 소스 VTEP이며 PE2에 대한 IP 주소가 192.168.102.1인 ELP 터널을 보유합니다. |
RVTEP-IP 제목 아래의 첫 번째 행은 다음과 같습니다. RVTEP-IP—192.168.0.2 ELP-IP—192.168.201.1 |
PE1에는 원격 VTEP로 PE2(192.168.0.2)가 있습니다. PE2에는 PE1에 대한 IP 주소가 192.168.201.1인 ELP 터널이 있습니다. |
RVTEP-IP 제목 아래 세 번째 행: RVTEP-IP—192.168.201.1 ELP-IP—ELP |
IP 주소가 192.168.201.1인 원격 VTEP는 ELP 터널 원격 VTEP입니다. 이 표의 다른 출력 필드를 통해 이 원격 VTEP가 PE2에서 PE1로의 ELP 터널임을 알 수 있습니다. |
show ethernet-switching vxlan-tunnel-end-point 소스
show ethernet-switching vxlan-tunnel-end-point source 명령을 사용하여 출력 필드에서 ELP-SVTEP-IP 디바이스 ELP 터널 소스 VTEP IP 주소를 확인합니다.
예를 들어, PE1의 다음 샘플 출력은 PE1(SVTEP -IP 192.168.0.1)의 lo0 인터페이스에 IP 주소가 192.168.102.1ELP-SVTEP-IP()인 ELP 터널이 있음을 보여줍니다.
user@PE1> show ethernet-switching vxlan-tunnel-end-point source
Logical System Name Id SVTEP-IP IFL L3-Idx SVTEP-Mode ELP-SVTEP-IP
<default> 0 192.168.0.1 lo0.0 0 192.168.102.1
L2-RTT Bridge Domain VNID Translation-VNID MC-Group-IP
L3VRF_MVS1 Vlan2+2 2 0.0.0.0
L3VRF_MVS1 Vlan3+3 3 0.0.0.0
show route table __default_evpn__.evpn.0 extensive
라우팅 테이블 명령에는 show route table __default_evpn__.evpn.0 extensive 로컬 재라우팅 ELP 터널 주소를 표시하는 필드가 포함됩니다 Reroute address .
예를 들어, 아래 필드는 Reroute address PE1(192.168.0.1)의 ELP 터널에 IP 주소가 192.168.102.1임을 보여줍니다.
user@PE1> show route table __default_evpn__.evpn.0 extensive
__default_evpn__.evpn.0: 2071 destinations, 2101 routes (2071 active, 0 holddown, 0 hidden)
1: 192.168.0.1:0::0::FFFF:FFFF/192 AD/ESI (1 entry, 1 announced)
*EVPN Preference: 170
Next hop type: Indirect, Next hop index: 0
Address: 0x8c06784
Next-hop reference count: 32771, key opaque handle: 0x0, non-key opaque handle: 0x0
Protocol next hop: 192.168.0.1
Reroute address: 192.168.102.1
Thread: junos-main
show route table bgp.evpn.0 extensive
명령에는 show route table bgp.evpn.0 extensive 디바이스 ELP 터널 주소를 표시하는 필드가 포함됩니다 Reroute address .
예를 들어:
user@PE1> show route table bgp.evpn.0 extensive
bgp.evpn.0: 40116 destinations, 67780 routes (40116 active, 0 holddown, 0 hidden)
1: 192.168.0.1:0::0::FFFF:FFFF/192 AD/ESI (1 entry, 1 announced)
TSI:
Page 0 idx 0, (group iBGPGrp type Internal) Type 1 val 0xf820c88 (adv_entry)
Advertised metrics:
Flags: Nexthop Change
Nexthop: Self
Localpref: 100
AS path: [55000] I
Reroute address: 192.168.102.1
Primary Routing Table: __default_evpn__.evpn.0
Thread: junos-main
show interfaces(ELP 터널 VTEP 인터페이스 포함)
디바이스가 show interfaces ELP 터널에서 트래픽을 재라우팅하는 시기를 확인하려면 ELP 터널 VTEP 인터페이스 이름과 함께 명령을 사용합니다.
예를 들어, 앞서 show ethernet-switching vxlan-tunnel-end-point remote 에서 본 샘플 명령 출력은 ELP 터널 VTEP 인터페이스 이름이 vtep.32831( Interface PE2에 대한 터널에 대한 원격 VTEP가 있는 열)임을 보여줍니다.
명령을 입력 show interfaces vtep.32831 하면 CE1과 PE1 간의 링크가 실패 Output packets 하기 전에 필드에 VTEP에 대한 트래픽이 ELP 터널을 통과하지 않는 것으로 표시됩니다.
user@PE1> show interfaces vtep.32831
Logical interface vtep.32831 (Index 2757) (SNMP ifIndex 2585)
Flags: Up SNMP-Traps 0x4000 Encapsulation: ENET2
VXLAN Endpoint Type: Shared ELP Remote, VXLAN Endpoint Address: 192.168.201.1, L3 Routing Instance: default
Input packets : 2
Output packets: 1
Protocol eth-switch, MTU: Unlimited
Flags: Trunk-Mode
CE1과 PE1 간의 링크가 실패한 후 동일한 명령은 트래픽이 짧은 시간(소스 라우팅 테이블 컨버전스가 발생할 때까지) 동안 ELP 터널 경로를 사용함을 보여줍니다.
user@PE1> show interfaces vtep.32831
Logical interface vtep.32831 (Index 2757) (SNMP ifIndex 2585)
Flags: Up SNMP-Traps 0x4000 Encapsulation: ENET2
VXLAN Endpoint Type: Shared ELP Remote, VXLAN Endpoint Address: 192.168.201.1, L3 Routing Instance: default
Input packets : 2
Output packets: 3890
Protocol eth-switch, MTU: Unlimited
Flags: Trunk-Mode