如何模拟TCP层?

时间:2012-10-10 07:53:20

标签: java sockets tcp

我正在开发一个客户端服务器套接字应用程序,我想模拟分组数据传输。我想要一个模拟器,它模拟丢弃的数据包数据,消息状态,计算数据包校验和等。是否可以模拟TCP层?如果可能请提供一些链接。提前谢谢。

1 个答案:

答案 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().