来自移动设备的networking错误数据有多可靠?

我们刚刚开始为我们的iOS应用程序使用New Relic mobile,并且发现了networking错误的间歇性高峰。 错误列表包含一些自我解释的错误(不连接到互联网,超时,连接丢失)。 现在我正在对networking运营商的移动互联网性能(或缺乏)进行评估。 列表中较难解释的是找不到主机。 如果互联网服务不可靠,设备是否会遇到这个错误? 在这些峰值期间,我们的桌面网站(在同一台服务器上)不会出现任何相同的错误。 一般来说,我想知道如何从移动设备的networking错误数据可靠,他们是一个不太可靠的连接。

一个不可靠的networking连接可能导致应用程序报告cannot find host是合理的。

典型的networking通信从应用程序执行DNS查找开始。 如果设备认为networking连接已build立,但实际上没有数据包正在通过,则应用程序不会对第一次DNS查找得到任何响应。

从应用程序的适当反应将尝试几次,然后超时与错误消息。 在这一点上,有一些可能的错误条件可能最终产生所有条件相同的错误信息。 这些条件是:

  • 所有的数据包丢失,没有收到回复
  • 将返回错误答复,指示无法到达DNS服务器
  • 已达到DNS,但由于某种原因拒绝处理请求
  • DNS服务器处理请求,但域不存在
  • DNS服务器处理该请求,但该域没有指定types的logging。

如果您必须select一个覆盖上述所有内容的错误消息,则很难提供比cannot find host更具描述性的内容。

请记住,如果设备先前执行了DNS查找,则结果可能会被caching,在这种情况下,您可能会看到不同的错误。

如果您可以访问与产生错误消息的设备相同的设备,则可以在自己的控制下在networking上testing上述每个条件,以查看产生了哪个错误消息。