Re: [Ryu-devel] Memory Error in RYU Controller
On Tue, 04 Sep 2018 22:58:53 +0900, Soe Ye Htet wrote: > > [1 ] > [1.1 ] > Dear RYU Team, > > I have faced the memory error in running RYU application. I try to fix this > but it was not successful. My error statement as per attached log. MemoryError means the system is out of memory. https://docs.python.org/3/library/exceptions.html?highlight=memoryerror#MemoryError Did you do something that eats up a lot of memory? > gateway1@gateway1:~/Desktop/ryu-master(Edited)/ryu/app$ ryu-manager > finalrerouting.py > loading app finalrerouting.py > loading app ryu.topology.switches > loading app ryu.controller.ofp_handler > instantiating app finalrerouting.py of node_failure > instantiating app ryu.topology.switches of Switches > instantiating app ryu.controller.ofp_handler of OFPHandler > Switch_ID 1152921504606846979 (IP address ('10.0.0.3', 54266)) is connected > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266)} > Switch_ID 1152921504606846980 (IP address ('10.0.0.4', 39202)) is connected > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266), > 1152921504606846980L: ('10.0.0.4', 39202)} > Switch_ID 1152921504606846981 (IP address ('10.0.0.5', 35620)) is connected > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266), > 1152921504606846980L: ('10.0.0.4', 39202), 1152921504606846981L: > ('10.0.0.5', 35620)} > Switch_ID 1152921504606846985 (IP address ('10.0.0.9', 34164)) is connected > Current_Connected_Switch {1152921504606846985L: ('10.0.0.9', 34164), > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620)} > Switch_ID 1152921504606846978 (IP address ('10.0.0.2', 33202)) is connected > Current_Connected_Switch {1152921504606846985L: ('10.0.0.9', 34164), > 1152921504606846978L: ('10.0.0.2', 33202), 1152921504606846979L: > ('10.0.0.3', 54266), 1152921504606846980L: ('10.0.0.4', 39202), > 1152921504606846981L: ('10.0.0.5', 35620)} > Switch_ID 255421810004811 (IP address ('10.0.0.8', 59836)) is connected > Current_Connected_Switch {1152921504606846978L: ('10.0.0.2', 33202), > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620), > 1152921504606846985L: ('10.0.0.9', 34164), 255421810004811L: ('10.0.0.8', > 59836)} > Switch_ID 1152921504606846982 (IP address ('10.0.0.6', 52652)) is connected > Current_Connected_Switch {1152921504606846978L: ('10.0.0.2', 33202), > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620), > 1152921504606846982L: ('10.0.0.6', 52652), 1152921504606846985L: > ('10.0.0.9', 34164), 255421810004811L: ('10.0.0.8', 59836)} > Switch_ID 1152921504606846977 (IP address ('10.0.0.1', 35032)) is connected > Current_Connected_Switch {1152921504606846977L: ('10.0.0.1', 35032), > 1152921504606846978L: ('10.0.0.2', 33202), 1152921504606846979L: > ('10.0.0.3', 54266), 1152921504606846980L: ('10.0.0.4', 39202), > 1152921504606846981L: ('10.0.0.5', 35620), 1152921504606846982L: > ('10.0.0.6', 52652), 1152921504606846985L: ('10.0.0.9', 34164), > 255421810004811L: ('10.0.0.8', 59836)} > Traceback (most recent call last): > File "/usr/lib/python2.7/logging/__init__.py", line 861, in emit > File "/usr/lib/python2.7/logging/__init__.py", line 734, in format > File "/usr/lib/python2.7/logging/__init__.py", line 481, in format > File "/usr/lib/python2.7/logging/__init__.py", line 439, in > formatException > File "/usr/lib/python2.7/traceback.py", line 125, in print_exception > File "/usr/lib/python2.7/traceback.py", line 67, in print_tb > File "/usr/lib/python2.7/traceback.py", line 13, in _print > MemoryError: out of memory > Logged from file app_manager.py, line 299 > Error in the datapath 1002 from ('10.0.0.2', 33202) > Traceback (most recent call last): > File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line > 457, in fire_timers > File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/timer.py", > line 58, in __call__ > cb(*args, **kw) > File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/__init__.py", > line 154, in _timeout > current.throw(exc) > File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", > line 214, in main > result = function(*args, **kwargs) > File "/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py", line 69, in > _launch > File "/usr/lib/python2.7/traceback.py", line 242, in format_exc > return ''.join(format_exception(etype, value, tb, limit)) > File "/usr/lib/python2.7/traceback.py", line 141, in format_exception > list = list + format_tb(tb, limit) > File "/usr/lib/python2.7/traceback.py", line 76, in format_tb > return format_list(extract_tb(tb, limit)) > File "/usr/lib/python2.7/traceback.py", line 100, in extract_tb > linecache.checkcache(filename) > File "/usr/lib/python2.7/linecache
[Ryu-devel] How to change forwarding rules based on network statistics?
Hi everyone, I have implemented a multitable forwarding configuration based on packet's headers. I have also two output ports. Now, i want to implement a way to forward traffic in case links go down, so if link in port 1 goes down i can change the output action rule to forward packets to port 2. I have read about Fast Failover groups but i dont really know if this option is what i am looking for. Anyone knows how to implement this? Thanks in advance. Álvaro. -- 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
Re: [Ryu-devel] How to change forwarding rules based on network statistics?
On Wed, 05 Sep 2018 23:22:30 +0900, Alvaro Jimenez wrote: > > [1 ] > [1.1 ] > Hi everyone, > I have implemented a multitable forwarding configuration based on packet's > headers. I have also two output ports. Now, i want to implement a way to > forward traffic in case links go down, so if link in port 1 goes down i can > change the output action rule to forward packets to port 2. I have read > about Fast Failover groups but i dont really know if this option is what i > am looking for. Anyone knows how to implement this? Fast failover is an optional group type defined in the OpenFlow spec. I haven't used that but it seems to be well documented in the spec. Also the following commit in ovs may serve as an example: commit f73b83fd97d35f219985944be44c6a3a67f045f2 Author: Lszl Sr Date: Thu Apr 20 15:41:57 2017 + ofproto-dpif: Propagate may_enable flag as link aliveness. -- IWAMOTO Toshihiro -- 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
Re: [Ryu-devel] Memory Error in RYU Controller
Dear, I assign the flow rules in each OF Switch to send packet-in message to RYU controller in order to update flow rules dynamically. I think the problem is RYU controller receive the a lot of packet-in message from OF Switch. Best Regards, Soe Ye Htet On Wed, Sep 5, 2018 at 4:08 PM IWAMOTO Toshihiro wrote: > On Tue, 04 Sep 2018 22:58:53 +0900, > Soe Ye Htet wrote: > > > > [1 ] > > [1.1 ] > > Dear RYU Team, > > > > I have faced the memory error in running RYU application. I try to fix > this > > but it was not successful. My error statement as per attached log. > > MemoryError means the system is out of memory. > > > https://docs.python.org/3/library/exceptions.html?highlight=memoryerror#MemoryError > > Did you do something that eats up a lot of memory? > > > > gateway1@gateway1:~/Desktop/ryu-master(Edited)/ryu/app$ ryu-manager > > finalrerouting.py > > loading app finalrerouting.py > > loading app ryu.topology.switches > > loading app ryu.controller.ofp_handler > > instantiating app finalrerouting.py of node_failure > > instantiating app ryu.topology.switches of Switches > > instantiating app ryu.controller.ofp_handler of OFPHandler > > Switch_ID 1152921504606846979 (IP address ('10.0.0.3', 54266)) is > connected > > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266)} > > Switch_ID 1152921504606846980 (IP address ('10.0.0.4', 39202)) is > connected > > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266), > > 1152921504606846980L: ('10.0.0.4', 39202)} > > Switch_ID 1152921504606846981 (IP address ('10.0.0.5', 35620)) is > connected > > Current_Connected_Switch {1152921504606846979L: ('10.0.0.3', 54266), > > 1152921504606846980L: ('10.0.0.4', 39202), 1152921504606846981L: > > ('10.0.0.5', 35620)} > > Switch_ID 1152921504606846985 (IP address ('10.0.0.9', 34164)) is > connected > > Current_Connected_Switch {1152921504606846985L: ('10.0.0.9', 34164), > > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620)} > > Switch_ID 1152921504606846978 (IP address ('10.0.0.2', 33202)) is > connected > > Current_Connected_Switch {1152921504606846985L: ('10.0.0.9', 34164), > > 1152921504606846978L: ('10.0.0.2', 33202), 1152921504606846979L: > > ('10.0.0.3', 54266), 1152921504606846980L: ('10.0.0.4', 39202), > > 1152921504606846981L: ('10.0.0.5', 35620)} > > Switch_ID 255421810004811 (IP address ('10.0.0.8', 59836)) is connected > > Current_Connected_Switch {1152921504606846978L: ('10.0.0.2', 33202), > > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620), > > 1152921504606846985L: ('10.0.0.9', 34164), 255421810004811L: ('10.0.0.8', > > 59836)} > > Switch_ID 1152921504606846982 (IP address ('10.0.0.6', 52652)) is > connected > > Current_Connected_Switch {1152921504606846978L: ('10.0.0.2', 33202), > > 1152921504606846979L: ('10.0.0.3', 54266), 1152921504606846980L: > > ('10.0.0.4', 39202), 1152921504606846981L: ('10.0.0.5', 35620), > > 1152921504606846982L: ('10.0.0.6', 52652), 1152921504606846985L: > > ('10.0.0.9', 34164), 255421810004811L: ('10.0.0.8', 59836)} > > Switch_ID 1152921504606846977 (IP address ('10.0.0.1', 35032)) is > connected > > Current_Connected_Switch {1152921504606846977L: ('10.0.0.1', 35032), > > 1152921504606846978L: ('10.0.0.2', 33202), 1152921504606846979L: > > ('10.0.0.3', 54266), 1152921504606846980L: ('10.0.0.4', 39202), > > 1152921504606846981L: ('10.0.0.5', 35620), 1152921504606846982L: > > ('10.0.0.6', 52652), 1152921504606846985L: ('10.0.0.9', 34164), > > 255421810004811L: ('10.0.0.8', 59836)} > > Traceback (most recent call last): > > File "/usr/lib/python2.7/logging/__init__.py", line 861, in emit > > File "/usr/lib/python2.7/logging/__init__.py", line 734, in format > > File "/usr/lib/python2.7/logging/__init__.py", line 481, in format > > File "/usr/lib/python2.7/logging/__init__.py", line 439, in > > formatException > > File "/usr/lib/python2.7/traceback.py", line 125, in print_exception > > File "/usr/lib/python2.7/traceback.py", line 67, in print_tb > > File "/usr/lib/python2.7/traceback.py", line 13, in _print > > MemoryError: out of memory > > Logged from file app_manager.py, line 299 > > Error in the datapath 1002 from ('10.0.0.2', 33202) > > Traceback (most recent call last): > > File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", > line > > 457, in fire_timers > > File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/timer.py", > > line 58, in __call__ > > cb(*args, **kw) > > File > "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/__init__.py", > > line 154, in _timeout > > current.throw(exc) > > File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", > > line 214, in main > > result = function(*args, **kwargs) > > File "/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py", line 69, > in > > _lau