ios_ping网络诊断
2017-10-12 本文已影响53人
Mark_大东
关于IOS-Ping
以下为SimplePing类的学习,仅做日常积累。
SimplePing作为苹果提供的工具类,如果不考虑内部原理,可以作如下工作,检测网络节点时候耗时严重,针对用户的分散性,即时ping节点,可以给用户同时相对良好的网络体验,同时对服务端的性能优化起到一定的作用。
- 苹果官方提供了ping代码,地址:https://developer.apple.com/library/content/samplecode/SimplePing/Introduction/Intro.html
- SimplePing的使用还是很简单的,初始化、传参数、根据代理返回节点是否ping通。
- 不过提供的代码只包括节点、域名是否ping通,没有包换节点、域名ping之后的耗时
- 当前获取ping节点耗时的方法如下:根据SimplePing代理的didSendPacket、didReceivePingResponsePacket两个方法然后根据时间戳的差值获取该节点的网络耗时。(该方法是根据github上面找到的源码看到的,根据应该会有更好的)。
- 对于网路节点的Ping来测试耗时的操作,一般的app是不会做的,对于检测网络性能的app会需要这些参数返回给用户,同时也会提供上行或者下行的网速。
- SimplePing是基于BSD Socket封装的类。
- 在didStartWithAddress方法里面需要调用 sendPingWithData。