我正在开发一个客户端服务器套接字应用程序,我想模拟分组数据传输。我想要一个模拟器,它模拟丢弃的数据包数据,消息状态,计算数据包校验和等。是否可以模拟TCP层?如果可能请提供一些链接。提前谢谢。
答案 0 :(得分:3)
如果要在计算机上自行测试,请使用127.0.0.1或localhost作为连接的地址。然后,您的套接字将连接到正在侦听本地计算机上的端口的任何内容(可能是您的测试服务器)。
如果由于某种原因想要完全避免使用TCP,并且只使用TCP的流方面,可以用PipedInputStream和PipedOutputStream替换输入和输出流:
PipedInputStream pis = new PipedInputStream();
PipedOutputStream pos = new PipedOutputStream(pis);
// Use pis and pos in place of sock.getInputStream() and sock.getOutputStream().