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

IOS应用网络数据包拦截之三 网络环境模拟软件Network Link Conditioner使用介绍

2016-08-24 15:01 681 查看

Network Link Conditioner

第一部分 Network Link Conditioner使用介绍

打开安装包文件后,双击Network Link Conditioner.prefPane文件



演示用例:通过控制网络环境,确保sip消息可以发送成功,但是无法接收到sip消息。

前提:将手机连接上电脑共享出来的wifi。

操作步骤:

a. 打开网络环境模拟软件Network Link Conditioner



b. 按照下图所示,点击按钮【Manager Profiles】



c. 在新展开的页面中(如下图),点击左下角加号按钮,添加自定义网络类型,命名为【SIP消息控制】,再点击【Create】按钮

d、如下图,设置网络下行带宽为40,丢包率0%,网络延迟1ms;设置上行带宽为0,丢包率100%,在点击【OK】按钮

e、打开网络开关,如下图,这时候就可以控制只能发送网络请求,无法收到网络数据了。在这种环境下只能发sip消息,无法收sip消息。(包括http请求也只能发,无法收到http返回数据)

f、需要正常测试时,将上图的网络开关置为OFF

第二部分:测试

测试场景:

扫一扫X1提供的i看家二维码,尝试建立手机账号和X1之间的i看见关联关系。

测试方式:

1、拦截由手机发出的建立i看见关联关系的sip消息,观察手机端页面状态

2、拦截由X1发给手机端的建立i看家关联关系成功的sip消息,观察手机端页面状态

注意:使用Network Link Conditioner模拟网络环境,不仅对手机设备生效,也会对Mac本的上网环境生效,不需要时请关闭网络环境开关按钮,就是上图红框内的按钮

测试步骤:

1、前提:确认手机是连接的WIFI是由Mac本共享出来的(共享网络设置请参看)

2、在偏好设置中打开网络环境模拟软件Network Link Conditioner



3、打开Network Link Conditioner后的页面如下。点击Manage Profiles,进入网络环境参数编辑窗口。



4、在新展开的页面中(如下图),点击左下角加号按钮,添加自定义网络类型,命名为【SIP消息-限制出口带宽】,再点击【Create】按钮



5、如下图,设置网络下行带宽为40,丢包率0%,网络延迟1ms;设置上行带宽为0,丢包率100%。



6、再按照同样的方式,新建一种网络环境类型【SIP消息-限制入口带宽】,参数设置如下图,设置完成后点击OK保存。



7、点击OK后回到控制页面,如下图。红框1内可以切换模拟的网络环境;红框2内开关按钮控制模拟的网络环境是否生效。



测试方式一 1、拦截由手机发出的建立i看见关联关系的sip消息,观察手机端页面状态

a、将手机连接到Mac本上启动手机中可视,保证页面正常进行到联系人列表页面,如下图



b、将模拟网络环境切换到【SIP消息-限制出口带宽】,并将网络开关打开,设置后的效果如下图



c、请先确定手机上是否已经删除了之前建立的关联关系,点击联系人列表页面上【扫一扫关联设备】,扫描x1上提供的i看见关联二维码。扫描成功后,手机联系人页面更新如下图,红框内是扫描二维码后新增加的关联设备。



d、查看客户端日志情况。

查看方式:保证手机通过usb连接到Mac本,打开Mac上的PP助手,参照下图1、2、3、4的步骤,打开可视应用文件目录。



e、打开应用目录后,如下图,层层打开文件夹,进入/Library/Caches/Log/AppLog 子目录下,该目录下面存放着应用的Log日志。



f、如下图,在日志文件上 右击->导出到本地,可以将日志文件导出到本地目录。如存放在桌面。



g、使用文本工具打开日志文件,比如用UitraEdit打开,搜索关键字【butel扫描到的二维码json】,定位文本内容如下图,箭头1指向,是扫描x1上i看家二维码得到的二维码信息内容;箭头2指向,是手机端向x1端发送建立i看家关联关系的sip消息内容。



h、稍微乡下详细浏览下日志内容,就可以看到由手机端发出的建立i看家关联关系的sip消息发送结果,如下图红框内日志。

测试过程中,我们模拟的网络环境是【SIP消息-限制出口带宽】,在这种环境下,sip消息应该是发送不出去的。但是因为sdk提供的sip消息发送接口是异步方法,应用层调用sdk提供的sip消息发送接口返回0,这种情况只能说明应用层调用sip消息发送接口成功,并不能保证sip消息已经成功发送给对方。

所以在手机端这边页面显示结果是,关联关系已经初步建立,但是还需要等待验证,也就是等待x1那边返回的建立成功或者失败的sip消息。



测试方式二 2、拦截由X1发给手机端的建立i看家关联关系成功的sip消息,观察手机端页面状态

a、将手机连接到Mac本上启动手机中可视,保证页面正常进行到联系人列表页面,如下图



b、将模拟网络环境切换到【SIP消息-限制入口带宽】,并将网络开关打开,设置后的效果如下图



c、请先确定手机上是否已经删除了之前建立的关联关系,点击联系人列表页面上【扫一扫关联设备】,扫描x1上提供的i看见关联二维码。扫描成功后,手机联系人页面更新如下图,红框内是扫描二维码后新增加的关联设备。



d、由于手机的入口带宽已经被限制为0,x1那边向服务器请求建立关联关系的结果通过sip消息发送给手机端,手机端无法接收到。请x1那边协调看下sip消息是否发送成功。

e、在确认x1那边的sip消息已经发送后,关闭Network Link Conditioner的网络开关。等待手机端在后台启动的定时器(每30s去服务端获取一次关联设备列表数据)获取数据成功,获取成功后,将会刷新联系人列表页显示。

页面具体变化是文本【等待验证】隐藏消失。这样,手机端和x1就成功建立了i看家关联关系。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios