Portqry - Monitor de estados de puertos TCP/IP

Portqry.exe es un utilitario que informa sobre el estado de un puerto TCP/IP.

Este utilitario se puede descargar desde:

Para línea de comandos:
http://www.microsoft.com/downloads
/details.aspx?FamilyID=89811747-C74B-4638-A2D5-AC828BDC6983&displaylang=en













Interfaz Gráfica:
http://download.microsoft.com/download/3/f/4/3f4c6a54-65f0-4164-bdec-a3411ba24d3a/portqryui.exe


















Este utilitario informa el estado de puertos de tres formas distintas:

  • Listening
    Hay un proceso a la escucha en el puerto del equipo seleccionado. Portqry.exe recibió una respuesta desde el puerto.

  • Not Listening
    No hay ningún proceso a la escucha en el puerto de destino del sistema de destino. Portqry.exe recibió el mensaje "Destino inalcanzable: Puerto inaccesible" de Protocolo de mensajes de control de Internet (ICMP) para el puerto UDP de destino. O bien, si el puerto de destino es un puerto TCP, Portqry recibió un paquete de confirmación TCP con el indicador Reset.

  • Filtered
    El puerto del equipo que seleccionó tiene activado un filtro. Portqry.exe no recibió una respuesta desde el puerto. Es posible que haya un proceso a la escucha en el puerto. De manera predeterminada, los puertos TCP se consultan tres veces y los puertos UDP una antes de que el informe indique que el puerto tiene activado un filtro.
Portqry.exe puede consultar un solo puerto, una lista ordenada de puertos o un intervalo secuencial de puertos.

Ejemplos
El comando siguiente intenta resolver "reskit.com" como una dirección IP y, a continuación, consulta el puerto TCP 25 en el host correspondiente:

portqry -n www.mundoeva.com -p tcp -e 25
El comando siguiente intenta resolver "169.254.0.11" como un nombre de host y después consulta los puertos TCP 143, 110 y 25 (en ese orden) en el host que seleccionó. Este comando también crea un archivo de registro (Portqry.log) que contiene un registro del comando que ejecutó y su resultado.

portqry -n 169.254.0.11 -p tcp -o 143,110,25 -l portqry.log

El comando siguiente intenta resolver miServidor como una dirección IP y después consulta el intervalo especificado de puertos UDP (135-139) en orden secuencial en el host correspondiente. Este comando también crea un archivo de registro (miServidor.txt) que contiene un registro del comando que ejecutó y su resultado.


portqry -n miServidor -p udp -r 135:139 -l miServidor.txt

Este utilitario es una herramienta de utilidad y que debemos tener siempre en cuenta al momento de monitorear estados de puertos remotos.


Hugo Román Bernachea
Mail de contacto: SQLServer777@gmail.com

Microsoft Certified DBA
Microsoft Certified Trainer
Twitter: @bernachea

Read More...

FAIL_VIRTUAL_RESERVE - Insuficiente memoria para ejecutar el query.

Este es un problema relativo al Virtual Address Space (VAS).

Este mensaje FAIL_VIRTUAL_RESERVE 589824 significa (al menos lo que yo se) que estamos fallando en asignar espacio contiguo de alocacion de 589824 bytes aprox.

Generalmente la solución es agregar el switch o parametro de startup -g 512 y reiniciar el servicio, tal como indica microsoft: http://msdn.microsoft.com/en-us/library/ms190737.aspx

If este seteo no funcionara existen algunos otros puntos a mirar:

1. Estrategia de indices para mejorar la performance de los queries y disminuir los bloqueos.
2. Minimum y Max memory size. Dejarle algo de memoria libre para el sistema operativo, al menos medio gb.
3. Aplicar los ultimos service pack y patchs, para lo cual pueden comparar su versión y patchs aplicados con respecto a la ultima en http://www.sqlteam.com/article/sql-server-versions
4. Permisos de Lock Pages in Memory Permissions para el user que ejecuta el servicio sql server
http://www.tipandtrick.net/2008/enable-lock-pages-in-memory-to-prevent-database-paging-to-disk/
5. Chequear si las estadisticas están des-actualizadas.

Una muy buena explicacion de estos temas: http://blogs.msdn.com/b/sqlserverfaq/archive/2010/02/16/how-to-find-who-is-using-eating-up-the-virtual-address-space-on-your-sql-server.aspx

Hugo Román Bernachea
Mail de contacto: SQLServer777@gmail.com

Microsoft Certified DBA
Microsoft Certified Trainer
Twitter: @bernachea

Read More...