이 문서에서는 IP-ATM CoS(Class of Service)를 지원하는 ATM 라우터 인터페이스에서 VC 대기열 처리 기능이 활성화된 경우 라우터가 대기열 제한 크기를 계산하는 방법을 설명합니다. Cisco의 모듈형 QoS(Quality of Service) CLI(MQC라고도 함)는 논리적 인터페이스에 적용하는 서비스 정책을 구성하는 데 사용됩니다. 이는 기본 인터페이스, 하위 인터페이스 또는 가상 회로입니다.이러한 서비스 정책은 폴리싱 및 셰이핑에서 마킹 및 큐잉에 이르기까지 몇 가지 QoS 작업을 구현합니다.
문서 표기 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
이 문서에 대한 특정 요건이 없습니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.라이브 네트워크에서 작업하는 경우, 사용하기 전에 모든 명령의 잠재적인 영향을 이해해야 합니다.
Cisco 라우터는 VC의 혼잡 수준에 따라 ATM VC에 대해 ATM VC에 대한 패킷 저장 기능을 활성화한 상태로 VC의 매장에 연결합니다.
대기열 | 위치 | 대기열 처리 방법 | 서비스 정책 적용 | 조정 명령 |
---|---|---|---|---|
하드웨어 대기열 또는 전송 링 | 포트 어댑터 또는 네트워크 모듈 | FIFO만 | 아니요 | tx-ring-limit |
레이어 3 대기열 | 레이어 3 프로세서 시스템 또는 인터페이스 버퍼 | 없음 | 예 | 대기열 처리 방법에 따라 다름:- vc-hold-limit - queue-limit |
혼잡은 전송 링 채우기(tx-ring-limit)로 정의됩니다. tx-ring-limit 값 이해 및 조정을 참조하십시오.
서비스 정책은 레이어 3 대기열에 저장된 패킷에만 적용되므로 라우터가 레이어 3 대기열을 사용하는 시기를 이해하는 것이 중요합니다.ATM 포트 어댑터 또는 네트워크 모듈과 레이어-3 프로세서 시스템은 다음과 같은 방법으로 협업합니다.
ATM 인터페이스는 ATM 셰이핑 속도에 따라 각 ATM 영구 가상 회로(PVC)에 셀을 전송합니다.
ATM 인터페이스는 VC별 하드웨어 대기열 또는 전송 링을 유지 관리하며, 이 경우 해당 VC에 전송을 대기 중인 패킷을 저장합니다.
하드웨어 대기열 또는 전송 링이 채워질 때 ATM 인터페이스는 레이어 3 프로세서 시스템에 명시적 역압을 제공합니다.VC당 백 압력은 단일 ATM PVC에 의한 불필요한 버퍼 과다 소비를 방지합니다.Per-VC 대기열이 특정 점유 수준에 도달했기 때문에 레이어 3 프로세서에 특정 VC에서 ATM 인터페이스의 전송 링으로 전송되는 패킷 대기열 해제를 중지하도록 알립니다.레이어 3 프로세서는 이제 레이어 3 대기열에 초과 패킷을 저장합니다.이 시간 동안 레이어-3 프로세서는 계속해서 다른 혼잡한 PVC로 향하는 패킷을 전달합니다.
ATM 인터페이스가 전송 링에서 패킷을 전송하고 링을 비울 때 패킷을 저장할 수 있는 충분한 버퍼가 다시 있습니다.이 기능은 역압을 해제하고 레이어 3 프로세서는 새 패킷을 ATM 인터페이스로 내보냅니다.
모든 PVC에 대해 ATM 인터페이스에서 버퍼링된 총 패킷 수가 사용 가능한 총 버퍼링 공간에 비해 특정 수준에 도달하면 ATM 인터페이스는 총 all-VC 레벨에서 역압을 제공합니다.이 역압은 ATM 인터페이스에 패킷 전송을 중지하도록 레이어-3 프로세서에 알립니다.
중요한 것은, 이 통신 시스템을 통해 ATM 인터페이스는 전송 링이 특정 VC에 대해 가득 찼음을 인식하고 레이어 3 프로세서 시스템에서 새 패킷의 수신을 제한합니다.따라서 VC가 혼잡할 때 전송 링의 첫 번째 수신, 첫 번째 발신(FIFO) 대기열에서 임의 최종 수신/첫 번째 삭제 결정을 레이어 3 프로세서에 의해 구현된 IP 레벨 서비스 정책에 따라 차별화된 결정으로 이동합니다.
레이어-3 대기열은 항상 대기열 제한을 가집니다.이 값은 큐 내의 패킷 수를 정의합니다.이 큐가 채워지면 라우터가 삭제 정책을 시작합니다.이 정책은 tail drop 또는 WRED(Weighted Random Early Detection)일 수 있습니다. 다시 말해, 대기열 제한은 삭제가 발생하기 전에 레이어 3 대기열에 저장할 수 있는 패킷 수를 정의합니다.
라우터는 기본 queue-limit 값을 자동으로 할당합니다.계산된 값은 대기열 처리 방법 및 플랫폼에 따라 달라집니다.중요한 것은 큐 제한이 대기열 처리 때문에 레이턴시가 발생하지 않도록 충분히 작아야 하지만, 삭제와 TCP 기반 플로우에 미치는 영향을 방지할 수 있을 만큼 충분히 커야 합니다.
Cisco 7500 Series 및 FlexWAN과 같은 분산 플랫폼에서 기본값은 시스템의 인터페이스 수에 따라 달라집니다.따라서 인터페이스가 두 개뿐인 시스템의 클래스는 수백 개의 하위 인터페이스와 VC가 있는 시스템보다 더 많은 버퍼를 수신할 수 있습니다.라우터는 각 클래스에 최소한의 값을 제공하여 인터페이스를 라인 속도로 제공할 수 있는 충분한 버퍼를 보장합니다.대기열 제한은 인터페이스에 대한 신용 한도를 나타냅니다.즉, 라우터는 인터페이스, PVC 및 클래스 간에 해당 인터페이스, PVC 및 클래스의 대역폭에 비례하여 버퍼를 할당합니다.기본적으로 queue-limit 값은 사용 가능한 버퍼를 초과 가입하지 않습니다.
다음 섹션에서는 대기열 제한에 대해 자세히 설명합니다.
분산되지 않은 플랫폼의 ATM VC에서 Cisco IOS® 소프트웨어 릴리스를 지원하는 경우 VC별 큐잉 및 레이어 3 큐는 기본적으로 활성화되어 있습니다.FIFO는 특정 대기열 처리 메커니즘이 구성되지 않은 경우 레이어 3 대기열에 적용되는 기본 대기열 처리 방법입니다.ATM 인터페이스의 기본 대기열 알고리즘도 FIFO이므로 레이어 3 대기열은 기본적으로 FIFO를 사용합니다.원래 이러한 대기열은 대기열 제한인 40만 지원했습니다. 아래 출력에서 확인할 수 있습니다.
router#show queueing interface atm 2/0.10 Interface ATM2/0.10 VC 10/32 Queueing strategy: FIFO Output queue 0/40, 244 drops per VC
Cisco IOS Software 릴리스 12.1(5)T부터 vc-hold-queue 명령을 사용하여 VC FIFO별 대기열의 크기를 5에서 1024 사이의 값으로 조정할 수 있습니다.
queue-limit 명령은 bandwidth 명령을 사용하여 클래스 기반, CBWFQ(Weighted Fair Queuing)로 구성된 클래스에만 적용됩니다.queue-limit 명령은 삭제가 발생하기 전에 레이어-3 대기열에서 저장할 패킷 수를 정의합니다.즉, 레이어 3 큐의 깊이입니다.
기본 queue-limit 값은 플랫폼에 따라 다릅니다.
Cisco 2600, 3600, 7200 Series 라우터 및 MC3810:기본값은 64입니다. 다음 샘플 출력은 2600 시리즈의 ATM 네트워크 모듈에서 캡처되었습니다.
router#show queueing interface atm 2/0.10 Interface ATM2/0.10 VC 10/32 Queueing strategy: weighted fair Total output drops per VC: 1539 Output queue: 0/512/64/1539 (size/max total/threshold/drops) Conversations 0/37/128 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated)
Cisco 7500 Series 및 FlexWAN:기본값은 각 클래스에 상위 버퍼의 비례 공유를 제공하여 계산됩니다.비율은 상위 그룹의 대역폭과 비교하여 클래스에 할당된 대역폭을 기반으로 합니다.특히, 대기열 제한은 평균 패킷 크기가 250바이트인 최대 지연 500ms에 의해 결정됩니다.예를 들어, 대역폭이 1MB인 클래스에는 대기열 제한이 100000/(250 x 8 x 2) = 250으로 지정됩니다. 중요한 것은 다음 사항을 기반으로 합니다.
사용 가능한 SRAM 또는 패킷 메모리의 양.
사용 가능한 SRAM을 인터페이스로 나누어야 하므로 인터페이스의 양입니다.
interface ATM9/1/0.100 point-to-point ip address 1.1.1.1 255.255.255.0 pvc 1/100 ubr 1000 service-policy out pmap flexwan#show policy-map interface atm 9/1/0.100 ATM9/1/0.100: VC 1/100 service-policy output: pmap queue stats for all priority classes: queue size 0, queue limit 75 packets output 0, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 class-map: e1 (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: ip dscp 10 Priority: kbps 300, burst bytes 7500, b/w exceed drops: 0 class-map: e2 (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: ip dscp 20 queue size 0, queue limit 75 packets output 0, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 bandwidth: kbps 300, weight 42 class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: any 0 packets, 0 bytes 5 minute rate 0 bps queue size 0, queue limit 33 packets output 2, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0
참고: VIP(Versatile Interface Processor) 및 FlexWAN에서는 기본 queue-limit 값을 선택하고 첫 번째 패킷 수 통계 집합과 함께 기본 프로세서(예: 7500 시리즈의 RSP[Route Switch Processor])로 전송합니다.따라서 ATM VC가 트래픽을 전달할 때까지 show policy-map 인터페이스의 출력에 잘못된 값이 나타날 수 있습니다.
LLQ(Low Latency Queuing)는 최소 및 최대 대역폭 보장을 구현하며, priority 명령으로 이를 구성합니다.LLQ는 혼잡 중에 우선 순위 트래픽을 할당된 대역폭으로 제한하는 디바이스를 구현하여 라우팅 패킷 및 기타 데이터와 같은 우선순위가 없는 트래픽이 부족하지 않도록 합니다.폴리싱을 사용하여 패킷을 삭제하고 대기열 제한이 부과되지 않으므로 priority 명령과 함께 queue-limit 명령을 사용할 수 없습니다.
WRED는 레이어 3 큐의 패킷에 대한 선택적 삭제 정책으로 구성할 수 있습니다.CBWFQ 또는 LLQ(Low-Latency Queuing)와 같은 WRED 및 고급 대기열 메커니즘을 구성할 수 있습니다.
VIP 및 FlexWAN에서 기본 WRED 매개변수는 기본 queue-limit에서 직접 파생됩니다.특히, max-threshold 값은 기본 queue-limit의 절반으로 설정되고 min-threshold 값은 비례적으로 축소됩니다.
또한 기본 WRED 임계값은 VC와 연결된 ATM 셰이핑 매개변수를 고려합니다.더 높은 속도로 나타날 수 있는 더 큰 버스트를 수용하려면 VC 셰이핑 비율이 높을수록 기본 최소 및 최대 임계값이 커집니다.예를 들어, 10kbps ATM을 사용하는 경우 특정 라우터의 VC에 적용되는 기본 WRED 매개변수는 다음과 같습니다.
nf-7505-1# show running-config interface ATM1/1/0.47 point-to-point atm pvc 47 0 47 aal5snap 10 10 1 random-detect wredgroup1 nf-7505-1# show queueing red VC 0/47 - random-detect group default: exponential weight 9 precedence min-threshold max-threshold mark-probability --------------------------------------------------------------- 0: 20 40 1/10 1: 22 40 1/10 2: 24 40 1/10 3: 26 40 1/10 4: 28 40 1/10 5: 30 40 1/10 6: 32 40 1/10 7: 34 40 1/10
이와 달리, 동일한 라우터에서 9Mbps의 SCR(Continued Cell Rate) 및 10Mbps의 PCR(Peak Cell Rate)로 구성된 VC에 적용하는 기본 WRED 매개변수는 다음과 같습니다.
nf-7505-1#show running-config interface ATM1/1/0.49 point-to-point atm pvc 49 0 49 aal5snap 10000 9000 100 random-detect wredgroup3 nf-7505-1#show queueing red VC 0/49 - random-detect group default: exponential weight 9 precedence min-threshold max-threshold mark-probablity --------------------------------------------------------------- 0: 72 144 1/10 1: 81 144 1/10 2: 90 144 1/10 3: 99 144 1/10 4: 108 144 1/10 5: 117 144 1/10 6: 126 144 1/10 7: 135 144 1/10
queue-limit은 레이어-3 큐가 지정된 시간에 저장할 수 있는 최대 패킷 수를 정의합니다.max-threshold는 최대 평균 대기열 깊이를 정의합니다.대기열 제한을 변경할 때 WRED 임계값도 조정하고 구성된 대기열 제한이 WRED 최대 임계값보다 큰지 확인합니다.
WRED로 구성된 VC에서도 평균 큐 크기가 큐 제한을 초과하면 VC에 도착하는 모든 패킷은 삭제됩니다.따라서 다음 컨피그레이션에서는 DSCP(Differentiated Services Code Point) 32의 queue-limit인 400과 최소 임계값인 460이 평균 큐 크기인 400패킷의 tail 드롭을 구현하고 WRED가 적용되지 않도록 효과적으로 방지합니다.
policy-map ppwe class voip priority 64 class bus bandwidth 168 random-detect dscp-based random-detect exponential-weighting-constant 10 random-detect dscp 8 11 66 1 random-detect dscp 32 460 550 1 queue-limit 400
참고: 기본 임계값을 조정할 때 IP to ATM Class of Service Phase 1 Design Guide의 Considerations on WRED Fine-Tuning을 참조하십시오.