1. 下载 pantheon 代码并安装子模块
git clone https://github.com/StanfordSNR/pantheon.git
git submodule update --init --recursive
2. 安装依赖与初始化
(1) 运行 tools/install_deps.sh 安装依赖
(2) 运行 src/experiments/setup.py --install-deps (--all | --schemes "<cc1> <cc2> ...") 安装对应拥塞算法的依赖
(3) 运行 src/experiments/setup.py [--setup] [--all | --schemes "<cc1> <cc2> ..."] 初始化相应的拥塞控制方案,--setup 只需要运行一次,但是 setup.py 脚本需要在每次电脑重启后重新执行(不加 --setup)
3. 运行 pantheon
本地仿真环境运行:./src/experiments/test.py local --schemes "<cc1> <cc2> ..."
与远程主机环境运行:./src/experiments/test.py remote user@HOST:PANTHEON_DIR --schemes "<cc1> <cc2> ..." --sender (local | remote)
./src/experiments/test.py local -h,./src/experiments/test.py remote -h 可以查看详细用法。实际用法举例如下:
本地模式:./src/experiments/test.py local --schemes "bbr" --data-dir data
远程模式:./src/experiments/test.py remote root@127.0.0.1:/root/pantheon --schemes "bbr" --sender local --data-dir data
4. 仿真数据分析
./src/analysis/analyze.py --data-dir DIR
上述命令将分析测试数据并生成详细的 pdf 报告。