P2P聊天软件设计
功能要求
用户界面(GUI)可自行设计,主要为用户提供方便。
用户界面要及时的对用户的操作做出React。
要实现一个用户可以和多个用户同时进行聊天。
设计目标及流程
设计一个P2P聊天软件,由多个聊天客户端和一个中心服务器组成。各个聊天客户端可以两两相互发送消息。目的在于设计GUI、多线程和套接字编程。各个客户端用IP地址和TCP/IP监听端口号进行标识。每个客户提供一个名字,方便其它客户端。
此设计由两部分组成。
第一部分:注册
P2P聊天中各个成员管理。每个成员称为一个peer,要有一个中心的服务处理peer的登记和对已经登记的peer进行更新。
步骤1:一个peer选择一个名字,通过登记界面进行登记。
步骤2:服务器拥有一个公有IP,在一个众所周知的端口进行监听。Peer向服务器发送‘register’请求,同时发送自己的登记信息(如己取的名字,自己的监听端口号
1