이 문서에서는 ToS(Type of Service)를 CoS(Class of Service) 매개변수에 매핑하여 LAN 환경에서 VoIP(Voice over IP)에 대한 QoS(Quality of Service)에 대해 설명합니다.
최근까지, 네트워크 트래픽의 버스트 특성과 버퍼 오버플로 기능 때문에 QoS가 기업 측에서 결코 문제가 되지 않을 것이라는 일반적인 의견이 지배적이었습니다. LAN측에서 QoS를 사용하는 이유는 대역폭이 부족하지 않고 버퍼링 때문입니다. 따라서 QoS 툴은 이러한 버퍼를 관리하여 손실, 지연 및 지연 변동을 최소화해야 합니다. 전송 버퍼는 데이터 네트워크의 폭증적인 특성과 소규모 TCP(Transmission Control Protocol) 패킷의 대용량 조합으로 인해 고속 네트워크에서 용량을 채우는 경향이 있습니다. 출력 버퍼가 가득 차면 인그레스 인터페이스에서 새 흐름 트래픽을 출력 버퍼에 즉시 배치할 수 없습니다. 인그레스 버퍼가 가득 차면(빠르게 발생할 수 있음) 패킷 삭제가 발생합니다. 패킷 손실로 인해 음성 품질이 저하될 수 있습니다.
VoIP 트래픽은 지연된 패킷과 삭제된 패킷 모두에 민감합니다. LAN 링크의 빠른 속도 때문에 대기열 버퍼의 크기와 상관없이 지연은 요인일 수 없습니다. 하지만 드롭은 모든 네트워크의 음성 품질에 항상 부정적인 영향을 미칩니다. 전송 인터페이스에서 여러 대기열을 사용하는 것이 100% 용량으로 작동하는 버퍼로 인해 트래픽이 손실될 가능성을 없애는 유일한 방법입니다. 지연과 삭제에 모두 민감한 음성 및 비디오를 자신의 큐로 분리하면 데이터 흐름이 데이터 전송 버퍼를 채우더라도 인그레스 인터페이스에서 흐름이 삭제되는 것을 방지할 수 있습니다.
트래픽 로드가 많은 네트워크에서는 VoIP를 통한 긍정적인 사용자 경험을 보장하기 위해 제어 트래픽 전달을 관리하는 것이 중요합니다. 이것은 쉽게 삽화가 된다. 예를 들어, IP 전화가 끊기면 Cisco CallManager에게 어떻게 해야 할지 묻습니다. 그런 다음 Cisco CallManager가 IP 전화에 신호음을 재생하도록 지시합니다. Skinny Client Protocol 관리 및 제어 트래픽이 삭제 또는 지연되면 사용자 환경에 부정적인 영향을 미칩니다. QoS를 제공하려면 패킷 헤더를 우선 순위가 더 높은 것으로 표시하고 Catalyst가 이해할 수 있도록 레이어 2 헤더에 올바르게 매핑합니다. 이렇게 하면 LAN을 통한 음성 패킷의 우선 순위가 올바르게 지정됩니다.
이 문서에 대한 특정 요건이 없습니다.
이 문서의 정보는 이러한 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
Cisco 3725 Voice Gateway with Cisco IOS® Software 릴리스 12.3(4)T.
Catalyst 4000 스위치
Cisco CallManager 및 IP 전화
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 라이브 네트워크에서 작업하는 경우, 사용하기 전에 모든 명령의 잠재적인 영향을 이해해야 합니다.
문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.
이 섹션에는 이 문서에서 설명하는 기능을 구성하기 위한 정보가 표시됩니다.
참고: 이 문서에 사용된 명령에 대한 추가 정보를 찾으려면 명령 조회 도구(등록된 고객만 해당)를 사용합니다.
이 문서에서는 이 다이어그램에 표시된 네트워크 설정을 사용합니다.
이 문서에서는 이러한 구성을 사용합니다.
이 구성은 ToS/DSCP(differentiated services code point) 값을 802.1p 헤더 부분의 CoS 값에 매핑하는 방법을 보여줍니다. 이를 구현하는 방법에는 여러 가지가 있으며 설계에 따라 약간의 차이가 있습니다. 이 두 가지 컨피그레이션 예는 동일하며, 두 가지 중 하나를 사용하여 동일한 결과를 얻을 수 있습니다. ToS 비트에서 IP 우선 순위가 중요(5)인 VoIP 패킷만 허용해야 합니다. 다른 어떤 트래픽도 이 비트를 critical로 설정해서는 안 됩니다. 이로 인해 음성 대기열에서 원치 않는 트래픽이 중복됩니다.
참고: LLQ 컨피그레이션은 이 문서에서 다루지 않는 Catalyst 4000과 같은 네트워크의 다른 디바이스에서 수행됩니다.
이 첫 번째 예에서는 IP 우선순위 5와 일치하는 RTP 스트림만 태그되며 RTCP 또는 H.225/245 신호 및 메시징 패킷이 아닙니다.
Cisco 3660(예 1) |
---|
! ip cef ! !--- The Cisco Express Forwarding (CEF) mechanism needs to be enabled !--- in order for the set cos command that is !--- configured later to take effect. !--- If this is not on, the router reminds you with !--- the error "CEF switching needed for 'set' operations". ! class-map match-all RTP match ip precedence 5 !--- This command matches on all packets with the IP precedence of 5. ! policy-map OutboundPolicy class RTP set CoS 5 !--- For all packets which previously matched on class-map RTP for !--- having precedence of 5, the CoS bit is now set to 5. class class-default set CoS 0 !--- All other traffic has a CoS of 0 and !--- carries a lower priority of delivery. ! interface FastEthernet0/0 no ip address no ip mroute-cache duplex auto speed auto ! interface FastEthernet0/0.816 encapsulation dot1Q 816 !--- There must be subinterfaces for FastEthernet to enable trunking, !--- as well as either dot1q or isl encapsulation. ip address 10.120.16.112 255.255.255.0 service-policy output OutboundPolicy !--- Apply the QoS to the interface that connects to the LAN !--- via the Catalyst 4000. ! dial-peer voice 99131 voip destination-pattern 9913109 session target ipv4:10.120.17.133 ip qos dscp cs5 media no vad ! |
참고: Cisco IOS Software 릴리스 12.2(2)T에 ip qos dscp 명령이 도입되었습니다. ip precedence(dial-peer) 명령을 대체합니다. Cisco IOS Software Release 12.2(2)T 이하 버전에서 실행되는 모든 라우터는 다이얼 피어 컨피그레이션에서 ip 우선 순위를 사용할 수 있습니다.
두 번째 예에서는 policy-map 클래스에 대해 서로 다른 일치 매개변수를 가집니다. Cisco 3660 컨피그레이션은 H.225 통화 설정 패킷과 RTP 스트림에서 일치합니다. RTP 스트림에 대한 일치 기준도 약간 다릅니다. IP 헤더를 보지 말고 UDP 포트 범위만 확인하십시오. 16384에서 32767 사이에 있으면 태그를 지정하고 policy-map으로 전송합니다.
Cisco 3660(예 2) |
---|
! ip cef ! !--- The CEF mechanism needs to be enabled !--- in order for the set cos command that is !--- configured later to take effect. !--- If this is not on, the router reminds you with !--- the error "CEF switching needed for 'set' operations". ! class-map match-all Call-Control match access-group 101 ! class-map match-all RTP match ip rtp 16384 16383 !--- Match on UDP port range 16384-32767 to single out !--- VoIP packets for policy-map. ! access-list 101 permit tcp host 10.120.16.112 any eq 1720 !--- Match on all packets using TCP port 1720 which is !--- dedicated for H.225 call setup. ! policy-map OutboundPolicy class RTP set CoS 5 !--- For all VoIP packets that match the UDP port range listed above, !--- set the CoS bit to 5. class Call-Control set CoS 3 set ip precedence 3 !--- For all signaling and control packets that match access-list !--- 101, set the CoS bit to 3 and IP precedence to 3. class class-default set CoS 0 !--- All other traffic has a CoS of 0 and carries a !--- lower priority of delivery. ! interface FastEthernet0/0 no ip address no ip mroute-cache duplex auto speed auto ! interface FastEthernet0/0.816 encapsulation dot1Q 816 ip address 10.120.16.112 255.255.255.0 service-policy output OutboundPolicy !--- Apply your QoS to the interface that connects to the !--- LAN via the Catalyst 4000. ! dial-peer voice 99131 voip destination-pattern 9913109 session target ipv4:10.120.17.133 ip qos dscp cs5 media no vad ! |
이 섹션에서는 컨피그레이션이 제대로 작동하는지 확인하는 데 사용할 수 있는 정보를 제공합니다.
일부 show 명령은 출력 인터프리터 툴 에서 지원되는데(등록된 고객만), 이 툴을 사용하면 show 명령 출력의 분석 결과를 볼 수 있습니다.
show policy-map interface - 지정된 서비스 정책 맵의 모든 클래스에 대한 매치 카운터를 표시합니다.
이제 라우터가 ToS 비트를 CoS 비트에 매핑하도록 구성됩니다. show policy-map interface 명령을 사용하여 트래픽이 컨피그레이션에 따라 실제로 표시되는지 확인합니다.
이 첫 번째 예제 출력에서 539개의 VoIP 패킷은 class-map과 일치하고, 539개의 모든 패킷에는 CoS 비트가 그 결과로 critical 값으로 표시되어 있습니다. 이러한 유형의 큐잉은 혼잡이 활성화될 때까지 기다릴 필요가 없습니다. FastEthernet 링크를 통과하는 음성 트래픽이 있는 한 모든 패킷을 그에 따라 표시합니다. 두 번째 예에서는 CoS 값 5로 표시된 모든 VoIP 패킷과 모든 신호 패킷이 컨피그레이션에 따라 CoS 값 3으로 표시됩니다.
첫 번째 3660 컨피그레이션에서 다음을 수행합니다.
vdtl-3660-16a#show policy-map interface fastethernet 0/0.816 FastEthernet0/0.816 Service-policy output: OutboundPolicy Class-map: RTP (match-all) 539 packets, 42042 bytes 5 minute offered rate 2000 bps, drop rate 0 BPS Match: ip precedence 5 QoS Set CoS 5 Packets marked 539 Class-map: class-default (match-any) 13 packets, 1803 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any QoS Set CoS 0 Packets marked 13
두 번째 3660 예제 컨피그레이션:
vdtl-3660-16a#show policy-map interface fastethernet 0/0.816 FastEthernet0/0.816 Service-policy output: OutboundPolicy Class-map: RTP (match-all) 370 packets, 28860 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: ip rtp 16384 16383 QoS Set CoS 5 Packets marked 370 Class-map: Call-Control (match-all) 26 packets, 2697 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: access-group 101 QoS Set ip precedence 3 Packets marked 26 CoS 3 Packets marked 26 Class-map: class-default (match-any) 4363 packets, 515087 bytes 5 minute offered rate 0 BPS, drop rate 0 BPS Match: any QoS Set CoS 0 Packets marked 4363 vdtl-3660-16a#
현재 이 컨피그레이션에 사용할 수 있는 특정 문제 해결 정보가 없습니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
02-Feb-2006 |
최초 릴리스 |