《Web性能权威指南》-无线网络性能

78 阅读5分钟

第5章 无线网络概览

  • 5.1 无所不在的连接
  • 5.2 无线网络的类型
  • 5.3 无线网络的性能基础
  • 5.4 测量现实中的无线性能

第6章 Wi-Fi

  • 6.1 从以太网到无线局域网

共享信道,是设备间的自我控制,没有调度中心。

以太网使用“先听后说”:

  • 检查是否有人在发送
  • 信道忙,等待空闲
  • 信道空闲后,再发送数据

CSMA(Carrier Sense Multiple Access载波监听多路访问):依赖于概率访问的协议。

Wi-Fi使用

CSMA/CA冲突避免,即发送方在得到接收方确认空闲时才发送数据,避免冲突。

  • 6.2 Wi-Fi标准及功能
  • 6.3 测量和优化Wi-Fi性能

ping命令查看时延

  • 6.4 针对Wi-Fi的优化建议

    • 利用不计流量的带宽,4G链接=>Wi-Fi下
    • 适应可变带宽(利用连续测量技术,响应带宽变化,比如自适应比特流)
    • 自适应比特流(Netflix为适应不同的屏幕大小和可用带宽,为每个视频流都创建了超过120个版本)
    • 适应可变的延迟时间(高延迟敏感的应用,使用UDP传输的WebRTC,有助于降低协议和应用的导致的延迟)

第7章 移动网络

7.1 G字号移动网络简介

7.2 设备特性及能力

7.3 无线电资源控制器(RRC)——无线电网络的大脑

无线电资源控制器RRC,影响延迟、吞吐量和设备电池使用时间。

  • 为什么要有RRC

随时可通信=> 保持无线电收发开启=> 电池耗电/网络传输效率=> 移动端电池受限=> RRC控制谁什么时候通信,带宽多大,功率多少,以及监控设备电源状态等。

  • 权衡链接方式的考量

Wi-Fi:信号足够强时,通信效率更高

4G:设备空闲时,效率更高

为此,不同类型的链接动态切换的实现,产业界和学术界研究十分活跃。

  • 电池和功率管理,怎么影响性能呢?

信道高吞吐量 (需要)=> 信号功率高=>消耗的能量增多=>电池寿命减少

  • 停止无线电信号发射,断开链接,则重启链接时,需要一番信息交换延迟
  • 针对移动端在RRC状态切换,带来的耗电和延迟,有哪些优化措施?

● RRC状态机因无线标准不同而不同;

● RRC状态机由无线网络为每部设备分别管理;

● RRC在必须传输数据时会切换到高功率状态;

● RRC在网络配置的时间超出后会切换到低功率状态;

● (4G)LTE状态切换可能花10~100 ms;

● (4G)HSPA+状态切换与LTE相差无几;

● (3G)HSPA和CDMA状态切换可能花几秒钟;

● 每次网络传输,无论数据多少,都会导致能量尾

7.4 端到端的运营商架构

LTE网络架构:(简单、组件、依赖少,性能更好)

RAN(Radio Access Network无线接入网络)——RRC的控制和管理组件

EPC核心网路,负责数据路由、账户和策略管理。

7.5 移动网络中的分组流

  1. 请求延时时间
  • 控制面延迟
  • 用户名单向延迟
  • 核心网络延迟
  • 互联网路由延迟
  1. 入站响应请求延迟

7.6 异质网络(HetNet)

7.7 真实的3G、4G和Wi-Fi性能

需要综合考虑很多环境和技术因素

第8章 移动网络的优化建议

8.1 节约用电

Application Resource Optimizer(ARO,应用资源优化器),收集器只能在Android平台运行,而ARO分析器则可以接收任何常规的分组跟踪记录(pcap)文件,可以使用tcpdump或其他兼容工具生成;iOS用户可以使用tcpdump

8.2 消除周期性及无效的数据传输

  1. 推送

● 轮询在移动网络中代价极高,少用;

● 尽可能使用推送和通知;

● 出站和入站请求应该合并和汇总;

● 非关键性请求应该推迟到无线模块活动时进行。

  1. 合并多个TCP消息为一个分组

8.3 预测网络延迟上限

  • 考虑RRC延迟时间
  • 解耦用户交互和网络通信(添加动画、预先请求)

8.4 面对多网络接口并存的现实

8.5 爆发传输数据并转为空闲

尽可能多和快的下载数据,获得最大网络吞吐量和节省电量。

8.6 把负载转移到Wi-Fi网络

8.7 遵从协议和应用最佳实践

阶段总结

“本章主要讨论了移动网络物理层的独立性能,比如RRC的存在、电池使用时间的问题,以及移动网络中独有的路由延迟。在物理层之上,是我们前几章已经介绍过的传输和会话协议,针对它们的优化同样甚至更加重要:

● 2.5节“针对TCP的优化建议”;

● 3.3节“针对UDP的优化建议”;

● 4.7节“针对TLS的优化建议”。

通过重用持久连接、将服务器和数据部署到离客户端更近的地方、优化TLS部署,以及其他所有优化措施,对移动网络而言只会更加重要,因为移动网络的往返时间长,而带宽永远都很昂贵。

当然,我们的优化策略并不会止步于传输和会话协议,这两方面只是基础。从现在开始,我们还必须考虑不同应用协议(HTTP 1.0、1.1和2.0),以及通用Web应用开发最佳实践对性能的影响。