以动制动——网络“治堵”的灵丹妙药

企业动态
中国互联网络信息中心(CNNIC)于2019年8月发布的《中国互联网状况发展报告》显示,截至2019年6月中国网民规模已达到8.54亿,2019年1月到6月仅移动互联网接入流量就高达553.9亿GB,同比增长107.3%。

中国互联网络信息中心(CNNIC)于2019年8月发布的《中国互联网状况发展报告》显示,截至2019年6月中国网民规模已达到8.54亿,2019年1月到6月仅移动互联网接入流量就高达553.9亿GB,同比增长107.3%。除了巨大的流量压力和激增的网民数量,智能手机、平板电脑和笔记本等设备种类逐渐丰富;传统的浏览器和新兴的移动应用程序等各式浏览工具不断涌现;音频、视频、游戏、图片等不同内容形式层出不穷;移动蜂窝数据网络、固网、WiFi等“最后一公里”的网络技术发展并普及,整体网络环境变得极其复杂。但无论网络环境如何,普通终端用户只想快速地获取高清且流畅的内容。

这看似简单的需求背后,互联网内容提供商还要面对首帧时间、卡顿率、码率、时延、下载时长、多项任务同时进行时的优先级等针对不同交付内容的性能参数。要想在这样共享的环境中使每个终端用户都能够拥有一个高效率、高质量的体验,网络协议层面的优化必不可少。

拥塞控制,“治堵”关键

网络环境好比市政交通。只有少量行人时,道路永远畅通无阻。当越来越多的机动车、非机动车涌上街头,堵车现象随之而来,于是就需要能有效应对不同状况的交通规则来缓解交通压力。网络亦是如此,流量太大、“路况”太复杂势必会“堵”得水泄不通,而这个“堵”字用行话来讲就是“拥塞”,用来“治堵”的网络“交通规则”即是TCP(传输控制协议)拥塞控制算法。

目前,主流的TCP拥塞控制算法主要被划分为两大类:一是以Cubic、Reno为代表的基于丢包的算法,二是包括FastTCP和BBR在内的基于RTT(往返时间)/时延的算法。尽管不同TCP拥塞控制算法的具体运行机制有所差异,但都是通过对需要发送的数据量、拥塞窗口(cwnd)数值及接受窗口(rwnd)可接受的数据量三项参数进行衡量,以达到避免网络拥塞的目的。更进一步讲,采用TCP拥塞控制算法所能实现的理想效果是(如图一),通过算法猜测网络瓶颈在哪里,在达到瓶颈值之前尽可能多地发送数据,同时尽可能接近瓶颈上限而又不超过,而非发生拥塞后再做出反应。

以动制动——网络“治堵”的灵丹妙药

图一、TCP拥塞控制算法运行机制

然而,面对市面上的诸多选择,是否有一种TCP拥塞控制算法能够适用于所有的场景呢?

以一敌百,难以实现

问题的答案自然是否定的,而且Akamai对网络环境状况的监测结果也印证了这一点。Akamai在全球部署了分布最广泛且高度分散的内容交付网络(CDN),具备较高的对整体网络的可见性,Akamai在自身平台上部署了多种TCP拥塞控制算法,包括FastTCP、BBR、QDK、Cubic、Reno等。以Akamai在亚太地区某区域不同网络环境下的有效发包效率为例:

亚太地区某区域移动蜂窝网络的数据显示(如图二),当交付内容的大小在1M至3M之间时,平均有效发包效率TCP拥塞控制算法为QDK(18240.6kbps),比最低的FastTCP快约4.4Mbps,差异高达惊人的33%。使用FastTCP时,有超过半数情况有效发包效率在11940.0kbps以上;而使用Reno时,半数以上的情况有效发包率可达到16048.0kbps,远高于垫底的FastTCP。

而亚太地区相同区域固网的数据则呈现出另一番景象(如图三)。BBR的平均有效发包效率仅为20229.1kbps,是效率很低的TCP拥塞控制算法,而在移动蜂窝网络环境中不太“灵光”的FastTCP反而以22694.9kbps的平均有效发包效率,一跃成为了固网环境里的“优等生”。同时,对超过一半情况有效发包效率可以达到的数值进行比较,FastTCP依然以18618.4kbps保持领先。

以动制动——网络“治堵”的灵丹妙药

不难发现,每一种TCP拥塞控制算法都有最适合它的特定网络环境,没有一劳永逸的方法可以解决繁杂且庞大的网络中的所有问题。因此,如果固化地选用一种TCP拥塞控制算法,必然会出现一部分终端用户难以快速获得高清、流畅内容的情况;但终端用户又是挑剔的,对体验的追求不分时间、地点、内容和设备。面对如此难上加难的处境,互联网内容提供商自然不能束手就擒。

以动制动,应势而变

既然网络环境中的拥塞状况时刻处于动态的变化之中,试想如果能够根据实际的网络条件,自动选择出最适合的TCP拥塞控制算法,及时对症下药,难题也就可以迎刃而解。那么,这样动态的优化过程又该如何实现呢?

首先,依托一张能够交付大规模流量的内容交付网络,从中收集涵盖数据类型、网络类型、用户地理位置、网络时延、使用时间段等20个维度的海量数据,作为分析网络环境状况的原始素材。而要利用这些数据完成对网络流量和拥塞情况的分析,并识别出其中的细微差别和特点,依靠人工手段显然不现实,因此需要机器学习来助一臂之力。根据机器学习的分析结果,自动地从所部属的多种TCP拥塞控制算法中,选择出最适合当前终端用户所处网络环境的一种,从而使应势而变的动态选择成为现实。

当前,Akamai正在稳步推进以分析框架、机器学习、TCP拥塞控制算法工具库为主要构成的动态协议优化解决方案。凭借这套解决方案,Akamai期待不仅能够实现对网络使用体验的优化,更能够营造一个相对公平的网络使用环境。未来,Akamai仍将是互联网内容提供商在网络“治堵”道路上并肩同行、值得信赖的伙伴。

责任编辑:蓝雨泪 来源: 51CTO
相关推荐

2020-12-31 05:47:40

网格化网格通信

2018-11-19 15:44:48

2011-09-11 03:06:28

Windows 8Jupiterbuild

2019-10-09 08:38:25

区块链数字货币比特币

2022-11-02 16:17:49

6G

2020-07-14 09:25:49

COVID‑19隐私数据泄露

2012-06-25 10:20:22

敏捷开发

2020-11-04 10:23:21

云计算数字化转型IT基础设施

2023-06-13 12:12:44

2020-11-17 05:44:52

5G运营商网络

2022-11-15 11:01:48

物联网气候变化

2012-09-28 09:11:43

2022-02-10 09:00:00

数据仓库安全金融

2020-09-08 11:54:11

戴尔

2018-01-18 22:49:14

2014-12-30 18:13:37

2019-05-24 11:35:38

人工智能偏见企业

2020-05-09 10:47:49

软件定义技术数据中心网络

2019-10-09 10:04:05

软件定义技术数据中心SDS

2013-03-25 17:01:20

点赞
收藏

51CTO技术栈公众号