Este documento mostra uma configuração de exemplo de Voz sobre IP (VoIP) sobre uma rede Frame Relay com Qualidade de Serviço (QoS). Este documento inclui informações técnicas de fundo sobre recursos configurados, diretrizes de projeto e verificação básica e estratégias de Troubleshooting.
É importante observar que a configuração neste documento tem dois roteadores de voz conectados à rede do Frame Relay. Em muitas topologias, no entanto, os roteadores habilitados para voz podem existir em qualquer lugar. Geralmente, os roteadores de voz usam a conectividade de LAN para outros roteadores que estão conectados à WAN. Isso é importante porque se os roteadores de voz não estiverem diretamente conectados à rede do Frame Relay, todos os comandos de configuração da WAN devem ser configurados nos roteadores conectados à WAN e não nos roteadores de voz, como mostrado nas configurações neste documento.
Não existem requisitos específicos para este documento.
As informações neste documento são baseadas nestas versões de software e hardware:
Roteador Cisco 3640 com Software Cisco IOS® versão 12.2.6a (Enterprise Plus)
Roteador Cisco 2621 com Software Cisco IOS versão 12.2.6a (Enterprise Plus)
LLQ (enfileiramento de baixa latência) nos PVCs (circuitos virtuais permanentes do Frame Relay). Isso é apresentado no Cisco IOS Software Release 12.1.2(2)T.
A Prioridade do Protocolo de Transporte em Tempo Real (RTP - Real-Time Transport Protocol) do Frame Relay IP que é apresentada no Software Cisco IOS versão 12.0(7)T.
Fragmentação Frame Relay Forum (FRF).12 introduzida no Cisco IOS Software Release 12.0(4)T.
Os Cisco IOS Software Releases posteriores à 12.0.5T contêm melhorias significativas no desempenho para RTP compactado (cRTP).
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
Há dois requisitos básicos para uma boa qualidade de voz:
Retardo ponto-a-ponto mínimo e prevenção de tremulação (variação de retardo).
Requisitos de enlace de largura de banda otimizados e corretamente executados.
Para garantir os requisitos mencionados anteriormente, utilize as seguintes diretrizes:
Há dois métodos principais para fornecer prioridade estrita ao tráfego de voz:
Funcionalidade IP RTP Priority (também chamada de Fila de Prioridade/Weighted Fair Queuing (PQ/WFQ))
LLQ (também chamado de PQ / Class Based Weighted Fair Queuing (PQ/CBWFQ))
A Prioridade RTP IP do Frame Relay cria uma fila de prioridade estrita em um PVC do Frame Relay para um conjunto de fluxos de pacote RTP que pertencem a um intervalo de portas de destino UDP (User Datagram Protocol). Embora as portas reais usadas sejam negociadas dinamicamente entre dispositivos finais ou gateways, todos os produtos Cisco VoIP utilizam o mesmo intervalo de portas UDP (16384 a 32767). Quando o roteador reconhece o tráfego de VoIP, ele o coloca no PQ exato. Quando o PQ está vazio, as outras filas são processadas com base no WFQ padrão. A prioridade de RTP IP não se torna ativa até que haja congestionamento na interface. Esta imagem ilustra a operação da Prioridade RTP IP:
Observação: a prioridade RTP de IP permite a intermitência do PQ quando há largura de banda disponível na fila padrão (WFQ). No entanto, ele policia rigorosamente o conteúdo do PQ quando há congestionamento na interface.
O LLQ é um recurso que fornece uma PQ estrita ao CBWFQ. O LLQ habilita um único PQ estrito dentro do CBWFQ no nível de classe. Com o LLQ, os dados sensíveis a retardo (no PQ) são retirados da fila e enviados primeiro. Em um VoIP com implementação LLQ, o tráfego de voz é colocado no PQ estrito.
O PQ é vigiado para garantir que as filas justas não tenham necessidade de largura de banda. Ao configurar o PQ, especifique a quantidade máxima, em Kbps, de largura de banda disponível para o PQ. Quando a interface estiver congestionada, o PQ receberá o serviço até que a carga atinja o valor de Kbps configurado na declaração da prioridade. O tráfego em excesso é eliminado para evitar o problema com o recurso de grupos de prioridade em produtos Cisco anteriores em que as PQs de nível inferior ficam sem atividade.
Observação: com LLQ para Frame Relay, as filas são configuradas por PVC. Cada PVC tem um PQ e um número atribuído de filas consideráveis.
Este método é mais complexo e flexível que a prioridade de RTP de IP. A escolha entre os métodos precisa ser baseada nos padrões de tráfego na sua rede real e nas suas necessidades.
Esta tabela resume as principais diferenças entre LLQ e IP RTP Priority e fornece diretrizes de quando usar cada método.
LLQ | IP RTP Priority |
---|---|
Comparar tráfego de voz com base em:
|
Comparar tráfego de voz com base em:
|
Diretrizes:
|
O FRTS fornece parâmetros úteis para gerenciar o congestionamento do tráfego de rede. O FRTS elimina gargalos nas redes Frame Relay com conexões de alta velocidade com a instalação central e conexões de baixa velocidade com as instalações de filial. Você pode configurar os valores de aplicação de taxa para limitar a taxa na qual os dados são enviados do Circuito Virtual (VC) na instalação central.
Essas definições estão relacionadas ao FRTS:
Taxa de Informações Comprometidas (CIR)—Taxa (bits por segundo) garantida pelo provedor de Frame Relay para transferência de dados. Os valores de CIR são definidos pelo provedor de serviços de Frame Relay e configurados pelo usuário no roteador.
Observação: a taxa de acesso de porta/interface pode ser superior à CIR. A taxa é média em um período de tempo do Intervalo de Medição de Taxa Confirmada (Tc - Committed Rate Measurement Interval).
Committed Burst (Bc) — Número máximo de bits que a rede Frame Relay comete para transferir em um Tc. Tc = Bc / CIR.
Excess Burst (Be) — Número máximo de bits não comprometidos que o switch Frame Relay tenta transferir além do CIR sobre o Tc.
Intervalo de Medição de Taxa Confirmada (Tc) — Intervalo de tempo sobre o qual os bits Bc ou (Bc+ Be) são transmitidos. Tc é calculado como Tc = Bc / CIR. O valor Tc não está configurado diretamente nos roteadores Cisco. É calculado depois que os valores Bc e CIR forem configurados. Tc não pode exceder 125 ms.
Backward Explicit Congestion Notification (BECN) — Um bit no cabeçalho do quadro do Frame Relay que indica congestionamento na rede. Quando um switch Frame Relay reconhece o congestionamento, ele define o bit BECN nos quadros destinados ao roteador de origem e instrui o roteador a reduzir a taxa de transmissão.
A configuração do FRTS para tráfego de voz é diferente da configuração de tráfego somente para dados. Ao configurar o FRTS para qualidade de voz, são feitos comprometimentos com os parâmetros de tráfego de dados. Para obter mais informações sobre essas restrições, consulte a seção Fragmentação (FRF.12) neste documento.
Um grande desafio na integração de dados de voz é controlar o retardo máximo de unidirecional de ponta a ponta para tráfego sensível ao tempo, como voz. Para uma boa qualidade de voz, esse atraso precisa ser menor que 150 ms. Uma parte importante desse atraso é o atraso de serialização na interface. A Cisco recomenda 10 ms e não deve exceder 20 ms. Retardo de serialização é o tempo que demora a realmente colocar os bits em uma interface.
Serialization Delay = frame size (bits) / link bandwidth (bps)
Por exemplo, um pacote de 1500-bytes leva 214 ms para sair do roteador em um enlace de 56 Kbps. Se um pacote de dados não em tempo real de 1500 bytes for enviado, os pacotes de dados em tempo real (voz) serão enfileirados até que o pacote de dados grande seja transmitido. Esse retardo é inaceitável no tráfego de voz. Se pacotes de dados em tempo não real são fragmentados em estruturas menores, eles são intercalados com estruturas em tempo real (voz). Dessa forma, tanto a voz quanto as estruturas de dados podem ser transportadas juntas ou em enlaces de velocidade baixa sem causar retardos excessivos ao tráfego de voz de tempo real.
Para obter mais informações sobre fragmentação, consulte Frame Relay Fragmentation for Voice.
Observação: nos casos em que você tem uma conexão metade T1 dedicada (768 kbps), você provavelmente não precisa de um recurso de fragmentação. No entanto, você ainda precisa de um mecanismo de QoS (Prioridade RTP IP ou LLQ, neste caso). A semi-T1 ou velocidades maiores oferecem largura de banda suficiente para permitir que pacotes de voz entrem e saiam da fila dentro da faixa de retardo de serialização recomendada (10 ms, não mais que 20 ms). Além disso, você provavelmente não precisa de cRTP, o que ajuda a economizar largura de banda ao comprimir cabeçalhos IP RTP, no caso de um T1 completo.
Com base no RFC 2508 , o recurso cRTP compacta o cabeçalho do pacote IP/UDP/RTP de 40 bytes para 2 ou 4 bytes. Isso reduz o consumo desnecessário de largura de banda. É um esquema de compressão salto a salto. Portanto, o cRTP deve ser configurado em ambas as extremidades do link, a menos que a opção passiva esteja configurada.
Observação: cRTP não é necessário para garantir boa qualidade de voz. É um recurso que reduz o consumo de largura de banda. Configure cRTP depois de todas as outras condições serem atendidas e a qualidade de voz ser boa. Esse procedimento economiza tempo na solução de problemas porque isola possíveis problemas de cRTP.
Monitore a utilização da CPU do roteador. Desabilite o cRTP se ele estiver acima de 75%. Em taxas de link mais elevadas, a economia de largura de banda de cRTP pode ser superada pela carga adicional da CPU. A Cisco recomenda usar somente cRTP com links inferiores a 768 Kbps, a menos que o roteador seja executado a uma baixa taxa de utilização da CPU.
Observação: na ausência de um padrão, o cRTP para Frame Relay foi desenvolvido no encapsulamento proprietário da Cisco. Portanto, não funciona com o encapsulamento IETF (Internet Engineering Task Force) do Frame Relay. Recentemente, o FRF.20 foi finalizado para tornar possível a compactação do cabeçalho RTP no encapsulamento IETF. Contudo, na última atualização deste documento (maio de 2002), o FRF.20 não é suportado.
Para obter mais informações, consulte o Protocolo de Transporte de Tempo Real Comprimido.
Use codecs de baixa taxa de bits nos segmentos das chamadas VoIP. G.729 (8 Kbps) é o codec padrão para o peer de discagem VoIP.
Observação: embora a DTMF (Dual Tone Multifrequency, multifreqüência de tom duplo) seja normalmente transportada com precisão quando codecs de voz de alta taxa de bits são usados (como G.711), codecs de baixa taxa de bits (como G.729 e G.723.1), são altamente otimizados para padrões de voz e tendem a distorcer tons de DTMF. Esta abordagem pode resultar em problemas durante o acessar a sistemas de Resposta de Voz Interativa (IVR). O comando dtmf relay resolve o problema da distorção de DTMF. Ele transporta tons DTMF fora da banda ou separados do fluxo de voz codificado. Se você usar codecs de taxa de bits baixa (G.729, G.723), ative o comando dtmf relay no dial-peer VoIP.
Uma conversação típica pode potencialmente conter de 35 a 50 por cento de silêncio. Os pacotes de silêncio são suprimidos quando o VAD é usado. Para o planejamento de largura de banda de VoIP, suponha que o VAD reduza a largura de banda em 35%. VAD é configurado por padrão nos correspondentes de discagem VoIP.
Nesta seção, você encontrará informações para configurar os recursos descritos neste documento.
Observação: para encontrar informações adicionais sobre os comandos usados neste documento, use a ferramenta Command Lookup Tool (somente clientes registrados).
Use este procedimento para configurar o LLQ:
Crie um mapa de classe para tráfego VoIP e defina critérios de correspondência.
Estes comandos explicam como concluir esta tarefa:
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.
Essas listas de acesso também são usadas para corresponder o tráfego de voz com o comando 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.
Estes são outros métodos correspondentes que podem ser usados em vez de comandos access-group:
Com o Cisco IOS Software Release 12.1.2.T e posterior, a funcionalidade de Prioridade RTP IP é implementada para LLQ. Esse recurso corresponde ao conteúdo da classe de prioridade que examina as portas UDP configuradas. Ele está sujeito à limitação de servir apenas portas pares no PQ.
class-map voice match ip rtp 16384 16383
Esses dois métodos operam sob o pressuposto de que os pacotes VoIP são marcados nos hosts de origem ou correspondentes e marcados no roteador antes da operação LLQ de saída ser aplicada:
class-map voice match ip precedence 5
OU
class-map voice match ip dscp ef
Observação: no Cisco IOS Software Release 12.2.2T e posterior, os peers de discagem VoIP podem marcar o portador de voz e os pacotes de sinalização antes da operação LLQ. Isso permite uma maneira escalável de marcar e corresponder pacotes VoIP através de valores de código DSCP para LLQ. Para obter mais informações, consulte Classificando a sinalização e a mídia VoIP com o DSCP para QoS.
Router(config-dial-peer)#ip qos dscp ?
Crie um mapa de classes para sinalização VoIP e defina critérios de correspondência (opcional).
Use estes comandos para concluir esta tarefa:
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
Observação: as chamadas VoIP podem ser estabelecidas usando H.323, protocolo de iniciação de sessão (SIP), protocolo de controle de gateway de mídia (MGCP) ou protocolo de controle de chamadas (SCCP) - protocolo proprietário usado pelo Cisco Call Manager. O exemplo anterior assume o H.323 Fast Connect. Esta lista serve como referência para as portas usadas pelos canais de sinalização e controle VoIP:
H.323/H.225 = TCP 1720
H.323/H.245 = TCP 11xxx (conexão padrão)
H.323/H.245 = TCP 1720 (Fast Connect)
RAS H.323/H.225 = UDP 1718 (para 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 (configurável)
Crie um mapa de política e o associe aos mapas de classe VoIP.
A finalidade do mapa de política é definir como os recursos de link são compartilhados ou atribuídos às diferentes classes de mapa. Use estes comandos para concluir esta tarefa:
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.
Observação: embora seja possível enfileirar vários tipos de tráfego em tempo real para o PQ, a Cisco recomenda que você direcione apenas o tráfego de voz para ele. O tráfego em tempo real, como o vídeo, apresenta uma variação potencial no atraso (o PQ é uma fila First In First Out (FIFO)). O tráfego de voz exige que o atraso não seja variável para evitar tremulação.
Observação: a soma dos valores das instruções priority e bandwidth precisa ser menor ou igual a minCIR para o PVC. Caso contrário, o comando service-policy não pode ser atribuído ao link. minCIR é metade da CIR por padrão. Para ver as mensagens de erro, certifique-se de que o comando logging console esteja ativado para acesso ao console e que o comando terminal monitor esteja ativado para acesso Telnet.
Para obter mais informações sobre os comandos bandwidth e priority, consulte Comparando os comandos bandwidth e priority de uma política de serviços de QoS.
Habilite LLQ, aplica o mapa de políticas à interface de saída WAN.
Use estes comandos para ativar o 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.
Se você não usar LLQ, use estas diretrizes:
Router(config-map-class)#frame-relay ip rtp priority starting-rtp-port port-range bandwidth
start-rtp-port — O número da porta UDP inicial. O número de porta mais baixo para o qual os pacotes são enviados. Para VoIP, defina esse valor como 16384.
port-range—A faixa de portas de UDP de destino. O número, adicionado à porta de início-rtp, resulta no maior número de porta UDP. Para VoIP, defina esse valor como 16383.
bandwidth — largura de banda máxima permitida em kbps para a fila de prioridade. Defina esse número com base no número de chamadas simultâneas, adicionando a largura de banda de cada chamada por chamada suportada pelo sistema.
Configuração de exemplo:
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
Use estas diretrizes ao configurar a modelagem de tráfego para voz:
Não exceda o CIR do PVC.
Desative a modelagem adaptável do Frame Relay.
Define um valor baixo de Bc para que o Tc (intervalo de modelagem) seja de 10 ms (Tc = Bc/CIR). Configure o valor Bc para forçar o valor Tc desejado.
Defina o Valor Be como 0.
Para obter mais informações sobre essas diretrizes, consulte Frame Relay Traffic Shaping for VoIP and VoFR.
Observação: alguns clientes usam PVCs separados para dados e voz. Se você tiver dois PVCs separados e quiser intermitência no PVC de dados enquanto você permanecer na CIR ou abaixo dela para o PVC de voz, a qualidade de voz ainda sofrerá, pois esses PVCs usam a mesma interface física. Nesses casos, o provedor do Frame Relay, assim como o roteador, precisam priorizar o PVC de voz. Este último pode ser feito pelo PVC Interface Priority Queueing (PIPQ) disponível a partir do Cisco IOS Software Release 12.1(1)T.
Ative a fragmentação para os links de baixa velocidade (menos de 768 kbps). Defina o tamanho do fragmento para que os pacotes de voz não sejam fragmentados e não sofram um atraso de serialização superior a 20 ms. Defina o tamanho da fragmentação com base na menor velocidade de porta entre os roteadores. Por exemplo, se houver uma topologia de Frame Relay hub e spoke em que o hub tem uma velocidade T1 e os roteadores remotos têm velocidades de porta de 64 K, o tamanho da fragmentação precisará ser definido para a velocidade de 64 K em ambos os roteadores. Qualquer outro PVC que compartilhe a mesma interface física precisa configurar a fragmentação para o tamanho usado pelo PVC de voz. Use este gráfico para determinar os valores do tamanho da fragmentação.
Velocidade mais baixa de enlace no caminho | Tamanho de Fragmentação Recomendado (para Serialização em 10 ms) |
---|---|
56 Kbps | 70 bytes |
64 Kbps | 80 bytes |
128 Kbps | 160 bytes |
256 Kbps | 320 bytes |
512 Kbps | 640 bytes |
768 Kbps | 1000 bytes |
1536 Kbps | 1600 bytes |
Configuração de exemplo:
map-class frame-relay VoIPovFR !--- Some output is omitted. frame-relay fragment 80
Nota: Para 1536 Kbps, não é tecnicamente necessária nenhuma fragmentação. No entanto, a fragmentação é necessária para permitir que o sistema de enfileiramento FIFO duplo garanta a qualidade da voz. Um tamanho de fragmento de 1600 bytes habilita o FIFO duplo. No entanto, como 1600 bytes é mais alto que a unidade de transmissão máxima (MTU - Maximum Transmission Unit) típica de interface serial, pacotes de dados grandes não são fragmentados.
Este documento utiliza a configuração de rede mostrada neste diagrama:
Este documento utiliza as configurações mostradas aqui:
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 |
Esta seção fornece as informações para confirmar que sua configuração funciona adequadamente.
Determinados comandos show são suportados pela ferramenta Output Interpreter (clientes registrados somente). Isso permite que você veja uma análise da saída do comando show.
Esses comandos show e debug ajudam a verificar suas configurações de prioridade LLQ e IP RTP.
show policy-map interface serial interface# —Este comando é útil para exibir a operação de LLQ e quaisquer quedas no PQ. Para obter informações adicionais sobre os diversos campos nesse comando, consulte Entendendo os contadores de pacote na Saída show policy-map interface.
show policy-map policy_map_name Exibe as informações dobre a configuração do mapa de políticas.
show queue interface-type interface-number —Lista a configuração e as estatísticas de um enfileiramento justo para uma interface específica.
debug priority — Exibe eventos de PQ e mostra se o descarte ocorre nessa fila. Para obter mais informações, consulte Troubleshooting Quedas de Emissor com Priority Queuing.
show class-map class_name —Exibe informações sobre a configuração do mapa de classes.
show call ative voice — Verifica se há pacotes perdidos no nível DSP.
show frame-relay ip rtp header-compression —Exibe estatísticas de compactação de cabeçalho RTP.
Use estes comandos debug e show para verificar e solucionar problemas de configurações de fragmentação.
show frame-relay fragment — Exibe informações sobre a fragmentação do Frame Relay que ocorre no roteador Cisco.
debug frame-relay fragment — Exibe mensagens de evento ou de erro relacionadas à fragmentação do Frame Relay. É habilitado apenas no nível do PVC na interface selecionada.
Use estes comandos show para verificar e solucionar problemas das configurações do Frame Relay/Interface.
show traffic-shape queue interface —Exibe informações sobre os elementos enfileirados no nível VC data-link connection identifier (DLCI). Usado para verificar a operação da Prioridade RTP IP sobre Frame Relay. Quando o link está congestionado, os fluxos de voz são identificados com um peso de zero. Isso indica que o fluxo de voz usa o PQ. Veja o exemplo de saída aqui.
show traffic-shape — Exibe infs be infs como os valores configurados para Tc, Bc, Be e CIR. Veja o exemplo de saída.
show frame-relay pvc dlci-# —Exibe informações como parâmetros de modelagem de tráfego, valores de fragmentação e pacotes descartados. Veja o exemplo de saída. Consulte também Troubleshooting Frame Relay (Solucionando problemas de Frame Relay).
Um erro foi identificado em per VC LLQ, em que o PQ foi intensivamente vigiado mesmo quando não havia congestionamento na interface. Esse bug foi corrigido e agora os pacotes de voz não conformes são descartados somente se ocorrer congestionamento no VC. Isso torna o comportamento do LLQ por VC igual ao de outras interfaces que usam o LLQ. Esse comportamento foi alterado com o software Cisco IOS versão 12.2(3) e posterior.
Este é um exemplo de saída do comando show e debug usado para verificação e solução de problemas.
!--- 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.