Rob*_*cks 12 .net c# filesystems networking file-transfer
我正在使用涉及许多客户端PC和一些服务器机器的设置.我需要在这些PC之间组织一种可靠而快速的文件传输方法,这将由在两者上运行的C#应用程序启动.任何客户端都可能希望从任何服务器发送/接收数据.选项是:
FTP - 使用FtpWebRequest或SOSFTP将文件上载到FTP服务器.服务器检查其文件系统上的新文件并执行所需的步骤.
SCP - 安全文件传输.用法与FTP相同,但增加了机器之间的安全性.可能比FTP慢.
DropBox/Box.Net - 使用带有SharpBox等库的在线云存储解决方案.可以免费/付费.考虑到该方拥有您的文件,可能不太安全.
UDP - 使用EME或GoAnywhere等库直接通过UDP将数据从PC传输到PC.由于它使用自定义技术,可能更快但可能更不可靠.
您有什么推荐的吗?
Gre*_*tit 10
我有一个超级有偏见的意见,来自一家制作文件传输软件的公司,所以我把免责声明放在前面和中心,把我所说的一切都拿出来.;-)
如果要将多个大型文件共享到多个端点,则可以使用以下两种方法之一:
1 - MFT解决方案通常使用基于TCP的传输(如FTP)作为传输机制,但通常包括纯TCP中没有的其他可靠性机制.它们还将包括用于在许多端点之间安排和组织传输的工具.据我所知,没有任何重要的MFT解决方案可以免费或低成本获得,但是有很多企业级MFT解决方案以预期成本出现.
2 - 几年来,一些公司已经在基于UDP的协议中构建了专有控制和可靠性机制.通过创建这个自定义层,UDP(它没有自己的可靠性)实际上变得更加可靠,并且可以拥有比基于TCP的传输更多的功能,同时不会受到数据包丢失和延迟的不利影响(读作:通常很多)更快的传输速度).该协议不一定独立于MFT(它本身具有一些MFT特性,供应商可能将其烘焙到MFT解决方案中),但可能可用于其原始协议(通过API)并且没有传统的所有UI特征"MFT解决方案".
有像Tsunami或UDT那样的基于UDP的开源文件传输协议.它们维护得不是特别好或功能丰富(我有一些偏见!)据我所知,没有一个本地C#库.但同样地,我所知道的商业产品中没有一个拥有本地C#库,尽管包装器可用.
如果您描述的转移类型将成为组织日常活动的常规和持续部分,我很难推荐除上述内容之外的任何内容.要做到"正确"(或者至少没有非平凡的开发项目),您可能需要一个商业解决方案.
| 归档时间: |
|
| 查看次数: |
14044 次 |
| 最近记录: |