gpt4 book ai didi

java - 套接字和服务器套接字

转载 作者:行者123 更新时间:2023-12-01 06:17:36 25 4
gpt4 key购买 nike

我想编写一个程序,允许客户端相互连接,并且可能(如果不是太难的话)共享信息/文件。我想让这个概念有点像 Bit torrent,其中不涉及服务器。只有客户端(也将充当服务器)。

如果我想使用服务器,那么上手会很容易,因为服务器将使用 ServerSocket 监听传入的客户端。

我的问题是...我的客户端/Peer 类中还需要有一个 ServerSocket 对象吗?如果没有,每个客户端/对等点如何相互连接? Socket 在这里似乎还不够。

如果有人能提供一些这方面的例子,那将是天堂。否则答案也很好

最佳答案

如果它们以双向方式相互连接,则两者都需要服务器(ServerSocket)来接受传入连接。当服务器正在监听传入连接并且客户端连接时,它会创建一个 Socket,您可以使用该 Socket 进行回话,但如果还没有连接,您仍然需要另一端的服务器和一个客户端套接字(Socket)来连接它。我说的是 TCP 连接。如果您使用 UDP,您可以广播并让多个客户端连接到它,但这仍然是一个服务器。所以我认为,如果你在每个对等点上配置服务器和客户端套接字(Socket)以相互通信并遵循某种协议(protocol),那么你就会实现你想要的。

关于java - 套接字和服务器套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20294623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com