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.