Page 143 - Web性能权威指南
P. 143
表8-1:一个HTTP请求的延迟时间
3G 4G
控制面 200~2500 ms 50~100 ms
DNS 查询 200 ms 100 ms
TCP 握手 200 ms 100 ms
TLS 握手 200~400 ms 100~200 ms
HTTP 请求 200 ms 100 ms
总延迟 200~3500 ms 100~600 ms
就这还没有考虑服务器响应时间、响应大小呢,这些也需要几次往返,最多可能达
到 6 次。再乘以往返时间,那么 3G 网络的延迟可能长达数秒,4G 网络大约也要
半秒!
8.3.1 考虑RRC状态切换
如果移动设备已经空闲了几秒钟,那应该假设并预想第一个分组将会导致几百甚至
几千 ms 的额外 RRC 延迟。经验表明,4G 网络会增加 100 ms,3.5G+ 网络会增加
150~500 ms,而 3G 网络会增加 500~2500 ms 一次性的控制面的延迟。
7.3 节介绍的无线电资源控制器(RRC)是专门设计用来解决高耗电问题的。但在
保证电池使用时间的同时,各种计时器、计数器的存在,以及不同无线状态切换所
需的网络协商,也带来了额外的延迟和较低的吞吐量。然而,RRC 在移动网络中是
事实存在的,无法回避的。如果你想针对移动网络优化自己的应用,必须在设计时
就考虑到 RRC。
关于 RRC,以下是我们已经了解的一些常识:
• RRC 状态机因无线标准不同而不同;
• RRC 状态机由无线网络为每部设备分别管理;
• RRC 在必须传输数据时会切换到高功率状态;
• RRC 在网络配置的时间超出后会切换到低功率状态;
• (4G)LTE 状态切换可能花 10~100 ms;
• (4G)HSPA+ 状态切换与 LTE 相差无几;
• (3G)HSPA 和 CDMA 状态切换可能花几秒钟;
• 每次网络传输,无论数据多少,都会导致能量尾。
我们已经讨论了为什么对移动应用而言,节约用电是一个非常重要的目标。而且,
我们也重点介绍了间隙传输的低效率,它又是因 RRC 状态切换而超时直接导致的
结果。不过,还有一点需要注意:如果设备的无线模块已经空闲,那么在移动网络
移动网络的优化建议 | 127