性能分析 -- 吞吐量与流量的深度解析

文章目录

  • 1、前言
  • 2、概念:
  • 3、举例解析
    • 3.1、串接模式
          • 3.1.1、拓扑连线
          • 3.1.2、拓扑解释
    • 3.2、旁路接入模式
          • 3.2.1、拓扑连线
          • 3.2.2、拓扑解释
    • 3.3、直连模式
          • 3.3.1、拓扑连线
          • 3.3.2、拓扑解释
  • 4、总结:


1、前言

吞吐量是衡量网络设备每秒所能处理的网络流量的一个指标,而在现实中,网维人员常用流量这个词来衡量设备的性能,二者如何对应,困扰着很多人。

2、概念:

流量: 它不是设备的指标术语,我们把它理解为每秒钟流经某台设备的数据量(单位为bps)。

吞吐量: 吞吐量的英文单词为throughput。设备单位时间内能够处理(接受并转发出去)的最大数据速率(单位也为bps)。

3、举例解析

假设一个物理端口是千兆全双工(每条线缆有两根线,各能同时跑1G的数据),一个端口能够传输的总数据量就是2G,那么真正的数据流量是否就是2G呢?

3.1、串接模式

我们通过下图来分析一下:
性能分析 -- 吞吐量与流量的深度解析_第1张图片

3.1.1、拓扑连线

假设现在我们测试switch1的流量和吞吐量(为了简化,假设switch1只有两个端口),switch1是串接在网络中,各自用一个端口跟switch2和switch3相连(我们知道每个端口线缆内部是两根线),上行数据由switch2到switch1再到switch3,下行数据由switch3到switch1再到switch2。

3.1.2、拓扑解释

在某一秒的时间内,假设有1G数据如红色线方向从下联switch2这一端进入switch1设备并且从上联switch3一端出去,我们称为switch1处理了1G的数据(吞吐量1Gbps),同样也称为转发了1G的流量。

同一秒内,如果也有1G数据如蓝色线方向从上联switch3这一端进入switch1并且从下联switch2一端出去,所以switch1也处理了1Gps的数据(又是1G的吞吐量),向下转发了1G的流量。此时switch1的两个端口全双工已经用满了,但是我们可以看出吞吐量和流量的计算出来的都是2Gbps。

以上方式是串接,比较直观一点,我们再来看一下旁路接入,是否同样如此?

3.2、旁路接入模式

性能分析 -- 吞吐量与流量的深度解析_第2张图片

3.2.1、拓扑连线

Switch1旁挂在Switch2上,无论是上行数据还是下行数据都是从switch2发到switch1,然后switch1处理后发回给switch2。

3.2.2、拓扑解释

假设一秒内,上行数据是200M,Switch2经过红色线发给Switch1,Switch1经过蓝色线转发回Switch2, 下行数据是800M。

Switch2也是经过红色线转发给Switch1,Switch1经过蓝色线转发回Switch2, 这个时候上下行加起来是1G数据,而红色线和蓝色线上流经的数据都是200M+800M=1G,两根线也都占满。

所以旁路方式,一个端口跑满了,只有1G的数据流量(也就是1G的吞吐量)。而不是像端口全双工那样计算起来是2G。

原因是什么呢?

最根本的原因全双工端口线缆中两根线实际上跑的是同样的数据。

3.3、直连模式

3.3.1、拓扑连线

如下图右边所示,红色线和蓝色线是端口线缆中的两根线,1G数据从switch2经过红色线到达switch1,再经蓝色线从发出来,恰好占满了一个端口的全双工,而实际上两根线传输的是相同的内容,所以流量就是1G,吞吐量计算出来也是1Gbps。
性能分析 -- 吞吐量与流量的深度解析_第3张图片

3.3.2、拓扑解释

所以一个全双工的千兆端口,每秒钟实际传输的数据最多就是1G。(对于串接方式,我们从第一个图可以看出,1G数据在一秒内同时占用了端口1的一根线和端口2的一根线,两个全双工的千兆端口实际传输了2G数据)。


4、总结:

在现实中计算流量,显然不能把重复数据相加。
最后我们可以得出结论,一台设备所能处理的吞吐量和一台设备每秒能处理的流量是一致的,二者可以等同。


转自: https://blog.51cto.com/virtualadc/749788
谢谢点赞关注哈!

你可能感兴趣的:(性能分析及优化,linux,性能优化,ubuntu,系统安全)