SQL Server registra el suceso 17832 con varias solicitudes de conexión TCP/IP

Seleccione idioma Seleccione idioma
Id. de artículo: 154628 - Ver los productos a los que se aplica este artículo
Importante: este artículo contiene información acerca de cómo modificar el Registro. Antes de modificar el Registro, asegúrese de hacer una copia de seguridad del mismo y de que sabe cómo restaurarlo si se produce algún problema. Para obtener más información acerca de cómo realizar una copia de seguridad, restaurar y modificar el Registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
256986 Definición del Registro de Microsoft Windows
Expandir todo | Contraer todo

Resumen

Si SQL Server recibe simultáneamente varias solicitudes de conexión TCP/IP, como es el caso en los servidores World Wide Web, las solicitudes son rechazadas rápidamente al responder con un marco de restablecimiento de TCP/IP.

Este síntoma es difícil de detectar. Si la aplicación cliente incluye control de código error, el código de error nativo es 10061 (WSAECONNREFUSED) para la función Open(). En el servidor, aparece el error 17832 "No se puede leer el paquete de inicio de sesión" en el registro de errores de SQL.

Si hace un seguimiento de este problema con un analizador de protocolo, puede ver que algunos de los marcos de solicitud de conexiones han sido respondidos con un conjunto de bits TCP Reset, que indica a la estación de envío que el marco ha sido recibido, pero el servidor no tiene recursos para procesar la solicitud de conexión..

Más información

Una aplicación Winsock acepta las conexiones en un puerto llamando a una función Listen(), que tiene un parámetro de trabajo acumulado que especifica la longitud máxima de la cola de conexión pendiente. La especificación Winsock define el registro máximo de Listen() en cinco; cuando excede de cinco, TCP/IP emite un Restablecer.

El trabajo acumulado para SQL Server se puede configurar para el control de un gran número de conexiones pendientes mediante la modificación del Registro de Windows NT. En algunos casos, la emisión del restablecimiento de la conexión se resolvió mediante la modificación.

Advertencia: pueden producirse problemas graves si modifica incorrectamente el Registro mediante el Editor del Registro o con cualquier otro método. Estos problemas pueden requerir que reinstale el sistema operativo. Microsoft no puede garantizar la solución de esos problemas. Modifique el Registro bajo su responsabilidad.
  1. Inicie el Editor del Registro (REGEDT32.EXE) y busque la siguiente subclave del Registro en el subárbol HKEY_LOCAL_MACHINE:
    \Software\Microsoft\MSSQLServer\MSSQLServer
    NOTAS:
    • La correspondiente subclave del Registro en el subárbol HKEY_LOCAL_MACHINE para SQL 4.21a es:
      \Software\Microsoft\SQLServer\Server
    • Si SQL Server 6.5 Enterprise Edition se está ejecutando con un servidor SQL virtual en un entorno agrupado, debe hacer el cambio a la clave de servidor virtual, en lugar de a la estándar:
      \Software\Microsoft\MSSQLServer\MSSQLServer
      Esta clave de servidor virtual es:
      \Software\Microsoft\MSSQLServer$VirtualServerName
      \MSSQLServer$VirtualServerName

      Nombre de valor: WinsockListenBacklog
      Tipo de datos: REG_DWORD
      Datos: 190
    • La nueva ubicación del Registro para SQL Server 2000 y para SQL Server 2005:

      Para una instancia predeterminada:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib
      Para una instancia con nombre:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\nombre_de_instancia\MSSQLServer\SuperSocketNetLib
  2. Elija la subclave MSSQLServer para SQL Server 6.5 y SQL Server 7.0; elija la subclave SuperSocketNetLib para SQL Server 2000 y para SQL Server 2005. En el menú Edición, haga clic en Agregar valor.
  3. Escriba lo siguiente:
    Nombre de valor: WinsockListenBacklog
    Tipo de datos: REG_DWORD
    Datos: El intervalo es de 1 a 0xFFFFFFFF
    NOTA: el valor de los datos afecta a los recursos generales de sistema si se establece en un valor alto. Windows NT 3.51 tiene un registro de trabajo acumulado máximo de 100 y Windows NT. 4.0 lo tiene de 200 para todas las aplicaciones. El método sugerido de comprobar este valor es configurarlo en incrementos de cinco y observar los resultados hasta que se detenga el restablecimiento de conexiones.
  4. Haga clic en Aceptar y salga del Editor del Registro.
  5. Reinicie SQL Server.
Para obtener más información acerca de la función Listen(), vea la referencia del programador del SDK de WIN32.

Para obtener más información acerca del parámetro del registro de trabajo acumulado y Windows NT, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
113576 Las aplicaciones WinSocket rechazan las solicitudes de conexión con marcos de restablecimiento
127144 Límite del parámetro de escucha WinSock (trabajo acumulado) de Windows NT

Propiedades

Id. de artículo: 154628 - Última revisión: lunes, 28 de enero de 2008 - Versión: 4.1
La información de este artículo se refiere a:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 6.5 Standard Edition
  • Microsoft SQL Server 6.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
Palabras clave: 
kbnetwork KB154628

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com