Skip to content

Commit

Permalink
Add tcpdump to mx-rdma-tools and rdma-tools Docker images
Browse files Browse the repository at this point in the history
- Add `install-tcpdump.sh` to build and install tcpdump and libpcap from source.

Signed-off-by: lou-lan <[email protected]>
  • Loading branch information
lou-lan committed Feb 24, 2025
1 parent ef2f160 commit 982bd18
Show file tree
Hide file tree
Showing 10 changed files with 84 additions and 2 deletions.
4 changes: 4 additions & 0 deletions mx-rdma-tools/image/Dockerfile.template
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ ENV ENV_VERSION_CUDA_SAMPLE=<<ENV_VERSION_CUDA_SAMPLE>>
ENV ENV_GDRCOPY_COMMIT=<<ENV_GDRCOPY_COMMIT>>
ENV ENV_VERSION_NVBANDWIDTH=<<ENV_VERSION_NVBANDWIDTH>>

# build tcpdump
ENV ENV_VERSION_LIBCAP=<<ENV_VERSION_LIBCAP>>
ENV ENV_VERSION_TCPDUMP=<<ENV_VERSION_TCPDUMP>>

# build perftest
# Mellanox OFED (latest): required by perftest
#fix warning: debconf: delaying package configuration, since apt-utils is not installed
Expand Down
2 changes: 2 additions & 0 deletions mx-rdma-tools/image/entry.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ ENV_LOCAL_NODE_IP
ENV_BASEIMAGE_CUDA_VERISON
ENV_BASEIMAGE_OS_VERISON
ENV_VERSION_PERFTEST
ENV_VERSION_LIBCAP
ENV_VERSION_TCPDUMP
ENV_VERSION_NCCLTEST
ENV_VERSION_HPCX
LD_LIBRARY_PATH
Expand Down
4 changes: 4 additions & 0 deletions mx-rdma-tools/image/generateDockerfile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ export ENV_LD_LIBRARY_PATH="/usr/local/cuda-12.5/compat:/usr/lib/x86_64-linux-gn
# https://github.com/linux-rdma/perftest
export ENV_VERSION_PERFTEST=${ENV_VERSION_PERFTEST:-"24.04.0-0.41"}

# https://www.tcpdump.org/release
export ENV_VERSION_LIBCAP=${ENV_VERSION_LIBCAP:-"libpcap-1.10.5"}
export ENV_VERSION_TCPDUMP=${ENV_VERSION_TCPDUMP:-"tcpdump-4.99.5"}

# https://github.com/NVIDIA/nccl-tests/tags
export ENV_VERSION_NCCLTEST=${ENV_VERSION_NCCLTEST:-"v2.13.10"}

Expand Down
32 changes: 32 additions & 0 deletions mx-rdma-tools/image/install-tcpdump.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/bash

# Copyright 2024 Authors of spidernet-io
# SPDX-License-Identifier: Apache-2.0

set -x
set -o xtrace
set -o errexit
set -o pipefail
set -o nounset

echo "build libpcap ${ENV_VERSION_LIBCAP}"
echo "build tcpdump ${ENV_VERSION_TCPDUMP}"

cd /tmp
rm -rf * || true

apt-get update
apt-get install -y --no-install-recommends bison make gcc flex xz-utils

wget https://www.tcpdump.org/release/${ENV_VERSION_LIBCAP}.tar.xz
wget https://www.tcpdump.org/release/${ENV_VERSION_TCPDUMP}.tar.xz

tar -xvf ${ENV_VERSION_LIBCAP}.tar.xz
cd /tmp/${ENV_VERSION_LIBCAP}
./configure
make && make install

tar -xvf ${ENV_VERSION_TCPDUMP}.tar.xz
cd /tmp/${ENV_VERSION_TCPDUMP}
./configure
make && make install
1 change: 0 additions & 1 deletion mx-rdma-tools/image/install-tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@ packages=(
hwloc
libgomp1
kmod
tcpdump
ethtool
iptables
#--------------
Expand Down
4 changes: 4 additions & 0 deletions rdma-tools/image/Dockerfile.template
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ ENV ENV_VERSION_CUDA_SAMPLE=<<ENV_VERSION_CUDA_SAMPLE>>
ENV ENV_GDRCOPY_COMMIT=<<ENV_GDRCOPY_COMMIT>>
ENV ENV_VERSION_NVBANDWIDTH=<<ENV_VERSION_NVBANDWIDTH>>

# build tcpdump
ENV ENV_VERSION_LIBCAP=<<ENV_VERSION_LIBCAP>>
ENV ENV_VERSION_TCPDUMP=<<ENV_VERSION_TCPDUMP>>

# build perftest
# Mellanox OFED (latest): required by perftest
#fix warning: debconf: delaying package configuration, since apt-utils is not installed
Expand Down
2 changes: 2 additions & 0 deletions rdma-tools/image/entry.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ ENV_LOCAL_NODE_IP
ENV_BASEIMAGE_CUDA_VERISON
ENV_BASEIMAGE_OS_VERISON
ENV_VERSION_PERFTEST
ENV_VERSION_LIBCAP
ENV_VERSION_TCPDUMP
ENV_VERSION_NCCLTEST
ENV_VERSION_HPCX
LD_LIBRARY_PATH
Expand Down
4 changes: 4 additions & 0 deletions rdma-tools/image/generateDockerfile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,10 @@ export ENV_VERSION_PERFTEST=${ENV_VERSION_PERFTEST:-"24.04.0-0.41"}
# https://github.com/NVIDIA/nccl-tests/tags
export ENV_VERSION_NCCLTEST=${ENV_VERSION_NCCLTEST:-"v2.13.10"}

# https://www.tcpdump.org/release
export ENV_VERSION_LIBCAP=${ENV_VERSION_LIBCAP:-"libpcap-1.10.5"}
export ENV_VERSION_TCPDUMP=${ENV_VERSION_TCPDUMP:-"tcpdump-4.99.5"}

# https://developer.nvidia.com/networking/hpc-x
export ENV_VERSION_HPCX=${ENV_VERSION_HPCX:-"v2.19"}
export ENV_DOWNLOAD_HPCX_URL="https://content.mellanox.com/hpc/hpc-x/${ENV_VERSION_HPCX}/hpcx-${ENV_VERSION_HPCX}-gcc-mlnx_ofed-${ENV_BASEIMAGE_OS_VERISON}-cuda12-x86_64.tbz"
Expand Down
32 changes: 32 additions & 0 deletions rdma-tools/image/install-tcpdump.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/bash

# Copyright 2024 Authors of spidernet-io
# SPDX-License-Identifier: Apache-2.0

set -x
set -o xtrace
set -o errexit
set -o pipefail
set -o nounset

echo "build libpcap ${ENV_VERSION_LIBCAP}"
echo "build tcpdump ${ENV_VERSION_TCPDUMP}"

cd /tmp
rm -rf * || true

apt-get update
apt-get install -y --no-install-recommends bison make gcc flex xz-utils

wget https://www.tcpdump.org/release/${ENV_VERSION_LIBCAP}.tar.xz
wget https://www.tcpdump.org/release/${ENV_VERSION_TCPDUMP}.tar.xz

tar -xvf ${ENV_VERSION_LIBCAP}.tar.xz
cd /tmp/${ENV_VERSION_LIBCAP}
./configure
make && make install

tar -xvf ${ENV_VERSION_TCPDUMP}.tar.xz
cd /tmp/${ENV_VERSION_TCPDUMP}
./configure
make && make install
1 change: 0 additions & 1 deletion rdma-tools/image/install-tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,6 @@ packages=(
hwloc
libgomp1
kmod
tcpdump
ethtool
iptables
#--------------
Expand Down

0 comments on commit 982bd18

Please sign in to comment.