Linux-Networking

在 Docker 中執行 nuttcp 時出現分段錯誤

  • April 17, 2016

我正在測量由 Docker 的本機覆蓋網路連接的兩個 Docker 容器之間的 UDP 吞吐量。我已經使用過iperf,但也想用nuttcp. 但是當我啟動伺服器實例然後啟動客戶端實例時,伺服器實例崩潰並顯示以下錯誤消息:Segmentation fault (core dumped). 這就是我啟動伺服器的方式:

nuttcp -S -u --nofork

這就是我啟動客戶端的方式:

nuttcp -u -T 115 10.0.0.3

伺服器實例在啟動客戶端后直接崩潰。我使用相同的命令在nuttcpDocker 之外執行,沒有任何問題。

以下是有關我正在使用的版本的一些附加資訊:

# 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 的 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

引用自:https://serverfault.com/questions/770997