转自知乎
作者:寒深
链接:https://www.zhihu.com/question/41191652/answer/151164836

速率与带宽分别对标英文中的speed和network。

speed更多的是涉及物理概念,描述的是一个网络线路中硬件所能承载的最大的bit/s值。举个例子,一段网络电缆,根据其物理特性,speed最多也就是10Gbps。你可以这样想象,你站在一个管子的出口,在你面前不断地有一种叫做bit的生物跑出来,一会儿是0一会儿是1,它们“奔跑的速度”就是我们讲的speed。不同硬件技术可能会有不同的speed,比如无线网络的speed就会比电缆的speed小一点(可能吧,反正不同就是了)。

bandwidth更多涉及逻辑概念,描述的是你在一秒里面能接收到多少bit的数据。这里可能有人会觉得这跟speed好像听不出来什么区别,别急,我们还是举上面那个bit生物的例子。现在,你观察的不是一根管子,而是两个管子,这两个管子里面都不断的有bit生物跑出来。我们可以确信的是,它们“奔跑的速度”是不变的,因为生物还是那个生物,即speed不变。但是在一秒时间内,你看到的生物却多了一倍,因为现在是两根管子啊!bandwidth就是用来描述这个物理量。由此我们也能知道,bandwidth和speed的度量单位是一样的,都是比特每秒。

那么,有没有可能bandwidth会小于speed呢?这是有可能的。我们再举上面比特生物的例子。现在,有两种比特生物,一种是在黑漆漆的管子里开手电筒照明,让其余比特知道路怎么走,另一种是身上背着信息,从管子里跑出来之后把信息告诉你。由于管子太长,比特们决定每4个背着信息的比特前面都必须另外有一个比特专门负责照明。这样,从管子里每出来5个比特,实际上只有4个对你而言是有用的。此时,这条线路的bandwidth = speed * (4/5)。总结一下,就是bandwidth实际上是对于你而言这条线路里面有用的bit的传输速率。

此外,通过上面的讲述,你还会发现,假如你要从网络中接收一个很小的文件,小到只有一个bit,那么,此时对于你而言,bandwidth实际是没有多大意义的,你的接收快慢几乎仅取决于speed。但是,如果你想接收一个很大很大的文件,那么,bandwidth对于你完成接收的快慢就有至关重要的作用。

最后一点, 如上所述,因为speed是物理概念,讨论的是一段网络线路的物理极限,所以在现代所有网络技术的讨论中, speed通常是一个硬性条件,没有多少回旋的余地,很少有人会在这上面做文章,所以讨论speed的情况很少。更多时候,大家都是关心bandwidth。

版权声明:本文为cky-2907183182原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/cky-2907183182/articles/12011575.html