如何有效地将CMS中的大文件广播到LAN中的n个客户端

问题描述 投票:0回答:1

我在LAN(WiFi)和Internet上的CMS中有一个主设备和n个从设备。

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

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

我的观察方式有3种:

  1. (Trivial)给从属文件名,让他们分别下载文件。流量:O(n *文件大小)
  2. (Trivial)将文件下载到主机,从机从主机而不是从互联网下载文件。交通互联网:O(文件大小),交通局域网:O(n *文件大小)
  3. 将文件下载到主文件并将其广播给所有客户端。流量:O(2 *文件大小)
  4. 使用一些东西在局域网内广播文件。由于WiFi是一种共享媒体,因此从理论上讲每个数据包仅需发送一次,流量应为O(文件大小)。

而解决方案1将很容易实现,例如scp下载显然很慢并且效率很低。我正在寻求实施解决方案4(如果可能)的方法,但是我不知道有任何可用的技术可以立即实现。实现3和4中所述广播的方法是什么?

ssl content-management-system broadcast file-transfer large-files
1个回答
0
投票

这里很重要。您可以容忍某些数据丢失吗?有多少客户?您必须具有哪种平台兼容性?

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

现在,假设您要基于该平台的平台。再次,反对多播。

尽管有一个简单的解决方案……洪流。特别是如果您使用WebTorrent,它将使用WebRTC的加密数据通道。如果需要,您可以采取进一步的步骤并加密内容,并通过其他方式共享密钥。

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

© www.soinside.com 2019 - 2024. All rights reserved.