En este artículo se describe cómo solucionar problemas de optimización básica.
Las optimizaciones básicas de WAAS incluyen optimización de flujo TCP (TFO), eliminación de redundancia de datos (DRE) y compresión persistente Lempel-Ziv (LZ).
El número de conexiones TCP, su estado y disposición pueden dar una indicación del estado del sistema WAAS en una ubicación específica. Un sistema saludable mostrará un gran número de conexiones, con un porcentaje significativamente alto de estas cerradas normalmente. El comando show statistics fo detail proporciona una indicación del volumen, el estado y la disposición de las conexiones entre un dispositivo WAAS determinado y otros dispositivos en la red.
Puede ver las estadísticas globales de TFO utilizando el comando show statistics fo detail de la siguiente manera:
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 . . .
El campo Nº de conexiones activas informa del número de conexiones que se están optimizando actualmente.
En la sección Estadísticas del motor de políticas del resultado, la sección Recuentos de conexiones rechazadas muestra varias razones por las que se han rechazado las conexiones. El contador Límite de conexión informa el número de veces que se ha rechazado una conexión porque se ha superado el número máximo de conexiones optimizadas. Si ve un número alto aquí, debería buscar las condiciones de sobrecarga. Consulte el artículo Solución de problemas de condiciones de sobrecarga para obtener más información.
Además, la optimización de TFO para las conexiones que se envían desde otros AO porque no pueden optimizar el tráfico es manejada por el AO genérico, que está cubierto en el artículo Resolución de problemas del AO genérico.
Puede ver las estadísticas de conexión TFO usando el comando show statistics connection. Para obtener detalles sobre el uso de este comando, vea la sección "Verificación de las Conexiones TCP Optimizadas" en el artículo Solución de Problemas de Condiciones de Sobrecarga.
Cuando se espera la aceleración de la aplicación pero no se observa, verifique que se estén aplicando las optimizaciones apropiadas al flujo de tráfico y que la memoria caché DRE esté reduciendo el tamaño del tráfico optimizado adecuadamente.
Los mapas de motores de políticas para la optimización de DRE y LZ incluyen lo siguiente:
Diversas condiciones podrían hacer que DRE y/o LZ no se apliquen a una conexión, aunque esté configurada:
Nota: En todas las condiciones anteriores, el comando show statistics connection notificará la Aceleración de "TDL" para las conexiones donde esta era la política negociada. Si observa la cantidad de tráfico de derivación de DRE o LZ, se le dirá si se aplicaron las optimizaciones de DRE o LZ. Utilice el comando show statistics connection conn-id, como se describe más adelante, y observe los números de código DRE para ver si la proporción DRE o LZ está cerca del 0% y se omite la mayor parte del tráfico. Las tres primeras condiciones serán notificadas por el campo "Codificar derivación debido a" y las tres últimas condiciones son el resultado del patrón de datos de tráfico y se contabilizan en las relaciones DRE y LZ notificadas.
Puede ver las estadísticas de una conexión específica para determinar qué optimizaciones básicas se configuraron, negociaron con el par y se aplicaron mediante el comando show statistics connection conn-id. En primer lugar, deberá determinar el ID de conexión para una conexión determinada mediante el comando show statistics connection, de la siguiente manera:
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% <------
Encontrará los ID de conexión para cada conexión que se muestran al final del resultado. Para ver las estadísticas de una conexión específica, utilice el comando show statistics connection conn-id, de la siguiente manera:
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 . . .
Los campos Nombre de aplicación y Nombre del clasificador le indican la aplicación y el clasificador aplicados a esta conexión.
Las políticas de optimización se enumeran en la sección Detalles de la política. Si las políticas Configuradas y Aplicadas no coinciden, significa que ha configurado una política para este tipo de conexión, pero se ha aplicado una política diferente. Esto podría deberse a que el par se encuentra inactivo, mal configurado o sobrecargado. Verifique el WAE del par y su configuración.
La siguiente sección del resultado muestra las estadísticas relacionadas con el código o el descódigo de DRE, incluyendo el número de mensajes, cuántos tenían DRE aplicado, LZ aplicado o omitido DRE y 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 . . .
Las siguientes estadísticas se resaltan en el ejemplo anterior tanto para la codificación como para la descodificación:
Si ve una gran cantidad de tráfico de desvío, la proporción de compresión DRE será menor de lo esperado. Podría deberse al tráfico cifrado, a mensajes pequeños o a datos no compresibles de otro modo. Considere la posibilidad de ponerse en contacto con el TAC para obtener ayuda sobre la resolución de problemas.
Si ve una gran cantidad de tráfico de omisión de LZ, esto podría deberse a una gran cantidad de tráfico cifrado, que generalmente no es compresible.
Los números de latencia promedio pueden ser útiles para depurar un problema de rendimiento. Dependiendo de la plataforma, la latencia media de codificación y descodificación se encuentra normalmente en los dígitos únicos de ms. Si los usuarios experimentan un bajo rendimiento y uno o ambos de estos números son más altos, indica un problema con la codificación o la descodificación, generalmente en el lado con la latencia más alta.
Puede ser útil observar los datos de estadísticas DRE como los datos utilizables más antiguos, el tamaño de la memoria caché, el porcentaje de memoria caché utilizada, la memoria RAM de la tabla hash utilizada, etc., mediante el comando show statistics dre detail, como se indica a continuación:
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 . . .
Si no está viendo una compresión DRE significativa, podría ser porque la memoria caché DRE no se llena con suficientes datos. Verifique si la antigüedad de la memoria caché es corta y se utiliza menos del 100 por ciento de la memoria caché, lo que indicaría esta situación. La proporción de compresión debería mejorar a medida que la memoria caché se llene con más datos. Si se utiliza el 100% de la memoria caché y la antigüedad de la memoria caché es corta, indica que el dispositivo WAE puede tener un tamaño inferior al normal y no puede manejar el volumen de tráfico.
Si no ve una compresión DRE significativa, observe los contadores Nack/R-tx en la siguiente sección del resultado del 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 . . .
Los contadores Nacks y R-tx generalmente deben ser bajos en relación con el volumen de tráfico. Por ejemplo, aproximadamente 1 por cada 100 MB de tráfico original (no optimizado). Si observa recuentos significativamente mayores, podría indicar un problema de sincronización de caché de DRE. Utilice el comando clear cache dre para borrar la memoria caché DRE en todos los dispositivos, o póngase en contacto con el TAC.
Los contadores de razones de omisión de código informan el número de bytes omitidos debido a diversas razones. Esto puede ayudarle a determinar lo que está causando el tráfico de desvío (que no sea un patrón de datos no optimizable).
A veces es útil identificar los WAE de peer conectados y activos y observar las estadísticas de peer, lo que puede hacer con el comando show statistics peer dre de la siguiente manera:
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 . . .
Otro resultado de este comando muestra las estadísticas de codificación y descodificación similares a una conexión individual.