接上篇。
- 通信模型
选用基于WIN32的WSAAsySekect模型.
WSAAsyncSelect模型自动把套接字设为非阻塞模型,并为套接字绑定程序窗口句柄,当有网络事件发生时,该向该窗口发送消息。
通信过程:
1) 服务器端首先启动监听程序,对指定的端口进行监听,等待接收客户端的连接请求;
2) 客户端程序启动,请求连接服务器的指定端口;
3) 服务器接收到客户端的连接请求后与客户端建立套接字连接;
4) 连接成功后,客户端和服务器分别打开两个流,其中客户端的输入留连接到服务端的输出流,服务器的输入流连接到客户端的输出流,两边的流连接成功后就可以进行双向通信了。
5) 当通信完毕后,客户端与服务器两边各自断开连接。
2. 顺序图
CNetwork是服务器和客户端的接口,服务器和客户端之间数据的传送通过此类完成。