
Linux 网络开发技术报告
一:设计思想及实现步骤:
设计思想:对于做一个 Linux 聊天室,要达到基本群聊,私聊功能,首先就要
考虑对服务端,客户端的设计其中首先考虑到是多线程问题。其次为了用户的体验,
应该设计简洁的界面选择,故服务端和客户端都应该设有菜单选项。在基本功能完
成后,应适当增加新功能。客户端发起连接请求,服务器接收客户连接请求并提供
相关服务。但前提是服务器首先保持工作状态,才能接受用于请求。对于服务端先
开启服务器进程,等待并检测客户端的连接请求,处理该客户请求,此时服务端进
行循环监听,等待下一个用户的连接请求,等待客户端全部退出后,选择退出服务
端,如果先退出服务端,客户端应全部退出,停止服务。对于客户端,首先运行一
个客户端进程,向服务器的特定端口发送连接请求,等待服务器响应后,根据服务
器提供的服务进行选择操作,通信结束后退出关闭通信通道,退出客户端,该信息
作为一个群发信息,应让其他客户端知道。
实现步骤:基于 TCP 的服务端:
1. 用 socket(),创建一个 socket;
2. 用 bind(),绑定 IP 地址,端口等信息到 socket 上。
3. 用 listen(),设置最大的允许连接数。
4. 用 accept(),等待来自客户端的连接请求。
5. 用 pthread_create(),创建线程。
6. 用 write()/read(),在 5 中循环收发信息
7. 用 close()关闭网络连接。
基于 TCP 的客户端:
1. 用 socket(),创建一个 socket;
2.设置端口信息,IP 绑定到 socket 上。
3.连接服务器用 connect().
4.创建线程用 pthread_create().
5.收发数据用 write()/read().
6.关闭网络连接,用 close().
评论0