Capítulo: Otimização da solução de problemas

Este artigo descreve como solucionar problemas de otimização básica.

Conteúdo do guia

Artigo principal

Entendendo a arquitetura WAAS e o fluxo de tráfego

Solução de problemas de WAAS preliminar

Otimização da solução de problemas

Troubleshooting de Aceleração de Aplicativos

Troubleshooting do CIFS AO

Troubleshooting do HTTP AO

Troubleshooting do EPM AO

Troubleshooting de MAPI AO

Troubleshooting de NFS AO

Troubleshooting de SSL AO

Solução de problemas do AO do vídeo

Troubleshooting de AO Genérico

Troubleshooting de Condições de Sobrecarga

Troubleshooting de WCCP

Solução de problemas do AppNav

Solução de problemas de disco e hardware

Solução de problemas de clusters seriais em linha

Solução de problemas do vWAAS

Solução de problemas do WAAS Express

Troubleshooting de Integração de NAM

Contents

- 1 Troubleshooting de TFO

- 2 Solução de problemas de DRE

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).

Troubleshooting de TFO

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.

Solução de problemas de DRE

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:

- DRE + LZ (completo): policy-engine application map other otimize full

- Somente DRE: policy-engine application map other otimize DRE yes compression none

- Somente LZ: policy-engine application map other otimize DRE no compression LZ

- Passagem TFO: policy-engine application map other pass-through

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:

- A inicialização do cache está em andamento

- Erros de E/S de disco

- Memória insuficiente

- Os dados não são compactáveis ou o ganho é muito pequeno

- Os dados são criptografados de forma que não contenham sequências de bytes repetidos

- As mensagens são muito pequenas para se beneficiar da compactação

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:

- Taxa geral - a taxa de compactação geral para os dados incluindo DRE e LZ

- Taxa de DRE - a taxa de compactação devido apenas ao DRE

- Desvio de DRE - o número de mensagens e bytes que ignoraram o DRE

- Relação LZ - a taxa de compressão devido apenas a LZ

- Desvio de LZ - o número de mensagens e bytes que ignoraram LZ

- Latência média - a latência média para a operação de codificação ou 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.