1. 介绍
本项目旨在设计和实现一个点对点(P2P)群聊系统,其中包含多个Peer节点。每个节点都保存完整的群聊过程记录,并提供客户端软件,允许用户发送聊天信息,并实时显示完整的群聊过程。
2. 系统架构
2.1 节点拓扑
本系统采用点对点拓扑,每个节点都可以直接与其他节点通信,形成一个分布式网络。节点之间的通信通过Socket实现。
2.2 软件组件
- 客户端软件:每个节点都有一个客户端页面,用于用户输入聊天信息并将其发送到网络上。客户端软件还负责显示完整的群聊过程。
- 服务器端:每个节点都有一个服务器端,用于处理来自其他节点的消息,并将其分发给本地的客户端软件。
2.3 数据格式
每条聊天消息采用以下格式:
<message_id, timestamp, message_content,peer_id>
- `message_id`:消息的全局唯一ID号,用于标识每条消息。
- `timestamp`:消息的时间戳,用于确保因果关系。
- `message_content`:消息的文