实验内容:
1. 分别编写基于TCP或UDP的socket程序服务端和客户端,实现客户端和服务端间的简单信息交换功能,即服务端和客户端能依次从键盘输入文字信息并发送。
2. 服务端实现消息转发功能,设计通信协议,使得任意一个客户端都能通过服务端与另外任意一个联网客户端进行聊天。要求:客户端能获取并随时更新当前在线客户信息;客户端能与任意一个在线客户通信;客户端能广播通信。
3. 客户端之间实现组播功能。要求:客户端能创建组播组;服务端能维护组播组列表;客户端可以加入组播组;客户端可以进行组播通信。
4. 实现任意两个用户之间的文件传输(可选)。
西工大 socket 编程实验 已经完成了聊天和聊天群 广播尚未完成
大概讲下思路
客户端向服务器发送的数据中会包括 命令(选择是聊天,群聊,还是广播);来源用户名(类似源地址) ;目标用户名或用户组(类似目的地址)。
由完成端口的服务器根据目标地址进行转发。
codeblocks编译运行,用的都是比较兼容的语言,其他idea应该也能编译运行,唯一可能需要配置的是socket的运行库Ws2_32。
1