让人欲罢不能的TCP

企业动态
大带宽=体验佳?笔者和大部分网络发烧友一样,一度把大带宽和体验佳之间是划等号的。而就在近日,经过一番研究后,发现一个让人惊讶不已的事实:其实对于大部分网站浏览的应用来说,超过几兆的网络连接对于性能体验只有很小的提升,而这点在无线网络环境下尤为明显。

大带宽=体验佳?笔者和大部分网络发烧友一样,一度把大带宽和体验佳之间是划等号的。而就在近日,经过一番研究后,发现一个让人惊讶不已的事实:其实对于大部分网站浏览的应用来说,超过几兆的网络连接对于性能体验只有很小的提升,而这点在无线网络环境下尤为明显。

究其背后原因,“罪魁祸首”竟然就是网络协议中大拿级协议---TCP,这个发现让人匪夷所思。何谓TCP,互联网为生的ICT人士多少还是有点了解的,类似日常生活中控制交通信号灯,控制着网络世界中报文的通行。TCP协议作为互联网上最重要的协议之一,Internet上90%的应用都是基于TCP协议来承载的,比如我们访问一个网页,下载一个应用,在线观看一个视频等等。那么,这么重要的协议怎么就成为“罪魁祸首”了呢?

让人欲罢不能的TCP

注:流媒体、网页浏览、Email、Filehosting和SNS业务基本都是基于TCP协议的,P2P和IM可以是基于TCP或UDP协议的。

原来,TCP协议最早是基于固定网络设计的,它的设计前提是假设网络上由于非拥塞(如传输误码)导致的丢包可能性远远小于1%,而这个要求就有点难为无线网络了,无线网络环境的小带宽、大时延、可移动性等特点,使得无线网络极易丢包,导致TCP协议在无线网络环境上的工作效率远不如固定网络。

那么,如何破?

首先要解决的就是“TCP慢启动”。在说到TCP慢启动之前,我们先来说一下“TCP三次握手”,TCP个性儒雅,在开始传输之前都要和对方先打声招呼,直到彼此都确认准备好了,方可以传输数据。但是一开始具体传多少是合适的呢?这就又引入了一个概念“拥塞窗口”,用来表示发送方在得到接收方确认前,***允许传输的未经确认的数据,其初始值往往比较小,然后随着数据包被接收方确认,窗口成倍扩大,窗口在不断地滑动调整。这就有点类似于拳击比赛,开始时不了解敌情,往往是次拳试探,慢慢心里有底了,便开始逐渐加大重拳进攻的力度。一旦协商到通信双方都能接收的***窗口后,便开始全速传输。

让人欲罢不能的TCP

这一切看似合情合理,但无线网络的空口干扰、移动性带来的问题,让这个过程就不那么美好了:滑动窗口并不会一直保持着规律增长。当我们在无线环境下浏览视频或者下载软件,这个过程的影响并不明显,因为传输的数据量大,时间比较长,相比之下,这段时间的影响基本可以忽略不计。但对于大部分网站浏览应用来说,情况就不一样了,因为传输的数据量比较小,时间比较短,相比之下,如果慢启动阶段耗时长,那么很可能还没来得及加速到满窗口,通讯就结束了。这就好比博尔特参加百米比赛,如果起跑慢的话,即便他的加速很快,也可能拿不到好成绩,因为还没等他完全跑起来,终点线已经到了。我们的带宽就这样被“消费”了。

那么具体如何解决?在全无线时代的今天,如何让我们的体验更好,让我们的带宽真正用在刀刃上?2015华为网络大会,欢迎前往移动改变生活展区,体验基于全可编程的ENP芯片研发的Wi-Fi加速算法带来的惊喜改变!

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

2017-03-06 15:36:56

数据可视化矩阵图

2015-11-10 11:30:32

2021-05-20 15:24:15

Windows 10Windows微软

2015-07-14 14:09:56

2015-04-20 10:04:22

苹果竞争对手

2016-08-25 10:30:34

测试Testin

2009-05-11 08:40:56

苹果iPhone移动OS

2016-10-20 08:57:17

网页ChromeIE

2010-01-18 09:13:06

MySQL创始人

2010-10-28 09:17:46

私有云

2011-10-20 10:42:54

LBS裁员

2020-08-13 10:01:48

首席信息官自动化CIO

2013-06-25 14:38:54

2024-05-24 08:31:49

服务器联网SSH

2022-04-20 07:52:01

HTTPTCPWireShark

2015-06-16 09:40:56

2016-08-29 22:23:07

2021-08-26 05:06:08

命令行工具Mac

2019-12-26 09:01:11

TCPIP三次握手

2021-08-09 14:33:18

物联网IOT
点赞
收藏

51CTO技术栈公众号