소개
이 문서에서는 DMVPN Phase3, NHRP 리디렉션이 스포크 라우터가 다른 스포크 디바이스에 대한 직접 경로를 검색할 수 있는 주요 기능인 방법에 대해 설명합니다.
배경 정보
스포크 투 스포크 터널을 구축하려면 DMVPN(Dynamic Multipoint Virtual Private Network) 허브가 데이터 플레인에서 NHRP(Next Hop Resolution Protocol) 리디렉션 제어 패킷을 생성한 다음 이 리디렉션을 스포크 디바이스로 전송할 수 있어야 합니다. 대규모 DMVPN 구축에서 이 기능이 작동하려면 일부 튜닝을 수행해야 하는 경우도 있습니다. 이 문서에서는 이러한 고려 사항 중 일부에 대해 설명합니다.
문제
NHRP 제어 패킷 조절
대규모 환경에서는 DMVPN 허브가 많은 NHRP 리디렉션 패킷을 처리해야 합니다. NHRP 리디렉션 패킷은 데이터 플레인 또는 제어 플레인의 조절 때문에 삭제될 수 있습니다. 해결 요청을 보내기 전에 DMVPN 스포크가 NHRP 리디렉션 패킷을 수신하지 않는 경우 먼저 NHRP 리디렉션 패킷이 허브에 삭제되지 않았는지 확인할 수 있습니다. 이런 일이 일어날 수 있는 곳은 세 군데입니다.
1. Cisco IOS®-XE에서는 리디렉션 요청이 데이터 플레인에서 Cisco IOSd로의 짧은 경로를 거쳐야 합니다. 리디렉션해야 하는 데이터 플레인 패킷이 많은 경우 이러한 패킷을 punt 경로에서 삭제할 수 있습니다. 이 punt 폴리서를 확인해야 합니다.
Router#show platform software punt-policer
Per Punt-Cause Policer Configuration and Packet Counters
Punt Config Rate(pps) Conform Packets Dropped Packets Config Burst(pkts) Config Alert
Cause Description Normal High Normal High Normal High Normal High Normal High
-------------------------------------------------------------------------------------------------------------------------------------------------------------
<snip>
51 DMVPN NHRP redirect 2000 1000 0 0 0 0 2000 1000 Off Off
<snip>
2. Cisco IOSd에서는 NHRP 리디렉션이 속도 제한적이므로 들어오는 모든 데이터 플레인 패킷에 대해 리디렉션이 트리거되지 않습니다. 기본 속도 제한 간격은 8초이며, 다음 명령을 사용하여 이 간격을 조정할 수 있습니다.
Spoke(config-if)#ip nhrp redirect timeout ?
<2-30> Interval in seconds
3. 모든 NHRP 제어 패킷은 tunnel interface nhrp max-send 컨피그레이션에 의해 속도 제한되며, show ip nhrp traffic 명령을 사용하여 높은 사용률을 확인할 수 있습니다.
Hub#show ip nhrp traffic
Tunnel0: Max-send limit:100Pkts/10Sec, Usage:0%
Sent: Total 18740
0 Resolution Request 3 Resolution Reply 7734 Registration Request
0 Registration Reply 3 Purge Request 0 Purge Reply
0 Error Indication 11000 Traffic Indication 0 Redirect Suppress
Rcvd: Total 7737
3 Resolution Request 0 Resolution Reply 0 Registration Request
7728 Registration Reply 0 Purge Request 3 Purge Reply
0 Error Indication 3 Traffic Indication 0 Redirect Suppress
Spoke2#
솔루션
리디렉션의 소스 식별
NHRP 리디렉션 삭제 문제를 완화하기 위한 가장 중요한 첫 번째 단계는 먼저 특정 DMVPN 설계에서 이러한 리디렉션 패킷이 예상되는지 여부를 확인하는 것입니다. 대부분의 DMVPN 네트워크에서 NHRP 리디렉션은 소스 스포크를 트리거하여 직접 스포크 투 스포크 터널을 구축할 수 있습니다. 따라서 네트워크 접두사가 있는 NHRP 경로를 라우팅 테이블에 설치할 수 있으며, 동일한 접두사로 이동하는 트래픽은 터널이 비활성 상태로 인해 중단될 때까지 추가 리디렉션을 트리거할 수 없습니다. 어떤 이유로든 스포크-투-스포크 터널을 구축할 수 없는 경우, 데이터 트래픽은 이러한 리디렉션을 계속해서 트리거할 수 있습니다. 어떤 트래픽이 리디렉션을 트리거하는지 알아보려면 허브에서 다음 명령을 사용합니다.
Hub#show ip nhrp redirect
I/F NBMA address Destination Drop Count Expiry
Tunnel0 172.16.1.1 192.168.101.1 16 00:00:00
Tunnel1 172.17.0.9 192.168.1.2 16 00:00:00
Hub#
이러한 리디렉션을 트리거하는 모든 데이터 트래픽이 합법적이지만 네트워크 규모에 따라 많은 양의 리디렉션이 허브에 여전히 보장되는 경우, 요건을 수용하도록 punt-policer 및 NHRP max-send 임계값을 조정할 수 있습니다.
punt-policer 임계값 조정
기본적으로 DMVPN NHRP 리디렉션은 펀트 경로의 높은 대기열을 사용합니다. 이 특정 원인에 대해 punt-policer 속도를 조정하려면 다음 명령을 사용합니다.
Hub(config)#platform punt-policer dmvpn-redir-pkt 20000 20000 high
NHRP 최대 전송 임계값 조정
NHRP 최대 전송 속도가 100Pkts/10Sec에서 10000Pkts/10Sec(Cisco 버그 ID CSCux 사용)로 증가했습니다58299 (ip NHRP max-send의 기본 제한을 조정할 수 있습니다.) 이 임계값은 다음과 같이 더욱 증가할 수 있습니다.
Hub(config-if)#ip nhrp max-send 20000 every 10