首页 > 其他 > 详细

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

时间:2015-05-08 19:54:14      阅读:279      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!