Hi,
> So, did you mean I should run like that ryu-manager simple_switch_stp.py
> --observe-links?
No, you don't have to use simple_switch_stp.py,
but you should write your Ryu application and
catch EventLinkAdd/EventLinkDelete events as followings.
-----------------
Snippet of code:
-----------------
...
from ryu.topology import api
from ryu.topology.event import EventLinkAdd, EventLinkDelete
...
class SampleApp(app_manager.RyuApp):
...
@set_ev_cls(EventLinkAdd, MAIN_DISPATCHER)
def _link_add_handler(self, ev):
self.logger.info('EventLinkAdd = %s', ev)
...
@set_ev_cls(EventLinkDelete, MAIN_DISPATCHER)
def _link_del_handler(self, ev):
self.logger.info('EventLinkDelete = %s', ev)
...
-----------------
And start your app with --observe-links option.
$ ryu-manager --observe-links ryu.app.sample_app
loading app ryu.app.sample_app
loading app ryu.topology.switches
loading app ryu.controller.ofp_handler
instantiating app ryu.app.sample_app of SampleApp
instantiating app ryu.topology.switches of Switches
instantiating app ryu.controller.ofp_handler of OFPHandler
...
if you input "ifconfig s1-eth2 down" on switch, your app will show the
following messages.
...
EventLinkDelete = EventLinkDelete<Link: Port<dpid=1, port_no=2, DOWN> to
Port<dpid=2, port_no=2, LIVE>>
EventLinkDelete = EventLinkDelete<Link: Port<dpid=2, port_no=2, LIVE> to
Port<dpid=1, port_no=2, LIVE>>
...
For more information about developing your app,
please refer to the Ryu-Documentation.
http://ryu.readthedocs.org/en/latest/developing.html
Thanks,
Iwase
On 2015年05月29日 12:26, Hm Balarama wrote:
> Thank you, Iwase.
> Yes, I used simple_switch_stp.py.
> I see timeout_check_period and others in switches.py.
> So, did you mean I should run like that ryu-manager simple_switch_stp.py
> --observe-links?
> I'm sorry, I'm a newbee in Ryu.
>
> Thank you,
> Tsogbayar.
>
> On Fri, May 29, 2015 at 11:16 AM, Yusuke Iwase <[email protected]
> <mailto:[email protected]>> wrote:
>
> Hi,
>
> First, what Ryu application are you using? simple_switch_stp.py?
> If so, simple_switch_stp.py is one of the sample application of Ryu.
> In other words, Ryu does not require to use BPDU,
> just performing like STP switch by using simple_switch_stp.py.
>
> If you want to recover a link failure with Ryu,
> I recommend you to use ryu.topology modules with --observe-links option
> of ryu-manager.
> https://github.com/osrg/ryu/tree/master/ryu/topology
>
> Thanks,
> Iwase
>
> On 2015年05月29日 10:55, Hm Balarama wrote:
> > Hello,
> >
> > I tested Ryu with loop topology. I used 3 switches and those are OF
> enabled.
> > I wanted how much time does Ryu recover a link failure when I remove
> cable.
> > So I changed DEFAULT_MAX_AGE in bpdu.py. Also I set
> DEFAULT_HELLO_TIME=1.
> > I tested 4 times.
> > DEFAULT_MAX_AGE =1 and average recovery time was 74 seconds
> > DEFAULT_MAX_AGE =2 and average recovery time was 72 seconds
> > DEFAULT_MAX_AGE =3 and average recovery time was 71 seconds
> > DEFAULT_MAX_AGE =5 and average recovery time was 74 seconds
> > It seems to me a little bit strange. I don't know why.
> > I expected DEFAULT_MAX_AGE=1 takes very short time than DEFAULT_MAX_AGE
> =2,3,5 but it doesn't.
> > Could you please tell me why it happened?
> >
> > Thank you,
> > Tsogbayar.
> >
> >
> >
> ------------------------------------------------------------------------------
> >
> >
> >
> > _______________________________________________
> > Ryu-devel mailing list
> > [email protected] <mailto:[email protected]>
> > https://lists.sourceforge.net/lists/listinfo/ryu-devel
> >
>
>
>
>
> ------------------------------------------------------------------------------
>
>
>
> _______________________________________________
> Ryu-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ryu-devel
>
------------------------------------------------------------------------------
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel