如果连接失败,则会返回错误,但是由系统绑定的地址保持不变。如果连接成功,则套接字与服务器关联,并且可以开始数据传送。
下表列出在连接尝试失败时返回的比较常见的错误。
表 7–1 套接字连接错误
套接字错误 |
错误说明 |
---|---|
ENOBUFS |
支持调用的可用内存不足。 |
EPROTONOSUPPORT |
请求未知协议。 |
EPROTOTYPE |
请求不支持的套接字类型。 |
ETIMEDOUT |
未在指定时间内建立连接。当目标主机关闭或由于丢失传输而导致网络问题时,会发生此错误。 |
ECONNREFUSED |
主机拒绝服务。当服务器进程未在请求地址中显示时,会发生此错误。 |
ENETDOWN 或 EHOSTDOWN |
这些错误是由底层通信接口传送的状态信息造成的。 |
ENETUNREACH 或 EHOSTUNREACH |
由于不存在到网络或主机的路由,因此可能会发生这些操作错误。这些错误还可能是由于中间网关或切换节点所返回的状态信息造成的。返回的状态信息并不总是足以区分网络故障和主机故障。 |