首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >局域网中最大传输速度的计算

局域网中最大传输速度的计算
EN

Network Engineering用户
提问于 2017-09-19 10:18:00
回答 4查看 2.5K关注 0票数 0

我们在消费者和生产者服务器之间有一个局域网。生产者的产出路径已经在消费者中得到了提升。生产者和消费者之间有一个10千兆的开关,每个服务器(消费者或生产者)之间的链接是1G。每个使用者使用两个线程从随机服务器读取数据。

问题是消费者和生产者之间的最大转移速度是多少?现在我们的平均速度是3MB/S,这是最高速度吗?甚至是正常吗?

如果网络设计中存在缺陷,它是什么,我们如何才能使它更好?

EN

回答 4

Network Engineering用户

回答已采纳

发布于 2017-09-19 11:07:34

应用程序级别上的最大吞吐量稍微取决于所使用的传输协议-- UDP增加8字节报头开销,TCP增加20字节。IPv4数据包使用20字节,以太网帧使用18字节。在以太网线路上,额外的开销为20字节。

最大大小的以太网帧可以传输1500字节,包括IP和TCP开销。这也是IP数据包(MTU)的最大大小。加上帧和物理层的开销,1538字节正在线路上运行。

总之,您将得到1460字节的用户数据(TCP),其总大小为1538字节。以千兆比特的速度,这是81.274帧/S,与UDP (1472字节用户数据)的TCP总吞吐量为118.6 MB/s或119.6 MB/a。

虽然这些是你实际能达到的最大速度,但是一个设计良好的基础设施,加上适当的应用程序支持,实际上可以达到它们。

对于您的问题:不,3MB/S作为最大吞吐量对于千兆位网络来说是不正常的。根据上面的计算,您应该可以轻松地运行30倍。

您应该尝试诊断这个问题:

  • 尽可能接近生产者的数据
  • 直接向使用者提供虚拟数据
  • 在整个数据路径或其部分上运行性能测试(例如,使用iperf)
  • 检查交换机和路由器是否有错误迹象(数据包丢失、FCS错误)或拥塞(缓冲区负载、CPU负载)。
  • 排除双工不匹配(增加FDX侧的FCS错误,HDX侧(后期)碰撞)
票数 3
EN

Network Engineering用户

发布于 2017-09-19 10:38:24

1Gbs是每秒一吉比特,而3MB/s是每秒3兆字节。(字节用大写B表示,而位用小写b表示)

因为1字节=8位,所以在1000 of /S链接上可以达到24 of/S的速度。这太可怜了。

当应用程序在两台机器之间传输数据时,这些数据被分块成小块,每个块接收到可靠地将块传输到预定目的地所需的附加信息。(想一想你放一封信的信封,所以实际的邮件比这封信重)。

由于这种开销,从应用程序的角度来看,1Gbs链路上的实际带宽更接近800 / 850 Mbs。

24 get比你应该得到的要慢得多。

罪魁祸首很可能是在消费者或生产者的机器上。您应该检查CPU的使用情况,磁盘子系统的I/O率等。

但是,您也可以检查开关上的日志和接口计数器是否存在任何异常行为。

要检查服务器或网络是否出错,您可以尝试在这两台机器上运行类似iperf的工具(一台作为服务器,另一台作为客户端)。

票数 3
EN

Network Engineering用户

发布于 2017-10-09 14:12:16

在得知以太网“Mbit/秒”的速度为1,000,000位之前,我在网络中工作了很长时间;而很明显,我们通常认为2^20的字节数是多少。多年来,我的计算都以5%的速度被淘汰了!

另外:数据字节与TCP报头的比率差别很大;以前的回答没有提到分段大小和分段数据包。当然,我不反对总的结论。

我从网络嗅探器开始查看数据包之间的延迟:服务器是否迅速响应?您的数据包是否装满了1字节段/数据报?

虽然以前的回答说B是字节,b是位,但是很多人并不是那么细致,很多人都很困惑:我个人总是写位/秒和字节/秒来明确。

告诉我们你进展如何。

乔纳森。

票数 3
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/44261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档