AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

WebRTC vs. Zoom 之外:WebRTC 的弱网模拟测试(二)

  • 2019-11-30
  • 本文字数:1205 字

    阅读完需:约 4 分钟

WebRTC vs. Zoom 之外:WebRTC 的弱网模拟测试(二)

TC 的使用方法


做弱网测试基本是按照以下四个步骤:


  1. 设备连接 Wi-Fi 热点成功获取 IP 地址,假设为:192.168.3.101。

  2. 打开 Linux terminal,输入 TC 命令为发送端 IP 为 192.168.3.101 的设备添加网损。

  3. 此时手机即在弱网环境下运行。

  4. 测试完成后,输入 TC 命令取消弱网。


例如,你要是想限制 IP 地址为 192.168.3.101 的设备上行丢包 5%,那么需要运行如下命令:


1sudo tc qdisc add dev ifb0 root handle 1: prio bands 32sudo tc qdisc add dev eth1 ingress3sudo tc filter add dev eth1 parent ffff: protocol ip u32 match u32 0 0 flowid 1:1 action mirred egress redirect dev ifb04sudo tc qdisc add dev ifb0 parent 1:3 handle 30: netem loss 5 limit 10005sudo tc filter add dev ifb0 protocol ip parent 1:0 prio 3 u32 match ip src 192.168.3.101 flowid 1:3
复制代码


如果想要限制 IP 地址为 192.168.3.101 的设备下行丢包 20%,需要运行如下命令:


1sudo tc qdisc add dev eth1 root handle 1: prio bands 32sudo tc qdisc add dev eth1 parent 1:3 handle 30: netem loss 20 limit 10003sudo tc filter add dev eth1 protocol ip parent 1:0 prio 3 u32 match ip dst 192.168.3.101 flowid 1:3
复制代码


可以说 TC 框架可以实现很多场景,但前提是需要开发者们学会使用 TC 命令行。如果你想了解更多的 TC 命令,可以学习一下官方文档[4]。

Augmented Traffic Control(ATC)

ATC 其实是 Facebook 在 2015 年开源的一套网络测试工具。ATC 是基于 TC 的封装。


在部署好 ATC 弱网控制机后,在手机上通过 Web 界面就可以随时切换不同的网络环境。多个手机可以连接到同一个 Wi-Fi ,复用同一台弱网控制机,且多设备之间模拟的网络环境互不影响。也就是说,部署好这个测试工具后,团队里的任何人都可以通过 Web 自行测试,且互不干扰。


ATC 的部署方法相对复杂,但只要根据官方文档[5],就可以顺利完成搭建。按照官方文档完成搭建之后,大家还需要通过以下几行命令配置 HOST 地址,然后就可以启动运行了。


打开 Setting:


1vi atcui/atcui/settings
复制代码


添加 HOST 地址 :


1ALLOWED_HOSTS = ['*']
复制代码


启动命令:


1atcd --atcd-wan eth0 --atcd-lan eth1
复制代码


使用方法


  1. 设备接入对应 Wi-Fi

  2. 打开 http://192.168.3.1:8000 (假设 eth1 IP 地址为:192.168.3.1)

  3. 输入对应弱网参数后,点击按钮 [Update Shaping] 生效,该弱网仅对本机生效



测试完成后,点击按钮 [Turn Off] 清除弱网设置。


Network Link Conditioner(NLC)

可能有些 iOS 开发者已经认出来了。NLC 是苹果官方提供的网络模拟工具,支持安装在 macOS 和 iOS 上。

macOS 端安装

  • 打开 Xcode,选择 Xcode -> Open Developer Tool -> More Develop Tools。



  • 用苹果账号登录网站,搜索 Additional Tools for Xcode,下载 Xcode 对应版本的 Additional Tools。



  • 打开下载的文件,在 Hardware 文件夹中双击 Network Link Conditioner 安装。 安装完成后,工具会在系统设置中的最后一排出现。



2019-11-30 22:311491

评论

发布
暂无评论
发现更多内容

解读丨海购新趋势下的跨境淘宝代购集运系统

tbapi

跨境电商 跨境进口 淘宝代购系统 反向海淘 跨境淘宝代购系统

有了淘宝商品详情实时数据接口,用户体验up up up!

tbapi

淘宝商品详情数据接口 淘宝API接口 淘宝商品详情接口 淘宝数据采集

CloudXR带来高质量XR效果呈现

3DCAT实时渲染

CLOUDXR 云化XR

云桌面跟桌面虚拟化有什么区别?如何选择

青椒云云电脑

云桌面 云电脑 云电脑平台

Python数据可视化神器——pyecharts教程(一)

霍格沃兹测试开发学社

免费云电脑能做什么?

青椒云云电脑

云桌面 云电脑

活动回顾 |观测云 AI Agent 探索实践

观测云

LLM

成本降低 90%,出海社交平台 Typing 基于 Databend 的大数据探索与实践

Databend

MES管理系统的生产模块与ERP有何差异

万界星空科技

ERP mes 万界星空科技 制造业工厂

Puppeteer实践:复杂的问题简单化

伤感汤姆布利柏

IDC:中国边缘计算市场快速增长,浪潮信息份额近半稳居第一

财见

Bonree ONE 2024春季正式版:革新智能运维,7 大功能亮点重磅发布

博睿数据

时序数据库 IoTDB 赋能上海电气国轩智慧储能运营云平台建设

Apache IoTDB

深入理解 FFmpeg:安装和使用指南

霍格沃兹测试开发学社

云桌面的应用场景,如何助力企业轻松上云

青椒云云电脑

云桌面 云电脑 云电脑平台

在线云电脑云桌面如何操作使用

青椒云云电脑

云桌面 云电脑 云电脑云桌面

数据治理的难题:如何化解?

郑州埃文科技

掌握Python中的系统监控与管理:使用psutil库

霍格沃兹测试开发学社

Pandas read_csv 参数详解

霍格沃兹测试开发学社

如何在MySQL 中更改数据的前几位数字?

霍格沃兹测试开发学社

KaiwuDB 参编的《分析型数据库技术要求》标准正式发布

KaiwuDB

数据库 分析型数据库 数据库行业标准制定 数据库标准

神器!使用Python 轻松识别验证码

霍格沃兹测试开发学社

iPaaS中API自动化测试的作用

RestCloud

自动化测试 API ipaas

时序数据库 IoTDB 赋能上海电气国轩智慧储能运营云平台建设

Apache IoTDB

业内首家!火山引擎通过中国信通院超低延时直播性能卓越级评估

信通院IOMM数字化转型团队

IOMM

素材管理工具有哪些?这款图片整理软件好用到爆!

彭宏豪95

设计 在线白板 办公软件 素材中转站 图片素材管理软件

重磅更新:草料二维码容量调整,不再限制图片文件上传量

草料二维码

基于OceanBase+Flink CDC,云粒智慧实时数仓演进之路

Apache Flink

flink oceanbase 实时数据

WebRTC vs. Zoom 之外:WebRTC 的弱网模拟测试(二)_服务革新_声网_InfoQ精选文章