gpt4 book ai didi

ssl - 如何有效地将一个大文件从CMS广播到局域网中的n个客户端

转载 作者:太空宇宙 更新时间:2023-11-03 14:22:02 25 4
gpt4 key购买 nike

我在局域网(WiFi)中有一个主设备和 n 个从设备,在互联网上有一个 CMS。

我需要能够通过在主服务器上选择它,将一个数 GB 的视频文件从 CMS 推送/下载到所有从服务器。进入 LAN 的流量必须加密,LAN 内的加密会很好。如果任何从站丢弃了一个数据包,它应该能够从 CMS 或其他从站请求它。局域网中的所有设备都是运行android的平板电脑。主机应能够触发将位于互联网服务器上的视频文件分发给所有从机。此文件传输应尽可能快。服务器将重新设置,因此基本上可以运行任何东西。

Internet ------------------------> WLAN
| |
| +----Master
CMS +----Slave-1
holds large file +----Slave-...
+----Slave-n

我认为有 4 种方法可以做到这一点:

  1. (琐碎的)给从属文件名,让他们单独下载文件。流量:O(n*filesize)
  2. (简单)将文件下载到主服务器,从服务器从主服务器而不是从互联网下载文件。互联网流量:O(filesize),局域网流量:O(n*filesize)
  3. 将文件下载到主服务器并将其广播给所有客户端。流量:O(2*文件大小)
  4. 使用一些东西在局域网内广播文件。由于WiFi是共享媒体,理论上每个数据包只需要发送一次,流量应该是O(filesize)。

虽然解决方案 1 很容易实现,例如scp 下载显然会非常缓慢且效率低下。如果可能的话,我希望实现解决方案 4,但我不知道有任何可用的技术能够开箱即用。 3和4中描述的广播有哪些方法可以实现?

最佳答案

细节在这里很重要。你能容忍丢失一些数据吗?有多少客户?您必须具备哪种平台兼容性?

对于这个答案,我们假设您不能容忍数据丢失。因此,您的多播选项是不可能的。不知道特定客户是否能够跟上流程。无法保证数据包甚至到达设备。

现在,让我们假设您希望将其设为基于网络的平台。再次,反对多播。

虽然有一个简单的解决方案……种子。特别是如果你使用 WebTorrent ,它使用 WebRTC 的加密数据通道。如果需要,您可以进一步加密内容,并通过其他方式共享 key 。

少数客户端将直接连接到您的服务器,而其他客户端将通过 LAN 下载。您不必担心任何可用性问题,因为您的服务器在需要时仍然可用。

关于ssl - 如何有效地将一个大文件从CMS广播到局域网中的n个客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59661724/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com