Hi Corry,

On 2017年06月28日 18:58, corey ross wrote:
Thank you all for your replies...
Yes, It seems the multiprocess module doesn't work properly in ryu...
I did some experiment with multiprocess and Thread modules also without any 
threading.

when I used multiprocess module none of the rules got installed on the switches,

I had the same problem when using multiprocess module.
I guess we need to share socket file descriptors of datapath between 
subprocesses,
but sorry I had no luck.


and with threads it did work and the rules were installed successful;
however the best result -- fastest result -- was installing the rules without any threading ( can any one tell me why?? )

With too many threads, it should take some overhead to switch a thread to 
another
thread. Each of this overhead is not so high, but the number of thread becomes
larger, and it will become to be non-ignorable.


Thanks,
Iwase



I am not good in programming but I am curious to know what should I change in Ryu core to allow multiprocess to work?

Yi Tseng using multiple instance of Ryu works but if I want to install large number of flows in parallel it would be infeasible ( it will have high overhead )

If anyone has any suggestion and solution I would appreciate it.


On Thu, Jun 22, 2017 at 7:47 AM, Iwase Yusuke <iwase.yusu...@gmail.com <mailto:iwase.yusu...@gmail.com>> wrote:

    Hi Yi,


    On 2017年06月22日 05:18, Yi Tseng wrote:
    > Hi Iwase,
    >
    > I am not sure we can do that with multiprocessing module.
    >
    > Might need to change Ryu event mechanism to do that (e.g. need to send 
events to different process...)

    Yes you are right.
    I tried to use multiprocessing module a little, I found we need to some 
modification on Ryu core.
    So this is just an idea.

    Thanks,
    Iwase

     >
     > Yi
     >
     > 2017-06-20 18:48 GMT-07:00 Iwase Yusuke <iwase.yusu...@gmail.com
    <mailto:iwase.yusu...@gmail.com> <mailto:iwase.yusu...@gmail.com 
<mailto:iwase.yusu...@gmail.com>>>:
    >
    >     Hi Corry and Yi,
    >
    >
    >     On 2017年06月21日 03:14, Yi Tseng wrote:
    >     > Hi,
    >     >
    >     > I think we have some similar thread before:
     >     >
    
https://sourceforge.net/p/ryu/mailman/ryu-devel/thread/CAM5MNiVPXW3xWeoHPMriXvSKkUnAHbgv6LqRZ%2BrE5rOZqDKaLQ%40mail.gmail.com/#msg35801377
    
<https://sourceforge.net/p/ryu/mailman/ryu-devel/thread/CAM5MNiVPXW3xWeoHPMriXvSKkUnAHbgv6LqRZ%2BrE5rOZqDKaLQ%40mail.gmail.com/#msg35801377>
    
<https://sourceforge.net/p/ryu/mailman/ryu-devel/thread/CAM5MNiVPXW3xWeoHPMriXvSKkUnAHbgv6LqRZ%2BrE5rOZqDKaLQ%40mail.gmail.com/#msg35801377
    
<https://sourceforge.net/p/ryu/mailman/ryu-devel/thread/CAM5MNiVPXW3xWeoHPMriXvSKkUnAHbgv6LqRZ%2BrE5rOZqDKaLQ%40mail.gmail.com/#msg35801377>>
    >     >
    >     > Basically, I would suggest using multiple Ryu instance(process) to 
install flows to switch.
    >
    >     Thanks Yi!
    >     Yes, I guess it is the best way to use multiple instances.
    >     The architecture might become complex though.
    >
    >     Just an idea, I am wondering if we could use "multiprocessing" 
module...
    >
    >     Thanks,
    >     Iwase
    >
    >     >
     >     > 2017-06-19 3:44 GMT-07:00 corey ross <coreyvr...@gmail.com
    <mailto:coreyvr...@gmail.com> <mailto:coreyvr...@gmail.com 
<mailto:coreyvr...@gmail.com>>
    <mailto:coreyvr...@gmail.com <mailto:coreyvr...@gmail.com> 
<mailto:coreyvr...@gmail.com
    <mailto:coreyvr...@gmail.com>>>>:
    >     >
    >     >     Yes I am referring to the first statement "multi-thread on Python is 
not effective enough"...
    >     >
    >     >     Please let me give another example to make my question more 
clear
    >     >     Lets say the routing algorithm wants to update the paths on 
switch S1, S2, S3. One way is to update all the switches at time 0 (in parallel), and 
the other way is to update s1 at time 0, s2 at time 1, and s3 at time 3 (serial).
    >     >
    >     >     Because of GIL in python a thread has to finish its task before 
moving to another thread; with this in mind I believe using threads will update the 
switches in serial; because the first thread has to finish installing the rules on 
s1, then it moves to the next thread to install the rules on s2 and so on....
    >     >
    >     >     So my question is in Ryu what mechanism I can use to update s1, 
s2, s3  at time 0 (in one go)?
    >     >     I hope my question is more clear now.
    >     >
    >     >
    >     >     Thank you all for your time,
    >     >     Corry
    >     >
    >     >
    >     >
    >     >
    >     >
    >     >     On Mon, Jun 19, 2017 at 5:26 AM, Iwase Yusuke <iwase.yusu...@gmail.com 
<mailto:iwase.yusu...@gmail.com> <mailto:iwase.yusu...@gmail.com
    <mailto:iwase.yusu...@gmail.com>> <mailto:iwase.yusu...@gmail.com
    <mailto:iwase.yusu...@gmail.com> <mailto:iwase.yusu...@gmail.com
    <mailto:iwase.yusu...@gmail.com>>>> wrote:
    >     >
    >     >         Hi,
    >     >
    >     >
    >     >         On 2017年06月17日 20:47, corey ross wrote:
    >     >         > Hey there,
    >     >         > I was wondering if it is possible to install multiple 
flows in parallel, if yes how?
    >     >         >
    >     >         > for e.g if I have a topology of three switches (s1, s2, 
s3), I want to install flow-rules f1 on s1, f2 on s2 and f3 on s3. How can I install 
this three flow rules in parallel instead of doing so in serial fashion?
    >     >         >
    >     >         > I have searched around and It seems that using threads is 
not an effective way.
    >     >
    >     >         Please let me make your question more clear.
    >     >         What does "in parallel" and "in serial" exactly mean?
    >     >
    >     >         You mean; you currently uses multi-thread (using "ryu.lib.hub" or 
"eventlet"),
    >     >         but some post you read says "multi-thread on Python is not 
effective enough",
    >     >         right?
    >     >         If so, are you facing the performance limit, for example?
    >     >
    >     >         Or, you want to get "Datapath" instance for s2 and s3, when 
you get event from
    >     >         s1?
    >     >
    >     >         Thanks,
    >     >         Iwase
    >     >
    >     >         >
    >     >         >
    >     >         >
    >     >         > 
------------------------------------------------------------------------------
    >     >         > Check out the vibrant tech community on one of the 
world's most
    >     >         > engaging tech sites, Slashdot.org! 
http://sdm.link/slashdot
    >     >         >
    >     >         >
    >     >         >
    >     >         > _______________________________________________
    >     >         > Ryu-devel mailing list
     >     >         > Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>>>
     >     >         > https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>>>
    >     >         >
    >     >
    >     >
    >     >
    >     >     
------------------------------------------------------------------------------
    >     >     Check out the vibrant tech community on one of the world's most
    >     >     engaging tech sites, Slashdot.org! http://sdm.link/slashdot
    >     >     _______________________________________________
    >     >     Ryu-devel mailing list
     >     > Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>>>
     >     > https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>>>
     >     >
     >     >
     >     >
     >     >
     >     > --
     >     > Yi Tseng (a.k.a Takeshi)
     >     > Taiwan National Chiao Tung University
     >     > Department of Computer Science
     >     > W2CNLab
     >     >
     >     > https://takeshi.tw
     >     >
     >     >
     >     > 
------------------------------------------------------------------------------
     >     > Check out the vibrant tech community on one of the world's most
     >     > engaging tech sites, Slashdot.org! http://sdm.link/slashdot
     >     >
     >     >
     >     >
     >     > _______________________________________________
     >     > Ryu-devel mailing list
     >     > Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>
    <mailto:Ryu-devel@lists.sourceforge.net 
<mailto:Ryu-devel@lists.sourceforge.net>>
     >     > https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel
    <https://lists.sourceforge.net/lists/listinfo/ryu-devel>>
     >     >
     >
     >
     >
     >
     > --
     > Yi Tseng (a.k.a Takeshi)
     > Taiwan National Chiao Tung University
     > Department of Computer Science
     > W2CNLab
     >
     > https://takeshi.tw




------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot



_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to