【发布时间】:2012-02-24 03:36:31
【问题描述】:
我正在用 Java 编写一个套接字程序,并且有一个客户端可以连接的主机。该主机有一个常量 ip 和 port ,如果可能的话,客户端使用 ip 和 port 连接到服务器?还是我必须为每个客户端定义唯一的端口?
【问题讨论】:
我正在用 Java 编写一个套接字程序,并且有一个客户端可以连接的主机。该主机有一个常量 ip 和 port ,如果可能的话,客户端使用 ip 和 port 连接到服务器?还是我必须为每个客户端定义唯一的端口?
【问题讨论】:
您可以根据需要将多个客户端(可以受临时套接字范围限制)连接到服务器,所有客户端都将连接到服务器打开其套接字的端口。
每个客户端都会在其末端获得自己的端口,但套接字会为您解决所有这些问题。
感兴趣的临时套接字范围在这里Wikipedia
【讨论】:
您应该阅读一些文献来阐明端口、IP 地址的概念以及应用程序如何绑定到它们。端口的意义在于可以在一台机器上运行多个应用程序,但所有应用程序都会监听不同的端口。 假设我们有一台 ip a.b.c.d 的机器,并且有一个应用程序正在侦听这台机器上的端口 w,如果同一台机器上运行另一个应用程序,则它无法使用端口 w 接收数据包。
任何想要与在 ip a.b.c.d 上侦听端口 w 的应用程序通信的客户端应用程序都将使用目标 ip 作为 a.b.c.d 和目标端口作为 w。所以发送 ip 和端口无关紧要(在大多数情况下)
【讨论】: