通过网络在多个 RaspPis 之间实现完全通信的最佳方式是什么?

What's the best way to implement full communication between many RaspPis over a network?

我正在实施一种算法,该算法需要通过 LAN 在大约 10 Raspberry Pi 之间建立连接,并且可以使用一些帮助来找出让它们相互交谈的方法.

关于我将使用它的一些背景知识,我将把单独的 RaspPi 连接到 SEL 继电器,以收集我学校实际电网的比例模型微电网的计量数据。有了这些计量数据,我希望能够将采样数据从每个继电器发送到测试台中的其他随机继电器,作为共识算法(如哈希图)的一部分,以尝试减少对我们电网的以 ICS 为中心的攻击,如几年前乌克兰发生了什么。这个想法是拜占庭容错系统适用于跨越大地理区域的电力系统。

因为这只是一个测试,以确定这样的实施是否有利于变电站的使用,我只使用 python 脚本从继电器收集上述数据。因此,我正在寻找这些计算机之间基于 python 的通信方式。我研究过套接字,但我不确定这是否是 10 台尝试相互通信的计算机的有效方法。

理想的最终目标是在此测试台上模拟中间人攻击,以查看系统是否能够及时纠正和检测威胁。

提前致谢!

任何单个系统 (Raspberry PI) 都可以侦听传入连接并以某种特定方式使用它们。

可能有用的考虑事项:

  1. 您绝对需要所有数据吗?
  2. 数据是经常发送还是很少发送?
  3. 连接会随机发送数据吗?
  4. 系统是否需要相互通信?

偶尔丢失大量数据可能是使用 UDP 的一个很好的解决方案。 如果您确实需要所有数据,请使用 TCP 和随机连接来确保数据捕获。

您需要将它们发送给彼此还是只发送给一个或两个来源?这可能会使您的问题更容易解决。

无论如何,系统能够处理超过 10 个连接,所以您应该没问题。

不知道还能提供什么帮助。