您的位置:首页 > 理论基础 > 计算机网络

利用ICMP协议的PING命令获取客户端当前网络质量 by徐文棋

2015-05-08 17:56 507 查看
无论在windows下,linux也好,unix也好,都可以通过 Ping命令获得当前设备的网络延迟,延迟是客户端到服务端的网络响应时间.通常延迟越低,反应速度越快

这里使用了SimplePing 时对其使用方法进行封装.

导入头文件

PingHelper.h

调用代码:

[PingHelper pingTo:@"127.0.0.1" withTimes:3 inBlock:^(NetworkQuality quality) {
switch (quality) {
case GOOD:
NSLog(@"网络不错");
break;
case NORMAL:
NSLog(@"网络一般");
break;
case BAD:
NSLog(@"网络好差");
break;
case UNUSEFUL:
NSLog(@"网络不可用");
break;
default:
break;
}
}];


封装好的类:http://files.cnblogs.com/files/sixindev/PingHelper.zip

调用代码中 127.0.0.1可以替换为应用接口的IP地址

PS:该功能是通过多次循环ping(循环次数可在调用方法中控制),计算平均延迟后得出的结果..
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: