文件名称:网络通信协议消息发送接收client and service
文件大小:3KB
文件格式:7Z
更新时间:2021-06-30 03:24:55
协议 消息发送 文件传输 网络通信
一个客户端和服务器的代码。文件的读取和创建写入,是使用的linux下的系统调用。服务器是单线程epoll。通过使用自己定义的通信协议实现客户端向服务器发送文件。代码我用c++简单的封装了一下,重点是数据包的定义,以及发送数据和接收数据时包的处理代码(protocol.h,server_recv(),send_to_serv()) 发送时数据包是由包头+数据 组成的:其中包头内容分为包类型+包长度。 接收时,只需要先保证将数据包的包头读完整,通过收到的数据包包头里的数据长度和数据包类型,判断出我们将要收到一个带有什么样类型的多少长度的数据。然后循环接收直到接收的数据大小等于数据长度停止,此时我们完成接收一个完整数据包。
【文件预览】:
protocal.hpp
client.cpp
server.cpp