我正在测量由Docker的本机覆盖网络连接的两个Docker容器之间的UDP吞吐量.我已经使用过iperf,但也想用nuttcp测量吞吐量.但是当我启动服务器实例然后启动客户端实例时,服务器实例崩溃并显示以下错误消息:分段错误(核心转储).这就是我启动服务器的方式:
nuttcp -S -u --nofork
这就是我启动客户端的方式:
nuttcp -u -T 115 10.0.0.3
启动客户端后,服务器实例直接崩溃.我使用相同的命令在Docker之外运行nuttcp而没有任何问题.
以下是有关我正在使用的版本的一些其他信息:
# inside the container: $uname -a Linux 310d92462ac0 3.19.0-58-generic #64~14.04.1-Ubuntu SMP Fri Mar 18 19:05:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux $nuttcp -V nuttcp-6.1.2 # outside the container: $uname -a Linux libAMS 3.19.0-58-generic #64~14.04.1-Ubuntu SMP Fri Mar 18 19:05:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux $docker -v Docker version 1.10.3,build 20f81dd
有谁知道如何解决这个问题?
解决方法
该错误发生在nuttcp的Version:6.1.2中
有关更多信息和修复,请阅读此链接
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745051
我的建议是使用新版本.
mkdir nuttcp cd nuttcp/ wget http://nuttcp.net/nuttcp/beta/nuttcp-7.3.3.c
如果你没有gcc
sudo apt-get install build-essential manpages-dev
编译程序并运行
cc nuttcp-7.3.3.c -o nuttcp-7 ./nuttcp-7 –V nuttcp-7.3.3