이 문서에서는 QoS(Quality of Service)가 포함된 프레임 릴레이 네트워크 샘플 컨피그레이션을 통한 VoIP(Voice over IP)를 보여줍니다. 이 문서에는 구성된 기능, 설계 지침, 기본 확인 및 문제 해결 전략에 대한 배경 기술 정보가 포함되어 있습니다.
이 문서의 컨피그레이션에는 프레임 릴레이 네트워크에 연결된 두 개의 음성 라우터가 있습니다.그러나 많은 토폴로지에서 음성 지원 라우터는 어디에나 존재할 수 있습니다.일반적으로 음성 라우터는 WAN에 연결된 다른 라우터에 LAN 연결을 사용합니다.음성 라우터가 프레임 릴레이 네트워크에 직접 연결되지 않은 경우 이 문서의 컨피그레이션에 표시된 것처럼, 모든 WAN 컨피그레이션 명령은 음성 라우터가 아니라 WAN에 연결된 라우터에서 구성해야 하기 때문에 중요합니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
Cisco 3640 Router with Cisco IOS® Software 릴리스 12.2.6a(Enterprise Plus)
Cisco 2621 Router with Cisco IOS Software 릴리스 12.2.6a(Enterprise Plus)
PVC(Frame Relay Permanent Virtual Circuit)의 LLQ(Low Latency Queuing) 이 기능은 Cisco IOS Software 릴리스 12.1.(2)T에 도입되었습니다.
Cisco IOS Software 릴리스 12.0(7)T에 도입된 Frame Relay IP RTP(Real-Time Transport Protocol) 우선 순위
Cisco IOS Software 릴리스 12.0(4)T에 도입된 FRF(Frame Relay Forum).12 Fragmentation
12.0.5T 이후 버전의 Cisco IOS Software 릴리스에는 압축된 RTP(cRTP)의 성능이 크게 향상되었습니다.
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
우수한 음성 품질을 위한 두 가지 기본 요구 사항이 있습니다.
최소 엔드 투 엔드 지연 및 지터 회피(지연 변화).
링크 대역폭 요구 사항을 최적화하고 올바르게 엔지니어링합니다.
앞서 언급한 요구 사항을 보장하려면 다음 지침을 따르십시오.
음성 트래픽에 엄격한 우선 순위를 제공하기 위한 두 가지 기본 방법이 있습니다.
IP RTP 우선순위(PQ/WFQ(Priority Queue/Weighted Fair Queuing)라고도 함)
LLQ(PQ/Class Based Weighted Fair Queuing(PQ/CBWFQ)이라고도 함)
Frame Relay IP RTP Priority는 UDP(User Datagram Protocol) 대상 포트 범위에 속하는 RTP 패킷 흐름 집합에 대해 프레임 릴레이 PVC에 엄격한 우선순위 큐를 만듭니다.사용되는 실제 포트는 최종 디바이스 또는 게이트웨이 간에 동적으로 협상되지만, 모든 Cisco VoIP 제품은 동일한 UDP 포트 범위(16384~32767)를 사용합니다. 라우터가 VoIP 트래픽을 인식하면 엄격한 PQ에 배치합니다.PQ가 비어 있으면 다른 대기열은 표준 WFQ를 기반으로 처리됩니다.IP RTP Priority(IP RTP 우선순위)는 인터페이스에 혼잡이 있을 때까지 활성화되지 않습니다.이 이미지는 IP RTP 우선 순위의 작업을 보여줍니다.
참고: IP RTP Priority는 기본 대기열(WFQ)에 사용 가능한 대역폭이 있는 경우 PQ를 버스트할 수 있습니다. 그러나 인터페이스에 정체 현상이 있을 경우 PQ 내용을 엄격하게 제한합니다.
LLQ는 CBWFQ에 엄격한 PQ를 제공하는 기능입니다.LLQ는 CBWFQ 내에서 클래스 레벨에서 하나의 엄격한 PQ를 활성화합니다.LLQ에서는 지연에 민감한 데이터(PQ에서)가 대기열에서 제거되고 먼저 전송됩니다.LLQ 구현이 가능한 VoIP에서는 엄격한 PQ에 음성 트래픽이 배치됩니다.
PQ는 공정한 대기열에 대역폭이 부족하지 않도록 폴리싱됩니다.PQ를 구성할 때 PQ에 사용할 수 있는 최대 대역폭 양을 Kbps 단위로 지정합니다.인터페이스가 혼잡할 경우 로드가 우선순위 문에서 구성된 Kbps 값에 도달할 때까지 PQ가 처리됩니다.그런 다음 Cisco의 기존 우선순위 그룹 기능인 더 낮은 PQ를 허무는 문제를 방지하기 위해 과도한 트래픽이 감소합니다.
참고: 프레임 릴레이용 LLQ를 사용하면 PVC별로 큐가 설정됩니다.각 PVC에는 PQ가 있으며 공정 대기열이 할당되어 있습니다.
이 방법은 IP RTP Priority보다 더 복잡하고 유연합니다.이 방법 중 하나를 선택하는 것은 실제 네트워크의 트래픽 패턴과 요구 사항을 기반으로 해야 합니다.
이 표에서는 LLQ와 IP RTP 우선순위 간의 주요 차이점을 요약하고 각 방법을 사용할 시기에 대한 지침을 제공합니다.
LLQ | IP RTP 우선순위 |
---|---|
다음을 기준으로 음성 트래픽 일치:
|
다음을 기준으로 음성 트래픽 일치:
|
지침:
|
FRTS는 네트워크 트래픽 혼잡을 관리하는 데 유용한 매개변수를 제공합니다.FRTS는 중앙 사이트에 고속 연결을 제공하고 지사 사이트에 저속 연결을 통해 프레임 릴레이 네트워크의 병목 현상을 없앱니다.중앙 사이트의 VC(Virtual Circuit)에서 데이터가 전송되는 속도를 제한하도록 속도 시행 값을 구성할 수 있습니다.
이러한 정의는 FRTS와 관련이 있습니다.
CIR(Committed Information Rate) - 프레임 릴레이 공급자가 데이터 전송을 보증하는 비율(초당 비트 수)입니다.CIR 값은 프레임 릴레이 서비스 공급자가 설정하고 라우터의 사용자가 구성합니다.
참고: 포트/인터페이스 액세스 속도는 CIR보다 높을 수 있습니다.이 비율은 Committed Rate Measurement Interval (Tc) 기간 동안의 평균입니다.
Committed Burst (Bc)(커밋된 버스트(Bc)) - Frame Relay 네트워크에서 TC를 통해 전송하기 위해 커밋하는 최대 비트 수입니다.Tc = BC / CIR
Excess Burst (Be)(초과 버스트(Be)) - 프레임 릴레이 스위치가 CIR을 통해 전송하려고 시도하는 커밋되지 않은 최대 비트 수입니다.
Committed Rate Measurement Interval (Tc)(커밋된 속도 측정 간격(Tc)) - Bc 또는 (Bc+ Be) 비트가 전송되는 시간 간격입니다.Tc는 Tc = Bc / CIR로 계산됩니다.Tc 값은 Cisco 라우터에서 직접 구성되지 않습니다.Bc 및 CIR 값이 구성된 후 계산됩니다.TC는 125ms를 초과할 수 없습니다.
Backward Explicit Congestion Notification (BECN) - 네트워크 혼잡을 나타내는 Frame Relay 프레임 헤더의 비트입니다.프레임 릴레이 스위치는 혼잡을 인식하면 소스 라우터로 향하는 프레임에 BECN 비트를 설정하고 라우터에 전송 속도를 줄이도록 지시합니다.
음성 트래픽에 대한 FRTS 컨피그레이션은 데이터만을 위한 트래픽 셰이핑과 다릅니다.음성 품질을 위해 FRTS를 구성할 때 데이터 트래픽 파라미터로 보안이 침해됩니다.이러한 제한 사항에 대한 자세한 내용은 이 문서의 조각화(FRF.12) 섹션을 참조하십시오.
음성 데이터 통합의 최대 과제는 음성 등 시간에 민감한 트래픽에 대한 최대 단방향 엔드 투 엔드 지연을 제어하는 것입니다.음질을 높이려면 이 지연이 150ms 미만이어야 합니다.이 지연의 중요한 부분은 인터페이스의 직렬화 지연입니다.Cisco에서는 10ms를 권장하며 20ms를 초과할 수 없습니다.Serialization 지연은 실제로 비트를 인터페이스에 배치하는 데 걸리는 시간입니다.
Serialization Delay = frame size (bits) / link bandwidth (bps)
예를 들어 1500바이트 패킷은 56Kbps 링크를 통해 라우터를 떠나는 데 214ms가 소요됩니다.1500바이트의 비실시간 데이터 패킷이 전송되면 대용량 데이터 패킷이 전송될 때까지 실시간(음성) 데이터 패킷이 대기됩니다.이 지연은 음성 트래픽에 허용되지 않습니다.비실시간 데이터 패킷이 더 작은 프레임으로 프래그먼트되면 실시간(음성) 프레임과 인터리빙됩니다.이렇게 하면 음성 및 데이터 프레임을 모두 저속 링크에서 전달하여 실시간 음성 트래픽에 과도한 지연을 초래하지 않습니다.
조각화에 대한 자세한 내용은 Frame Relay Fragmentation for Voice를 참조하십시오.
참고: 전용 T1 연결(768kbps)이 있는 경우 프래그먼트화 기능이 필요하지 않을 수 있습니다.그러나 여전히 QoS 메커니즘(이 경우에는 IP RTP 우선순위 또는 LLQ)이 필요합니다. T1 이상의 속도는 음성 패킷이 권장 직렬화 지연 범위(10ms, 20ms 이하)에서 큐에 들어가고 대기하도록 허용하는 데 충분한 대역폭을 제공합니다. 또한 전체 T1의 경우 IP RTP 헤더를 압축하여 대역폭을 절약하는 데 도움이 되는 cRTP가 필요하지 않을 수 있습니다.
RFC 2508 에 따라 cRTP 기능은 IP/UDP/RTP 패킷 헤더를 40바이트에서 2 또는 4바이트로 압축합니다.따라서 불필요한 대역폭 소비가 줄어듭니다.hop-by-hop 압축 체계입니다.따라서 수동 옵션이 구성되지 않은 경우 링크의 양쪽 끝에서 cRTP를 구성해야 합니다.
참고: 음성 품질이 우수하려면 cRTP가 필요하지 않습니다.대역폭 소비를 줄이는 기능입니다.기타 모든 조건이 충족되고 음성 품질이 양호한 후 cRTP를 구성합니다.이 절차는 잠재적인 cRTP 문제를 격리하므로 문제 해결 시간을 절약합니다.
라우터의 CPU 사용률을 모니터링합니다.cRTP가 75%보다 큰 경우 비활성화합니다.링크 속도가 더 높으면 cRTP의 대역폭 절감 효과는 추가 CPU 로드보다 더 높을 수 있습니다.Cisco에서는 라우터가 낮은 CPU 사용률로 실행되지 않는 한 768Kbps 미만의 링크와 함께 cRTP만 사용하는 것이 좋습니다.
참고: 표준이 없을 때 Cisco 독점 캡슐화를 통해 프레임 릴레이용 cRTP가 개발되었습니다.따라서 Frame Relay의 IETF(Internet Engineering Task Force) 캡슐화에서는 작동하지 않습니다.최근 IETF 캡슐화에서 RTP 헤더 압축을 가능하게 하기 위해 FRF.20이 완료되었습니다.그러나 이 문서의 마지막 업데이트(2002년 5월)부터는 FRF.20이 지원되지 않습니다.
자세한 내용은 압축된 실시간 전송 프로토콜을 참조하십시오.
VoIP 통화 레그에 낮은 비트 속도 코덱을 사용합니다.VoIP 다이얼 피어의 기본 코덱은 G.729(8Kbps)입니다.
참고: DTMF(Dual Tone Multifrequency)는 일반적으로 높은 비트 속도의 음성 코덱을 사용할 때 정확하게 전송되지만(예: G.711), 낮은 비트 속도 코덱은 음성 패턴에 매우 최적화되어 있으며 DTMF 신호음을 왜곡하는 경향이 있습니다.이러한 접근 방식을 사용하면 IVR(Interactive Voice Response) 시스템에 액세스하는 데 문제가 발생할 수 있습니다.dtmf relay 명령은 DTMF 왜곡의 문제를 해결합니다.DTMF 신호음을 대역외 또는 인코딩된 음성 스트림과는 별도로 전송합니다.저비트 속도 코덱을 사용하는 경우(G.729, G.723) VoIP 다이얼 피어에서 dtmf 릴레이 명령을 활성화합니다.
일반적인 대화에는 잠재적으로 35~50%의 침묵이 포함될 수 있습니다.VAD를 사용할 경우 무음 패킷이 억제됩니다.VoIP 대역폭 계획의 경우 VAD가 대역폭을 35% 줄인다고 가정합니다.VAD는 VoIP 다이얼 피어에서 기본적으로 구성됩니다.
이 섹션에는 이 문서에서 설명하는 기능을 구성하기 위한 정보가 표시됩니다.
참고: 이 문서에 사용된 명령에 대한 추가 정보를 찾으려면 명령 조회 도구(등록된 고객만 해당)를 사용합니다.
다음 절차에 따라 LLQ를 구성합니다.
VoIP 트래픽에 대한 클래스 맵을 만들고 일치 기준을 정의합니다.
다음 명령은 이 작업을 완료하는 방법에 대해 설명합니다.
maui-voip-sj(config)#class-map ? WORD class-map name match-all Logical-AND all matching statements under this classmap match-any Logical-OR all matching statements under this classmap maui-voip-sj(config)#class-map match-all voice-traffic !--- Choose a descriptive class_name. maui-voip-sj(config-cmap)#match ? access-group Access group any Any packets class-map Class map cos IEEE 802.1Q/ISL class of service/user priority values destination-address Destination address input-interface Select an input interface to match ip IP specific values mpls Multi Protocol Label Switching specific values not Negate this match result protocol Protocol qos-group Qos-group source-address Source address !--- In this example the access-group matching !--- option is used for its flexibility (it uses an access-list). maui-voip-sj(config-cmap)#match access-group ? <1-2699> Access list index name Named Access List maui-voip-sj(config-cmap)#match access-group 102 !--- Create the access-list to match the class-map access-group: maui-voip-sj(config)#access-list 102 permit udp any any range 16384 32767 !--- The safest and easiest way is to match with UDP port range 16384-32767. !--- This is the port range Cisco IOS H.323 products utilize to transmit !--- VoIP packets.
이러한 액세스 목록은 음성 트래픽을 match access-group 명령과 일치시키는 데에도 사용됩니다.
access-list 102 permit udp any any precedence critical !--- This list filters traffic based on the IP packet TOS: Precedence field. !--- Note: Ensure that the other non-voice traffic does not use the !--- same precedence value. access-list 102 permit udp any any dscp ef !--- In order for this list to work, ensure that VoIP packets are tagged !--- with the dscp ef code before they exit on the LLQ WAN interface. !--- For more information on DSCP, refer to !--- Implementing Quality of Service Policies with DSCP. !--- Note: If endpoints are not trusted on their packet marking, !--- mark incoming traffic by applying an inbound service policy on an !--- inbound interface. This procedure is out of the scope !--- of this document. access-list 102 permit udp host 192.10.1.1 host 192.20.1.1 !--- This access-list can be used in cases where the VoIP !--- devices cannot do precedence or DSCP marking and you !--- cannot determine the VoIP UDP port range.
다음은 access-group 명령 대신 사용할 수 있는 다른 일치 방법입니다.
Cisco IOS Software 릴리스 12.1.2.T 이상에서는 LLQ에 대해 IP RTP 우선순위 기능이 구현됩니다.이 기능은 구성된 UDP 포트를 보는 우선순위 클래스 내용과 일치합니다.PQ에서는 포트만 제공할 수 없습니다.
class-map voice match ip rtp 16384 16383
이러한 두 방법은 아웃바운드 LLQ 작업이 적용되기 전에 VoIP 패킷이 원래 호스트에 표시되거나, 라우터에 일치되고 표시된다고 가정할 때 작동합니다.
class-map voice match ip precedence 5
또는
class-map voice match ip dscp ef
참고: Cisco IOS Software Release 12.2.2T 이상에서 VoIP 다이얼 피어는 LLQ 작업 전에 음성 전달자 및 신호 패킷을 표시할 수 있습니다.이를 통해 LLQ에 대한 DSCP 코드 값을 통해 VoIP 패킷을 표시 및 매칭할 수 있는 확장 가능한 방법이 가능합니다.자세한 내용은 QoS에 대한 VoIP 신호 처리 및 미디어 분류 DSCP를 참조하십시오.
Router(config-dial-peer)#ip qos dscp ?
VoIP 신호 처리를 위한 클래스 맵을 만들고 일치 기준을 정의합니다(선택 사항).
다음 명령을 사용하여 이 작업을 완료합니다.
class-map voice-signaling match access-group 103 ! access-list 103 permit tcp any eq 1720 any access-list 103 permit tcp any any eq 1720
참고: VoIP 통화는 H.323, SIP(Session Initiation Protocol), MGCP(Media Gateway Control Protocol) 또는 SCCP(Skinny Call Control Protocol)를 사용하여 설정할 수 있습니다. 이 프로토콜은 Cisco Call Manager에서 사용되는 독점적 프로토콜입니다.이전 예에서는 H.323 Fast Connect를 가정합니다.이 목록은 VoIP 신호 처리 및 제어 채널에서 사용되는 포트에 대한 참조 역할을 합니다.
H.323/H.225 = TCP 1720
H.323/H.245 = TCP 11xxx(표준 연결)
H.323/H.245 = TCP 1720(Fast Connect)
H.323/H.225 RAS = UDP 1718 (To GateKeeper)
SCCP = TCP 2000-2002(CM Encore)
ICCP = TCP 8001-8002(CM Encore)
MGCP = UDP 2427, TCP 2428(CM Encore)
SIP= UDP 5060, TCP 5060(구성 가능)
정책 맵을 만들고 VoIP 클래스 맵에 연결합니다.
정책 맵의 목적은 링크 리소스가 서로 다른 맵 클래스에 공유되거나 할당되는 방법을 정의하는 것입니다.다음 명령을 사용하여 이 작업을 완료합니다.
maui-voip-sj(config)#policy-map VOICE-POLICY !--- Choose a descriptive policy_map_name. maui-voip-sj(config-pmap)#class voice-traffic maui-voip-sj(config-pmap-c)#priority ? <8-2000000> Kilo Bits per second !--- Configure the voice-traffic class to the strict PQ !--- (priority command) and assign the bandwidth. maui-voip-sj(config-pmap)#class voice-signaling maui-voip-sj(config-pmap-c)#bandwidth 8 !--- Assign 8 Kbps to the voice-signaling class. maui-voip-sj(config-pmap)#class class-default maui-voip-sj(config-pmap-c)#fair-queue !--- The remaining data traffic is treated as WFQ.
참고: 다양한 유형의 실시간 트래픽을 PQ에 큐에 추가할 수 있지만 음성 트래픽만 PQ에 연결하는 것이 좋습니다.비디오와 같은 실시간 트래픽은 지연이 발생할 수 있습니다(PQ는 FIFO(First In First Out) 대기열임). 음성 트래픽은 지터를 방지하기 위해 지연이 변형이 되지 않아야 합니다.
참고: 우선순위 및 대역폭 문의 값 합계는 PVC의 minCIR보다 작거나 같아야 합니다.그렇지 않으면 service-policy 명령을 링크에 할당할 수 없습니다.minCIR은 기본적으로 CIR의 절반입니다.오류 메시지를 보려면 logging console 명령이 콘솔 액세스에 대해 활성화되고 terminal monitor 명령이 텔넷 액세스에 대해 활성화되었는지 확인합니다.
대역폭 및 우선순위 명령에 대한 자세한 내용은 QoS 서비스 정책의 대역폭 및 우선순위 명령 비교를 참조하십시오.
아웃바운드 WAN 인터페이스에 정책 맵을 적용하여 LLQ를 활성화합니다.
다음 명령을 사용하여 LLQ를 활성화합니다.
maui-voip-sj(config)#map-class frame-relay VoIPovFR maui-voip-sj(config-if)#service-policy output VOICE-POLICY !--- The service-policy is applied to the PVC !--- indirectly by configuring !--- it under the map-class associated to the PVC.
LLQ를 사용하지 않는 경우 다음 지침을 사용합니다.
Router(config-map-class)#frame-relay ip rtp priority starting-rtp-port port-range bandwidth
starting-rtp-port—시작 UDP 포트 번호입니다.패킷이 전송되는 가장 낮은 포트 번호입니다.VoIP의 경우 이 값을 16384로 설정합니다.
port-range - UDP 대상 포트의 범위입니다.starting-rtp-port에 추가된 번호는 가장 높은 UDP 포트 번호를 산출합니다.VoIP의 경우 이 값을 16383으로 설정합니다.
bandwidth - 우선순위 대기열에 대해 허용되는 최대 대역폭(kbps)입니다.시스템이 지원하는 통화당 각 통화의 대역폭을 추가하여 동시 통화 수를 기준으로 이 수를 설정합니다.
샘플 구성:
map-class frame-relay VoIPovFR frame-relay cir 64000 frame-relay BC 600 no frame-relay adaptive-shaping frame-relay fair-queue frame-relay fragment 80 frame-relay ip rtp priority 16384 16383 45
음성에 대한 트래픽 셰이핑을 구성할 때 다음 지침을 사용합니다.
PVC의 CIR을 초과하지 마십시오.
프레임 릴레이 적응형 셰이핑을 비활성화합니다.
Bc 값을 낮게 설정하여 Tc(쉐이핑 간격)가 10ms(Tc = Bc/CIR)로 설정합니다. 원하는 Tc 값을 강제 적용하도록 Bc 값을 구성합니다.
Be 값을 0으로 설정합니다.
이러한 지침에 대한 자세한 내용은 VoIP 및 VoFR용 프레임 릴레이 트래픽 셰이핑을 참조하십시오.
참고: 일부 고객은 데이터 및 음성에 별도의 PVC를 사용합니다.음성 PVC에 대해 CIR 또는 그 아래에 있는 동안 데이터 PVC에서 버스트하려는 두 개의 개별 PVC가 있는 경우 이러한 PVC는 동일한 물리적 인터페이스를 사용하므로 음성 품질이 계속 저하됩니다.이러한 경우 라우터 및 프레임 릴레이 제공자는 음성 PVC의 우선 순위를 지정해야 합니다.후자는 Cisco IOS Software 릴리스 12.1(1)T에서 사용할 수 있는 PIQ(PVC Interface Priority Queuing)를 통해 수행할 수 있습니다.
저속 링크의 단편화를 설정합니다(768kbps 미만). 음성 패킷이 조각화되지 않고 직렬화 지연 시간이 20ms보다 크지 않도록 프래그먼트 크기를 설정합니다.라우터 간의 최저 포트 속도를 기반으로 조각화 크기를 설정합니다.예를 들어 허브의 속도가 T1 이고 원격 라우터의 포트 속도가 64K인 허브 및 스포크 프레임 릴레이 토폴로지가 있는 경우 두 라우터의 64K 속도에 대해 프래그먼트화 크기를 설정해야 합니다.동일한 물리적 인터페이스를 공유하는 다른 모든 PVC는 음성 PVC에서 사용하는 크기로 조각화를 구성해야 합니다.이 차트를 사용하여 조각화 크기 값을 결정합니다.
경로의 링크 속도 최저 | 권장되는 조각화 크기(10ms Serialization용) |
---|---|
56Kbps | 70바이트 |
64Kbps | 80바이트 |
128Kbps | 160바이트 |
256Kbps | 320바이트 |
512Kbps | 640바이트 |
768Kbps | 1000바이트 |
1,536Kbps | 1600바이트 |
샘플 구성:
map-class frame-relay VoIPovFR !--- Some output is omitted. frame-relay fragment 80
참고: 1536Kbps의 경우 단편화가 기술적으로 필요하지 않습니다.그러나 음성 품질을 보장하기 위해 이중 FIFO 대기열 시스템을 사용하려면 프래그먼트화가 필요합니다.1600바이트의 프래그먼트 크기는 듀얼 FIFO를 활성화합니다.그러나 1600바이트는 일반적인 MTU(Serial Interface Maximum Transmission Unit)보다 높으므로 대용량 데이터 패킷은 프래그먼트화되지 않습니다.
이 문서에서는 다음 다이어그램에 표시된 네트워크 설정을 사용합니다.
이 문서에서는 다음과 같은 구성을 사용합니다.
maui-voip-sj(Cisco 3640)
maui-voip-austin(Cisco 3640)
maui-voip-sj(Cisco 3640) |
---|
version 12.2 service timestamps debug datetime msec service timestamps log datetime msec service password-encryption ! hostname maui-voip-sj ! logging buffered 10000 debugging enable secret 5 $1$MYS3$TZ6bwrhWB25b2cVpEVgBo1 ! ip subnet-zero ! !--- Definition of the voice signaling and traffic class maps. !--- "voice-traffic" class uses access-list 102 for its matching criteria. !--- "voice-signaling" class uses access-list 103 for its matching criteria. class-map match-all voice-signaling match access-group 103 class-map match-all voice-traffic match access-group 102 ! !--- The policy map defines how the link resources are assigned !--- to the different map classes. In this configuration, strict PQ !--- is assigned to the voice-traffic class !--- with a maximum bandwidth of 45 Kbps. policy-map VOICE-POLICY class voice-traffic priority 45 class voice-signaling bandwidth 8 !--- Assigns a queue for voice-signaling traffic that ensures 8 Kbps. !--- Note that this is optional and has nothing to do with good voice !--- quality. Instead, it is a way to secure signaling. class class-default fair-queue !--- The class-default class is used to classify traffic that does !--- not fall into one of the defined classes. !--- The fair-queue command associates the default class WFQ queueing. ! interface Ethernet0/0 ip address 172.22.113.3 255.255.255.0 half-duplex ! interface Serial0/0 bandwidth 128 no ip address encapsulation frame-relay no fair-queue frame-relay traffic-shaping frame-relay ip rtp header-compression !--- Turns on traffic shaping and cRTP. If traffic-shaping is not !--- enabled, then map-class does not start and FRF.12 and LLQ does !--- not work. ! interface Serial0/0.1 point-to-point bandwidth 128 ip address 192.168.10.2 255.255.255.252 frame-relay interface-dlci 300 class VOIPovFR !--- This command links the subinterface to a VoIPovFR map-class. !--- See the map-class frame-relay VoIPovFR command here: !--- Note: The word VoIPovFR is selected by the user. ! ip classless ip route 172.22.112.0 255.255.255.0 192.168.10.1 ! map-class frame-relay VOIPovFR no frame-relay adaptive-shaping !--- Disable Frame Relay BECNS. Note also that Be equals 0 by default. frame-relay cir 64000 frame-relay bc 640 !--- Tc = BC/CIR. In this case Tc is forced to its minimal !--- configurable value of 10 ms. frame-relay be 0 frame-relay mincir 64000 !--- Although adaptive shaping is disabled, make CIR equal minCIR !--- as a double safety. By default minCIR is half of CIR. service-policy output VOICE-POLICY !--- Enables LLQ on the PVC. frame-relay fragment 80 !--- Turns on FRF.12 fragmentation and sets the fragment size equal to 80 bytes. !--- This value is based on the port speed of the slowest path link. !--- This command also enables dual-FIFO. ! access-list 102 permit udp any any range 16384 32767 access-list 103 permit tcp any eq 1720 any access-list 103 permit tcp any any eq 1720 ! !--- access-list 102 matches VoIP traffic !--- based on the UDP port range. !--- Both odd and even ports are put into the PQ. !--- access-list 103 matches VoIP signaling protocol. In this !--- case, H.323 V2 is uesd with the fast start feature. ! voice-port 1/0/0 ! dial-peer voice 1 pots destination-pattern 5000 port 1/0/0 ! dial-peer voice 2 voip destination-pattern 6000 session target ipv4:192.168.10.1 dtmf-relay cisco-rtp ip precedence 5 |
maui-voip-austin(Cisco 3640) |
---|
version 12.2 service timestamps debug datetime msec service timestamps log datetime msec service password-encryption ! hostname maui-voip-austin ! boot system flash slot1:c3640-is-mz.122-6a.bin logging buffered 1000000 debugging ! ip subnet-zero ! class-map match-all voice-signaling match access-group 103 class-map match-all voice-traffic match access-group 102 ! policy-map voice-policy class voice-signaling bandwidth 8 class voice-traffic priority 45 class class-default fair-queue ! interface Ethernet0/0 ip address 172.22.112.3 255.255.255.0 no keepalive half-duplex ! interface Serial0/0 bandwidth 64 no ip address encapsulation frame-relay no ip mroute-cache no fair-queue frame-relay traffic-shaping frame-relay ip rtp header-compression ! interface Serial0/0.1 point-to-point bandwidth 64 ip address 192.168.10.1 255.255.255.252 frame-relay interface-dlci 400 class VOIPovFR ! ip classless ip route 172.22.113.0 255.255.255.0 192.168.10.2 ! map-class frame-relay VOIPovFR no frame-relay adaptive-shaping frame-relay cir 64000 frame-relay bc 640 frame-relay be 0 frame-relay mincir 64000 service-policy output voice-policy frame-relay fragment 80 access-list 102 permit udp any any range 16384 32767 access-list 103 permit tcp any eq 1720 any access-list 103 permit tcp any any eq 1720 ! voice-port 1/0/0 ! dial-peer voice 1 pots destination-pattern 6000 port 1/0/0 ! dial-peer voice 2 voip destination-pattern 5000 session target ipv4:192.168.10.2 dtmf-relay cisco-rtp ip precedence 5 |
이 섹션에서는 컨피그레이션이 제대로 작동하는지 확인하는 정보를 제공합니다.
특정 show 명령은 Output Interpreter Tool에서 지원됩니다(등록된 고객만 해당). show 명령 출력의 분석을 볼 수 있습니다.
이러한 show 및 debug 명령은 LLQ 및 IP RTP 우선순위 컨피그레이션을 확인하는 데 도움이 됩니다.
show policy-map interface serial interface#—이 명령은 PQ의 LLQ 작업 및 모든 삭제를 확인하는 데 유용합니다.이 명령의 다양한 필드에 대한 자세한 내용은 show policy-map interface Output의 Understanding Packet Counters를 참조하십시오.
show policy-map policy_map_name - policy-map 컨피그레이션에 대한 정보를 표시합니다.
show queue interface-type interface-number - 특정 인터페이스에 대한 공정 대기열 구성 및 통계를 나열합니다.
debug priority—PQ 이벤트를 표시하고 이 대기열에서 삭제 발생 여부를 표시합니다.자세한 내용은 우선 순위 대기열을 사용하여 출력 삭제 문제 해결을 참조하십시오.
show class-map class_name - class-map 컨피그레이션에 대한 정보를 표시합니다.
show call active voice - DSP 레벨에서 손실된 패킷을 확인합니다.
show frame-relay ip rtp header-compression - RTP 헤더 압축 통계를 표시합니다.
이러한 debug 및 show 명령을 사용하여 조각화 구성을 확인하고 문제를 해결합니다.
show frame-relay fragment - Cisco 라우터에서 발생하는 Frame Relay 조각화에 대한 정보를 표시합니다.
debug frame-relay fragment - 프레임 릴레이 조각화와 관련된 이벤트 또는 오류 메시지를 표시합니다.선택한 인터페이스의 PVC 레벨에서만 활성화됩니다.
이러한 show 명령을 사용하여 프레임 릴레이/인터페이스 컨피그레이션을 확인하고 문제를 해결합니다.
show traffic-shape queue interface - VC DLCI(data-link connection identifier) 레벨에서 대기열에 있는 요소에 대한 정보를 표시합니다.IP RTP Priority over Frame Relay의 작동을 확인하는 데 사용됩니다.링크가 혼잡하면 음성 흐름의 가중치가 0으로 식별됩니다.이는 음성 흐름이 PQ를 사용함을 나타냅니다.샘플 출력을 보려면 여기를 참조하십시오.
show traffic-shape - Tc, Bc, Be 및 CIR 구성 값과 같은 정보를 표시합니다.샘플 출력을 참조하십시오.
show frame-relay pvc dlci-#—트래픽 셰이핑 매개변수, 조각화 값, 삭제된 패킷 등의 정보를 표시합니다.샘플 출력을 참조하십시오.또한 Troubleshooting Frame Relay를 참조하십시오.
인터페이스에 정체 현상이 없는 경우에도 PQ가 엄격하게 폴리싱된 VC LLQ당 버그가 발견되었습니다.해당 버그가 수정되었으며 현재 적합하지 않은 음성 패킷은 VC에서 혼잡이 발생한 경우에만 삭제됩니다.이렇게 하면 VC LLQ당 의 동작이 LLQ를 사용하는 다른 인터페이스와 동일하게 됩니다.이 동작은 Cisco IOS Software 릴리스 12.2(3) 이상에서 변경되었습니다.
이 샘플 show 및 debug 명령 출력은 확인 및 문제 해결에 사용됩니다.
!--- To capture sections of this output, the LLQ PQ bandwidth !--- is lowered and large data traffic is placed !--- on the link to force packets drops. !--- Priority queue bandwidth is lowered to 10 Kbps to force drops from the PQ. !--- Note: To reset counters, use the clear counters command. maui-voip-sj#show policy-map inter ser 0/0.1 Serial0/0.1: DLCI 300 - Service-policy output: VOICE-POLICY Class-map: voice-traffic (match-all) 26831 packets, 1737712 bytes 5 minute offered rate 3000 bps, drop rate 2000 bps Match: access-group 102 Weighted Fair Queueing Strict Priority Output Queue: Conversation 24 Bandwidth 10 (kbps) Burst 250 (Bytes) (pkts matched/bytes matched) 26311/1704020 (total drops/bytes drops) 439/28964 Class-map: voice-signaling (match-all) 80 packets, 6239 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: access-group 103 Weighted Fair Queueing Output Queue: Conversation 25 Bandwidth 8 (kbps) Max Threshold 64 (packets) (pkts matched/bytes matched) 62/4897 (depth/total drops/no-buffer drops) 0/0/0 Class-map: class-default (match-any) 14633 packets, 6174492 bytes 5 minute offered rate 10000 bps, drop rate 0 bps Match: any Weighted Fair Queueing Flow Based Fair Queueing Maximum Number of Hashed Queues 16 (total queued/total drops/no-buffer drops) 0/0/0 !--- These commands are useful to verify the LLQ configuration. maui-voip-austin#show policy-map voice-policy Policy Map voice-policy Class voice-signaling Weighted Fair Queueing Bandwidth 8 (kbps) Max Threshold 64 (packets) Class voice-traffic Weighted Fair Queueing Strict Priority Bandwidth 45 (kbps) Burst 1125 (Bytes) Class class-default Weighted Fair Queueing Flow based Fair Queueing Max Threshold 64 (packets) maui-voip-austin#show class-map Class Map match-all voice-signaling (id 2) Match access-group 103 Class Map match-any class-default (id 0) Match any Class Map match-all voice-traffic (id 3) Match access-group 102 !--- Frame Relay verification command output. maui-voip-sj#show frame-relay fragment interface dlci frag-type frag-size in-frag out-frag dropped-frag Serial0/0.1 300 end-to-end 80 4 4 0 maui-voip-sj#show frame-relay pvc 300 PVC Statistics for interface Serial0/0 (Frame Relay DTE) DLCI = 300, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/0.1 input pkts 7 output pkts 7 in bytes 926 out bytes 918 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 2 out bcast bytes 598 pvc create time 1w2d, last time pvc status changed 1w2d service policy VOICE-POLICY Service-policy output: VOICE-POLICY Class-map: voice-traffic (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: access-group 102 Weighted Fair Queueing Strict Priority Output Queue: Conversation 24 Bandwidth 45 (kbps) Burst 250 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0 Class-map: voice-signaling (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: access-group 103 Weighted Fair Queueing Output Queue: Conversation 25 Bandwidth 8 (kbps) Max Threshold 64 (packets) (pkts matched/bytes matched) 0/0 (depth/total drops/no-buffer drops) 0/0/0 Class-map: class-default (match-any) 7 packets, 918 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: any Weighted Fair Queueing Flow Based Fair Queueing Maximum Number of Hashed Queues 16 (total queued/total drops/no-buffer drops) 0/0/0 Output queue size 0/max total 600/drops 0 fragment type end-to-end fragment size 80 cir 64000 bc 640 be 0 limit 80 interval 10 mincir 64000 byte increment 80 BECN response no frags 13 bytes 962 frags delayed 8 bytes delayed 642 shaping inactive traffic shaping drops 0 !--- In this Frame Relay verification command !--- output, the PQ bandwidth is lowered and heavy traffic !--- is placed on the interface to force drops. maui-voip-sj#show frame-relay pvc 300 PVC Statistics for interface Serial0/0 (Frame Relay DTE) DLCI = 300, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/0.1 input pkts 483 output pkts 445 in bytes 122731 out bytes 136833 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 4 out bcast bytes 1196 pvc create time 1w2d, last time pvc status changed 1w2d service policy VOICE-POLICY Service-policy output: VOICE-POLICY Class-map: voice-traffic (match-all) 352 packets, 22900 bytes 5 minute offered rate 2000 bps, drop rate 2000 bps Match: access-group 102 Weighted Fair Queueing Strict Priority Output Queue: Conversation 24 Bandwidth 10 (kbps) Burst 250 (Bytes) (pkts matched/bytes matched) 352/22900 (total drops/bytes drops) 169/11188 Class-map: voice-signaling (match-all) 7 packets, 789 bytes 5 minute offered rate 0 bps, drop rate 0 bps Match: access-group 103 Weighted Fair Queueing Output Queue: Conversation 25 Bandwidth 8 (kbps) Max Threshold 64 (packets) (pkts matched/bytes matched) 7/789 (depth/total drops/no-buffer drops) 0/0/0 Class-map: class-default (match-any) 79 packets, 102996 bytes 5 minute offered rate 4000 bps, drop rate 0 bps Match: any Weighted Fair Queueing Flow Based Fair Queueing Maximum Number of Hashed Queues 16 (total queued/total drops/no-buffer drops) 5/0/0 Output queue size 5/max total 600/drops 169 fragment type end-to-end fragment size 80 cir 64000 bc 640 be 0 limit 80 interval 10 mincir 64000 byte increment 80 BECN response no frags 2158 bytes 178145 frags delayed 1968 bytes delayed 166021 shaping active traffic shaping drops 169 !--- Notice that the Tc interval equals 10 ms, !--- CIR equals 64000 BPS, and BC equals 640. maui-voip-sj#show traffic-shape Interface Se0/0.1 Access Target Byte Sustain Excess Interval Increment Adapt VC List Rate Limit bits/int bits/int (ms) (bytes) Active 300 64000 80 640 0 10 80 - !--- This output is captured on an isolated lab enviroment where !--- the routers are configured with IP RTP Priority instead of LLQ. maui-voip-austin#show frame-relay PVC 100 PVC Statistics for interface Serial0/1 (Frame Relay DTE) DLCI = 100, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE = Serial0/1.1 input pkts 336 output pkts 474 in bytes 61713 out bytes 78960 dropped pkts 0 in FECN pkts 0 in BECN pkts 0 out FECN pkts 0 out BECN pkts 0 in DE pkts 0 out DE pkts 0 out bcast pkts 0 out bcast bytes 0 PVC create time 1w0d, last time PVC status changed 1w0d Current fair queue configuration: Discard Dynamic Reserved threshold queue count queue count 64 16 2 Output queue size 0/max total 600/drops 0 fragment type end-to-end fragment size 80 cir 64000 BC 640 be 0 limit 125 interval 10 mincir 32000 byte increment 125 BECN response no frags 1091 bytes 82880 frags delayed 671 bytes delayed 56000 shaping inactive traffic shaping drops 0 ip rtp priority parameters 16384 32767 45000 !--- This command displays information of the VoIP dial-peers. maui-voip-austin#show dial-peer voice 2 VoiceOverIpPeer2 information type = voice, tag = 2, destination-pattern = `5000', answer-address = `', preference=0, group = 2, Admin state is up, Operation state is up, incoming called-number = `', connections/maximum = 0/unlimited, application associated: type = voip, session-target = `ipv4:192.168.10.2', technology prefix: ip precedence = 5, UDP checksum = disabled, session-protocol = cisco, req-qos = best-effort, acc-qos = best-effort, dtmf-relay = cisco-rtp, fax-rate = voice, payload size = 20 bytes codec = g729r8, payload size = 20 bytes, Expect factor = 10, Icpif = 30,signaling-type = cas, VAD = enabled, Poor QOV Trap = disabled, Connect Time = 165830, Charged Units = 0, Successful Calls = 30, Failed Calls = 0, Accepted Calls = 30, Refused Calls = 0, Last Disconnect Cause is "10", Last Disconnect Text is "normal call clearing.", Last Setup Time = 69134010.