【问题标题】:Sending and receiving that same data by the same program, over a network socket通过网络套接字由同一程序发送和接收相同的数据
【发布时间】:2013-04-20 13:31:34
【问题描述】:

我正在尝试通过 Java 程序通过套接字发送数据包并接收相同的数据包。 关键是测量通过网络并返回我的程序本身所需的时间。 我不能使用本地主机“127.0.0.1”。 我不能使用我自己的 IP 地址,因为它会导致 java.net.BindException (它说地址已经在使用中,就是这样)。

还有其他方法可以做到这一点吗? 我想可能会使用socket.shutDownOutput() 部分关闭套接字,但问题是我希望发送大量数据包,因此套接字需要同步监听它。

有什么办法吗?通过网络发送数据包并返回到相同的程序/相同的 IP 地址。

【问题讨论】:

  • 数据包永远不会使用 localhost 通过网络发送 - 它永远不会离开您的计算机。您是否尝试过使用其他端口?它必须是未使用的。
  • 你想发明 Ping 吗?请解释你的目的是什么,一些代码行可能很棒。
  • 目的是在单台电脑上模拟不同的服务器客户端程序。我需要将消息从一个客户端/服务器节点传递到另一个节点。由于是模拟,我更喜欢使用多个线程运行同一个程序。
  • 我不太清楚我是否需​​要由不同的线程而不是同一个程序来处理数据包。我很抱歉。

标签: java sockets localhost synchronous socketexception


【解决方案1】:

为什么不让客户端将数据回显到服务器呢?然后你可以将它绑定到任何IP地址。

【讨论】:

    猜你喜欢
    • 2012-10-05
    • 2015-01-10
    • 2015-07-12
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 2016-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多