两个服务器之间怎么传输大量数据速度快 java socket_千兆网络的传输速度能超过125MB/s么?...
如果我问你,千兆网络的传输速度极限是多少?或许你会说,最大就是125MByte/s了。这差不多就是理论极限。
实际上的传输速度是远远达不到125MB/s,因为IP包有报头,SMB协议也有报头,这些东西需要占用一些传输带宽。我的samba最多能达到110MB/s的极限速度。
那么,题头的图中,155M/s的传输速度是怎么回事?
介绍这个传输速度之前,我要介绍一下我的网络构成。
我的系统中将NAS上的两个共享目录映射成为Z盘和Y盘。平时将临时文件放在Z盘中,整理时将文件从Z盘移动到Y盘。
网上邻居共享软件samba是使用微软的SMB协议,至今SMB已经发展到3.1.1版本。
不同版本的Windows所支持的SMB协议如下图。
最初我使用FreeBSD11.0版本时,采用的是samba 3.7版本,这个samba版本只支持SMB1.0协议。所以将文件从Z盘移动到Y盘时,采取的方法如下图:
也就是说,客户端将Z盘的数据先传输到本地,然后再传输回去放回到Y盘中。因为客户机和samba服务器的网络带宽只有1000M,所以传输速度跳不出来125MB/s的理论值。
聪明的你看出来问题所在,需要移动的数据和要移动到的地方都在服务器上,为何要从客户端绕一圈呢?如果能直接在服务器上进行移动,那么速度不就快了么?
是的,在SMB2.0开始,支持一种叫做Server-Side Copy的请求指令,具体可以见这里:
[MS-SMB2]: Handling a Server-Side Data Copy Requestdocs.microsoft.com
就是将服务器端的拷贝直接在服务器内部消化,具体见下图:
通过这个做法,拷贝速度大大提高,不再取决于客户端和服务器之间的网络速度,而是服务器内部的读取和写入速度了。
在我的情况下,10盘RAIDZ2的读取+写入就是155MB/s
这个功能在samba 4.1版本开始就已经支持。
所以还在用3.x版本samba的你,还不赶紧升级?
如果你喜欢今后能多看到类似的文章,请看完之后点赞收藏分享,这样子我就可以有动力多写一些啦~~~
两个服务器之间怎么传输大量数据速度快 java socket_千兆网络的传输速度能超过125MB/s么?...相关推荐
- 两个服务器之间怎么传输大量数据速度快 java socket_一口气说出Kafka为啥这么快?...
在过去的几年里,软件架构领域发生了巨大的变化.人们不再认为所有的系统都应该共享一个数据库. 图片来自 Pexels 微服务.事件驱动架构和 CQRS(命令查询的责任分离 Command Query R ...
- linux tcp 包大小,linux – 通过大量连接和小数据包流量高的千兆网络提高TCP性能...
我正在尝试通过"具有大量连接和小数据包流量的千兆网络"来提高TCP吞吐量.我的服务器操作系统是Ubuntu 11.10 Server 64bit. 有大约50.000(和不断增长的 ...
- Linux 两台服务器之间传输文件和文件夹
今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快 ...
- linux两台服务器传输,Linux两台服务器之间高速数据传输命令:scp应用详解
Linux两台服务器之间高速数据传输命令:scp应用详解 Linux scp命令用于Linux之间复制文件和目录到另外一台,这个命令在多台服务器之间传输还是非常有用的,速度也是非常快的.比window ...
- linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝
linux两台服务器之间文件/文件夹拷贝 跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹--------------------------------- ...
- 复制密钥文件到另一台服务器,使用所有ssh密钥从第三台服务器在两台服务器之间远程复制...
我正在用python编写一个部署脚本,但是在我完成它之后,我发现可能不可能实现我的想法.在 情况是这样的.在 我有三个主人.在主机1:Ubuntu 12.04 主机2:SUSE Linux Enter ...
- 如何在两个服务器之间迁移MySQL数据库
英文原作者:Etel Sverdlov 转载&翻译来源:https://www.digitalocean.com/community/tutorials/how-to-migrate-a- ...
- 两台服务器之间数据库同步
SyncNavigator是一款功能强大的数据库同步软件,适用于SQL SERVER, MySQL,具有自动/定时同步数据.无人值守.故障自动恢复.同构/异构数据库同步.断点续传和增量同步等功能,支持 ...
- 两台linux之间带宽,测试两台服务器之间的网络带宽
一.为什么选择了iperf 之前做了一个项目,说要测试两台服务器之间的带宽,本想通过拷贝来进行测试,后来客户觉得得出的数据没有说服性,于是改拿工具来进行测试.我们这回用的工具名字叫iperf. ipe ...
最新文章
- Mercurial和Git有什么区别?
- Ubuntu14.04设置PATH环境变量(一)
- 双11还是那个双11,双12却早已不是那个双12
- 【机器学习基础】数学推导+纯Python实现机器学习算法7:神经网络
- 网络协议分析工具Ethereal的使用
- 160 - 51 DueList.6
- 乱想想关于捕获异常后继续执行的实现。
- P5714 【深基3.例7】肥胖问题--python3实现
- python文件内容倒序_python实现对列表中的元素进行倒序打印
- 指针大小为什么与类型无关?
- 运行jar包提示找不到.properties文件的问题
- sql语句select group by order by where一般先后顺序
- 将solidworks建的机器人模型导入到ros中
- Python:对已有内容的TXT文件追加读写
- [Alg]排序算法之插入排序
- win10下深度linux系统怎么安装,u深度win10pe安装win10系统教程
- Shell脚本中dirname命令的使用
- 天地图-第五篇-覆盖物
- Hash-based Shuffle内幕彻底解密
- verilog自学笔记
热门文章
- pip安装neural_renderer报错的解决方法
- python3函数写文件路径时,怎么写文件路径
- 数字图像处理 频率域锐化 MATLAB实验
- 第八章:在Spark集群上掌握比较重要的图操作之Property Operators(2)
- python文件のpandas操作
- ajax登录成功跳转页面_ODOO 登录后跳转到指定页面【仪表盘】而不是【讨论】模块...
- java实现输出下一秒_编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一...
- .net oracle 连接超时_ADO.NET (一) 前言
- python3x_Python3x 基本知识点
- 持续集成(Continuous integration)