一、服务器 / 客户端聊天室模型聊天室客户端(商用PC)服务器聊天室客户端(其他)聊天室客户端(笔记本)其他服务器1
首先启动聊天室服务器,使得TcpListener开始监听端口,此时TcpListener会进入 Pending 状态,等待客户端连接;2
其次,当有客户端连接后,通过AccepSocket返回与客户端连接的Socket对象,然后通过读写Socket 对象完成与聊天室客户端的数据传输
聊天室客户端成功启动后,首先创建一个Socket 对象,然后通过这个Socket 对象连接聊天室服务器,连接成功后开通Socket 完成数据的接收和发送处理
二、系统功能设计本设计为一个简单的聊天室工具,设计基本的聊天功能,如聊天、列表维护等
系统主要为两大块:聊天室服务器及聊天室客户端
服务器界面设计如下:客户端界面设计如下:三、聊天协议的应答A—网络—B 主机与主机通信主要识别身份(标识设备用IP)及通信协议网络应用程序——端口号——接收数据注: 1
IP 地址是总机,端口号是分机(传输层)2
端口号为 16 位二进制数,范围0 到 65535 ,但实际编程只能用1024以上端口号Socket 编程首先,我们了解常用网络编程协议
我们用得最多的协议是UDP 和 TCP,UDP 是不可靠传输服务, TCP 是可靠传输服务
UDP 就像点对点的数据传输一样,发送者把数据打包,包上有收信者的地址和其他必要信息,至于收信者能不能收到, UDP 协议并不保证
而TCP 协议就像 (实际他们是一个层次的网络协议 )是建立在UDP 的基础上,加入了校验和重传等复杂的机制来保证数据可靠的传达到收信者
一个是面向连接一个无连接,各有用处,在一些数据传输率高的场合如视频会议倾向于UDP ,而对一些数据安全要求高的地方如下载文件就倾向于 TCP
Socket ————网络应用程序电话机————