当我使用 SSH 时,/proc/net/ 中不存在 tcpprobe
tcpprobe does't exist in /proc/net/ when I used SSH
我是网络世界的新手。我做了一个简单的 SDN,包含 3 个主机、一个交换机和一个控制器。我想使用 tcpprobe 监控流量。我在那里使用 xterm h1 和 运行 shell 打开了一个终端。我还在 h2 中制作了 iperf 服务器。但是当我使用 SSH 终端时,/proc/net/ 目录中不存在 tcpprobe!
enter image description here
但是我将它安装在我的 VM 上并且它存在于我的 VM 的 /proc/net/ 中。
enter image description here
sudo apt-get install transcode
这是我的 shell 代码:
#!/bin/bash
#used variables
eth=h1-eth0
port_to_probe=5001
#we will probe the iperf port
server_addr=10.0.0.2
#LOAD TCP CONGESTION CONTROL MODULES
modprobe tcp_probe port=$port_to_probe full=1 bufsize=50
for time_test in 10 20 30 60 10 20
do
echo "Traffic transmission time set to " $time_test "s randomly.\n"
#start logging data
sudo cat /proc/net/tcpprobe > tcprobe.dat &
#get the cat process ID to later kill it
pid=$!
#kill the logger
kill $pid
done
有人可以帮我吗?
问题是,每个 SSH 使用一个端口连接到 VM,这会导致 /proc/net/.
地址发生变化 要解决此问题,只需将提到的地址更改为 /proc/6337/net/
.通过读取此地址,您实际上读取了真正的 VM 目录。所以最终的代码会变成:
cat /proc/6337/net/tcpprobe
我是网络世界的新手。我做了一个简单的 SDN,包含 3 个主机、一个交换机和一个控制器。我想使用 tcpprobe 监控流量。我在那里使用 xterm h1 和 运行 shell 打开了一个终端。我还在 h2 中制作了 iperf 服务器。但是当我使用 SSH 终端时,/proc/net/ 目录中不存在 tcpprobe!
enter image description here
但是我将它安装在我的 VM 上并且它存在于我的 VM 的 /proc/net/ 中。
enter image description here
sudo apt-get install transcode
这是我的 shell 代码:
#!/bin/bash
#used variables
eth=h1-eth0
port_to_probe=5001
#we will probe the iperf port
server_addr=10.0.0.2
#LOAD TCP CONGESTION CONTROL MODULES
modprobe tcp_probe port=$port_to_probe full=1 bufsize=50
for time_test in 10 20 30 60 10 20
do
echo "Traffic transmission time set to " $time_test "s randomly.\n"
#start logging data
sudo cat /proc/net/tcpprobe > tcprobe.dat &
#get the cat process ID to later kill it
pid=$!
#kill the logger
kill $pid
done
有人可以帮我吗?
问题是,每个 SSH 使用一个端口连接到 VM,这会导致 /proc/net/.
地址发生变化 要解决此问题,只需将提到的地址更改为 /proc/6337/net/
.通过读取此地址,您实际上读取了真正的 VM 目录。所以最终的代码会变成:
cat /proc/6337/net/tcpprobe