mininet / mininet

Emulator for rapid prototyping of Software Defined Networks

Home Page:https://mininet.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

When I run mininet, I have some problems

vbhone opened this issue · comments

commented

Hi

  1. When I use python to call mininet to create a topology, the following error occurs:

`*** errRun: ['grep', '-c', 'processor', '/proc/cpuinfo']
1
0*** Setting resource limits
*** Creating network
*** Adding hosts:
*** errRun: ['which', 'mnexec']
/usr/bin/mnexec
0*** errRun: ['which', 'ifconfig']
/usr/sbin/ifconfig
0_popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h0'] 4569*** h0 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h0 _popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h1'] 4571*** h1 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h1 _popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h2'] 4573*** h2 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h2 _popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h4'] 4575*** h4 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h4 _popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h5'] 4577*** h5 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h5
*** Adding switches:
_popen ['mnexec', '-cd', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:s0'] 4579*** s0 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m

added intf lo (0) to node s0
*** s0 : ('ifconfig', 'lo', 'up')
*** errRun: ['which', 'simple_switch']
/usr/bin/simple_switch
0Invalid JSON file.
`

2.My ubuntu version and kernel version are as follows, this is a linux virtual machine:

root@ubuntu:/home/vbhone/mininet/mininet# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal root@ubuntu:/home/vbhone/mininet/mininet# uname -a Linux ubuntu 5.15.0-69-generic #76~20.04.1-Ubuntu SMP Mon Mar 20 15:54:19 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

4.I installed mininet from source code and it works fine with pingall

root@ubuntu:/home/vbhone/mininet/mininet# sudo mn --test pingall *** Creating network *** Adding controller *** Adding hosts: h1 h2 *** Adding switches: s1 *** Adding links: (h1, s1) (h2, s1) *** Configuring hosts h1 h2 *** Starting controller c0 *** Starting 1 switches s1 ... *** Waiting for switches to connect s1 *** Ping: testing ping reachability h1 -> h2 h2 -> h1 *** Results: 0% dropped (2/2 received) *** Stopping 1 controllers c0 *** Stopping 2 links .. *** Stopping 1 switches s1 *** Stopping 2 hosts h1 h2 *** Done completed in 5.367 seconds

5.When I use debug mode, it will also report an error

`root@ubuntu:/home/vbhone/mininet/mininet# mn -v debug --test pingall
*** errRun: ['which', 'controller']
/usr/local/bin/controller
0*** errRun: ['grep', '-c', 'processor', '/proc/cpuinfo']
1
0*** Setting resource limits
*** Creating network
*** Adding controller
*** errRun: ['which', 'mnexec']
/usr/bin/mnexec
0*** errRun: ['which', 'ifconfig']
/usr/sbin/ifconfig
0_popen ['mnexec', '-cd', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:c0'] 5967*** c0 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
*** errRun: ['which', 'telnet']
/usr/bin/telnet
0*** c0 : ('echo A | telnet -e A 127.0.0.1 6653',)
Telnet escape character is 'A'.
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
*** Adding hosts:
*** errRun: ['which', 'mnexec']
/usr/bin/mnexec
0*** errRun: ['which', 'ifconfig']
/usr/sbin/ifconfig
0_popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h1'] 5974*** h1 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h1 _popen ['mnexec', '-cdn', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:h2'] 5976*** h2 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m
h2
*** Adding switches:
*** errRun: ['which', 'ovs-vsctl']
/usr/bin/ovs-vsctl
0*** errRun: ['ovs-vsctl', '-t', '1', 'show']
053d5b0a-a81f-44c4-a9fb-e9ad8d0b2906
ovs_version: "2.13.8"
0*** errRun: ['ovs-vsctl', '--version']
ovs-vsctl (Open vSwitch) 2.13.8
DB Schema 8.2.0
0_popen ['mnexec', '-cd', 'env', 'PS1=\x7f', 'bash', '--norc', '--noediting', '-is', 'mininet:s1'] 5981*** s1 : ('unset HISTFILE; stty -echo; set +m',)
unset HISTFILE; stty -echo; set +m

added intf lo (0) to node s1
*** s1 : ('ifconfig', 'lo', 'up')
s1
*** Adding links:
*** h1 : ('ip link add name h1-eth0 address fe:a4:9f:48:82:f4 type veth peer name s1-eth1 address 26:6e:ca:08:8a:9b netns 5981',)

added intf h1-eth0 (0) to node h1
moving h1-eth0 into namespace for h1
*** h1 : ('ifconfig', 'h1-eth0', 'up')

added intf s1-eth1 (1) to node s1
*** s1 : ('ifconfig', 's1-eth1', 'up')
(h1, s1) *** h2 : ('ip link add name h2-eth0 address 92:2a:86:30:50:4d type veth peer name s1-eth2 address 9e:24:cd:04:da:70 netns 5981',)

added intf h2-eth0 (0) to node h2
moving h2-eth0 into namespace for h2
*** h2 : ('ifconfig', 'h2-eth0', 'up')

added intf s1-eth2 (2) to node s1
*** s1 : ('ifconfig', 's1-eth2', 'up')
(h2, s1)
*** Configuring hosts
h1 *** h1 : ('ifconfig', 'h1-eth0', '10.0.0.1/8', 'up')
*** h1 : ('ifconfig lo up',)
h2 *** h2 : ('ifconfig', 'h2-eth0', '10.0.0.2/8', 'up')
*** h2 : ('ifconfig lo up',)

*** Starting controller
c0 *** errRun: ['which', 'controller']
/usr/local/bin/controller
0*** c0 : ('controller ptcp:6653 1>/tmp/c0.log 2>/tmp/c0.log &',)

*** Starting 1 switches
s1 ...*** errRun: ovs-vsctl -- --id=@s1c0 create Controller target="tcp:127.0.0.1:6653" max_backoff=1000 -- --id=@s1-listen create Controller target="ptcp:6654" max_backoff=1000 -- --if-exists del-br s1 -- add-br s1 -- set bridge s1 controller=[@s1c0,@s1-listen] other_config:datapath-id=0000000000000001 fail_mode=secure other-config:disable-in-band=true other-config:dp-desc=s1 -- add-port s1 s1-eth1 -- set Interface s1-eth1 ofport_request=1 -- add-port s1 s1-eth2 -- set Interface s1-eth2 ofport_request=2
88285107-4727-4dee-9271-3b1273191ea1
6da06083-ad31-48c3-8f5b-f3208e95718c
0
*** Waiting for switches to connect
*** s1 : ('ovs-vsctl -- get Bridge', <OVSSwitch s1: lo:127.0.0.1,s1-eth1:None,s1-eth2:None pid=5981> , 'Controller')
[6da06083-ad31-48c3-8f5b-f3208e95718c, 88285107-4727-4dee-9271-3b1273191ea1]
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '6da06083-ad31-48c3-8f5b-f3208e95718c', 'is_connected')
false
*** s1 : ('ovs-vsctl', '-- get Controller', '88285107-4727-4dee-9271-3b1273191ea1', 'is_connected')
true
s1
*** Ping: testing ping reachability
h1 -> *** h1 : ('LANG=C ping -c1 10.0.0.2',)
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=4.01 ms

--- 10.0.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 4.009/4.009/4.009/0.000 ms
h2
h2 -> *** h2 : ('LANG=C ping -c1 10.0.0.1',)
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=0.464 ms

--- 10.0.0.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.464/0.464/0.464/0.000 ms
h1
*** Results: 0% dropped (2/2 received)
*** Stopping 1 controllers
c0 *** c0 : ('kill %controller',)
*** c0 : ('wait %controller',)
waiting for 5967 to terminate

*** Stopping 2 links
.*** h1 : ('ip link del h1-eth0',)
*** s1 : ('ip link del s1-eth1',)
Cannot find device "s1-eth1"
.*** h2 : ('ip link del h2-eth0',)
*** s1 : ('ip link del s1-eth2',)
Cannot find device "s1-eth2"

*** Stopping 1 switches
*** errRun: ['ovs-vsctl', '--if-exists', 'del-br', 's1']
0*** errRun: ['kill', '-HUP', '5981']
0waiting for 5981 to terminate
s1
*** Stopping 2 hosts
h1 waiting for 5974 to terminate
h2 waiting for 5976 to terminate

*** Done
completed in 5.355 seconds
`

Please help

commented

Can you confirm that this problem happens using the OpenFlow reference controller ? (--controller ref)

commented

Also if you are using Ryu's simple_switch, can you confirm that

ryu run ryu.app.simple_switch --ofp-tcp-listen-port 6653

works correctly outside of Mininet?

And inside of Mininet, can you confirm that the controller is still running c0 jobs and that there are no errors in /tmp/c0.log?

Thanks.