我将大约 15TB 的数据从 1 台 linux 主机传输到另一台 linux 主机。发件人主机有这些网卡:
[44.206701] igb:eth0 NIC 链路已启动 1000 Mbps 全双工,流控制:RX/TX
[44.274112] 绑定:bond0:接口 eth0 的链路状态绝对正常,1000 Mbps 全双工。
[44.278534] igb:eth1 NIC 链路已启动 1000 Mbps 全双工,流控制:RX/TX
[44.573636] 绑定:bond0:接口 eth1 的链路状态绝对正常,1000 Mbps 全双工。
接收主机有这个网卡:
[16.964486] e1000e:eth0 NIC 链接已启动 100 Mbps 全双工,流控制:无
我现在的最大传输速度是 11 MB/s。我想知道,我需要做些什么来提高传输速度?升级接收器网卡?
谢谢!
接收端的链接速度仅为 100 Mb/s:
转换为大约 12.5 MB/s 的最大原始带宽。考虑到 IP/TCP 开销后,在 11 MB/s 时,您基本上是在最大化您的接收器带宽。
最好在接收机器上有一个 1gig 网卡是的,另外,我可以在标签中看到您正在使用 scp。
scp 对于重要的数据传输通常非常糟糕,我的表现总是很糟糕
尝试 ftp(但它是未加密的),您会清楚地注意到传输速度的重要差异。
ftp(或其他协议/程序,但不是 scp)+ 接收机器上至少一个 1000mb 的 NIC 显然会帮助你
正如其他人所建议的那样,您只能获得 11Mb/sec 的原因是因为接收网卡的链接速度为 100MBit,尽管该卡理论上能够处理 1GBit。
我能想到的唯一可能的原因是 NIC 连接到 100MBit 交换机,或者卡配置为自动协商速度并且协商了错误的速度。在这种情况下,您应该能够强制 NIC 以 1GBit 运行。
按照目前的传输速度,传输 15Tb 大约需要 15 天(http://www.thecloudcalculator.com/calculators/file-transfer.html)。
在接收器端使用 1GBit 连接只需大约 1.5 天。
如果您的电缆不好,则双方都应为 1000full,强制/*硬编码交换机端的速度,它将在接收端以 100 Full 同步。
看看交换机是如何配置的,如果它的自动将你的接口硬编码为 1000full,如果它没有以那种速度检查电缆上升。最多切换。
在 12MB 时,您处于 100Full speed 状态。e1000e 是一个 gig 接口,应该同步到那个速度。您的传输速度应该从 300 到 800 Mbps(30MB 到 80MB),具体取决于主机功能。
您正在传输接近接收接口限制的数据,尽管它没有以最大速度运行。您的开关可以处理速度吗?
您的瓶颈可能是您可以读取或写入磁盘的速度,也可能是网络中的瓶颈。几个问题:
正如我在评论中所指出的,接收系统的以太网卡似乎以 1/10 的最高速度运行。您实现的传输速率接近在当前网卡速度下无需压缩即可实现的最大传输速率。
在一侧以守护程序模式运行 rsync 可以提供比使用 SSH 进行隧道更好的性能。将 rsync 作为守护进程运行存在安全隐患。