Dear Ramon,
Our lab members are considering the Integration between Mininet and Jupyter Notebook to come up with a modern web-based environment so as to be used for educational purposes. At this juncture, the progress is shown in the following YouTube video: https://www.youtube.com/watch?v=E_WzgIDSJ6k&feature=youtu.be
One of the obstacles in this path could be the great features xterm is offering for mininet and mininet-wifi. I am wondering if you have any possible solution for importing net.plotGraph you used in mininet-wifi, and Xterm into Jupyter Notebook?
Note 1: It may sound off-topic, If so, kindly ignore this post.
Note 2: We also found: https://github.com/adamj9431/notebook_xterm
Sincerely,
Muhammad
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/CAK8U23ZhDz%2BOT9iCRYQfMvmvQciSHKeU%2BjJpqtGUTKtmCWs8xA%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/c37f342c-0854-4bbd-97b6-3fb04d2fdcc5%40googlegroups.com.
Hello Muhammad,
I successfully ran both xterm and net.ploGraph() two or three months ago. If I remember correctly, I didn't have to do anything but install jupyter, start it with the jupyter notebook command, and run Mininet-WiFi through the web page at port 8888. Are you doing anything other than that?Regards,Ramon
On Tue, Mar 3, 2020 at 9:09 AM Muhammad <muhamm...@gmail.com> wrote:
Dear Ramon and Christian,--
The real obstacle is that Jupyter Notebook does not support running GUI directly inside(as far as we know), which it means there is no chance to run the command like:
mininet>xterm h1
or see the GUI plotGraph indicating the real positions of node in the case of mininet-wifi. We have searched for feasible solutions, but what we have come up with so far is:
export your current session with x11vnc and then view it with a web based VNC viewer.Have you ever tried this before? Do you think this is the right path to progress?
Note: Providing the undergraduate students with GUI experience, specifically plotGraph is very important to us.
Sincerely,
Mohammad
On Monday, March 2, 2020 at 7:35:18 PM UTC+1, Ramon Fontes wrote:Hello Muhammad,It's good to know someone is working on Mininet(-WiFi) and Jupyter Notebook for educational purposes. I have no doubt that it will be of great value to many students.Could you provide more details about the problem with net.plotGraph and xterm?
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/c37f342c-0854-4bbd-97b6-3fb04d2fdcc5%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/50f6152e-fe36-494a-ae20-a6297fbfb7ad%40googlegroups.com.
Ok, I got your point. Regarding plotGraph() I need to check if we can use methods such as those presented at https://medium.com/@1522933668924/using-matplotlib-in-jupyter-notebooks-comparing-methods-and-some-tips-python-c38e85b40ba1. Did you try %matplotlib notebook?
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/c37f342c-0854-4bbd-97b6-3fb04d2fdcc5%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/c37f342c-0854-4bbd-97b6-3fb04d2fdcc5%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/50f6152e-fe36-494a-ae20-a6297fbfb7ad%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/77806249-27f8-431e-96ac-b9216608ff23%40googlegroups.com.
Dear Muhammad,I really don't know why do you need to follow those steps. You'll able to run Mininet-WiFi (as well as Mininet) as long as you run jupyter with sudo.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/c37f342c-0854-4bbd-97b6-3fb04d2fdcc5%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/50f6152e-fe36-494a-ae20-a6297fbfb7ad%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-discuss+unsub...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/e501eb90-fbc4-4b83-ac1f-8366d992dd1bn%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/9d5bb59a-d591-42fb-b566-b997fffbc63bn%40googlegroups.com.
Dear Ramon,
There is a next update regarding executing mininet-wifi examples on Jupyter-Notebook considering the following milestones:
· 1. SSH Tunneling
· 2. Show GUI on Remote Display
· 3. IPython & python3
· 4. Jupyter Server: Ubuntu 18.04 / Client: Windows 10
Short Demo: https://www.youtube.com/watch?v=xTprIa0SFXs
At this juncture, everything seems to be working properly. I
am just cogitating about the possibility of offering a mininet-wifi experiments course using JupyterHub
in which students only use a web browser to execute the experiments. One
obstacle is the running of the net.PlotGraph in a new window. If there exists a
possibility to update the embedded PlotGraph in cell(%matplotlib inline), then there
is no need to open a new GUI-based figure that could be problematic when
deploying everything on web browser. I wrote a thread to update the inline
figure every 1 second, but it was an unsuccessful attempt. Please note that
when we use the inline plotting behavior of matplotlib, then one frame of
PlotGraph is drawn, and the rest of the code is executed, which offers a hint
that there may exist a way to update the PlotGraph inside the output cell. I also post the issue to the Jupyter Group.
Update: %matplotlib notebook also outputs a blank white page.
Sincerely,
Muhammad
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/bb4f5952-d31f-42a5-a4b4-0a40991a502cn%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/ac3906b7-8dfa-421f-b8eb-e57c633ce17an%40googlegroups.com.
Dear Ramon,
That is Great! Thank You.
Actually, since your previous message, I was thinking that executing two cells simultaneously (and independently) may be a solution to the problem. Hence, I was working with ipyparallel (IPython for parallel computing), and I made progress. But, now I need to stop that investigation.
One small inquiry exists on my side.
For the sake of reproducibility, I was working with the ready VM image of mn-wifi (i.e., [3.4GB Size] - Lubuntu 20.04 x64 - Mininet-WiFi (pass: wifi)). It was totally working with the previous steps we took to resolve the problem.
As soon as you commit the changes to the cli.py. I did git pull and update the code. Strange though it may seem, the plot was forced to be opened in an external window (figure), and not inside the cell of Jupyter.
In other words, before doing the git pull, nothing was wrong with jupyter.ipynb (i.e., the first cell configuring matplotlib made the way to see the plot inside the cell). Hence, there should exist one commit (compared to the version installed on the VM ready image) that causes this behavior.
I double-check it with the last commit. The last commit was not the reason for this behavior, as I revert the git pull and manually change the cli.py and make install, and all parts were working as they should be.
Any idea about it? Did you alter any lines in the plot or other parts?
Please try this commit.
Dear All,
Update: I have some attempts to do the integration with JupyterHub (As it offers user control and etc.)
One question that needs to be checked with you in our previous attempt. I provided a simple ipynb file with a handover example. The issue is stated below.
· Execution 1: When running cell 2 (i.e., the handover example), the netplot works perfectly. There exists some mobility scenario in cell 2. If you execute cell 3 (i.e., ping) right after execution of cell 2 and before or during the mobility, the netplot graph will stop working, and ping continues to be executed. After finishing the ping, the mobility is done in the cell 2. Meanwhile, you get the below output in cell 3.
64 bytes from 10.0.0.2: icmp_seq=6 ttl=64 time=4.38 ms
Exception in thread wifiParameters:
Traceback (most recent call last):
File "/usr/lib/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/mobility.py", line 171, in parameters
self.config_links(mob_nodes)
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/mobility.py", line 195, in config_links
ack = self.check_in_range(intf, ap_intf)
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/mobility.py", line 139, in check_in_range
self.ap_out_of_range(intf, ap_intf)
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/mobility.py", line 105, in ap_out_of_range
intf.disconnect(ap_intf)
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/link.py", line 515, in disconnect
self.iwdev_cmd('{} disconnect'.format(self.name))
File "/usr/local/lib/python3.8/dist-packages/mininet_wifi-2.6-py3.8.egg/mn_wifi/link.py", line 117, in iwdev_cmd
return self.cmd('iw dev', *args)
File "/usr/local/lib/python3.8/dist-packages/mininet/link.py", line 70, in cmd
return self.node.cmd( *args, **kwargs )
File "/usr/local/lib/python3.8/dist-packages/mininet/node.py", line 386, in cmd
self.sendCmd( *args, **kwargs )
File "/usr/local/lib/python3.8/dist-packages/mininet/node.py", line 303, in sendCmd
assert self.shell and not self.waiting
AssertionError
64 bytes from 10.0.0.2: icmp_seq=7 ttl=64 time=4.70 ms
…
· Execution2: let’s run cell 2 and waits for mobility to be accomplished. Then, by executing cell 3, ping outputs unreachable as it is expected since the sta is out of the range of coverage of AP.
It seems that executing the CLI(cmd=ping) stops the mobility. Any idea here to overcome?
Best,
Muhammad
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mininet-wifi-discuss/92387b8d-7507-4767-b868-1112e49d96c4n%40googlegroups.com.