iist-sysnet / OpenSDNDataset

Open SDN Dataset with Compromised Control Plane
GNU General Public License v3.0
18 stars 3 forks source link

issue with multi-threading ? #2

Open brownbytes opened 5 years ago

brownbytes commented 5 years ago

Hi ,

What version of mininet is advisable to run the traffic generator? I tried running the generator mininet_1.py script and I seem to be hitting mininet assertion errors due to locking?

Exception in thread Thread-2: Traceback (most recent call last): File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner self.run() File "mininet_1.py", line 43, in run self.perform(sw[0], sw[1]) File "mininet_1.py", line 149, in perform net.get(one).cmd(cmd) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 357, in cmd self.sendCmd( *args, **kwargs ) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 274, in sendCmd assert self.shell and not self.waiting AssertionError

4sarathbabu commented 5 years ago

Hi,

We used Mininet v2.2.

Thanks. Sarath Babu

brownbytes commented 5 years ago

Hi Sarath babu,

Thanks for the information. Were there any other environmental settings that were done ? Also, do you have any suggestions on working with this issue?

Regards Durga.

anandsanto commented 5 years ago

Hi Durga,

  1. We did not use any environmental settings. However, we expect utilities like iperf installed.
  2. Your specific problem does not seem to be about locking. It is because, you're trying to send commands too quickly before the previous ones complete. There is no explicit assertion implemented from our side to prevent this from happening - our interval was chosen such a way that this does not happen in our system. If you look at the mininet source code (node.py) the variable self.waiting is set to True while sending a command and set to False only when a reply is received or when called monitor function.

Feel free to add such assertion and try again. Let us know if there are any issues if this doesn't work.

--

Regards Anand N

On Sun, Feb 24, 2019 at 4:42 AM brownbytes notifications@github.com wrote:

Hi Sarath babu,

Thanks for the information. Were there any other environmental settings that were done ?

Regards Durga.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/iist-sysnet/OpenSDNDataset/issues/2#issuecomment-466709834, or mute the thread https://github.com/notifications/unsubscribe-auth/ALfGrUWZMaBGzZV7ooxnb_yiHGnpL6Y4ks5vQcr7gaJpZM4bKWkJ .

nisha077 commented 5 years ago

Hi durga,

I am also facing the same issue,kindly help me as to how you resolve this error.

Exception in thread Thread-2: Traceback (most recent call last): File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner self.run() File "mininet_1.py", line 43, in run self.perform(sw[0], sw[1]) File "mininet_1.py", line 149, in perform net.get(one).cmd(cmd) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 357, in cmd self.sendCmd( *args, **kwargs ) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 274, in sendCmd assert self.shell and not self.waiting AssertionError

brownbytes commented 5 years ago

Hi Nisha,

I was short of time and moved onto experimenting with a traffic generation tool . So far the tool has been working ok for me. If you are keen on using the dataset from this tool, may be you can approach the developers here. As I mentioned earlier, i am using a standalong traffic generation tool to generate traffic for my experiments.

nisha077 commented 5 years ago

Hi, Developers,

Plz look into this error.I am getting this error and not able to solve it.The variable self.waiting is already set True in Sendcmd() and false in monitor function respectively in node.py. I will be thankful to you for the same.

Exception in thread Thread-2: Traceback (most recent call last): File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner self.run() File "mininet_1.py", line 43, in run self.perform(sw[0], sw[1]) File "mininet_1.py", line 149, in perform net.get(one).cmd(cmd) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 357, in cmd self.sendCmd( *args, **kwargs ) File "build/bdist.linux-x86_64/egg/mininet/node.py", line 274, in sendCmd assert self.shell and not self.waiting AssertionError