Safire 知识库

在Safire ,吞吐量和良好的吞吐量都被衡量。

吞吐量是指数据穿越一条链路的速度(在线路上传输的总比特率)。

良好吞吐量是应用层的吞吐量,定义为应用层在客户端到服务器(上游)和服务器到客户端(下游)方向上每单位时间内传输的有用的应用数据量,不包括协议开销位以及重传的数据包。良好吞吐量总是低于吞吐量。

良好吞吐量和吞吐量之间的区别是,吞吐量是对流经一条链路的所有数据的测量,不管它是否是有用的数据,而良好吞吐量只关注有用的数据。吞吐量的测量,如路由器接口统计报告,不能区分流经接口的数据的性质--仅仅是比特的流逝。吞吐量与好的吞吐量不同,因为吞吐量可能包括不受欢迎的数据,如数据重传,或开销数据,如协议包装器。

在TCP/IP的情况下,重传的发生是因为TCP数据没有及时到达收件人那里。接收方用ACK向发送方发出信号,表示已收到数据。如果发送方没有收到一个数据块的预期ACK,它将重传该数据。重传是对带宽的浪费;同样的数据在一条链路上穿越两次绝对不是好产量的一部分。尽管发生重传的原因有很多,但它们经常发生在接口拥堵的时候。这意味着,虽然一个完全满员的接口已经最大化了它的吞吐量,但它很可能没有最大化它的良好吞吐量。事实上,接口上的数据量越大,重传的数量就越多。

除了重传之外,协议开销--数据包和帧头以及包裹在应用数据周围的其他数据--也被排除在良好吞吐量测量之外。虽然良好吞吐量不是网络设备提供的常见测量方法,但数据分析软件通常可以生成一个良好吞吐量。

导致良好产量低于吞吐量的因素:

  • 在拥挤的网络设备(如防火墙、交换机和路由器)中,由比特错误或丢包引起的丢失或损坏的数据包的重新传输。
  • 传输层流量控制和拥堵控制。
  • 协议开销:传输层、网络层和数据链路层的协议开销通常包括在吞吐量中,但不包括在良好吞吐量中。