根据第一版框架设计
客户端与服务器端的交互顺序
客户端 -> 服务器端
第一阶段 建立连接
序号 | 方向 | 内容 |
---|---|---|
1 | 无 | 服务器端开启套接字,允许新的客户端加入连接 |
2 | -> | 客户端连接服务器端 |
3 | <- | 服务器端返回分配给客户端的设备号 |
4 | 无 | 服务器端关闭连接许可,允许最后一个新客户端加入连接 |
5 | -> | 客户端连接服务器端 |
6 | <- | 服务器端返回分配给客户端的设备号 |
第二阶段 正常通讯
存在两种模式
序号 | 方向 | 内容 |
---|---|---|
1 | -> | 客户端发送消息 |
2 | <- | 服务器端返回消息 |
序号 | 方向 | 内容 |
---|---|---|
1 | <- | 服务器端返回由其他客户端激发的消息 |
第三阶段 断开连接
序号 | 方向 | 内容 |
---|---|---|
1 | -> | 客户端发送退出消息,准备退出 |
2 | <- | 服务器端发送允许退出消息,准备退出 |
3 | 无 | 客户端套接字关闭 |
4 | -> | 服务器端收到客户端关闭的消息,关闭己方的客户端套接字 |
5 | 无 | 服务器端关闭自己的套接字 |