SocketError | Socket错误码一览表(每一种错误码的故障排查建议)

在这里插入图片描述

Socket错误码一览表

文章目录

  • Socket错误码一览表
    • 前言
    • 错误码表

前言

在软件开发和网络通信编程中,SocketError算是一个绕不开的坎。它可能因为各种原因而来,比如网络问题、用户搞错了、应用程序出错等等。本文整理一张SocketError排查建议表格就是为了帮助我们在遇到这些问题时,能够快速找到原因并解决。
这份表格里列举了各种常见的Socket错误码以及对应的排查建议,通过这个表格,不仅能让新手快速对症下药,更轻松的找到问题的源头并解决。

错误码表

错误ID英文名中文名描述排查建议
10013AccessDenied访问被拒绝已试图通过被其访问权限禁止的方式访问 Socket。检查程序是否有足够的权限来访问 Socket;检查防火墙设置;尝试以管理员身份运行程序。
10048AddressAlreadyInUse地址已在使用中通常,只允许使用地址一次。确保不同的应用程序或服务未使用相同的地址;尝试更改监听的端口。
10047AddressFamilyNotSupported不支持的地址族不支持指定的地址族。如果出现 IPv6 或 IPv4 地址族相关错误,请检查计算机是否安装了对应的 IPv6 或 IPv4 堆栈。
10049AddressNotAvailable地址不可用选定的 IP 地址在此上下文中无效。确保指定的 IP 地址是有效的、可用的;检查网络配置是否正确。
10037AlreadyInProgress操作进行中非阻止性 Socket 已有一个操作正在进行中。等待当前操作完成后再执行下一个操作;确保在每个 Socket 上只进行一个操作。
10053ConnectionAborted连接中止此连接由 .NET 或基础套接字提供程序中止。出现连接中止错误时,请尝试重新连接;检查连接是否被远程主机重置。
10061ConnectionRefused连接被拒绝远程主机正在主动拒绝连接。确保远程主机正在运行,并且端口未被阻止;检查远程主机的防火墙设置。
10054ConnectionReset连接被重置此连接由远程对等计算机重置。检查网络连接或通信是否稳定;尝试重新建立连接。
10039DestinationAddressRequired需要目标地址在对 Socket 的操作中省略了必需的地址。为 Socket 操作提供正确的目标地址;检查代码发送信息是否完整。
10101Disconnecting断开连接中正常关机正在进行中。等待断开连接完成后再进行下一步操作;确保关闭连接前已发送所有待发送的数据。
10014Fault故障基础套接字提供程序检测到无效的指针地址。检查代码中是否存在指针错误;确保指针地址有效;使用调试工具检查错误发生点。
10064HostDown主机已关闭由于远程主机被关闭,操作失败。检查远程主机是否正常运行;确保网络连接稳定;尝试在其他主机上进行操作。
11001HostNotFound主机未找到无法识别这种主机。检查主机名或 IP 地址是否拼写正确;确保主机名或 IP 地址有效;检查网络设置是否正确。
10065HostUnreachable主机不可访问没有到指定主机的网络路由。检查网络连接及路由设置;尝试连接到其他主机;联系网络管理员解决网络路由问题。
10036InProgress进行中阻止操作正在进行中。等待操作完成后再进行下一步操作;确保在每个 Socket 上只进行一个操作。
10004Interrupted已中断已取消阻止 Socket 调用的操作。在中断操作后重新进行操作;确认操作是否因为中断而失败。
10022InvalidArgument无效参数给 Socket 成员提供了一个无效参数。检查传递给 Socket 的参数是否正确;确保参数类型和值符合要求;查看文档获取正确的参数信息。
997IOPendingIO 挂起应用程序已启动一个无法立即完成的重叠操作。等待 IO 操作完成或报错后再进行其他操作;确认重叠操作是否正确启动。
10056IsConnected已连接Socket 已连接。在对已连接的 Socket 进行操作验证连接状态;检查网络连接是否正常稳定。
10040MessageSize数据报过长数据报太长。检查要发送或接收的数据报大小是否符合规定;尝试拆分数据报或增加接收缓冲区大小。
10050NetworkDown网络不可用网络不可用。检查网络连接及设置;确认网络是否正常运行;联系网络管理员解决网络连接问题。
10052NetworkReset网络重置应用程序尝试在已超时的连接上设置 KeepAlive。尝试重新建立连接或保持连接时考虑超时设置;确认网络连接及设置是否正常。
10051NetworkUnreachable网络不可达不存在到远程主机的路由。检查网络路由设置和连接;尝试连接到其他主机;联系网络管理员解决网络路由问题。
10055NoBufferSpaceAvailable没有可用缓冲区空间没有可用于 Socket 操作的可用缓冲区空间。检查程序是否频繁创建 Socket 导致缓冲区不足;调整和优化程序的缓冲区使用;考虑增加缓冲区大小。
11004NoData未找到数据在名称服务器上找不到请求的名称或 IP 地址。检查请求的名称或 IP 地址是否正确;确认 DNS 设置是否正确;尝试使用其他 DNS 服务器。
11003NoRecovery无法恢复错误错误不可恢复或找不到请求的数据库。尝试重新执行操作;联系服务提供商或数据中心解决错误;查找数据备份进行恢复或备用解决方案。
10057NotConnected未连接应用程序试图发送或接收数据,但是 Socket 未连接。在发送或接收数据前确保 Socket 已连接;检查连接状态并重新建立连接。
10093NotInitialized未初始化尚未初始化基础套接字提供程序。初始化基础套接字提供程序以确保后续操作正常进行;检查程序是否正确初始化网络套接字。
10038NotSocket非套接字对非套接字尝试 Socket 操作。确保对 Socket 操作前已创建合法的套接字;检查代码中是否意外传入了非套接字对象。
995OperationAborted操作被中止由于 Socket 已关闭,重叠的操作被中止。在操作中断错误发生后重新启动操作;检查 Socket 关闭状态及重叠操作连接状态。
10045OperationNotSupported不支持的操作协议族不支持地址族。确保使用正确的协议族和地址族进行操作;检查文档以获取支持的协议族和地址族信息。
10067ProcessLimit进程限制正在使用基础套接字提供程序的进程过多。确保过多的进程释放网络资源;考虑升级系统或扩展资源限制;优化程序利用资源。
10046ProtocolFamilyNotSupported协议族不支持地址族未实现或未配置协议族。确保协议族设置正确并已配置;尝试更改协议族或查看系统设置是否正常。
10043ProtocolNotSupported协议不支持未实现或未配置协议。检查协议配置是否正确;确定协议是否受支持或需要修改;查找更适合的协议进行通信。
10042ProtocolOption协议选项错误对 Socket 使用了未知、无效或不受支持的选项或级别。检查所用协议选项是否符合规定;可尝试重置 Socket 和协议选项;查找支持的协议选项进行设置。
10041ProtocolType协议类型错误此 Socket 的协议类型不正确。确保选择正确的协议类型配置 Socket;查看 Socket 文档以获取正确的协议类型信息。
10058Shutdown关闭连接发送或接收数据的请求未得到允许,因为 Socket 已被关闭。在关闭 Socket 前完成数据传输或接收;检查是否意外关闭了 Socket;确保关闭连接前已发送所有数据。
-1SocketErrorSocket 错误发生了未指定的 Socket 错误。检查其他具体的错误信息观察问题点;查找相关文档或技术支持了解更多错误细节。
10044SocketNotSupported不支持的套接字类型在此地址族中不存在对指定的套接字类型的支持。确认套接字类型是否正确选择;尝试更改套接字类型进行通信;考虑更适合的套接字类型。
0Success操作成功Socket 操作成功。检查连接及数据传输是否正常完成;确认操作结果符合预期;继续下一步操作。
10091SystemNotReady网络子系统不可用网络子系统不可用。检查系统网络子系统的状态;检查网络连接和服务是否正常运行;联系系统管理员解决网络子系统问题。
10060TimedOut连接超时连接尝试超时,或者连接的主机没有响应。确保网络连接及目标主机正常运行;考虑增加连接超时时间;尝试使用其他网络或主机进行连接。
10024TooManyOpenSockets打开 Socket 过多基础套接字提供程序中打开的套接字太多。关闭不必要的 Socket 连接;检查代码循环内是否频繁打开 Socket;优化程序资源使用。
11002TryAgain请稍后重试无法解析主机名。等待一段时间后重新尝试解析主机名;检查主机名是否正确拼写;确认网络连接是否正常。
10109TypeNotFound类型未找到未找到指定的类。确保指定的类存在并正确导入;查看代码是否正确提供类型;检查类或库是否被正确引用。
10092VersionNotSupported版本不支持基础套接字提供程序的版本超出范围。确保程序使用的套接字提供程序版本与系统兼容;升级套接字提供程序版本或调整程序匹配的版本。
10035WouldBlock资源暂时不可用对非阻止性套接字的操作不能立即完成。等待资源可用后再进行操作;积极处理非阻止套接字的返回错误;检查程序逻辑是否正确处理 Socket 状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2812051.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Superhuman 邮箱的替代方案是什么?

Superhuman是一个极好的人工智能工具在电子邮件助理领域。根据SimilarWeb的最新统计,它在全球网站排名中排名第21980位,月访问量为1751798。然而市场上还有许多其他优秀的选择。为了帮助您找到最适合您需求的解决方案,我们为您精心挑选了10种…

计算机操作系统(慕课版)第三章学习笔记

第三章 处理机调度与死锁 1.1 调度的层次 高级调度、低级调度和中级调度。 中级调度:在内存和外存对换区之间按照给定的原则和策略选择进程对换。 目的: 提高主存利用率,调节系统负荷进行程序的调试、检查和改正;当系统出现故障或…

vue + koa + 阿里云部署 + 宝塔:宝塔前后端部署

接上篇,我们已经完成了宝塔的基本配置,下面我们来看如何在宝塔中部署前后端 一、上传前后端代码文件 在www > wwwroot目录下创建了一个demo文件,用来存放前后端代码 进入demo中,点击上传 这里前端我用的打完包的 dist文件&am…

08_第八章 微头条项目开发(PostMan测试工具)

文章目录 第八章 微头条项目开发一 项目简介1.1 微头条业务简介1.2 技术栈介绍1.3 功能展示 二 前端项目环境搭建三 后端项目环境搭建3.1 数据库准备3.2 MVC项目架构模式3.3 搭建项目3.3.1 创建WEB项目3.3.2 导入依赖3.3.3 准备包结构 3.5 准备工具类3.5.1 异步响应规范格式类3…

Jquery中的事件与动画

文章目录 前言一、pandas是什么?二、使用步骤 1.引入库2.读入数据总结 本章目标 使用常用简单事件制作网页特效使用鼠标事件制作主导航特效使用hover()方法制作下拉菜单特效使用鼠标事件及动画制作页面特效 一.Jquery事件概述 二.基础事件 鼠标事件 演示案例&…

.NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】

设计模式是软件工程中常用的解决特定问题的通用设计方法。它们提供了经过验证的解决方案,可用于解决在软件开发过程中经常遇到的一些常见问题。设计模式不是一种具体的编程语言特性或语法,而是一种通用的设计思想或模板,可以帮助开发人员设计…

如何在项目中考虑非功能需求

软件的非功能需求指的是除了软件的功能需求以外,软件需要满足的一些其他需求。常见的非功能需求包括: 性能需求:软件需要在特定的时间内完成特定的任务,例如响应时间、吞吐量等。可靠性需求:软件需要在各种环境下都能…

pclpy VoxelGrid 滤波器 (降体素化)

[TOC](pclpy VoxelGrid 滤波器 (降体素化)) 一、算法原理 使用体素化网格方法对点云数据集进行下采样(即减少点数)。VoxelGrid类。在输入点云数据上创建一个3D 体素网格(将体素网格视为空间中的一组微小的 3D 框)。然后在每个体…

RK3568平台开发系列讲解(基础篇)如何快速学习一套 Linux开发板源码

🚀返回专栏总目录 文章目录 一、基础代码二、驱动代码沉淀、分享、成长,让自己和他人都能有所收获!😄 拿到一份源码和一块评估板,如何快速找到与这块板相关的源码,是很多研发人员都曾遇到过的问题。如果对内核源码结构有大概了解,要完成这些事情也不难,通常可按照基础…

AVL树简介及其四种旋转

AVL树由二叉搜索树进化而来。在二叉搜索树中如果出现特殊情况:所有插入的数据均为有序,根据二叉搜索树的插入原理,其会退化为单枝斜向下的而二叉树,此时插入,查找,删除的效率也就退化成了O(n),效…

CUDA编程 - 用向量化访存优化 elementwise 核函数 - 学习记录

Cuda elementwise 一、简介1.1、ElementWise1.2、 float4 - 向量化访存 二、实践2.1、如何使用向量化访存2.2、Cuda elementwise - Add2.3、Cuda elementwise - Sigmoid2.3.1、简单的 Sigmoid 函数2.3.2、ElementWise Sigmoid float4(向量化访存) 2.4、C…

js里面有引用传递吗?

一:什么是引用传递 引用传递是相对于值传递的。那什么是值传递呢?值传递就是在传递过程中再复制一份,然后再赋值给变量,例如: let a 2; let b a;在这个代码中,let b a; 就是一个值传递,首先…

从零开始学Spring Boot系列-Hello World

欢迎来到从零开始学Spring Boot的旅程!我们将从一个非常基础但重要的示例开始:创建一个简单的Spring Boot应用程序,并输出“Hello World”。 1. 环境准备 首先,确保你的开发环境已经安装了以下工具: Java Development …

读人工不智能:计算机如何误解世界笔记04_数据新闻学

1. 计算化和数据化的变革 1.1. 每一个领域都在进行计算化和数据化的变革 1.1.1. 出现了计算社会科学、计算生物学、计算化学或其他数字人文学科 1.1.2. 生活已走向计算化,人们却一点也没有变 1.2. 在如今的计算化和数据化世界中,调查性新闻的实践必须…

掌握ChatGPT润色绝技:什么是人工智能写作以及如何使用它来完成写作任务

如对AI写论文感兴趣,欢迎添加作者wx讨论 : ryan_2982 人工智能 (AI) 的出现开创了技术进步的新时代,彻底改变了包括写作和内容创作在内的各个行业。人工智能写作和人工智能提示已成为可以简化和增强写作任务的强大工具。在这篇博文中,我们将…

2018-02-14 新闻内容爬虫【上学时做论文自己爬新闻数据,原谅我自己懒发的图片】

2018-02-14新闻内容爬虫【上学时做论文自己爬新闻数据,原谅我自己懒发的图片】资源-CSDN文库https://download.csdn.net/download/liuzhuchen/88878591爬虫过的站点: 1QQ新闻 1,准备爬取滚动新闻页面 2 通过F12 开发工具查找发现&#xff…

k8s节点负载使用情况分析命令kubectl describe node [node-name]

1.到任意安装了kubectl节点命令的节点上执行kubectl describe node [node-name] 上面的Requests最小分配 Limits最大分配是所有pod之和,最小分配之和不能超过服务器实际参数,否则新的pod会因为资源不够起不来,最大分配是预设之和&#xff0…

office word保存pdf高质量设置

1 采用第三方pdf功能生成 分辨率越大质量越好

leetcode(算法) 83.删除排序链表中的重复元素(python版)

需求 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 示例 1: 输入:head [1,1,2] 输出:[1,2] 示例 2: 输入:head [1,1,2,3,3] 输出&…

Android WebView访问网页+自动播放视频+自动全屏+切换横屏

一、引言 近期,我发现电视家、火星直播等在线看电视直播的软件都已倒闭,而我奶奶也再无法通过这些平台看电视了。她已六十多岁,快七十岁啦。这些平台的倒下对我来说其实没有多大的影响,但是对于文化不多的她而言,生活中…