Este artigo descreve como solucionar problemas de otimização básica.
As otimizações de WAAS básicas incluem otimização de fluxo TCP (TFO), eliminação de redundância de dados (DRE) e compressão persistente Lempel-Ziv (LZ).
O número de conexões TCP, seu status e disposição podem dar uma indicação da integridade do sistema WAAS em um local específico. Um sistema saudável mostrará um grande número de conexões, com uma porcentagem significativamente grande dessas fechadas normalmente. O comando show statistics for detail fornece uma indicação do volume, status e disposição das conexões entre um dispositivo WAAS específico e outros dispositivos na rede.
Você pode exibir estatísticas globais de TFO usando o comando show statistics for detail da seguinte maneira:
WAE# show statistics tfo detail Total number of connections : 2852 No. of active connections : 3 <-----Active connections No. of pending (to be accepted) connections : 0 No. of bypass connections : 711 No. of normal closed conns : 2702 No. of reset connections : 147 Socket write failure : 0 Socket read failure : 0 WAN socket close while waiting to write : 0 AO socket close while waiting to write : 2 WAN socket error close while waiting to read : 0 AO socket error close while waiting to read : 64 DRE decode failure : 0 DRE encode failure : 0 Connection init failure : 0 WAN socket unexpected close while waiting to read : 32 Exceeded maximum number of supported connections : 0 Buffer allocation or manipulation failed : 0 Peer received reset from end host : 49 DRE connection state out of sync : 0 Memory allocation failed for buffer heads : 0 Unoptimized packet received on optimized side : 0 Data buffer usages: Used size: 0 B, B-size: 0 B, B-num: 0 Cloned size: 0 B, B-size: 0 B, B-num: 0 Buffer Control: Encode size: 0 B, slow: 0, stop: 0 Decode size: 0 B, slow: 0, stop: 0 Scheduler: Queue Size: IO: 0, Semi-IO: 0, Non-IO: 0 Total Jobs: IO: 1151608, Semi-IO: 5511278, Non-IO: 3690931 Policy Engine Statistics ------------------------- Session timeouts: 0, Total timeouts: 0 Last keepalive received 00.5 Secs ago Last registration occurred 15:00:17:46.0 Days:Hours:Mins:Secs ago Hits: 7766, Update Released: 1088 Active Connections: 3, Completed Connections: 7183 Drops: 0 Rejected Connection Counts Due To: (Total: 0) Not Registered : 0, Keepalive Timeout : 0 No License : 0, Load Level : 0 Connection Limit : 0, Rate Limit : 0 <-----Connection limit overload Minimum TFO : 0, Resource Manager : 0 Global Config : 0, TFO Overload : 0 Server-Side : 0, DM Deny : 0 No DM Accept : 0 . . .
O campo Nº de conexões ativas relata o número de conexões que estão sendo otimizadas no momento.
Na seção Estatística do mecanismo de política da saída, a seção Contagens de conexão rejeitadas mostra vários motivos pelos quais as conexões foram rejeitadas. O contador de Limite de Conexão relata o número de vezes que uma conexão foi rejeitada porque o número máximo de conexões otimizadas foi excedido. Se vir um número alto aqui, você deve verificar as condições de sobrecarga. Consulte o artigo Troubleshooting de Condições de Sobrecarga para obter mais informações.
Além disso, a otimização de TFO para conexões removidas de outros AOs porque eles não podem otimizar o tráfego é tratada pelo AO genérico, que é abordado no artigo Troubleshooting the Generic AO.
Você pode exibir estatísticas da conexão TFO usando o comando show statistics connection. Para obter detalhes sobre como usar esse comando, consulte a seção "Verificando as conexões TCP otimizadas" no artigo Troubleshooting de Condições de Sobrecarga.
Quando a aceleração do aplicativo é esperada, mas não está sendo observada, verifique se as otimizações apropriadas estão sendo aplicadas ao fluxo de tráfego e se o cache DRE está reduzindo o tamanho do tráfego otimizado de forma adequada.
Os mapas de mecanismo de política para otimização de DRE e LZ incluem:
Várias condições podem fazer com que o DRE e/ou LZ não sejam aplicados a uma conexão, mesmo que esteja configurado:
Note: Em todas as condições acima, o comando show statistics connection reportará Aceleração de "TDL" para conexões em que essa era a política negociada. A análise da quantidade de tráfego de desvio de DRE ou LZ informará se as otimizações de DRE ou LZ foram realmente aplicadas. Use o comando show statistics connection conn-id, conforme descrito mais adiante, e examine os números de codificação de DRE para ver se a proporção de DRE ou LZ é próxima de 0% e a maior parte do tráfego é ignorada. As três primeiras condições serão relatadas pelo campo "Encode bypass due to" (Desvio de código devido a) e as três últimas condições resultam do padrão de dados de tráfego e são contabilizadas nas proporções de DRE e LZ relatadas.
Você pode exibir as estatísticas de uma conexão específica para determinar quais otimizações básicas foram configuradas, negociadas com o peer e aplicadas usando o comando show statistics connection conn-id. Primeiro, você precisará determinar a ID de conexão para uma conexão específica usando o comando show statistics connection, da seguinte forma:
WAE#show stat conn Current Active Optimized Flows: 1 Current Active Optimized TCP Plus Flows: 0 Current Active Optimized TCP Only Flows: 1 Current Active Optimized TCP Preposition Flows: 0 Current Active Auto-Discovery Flows: 0 Current Reserved Flows: 10 Current Active Pass-Through Flows: 0 Historical Flows: 375 D:DRE,L:LZ,T:TCP Optimization RR:Total Reduction Ratio A:AOIM,C:CIFS,E:EPM,G:GENERIC,H:HTTP,M:MAPI,N:NFS,S:SSL,V:VIDEO ConnID Source IP:Port Dest IP:Port PeerID Accel RR 343 10.10.10.10:3300 10.10.100.100:80 00:14:5e:84:24:5f T 00.0% <------
Você encontrará as IDs de conexão para cada conexão listada no final da saída. Para exibir as estatísticas de uma conexão específica, use o comando show statistics connection conn-id, da seguinte forma:
WAE# sh stat connection conn-id 343 Connection Id: 343 Peer Id: 00:14:5e:84:24:5f Connection Type: EXTERNAL CLIENT Start Time: Tue Jul 14 16:00:30 2009 Source IP Address: 10.10.10.10 Source Port Number: 3300 Destination IP Address: 10.10.100.100 Destination Port Number: 80 Application Name: Web <-----Application name Classifier Name: HTTP <-----Classifier name Map Name: basic Directed Mode: FALSE Preposition Flow: FALSE Policy Details: Configured: TCP_OPTIMIZE + DRE + LZ <-----Configured policy Derived: TCP_OPTIMIZE + DRE + LZ Peer: TCP_OPTIMIZE + DRE + LZ Negotiated: TCP_OPTIMIZE + DRE + LZ <-----Policy negotiated with peer Applied: TCP_OPTIMIZE + DRE + LZ <-----Applied policy . . .
Os campos Nome do aplicativo e Nome do classificador informam o aplicativo e o classificador aplicados a essa conexão.
As políticas de otimização estão listadas na seção Detalhes da política. Se as políticas configuradas e aplicadas não coincidirem, isso significa que você configurou uma política para esse tipo de conexão, mas uma política diferente foi aplicada. Isso pode resultar de o peer estar inoperante, configurado incorretamente ou sobrecarregado. Verifique o peer WAE e sua configuração.
A seção de saída a seguir mostra estatísticas relacionadas ao código/decodificação de DRE, incluindo o número de mensagens, quantos foram aplicados DRE, aplicados LZ ou ignorados DRE e LZ:
. . . DRE: 353 Conn-ID: 353 10.10.10.10:3304 -- 10.10.100.100:139 Peer No: 0 Status: Active ------------------------------------------------------------------------------ Open at 07/14/2009 16:04:30, Still active Encode: Overall: msg: 178, in: 36520 B, out: 8142 B, ratio: 77.71% <-----Overall compression DRE: msg: 1, in: 356 B, out: 379 B, ratio: 0.00% <-----DRE compression ratio DRE Bypass: msg: 178, in: 36164 B <-----DRE bypass LZ: msg: 178, in: 37869 B, out: 8142 B, ratio: 78.50% <-----LZ compression ratio LZ Bypass: msg: 0, in: 0 B <-----LZ bypass Avg latency: 0.335 ms Delayed msg: 0 <-----Avg latency Encode th-put: 598 KB/s <-----In 4.3.3 and earlier only Message size distribution: 0-1K=0% 1K-5K=0% 5K-15K=0% 15K-25K=0% 25K-40K=0% >40K=0% <-----In 4.3.3 and earlier only Decode: Overall: msg: 14448, in: 5511 KB, out: 420 MB, ratio: 98.72% <-----Overall compression DRE: msg: 14372, in: 5344 KB, out: 419 MB, ratio: 98.76% <-----DRE compression ratio DRE Bypass: msg: 14548, in: 882 KB <-----DRE bypass LZ: msg: 14369, in: 4891 KB, out: 5691 KB, ratio: 14.07% <-----LZ compression ratio LZ Bypass: msg: 79, in: 620 KB <-----LZ bypass Avg latency: 4.291 ms <-----Avg latency Decode th-put: 6946 KB/s <-----In 4.3.3 and earlier only Message size distribution: 0-1K=4% 1K-5K=12% 5K-15K=18% 15K-25K=9% 25K-40K=13% >40K=40% <-----Output from here in 4.3.3 and earlier only . . .
As estatísticas a seguir são destacadas no exemplo acima para codificação e decodificação:
Se você vir uma grande quantidade de tráfego de desvio, a taxa de compactação DRE será menor do que o esperado. Pode ser devido a tráfego criptografado, mensagens pequenas ou dados não compactáveis. Entre em contato com o TAC para obter mais ajuda na solução de problemas.
Se você vir uma grande quantidade de tráfego de desvio de LZ, isso pode ser devido a uma grande quantidade de tráfego criptografado, que geralmente não é compactável.
Os números médios de latência podem ser úteis para depurar um problema de throughput. Dependendo da plataforma, a latência média de codificação e decodificação geralmente está nos dígitos únicos de ms. Se os usuários experimentarem baixa taxa de transferência e um ou ambos esses números forem mais altos, isso indica um problema com a codificação ou decodificação, geralmente do lado com a latência mais alta.
Pode ser útil examinar os dados de estatísticas do DRE, como os dados utilizáveis mais antigos, o tamanho do cache, a porcentagem do cache usado, a RAM da tabela de hash usada e assim por diante, usando o comando show statistics dre detail, da seguinte forma:
WAE# sh stat dre detail Cache: Status: Usable, Oldest Data (age): 10h <-----Cache age Total usable disk size: 311295 MB, Used: 0.32% <-----Percent cache used Hash table RAM size: 1204 MB, Used: 0.00% <-----Output from here is in 4.3.3 and earlier only . . .
Se você não está vendo uma compactação DRE significativa, isso pode acontecer porque o cache DRE não está preenchido com dados suficientes. Verifique se o tempo de existência do cache é curto e se menos de 100% do cache é usado, o que indica essa situação. A taxa de compactação deve melhorar à medida que o cache é preenchido com mais dados. Se 100% do cache for usado e o tempo de existência do cache for curto, isso indica que o WAE pode estar subdimensionado e não conseguir lidar com o volume de tráfego.
Se você não estiver vendo uma compactação DRE significativa, examine os contadores Nack/R-tx na seguinte seção da saída do comando:
Connection details: Chunks: encoded 398832, decoded 269475, anchor(forced) 43917(9407) <-----In 4.3.3 and earlier only Total number of processed messges: 28229 <-----In 4.3.3 and earlier only num_used_block per msg: 0.053597 <-----In 4.3.3 and earlier only Ack: msg 18088, size 92509 B <-----In 4.3.3 and earlier only Encode bypass due to: <-----Encode bypass reasons remote cache initialization: messages: 1, size: 120 B last partial chunk: chunks: 482, size: 97011 B skipped frame header: messages: 5692, size: 703 KB Nacks: total 0 <-----Nacks R-tx: total 0 <-----Retransmits Encode LZ latency: 0.133 ms per msg Decode LZ latency: 0.096 ms per msg . . .
Os contadores Nacks e R-tx geralmente devem ser baixos em relação ao volume de tráfego. Por exemplo, cerca de 1 por 100 MB de tráfego original (não otimizado). Se você vir contagens significativamente mais altas, isso pode indicar um problema de sincronização do cache DRE. Use o comando clear cache dre para limpar o cache DRE em todos os dispositivos ou entre em contato com o TAC.
Os contadores de razão de desvio de código relatam o número de bytes ignorados devido a vários motivos. Isso pode ajudá-lo a determinar o que está causando tráfego de desvio (além de um padrão de dados não otimizado).
Às vezes, é útil identificar os WAEs de peer conectados e ativos e examinar as estatísticas de peer, o que você pode fazer com o comando show statistics peer dre da seguinte maneira:
WAE# sh stat peer dre Current number of connected peers: 1 Current number of active peers: 1 Current number of degrade peers: 0 Maximum number of connected peers: 1 Maximum number of active peers: 1 Maximum number of degraded peers: 0 Active peer details: Peer-No : 0 Context: 65027 Peer-ID : 00:14:5e:95:4a:b5 Hostname: wae7.example.com <-----Peer hostname ------------------------------------------------------------------------------ Cache: Used disk: 544 MB, Age: 14d23h <-----Peer cache details in 4.3.3 and earlier only Cache: Used disk: 544 MB <-----Peer cache details in 4.4.1 and later only Peer version: 0.4 <----- Ack-queue size: 38867 KB | Buffer surge control: |<---In 4.3.3 and earlier only Delay: avg-size 0 B, conn: 0, flush: 0 | Agg-ft: avg-size 20902 B, conn: 388, flush: 0 | remote low-buff: 0, received flush: 0 <----- Connections: Total (cumulative): 3226861, Active: 597 Concurrent Connections (Last 2 min): max 593, avg 575 . . .
Outra saída desse comando mostra as estatísticas de codificação e decodificação semelhantes a uma conexão individual.