HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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:311346

评论

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

企业知识管理常见的误区及解决方案

小炮

企业知识管理

OpenHarmony v3.1 Release版本发布

OpenHarmony开发者

OpenHarmony

架构训练营-模块一

哈喽

「架构实战营」

云效一站式DevOps平台

阿里云云效

云计算 阿里云 DevOps 云原生 云效

被Altair圈粉了!这款Python数据可视化库真香!

博文视点Broadview

数据产品经理实战-如何做方案

第519区

数据产品经理 解决方案

全方位讲解 Nebula Graph 索引原理和使用

NebulaGraph

索引 知识图谱 #数据库

Redis(一)原理与基本使用

神农写代码

最新太原市五家正规等保测评机构名单看这里!

行云管家

网络安全 等保 等保测评 太原 等保测评机构

社区动态|Apache Doris 社区喜迎新晋 PPMC & Committer

ApacheDoris

大数据 OLAP MPP apache doris apache 社区

Kube-OVN:大型银行技术团队推荐的金融级云原生网络方案

York

容器 云原生 金融科技 两地三中心 云原生网络

企业级项目协作工具 ,原来跨项目协作这么简单

阿里云云效

云计算 阿里云 项目管理 项目协作 项目协作工具

博文推荐|Apache Pulsar 轻装上阵:迈向轻 ZooKeeper 时代

Apache Pulsar

zookeeper 开源 云原生 pip Apache Pulsar

互联网裁员风暴的一些思考

慕枫技术笔记

3月月更

2022年中国智能支付终端市场专题分析

易观分析

数字人民币 智能支付终端

源声|听听赛博堡垒的锻造之路,以及云安全那些事儿

OpenTEKr

网络安全 软件开发 开源技术

【OH干货】给OpenHarmony 开发板配置网络

拓维信息

开源 OpenHarmony

6元共享24小时自助洗车加盟如何

共享电单车厂家

24小时共享自助洗车 6元自助洗车加盟

《假如你身处被“科技制裁”的俄罗斯》之数据库专家访谈 | 墨天轮专访

墨天轮

数据库 oracle 开源 国产数据库 MySQL 数据库

破解数据库内核人才困局:PingCAP 的思考与尝试丨Talent Plan 专访

PingCAP

Kubernetes官方java客户端之二:序列化和反序列化问题

程序员欣宸

Kubernetes java client

Linux环境,C/C++语言手写代码实现线程池

Linux服务器开发

c++ 线程池 Linux后台开发 服务端开发 线程池源码

Dcm4chee--MySql版Docker镜像制作

birdbro

Docker DCM4CHE

大数据培训-Spark深入理解RDD和关键角色

@零度

spark 大数据开发

NVIDIA 英伟达发布H100 GPU,水冷服务器适配在路上

GPU算力

打通源码!高效定位代码问题|云效工程师指北

阿里云云效

阿里云 源码 云原生 代码 代码管理

【多云管理】多云管理如何化繁为简提高效率?

行云管家

云计算 企业上云 多云管理 多云

自助洗车加盟需要投资多少?分析下

共享电单车厂家

自助洗车机 自助洗车加盟

数字资产管理系统解决方案

低代码小观

数字化 资产管理 企业管理系统 数字化经济 企业管理软件

汇聚创新力量 企业智能化转型开源社区“星策”正式成立

第四范式开发者社区

程序员 金融 开源社区 企业转型 企业数据化转型

研发数字化管理,如何打破“上班摸鱼下班加班”的怪圈

方云AI研发绩效

团队管理 研发管理 研发效能 数字化转型 研发管理工具

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