BGP 경로 우선 순위 지정
BGP 경로 우선 순위 지정 이해
BGP는 오늘날 가장 널리 배포된 라우팅 프로토콜 중 하나이며 NLRI(Network Layer Reachability Information)뿐만 아니라 다양한 유형의 VPN 연결성 정보를 전달하지만, 이 프로토콜은 BGP 업데이트 메시지에서 정보가 어떻게 정렬되는지 지정하지 않는다는 점은 주목할 만합니다. 이 결정은 구현에 맡겨져 있습니다.
대규모 시스템에서 BGP는 시스템 간에 라우팅 정보를 교환하는 데 상당한 시간이 걸릴 수 있습니다. 이는 특히 BGP 시작, 경로 새로 고침 작업 및 Graceful Restart를 지원할 때 그렇습니다. 처리해야 하는 많은 양의 정보를 처리하기 위해 BGP 경로 처리는 대기열을 사용하여 수행됩니다. 아웃바운드 경로는 처리를 위해 출력 대기열에 배치됩니다. BGP 경로 우선 순위 지정은 사용자가 BGP 업데이트 메시지의 우선 순위를 결정할 수 있도록 하는 수단으로 Junos OS 릴리스 16.1에 도입되었습니다. BGP 경로 우선 순위 지정은 출력 대기열에서 엄격하게 작동하는 프로세스로, BGP 피어 라우터로 전송되는 정보의 순서를 지정하는 데 도움이 됩니다.
기본 구성에서, 즉 우선 순위를 우선하는 구성 또는 정책이 존재하지 않는 output-queue-priority 경우, 라우팅 프로토콜 프로세스(rpd)는 BGP 경로를 라우팅 정보 베이스(RIB)당 출력 대기열로 대기열에 넣습니다. 라우팅 테이블이라고도 하는 RIB는 inet.0과 같은 특정 주소 패밀리와 vrf.inet.0과 같은 라우팅 인스턴스 테이블 모두에 해당합니다. 출력 대기열을 처리하는 동안 BGP 업데이트 코드는 비어 있지 않은 출력 대기열이 있는 다음 RIB로 이동하기 전에 현재 RIB의 출력 대기열을 플러시합니다.
이론적으로 경로의 우선 순위를 자동으로 지정하려는 시도는 없습니다. 따라서 개별 경로의 우선 순위 지정은 전적으로 사용자에게 맡겨집니다.
피어 그룹에 대한 BGP 경로 우선 순위가 변경되면 BGP 피어 세션이 재설정됩니다.
BGP 경로 우선 순위 지정 사용 사례
표 1 은 경로 우선 순위 지정의 이점을 누릴 수 있는 경로 유형과 이러한 경로의 이점을 누릴 수 있는 이유에 대한 몇 가지 참고 사항을 보여줍니다. 이러한 유형의 경로의 예도 포함되어 있습니다. 주어진 대규모 환경 내에서 이러한 경로의 우선 순위를 지정하면 라우터가 중요한 경로 변경에 보다 신속하게 대응하는 데 도움이 될 수 있습니다.
경로 또는 업데이트 유형 |
노트 |
예문 |
|---|---|---|
BGP 다음 홉을 즉시 포워딩 다음 홉으로 해결하는 데 사용되는 접두사 |
이러한 접두사는 가능한 한 빨리 변경해야 합니다. |
|
터널 엔드포인트에 사용되는 경로 |
GRE 또는 MPLS와 같은 터널 엔드포인트는 종종 BGP 다음 홉으로 사용됩니다. |
BGP 레이블링된 유니캐스트 경로 |
프로토콜 기능의 작동에 중요한 경로 유형 |
일부 VPN 프로토콜의 경우, 프로토콜 내에서 시간에 민감한 변경을 트리거하기 위해 특정 경로 유형이 사용됩니다. 이러한 경로는 가능한 한 빨리 변경해야 합니다. |
|
서비스 프로바이더 인프라 경로 |
이러한 경로는 서비스 프로바이더의 비즈니스 수행 능력에 매우 중요합니다. 정확한 최신 경로가 없으면 서비스 프로바이더는 일부 서비스 오퍼링을 제공하지 못할 수 있습니다. |
|
네트워크 토폴로지 변경 |
간단한 경로 새로 고침보다 우선순위를 두어야 합니다. |
|
BGP 경로 우선 순위 지정의 속성
Junos OS의 BGP 경로 우선 순위 지정은 사용자 구성 토큰 메커니즘에 의해 서비스되는 17개의 우선 순위가 지정된(번호가 지정된) 출력 대기열 집합을 사용하여 구현됩니다. 이 섹션에서는 우선 순위가 지정된 출력 대기열, 토큰 시스템의 작동 및 대기열에 경로 할당에 대해 설명합니다.
우선 순위가 지정된 출력 대기열
표 2 는 우선 순위 지정 시스템 내에서 사용 가능한 출력 대기열과 해당 기능을 보여줍니다. 우선 순위 지정 시스템은 기존의 낮음, 중간, 높은 우선 순위 척도로 작동하며, 1은 가장 낮은 우선 순위이고 16은 가장 높은 우선 순위입니다.
| 대기열 |
기능 |
|---|---|
| 신속 처리 |
이것은 가장 높은 우선 순위의 출력 대기열입니다. 이 클래스의 경로는 출력 대기열을 플러시하는 동안 출력 대기열 처리의 일부가 보장됩니다. 이 대기열은 번호가 없으며 구성에서 이름으로 참조됩니다. |
| 1(가장 낮은 우선 순위) |
우선 순위가 가장 낮은 출력 대기열입니다. 이것은 기본 우선순위 대기열로, 자동 프로토콜 결정 또는 사용자 정책에서 명시적 대기열 할당이 없는 경로가 기본적으로 이 대기열에 배치된다는 것을 의미합니다. 경로 새로 고침 메시지는 기본적으로 이 대기열에 배치됩니다. |
| 2 - 16(낮은 - 높은 우선 순위) |
이러한 출력 대기열의 우선 순위는 가장 낮은 우선 순위(2)에서 가장 높은 우선 순위(16)까지 다양합니다. 사용자 정책 또는 BGP 피어 구성에 따라 경로가 할당됩니다. 우선 순위가 높은 출력 대기열의 경로는 우선 순위가 낮은 대기열의 경로를 선점할 수 있습니다. |
대기열에 경로 할당
BGP 내보내기 정책을 설정하고 할당하여 다양한 대기열에 경로를 할당할 수 있습니다. 즉, 경로 우선 순위는 각 BGP 피어 그룹 및 BGP 피어 그룹 내의 특정 이웃 구성에서 다를 수 있습니다. 정책 문의 작업 부분을 사용하여 대기열에 경로를 할당할 수도 있습니다. 정책 문의 작업에 의한 대기열에 대한 경로 할당은 BGP 구성에 의한 할당보다 우선합니다.
경로가 대기열에 할당되는 경우
우선 순위가 지정된 경로는 경로 처리 중에만 해당 대기열에 추가됩니다. 이는 일반적으로 다음과 같은 조건에서 발생합니다.
-
설정된 BGP neighbor에서 경로가 수신되는 경우.
-
재구성 또는 피어의 초기 설정 중과 같은 라우팅 테이블 워크 중.
라우팅 테이블 워크는 시스템의 내부 라우팅 테이블 순서에 따라 테이블에서 경로를 순차적으로 처리합니다. 예를 들어, inet.0, inet6.0등입니다. 이 내부 순서는 미리 결정되어 있으며 운영자가 수정할 수 없습니다.
우선 순위가 높은 경로가 순서의 나중에 처리되는 라우팅 테이블에 있는 경우, 이러한 경로는 프로세스 초반에 발견된 우선 순위가 낮은 경로 이후에 대기열에 추가될 수 있습니다.
작업 토큰 메커니즘
토큰은 BGP 업데이트 메시지를 만드는 작업에 해당합니다. 모든 대기열에는 버킷에 저장된 토큰이 할당됩니다. 주어진 버킷의 토큰 수는 사용자가 구성할 수 있습니다. 이러한 방식으로 사용자는 원하는 비율로 경로를 제공할 수 있는 정책을 만들 수 있습니다. 우선순위 스케줄러의 구성은 계층 수준에서 [edit protocols bgp] BGP 내에서 전역적으로 수행됩니다. 기본적으로 모든 우선순위 대기열에는 잘못 구성된 우선순위가 굶주리지 않도록 버킷에 토큰이 1개 이상 있습니다.
대기열 우선 순위 및 공정성 이해
BGP 경로 우선 순위 지정에 사용되는 체계는 공정성과 우선 순위의 두 가지 요소에 중점을 둡니다.
공정성은 주어진 대기열에 해야 할 작업이 있을 때 다른 대기열이 특정 시점에서 일부 작업을 완료하도록 보장됨을 의미합니다. 각 큐가 완료할 수 있는 작업량은 각 우선순위에 할당된 토큰 수에 따라 결정됩니다.
우선 순위는 경쟁 작업이 있고 공정성이 보장되었을 때 항상 더 중요한 작업을 선택하는 것을 의미합니다.
예를 들어, 낮음, 중간, 높음의 세 가지 우선 순위 클래스를 가정합니다. 이들은 각각 대기열 1, 2 및 3에 할당될 수 있습니다. 또는 대기열 3, 6 및 9에 할당할 수 있습니다. 공정성을 위해 우선 순위가 높은 것이 사용 가능한 작업의 50%, 중간이 35%, 낮음이 나머지 15%를 얻도록 결정된 경우 토큰은 50에서 높음, 35에서 중간, 15에서 낮음으로 할당할 수 있습니다. 또는 토큰을 5에서 높음, 4에서 중간, 2에서 낮음으로 할당할 수 있습니다. 17개의 대기열 중 하나에 1에서 100 사이의 값을 할당할 수 있습니다. 모든 큐의 총 토큰 수에 대한 단일 큐의 토큰 수의 비율은 각 큐에서 수행될 작업의 백분율을 제공합니다.
우선순위는 작업 스케줄러에 의해 토큰이 다른 큐에서 소비되는 동안 작업이 큐에 표시될 때 가장 중요합니다. 표 3 은 이에 대한 예의 시작점을 보여줍니다.
우선순위 대기열(대기열 번호) |
대기열에 할당된 토큰 수 |
대기열에 남은 토큰 수 |
대기열의 항목 수 |
|---|---|---|---|
높음 (9) |
50 |
50 |
0 |
중간 (6) |
35 |
15 |
5000 |
낮음 (3) |
15 |
15 |
10000 |
작업 스케줄러가 중간 큐(큐 번호 6)를 처리 중이고 20개의 토큰을 사용했다고 가정하는 경우, 중간 큐의 나머지 항목에 사용할 15개의 토큰과 낮은 우선순위 큐에 사용할 15개의 토큰이 남아 있습니다. 작업 스케줄러의 다음 실행 전에 5개의 항목이 신속 큐에 도착하면 신속 큐에 50개의 토큰이 남아 있으므로 해당 5개의 항목이 먼저 전송됩니다.
대기열 서비스 절차
대기열 서비스 절차는 각 그룹이 자체 토큰 버킷을 유지하면서 BGP 피어 그룹별로 작동합니다.
각 우선순위에 대한 토큰 버킷은 구성된 토큰 수 또는 기본값 1에서 가득 차게 시작됩니다.
BGP 업데이트를 시작하기 위해 대기열에서 경로 항목을 가져올 때마다 해당 대기열에서 토큰이 차감됩니다.
신속 대기열에 토큰이 있는 동안, 다른 모든 대기열 항목은 경로 패킹 규칙에 따라 신속 대기열에서 뽑힙니다.
항목은 우선 순위가 가장 높은 대기열에서 가져옵니다. 즉, 큐 서비스 메커니즘의 실행 사이에 항목이 더 높은 우선 순위 큐에 추가되고 해당 높은 우선 순위 큐에서 사용 가능한 토큰이 있는 경우 더 높은 우선 순위 큐의 새 항목이 먼저 전송되므로 낮은 우선 순위 큐의 항목이 선점됩니다. 새 항목이 도착할 때 우선순위가 높은 큐에 사용 가능한 작업 토큰이 없는 경우, 다음 토큰 새로 고침이 있을 때까지 새 항목이 전송되지 않습니다.
토큰은 모든 우선순위 대기열이 서비스된 후(대기열에 남은 항목이 없음) 또는 모든 토큰이 소진될 때 새로 고쳐집니다.
예: BGP 출력 우선 순위 스케줄러 및 글로벌 주소 패밀리 우선 순위 구성
이 예는 시스템 전체의 BGP 경로 우선순위 스케줄러를 구성하고 테스트하는 방법을 보여줍니다.
요구 사항
이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.
Junos OS 릴리스 16.1 이상을 실행하는 MX 시리즈 라우터(R1)
BGP 경로 우선 순위 지정 스케줄러를 구성하기 전에 BGP 프로토콜이 라우터에서 실행되고 있는지 확인하십시오.
개요
BGP 경로 우선 순위 스케줄러는 경로 우선 순위 시스템의 17개 출력 대기열 내에서 수행되는 작업량을 제어하는 데 사용됩니다. 시스템은 작업 토큰이 할당되는 라우팅 인스턴스당 우선순위가 지정된 출력 큐 집합을 사용합니다. 우선 순위가 지정된 17개의 출력 대기열(1-16 및 신속함) 모두에는 기본적으로 1개의 토큰이 할당됩니다. 1에서 100 사이의 토큰을 17개의 대기열 각각에 할당할 수 있습니다. 대기열에 토큰을 할당하면 대기열 내의 경로에서 수행되는 작업량의 균형을 맞출 수 있습니다. 또한 우선 순위가 높음, 중간, 낮음 대기열에 대한 기본 설정은 각 키워드를 특정 번호가 매겨진 출력 대기열에 할당하여 구성할 수 있습니다. 이 예에서는 17개의 우선 순위 대기열 각각을 고유한 수의 작업 토큰으로 구성하고, inet 유니캐스트 경로에 대한 전역 출력 우선 순위를 구성하고, 전역 우선 순위 설정을 재정의하도록 일부 BGP 그룹을 설정하여 상속을 시연합니다.
구성
17개의 출력 대기열 각각에 할당
update-tokens합니다.기본
high,medium, 및low우선순위 대기열로 사용될 번호가 지정된 대기열을 지정합니다.경로에 대한
inet unicast전역 출력 우선 순위를 구성합니다.그룹 재정의 기능을 표시할 test1이라는 BGP 그룹을 구성합니다.
전역 상속을 표시할 test2라는 BGP 그룹을 구성합니다.
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 [edit] 명령을 복사하여 CLI에 붙여 넣습니다.
set protocols bgp output-queue-priority expedited update-tokens 100 set protocols bgp output-queue-priority priority 1 update-tokens 1 set protocols bgp output-queue-priority priority 2 update-tokens 10 set protocols bgp output-queue-priority priority 3 update-tokens 15 set protocols bgp output-queue-priority priority 4 update-tokens 20 set protocols bgp output-queue-priority priority 5 update-tokens 25 set protocols bgp output-queue-priority priority 6 update-tokens 30 set protocols bgp output-queue-priority priority 7 update-tokens 35 set protocols bgp output-queue-priority priority 8 update-tokens 40 set protocols bgp output-queue-priority priority 9 update-tokens 45 set protocols bgp output-queue-priority priority 10 update-tokens 50 set protocols bgp output-queue-priority priority 11 update-tokens 55 set protocols bgp output-queue-priority priority 12 update-tokens 60 set protocols bgp output-queue-priority priority 13 update-tokens 65 set protocols bgp output-queue-priority priority 14 update-tokens 70 set protocols bgp output-queue-priority priority 15 update-tokens 75 set protocols bgp output-queue-priority priority 16 update-tokens 80 set protocols bgp output-queue-priority defaults low priority 1 set protocols bgp output-queue-priority defaults medium priority 10 set protocols bgp output-queue-priority defaults high expedited set protocols bgp group reflector local-address 198.51.100.140 set protocols bgp family inet unicast output-queue-priority priority 1 set protocols bgp family inet unicast route-refresh-priority priority 2 set protocols bgp family inet unicast withdraw-priority priority 3 set protocols bgp group test1 family inet unicast output-queue-priority priority 4 set protocols bgp group test1 family inet unicast route-refresh-priority priority 6 set protocols bgp group test1 peer-as 64511 set protocols bgp group test1 local-as 64511 set protocols bgp group test1 neighbor 224.223.1.1 set protocols bgp group test1 neighbor 224.223.2.2 family inet unicast output-queue-priority priority 7 set protocols bgp group test1 neighbor 224.223.2.2 family inet unicast route-refresh-priority priority 8 set protocols bgp group test1 neighbor 224.223.2.2 family inet unicast withdraw-priority expedited set protocols bgp group test2 peer-as 64513 set protocols bgp group test2 local-as 64511 set protocols bgp group test2 neighbor 224.223.3.3
개별 출력 우선순위 대기열 구성
단계별 절차
다음 예에서는 구성 계층에서 다양한 수준을 탐색해야 합니다. CLI 탐색에 대한 정보는 Junos OS CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
우선 순위가 지정된 17개의 출력 대기열 각각에 업데이트 토큰을 할당합니다
[edit protocols bgp output-queue-priority] user@R1# set expedited update-tokens 100 user@R1# set priority 1 update-tokens 1 user@R1# set priority 2 update-tokens 10 user@R1# set priority 3 update-tokens 15 user@R1# set priority 4 update-tokens 20 user@R1# set priority 5 update-tokens 25 user@R1# set priority 6 update-tokens 30 user@R1# set priority 7 update-tokens 35 user@R1# set priority 8 update-tokens 40 user@R1# set priority 9 update-tokens 45 user@R1# set priority 10 update-tokens 50 user@R1# set priority 11 update-tokens 55 user@R1# set priority 12 update-tokens 60 user@R1# set priority 13 update-tokens 65 user@R1# set priority 14 update-tokens 70 user@R1# set priority 15 update-tokens 75 user@R1# set priority 16 update-tokens 80
우선 순위가 높음, 중간, 낮음 경로 업데이트에 사용할 기본 대기열 구성
단계별 절차
-
[edit protocols bgp output-queue-priority] user@R1# set defaults low priority 1 user@R1# set defaults medium priority 10 user@R1# set defaults high expedited
결과
구성을 확인하려면 운영 모드에서 명령을 실행합니다.show bgp output-scheduler
경로 패밀리에 대한 글로벌 출력 우선 순위 구성
절차
단계별 절차
경로에 대해
inet unicast전역output-queue-priority을 구성합니다.[edit bgp family inet unicast] user@R1# set output-queue-priority priority 1 user@R1# set route-refresh-priority priority 2 user@R1# set withdraw-priority priority 3
test1이라는 BGP 그룹 구성
절차
단계별 절차
글로벌 출력 우선 순위를 재정의하고 그룹을 재정의하는 이웃 하나와 그렇지 않은 이웃 하나를 포함하도록 그룹을
test1구성합니다.[edit protocols bgp group test1] user@R1# set family inet unicast output-queue-priority priority 4 user@R1# set family inet unicast route-refresh-priority priority 6 user@R1# set peer-as 64511 user@R1# set local-as 64511 user@R1# set neighbor 224.223.1.1 user@R1# set neighbor 224.223.2.2 family inet unicast output-queue-priority priority 7 user@R1# set neighbor 224.223.2.2 family inet unicast route-refresh-priority priority 8 user@R1# set neighbor 224.223.2.2 family inet unicast withdraw-priority expedited
test2라는 BGP 그룹을 구성합니다
단계별 절차
글로벌 기본값을 수락하도록 BGP 그룹을
test2구성합니다.[edit protocols bgp group test2] user@R1# set peer-as 64513 user@R1# set local-as 64511 user@R1# set neighbor 224.223.3.3
검증
BGP 출력 스케줄러 구성 확인
목적
BGP 출력 스케줄러의 구성을 확인하려면 운영 모드에서 명령을 실행합니다 show bgp output-scheduler .
작업
user@R1> show bgp output-scheduler user@R1> show bgp output-scheduler Instance: master Class Tokens ------------ ------ Priority 1 1 Priority 2 10 Priority 3 15 Priority 4 20 Priority 5 25 Priority 6 30 Priority 7 35 Priority 8 40 Priority 9 45 Priority 10 50 Priority 11 55 Priority 12 60 Priority 13 65 Priority 14 70 Priority 15 75 Priority 16 80 Expedited 100 Priority Class -------- ------------ low Priority 1 medium Priority 10 high Expedited
의미
출력은 출력 스케줄러 구성이 각 출력 대기열에 적절한 수의 토큰을 성공적으로 적용했으며 우선 순위 높음, 중간, 낮음 키워드가 적절한 출력 대기열에 할당되었음을 보여줍니다.
그룹 구성, 그룹 재정의 및 이웃 재정의 확인
목적
구성된 그룹이 그룹 재정의, 이웃 재정의 및 상속을 보여주는지 확인하려면 운영 모드에서 명령을 실행합니다 show bgp group group-name .
작업
user@R1> show bgp group test1
Group Type: Internal AS: 64511 Local AS: 64511
Name: test1 Index: 2 Flags: <>
Options: <LocalAS>
Holdtime: 0
NLRI inet-unicast:
OutQ: priority 7 RRQ: priority 8 WDQ: expedited
Local AS: 64511 Local System AS: 64511
Total peers: 1 Established: 0
224.223.2.2
Group Type: Internal AS: 64511 Local AS: 64511
Name: test1 Index: 1 Flags: <Export Eval>
Options: <LocalAS>
Holdtime: 0
NLRI inet-unicast:
OutQ: priority 4 RRQ: priority 6 WDQ: priority 3
Local AS: 64511 Local System AS: 64511
Total peers: 1 Established: 0
224.223.1.1
의미
출력은 피어 224.223.2.2에 대한 출력 대기열 우선 순위가 7이고, 경로 새로 고침 우선 순위가 8이며, 철회 우선 순위가 신속해진다는 것을 보여줍니다. neighbor 224.223.1.1의 출력 대기열 우선 순위는 4이고, 경로 새로 고침 우선 순위는 6이며, 철회 우선 순위는 패밀리 inet unicast의 기본 설정 또는 3입니다.
전역 우선 순위 설정에서 상속 확인
목적
글로벌 BGP 경로 우선 순위 설정 우선 순위 설정을 재정의하도록 구성되지 않은 그룹을 확인하려면 운영 수준에서 명령을 실행 show bgp group group-name 합니다.
작업
user@R1> show bgp group test2
Group Type: External Local AS: 64511
Name: test2 Index: 3 Flags: <Export Eval>
Options: <LocalAS>
Holdtime: 0
NLRI inet-unicast:
OutQ: priority 1 RRQ: priority 2 WDQ: priority 3
Local AS: 64511 Local System AS: 64511
Total peers: 1 Established: 0
224.223.3.3
의미
출력은 그룹 내 test2 경로에 대한 inet unicast 기본 경로 우선 순위가 글로벌 구성과 일치함을 보여줍니다.
예: BGP 경로 우선 순위 지정을 사용하여 라우팅 테이블 컨버전스 제어
다음 예에서는 경로가 경로 전에 inet unicast 수렴되도록 BGP inet labeled-unicast 경로 우선 순위를 구성합니다.
요구 사항
이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.
Junos OS 릴리스 16.1 이상을 실행하는 MX 시리즈 라우터(R1)는 이 예의 초점이 될 것입니다.
R1과 내부 BGP 피어로 구성된 두 번째 라우터(R2).
R1의 라우팅 테이블을 채우는 데 사용될 BGP 경로 리플렉터(RR). 이 예에서는 경로 리플렉터를 구성하지 않습니다.
개요
BGP 경로 우선 순위 지정 기능은 라우터에서 아웃바운드 BGP 업데이트 메시지의 우선 순위를 지정할 수 있도록 설계되었습니다. BGP 경로 우선 순위 지정을 사용하면 GRE 또는 MPLS 터널 엔드포인트 변경과 같은 더 중요한 BGP 경로 업데이트가 경로 새로 고침 업데이트와 같이 덜 중요한 BGP 경로 업데이트보다 먼저 전송되도록 할 수 있습니다.
이 예에서는 R2에 대한 경로 업데이트를 경로 업데이트보다 inet unicast 더 높은 우선 순위로 처리 inet labeled-unicast 하도록 R1을 구성합니다. 이를 위해 피어 라우터인 R1의 경로를 모두 inet unicast inet labeled-unicast 수락하도록 R2 라우터를 구성합니다. 그런 다음 경로 리플렉터에서 R1의 라우팅 테이블을 inet.0 채우고 import를 사용하여 rib-group 해당 테이블의 일부를 테이블 inet.3 로 labeled-unicast 가져옵니다. 경로가 R1에서 대기열에 있으므로 RIB의 경로가 RIB의 inet.3 inet.0 나머지 경로보다 플러시되는지 여부를 관찰하여 작업을 검증할 수 있습니다.
BGP 경로 우선 순위 구성
R2를 R1의 BGP 피어로 구성합니다.
R1에서:
라우터 R2를 라우터 R1의 피어로 구성합니다.
경로 리플렉터에서 인터넷 경로를 가져오는 데 사용할 리플렉터라는 BGP 그룹을 생성합니다.
레이블이 지정된 유니캐스트 트래픽을 더 높은 우선 순위의 출력 대기열에 할당하는 데 사용할 internal이라는 BGP 그룹을 생성합니다.
리플렉터에서 수신한 경로를 가져오는 RIB 그룹을 생성합니다.
RIB의
inet.0어느 부분을 RIB 그룹으로 가져올 것인지를 결정하는 정책을 생성합니다.
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 [edit] 명령을 복사하여 CLI에 붙여 넣습니다.
라우터 R2
set protocols bgp group internal type internal set protocols bgp group internal family inet unicast set protocols bgp group internal family inet labeled-unicast rib inet.3 set protocols bgp group internal peer-as 64511 set protocols bgp group internal local-as 64511 set protocols bgp group internal neighbor 192.0.2.1
라우터 R1
set protocols bgp group internal type internal set protocols bgp group internal hold-time 900 set protocols bgp group internal family inet unicast withdraw-priority expedited set protocols bgp group internal family inet labeled-unicast output-queue-priority priority 2 set protocols bgp group internal family inet labeled-unicast rib inet.3 set protocols bgp group internal family inet-vpn unicast set protocols bgp group internal local-as 64511 set protocols bgp group internal neighbor 192.0.2.2 local-address 192.0.2.1 set protocols bgp group reflector local-address 203.0.113.225 set protocols bgp group reflector family inet unicast rib-group into3 set protocols bgp group reflector peer-as 64500 set protocols bgp group reflector local-as 64496 set protocols bgp group reflector neighbor 192.51.100.71 multihop set policy-options policy-statement match-all then accept set routing-options rib-groups into3 import-rib inet.0 set routing-options rib-groups into3 import-rib inet.3 set routing-options rib-groups into3 import-policy match-long set policy-options policy-statement match-long term a from route-filter 192.0.0.0/8 prefix-length-range /20-/24 set policy-options policy-statement match-long term a then accept set policy-options policy-statement match-long then reject set policy-options policy-statement match-all then accept
절차
단계별 절차
다음 예에서는 구성 계층에서 다양한 수준을 탐색해야 합니다. CLI 탐색에 대한 정보는 Junos OS CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
R2 구성:
internal이라는 BGP 그룹을 구성합니다.
[edit protocols bgp group internal] user@R2# set type internal user@R2# set family inet unicast user@R2# set family inet labeled-unicast rib inet.3 user@R2# set peer-as 64511 user@R2# set local-as 64511 user@R2# set neighbor 192.0.2.1
단계별 절차
R1 구성:
RR에서 경로를 수신하는 reflector라는 BGP 그룹을 구성합니다.
[edit protocols bgp group reflector] user@R1# set local-address 203.0.113.225 user@R1# set family inet unicast rib-group into3 user@R1# set peer-as 64500 user@R1# set local-as 64496 user@R1# set neighbor 192.51.100.71 multihop
internal이라는 BGP 그룹을 구성합니다
[edit protocols bgp group internal] user@R1# set type internal user@R1# set hold-time 900 user@R1# set family inet unicast withdraw-priority expedited user@R1# set family inet labeled-unicast output-queue-priority priority 2 user@R1# set family inet labeled-unicast rib inet.3 user@R1# set family inet-vpn unicast user@R1# set local-as 64511 user@R1# set neighbor 192.0.2.2 local-address 192.0.2.1
into3라는 RIB 그룹을 구성합니다
[edit routing-options rib-groups into3] user@R1# set import-rib inet.0 user@R1# set import-rib inet.3 user@R1# set import-policy match-long
match-long이라는 라우팅 정책 구성
[edit policy-options policy-statement match-long] user@R1# set term a from route-filter 192.0.0.0/8 prefix-length-range /20-/24 user@R1# set term a then accept user@R1# set then reject
match-all이라는 라우팅 정책 구성
[edit policy-options policy-statement match-all] user@R1# set then accept
검증
이웃 업데이트의 우선 순위가 적절한지 확인
목적
경로 업데이트가 적절한 대기열에 배치되고 대기열이 업데이트되고 있는지 확인합니다.
작업
BGP neighbor 192.0.2.2에 대해 대기 중인 경로 업데이트를 보려면 운영 모드에서 명령을 실행 show bgp neighbor output-queue 192.0.2.2 합니다. 출력은 inet-유니캐스트 경로가 inet-labeled-유니캐스트 경로보다 먼저 보급된다는 것을 보여줍니다.
user@R1> show bgp neighbor output-queue 192.0.2.2 Peer: 192.0.2.2+179 AS 64511 Local: 192.0.2.1+63704 AS 64511 Output Queue[0]: 502701 (inet.0, inet-unicast) Priority 1 : 502701 Priority 2 : 0 Priority 3 : 0 Priority 4 : 0 Priority 5 : 0 Priority 6 : 0 Priority 7 : 0 Priority 8 : 0 Priority 9 : 0 Priority 10: 0 Priority 11: 0 Priority 12: 0 Priority 13: 0 Priority 14: 0 Priority 15: 0 Priority 16: 0 Expedited : 0
user@R1> show bgp neighbor output-queue 192.0.2.2 Peer: 192.0.2.2+179 AS 64511 Local: 192.0.2.1+63704 AS 64511 Output Queue[1]: 6687 (inet.3, inet-labeled-unicast) Priority 1 : 0 Priority 2 : 6687 Priority 3 : 0 Priority 4 : 0 Priority 5 : 0 Priority 6 : 0 Priority 7 : 0 Priority 8 : 0 Priority 9 : 0 Priority 10: 0 Priority 11: 0 Priority 12: 0 Priority 13: 0 Priority 14: 0 Priority 15: 0 Priority 16: 0 Expedited : 0 user@R1> show bgp neighbor output-queue 192.0.2.2 Peer: 192.0.2.2+179 AS 64511 Local: 192.0.2.1+63704 AS 64511 Output Queue[0]: 491187 (inet.0, inet-unicast) Priority 1 : 491187 Priority 2 : 0 Priority 3 : 0 Priority 4 : 0 Priority 5 : 0 Priority 6 : 0 Priority 7 : 0 Priority 8 : 0 Priority 9 : 0 Priority 10: 0 Priority 11: 0 Priority 12: 0 Priority 13: 0 Priority 14: 0 Priority 15: 0 Priority 16: 0 Expedited : 0 user@R1> show bgp neighbor output-queue 192.0.2.2 Peer: 192.0.2.2+179 AS 64511 Local: 192.0.2.1+63704 AS 64511 Output Queue[1]: 0 (inet.3, inet-labeled-unicast) Priority 1 : 0 Priority 2 : 0 Priority 3 : 0 Priority 4 : 0 Priority 5 : 0 Priority 6 : 0 Priority 7 : 0 Priority 8 : 0 Priority 9 : 0 Priority 10: 0 Priority 11: 0 Priority 12: 0 Priority 13: 0 Priority 14: 0 Priority 15: 0 Priority 16: 0 Expedited : 0
의미
의 show bgp neighbor output-queue 192.0.2.2 출력은 레이블이 지정된 유니캐스트 경로 업데이트가 우선순위 2 출력 대기열에 배치되고, 우선순위 1 출력 대기열에 있는 유니캐스트 경로 업데이트 전에 우선순위 2 출력 대기열이 비워진다는 것을 보여줍니다.