用 Java 模拟网络的最佳方法是什么?
我正处于联网对等项目的早期阶段,为了确定客户端的一些必需特征,我希望能够在我的 PC 上同时模拟 100 多个实例。
理想情况下,我想创建一个“模拟”版本的套接字,有自己的输入和输出流。最终,我将使用这些流进行数据传输,而不仅仅是在 Java 对象之间移动数据,因此我想要模拟的是您在实际网络中可能遇到的延迟、数据丢失和其他错误。
理想情况下,这些模拟方法将非常接近 java.net.*
的实际流标准,因此我不需要进行大量重写即可从模拟转移到实际客户。
谁能指出我正确的方向?
最佳答案
您可以使用 Akka在一台机器上创建数百万个 Actor,然后组织它们之间类似于“真实”网络的通信。
这是一个示例项目: https://github.com/adelbertc/scalanet
关于java - 在单台计算机上模拟 p2p 网络流量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16496471/