community.borland.com

Article #25789: Debugging TCP/IP protocol error messages

Problem:
I am getting a TCP/IP protocol error message like ECONNABORTED and I am unsure of the cause of the problem and how to diagnose it.


Solution:
Shown below is a listing of TCP/IP protocol error messages, and the possible causes and how to proceed in addressing the error.  The list of errors is not complete but should help with many TCP/IP errors that 
come up:

----------

error:  ECONNABORTED or WSAECONNABORTED  
error no: Winsock: 10053
              UNIX: see errno.h file

cause: The InterBase server may have been busy, and did not call the accept() function to receive an incoming connection in a timely manner.  

resolution: Have the InterBase client retry connecting to the InterBase Server.

----------

error: ECONNRESET or WSAECONNRESET
error no: Winsock: 10054
              UNIX: see errno.h file

cause: The socket that is the end point of the other connection is gone.  Either the InterBase server has crashed, or the application using the InterBase client has disconnected abnormally (the application may also have crashed).

resolution:  A new connection must be made.  The existing connection(s) can no longer be used.  If the InterBase server abnormally disconnected check the Interbase.log file on the server host machine.  If the InterBase client abnormally disconnected check the Interbase.log file on the client machine.  The Interbase.log does not initially exist, it is created after a connection or system error occurs.

----------
WSAENOBUFS (10055)  No buffer space available.
An operation on a socket could not be performed because the system
lacked sufficient buffer space or because a queue was full.
----------

error: ETIMEDOUT or WSAETIMEDOUT
error no: Winsock: 10060
               UNIX: see errno.h file

cause: The server host machine has crashed or has been powered off without a proper shutdown.

resolution: Restart the server host machine and retry connecting to InterBase.


cause: A network cable has become disconnected or severed from the server host machine.

resolution: Check the network cable.


cause: A network card may have become faulty.

resolution.  Reseat the network card or try a different network card.  It is beyond the capacity of InterBase 
Technical Services to provide support in this area.

----------

error: EHOSTUNREACHABLE or WSAEHOSTUNREACHABLE
error no: Winsock: 10065
              UNIX: see errno.h file

cause: An intermediate router has determined that the server host machine on the network was 
unreachable.  

resolution: Use Nslookup (Nslookup.exe on Windows 95/98/NT) to verify that the host was not found.  If the 
host was found retry the operation or application.  If not found check the machine.  If the the machine is OK 
then notify the network administrator.

----------

error: ENETUNREACHABLE or WSAENETUNREACHABLE
error no: Winsock: 10051
              UNIX: see errno.h file

cause: See EHOSTUNREACHABLE.

----------

error: NODATA or WSANO_DATA
error no: Winsock: 11004
                UNIX: see errno.h file

cause: This error usually occurs as part of an attempt by the InterBase client to connect to a database.  It 
can happen, but much less often, when the InterBase server receives a request to connect to a database.  
Before connecting the (Win)socket API function gethostbyname() is called to obtain further information on 
the server machine to be connected to.  This error indicates that the server name or the ip address of the 
server is valid, but there is no hosts file entry for the server that is found.

resolution: If DNS (Domain Name Services) is used, retry the connection.  DNS uses UDP, which is an 
unreliable, connectionless protocol to lookup information about the server machine on a DNS server 
machine.  This cause of the error should be very rare.  If this cause of the error is frequent contact your 
system administrator.

resolution: Check the hosts file on the DNS server machine.  The hosts file is a text file, and if say you were 
trying to connect to a server machine called "maui" that had an ip address of "131.140.150.60" then there 
would need to be an entry like so:

  131.140.150.60     maui

The hosts file can be found at this location on the hard disk:

UNIX: /etc/hosts
Windows NT: c:winntsystem32driversetchosts
Windows95/98: c:windowshosts

On UNIX systems only root or equivalent users will be able to modify the hosts file.  On Windows NT 
systems running the NTFS filesystem check the permissions of the file.

resolution: The hosts file entry given above can be added to the hosts file on the local machine to speed the 
lookup of data on the server machine.  This entry can be added in addition to adding the entry in the hosts 
file on the DNS server machine.

----------

error NO_ADDRESS or WSANO_ADDRESS
error no: Winsock: 11004
                UNIX: see errno.h file

cause: See NO_DATA

Last Modified: 28-SEP-00