Networking 网络延迟及;计算机冻结

Networking 网络延迟及;计算机冻结,networking,timertask,timedelay,Networking,Timertask,Timedelay,有人知道我可以使用哪个应用程序记录或记录网络延迟吗?如果做不到这一点,编写这样一个程序是否可行 我为一家大公司工作,该公司最近部署了一个远程文件管理平台,这给我们分公司的员工带来了严重的生产力问题。我们直接工作到服务器,现在每次保存文件时,都会有明显的延迟(通常在5-15秒之间,但有时会一起超时)。一切都是非常无响应的&速度很慢,这使得人们避免如此频繁地保存文件,当崩溃发生时,相当多的工作会丢失 这些延迟不仅仅发生在保存操作上。在浏览网络文件结构时也会出现这种情况。每次文件夹跳转之间的2-3秒暂

有人知道我可以使用哪个应用程序记录或记录网络延迟吗?如果做不到这一点,编写这样一个程序是否可行

我为一家大公司工作,该公司最近部署了一个远程文件管理平台,这给我们分公司的员工带来了严重的生产力问题。我们直接工作到服务器,现在每次保存文件时,都会有明显的延迟(通常在5-15秒之间,但有时会一起超时)。一切都是非常无响应的&速度很慢,这使得人们避免如此频繁地保存文件,当崩溃发生时,相当多的工作会丢失

这些延迟不仅仅发生在保存操作上。在浏览网络文件结构时也会出现这种情况。每次文件夹跳转之间的2-3秒暂停/中断令人难以置信地沮丧,当你把它们全部加起来的时候,加起来会花费很多时间

因此,当这些延迟发生时,它会冻结系统的其余部分。单击屏幕上或其他应用程序上的任何位置都不会执行任何操作,直到延迟结束

我想做的是运行某种数据记录器,记录这些停机的累计持续时间。我们的想法是使用它一点,然后采取更高的问题与证据的百分比损失的时间,由于这个问题

我怀疑这个百分比对管理者来说是一个令人惊讶的百分比。他们似乎把头埋在沙子里,假装每天只花几分钟。根据我的粗略估计,我们应该谈论每天损失的小时(每位员工),而不是分钟/


任何建议都将不胜感激。

我不确定您的远程文件管理平台是如何工作的。在最简单的场景中,您可以直接在平台上访问文件,只需创建一个简单的脚本即可打开文件、导航文件系统并列出包含dir/文件的列表


如果是更复杂的问题,我建议使用wireshark之类的工具来捕获网络流量,过滤掉相关的数据包,并对它们的延迟进行一些分析。我不确定这是否可以直接在wireshark中完成,否则我建议将其导出为电子表格csv,并对其进行分析。

您可以检查流程是否有响应。只需修改另一个问题的答案,检查应用程序的名称(或者进程id,如果可能的话,使用C#API),并总结等待时间


这可能有点不精确,因为Windows会给进程一个宽限期,直到它声明它“没有响应”,但根据等待时间可能足以说明您的观点。

是否有任何特定的系统事件会触发Windows中的沙漏,然后如果您单击导致它的程序,它将标题更改为“不响应”。如果我能用一些触发器来启动和停止计时器,那就好了。我的意思是,我的第一个想法是在我的桌子上放一个物理秒表来手动计时,但从我的角度来看,基于软件的东西会容易得多。@user1241307看到我关于使用C#的另一个答案。所以当我完成了这项工作后,每秒创建一次这种过程的“ping”是否可行。然后,当它检测到一组“无响应”返回时,会执行以下操作:Counter=Counter+GracePeriod+(SumOfNotResponding),因此该程序将在每天早上启动时启动,并在关机时将结果(包括“总已用时间”值)附加到csv文件或类似文件中。然后在做了几周之后,我应该有一个csv表,有两列:“登录持续时间”和“时间损失”。如果这是可能的,那将是史诗般的我觉得这样行吗?是的,应该行。您可能也可以使用较小的时间间隔,比如100ms,而不会给CPU增加太多负载。这将稍微提高精度。计算延迟时,我不确定如何获得GracePeriod的值。可能很难获取此Windows内部值。你可以试着在没有它的情况下进行计算,看看它是否接近你认为的延迟时间。