CAR(Committed Access Rate)은 분류 및 폴리싱 서비스를 제공하는 데 사용할 수 있는 속도 제한 기능입니다. CAR을 사용하여 액세스 목록을 사용하는 IP 주소 및 포트 값과 같은 특정 기준에 따라 패킷을 분류할 수 있습니다. 속도 제한 값을 준수하고 값을 초과하는 패킷에 대한 작업을 정의할 수 있습니다. CAR을 구성하는 방법에 대한 자세한 내용은 Committed Access Rate 구성을 참조하십시오.
이 문서에서는 conformed bps 값이 구성된 CIR(Committed Information Rate)보다 작을 때 show interface x/x rate-limit 명령 출력에서 0이 아닌 초과 bps 값을 표시하는 이유를 설명합니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참고하십시오.
이 명령의 출력에서 0이 아닌 초과 비율을 볼 수 있는 세 가지 조건이 있습니다.
버스트 값이 너무 낮게 설정되어 있어 충분한 처리 속도가 허용되지 않습니다. 예를 들어 Cisco 버그 ID CSCdw42923(등록된 고객만 해당)을 참조하십시오.
Cisco IOS® 소프트웨어에서 이중 계정 관리 문제 해결
Cisco IOS의 소프트웨어 버그
가상 액세스 인터페이스의 출력 예를 확인합니다. 이 컨피그레이션에서는 동적으로 생성된 가상 액세스 인터페이스에 속도 제한을 할당하기 위해 RADIUS를 사용합니다.
AV Pair from Radius Cisco-AVPair = "lcp:interface-config#1=rate-limit input 256000 7500 7500 conform-action continue exceed-action drop", Cisco-AVPair = "lcp:interface-config#2=rate-limit output 512000 7500 7500 conform-action continue exceed-action drop",
Cisco 레거시 폴리서 CAR의 성능을 모니터링하려면 show interface x rate-limit 명령을 사용합니다. 이 예에서 이 명령의 출력은 0이 아닌 초과 bps가 있는 이유에 대한 힌트를 제공합니다. 현재 버스트 값은 7392바이트이며, 제한 값으로 표시되는 커밋된 버스트(Bc) 값은 7500바이트로 설정됩니다.
router#show interfaces virtual-access 26 rate-limit Virtual-Access26 Cable Customers Input matches: all traffic params: 256000 bps, 7500 limit, 7500 extended limit conformed 2248 packets, 257557 bytes; action: continue exceeded 35 packets, 22392 bytes; action: drop last packet: 156ms ago, current burst: 0 bytes last cleared 00:02:49 ago, conformed 12000 bps, exceeded 1000 bps Output matches: all traffic params: 512000 bps, 7500 limit, 7500 extended limit conformed 3338 packets, 4115194 bytes; action: continue exceeded 565 packets, 797648 bytes; action: drop last packet: 188ms ago, current burst: 7392 bytes last cleared 00:02:49 ago, conformed 194000 bps, exceeded 37000 bps
Cisco의 클래스 기반 폴리싱인 CAR 또는 최신 폴리서를 구성하는 경우, 예상 처리량을 보장하고 폴리서가 단기 정체를 처벌하기 위해서만 패킷을 삭제하도록 하려면 충분히 높은 버스트 값을 구성해야 합니다.
버스트 값을 선택하는 경우 대기열 크기의 일시적인 증가를 수용하는 것이 중요합니다. 패킷이 동시에 도착하고 출발한다고 가정할 수는 없습니다. 또한 대기열이 비어 있는 패킷에서 하나의 패킷으로 변경되고 일관된 수신/발신 도착 시간을 기준으로 대기열이 하나의 패킷에 남아 있다고 가정할 수 없습니다. 일반적인 트래픽이 상당히 과부하 상태인 경우, 링크 사용률을 만족스럽게 높은 수준으로 유지하려면 버스트 값이 그에 맞게 커야 합니다. 버스트 크기가 너무 낮거나 최소 임계값이 너무 낮으면 링크 사용률이 떨어질 수 있습니다.
버스트는 이더넷 네트워크에서 시작되는 1500바이트 프레임과 같이 백투백의 MTU 크기 프레임 시리즈로만 정의할 수 있습니다. 이러한 프레임의 버스트가 출력 인터페이스에 도착하면 출력 버퍼를 압도하고 토큰 버킷의 구성된 깊이를 즉시 초과할 수 있습니다. 토큰 계량 시스템을 사용하는 경우, 폴리서는 도착하는 패킷이 구성된 폴리싱 값을 준수, 초과 또는 위반하는지 여부에 대한 이진 결정을 내립니다. FTP 스트림과 같은 버스트 트래픽의 경우 이러한 패킷의 순간 도착률이 구성된 버스트 값을 초과하여 CAR 삭제를 초래할 수 있습니다.
또한 혼잡 시간의 전체 처리량은 폴리서가 평가하는 트래픽 유형에 따라 달라집니다. TCP 트래픽은 혼잡에 응답하지만 다른 흐름은 응답하지 않습니다. 무응답 흐름의 예로는 UDP 기반 및 ICMP 기반 패킷이 있습니다.
TCP는 재전송과 함께 확인 응답을 기반으로 합니다. TCP는 긍정 확인 메커니즘의 일부로 슬라이딩 윈도우를 사용합니다. 슬라이딩 윈도우 프로토콜은 발신자가 승인을 대기하기 전에 여러 패킷을 전송할 수 있기 때문에 네트워크 대역폭을 더 잘 사용합니다. 예를 들어, 윈도우 크기가 8인 슬라이딩 윈도우 프로토콜에서 발신자는 확인 응답을 수신하기 전에 8개의 패킷을 전송할 수 있습니다. 윈도우 크기를 늘리면 네트워크 유휴 시간이 크게 줄어듭니다. 잘 조정된 슬라이딩 윈도우 프로토콜은 네트워크를 패킷으로 완전히 포화 상태로 유지하고 높은 처리량을 유지합니다.
엔드포인트는 네트워크의 특정 혼잡 상태를 알지 못하므로, TCP as a protocol은 혼잡이 발생할 때 전송 속도를 줄여 네트워크의 혼잡에 대처하도록 설계되었습니다. 특히 두 가지 기술을 사용합니다.
기술 | 설명 |
---|---|
연쇄적인 감소 혼잡 회피 | 세그먼트가 손실되면(TCP에 대한 패킷의 해당) 혼잡 창을 절반으로 줄입니다. 혼잡 윈도우는 확인 응답을 대기하기 전에 발신자가 네트워크로 전송할 수 있는 패킷 수를 제한하는 데 사용되는 두 번째 값 또는 윈도우입니다. |
느린 시작 복구 | 새 연결에서 트래픽을 시작하거나 혼잡 기간이 지난 후 트래픽을 늘릴 경우, 혼잡 창을 단일 세그먼트 크기로 시작하고 확인이 도착할 때마다 혼잡 창을 1개 세그먼트 늘립니다. TCP는 혼잡 창을 1로 초기화하고, 초기 세그먼트를 전송하고, 대기합니다. 확인 응답이 도착하면 혼잡 윈도우를 2로 늘리고 세그먼트 2개를 보낸 다음 기다립니다. 자세한 내용은 RFC 2001을 참조하십시오![]() |
전송 오류가 데이터를 방해하거나, 네트워크 하드웨어가 실패하거나, 네트워크가 너무 많이 로드되어 로드가 너무 많아지면 패킷이 손실되거나 파괴될 수 있습니다. TCP는 손실된 패킷 또는 과도한 지연으로 인해 시간 간격 내에 승인되지 못한 패킷이 네트워크의 혼잡을 나타낸다고 가정합니다.
폴리서의 토큰 버킷 미터링 시스템은 각 패킷 도착 시 호출됩니다. 특히, 일치율과 초과율은 다음과 같은 간단한 공식에 따라 계산됩니다.
(conformed bits since last clear counter)/(time in seconds elapsed since last clear counter)
계산기가 마지막으로 지워진 시간부터 일정 기간 동안의 비율을 계산하므로 현재 비율을 모니터링하려면 카운터를 지우는 것이 좋습니다. 카운터가 지워지지 않으면 이전 공식 비율은 사실상 show 명령 출력이 매우 긴 기간 동안 계산된 평균을 표시한다는 것을 의미하며, 이 값은 현재 비율을 결정할 때 의미가 없을 수 있습니다.
평균 처리량은 일정 기간 동안 구성된 CIR(committed information rate)과 일치해야 합니다. 버스트 크기를 사용하면 지정된 시간에 최대 버스트 기간이 허용됩니다. 트래픽이 없거나 CIR보다 적은 경우 토큰 버킷이 채워지지 않으면 여전히 매우 큰 버스트는 일반 버스트 및 확장 버스트에 따라 계산된 특정 크기로 제한됩니다.
삭제 비율은 이 메커니즘의 결과입니다
현재 시간을 확인합니다.
패킷이 마지막으로 도착한 이후 계속해서 누적된 토큰 수로 토큰 버킷을 업데이트합니다.
누적된 총 토큰 수는 maxtokens 값을 초과할 수 없습니다. 초과 토큰을 삭제합니다.
패킷 적합성을 확인합니다.
속도 제한은 Policing을 통해서도 달성할 수 있습니다. 클래스 기반 폴리싱을 사용하는 이더넷 인터페이스에서 속도 제한을 제공하기 위한 샘플 구성입니다.
class-map match-all rtp1 match ip rtp 2000 10 ! policy-map p3b class rtp1 police 200000 6250 6250 conform-action transmit exceed-action drop violate-action drop policy-map p2 class rtp1 police 250000 7750 7750 conform-action transmit exceed-action drop violate-action drop ! interface Ethernet3/0 service-policy output p3b service-policy input p2
show policy-map interface 명령의 이 샘플 출력에서는 제공된 속도 및 삭제 속도에 대해 적절하게 계산되고 동기화된 값 및 conformed 및 exceed bps 속도를 보여줍니다.
router#show policy-map interface ethernet 3/0 Ethernet3/0 Service-policy input: p2 Class-map: rtp1 (match-all) 88325 packets, 11040625 bytes 30 second offered rate 400000 bps, drop rate 150000 bps Match: ip rtp 2000 10 police: 250000 bps, 7750 limit, 7750 extended limit conformed 55204 packets, 6900500 bytes; action: transmit exceeded 33122 packets, 4140250 bytes; action: drop conformed 250000 bps, exceed 150000 bps violate 0 bps Service-policy : p3b Class-map: rtp1 (match-all) 88325 packets, 11040625 bytes 30 second offered rate 400000 bps, drop rate 50000 bps Match: ip rtp 2000 10 police: 200000 bps, 6250 limit, 6250 extended limit conformed 44163 packets, 5520375 bytes; action: transmit exceeded 11041 packets, 1380125 bytes; action: drop conformed 200000 bps, exceed 50000 bps violate 0 bps Class-map: class-default (match-any) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: any
이 표에는 show policy-map 또는 show interface rate-limit 명령에 표시되는 카운터의 해결된 문제가 나열되어 있습니다. 로그인한 등록 고객은 Bug Search Tool에서 버그 정보를 볼 수 있습니다.
증상 | 해결된 버그 ID 및 해결 방법 |
---|---|
예상 적하 카운터보다 낮음 |
|
예상 폐기 속도와 처리량을 두 배로 증가 |
|
삭제 없음 또는 삭제 비율 0 | 일반적으로 클래스 기반 QoS 기능을 적용할 때 문제 해결의 첫 번째 단계는 QoS 분류 메커니즘이 제대로 작동하는지 확인하는 것입니다. 즉, 클래스 맵의 match 문에 지정된 패킷이 올바른 클래스에 도달했는지 확인합니다. router#show policy-map interface ATM4/0.1 Service-policy input: drop-inbound-http-hacks (1061) Class-map: http-hacks (match-any) (1063/2) 149 packets, 18663 bytes 5 minute offered rate 2000 bps, drop rate 0 bps Match: protocol http url "*cmd.exe*" (1067) 145 packets, 18313 bytes 5 minute rate 2000 bps Match: protocol http url "*.ida*" (1071) 0 packets, 0 bytes 5 minute rate 0 bps Match: protocol http url "*root.exe*" (1075) 4 packets, 350 bytes 5 minute rate 0 bps Match: protocol http url "*readme.eml*" (1079) 0 packets, 0 bytes 5 minute rate 0 bps police: 1000000 bps, 31250 limit, 31250 extended limit conformed 0 packets, 0 bytes; action: drop exceeded 0 packets, 0 bytes; action: drop violated 0 packets, 0 bytes; action: drop conformed 0 bps, exceed 0 bps violate 0 bps
|
변칙 또는 일관성 없는 감소율 |
|
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
18-Nov-2002
|
최초 릴리스 |