# TTCP **Repository Path**: fysplh/TTCP ## Basic Information - **Project Name**: TTCP - **Description**: 一个简单的监测TCP吞吐量的工具. 纯C实现(Ubuntu测试通过) - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2020-05-14 - **Last Updated**: 2025-01-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TTCP #### 介绍 一个简单的监测TCP吞吐量的工具. 纯C实现(Ubuntu测试通过) #### 软件架构 - lib: 库文件, 封装了一些方法, 包括readn, writen, transmit, reveive, 以及一些结构体. Options为该程序的配置选项. SessionMessage封装了要传输的数据的次数以及单次传输长度. PayloadMessage封装了单次传输的长度以及数据的首地址. - source: main.c为程序入口, 大体分为两个步骤, 1.解析配置 2.如果是Server端(接收方), 则执行receive操作. 如果是client端(传输方), 则执行transmit方法. - 注: IDE使用的是jetbrains的clion. clion默认使用cmake进行管理. #### 安装教程 1. 从github上拉取项目. git clone https://gitee.com/fysplh/TTCP.git 1. 需要安装cmake编译工具 2. 在根目录执行命令: cmake . && make; 即可获取编译后的ttcp文件. 3. 之后, ttcp没有运行权限, 需要赋予其运行权限. chmod 777 ttcp 4. 完成安装过程. #### 使用说明 1. Server端: ./ttcp isServer 1 port 8087 2. Client端: ./ttcp isServer 0 num 1024 length 4096 port 8087 host 127.0.0.1 参数说明: - isServer: 是否为Server(接受方), 1, 表示是; 0, 表示不是; 默认为0. - num: 传递数据的总数量 - length: 单次传输数据的长度 - port: 对于服务端来说, 表示的是监听端口. 对于客户端来说, 表示的是要连接的server端的端口 - host: 服务端ip地址 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request