在同一台计算机上进行数据传输 出现tcp错误56

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在同一台计算机上进行数据传输 出现tcp错误56相关的知识,希望对你有一定的参考价值。

在同一台电脑tcp传输实时视频信号 为什么还会有客户机出现错误56?

解决方案:
这种超时错误可能是由于错误地配置TCP/IP函数导致的,通常情况下只要正在接收数据,超时错误可以在没有损害的情况下清除。如果未收到数据,则下面有几个故障排除步骤可以尽量避免发生该错误。
如果使用特定的LabVIEW应用程序:
确保生成错误的VI正确设置了超时值。比如:使用HTTP客户端下的“GET.vi”从慢速服务器接收体量较大的字符串时,默认的10秒超时时间可能不够。
如果使用TCP/IP函数编写了可重入VI ,请尝试关闭可重入功能。因为可能会产生竞争状态,导致网络在写入或读取时变得忙碌从而发生超时。
超时错误可能是您的应用程序的预期行为。使用读取TCP数据函数接收数据时,TCP函数将在超时期间等待指定的字节数。如果该函数未收到足够的数字,它将返回收到的数据并显示错误56。有关清楚错误的详细信息,请参阅从错误簇中清除指定错误。
确保网络电缆已正确连接到每个系统,或已正确建立无线网络连接。
打开连接时,用IP地址代替域名来检查与域名服务器(DNS)相关的问题。示例:使用“http://74.125.224.72/”而不是“http://www.google.com”
您还可以尝试导航到工具(Tools)» 选项(Options)» VI服务器(VI Server),将*加入到机器访问列表(Machine Access List)中,方法是点击列表底部的添加(Add),在计算机名称/地址字段中输入*,并确保选择允许访问(Allow access)。但是这将授予所有机器访问终端的权限。
尝试使用ping命令访问相关网络设备,以验证设备是否仍处于连接并通信的状态。
关闭计算机上安装的所有防火墙和杀毒软件以确保没有端口被屏蔽。
确保两个设备位于同一子网上,并且具有相同的子网掩码。有关配置NI网络设备的更多信息,请参见NI MAX中连接到RT终端时出现“不一致的IP设置” 。
检查过多的本地网络流量是否降低了您的网络通信速度,并导致传输时间超出预期。
如果您正在使用FTP VI,请检查所使用的密码是否包含任何不可打印的字符或空格。
确保发送信息的VI正在运行。
如果通信部分放在子VI中,请尝试将其从子VI中取出,并查看它是否在子VI之外工作。
尝试使用LabVIEW范例查找器中的范例“Simple TCP.lvproj”。
如果使用循环重复读取和/或写入,请尝试在循环中插入等待函数 (大约200 ms)。

如果使用VeriStand:
尝试仅指定控制器设置来部署空白的系统定义(System Definition)。
确保在系统定义中指定了正确的IP地址和控制器系统。
确保网络电缆已正确连接到每个系统,或已正确建立无线网络连接。
如果可能,尝试在主机PC和RT终端之间用以太网连接直连。
尝试使用ping命令访问相关网络设备,以验证设备是否仍处于连接并通信状态。应尽量减少响应时间,以确保VeriStand有足够的时间来部署必需的依赖项,如自定义设备(Custom Devices)。
关闭主机上安装的所有防火墙和杀毒软件,确保没有端口被屏蔽。
确保两个设备位于同一子网上,并且具有相同的子网掩码。有关配置NI网络设备的更多信息,请参见NI MAX中连接到RT终端时出现“不一致的IP设置” 。
检查过多的本地网络流量是否降低了您的网络通信速度,并导致传输时间超出预期。

如果使用RT控制器VI:
确保连接到VI的MAC地址准确无误,并且格式正确。确保您的字符串控件或常量ID以十六进制格式显示数据,比如:0080 2F0A 14FF。如果您的字符串控件不是十六进制格式,请右键单击它并选择十六进制显示(Hex Display)。

如果在Open Suse 11.1上使用带有LabVIEW for Linux的“FTP传送文件.vi”或“等待TCP侦听器.vi”:
配置FTP传送文件.vi(FTP Put File.vi)以使用被动模式进行FTP传输。

使用数据包嗅探进行故障排除:
如果上述步骤无效,请使用数据包嗅探程序查看数据是否通过网络发送。比如第三方工具Wireshark可以帮助您查看数据是否到达。如果没有数据到达且您看到此错误,则发送方设备或网络出现问题。如果数据到达Wireshark,且您仍然看到此错误,那么很可能是您遇到防火墙问题或TCP函数使用出错。 Wireshark官网提供Wireshark下载,同时您可以将Capture Filters与Wireshark一起使用,限制数据包只和某一个特定IP地址传输。

此外,如果数据包成功发送到网络,但终端设备没有响应,则终端设备的网络适配器可能存在问题。
参考技术A TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。在任何一个物理网络中,各站点都有一个机器可识别的地址,该地址叫做物理地址.物理地址有两个特点:(1)物理地址的长度,格式等是物理网络技术的一部分,物理网络不同,物理地址也不同.

以上是关于在同一台计算机上进行数据传输 出现tcp错误56的主要内容,如果未能解决你的问题,请参考以下文章

在同一台计算机上的两个程序之间发送和接收 UDP 数据包

互联网连接但无法浏览

调用 pymssql.connect 时出现“类型‘NoneType’不可迭代”错误

create react native app expo无法连接在同一台计算机上的模拟器上运行

每台计算机上同一 Web 应用程序的不同 JavaScript 源导致错误:redirect_uri_mismatch

创建一个仅限本地的端口以在同一台计算机上的进程之间进行通信?