吞吐量与网络流量对应关系剖析-阿里云开发者社区

开发者社区> 科技小能手> 正文

吞吐量与网络流量对应关系剖析

简介:
+关注继续查看

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

首先我们明确一下概念

流量:是个含糊的词,它不是设备的指标术语,在这里既然是跟吞吐量做对比,我们把它理解为每秒钟流经某台设备的数据量(单位为bps

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

吞吐量的英文单词为throughput,中英文两个词起的都很贴切,through是穿过,通过的意思,从一头进去,另一头出去叫做通过,吞吐顾名思义:吞进去并吐出来。当我们把概念吃够之后就容易分析了。

大多数人对于流量和吞吐量的混淆来自于设备物理端口的全双工,假设一个物理端口是千兆全双工(每条线缆有两根线,各能同时跑1G的数据),一个端口能够传输的总数据量就是2G,那么真正的数据流量是否就是2G呢?

我们通过下图来分析一下:


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

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

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


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

假设一秒内,上行数据是200MSwitch2经过红色线发给Switch1Switch1经过蓝色线转发回Switch2 下行数据是800MSwitch2也是经过红色线转发给Switch1Switch1经过蓝色线转发回Switch2 这个时候上下行加起来是1G数据,而红色线和蓝色线上流经的数据都是200M+800M=1G,两根线也都占满。所以旁路方式,一个端口跑满了,只有1G的数据流量(也就是1G的吞吐量)。而不是像端口全双工那样计算起来是2G

 

原因是什么呢?

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

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

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

在现实中计算流量,显然不能把重复数据相加,最后我们可以得出结论,一台设备所能处理的吞吐量和一台设备每秒能处理的流量是一致的,二者可以等同。而把一台设备上所有端口上的进出数据加在一起当作设备所转发的流量是错误的。但是如果对于串接方式,看半边端口的进出总数据作为流量来计算应该是正确的,例如下联内网的端口把进出该端口的流量加起来,就是通过该台设备的总流量。

wyl


本文转自 virtualadc 51CTO博客,原文链接:http://blog.51cto.com/virtualadc/749788


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
探寻社交网络中的关系: 统计网络模型初探
http://chengjun.github.io/cn/2013/08/sna-book-chapter/ https://snap.
1095 0
怎么设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程
8482 0
【.Net MF网络开发板研究-03】获取雅虎天气(HttpClient示例)
在网络开发板上实现Http Client,获取雅虎网站的天气信息,并把这些信息在LCD上显示出来。
491 0
《计算机网络课程设计(第2版)》——1.2节计算机网络课程的实验教学与课程设计的关系
本节书摘来自华章社区《计算机网络课程设计(第2版)》一书中的第1章,第1.2节计算机网络课程的实验教学与课程设计的关系,作者:吴功宜 吴 英 ,更多章节内容可以访问云栖社区“华章社区”公众号查看
1296 0
深入Spring Boot:Spring Context的继承关系和影响
## 前言 对于一个简单的Spring boot应用,它的spring context是只会有一个。 * 非web spring boot应用,context是[`AnnotationConfigApplicationContext`](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/spring
1489 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载