# transm 以一个简易的使用`Server`作为中转传输文件。 # 简要说明 - `client`和`server`均为命令行端程序,无GUI。 - `client`从`server`下载文件,如果本地有重复则覆盖。 - 工作方式为`client A`端提交待传输的文件列表到`server`,`client B`端从`server`获取有哪些客户机提交的哪些任务,可以从中下载。 mark == 0 表示,请求下载端的数据。 mark == 1 表示,服务客户端数据。 # 其他 基本可以用了,开发暂时就先到这里,如果要优化或者有需要的的话,有几个大点需要处理。 - 非`transm`客户端链接到服务器,发送不能识别的数据包格式,将导致`buffer`无限增加。 - 服务端如果最大上载速度下载速度(较慢)不一致,将导致大量数据堆积在`Server`端内存等待`Client`端缓慢处理。 - 如果`client`端在传输数据的过程中异常关闭,`Server`端需要丢弃与该客户端相关的数据包。