【问题标题】:using multiple network interfaces to broadcast fractions of data in each(load-balancing / bonding)使用多个网络接口在每个接口中广播部分数据(负载平衡/绑定)
【发布时间】:2014-01-21 04:07:32
【问题描述】:

问题是: 如何通过当前电脑上可用的多个 Internet 连接发送数据?

可能部分类似于This Post

虽然我的想法是(就像 raid-0 使用多个硬盘,以利用多个 nic 的优势) 实际上有多个互联网连接/帐户以最大化 上传带宽的直通输出(通常占总带宽的1/8)

我试图实现的概念是使用最快的协议,无论数据完整性如何 所以我可以将数据从一个点发送到另一个点(具有应用程序的“客户端”部分来处理数据......在将数据放回一块时检查完整性) 或者如果不值得就使用 tcp(处理应用程序级别的完整性以提高速度)

我知道有一个名为“Connectify”的现有应用程序可以做类似的事情, 虽然我的想法是做一些不同的事情,但我需要了解基础知识 所以我可以开始这个项目进行测试和开发。 ...提前谢谢!

【问题讨论】:

  • 您的具体问题是什么?

标签: c# performance load-balancing file-transfer


【解决方案1】:

作为一种概括,在这种情况下您需要采用的方法是创建多个 TCP 客户端,绑定到您机器中的各个网络适配器。您可以遍历每个可用的适配器,测试以确保它们与外部世界有连接,然后将它们添加到一个集合中,然后对于您要传输的每个数据包,您将数据包发送出去。

请参阅http://msdn.microsoft.com/en-us/library/3bsb3c8f.aspx,了解如何将 TCPClient 绑定到各个 IPEndPoint。

由于 TCP 运行方式的性质,您必须为每个数据包构建一个包装器,该包装器还包括一个订单 ID,以确保接收到的数据包无序(这将在本节中的大部分时间发生)案例),可以重新拼凑起来。

如果您在理解问题方面需要更多帮助,请告诉我。

【讨论】:

  • 感谢您到目前为止的帮助,我会先检查您帖子中的链接并开始编码,然后我可能会回到这里。
猜你喜欢
  • 2014-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-08
  • 2017-08-13
  • 1970-01-01
  • 1970-01-01
  • 2019-12-25
相关资源
最近更新 更多