通过多个可用网络发送数据

3
我正在开发一个应用程序,用于将大量数据(可能在GB级别)传输到服务器。但是,如果我通过单个网络发送它,传输需要很长时间。我有多个来自不同ISP的网络连接,我的电脑可以通过以太网端口、WiFi和USB Dongle连接到这些网络。是否有办法通过这三个可用通道分配我的数据(如第一个数据包通过以太网,第二个数据包通过WiFi,第三个通过USB Dongle,第四个再次通过以太网,依此类推),以实现更快的传输? 如果可以,我如何同时访问这三个网络以发送数据?

@RC HI。我如何打开到不同网络的连接,你可以提供任何参考吗?谢谢。 - Junior Bill gates
@ RC 先生,您的意思是我需要为每个可用的IP(网络)创建一个套接字,然后将其绑定到相同的端口和每个IP上。 - Junior Bill gates
@RC,这种类型的东西也适用于Android或iOS设备吗? - Junior Bill gates
你使用哪种协议进行传输?你只编写发送方还是接收方也编写? - Marged
4
也许这个解决方案能够帮助分享USB加密狗:http://softwarerecs.stackexchange.com/a/26515 - Jenny Bredst
显示剩余3条评论
1个回答

0

这是基于策略的路由,通常不是一件容易的事情。

网络数据包的路由通常只取决于数据包被发送到的目的地。因此,如果设备有多个接口,所有远程主机的数据包通常都会通过同一个接口发送。

如果远程主机有多个IP地址,则可以轻松地将不同的目的地通过不同的接口路由出去。但是对于“不同的ISP”,本地地址通常需要与您正在发送数据包的接口匹配,以便回复通过相同的接口返回。(如果这样做错误,大多数防火墙会变得有点担心,即开始阻止)

有了“策略”,您可以制定规则,例如“如果本地地址为X,则将数据包发送到B接口”。此时,您可以使用“RC Brand”建议的绑定源地址来开始划分流量。

完全连接这些链接的最通用方法是设置VPN隧道到远程主机,并安排组成隧道的数据包共享到不同的链接中(例如循环策略路由)。

这称为绑定连接,人们销售这些(绑定ADSL)。

针对您的特定问题--发送大文件。

  1. 通过邮寄硬盘/闪存驱动器可以获得非常大的带宽(但延迟较高)。你可以使用自行车来获得更好的延迟。
  2. 你可以使用压缩软件(7-zip)将文件分成多个部分,从不同的机器上通过不同的ISP发送每个部分。在另一端重新组合它们。
  3. 捆绑连接,无论是自制还是商业化。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接