2017全球未来网络发展峰会

创新合作共赢    引领未来发展

当前位置:嘉宾致词> > 分论坛一

《网络在低时延方面的研究》

编辑: 共浏览:577次

很高兴能有机会和大家一起在这儿交流一下,也是特别感谢胡老师和黄韬老师对我的邀请。其实在座的大家可能已经坚持了两天了,是不是坚持到第二天的下午,能够坚持到第二天下午的同志们,一定是最优秀,最积极主动的同志们。

其实我说刚才的这个报告,张老师的报告,我觉得那个报告是非常高大上的报告,告诉我们说究竟如何做研究。其实我想我在这里说的,也只能是说能够把刚才张老师说的各种理论的东西,我尝试着稍微做一点点应用,这个应用的背景就是现在云计算当中低时延网络当中如何去应用。

首先我自己有一些不成熟的想法来回顾一下,究竟网络是如何发展的,我自己的解说网络1.0的时代是我们以前TCP、IP或者是WWW的各种应用,互联互通,打造基础平台。2.0是大规模、海量用户接入网络,从1995年开始就说究竟我们IPV4不够了,我们要大规模发展网络了,这个怎么办呢?IPV6是一个重要的契机。再下一步又是什么呢?于是大家知道现在每天都拿着手机,无论是干什么都在拿着手机,对吧?所以手机究竟解决什么问题呢?实际上解决了泛载接入,随时随地的接入网络这样的问题。

如果说这是3.0的时代,4.0在哪里呢?我的理解,究竟带宽够不够大呢?我们国家现在有宽带中国一系列大的项目,与此同时,我们的运营商也不仅仅限于以前的中国联通、中国电信、中国移动这样的运营商,而像亚马逊等等也变成一个新兴的运营商了。

如果说这是互联网发展过去的一个历史,虽然不一定对。但是我们自然会想,究竟互联网向何处再进一步发展呢?这个问题其实一直在困扰着我自己。大家一直在说家里面的宽带要不要升级,要不要改造?其实想想光域网上100G光传输都已经了接入网上已经有了802.11和5G等等。趋势是更大带宽,更低的价格,包括华为的老总任正非前段时间也说华为已经进入无人区,进入深水区了。可是我们华为现在不能跟着思科干了,不能跟着NTAT去干了,我们要去创新,要去引领。网络的时延他也认为是一个问题,为什么会是一个问题呢?不仅仅是网络的规模扩大导致跳水不断增加,最后跳数增大的时候,时延会不会也增大呢?我想这只是一个表面的问题。更关键的是我们现在大量地使用云计算,有了云计算以后,我们很多的业务都会依赖于云端的基础架构,导致一来一回,这个延时自然会让我们变得更为敏感了。更不要说现在的云存储、大规模的视频直播,甚至是AR、VR这样的东西,让我们对网络的延时有了更进一步真切的感受。比如说我要戴个头盔的AR,你要是一转身一转头,你忽然间发现周围的场景根本没有变化,过了100毫秒终于周围的场景转过去了,你还会觉得这是一个真实的世界吗?你一定马上马上就会晕头转向的,马上就受不了了,是不是?所以说在AR的场景当中,不再说要求延时小于100毫秒,而是要求延时小于20毫秒。先把一个包存储下来,然后再转发,这些问题都是我们硬件处理问题,当然这些东西往往取决于芯片的处理技术,或者是如果中国到美国,这个光传输的速度,也是要研究的问题。

我理解更重要的延时出现在哪儿呢?更重要的延时出现在排队的队列延时上,也就是无论我们数据中心内部,还是数据中心之间,还是我们拿着手机去上网的时候,在我们家庭路由器的出口,还是上一节的汇聚路由器上,如果当你产生了排队的现象,这时候这个延时会变得忽然间大好几个数量级。换句话说,我们是不是有可能从网络架构的角度,来去改进这种排队的系统,让它尽量避免队列延时呢?此外像我们刚才说的这种云计算,有的这么多。你包括在手机上做一个输入,语音的输入,让它去识别一下。把你的语音先上载到云端,然后会再进行输入,你忽然觉得每天都延时好讨厌。

究竟这个卸载是让我们省事儿了,确实省了我们手机的CPU,或者是手机的存储。但是引入了延时,还是优化了延时呢?搞不清楚了,所以我们从这个角度来研究上层的应用又是如何去优化延时的。数据中心我们都知道,现在大家无论采用什么样的应用,数据中心如果它有延时,自然会影响到我们终端应用,影响到我们应用业务了。而数据中心延时这几年一直是我们研究的重中之重,包括从2008年开始这方面的文章是一批接着一批了。但是这有若干个问题我就不说了,但是核心问题还是说大量的测量表明,我们数据中心网络里面的这种拥塞产生的队列的排队,导致我们每一个人都是感觉民不聊生,痛苦的不得了,这种研究是不是改变了这个状态呢?我发现虽然这上面有一批的文章,但是这些研究并没有突破基本的问题,我们依然在采取固定的拓扑结构,像右边这一串依然是固定的拓扑结构。可能有的朋友会说研究这个有没有必要呢?我说你不要考虑这个问题了,刚才张老师说了每一个人都要研究现实的问题,现实的问题在哪儿呢?数据中心不是没事儿待在那些花花钱就结束了,而是要传输我们的流量。而流量的传输究竟有什么特点呢?我们发现流量的传输是非常不均衡的,一会儿这两个节点要传,一会儿那两个节点要传。

而这个不均衡的特性就导致我们不断地产生拥塞的热点,而这种拥塞的热点自然会造成排队的传输时间太长。我们再看看还有什么特点?它还是非常动态的。换句话说,一会儿这两个节点产生了热点,一会儿那两个节点产生热点。所以导致结果我们看到,我们数据中心的拓扑结构是对称的,无法解决这种不对称的流量产生的热点。而进一步,它也是固定的有线拓扑无法解决动态的流量的需求。我们要发现问题的本质是什么,本质是什么呢?本质就是我们固定的有线的对称拓扑,根本上就没有办法解决这种非对称的动态的流量的变化。如果有了这种本质的问题,我们自然就会去想如何能够解决它呢?至少这种无限的灵活性就会给我们解决这个本质问题提供一个可行的道路了。

当然这几年在国际最顶级的会议上出现了一批采用无线传输来解决这个问题的方案,数据衷心的这种最核心的带宽一般都达到百G了,你万兆带宽虽然它是灵活的,但是究竟是不是能够解决大用处呢?而且再进一步,无线信号容易别中间的设备所阻断。所以甚至有的人会想出干脆在天花板上铺上镜子,让我们的无线信号发射到天花板上再反射回来。我们在座的很多都是技术人员,他们说天花板上都是空调的各种各样架构,你根本无法动那个东西。

我们是不是有可能能够颠覆传统的架构,来去解决数据中心网络这种延时排队的问题呢?所以这时候我们就想说,究竟在这么封闭的空间当中,我们假设了那么多那么多无线信号,那么信号相互之间又产生冲突,怎么办呢?我们是不是可以设计一些空分复用,来减少无线干扰呢?我们和几个学生一拍脑袋说我们是不是可以把数据中心的机架不要一排一排地排列,我们按照一圈一圈的排列。于是有了一圈一圈的排列之后,下面是一个机架的俯瞰图。如果这两个机架在同一圈上,我们就可以让无线经过多次反射之后传输,当然这是一个非常脑洞大开的设想。但是不管怎么说,这样一个脑洞大开的设想,就解决了我们无线传输的相互之间信号冲突的问题。通过我们把每一个机架上的,大家都知道机架上有一个大玻璃门,我们把这个玻璃门变成一个反射屏,同一圈的机架就可以通过多次反射进行传输。

再一个,这么高的机架,你不要在机架顶端再采用一个无线信号,上面至少是百G了,所以机架顶端的无线信号只有百兆。每一个服务器都通过无线传输,通过这个高度仍然可以反射。我们的反射不要采用这个圆弧来反射,因为这个圆弧反射,实际上真正生产的时候,每一圈的圆弧的弧度是不同的,非常困难。所以我们把它变成平面化的反射,变成每一个平面板与平面板之间的反射,这样就避免了不一致的圆弧。

有了这样一个思路之后,说同一圈或者相邻圈的,我们都可以采用无线来反射了,这样有大量的无线反射,可以降低我们的带宽,或者是降低我们的时延了,不再采用传统的路由器和交换机在这儿。

但是我们还是有一些问题,比如说跨圈的传输好像非常困难,对吧?所以跨圈的传输怎么办呢?我们就采用一个骨架结构的设计,把不同圈的服务器连接在一起。通过这样的设计,我们就彻底颠覆了传统的数据中心网络的设计了,传统的数据中心网络,都是说我有限的链路是唯一的,或者包括什么国外的人在脑洞大开的情况下说既然有有线的链路,再加一点无线的吧。所以我想这个研究的思路,我觉得确实是按照刚才张老师说的,我们究竟是什么问题,数据中心网络实在是它的核心问题,你通过有线根本不能解决,那怎么办呢?于是我再采用无线,完全打破了传统的有线设计。

当然数据中心如果你在这么密闭的空间里面,加上几百个几千个天线,很显然相互之间的干扰是个问题。于是我们说在每一个反射镜面上,再采用吸收光波,吸收无线电波的材料把它吸收过来,只有在反射路径上,我们把这个反射材料再去除掉,这样就保证我们不会有那么多的干扰。像这个里面我们虽然采用定向天线,但是这个反射板也有20多度的夹角,我们再加进来吸收光波的材料,吸收无线电波的材料,这样就避免干扰。

通过大量的无线反射,实际上在我们上层链路上看出来,都相当于你一跳的传输,避免了多跳的这种拥塞或者是多跳的延时。这些成果也发表在NSAI,也是网络领域最顶级的期刊上。

围绕这些工作,我们后面还在开展一些其他的工作,就不说了。包括MIT一个教授也认为我们这是一个脑洞大开的一个代表性工作。包括微软的这位云计算部门主管认为我们这个工作让他对未来的无线网络的发展有了一个新的思路。

我们以前都把我们的数据存在哪儿呢?存在一些千奇百怪的过时的地方,现在都是把数据存在云端,自然我们需要把手机或者是我们的笔记本跟云端同步。同步这件事究竟重不重要呢?这个其实我们也是想,我们不管是做什么样的研究选题的时候,非常重要的一点。我们看到这些公司都纷纷抢占这个滩头,为什么他们抢占这个滩头呢?因为他们是在抢占我们大数据时代的互联网入口,也就是互联网的数据入口。所以包括像谷歌Bropbox,就是要代替微软的这套软件,所以谷歌Bropbox已经建立在云存储、云同步这个平台上了。我们会发现这个技术会变得将来最基础的应用,所以这时候我们会想,如何去提升它的传输效率呢?经常我们发现用这个软件照一张照片,手机上传了半天还没有解决,这个问题我们想把它解决一下。当我们想解决的时候,我们发现坏了,这是一个闭源的软件。这个时候解决这个问题非常困难,我们做一些背景的测量,比如说我们发现跟Bropbox相比,Seafile能够发现更多的冗余,可以传更少的数据。可是Seafile需要的时间反倒是变得更长了,这件事太不理解了,是吧?太奇怪了。所以究竟为什么呢?后来我们再仔细一想,其实这个道理很简单,你发现更多的冗余,这件事你是需要占用CPU时间的,天下没有免费的午餐,你花更多的CPU时间,发现了更多的冗余。但是如果你传输速度特别快,你一下过去,你还管它是不是冗余的数据呢。这个告诉我们将来一定不考虑传输的快不快了,特别是跟上层应用相结合的时候,你一定要考虑存储、计算和传输,我们要不要去协同优化呢?这恰巧也是刚才我们的嘉宾要讨论的问题。

当然我们还发现一些其他的问题,包括一个已经同步的20兆大文件,已经把它同步到了云端,结果你说前面我稍微加上一个2兆的小头,这个时候你想它这个传输同步协议就算设计得差一点儿,这时候你最多同步新产生的流量大概两三兆。可是我们发现,像Bropbox,虽然这些东西已经做得非常好了,但是当我们插入一个2兆的新的内容之后,它传输的流量达到了20多兆,整整差了一个数量级。这是为什么呢?当然我们后面进一步的有一些发现,比如说它把一个文件在真正传输之前要先进行分块,每4兆一块,每4兆一块,当你插入一个新的东西之后,它会把所有的打乱重新分块,所有之前的块它都已经顾不上了,反正我重新分块了。所以导致的结果就是我新的块跟你曾经已经同步好的块,已经失去了一个对应关系,失去了对应关系之后,导致的结果就是我只好把新的块,所有的块都要重新再传一遍,这时候你自然费力不讨好了。

围绕这样的问题,我们设计了自己的解决方案,就是快速的同步系统,快速同步系统最后设计完了之后,我们在亚马逊上,在Bropbox上都有一些测量实验。我们发现我们能够达到最好的数据量的同步减少80%,也就是减少80%的数据开销,同步时间也能减少到50%以上。所以这一工作当时也是在移动计算领域最顶级的会议上,引起了大家比较大的看法。

当然现在除了一个云之外,我们还考虑说数据中心的延时确实是非常不稳定的,一会儿大,一会儿小,怎么办呢?有没有可能我们把多个云协同起来呢?比如说我要同步信息的时候,发现这个云现在这一刹那比较慢了,赶紧我把数据同步到另一个比较快的云上呢?这也是我们正在讨论的一个工作。

其实非常重要的一点,是不是我们的工作能够与时俱进?举一个例子,我们都知道现在虽然把数据放在云上,但是我们回想我们在大学的时候学到的一个文件传输协议,那个传输协议叫什么?大家是不是还记得要FDP协议。可是现在的云同步协议,有没有用FDP呢?没有,非常简单,一个都没有。你要说得不客气点儿说,FDP已经死掉了,可是我们的文件真的都放在云上。是不是?所以这说明什么呢?说明我们曾经的东西好像非常类似,但是当这一件事真正发生的时候,已经绝对不再是我们曾经的那个ATM,曾经的FDP了,而是我们现在基于新型的传输协议,同样这样新型的传输协议究竟是不是应当做标准呢?当时我们做了之后ITF对这件事还非常重视,还专门请我们去做那个会议的唯一的一个报告,大家轰轰烈烈讨论了两个小时,说看来这个东西还是非常有价值的。当然除了像云存储这样的东西之外,其实我们应该更多地看一看像AR、VR这样的虚拟现实的东西,一些公司已经推出自己的东西了。可是在这里面竞争的不仅仅是我们传统的设备厂商,而是像微软这些传统的互联网企业,同样他们也推出了他们的VR的东西,对不对?所以我们看到究竟VR向哪儿发展呢?VR向哪儿发展?不光说我要高清,我要把我的延时降得足够的低,我的针数不断的增高。我有一个学生做了一个创业,比如说你一定要买超级显卡,超级CPU,才能把游戏弄起来,然后他做的创业是什么?我的桌子不要方头方脑的桌子,我手一按就改成什么美式田园风的家具,你看说好漂亮,现在我就可以开始付款了。但是你所有的一切都是连着绳子的,你走着走着看的时候就会发现被绳子绊倒了。这个绳子怎么能去掉呢?而且这样的绳子是非常反人类的一个工作,过去五年我们IT界最核心的变化是什么呢?我可以说是云计算,我们现在家里面PC机基本上都不开机了,你家里面玩一个VR一下,需要一个强大的PC机,这不是一个反人类的东西吗?

你能不能放到一个强大的云端来做这件事呢?不可以,很不幸,为什么呢?因为你的延时放在这儿呢。你的延时能达到20毫秒吗?这是一个传输大数据的延时。所以这件事确实搞不定了。所以围绕这样的延时,微软最近发表一篇文章,说究竟我们是不是能够把所有渲染的工作都放在云端上手机缓存下来呢?他们做了一个实验,说10分钟还是5分钟的一个小小的游戏,我需要先预先缓存起来好几个G的东西,这时候你说我今天还没想出来究竟要玩哪一个游戏呢,这时候网上有100个游戏,我先缓存下来几个T的东西放在手机上,再看看一会儿我玩哪个游戏吧,这个东西很显然不现实。MIT想出来一个超级好的办法,说我不要预先的缓存,怎么办呢?我只要把家里面四面八方的都装好60G赫兹的无线设备,这时候就可以达到传输速度了。60G赫兹你手随便往上一走,数据就挡住了,传输不过来了。所以你要加上反射镜,把绳子去掉,就可以保证VR了,这个延时就降低了。

我们最近正在做的一个研究,手机做一些简短的渲染,在云端做一些复杂的渲染,把延时特别小的东西放在手机上做渲染。于是我们很多渲染的大计算的业务都向云端下载了,同时手机这边可以做一些延时非常小的小规模的东西。当然在这里面如何减小背景的传输带宽,并提高传输效率呢?我们设计了基于全景图的新型编码方式,即便是你编码编出来之后,传输传过来了,可是你解码能不能在20毫秒内解码呢?这件事也是非常困难的。所以我们就设计了一些解码的方式。手就把天线位置挡住传不过来,所以家里面要假设放射性,于是把绳子去掉就可以延迟如何出现,究竟家里面能不能四面八方装好也非常困难。

我们最近正在尝试做一个工作,是不是能不能把动的长远前景静的场景连接,在云端做更复杂的渲染,延迟要求特别高的,特别延迟特别小的这些东西放在手机上渲染,于是这样我们就可以将VR很多的大量渲染大计算的向云端卸载了,同时人体能够做一些延迟非常小,20毫秒小规模的东西,当然在这里面如何减少背景传输带宽,我们基于新型的编码方式,编码过来了,能不能在20秒解码,最后这个东西不是我们自己清华大学做一个游戏,清华大学做不了游戏,我们只是做传输VR平台,将来使用这个平台,可以把VR放到云端,我们初步做一点点小的探讨,发现在AC网络下,现在设备都已经蛮大街都是,我们采用一般的手机可以达到每秒60针,所以这时候我们延时已经对手机完全够用了,这个工作还在进展,如果有兴趣可以进一步探讨,具体工作其实不重要的,关键还是像刚才张老师所说的,我们研究如何向下一步发展,核心就是延迟问题。

延迟的问题无论我们是不是通过改变结构,网络最核心有一些变化呢,就像前段时间讨论的时候大家都说,核心是什么呢?是排队产生的延迟,所以带宽不要钱,现在是不是能够做无附用的网络,我们无附用自然延迟就小了,但是如果你再进一步考虑到上层应用,他还有上层应用的需求,无论是计算还是存储,我们是不是能够跟带宽网络联合在一起,能够降低延迟或者提高用户满意率,这是我的报告,感谢大家!