吞吐量和带宽差异?

时间:2014-06-16 14:51:43

标签: networking network-protocols

通道的吞吐量是实际通过通道移动的数据量的度量。为什么它大大低于通道的带宽?

10 个答案:

答案 0 :(得分:45)

带宽是可以通过'频道传输的最大数据量。

吞吐量是实际通过“通道”传输的数据量。成功。这可能受到大量不同事物的限制,包括延迟,以及您正在使用的协议。

答案 1 :(得分:40)

虽然但这些问题的答案已经很少但是我认为有些人仍然对实际可视化 差异有疑问b / w 吞吐量和带宽 就像我有;)直到我读到quora上的这个类比(完全信用),这证明真的很有帮助

<强>考虑

高速公路 容量移动,例如, 200辆车

<强>但

在一个随机的时间只有人注意到,比如说, 150辆车通过它......

说由于介于两者之间的交通拥堵......

即。

容量为200但不是所有时间都被充分利用,实际流量仅为最多200个中的150个。

带宽 每单位时间200 但实际吞吐量仍为150 ...

我认为这可能有助于某人...

答案 2 :(得分:16)

链路的带宽是可以通过该信道发送的理论最大数据量,而不考虑实际考虑因素。例如,您可以通过Cat-6e或光缆在千兆以太网链路上每秒泵送10 ^ 9位。不幸的是,这将是一个完全无格式的比特流。

为了使它实际有用,有一个帧序列的开始,它在任何实际数据位之前,在结束时用于错误检测的帧校验序列和在传输帧之间的空闲时段。所有这些都占据了所谓的“位时间”,意味着在线路上传输一位所需的时间。这是所有必要的开销,但是从链路的总带宽中减去。

这仅适用于将原始数据填充到线路上的最低级别协议。一旦开始添加MAC地址,IP标头和TCP或UDP标头,您就会增加更多的开销。

结帐http://en.wikipedia.org/wiki/Ethernet_frame。其他传输媒体存在类似的问题。

答案 3 :(得分:2)

  • 带宽 - 每单位时间的理论最大工作单位
  • 吞吐量 - 每单位时间的实际工作单位

与每单位工作的时间(速度/延迟)相反。

网络工程堆栈交换中的这个问题包含了很好的响应: https://networkengineering.stackexchange.com/questions/10504/what-is-the-difference-between-data-rate-and-latency

答案 4 :(得分:1)

类推考虑将水管作为通道。管道直径对应于带宽或容量,管道内容对应于吞吐量或用途。在下图中,我们可以看到三个管道(或通道),它们全部未被充分利用,因此,无需更大的管道就可以增加利用率。

Bandwidth vs. throughput

答案 5 :(得分:1)

这是另一个示例,可以帮助您想象根据情况而有所不同。

想象

  • 您有一个要与3个朋友共享的1 MB文件(例如照片)。
  • 但是,它们每个都使用不同的云存储应用程序-Google Drive,Microsoft OneDrive和Dropbox。因此,他们都创建了一个文件夹并授予您访问权限,因此您可以将文件上传到他们的文件夹中。
  • 您可以在浏览器中打开这三个文件夹的URL(在3个不同的选项卡中),然后将文件(或多或少地同时拖放)到每个选项卡上,以进行上传。
  • 您通过光纤电缆连接到Internet,该电缆使您能够以每秒1 Gb的速度传输(即,这是您的带宽-您可以利用的最大容量您的连接)。

了解到,理论上(假设没有数据丢失,没有大的协议开销,与云存储服务的连接至少提供了相同的带宽,等等),您可以通过1 Gbps连接,大约:1MB / 1 Gbps  = 1 x 10 ^ 3 x 8 / 1x10 ^ 9,这大约会带来8x10 ^ -6秒或大约10毫秒。现在,您有1个文件要上传到3个目标位置,连接带宽足够大,因此您可以同时将同一文件传输到3个目标位置(我们也可以假设您有一台配备多核功能的现代笔记本电脑CPU,因此可以通过3个连接并行传输数据到Google云端硬盘,MS OneDrive和Dropbox)。因此,不必等待30毫秒即可将同一文件传输到3个不同的目的地,您只需等待10毫秒即可,因为您的带宽非常好。

现在让我们考虑使用什么协议以及带来什么影响。当您使用浏览器上传文件时,正在使用的协议是运行在TCP协议之上的HTTP / S。 TCP协议的一个重要属性是确保在发送下一批数据之前,一批数据已成功到达任何目标。这是由TCP发送方在开始发送第二批数据之前等待确认(简称为 ACK )(已收到第一批数据)完成的。这意味着如果在一个方向上传输1批数据需要0.5秒钟,然后在0.5秒钟内接收到ACK,则您需要等待1秒,直到传输1批数据并成功确认已收到(再次) ,假设没有数据丢失,因此无需重新传输同一批次)。由于TCP协议需要进行这种往返,因此似乎有一个阻止程序。阻止程序是您一次往返的延迟,其中包括传输1批数据及其成功确认。考虑到这一点,我们需要查看一批数据有多大。这可以有所不同,但通常为64KB。因此,您到1个目的地(即吞吐量)的实际流量受此延迟(即等待时间)和批量大小的约束,公式如下:

throughput = batch size / latency

在我们的示例中,吞吐量为64KB / s,并且由于我们可以将1MB分成大约15.6批64KB大小,因此您将需要大约15.6秒的时间来传输1MB的文件。与我们之前进行的仅基于带宽的计算相比,这是一个严重的放缓。

答案 6 :(得分:1)

想象一下: 邮件卡车每次旅行可以携带5000张纸,因此带宽为5000。这是否意味着每次旅行可以携带5000张信?好吧,从理论上讲,如果每个字母都不需要信封来告诉我们它的来源,去向以及拥有付款证明(信封=协议页眉和页脚)。但是它们确实如此,因此每个字母(1张纸)都需要一个信封(=到大约1张纸)才能到达目的地。因此,在最坏的情况下(所有信封都只有一页纸),卡车将仅携带2500张吞吐量(我们要从来源>目的地发送的数据,信纸),并且将有2500张开销(页眉/页脚,我们需要从“来源”>“目的地”处获得这封信,但收件人将不会阅读,“信封”。吞吐量,2500个字母+开销,2500个信封=带宽,5000张纸。较大的字母(4页)仍只需要1个信封,这样可以将吞吐量与开销的比率提高(例如,巨型帧)并提高效率,因此,如果所有字母均为4页,则吞吐率将变为4000,并且开销将减少到1000,等于卡车的5000带宽。

答案 7 :(得分:0)

因为存在协议开销,并且因为网络中还有其他用户。

答案 8 :(得分:0)

在大多数情况下,“带宽”和“吞吐量”都很复杂;比如想在一天内学习微积分。在大多数情况下,当引用“带宽”和“吞吐量”时,没有必要这样做。

在大多数情况下你需要知道的是:

“MB”意味着巨型“BYTES”;或8位,8位和8位等;被送下线。 Mb意味着巨型“位”。或者一个比特,比特和比特等;下线。

示例:如果您的运营商说这是“6 Mb线”;这意味着这是最大带宽。更简洁地说,这意味着你每天只能获得750千字节的“吞吐量”。为什么?因为该行只发送一系列“位”,它使用8位/秒来创建一个字节。从而;你必须将bits / sec除以8才能得到字节/秒。因此:一条6Mb线路只能提供75万字节/秒。

另一个例子:我刚刚从A T&amp; A获得了一条光纤线路。吨;他们喜欢谈论“比特”。因此,他们宣传了一个惊人的“每秒100兆比特”。很重要。因为那只是12.5“MBytes /每秒。

请记住,键盘上的每个“字符”或印在屏幕上的等等都需要8位;为了另一端“区分”它是什么性格,等等。

所以即使我有一个被称为“100Mb”的“巨型”光纤线路;它实际上每秒只有12.5 MB(字符)(100除以8)。

更糟糕:MOST交换术语“MB”和“Mb”。更糟糕的是;即使在家中安装光纤线路和路由器的技术人员也不知道这些术语的含义。所以他想,他的同事(据他所说)也是这样认为的。 IE:那100Mb线路是100MB线路。这太可悲了。

T&amp;手机上的T代表很少知道差异。甚至他们的一些主管也不知道。甚至更伤心。

总结:“带宽”使用“位”。 “吞吐量”使用“字节”。并且......一个字节占用8位。再说一次:100Mb线路(带宽)只能产生12.5 MBytes / sec(吞吐量)。

无论它值多少钱。

答案 9 :(得分:0)

三个值表征传输介质的质量;带宽、吞吐量和延迟。

  1. 如上述帖子中所述,带宽是以每秒比特数 (bps) 为单位测量的介质的理论传输容量
  2. 吞吐量是每秒通过传输介质传输的实际比特数,再次以 bps 为单位。
  3. 延迟是端到端数据(位)传输所需的时间,通常以毫秒 (ms) 为单位