이 제품에 대한 문서 세트는 편견 없는 언어를 사용하기 위해 노력합니다. 이 문서 세트의 목적상, 편견 없는 언어는 나이, 장애, 성별, 인종 정체성, 민족 정체성, 성적 지향성, 사회 경제적 지위 및 교차성에 따른 차별을 의미하지 않는 언어로 정의됩니다. 제품 소프트웨어의 사용자 인터페이스에서 하드코딩된 언어, RFP 설명서에 기초한 언어 또는 참조된 서드파티 제품에서 사용하는 언어로 인해 설명서에 예외가 있을 수 있습니다. Cisco에서 포용적인 언어를 사용하는 방법에 관해 자세히 알아보세요.
Cisco는 전 세계 사용자에게 다양한 언어로 지원 콘텐츠를 제공하기 위해 기계 번역 기술과 수작업 번역을 병행하여 이 문서를 번역했습니다. 아무리 품질이 높은 기계 번역이라도 전문 번역가의 번역 결과물만큼 정확하지는 않습니다. Cisco Systems, Inc.는 이 같은 번역에 대해 어떠한 책임도 지지 않으며 항상 원본 영문 문서(링크 제공됨)를 참조할 것을 권장합니다.
이 문서에서는 Cisco IOS® XR에서 MBB(Make-Before-Break)의 동작에 대해 설명합니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서는 Cisco IOS® XR에 한정되어 있지만 특정 소프트웨어 릴리스 또는 하드웨어로 제한되지 않습니다.
이 문서에 사용된 모든 디바이스는 IOS-XR 6.5.2을 실행하고 있습니다. 모든 라인 카드는 3세대 또는 4세대 ASR9k 라인 카드입니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
MBB(Make-Before-Break)의 목적은 다음과 같습니다. 새 mLDP(Multipoint Label Distribution Protocol) 트리를 설정한 후 기존 트리를 철거하고 멀티캐스트 트래픽을 손실하지 않고 기존 트리에서 새 트리로 트래픽을 스위칭합니다. 두 가지 시나리오에서 사용할 수 있습니다.
라우터가 이전 LSP(Label Switched Path)가 손상되었음을 알고 있으면 새 LSP를 사용하기 시작할 때까지 기다리지 마십시오. 오래된 나무 위에 더 이상 차들이 오지 않기 때문에 여기서 기다리는 것은 이치에 맞지 않는다. 이전 트리가 계속 작동하는 경우 새 트리가 완전히 설정될 때까지 라우터가 이전 트리를 해체하지 않아야 합니다.
MBB는 RFC 6388에 설명된 대로 쿼리 및 ACK 메커니즘에 의해 구동됩니다. mLDP의 기본 RFC입니다. 이 쿼리 및 ACK 메커니즘은 새 트리가 멀티캐스트 트래픽을 전달할 준비가 되었을 때 신호를 보냅니다. 이러한 방식으로 패킷 손실이 있어서는 안 됩니다. 라우터가 기존 LSP가 손상된 것을 알고 있으면 새 LSP를 사용하기 시작할 때까지 기다리지 마십시오. 오래된 나무 위에 더 이상 차들이 오지 않기 때문에 여기서 기다리는 것은 이치에 맞지 않는다. 이전 트리가 계속 작동하는 경우 새 트리가 완전히 설정될 때까지 라우터가 이전 트리를 해체하지 않아야 합니다.
MBB가 도움이 되는 경우는 다음과 같습니다.
이 두 가지 사항은 좋은 이벤트를 나타냅니다. 잘못된 이벤트의 예로는 업스트림 경로의 라우터에서 바로 연결되는 링크가 있습니다. MBB는 이 경우 도움이 되지 않습니다. 이 경우 IP FRR(Fast ReRoute)이 필요합니다.
MBB가 발생하면 일시적으로 둘 이상의 업스트림 인접 디바이스 및/또는 둘 이상의 다운스트림 인접 디바이스가 있게 됩니다. RFC 6388에서는 여러 수락 요소가 있을 수 있도록 지정됩니다. 즉, 트리당 여러 업스트림 인접 디바이스 및 업스트림 레이블 값이 있을 수 있습니다. "accepting element"는 업스트림 mLDP 인접 디바이스가 트래픽을 수락하는 후보라는 것을 의미합니다. 하나의 허용 요소는 활성 요소입니다. 활성 요소는 MPLS 레이블이 전달 평면에 설치되는 요소입니다. 다른 수락 요소는 비활성 요소입니다. 이 요소는 MPLS 레이블이 전달 평면에 아직 설치되지 않은 요소입니다. 이 비활성 요소는 쿼리/ACK 메커니즘이 있는 트리의 새로 신호 받는 부분에 대한 요소이며 활성 수락 요소가 되기 전에 수명이 짧아야 합니다. 트리당 두 개의 허용 요소만 있을 수 있습니다. 하나는 활성 상태이고 다른 하나는 비활성 상태입니다. 쿼리/Ack 신호 처리가 완료되거나 고정 시간 지연에 도달하면 이전 인접 디바이스가 트리에서 제거됩니다.
Query/Ack 메커니즘 대신, 다른 구현 방법은 고정된 구성 가능한 지연을 통해 새 LSP로의 전환을 지연시키는 것입니다.
mLDP는 유니캐스트가 사용 중인 다운스트림 할당 레이블 공간을 공유하며 따라서 MPLS 포워딩 플레인에는 기본적으로 멀티캐스트 패킷이나 유니캐스트 패킷과 차이가 없습니다. 전달 플레인이 유니캐스트와 공유되므로 IP FRR과 같은 멀티캐스트에 대해 특정 유니캐스트 기능이 상속됩니다.
MBB 절차는 P2MP(Point-to-Multipoint) 및 MP2MP(Multipoint-to-Multipoint) 트리에 적용됩니다.
MBB는 선택 사항이므로(RFC에서도 선택 사항임) 사용하도록 구성해야 합니다. 구성된 경우 업스트림에서 전송된 Label Mapping Message에 연결된 MBB 상태가 있을 수 있으며 업스트림 라우터에서 다운스트림 라우터로 보낸 LDP 알림 메시지에 연결할 수도 있습니다. 라우터는 LDP MP 상태 TLV에서 MBB 상태를 연결할 수 있습니다.
MBB 상태는 LDP MP 상태 값 요소의 유형입니다.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MBB Type = 1 | Length = 1 | Status Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
상태 코드는 MBB 요청의 경우 1이고 MBB ACK의 경우 2입니다.
LDP MP Status TLV는 다음과 같이 인코딩됩니다.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0| LDP MP Status Type(0x096F)| Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value |
~ ~
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
값 필드에는 하나 이상의 LDP MP 상태 값 요소가 있습니다.
LDP MP Status TLV Value에 포함된 LDP MP Status Value 요소에는 다음 인코딩이 있습니다.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
~ ~
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LDP MP 상태 TLV는 레이블 매핑 메시지 또는 LDP 알림 메시지에 나타날 수 있습니다.
LDP 알림 메시지:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Notification (0x0001) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LDP MP Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional LDP MP FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional Label TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
레이블 매핑 메시지에서 다음을 수행합니다.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| Label Mapping (0x0400) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FEC TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Label TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Optional LDP MP Status TLV |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Additional Optional Parameters |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
위의 설명에서는 동적 MBB 동작을 설명합니다. 또 다른 옵션은 새 트리로의 전환이 지연에 의해서만 결정되는 고정 동작을 갖는 것입니다. 이 경우 전환은 새 트리가 준비된 후 일정 시간(밀리초)초 후에 발생합니다.
이미지 1은 mLDP Label Mapping 메시지의 Wireshark에서 캡처를 나타냅니다. LDP MP Status TLV가 연결되어 있습니다.
이미지 1
01000102는 MBB Type 1, 0001(길이 1), 02(MBB ACK)로 디코딩합니다.
MBB 메커니즘은 P2MP mLDP FEC(Forwarding Equivalent Class) 및 MP2MP 업스트림 또는 다운스트림 FEC에 적용됩니다.
MBB를 수행할 수 있는 라우터는 LDP 세션의 MBB 기능 광고에서 이를 인접 디바이스에 광고합니다.
RP/0/RSP1/CPU0:R2#show mpls mldp neighbors
MLDP peer ID : 10.79.196.14:0, uptime 22:32:06 Up,
Capabilities : Typed Wildcard FEC, P2MP, MP2MP, MBB
Target Adj : No
Upstream count : 0
Branch count : 0
Label map timer : never
Policy filter in :
Path count : 1
Path(s) : 10.159.248.201 Bundle-Ether120 No LDP
Adj list : 145.254.3.36 Bundle-Ether10362
Peer addr list : 10.79.196.14
: 10.55.55.1
: 10.196.91.134
: 10.200.30.1
IOS-XR에서는 기본적으로 MBB가 활성화되지 않습니다.
"make-before-break" 명령은 기능 및 기능 광고를 활성화합니다.
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 0
MBB에는 기본적으로 지연이 없습니다. 스케일링된 설정에서만 지연을 늘려야 합니다. 이유는 mLDP 데이터베이스 항목이 많으면 설치해야 하는 mLDP 포워딩 항목이 많을 수 있기 때문입니다. 이러한 포워딩 항목을 라인 카드의 데이터 평면에 설치하는 데 다소 시간이 걸릴 수 있습니다.
이미지 2를 보십시오.
이미지 2
오래된 나무와 새로 신호를 받은 나무가 있다. 두 개의 트리가 분기되는 라우터가 PLR(Point of Local Repair)입니다. 두 트리가 다시 병합되는 라우터는 MP(Merge Point)입니다. mLDP 트리의 새로운 부분은 라우터가 더 나은 경로를 발견했기 때문에 신호를 받습니다. 둘 중 하나, 새 링크 R4 - R2를 사용할 수 있게 되었거나, 해당 링크의 IGP 메트릭이 감소하여 전체 메트릭이 낮은 경로를 생성했습니다.
MBB에 대해 두 개의 지연 값을 구성할 수 있습니다. 첫 번째는 MBB를 사용하여 MP 전환이 원래 경로로 다시 전환되도록 하는 지연입니다. MBB ACK를 받은 시간입니다.
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay ?
<0-600> Forwarding delay in seconds
지연이 0이면 MBB Ack이 라우터에서 수신되고 기존 경로와 새 경로가 다양한 PLR이 있는 즉시 새로 신호 처리된 경로가 사용됩니다. 두 번째는 MP가 네이티브 경로로 전환된 후 백업 경로를 삭제하는 지연입니다.
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay 10 ?
<0-60> Delete delay in seconds
<cr>
RP/0/RP1/CPU0:Router(config-ldp-mldp-af)#make-before-break delay 10 10 ?
<cr>
전환 지연과 삭제 지연은 모두 MP에서 사용됩니다.
MB는 옛 자민당이 철거되기 전에 새 mLDP 나무를 조정한다. 이는 기존 트리가 여전히 존재하고 트래픽을 전달하는 경우에만 적합합니다. 링크 업 이벤트와 같은 IGP 통합은 mLDP 트리를 위한 더 나은 경로를 생성할 수 있습니다. 즉, 루트에 대해 또는 MP2MP mLDP 트리인 경우 leaf를 향해 작은 IGP 메트릭을 의미합니다.
예를 보세요.
이미지 3은 라우팅 컨버전스 이벤트 이전의 네트워크를 보여줍니다.
이미지 3
R5는 하나의 mLDP 트리의 루트 라우터이고 R6은 리프 라우터입니다. P2MP mLDP 트리는 모든 라우터에서 루트로 향하는 Label Mapping 메시지(MPLS 레이블 포함)로 신호를 받습니다. 이 LDP 레이블 매핑 메시지는 MBB 요청을 전달하지 않습니다.
mLDP 트래픽은 위쪽 경로를 통해 왼쪽(루트)에서 오른쪽(리프)으로 이동합니다. 각 링크에서 지정된 MPLS 레이블이 멀티캐스트 패킷 위에 있습니다.
이미지 4는 라우팅 컨버전스 이벤트(MBB 제외) 이후의 네트워크를 보여줍니다.
이미지 4
R4 - R2 링크가 이제 작동 중입니다. 이 링크의 메트릭은 낮은 값이므로 아래쪽 경로의 메트릭이 위쪽 경로보다 낮습니다. 다음 두 가지가 필요합니다. 링크를 통해 IGP 인접성을 설정해야 하며 이 새 링크에서도 LDP 세션을 설정해야 합니다. 이 LDP 세션이 시작되면 mLDP 트리를 위쪽에서 아래쪽으로 이동하기 위해 이 링크를 통해 레이블 매핑 메시지가 교환됩니다.
MBB가 구성되지 않은 경우 아래쪽 경로에 LDP Label Mapping 메시지가 정기적으로 신호 처리 됩니다. MBB 요청 없이 Label Mapping(레이블 매핑) 메시지가 R1에 도달하면 R1은 상위 경로의 멀티캐스트 트래픽 포워딩을 중지하고 아래쪽 경로의 멀티캐스트 트래픽 포워딩을 시작합니다.
결국 R1은 두 경로를 통해 멀티캐스트 트래픽을 전달하지 않고 한 경로를 통해서만 전달했습니다. 트래픽을 맨 위에서 맨 아래 경로로 전환했습니다. 전환이 즉시 이루어지므로 R2에서 R1로 R4를 통해 컨트롤 플레인 신호 처리가 mLDP 항목을 새 경로의 라우터의 데이터 플레인에 설치하는 데 필요한 시간보다 약간 더 빠를 수 있기 때문에 멀티캐스트 트래픽이 짧은 기간 동안 중단될 수 있습니다.
명시적으로 활성화된 mLDP 로깅 알림이 있습니다.
RP/0/0/CPU0:Jan 1 16:06:49.778 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_ADD : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Add LDP 10.0.0.4:0 branch remote label 24009
RP/0/0/CPU0:Jan 1 16:06:49.838 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_DELETE : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Delete LDP 10.0.0.3:0 branch remote label 24009
MBB가 구성된 경우 다음 항목이 있습니다.
R1에서 MBB만 구성하는 것만으로는 충분하지 않습니다.
다음은 R2의 컨피그레이션의 예입니다.
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 60
!
링크 R4-R2의 LDP 세션이 작동 중일 때 R2가 이전 경로에서 새 경로로 전환을 지연시킬 수 있습니다. 그런 일은 일어나지 않을 것이다. 모든 라우터(또는 R1, R4, R2 이상)에서 MBB를 활성화해야 R4에서 R2와 R1 간에 MBB 신호 처리가 작동됩니다.
MBB 신호 처리를 활성화하려면 모든 라우터에서 이 최소 컨피그레이션을 사용해야 합니다.
mpls ldp
mldp
logging notifications
address-family ipv4
make-before-break delay 0
!
이미지 5를 보십시오.
이미지 5
모든 올바른 컨피그레이션이 갖춰져 있습니다. 처음에는 이벤트를 살펴보므로 컨버전스 이벤트 이전의 상황이 표시됩니다.
활성 상위 경로가 시작입니다. R1에서 R3은 유일한 다운스트림 클라이언트입니다.
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:19:43
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:19:43
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.3:0 Uptime: 00:03:28
Next Hop : 10.1.3.3
Interface : GigabitEthernet0/0/0/0
Remote label (D) : 24009
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.3.3, Intf: GigabitEthernet0/0/0/0 Role: M
R2에서 R3만 수락 가능 요소입니다.
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:23:58
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.3:0 [Active] [MBB] Uptime: 00:03:19
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:23:58
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
MBB 신호 처리 후 R2에는 두 개의 수락 요소가 있습니다. 하나는 활성, 하나는 비활성 상태입니다.
Jan 1 16:52:43.700 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_ADD : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Add LDP 10.0.0.4:0 branch remote label 240
R1에는 R3과 R4라는 두 개의 다운스트림 클라이언트가 있습니다.
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:22:35
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:22:35
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.3:0 Uptime: 00:06:20
Next Hop : 10.1.3.3
Interface : GigabitEthernet0/0/0/0
Remote label (D) : 24009
LDP 10.0.0.4:0 Uptime: 00:00:36
Next Hop : 10.1.4.4
Interface : GigabitEthernet0/0/0/1
Remote label (D) : 24009
R1은 두 경로를 통해 전달되고 있습니다.
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.3.3, Intf: GigabitEthernet0/0/0/0 Role: M
24009, NH: 10.1.4.4, Intf: GigabitEthernet0/0/0/1 Role: M
이제 R2에는 두 개의 업스트림 인접 디바이스, 하나는 활성(R3), 하나는 비활성(R4)이 있습니다. 이 단계는 전달 지연 시간인 60초 동안 진행됩니다.
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:27:00
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
MBB nbr evaluate : 00:00:21
Features : MBB
Upstream neighbor(s) :
10.0.0.4:0 [Inactive] [MBB] Uptime: 00:00:38
Local Label (D) : 24009
10.0.0.3:0 [Active] [Delete] [MBB] Uptime: 00:06:22
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:27:00
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
24009 LSM-ID: 0x00001 flags: ED
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
각 mLDP 트리의 로컬 레이블이 서로 다릅니다. 따라서 R2는 들어오는 mLDP 트래픽을 구별하고 mLDP 트리에 속한 수신 mLDP 패킷을 식별하는 데 아무런 문제가 없습니다. R2는 한 트리의 트래픽만 언제든지 전달합니다. 플래그 ED는 'Egress Drop'을 의미하며, 레이블 24009로 도착하는 패킷은 삭제됩니다. 이는 수락 요소가 비활성 상태인 트리의 패킷입니다. 수신기에 도착하는 트래픽은 중복되지 않습니다!
R2의 각 mLDP 트리에 대한 발신 레이블은 동일합니다. 따라서 R2의 다운스트림 라우터인 R6에서는 재라우팅 후 트래픽이 원래 이전(위쪽) 경로를 통과했는지 아니면 새(아래쪽) 경로를 통과했는지 구분할 수 없습니다.
60초 후 R2는 위쪽 경로에서 트래픽 포워딩을 중지하고 아래쪽 경로에서 트래픽을 시작합니다.
RP/0/0/CPU0:R1 Jan 1 16:53:44.236 : mpls_ldp[1180]: %ROUTING-MLDP-5-BRANCH_DELETE : 0x00001 [ipv4 10.0.0.105 232.1.1.1] P2MP 10.0.0.5, Delete LDP 10.0.0.3:0 branch remote label 24009
R1에는 다운스트림 클라이언트 R4가 하나만 있습니다.
RP/0/0/CPU0:R1#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:25:21
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.5:0 [Active] [MBB] Uptime: 00:25:21
Local Label (D) : 24008
Downstream client(s):
LDP 10.0.0.4:0 Uptime: 00:03:22
Next Hop : 10.1.4.4
Interface : GigabitEthernet0/0/0/1
Remote label (D) : 24009
RP/0/0/CPU0:R1#show mpls mldp forwarding
mLDP MPLS forwarding database
24008 LSM-ID: 0x00001 flags: None
24009, NH: 10.1.4.4, Intf: GigabitEthernet0/0/0/1 Role: M
R2에는 업스트림 인접 디바이스가 하나만 있습니다.
RP/0/0/CPU0:R2#show mpls mldp database
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 00:29:54
FEC Root : 10.0.0.5
Opaque decoded : [ipv4 10.0.0.105 232.1.1.1]
Features : MBB
Upstream neighbor(s) :
10.0.0.4:0 [Active] [MBB] Uptime: 00:03:31
Local Label (D) : 24009
Downstream client(s):
LDP 10.0.0.6:0 Uptime: 00:29:54
Next Hop : 10.2.6.6
Interface : GigabitEthernet0/0/0/2
Remote label (D) : 24010
RP/0/0/CPU0:R2#show mpls mldp forwarding
mLDP MPLS forwarding database
24009 LSM-ID: 0x00001 flags: None
24010, NH: 10.2.6.6, Intf: GigabitEthernet0/0/0/2 Role: M
R2의 mLDP 추적은 MBB 신호 처리가 사용되었으며, 이전 경로에서 새 경로로 전환하기 전에 60초 지연이 있었고, 이전 경로를 삭제하기 위한 후속 0초 지연이 발생했음을 보여줍니다. 그런 다음 R2는 이전 경로에 대해 R3에 레이블 철회 메시지를 보내고 응답으로 R3에서 레이블 해제 메시지를 받습니다.
RP/0/0/CPU0:R2#show mpls mldp trace
Jan 1 16:52:43.370 MLDP GLO 0/0/CPU0 t21 NBR : New LDP peer 10.0.0.4:0 UP cap: f
Jan 1 16:52:43.370 MLDP GLO 0/0/CPU0 t21 NBR : 10.0.0.4:0 LDP Adjacency addr: 10.2.4.4, Interface: GigabitEthernet0/0/0/1 Add
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.4:0 installed local label 24009
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label mappping MBB Request msg to 10.0.0.4:0 Success
Jan 1 16:52:43.660 MLDP LSP 0/0/CPU0 t21 FWD : 0x00001 Label 24009 add path label 24010 intf GigabitEthernet0/0/0/2 nexthop 10.2.6.6 id 0x00001 Success
Jan 1 16:52:43.660 MLDP GLO 0/0/CPU0 t21 GEN : Root 10.0.0.5 path 10.2.4.4 php nh 10.2.4.4 peer 134a338c:10.0.0.4:0
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP notification from 10.0.0.4:0 root 1.0.16.0 Opaque Len: 83886090 MBB Ack
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 Start MBB Notification timer 100 msec (MBB ack)
Jan 1 16:52:43.910 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL selection delayed for 60 seconds (MBB)
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 start delete pending timer at 0 sec
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.4:0 activate
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 update active ident from 10.0.0.3:0 to 10.0.0.4:0
Jan 1 16:53:44.156 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 deactivate
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 delete delay timer expired, delete pending TRUE
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 FWD : 0x00001 Label 24008 delete, Success
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 binding list Local Delete
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 Released label 24008 to LSD
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label withdraw msg to 10.0.0.3:0 Success
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 ACEL 10.0.0.3:0 remove
Jan 1 16:53:44.256 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 P2MP label release from 10.0.0.3:0 label 24008 root 10.0.0.5 Opaque Len 11
Jan 1 16:53:44.356 MLDP LSP 0/0/CPU0 t21 DB : 0x00001 MBB notification delay timer expired
mLDP 보호는 두 가지 주요 부분으로 구성됩니다. 보호 자체와 MBB(Make-Before-Break).
보호
mLDP 트래픽의 보호는 유니캐스트 MPLS 트래픽의 보호 메커니즘과 유사합니다. 링크 장애가 감지되면 PLR 라우터는 해당 링크를 통과하는 트리에서 백업 경로로 멀티캐스트 트래픽을 전환합니다. 이 백업 경로는 전달 평면에 설치된 미리 계산된 경로입니다. 따라서 장애가 발생하는 즉시 멀티캐스트 트래픽을 백업 경로로 즉시 전환할 수 있습니다.
보호는 링크 다운 전용입니다. mLDP에는 노드 보호가 없습니다.
링크 다운 이벤트는 매우 빨리 탐지되어야 합니다. 즉, BFD(Bidirectional Forwarding Detection)를 사용해야 합니다.
MB
보호가 시작되면 멀티캐스트 트래픽이 백업 경로에 영구적으로 유지되지 않습니다. 트래픽을 새로 계산된 네이티브 mLDP 트리/경로로 전환해야 합니다. 이러한 전환은 멀티캐스트 트래픽이 손실되지 않도록 해야 합니다. MBB는 이 작업에 사용되므로 새로 신호된 트리가 완전히 설정되고 트래픽을 포워딩할 때만 트래픽이 스위칭됩니다. 그런 다음 MP 라우터는 트래픽 손실 없이 이전 백업 트리에서 새로 신호된 트리로 트래픽을 전달하는 트래픽을 안전하게 전환할 수 있습니다.
이미지 6을 보십시오. LFA로 보호되는 링크 R1 - R2가 있는 네트워크를 보여줍니다.
이미지 6
mLDP 트래픽은 R1 - R2 링크를 통해 전달됩니다. FRR은 R3을 통해 백업 경로를 계산하고 설치합니다.
이미지 7을 보십시오.
이미지 7
이미지 7은 보호가 활성화된 상태를 보여줍니다.
링크 R1 - R2가 다운되면 해당 링크의 LDP 세션이 LDP 세션 보호 기능으로 유지됩니다. TCP 세션인 LDP 세션은 R3을 통해 다시 라우팅됩니다. 따라서 R1과 R2 사이의 LDP 및 mLDP에 대한 레이블 바인딩이 제거되지 않습니다. 이 LDP 세션이 R3을 통해 라우팅되고 멀티홉이 되려면 대상 LDP 세션이어야 합니다. 이는 LDP 세션 보호를 구성할 때 자동으로 수행됩니다.
링크 R1 - R2가 다운되면 mLDP 트래픽은 R3을 통해 빠르게 라우팅될 수 있습니다. 이 작업을 수행하려면 R1에서 LDP 라우터-ID R2로 향하는 경로에 대해 일부 보호 방식이 있어야 합니다. 이 기능은 MPLS 트래픽 엔지니어링 터널, LFA(루프 프리 대체) 또는 Ti-LFA(Independent LFA) 토폴로지를 활성화하여 실현됩니다. R1에서 R2로의 멀티캐스트 트래픽에는 mLDP 레이블이 1개 있습니다. 링크 R1 - 2가 다운되면 멀티캐스트 트래픽은 R2로 전송될 때 추가 레이블을 받습니다. PHP(Penultimate Hop Popting)가 있으므로 트래픽은 R2에 하나의 레이블로 전달됩니다. R2는 R1 - R2 링크가 작동 중일 때와 동일한 레이블로 이 트래픽을 수신합니다. R2는 이 멀티캐스트 트래픽을 계속 전달합니다.
이 보호 기능은 빠릅니다. mLDP 트래픽에 대한 보호 기능이 있는 동안 R2는 R3을 통해 R1에 새로운 네이티브 경로를 알리기 시작합니다. 따라서 R2는 mLDP 레이블 매핑 메시지를 R3에 전송합니다. R3은 R1에 대해 동일하게 작동합니다. 이는 새 mLDP 경로를 생성할 때와 동일한 프로세스/신호 처리 방법입니다. 이 신호 처리가 진행되는 동안 R2는 백업 mLDP 경로에서 트래픽을 계속 전달합니다. R2는 언제 새로 생성된 네이티브 경로에서 트래픽을 포워딩하기 시작합니까? 트리거는 두 가지가 될 수 있습니다. 시간 제한 지연 또는 신호 트리거. 시간 제한 지연이 구성된 것입니다. 신호 트리거는 mLDP에 도입되고 RFC 6388에 지정된 MBB(Make-Before-Break) 동작입니다. R2가 R1에서 신호를 수신하면 새로 기본 mLDP 경로가 준비되었음을 나타내므로 R2는 해당 새 mLDP 경로에서 트래픽을 포워딩하고 백업 경로에서 트래픽 포워딩을 중지할 수 있습니다.
R1은 PLR(Point-of-Local-Repair)이라고 하며, 보호 경로와 새로 신호 지정된 네이티브 경로 분기가 해제된 라우터입니다. R2는 MP(Merge Point)로, 보호된 경로와 새로 신호 받은 네이티브 경로가 다시 병합되는 라우터입니다.
이미지 8을 보십시오.
이미지 8
이미지 8은 R2에서 R3으로, R3에서 R1으로 mLDP 레이블 매핑 메시지가 있음을 보여줍니다. 이 레이블 매핑 메시지에는 MBB 요청이 있습니다.
이미지 9를 보십시오.
이미지 9
R1은 LDP 알림으로 이 신호에 응답하고 MBB 승인을 반대 방향으로 전달합니다. 그래서, 나무 아래로. 이 메시지는 R1에서 R3으로, R3에서 R2로 전송됩니다. 이 메시지는 MP 라우터인 R2에 새 네이티브 mLDP 경로가 준비되었음을 알립니다. 이 시점에서 R1은 mLDP 트래픽을 두 번, 백업 경로에 한 번, 새 네이티브 경로에 한 번 전달합니다.
MBB는 여기서 MP(R2) 전환을 다시 원래 경로(방금 생성한 경로)로 전환하는 데 사용됩니다. MBB가 신호 부품을 완료하면 MP는 백업 경로에서 도착하는 mLDP 트래픽의 포워딩을 중지하고 새로 신호를 받은 네이티브 경로에서 트래픽을 포워딩하기 시작합니다. MBB는 이 새로 신호된 경로가 준비된 시점을 나타내는 데 사용됩니다. 다른 가능성은 지연을 구성하는 것입니다. 이 경우 MP는 백업 경로에서 도착하는 mLDP 트래픽의 포워딩을 중지하고 MBB가 이 새 네이티브 경로가 준비되었다는 신호를 보낸 후 그리고 구성된 지연 타이머를 마친 후 새로 신호가 지정된 네이티브 경로에서 트래픽 포워딩을 시작합니다.
R2가 새 네이티브 경로에서 트래픽을 포워딩하기 시작하면 백업 경로에서 트래픽 포워딩을 중지하고 트리에 대한 LDP Label Recall 메시지(및 LDP Label Release 메시지)를 전송하여 백업 경로의 해체 신호를 보냅니다.
플랫폼이 모든 전달 상태를 라인 카드에 프로그래밍할 수 있도록 이전 트리를 제거하기 위해 삭제 지연을 추가로 추가할 수 있습니다.
그 후에는 새로 신호된 네이티브 트리만 있습니다. 이 경우에는 이미지 10을 참조하여 mLDP 트래픽의 전달을 확인합니다.
이미지 10
mLDP 트래픽에 MPLS 레이블이 다시 한 번 있습니다.
mLDP FRR(Fast ReRoute)이 작동하려면 다음 세 가지 구성 항목이 필요합니다.
필요한 사항:
-mLDP에 대한 재귀적 전달 사용
-LDP 세션 보호 사용
IGP 아래의 -LFA(Loop-Free Alternate) 또는 Ti-LFA(Topology Independent LFA)(Ti-LFA는 세그먼트 라우팅 필요). 포인트 투 포인트 트래픽 엔지니어링도 가능합니다.
이 세 가지 중 하나라도 누락된 경우 mLDP에 대한 FRR 보호 기능은 없습니다. mLDP는 링크 장애만 보호하며 노드 장애는 방지합니다.
컨피그레이션 예시
mpls ldp
log
neighbor
nsr
graceful-restart
session-protection
!
igp sync delay on-session-up 25
mldp
logging notifications
address-family ipv4
make-before-break delay 600 60 <<<<<<
forwarding recursive <<<<<<
!
!
router-id 10.79.196.14
neighbor
dual-stack transport-connection prefer ipv4
!
session protection for LDP-PEERS <<<<<<
address-family ipv4
label
local
allocate for host-routes
!
!
!
make-before-break 명령은 선택 사항입니다.
발신 인터페이스가 LFA 또는 Ti-LFA에 의해 보호되는지 확인합니다.
router isis IGP
set-overload-bit on-startup 600
net 49.0010.0000.0000.0001.00
segment-routing global-block 100000 150000
nsf cisco
log adjacency changes
lsp-gen-interval maximum-wait 5000 initial-wait 1 secondary-wait 50
lsp-refresh-interval 1800
max-lsp-lifetime 1880
address-family ipv4 unicast
metric-style wide
fast-reroute per-prefix priority-limit critical
fast-reroute per-prefix tiebreaker lowest-backup-metric index 20
fast-reroute per-prefix tiebreaker node-protecting index 30
fast-reroute per-prefix tiebreaker srlg-disjoint index 10
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback145
mpls traffic-eng multicast-intact
spf-interval maximum-wait 7000 initial-wait 1 secondary-wait 50
segment-routing mpls sr-prefer
segment-routing prefix-sid-map advertise-local
spf prefix-priority critical tag 17
mpls ldp auto-config
!
address-family ipv6 unicast
metric-style wide
fast-reroute per-prefix priority-limit critical
fast-reroute per-prefix tiebreaker lowest-backup-metric index 20
fast-reroute per-prefix tiebreaker node-protecting index 30
fast-reroute per-prefix tiebreaker srlg-disjoint index 10
spf-interval maximum-wait 7000 initial-wait 1 secondary-wait 50
segment-routing mpls sr-prefer
spf prefix-priority critical tag 17
!
interface Bundle-Ether10362
circuit-type level-2-only
point-to-point
address-family ipv4 unicast
fast-reroute per-prefix <<<<<<
fast-reroute per-prefix ti-lfa <<<<<<
metric 420 level 2
mpls ldp sync level 2
!
address-family ipv6 unicast
fast-reroute per-prefix
fast-reroute per-prefix ti-lfa
metric 420 level 2
!
새 네이티브 경로를 따라 MBB가 구성되지 않은 라우터는 멀티캐스트 트래픽 보호에 영향을 주지 않습니다. 보호는 PLR에서 LDP 세션 보호, 재귀적 전달 및 FRR의 구성에만 의존합니다. 새로 네이티브 경로 라우터의 MBB 컨피그레이션은 트래픽이 백업 경로에서 새로 신호된 트리로 전환되는 경우에만 영향을 미칩니다. mLDP 라우터가 다운스트림 라우터에서 MBB 요청이 포함된 레이블 매핑 메시지를 수신하고 업스트림 라우터로 레이블 매핑 메시지를 보내야 하지만 업스트림 라우터에 MBB가 활성화되지 않은 경우 mLDP 라우터는 MBB 요청 없이 이 다운스트림 라우터로 LDP 알림 메시지를 보냅니다. 결국 평범한 mLDP 나무라는 얘기다.
토폴로지에 대한 이미지 11을 확인합니다.
이미지 11
R1과 R2 간에 연결이 실패하면 해당 간의 mLDP 세션이 R3를 통해 LDP 대상 세션에 의해 보호됩니다. 따라서 R1과 R2 간의 mLDP 세션은 연결이 끊어진 경우에도 작동 상태로 유지됩니다. 이렇게 하면 mLDP 레이블 바인딩이 보호되고 유지됩니다. 링크 R1-R2가 다운되면 전달 평면은 즉시 다음과 같이 전환됩니다. R1-R2 스위치는 Point-to-Point MPLS TE, LFA 또는 Ti-LFA 덕분에 R1-R3을 매우 빠르게 연결할 수 있습니다. 이 P2P MPLS TE, LFA 또는 Ti-LFA는 mLDP에 대한 포워딩 항목을 올바른 방식으로 전환하려면 R1에서 R2의 LDP 라우터 ID로 향하는 경로를 보호해야 합니다. 마지막으로, mLDP 세션이 직접 연결된 세션에서 원격 세션으로 전환되므로 재귀적 전달이 필요합니다. 원격 세션에서는 LDP 라우터 ID가 재귀적 방식으로 해결됩니다.
R1은 PLR(Point-of-Local-Repair)이라고 하며, 보호 경로와 새로 신호 지정된 네이티브 경로 분기가 해제된 라우터입니다. R2는 MP(Merge Point)로, 보호된 경로와 새로 신호 받은 네이티브 경로가 다시 병합되는 라우터입니다.
세 가지 요구 사항을 확인합니다.
-LDP 보호
Bundle-Ethernet10362를 통해 직접 연결된 mLDP(LDP) 인접 디바이스의 경우, Hello의 표적 대상도 있어야 합니다.
RP/0/RP0/CPU0:R1#show mpls ldp discovery 10.79.196.10
Local LDP Identifier: 10.79.196.14:0
Discovery Sources:
Interfaces:
Bundle-Ether10362 : xmit/recv
VRF: 'default' (0x60000000)
LDP Id: 10.79.196.10:0, Transport address: 10.79.196.10
Hold time: 15 sec (local:15 sec, peer:15 sec)
Established: Dec 28 10:23:16.144 (00:02:13 ao)
Targeted Hellos:
10.79.196.14 -> 10.79.196.10 (active), xmit/recv
LDP Id: 10.79.196.10:0
Hold time: 90 sec (local:90 sec, peer:90 sec)
Established: Dec 28 10:23:30.008 (00:01:59 ago)
-IGP 아래의 LFA 또는 Ti-LFA
LDP 인접 라우터-id에 대한 경로에 백업 경로가 있는지 확인합니다. RIB(Routing Information Base) 및 FIB(Forwarding Information Base 또는 CEF)에는 다음 백업 경로가 있어야 합니다.
RP/0/RP0/CPU0:R1#show route 10.79.196.10
Routing entry for 10.79.196.10/32
Known via "isis IGP", distance 115, metric 420, labeled SR
Tag 17, type level-2
Installed Dec 28 10:23:42.659 for 00:07:58
Routing Descriptor Blocks
145.254.1.144, from 10.79.196.10, via Bundle-Ether10301, Backup (Local-LFA)
Route metric is 2000
10.254.3.37, from 10.79.196.10, via Bundle-Ether10362, Protected
Route metric is 420
No advertising protos.
RP/0/RP0/CPU0:R1#show cef 10.79.196.10
10.79.196.10/32, version 7364, labeled SR, internal 0x1000001 0x83 (ptr 0x788e1f78) [1], 0x0 (0x788ab5a8), 0xa28 (0x79dd1138)
Updated Oct 25 11:32:44.299
Prefix Len 32, traffic index 0, precedence n/a, priority 1
via 10.254.1.144/32, Bundle-Ether10301, 11 dependencies, weight 0, class 0, backup (Local-LFA) [flags 0x300]
path-idx 0 NHID 0x0 [0x78f4e9b0 0x0]
next hop 10.254.1.144/32
local adjacency
local label 100010 labels imposed {100010}
via 10.254.3.37/32, Bundle-Ether10362, 11 dependencies, weight 0, class 0, protected [flags 0x400]
path-idx 1 bkup-idx 0 NHID 0x0 [0x7905e510 0x7905e350]
next hop 10.254.3.37/32
local label 100010 labels imposed {ImplNull}
-mLDP에 대한 재귀적 전달
재귀 전달이 적용되는 경우 mLDP 데이터베이스 항목에 LFIB에 발신 인터페이스가 없습니다.
재귀 전달이 없는 경우:
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 BE10362 10.254.3.37 7893474
재귀적 전달:
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 2516786878
mLDP 전달 항목에 대해 더 이상 발신 인터페이스가 없습니다. 따라서 문제 해결이 더욱 어려워집니다.
MP는 mLDP에 대해 다음과 같은 컨피그레이션을 제공합니다. 타이머 600초 및 60초를 확인합니다. PLR에 동일한 타이머가 있습니다. PLR은 백업 경로와 네이티브 경로를 통해 600초 동안 트래픽을 전달합니다. 600초 지연은 MP가 600초 동안 백업 경로의 트래픽을 포워딩하는 동시에 네이티브 경로에서 도착하는 트래픽을 삭제하는 것을 의미합니다. 600초는 이 타이머의 긴 시간입니다. show 명령을 사용하여 출력을 캡처하는 데 충분한 시간을 제공하기 위해 랩 환경에서 사용되었습니다. 60초 지연은 MP가 네이티브 경로에서 도착하는 트래픽을 포워딩하고 백업 경로를 통해 도착하는 트래픽을 드롭하기 시작한 후 60초 동안 MBB 경로를 삭제하는 것을 기다립니다. 이러한 두 지연의 올바른 값은 네트워크에 따라 다릅니다. 특정 네트워크, 소프트웨어 및 하드웨어를 테스트하는 것에서 파생되어야 합니다.
mpls ldp
log
neighbor
nsr
graceful-restart
session-protection
!
igp sync delay on-session-up 25
mldp
logging notifications
address-family ipv4
make-before-break delay 600 60
forwarding recursive
!
!
router-id 10.79.196.10
neighbor
dual-stack transport-connection prefer ipv4
!
session protection for LDP-PEERS
address-family ipv4
label
local
allocate for LDP-PEERS
!
!
!
이미지 12를 보면 mLDP가 보호 모드에 있는 동안 포워딩이 표시됩니다.
이미지 12
발신 인터페이스가 중단되기 전에 이는 원격 LDP 라우터 ID(R2)에 대한 LFIB 항목입니다.
RP/0/RP0/CPU0:R1#show mpls forwarding labels 100010
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
100010 Pop SR Pfx (idx 10) BE10362 10.254.3.37 355616309429
100010 SR Pfx (idx 10) BE10301 10.254.1.144 0 (!)
The (!) indicates a backup path.
PLR의 mLDP 트리 데이터베이스 항목입니다.
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d03h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.10:0 Uptime: 02:09:09
Rec Next Hop : 10.79.196.10
Remote label (D) : 24440
LDP MSG ID : 254705
PIM MDT Uptime: 3d03h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
트리의 mLDP 포워딩 항목입니다.
RP/0/RP0/CPU0:R1#show mpls mldp forwarding label 25426
mLDP MPLS forwarding database
25426 LSM-ID: 0x00001 HLI: 0x00001 flags: In Pk
Lmdtvrfone, RPF-ID: 0, TIDv4: E0000014, TIDv6: E0800014
24440, NH: 10.79.196.10, Intf: Role: H, Flags: 0x4 Local Label : 25426 (internal)
트리의 LFIB(Label Forwarding Instance Base) 포워딩 항목입니다.
RP/0/RP0/CPU0:R1#show mpls for labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 0
mLDP 전달 항목이 보호됩니다. 전달 항목은 원격 LDP 라우터 ID의 항목인 레이블 100010을 통해 보호됩니다.
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 10:23:42.669
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 1, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 0
Updated: Dec 28 10:23:42.670
My Nodeid:0x20
Interface Nodeids:
[ 0x8620 - - - - - - - - - ]
Interface Handles:
[ 0xc0001c0 - - - - - - - - - ]
Backup Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Backup Interface Handles:
[ 0xa000400 - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
하드웨어의 전달 항목입니다. 라우터는 ASR9k 라우터입니다.
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail hardware ingress location 0/2/CPU0
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 10:23:42.674
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 1, local mpls paths: 0, protected mpls paths: 1
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 N/A
Updated: Dec 28 10:23:42.674
My Nodeid:0x8420
Interface Nodeids:
[ 0x8620 - - - - - - - - - ]
Interface Handles:
[ 0xc0001c0 - - - - - - - - - ]
Backup Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Backup Interface Handles:
[ 0xa000400 - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
LEAF - HAL pd context :
sub-type : MPLS_P2MP, ecd_marked:0, has_collapsed_ldi:0
collapse_bwalk_required:0, ecdv2_marked:0,
Leaf H/W Result
Leaf H/W Result on NP:0
09000014000000921806352100020900006000020a0000600000a00001010400
vpn_special = 0 (0x0)
vc_label_vpws = 0 (0x0)
vc_label_vpls = 0 (0x0)
pwhe = 0 (0x0)
p2mp = 1 (0x1)
tp = 0 (0x0)
recursive = 0 (0x0)
non_recursive = 1 (0x1)
flow_label_dispose = 0 (0x0)
receive_entry_type = 0 (0x0)
control_word_enabled = 0 (0x0)
imp_ttl_255 = 0 (0x0)
collapsed = 0 (0x0)
recursive_lsp_stats = 0 (0x0)
vpn_key = 20 (0x14)
Non-recursive:
rpf_id = 0 (0x0)
nrldi_ptr = 406817 (0x63521)
P2MP:
rpf_id = 146 (0x92)
nrldi_ptr = 146 (0x92)
mldp_egr_drop = 0 (0x0)
mldp_ing_drop = 0 (0x0)
mldp_signal = 0 (0x0)
mldp_peek = 1 (0x1)
mldp_tunnel = 1 (0x1)
p2mp_bud_node = 0 (0x0)
p2mp_ip_lookup = 0 (0x0)
per_lc_receivers = 0 (0x0)
igp_local_label: eos = 1 (0x1)
igp_local_label: exp = 0 (0x0)
igp_local_label: label = 25426 (0x6352)
fab_info: fab_mgid = 521 (0x209)
fab_info: fab_slotmask = 96 (0x60)
fab_info: fab_fgid = 150995040 (0x9000060)
backup_fab_info: backup_fab_mgid = 522 (0x20a)
backup_fab_info: backup_fab_slotmask= 96 (0x60)
backup_fab_info: backup_fab_fgid = 167772256 (0xa000060)
rep_node_ndx = 40960 (0xa000)
ecmp_size = 1 (0x1)
stats_ptr = 66560 (0x10400)
Leaf H/W Result on NP:1
09000014000000921806352100020900006000020a0000600000a00001010400
…
FGID(Fabric Group Index) 및 백업 FGID가 있습니다. FGID는 스위치 패브릭에서 멀티캐스트 트래픽을 올바른 라인 카드로 전달하는 데 사용됩니다. MGID(Multicast Group Identifier)도 있습니다. MGID는 멀티캐스트 트래픽을 라인 카드의 올바른 복제 요소로 전달하는 데 사용됩니다.
RP/0/RP0/CPU0:R1#show mrib encap-id
Encap ID Key : 00000101000000600600020100000000000002
Encap ID Length : 19
Encap ID Value : 262145
Platform Annotation:
Slotmask: Primary: 0x40, Backup: 0x60
MGID: Primary: 64059, Backup: 64060
Flags (Vrflite(v4/v6),Stale,v6): N/N, N, N
Oles:
[1] type: 0x5, len: 12
LSM-ID: 0x00001 MDT: 0x2000660 Turnaround: TRUE
Primary: 0/4/CPU0[1]
Backup: 0/3/CPU0[1]
TableId: 0xe0000014[1001]
Redist History:
client id 31 redist time: 02:01:27 redist flags 0x0
다음은 MGID 항목을 찾는 방법입니다.
RP/0/RP0/CPU0:R1#show controllers mgidprgm mgidindex 521 location 0/2/CPU0
Device MGID-Bits Client-Last-Modified
=======================================================
XBAR-0 1 P2MP
XBAR-1 1 P2MP
FIA-0 1 P2MP
FIA-1 0 None
FIA-2 0 None
FIA-3 0 None
FIA-4 0 None
FIA-5 0 None
FIA-6 0 None
FIA-7 0 None
========================================================
Client Mask
========================================================
MFIBV4 0x0
MFIBV6 0x0
L2FIB 0x0
sRP-pseudo-mc 0x0
UT 0x0
Prgm-Svr 0x0
P2MP 0x1
xbar 0x0
UT1 0x0
UT2 0x0
punt_lib 0x0
RP/0/RP0/CPU0:R1#show controllers mgidprgm mgidindex 522 location 0/2/CPU0
Device MGID-Bits Client-Last-Modified
=======================================================
XBAR-0 1 P2MP
XBAR-1 1 P2MP
FIA-0 1 P2MP
FIA-1 0 None
FIA-2 0 None
FIA-3 0 None
FIA-4 0 Non
FIA-5 0 None
FIA-6 0 None
FIA-7 0 None
========================================================
Client Mask
========================================================
MFIBV4 0x0
MFIBV6 0x0
L2FIB 0x0
sRP-pseudo-mc 0x0
UT 0x0
Prgm-Svr 0x0
P2MP 0x1
xbar 0x0
UT1 0x0
UT2 0x0
punt_lib 0x0
발신 인터페이스가 다운되었으며 MBB가 사용 중입니다.
이미지 13은 신호 처리를 보여줍니다.
이미지 13
이제 R1에는 이 트리에 대해 두 개의 전달 항목이 있습니다.
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 24440 mLDP/IR: 0x00001 10.79.196.10 1834250032
24033 mLDP/IR: 0x00001 10.79.196.13 1825230386
RP/0/RP0/CPU0:R1#show mpls forwarding labels 25426 detail
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 13:07:03.417
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 2, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 2230150704
Updated: Dec 28 13:07:03.245
My Nodeid:0x20
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 21039158
24033 mLDP/IR: 0x00001 (0x00001) \
10.79.196.13 2221131058
Updated: Dec 28 13:07:03.417
My Nodeid:0x20
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100013, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 20954067
다운스트림 mLDP 클라이언트는 R2와 R3입니다.
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d04h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.10:0 Uptime: 02:44:09
Rec Next Hop : 10.79.196.10
Remote label (D) : 24440
LDP MSG ID : 254705
LDP 10.79.196.13:0 Uptime: 00:00:48
Rec Next Hop : 10.79.196.13
Remote label (D) : 24033
LDP MSG ID : 98489
PIM MDT Uptime: 3d04h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
Local Label : 25426 (internal)
MP(R2)에는 두 개의 업스트림 인접 디바이스, 하나는 활성, 다른 하나는 비활성 상태입니다.
P/0/RSP1/CPU0:R2#show mpls mldp database details
LSM-ID: 0x00002 Type: P2MP Uptime: 03:45:22
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
MBB nbr evaluate : 00:08:18
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Inactive] [MBB] Uptime: 00:01:42
Local Label (D) : 24441
Is CSI accepting : N
10.79.196.14:0 [Active] [Delete] [MBB] Uptime: 02:45:02
Local Label (D) : 24440
Downstream client(s):
PIM MDT Uptime: 03:45:22
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
백업 인터페이스가 R1에서 사라졌습니다.
RP/0/RP0/CPU0:R1#show mpls for labels 25426 detail hardware ingress location 0/2/CPU0
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
25426 mLDP/IR: 0x00001 (0x00001)
Updated Dec 28 13:07:03.418
mLDP/IR LSM-ID: 0x00001, MDT: 0x2000660, Head LSM-ID: 0x00001
IPv4 Tableid: 0xe0000014, IPv6 Tableid: 0xe0800014
Flags:IP Lookup:set, Expnullv4:not-set, Expnullv6:not-set
Payload Type v4:not-set, Payload Type v6:not-set, l2vpn:not-set
Head:set, Tail:not-set, Bud:not-set, Peek:set, inclusive:not-set
Ingress Drop:not-set, Egress Drop:not-set
RPF-ID:0, Encap-ID:0
Disp-Tun:[ifh:0x0, label:-]
Platform Data [64]:
{ 0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 96 0 0 0 96
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 2 9 0 0 2 10
0 0 0 1 0 0 0 1
}
mpls paths: 2, local mpls paths: 0, protected mpls paths:
24440 mLDP/IR: 0x00001 (0x00001) \
10.79.196.10 N/A
Updated: Dec 28 13:07:03.255
My Nodeid:0x8420
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100010, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
24033 mLDP/IR: 0x00001 (0x00001) \
10.79.196.13 N/A
Updated: Dec 28 13:07:03.418
My Nodeid:0x8420
Interface Nodeids:
[ 0x8520 - - - - - - - - - ]
Interface Handles:
[ 0xa000400 - - - - - - - - - ]
Backup Interface Nodeids:
[ - - - - - - - - - - ]
Backup Interface Handles:
[ - - - - - - - - - - ]
via-label:100013, mpi-flags:0x0 tos_masks:[ primary:0x0 backup:0x0]
Packets Switched: 0
RP/0/RP0/CPU0:R1#show mrib encap-id
Encap ID Key : 00000101000000600600020100000000000002
Encap ID Length : 19
Encap ID Value : 262145
Platform Annotation:
Slotmask: Primary: 0x20, Backup: 0x20
MGID: Primary: 64059, Backup: 64060
Flags (Vrflite(v4/v6),Stale,v6): N/N, N, N
Oles:
[1] type: 0x5, len: 12
LSM-ID: 0x00001 MDT: 0x2000660 Turnaround: TRUE
Primary: 0/3/CPU0[1]
Backup:
TableId: 0xe0000014[1001]
Redist History:
client id 31 redist time: 00:01:22 redist flags 0x0
MP는 새로 신호 처리된 기본 트리로 전환되었으며 이전 트리를 삭제하기 전 60초 내에 있습니다.
RP/0/RSP1/CPU0:R2#show mpls mldp database details
LSM-ID: 0x00002 Type: P2MP Uptime: 03:53:56
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Active] [MBB] Uptime: 00:10:16
Local Label (D) : 24441
Is CSI accepting : N
10.79.196.14:0 [Inactive] [Delete 00:00:44] [MBB] Uptime: 02:53:37
Local Label (D) : 24440
Downstream client(s):
PIM MDT Uptime: 03:53:56
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
이전 트리가 삭제된 후 상태가 있습니다.
RP/0/RSP1/CPU0:R2#show mpls mldp database details
mLDP database
LSM-ID: 0x00002 Type: P2MP Uptime: 03:58:03
FEC Root : 10.79.196.14
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
Is CSI accepting : N
10.79.196.13:0 [Active] [MBB] Uptime: 00:14:23
Local Label (D) : 24441
Downstream client(s):
PIM MDT Uptime: 03:58:03
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000013 IPv6: 0xe0800013
RPF ID : 3
Peek : Yes
RD : 3209:92722001
PLR에는 하나의 다운스트림 mLDP 클라이언트만 있습니다.
RP/0/RP0/CPU0:R1#show mpls mldp database details
mLDP database
LSM-ID: 0x00001 Type: P2MP Uptime: 3d04h
FEC Root : 10.79.196.14 (we are the root)
FEC Length : 12 bytes
FEC Value internal : 02010004000000015C4FC40E
Opaque length : 4 bytes
Opaque value : 01 0004 00000001
Opaque decoded : [global-id 1]
Features : MBB RFWD Trace
Upstream neighbor(s) :
None
Downstream client(s):
LDP 10.79.196.13:0 Uptime: 00:11:13
Rec Next Hop : 10.79.196.13
Remote label (D) : 24033
LDP MSG ID : 98489
PIM MDT Uptime: 3d04h
Egress intf : Lmdtvrfone
Table ID : IPv4: 0xe0000014 IPv6: 0xe0800014
HLI : 0x00001
Ingress : Yes
Peek : Yes
PPMP : Yes
Local Label : 25426 (internal)
mLDP 추적은 이벤트를 더 자세히 보여줍니다.
PLR에서
인터페이스 BE10362가 다운됩니다.
Dec 28 13:07:03.220 MLDP GLO 0/RP0/CPU0 t10704 RIB : Read notification
Dec 28 13:07:03.225 MLDP GLO 0/RP0/CPU0 t10706 RIB : Notify client 'Peer' for prefix: 10.79.196.10/32
Dec 28 13:07:03.225 MLDP GLO 0/RP0/CPU0 t10706 GEN : Checkpoint save neighbor 10.79.196.10:0 canceled, no GR or NSR
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 delete adj 2000460/10.254.3.37
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 GEN : Checkpoint delete neighbor adj 2000460/10.254.3.37 objid 0 version 0 Failed
Dec 28 13:07:03.227 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 LDP Adjacency addr: 10.254.3.37, Interface: Bundle-Ether10362 Delete
Dec 28 13:07:03.325 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 Check branches for path change
링크가 손실되었지만 LDP 인접성은 손실되지 않으며 대상 세션으로 유지됩니다.
다음 항목은 P 라우터를 통한 새 분기(10.79.196.13)입니다.
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : P2MP Label mapping from 10.79.196.13:0 label 24033 root 10.79.196.14 Opaque Len 7
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add branch LDP 10.79.196.13:0 Label 24033
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Branch LDP 10.79.196.13:0 binding list Remote Add
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Changing branch LDP 10.79.196.13:0 from None/0.0.0.0 to None/10.79.196.13
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Notify client Add event: 6 root TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add update to PIM Root TRUE Upstream TRUE Ingress TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 add path label 24033 intf None nexthop 10.79.196.13 id 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 set HLI 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Notify client Add event: 6 root TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Add update to PIM Root TRUE Upstream TRUE Ingress TRUE
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 add path label 24033 intf None nexthop 10.79.196.13 id 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 set HLI 0x00001 Success
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10705 DB : 0x00001 Add event from mLDP to PIM, ready TRUE root TRUE csc_rd 0:0 csc_umh 0.0.0.0, msg_len 50
Dec 28 13:07:03.401 MLDP LSP 0/RP0/CPU0 t10705 DB : 0x00001 Add event from mLDP to PIM, ready TRUE root TRUE csc_rd 0:0 csc_umh 0.0.0.0, msg_len 50
Dec 28 13:07:05.296 MLDP GLO 0/RP0/CPU0 t10706 NBR : 10.79.196.10:0 to address: 10.254.3.37 mapping deleted
나머지는 청소입니다. R3는 Label Revocate(레이블 철회) 메시지와 Label Release(레이블 해제) 메시지를 R1에 전송합니다.
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 P2MP label withdraw from 10.79.196.10:0 label 24440 root 10.79.196.14 Opaque Len 7
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 P2MP label release msg to 10.79.196.10:0 Success
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 FWD : 0x00001 Label 25426 delete path label 24440 intf None nexthop 10.79.196.10 id 0x00001 Success
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Branch LDP 10.79.196.10:0 binding list Remote Delete
Dec 28 13:18:04.635 MLDP LSP 0/RP0/CPU0 t10706 DB : 0x00001 Deleting branch entry LDP 10.79.196.10:0
MP에서
MP에 대한 인터페이스가 다운됩니다. 링크를 통해 인접성이 손실되지만 LDP 인접성은 대상 세션으로 유지됩니다.
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 delete adj 20003a0/145.254.3.36
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint delete neighbor adj 20003a0/145.254.3.36 objid 0 version 0 Failed
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 LDP Adjacency addr: 145.254.3.36, Interface: Bundle-Ether10362 Delete
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Start path timer for root: 10.79.196.14
Dec 28 13:05:27.134 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint save neighbor 10.79.196.14:0 canceled, no GR or NSR
Dec 28 13:05:27.152 MLDP GLO 0/RSP1/CPU0 t31488 RIB : Read notification
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Root paths count 1
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 None 10.79.196.13
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 added (chkpt FALSE)
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 binding list Local Add
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 path changed from None:0.0.0.0 to None:10.79.196.13
Dec 28 13:05:27.152 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Request label type ACEL ident 10.79.196.13:0 LSD Success
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 RIB : Notify client 'Root' for prefix: 10.79.196.14/32
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Root 10.79.196.14 path 145.254.1.184 php nh 145.254.1.184 peer 72d83798:10.79.196.13:0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : mldp_root_get_path: tid e0100000 ifh 0 php_nh 0.0.0.0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Failed to get intf type for ifh 0x0
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 RIB : Notify client 'Peer' for prefix: 10.79.196.14/32
Dec 28 13:05:27.153 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checkpoint save neighbor 10.79.196.14:0 canceled, no GR or NSR
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Main Entry LSD label 24441 type ACEL ident 10.79.196.13:0 assigned
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 installed local label 24441
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Neighbor 10.79.196.13:0 not MBB capable or worse metric, ignore MBB code 0
MBB의 기능: 600초는 구성된 전환 지연입니다.
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Start MBB Notification timer 100 msec (MBB ack)
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label mappping msg to 10.79.196.13:0 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
P 라우터를 통한 새 경로가 생성됩니다.
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 create, Flags: 5 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 add path lspvif Lmdtvrfone rpf-id 3 tid v4 0xe0000013 v6 0xe0800013 Success
Dec 28 13:05:27.153 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 id_val 0 id_type 0
Dec 28 13:05:27.154 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24441 label up 1048577
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Root paths count 1
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 None 10.79.196.13
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 found, retain TRUE, to front TRUE
Dec 28 13:05:27.233 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL selection delayed for 600 seconds (MBB)
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 Check branches for path change
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 GEN : Checking paths for root: 10.79.196.14
Dec 28 13:05:27.234 MLDP GLO 0/RSP1/CPU0 t31491 GEN : mldp_root_get_path: tid e0100000 ifh 0 php_nh 0.0.0.0
Dec 28 13:05:27.350 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 MBB notification delay timer expired
Dec 28 13:05:29.275 MLDP GLO 0/RSP1/CPU0 t31491 NBR : 10.79.196.14:0 to address: 145.254.3.36 mapping deleted
600초 타이머가 만료됩니다.
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Peer change delay timer expired
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL evaluate
항목이 60초 후에 삭제됩니다.
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 start delete pending timer at 60 sec
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.13:0 activate
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24441 create, Flags: 1 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 10.79.196.14:0 to 10.79.196.13:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 10.79.196.13:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 136 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 deactivate
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24440 create, Flags: 5 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 10.79.196.13:0 to 0.0.0.0:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 0.0.0.0:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 137 Success
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 update active ident from 0.0.0.0:0 to 10.79.196.13:0
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save Main Entry active 10.79.196.13:0 rec_nh 0.0.0.0 rec_rd 0:0 cont...
Dec 28 13:15:28.352 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Checkpoint save lbl no_label length: 88 obj 80002f60 version 138 Success
Dec 28 13:15:28.352 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24441 label up 1048577
Dec 28 13:15:28.352 MLDP GLO 0/RSP1/CPU0 t31491 GEN : ACEL for local label 24440 label up 1048577
삭제 지연 타이머가 만료됩니다. R3는 Label Withdraw(레이블 표시) 메시지와 레이블 해제 메시지를 R1에 보냅니다.
Dec 28 13:15:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 MBB notification delay timer expired
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 delete delay timer expired, delete pending TRUE
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 FWD : 0x00002 Label 24440 delete, Success
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 binding list Local Delete
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 Released label 24440 to LSD
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label withdraw msg to 10.79.196.14:0 Success
Dec 28 13:16:28.552 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 ACEL 10.79.196.14:0 remove
Dec 28 13:16:28.557 MLDP LSP 0/RSP1/CPU0 t31491 DB : 0x00002 P2MP label release from 10.79.196.14:0 label 24440 root 10.79.196.14 Opaque Len 7
LSP가 500개가 넘는 스케일링된 설정에서 FRR이 발생하면 mLDP 레이블 업데이트의 경우 유니캐스트 IGP(Internet Gateway Protocol)가 멀티캐스트 업데이트(LMRIB-FIB)보다 빠르게 통합될 수 있습니다. 따라서 FIB는 FRR 이벤트 후 2초 이내에 FRR 비트를 표시할 수 있습니다. 여기서 mLDP 레이블 하드웨어 프로그래밍이 이그레스 라인 카드에서 완료되지 않아 백업 경로를 호스팅합니다. FRR 대기 시간은 기본적으로 2초입니다.
확장 설정에서 이 FRR 대기 시간을 늘리는 것이 좋습니다.
frr-holdtime 명령은 FRR 대기 시간을 LSP의 배율에 비례하도록 구성합니다. 권장되는 frr-holdtime 값은 동일하거나 MBB 지연 타이머보다 작습니다. 이렇게 하면 기본 경로 다운 이벤트 이후 이그레스 라인 카드가 FRR 상태가 됩니다. 구성되지 않은 경우 기본 frr-holdtimer(초)는 2로 설정됩니다.
이 명령은 5.3.2에 도입되었습니다.
RP/0/RSP1/CPU0:ASR-9906#conf t
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform ?
lsm Label-switched-multicast parameters
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform lsm ?
frr-holdtime Time to keep FRR slots programmed post FRR
RP/0/RSP1/CPU0:ASR-9906(config)#cef platform lsm frr-holdtime ?
<3-180> Time in seconds
MBB는 라우팅 컨버전스의 경우, 그리고 링크가 다운된 경우, 백업 경로에서 네이티브 경로로 멀티캐스트 트래픽을 다시 전환할 때 트래픽을 보호하는 경우 재라우팅에 대한 멀티캐스트 트래픽 손실을 방지하기 위해 작동할 수 있습니다.
MBB를 사용하도록 구성해야 합니다. 모든 라우터에 구성해야 합니다.
해당 mLDP 트리에서 트래픽을 전달하기 전에 포워딩 플레인에서 새로 신호를 받은 mLDP 트리를 설치할 수 있도록 몇 초로 구성된 MBB 포워딩 지연이 있어야 합니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
04-May-2021 |
최초 릴리스 |