码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-05-08 19:56:19      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:

无论在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(循环次数可在调用方法中控制),计算平均延迟后得出的结果..

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

标签:

原文地址:http://www.cnblogs.com/sixindev/p/4488462.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!