陳建豪 | 21 Oct 10:50 2014
Picon

dynamic load and unload modules

Can we build a mother module which can dynamically load and unload other modules instead of calling all of them in the beginning (ryu_manager A.py B.py ...)?

We have try to use run_apps in base/app_manager.py, but it will be conflict if they both have function relate to controller.

For example, we run a controller first and then use web gui to load simple_switch_13.py, controller will be crash.

Nn web gui we just use run_apps to call simple_switch_13.py, it will show SERVICE_BRICK problem.
                                                                                                                                                             
Thank for your reply.
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Ryu-devel mailing list
Ryu-devel@...
https://lists.sourceforge.net/lists/listinfo/ryu-devel
Aneta Wojewoda | 21 Oct 00:21 2014
Picon

Dokumenty

Witam,

Zwracam się z zapytaniem w imieniu internetowego serwisu tłumaczeniowego.

Polscy przedsiębiorcy szukają dobrych jakościowo tłumaczeń w związku z
rosnącym eksportem i chęcią nawiązywania międzynarodowej współpracy.

Chciałam się zapytać czy mogę przedstawić ofertę na usługi tłumaczeń
pisemnych?

Pozdrawiam,
Aneta Wojewoda
Senior Account Manager
lingworld.eu

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
汪 建廷 | 20 Oct 05:51 2014
Picon

dynamic load and unload modules

Can we build a mother module which can dynamically load and unload other modules instead of calling all of them in the beginning (ryu_manager A.py B.py ...)? <!-- .hmmessage P { margin:0px; padding:0px } body.hmmessage { font-size: 12pt; font-family:新細明體 } -->

We have try to use run_apps in base/app_manager.py, but it will be conflict if they both have function relate to controller.

For example, we run a controller first and then use web gui to load simple_switch_13.py, controller will be crash.

Nn web gui we just use run_apps to call simple_switch_13.py, it will show SERVICE_BRICK problem.
                                                                                                                                                             
Thank for your reply.


------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Ryu-devel mailing list
Ryu-devel@...
https://lists.sourceforge.net/lists/listinfo/ryu-devel
Toshiki Tsuboi | 19 Oct 03:32 2014
Picon

[PATCH] bgp: fix bug of ASPathFilter in case of iBGP peering

In normally, when RyuBGPSpeaker originates some prefixes, it sends BGP Update messages as [ASpath: None]
to peering iBGP router.
But, In use of ASPathFilter 'policy=TOP', RyuBGPSpeaker has failed to send Update messages as bellow.

$ sudo python sampleBGP_for_InterAS-MPLS-VPN-in-RyuBGP1.py
INFO:bgpspeaker.api.base:API method core.start called with args: {'router_id': '10.0.1.1',
'label_range': (1000, 1999), 'waiter': <ryu.lib.hub.Event object at 0x7f6ba91de890>, 'local_as':
65011, 'bgp_server_port': 179, 'refresh_max_eor_time': 0, 'refresh_stalepath_time': 0}
INFO:bgpspeaker.api.base:API method neighbor.create called with args: {'remote_as': 65010,
'cap_mbgp_vpnv6': False, 'cap_mbgp_vpnv4': True, 'cap_mbgp_ipv6': False, 'is_next_hop_self':
False, 'cap_mbgp_ipv4': True, 'multi_exit_disc': 100, 'is_route_server_client': False,
'peer_next_hop': None, 'password': None, 'ip_address': '192.168.101.101'}
INFO:bgpspeaker.api.base:API method neighbor.create called with args: {'remote_as': 65011,
'local_port': 50001, 'cap_mbgp_vpnv6': False, 'cap_mbgp_vpnv4': True, 'cap_mbgp_ipv6': False,
'is_next_hop_self': True, 'cap_mbgp_ipv4': True, 'is_route_server_client': False,
'peer_next_hop': None, 'local_address': '10.0.1.1', 'password': None, 'ip_address': '10.0.1.2'}
INFO:bgpspeaker.api.base:API method neighbor.create called with args: {'remote_as': 65011,
'local_port': 50002, 'cap_mbgp_vpnv6': False, 'cap_mbgp_vpnv4': True, 'cap_mbgp_ipv6': False,
'is_next_hop_self': True, 'cap_mbgp_ipv4': True, 'is_route_server_client': False,
'peer_next_hop': None, 'local_address': '10.0.1.1', 'password': None, 'ip_address': '10.0.1.3'}
INFO:bgpspeaker.api.base:API method vrf.create called with args: {'import_rts': ['65010:101'],
'route_family': 'ipv4', 'site_of_origins': None, 'route_dist': '65010:101', 'export_rts': ['65010:101']}
INFO:bgpspeaker.api.base:API method prefix.add_local called with args: {'prefix':
'192.168.4.0/30', 'next_hop': '0.0.0.0', 'route_dist': '65010:101', 'route_family': 'ipv4'}
INFO:bgpspeaker.api.base:API method prefix.add_local called with args: {'prefix':
'10.10.10.4/32', 'next_hop': '192.168.4.2', 'route_dist': '65010:101', 'route_family': 'ipv4'}
INFO:bgpspeaker.api.base:API method prefix.add_local called with args: {'prefix':
'192.168.204.0/30', 'next_hop': '192.168.4.2', 'route_dist': '65010:101', 'route_family': 'ipv4'}
INFO:bgpspeaker.api.base:API method neighbor.attribute_map.set called with args: {'ip_address':
'10.0.1.3', 'route_family': 'ipv4', 'route_dist': '65010:101', 'attribute_map': [AttributeMap(filters=[ASPathFilter(as_number=65010,policy=TOP)],attribute_type=LOCAL_PREF,attribute_value=200)]}
INFO:bgpspeaker.cli:starting ssh server at localhost:4990
INFO:bgpspeaker.peer:Connection to peer: 192.168.101.101 established
INFO:bgpspeaker.peer:Connection to peer: 10.0.1.2 established
INFO:bgpspeaker.peer:Connection to peer: 10.0.1.3 established
ERROR:ryu.lib.hub:hub: uncaught exception: Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py", line 52, in _launch
    func(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/peer.py", line 708, in _process_outgoing_msg_list
    self._send_outgoing_route(outgoing_msg)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/peer.py", line 667, in _send_outgoing_route
    update_msg = self._construct_update(outgoing_route)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/peer.py", line 938, in _construct_update
    result = self._lookup_attribute_map(at_maps, attr_type, path)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/peer.py", line 2004,
in _lookup_attribute_map
    cause, result = m.evaluate(path)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/info_base/base.py",
line 1171, in evaluate
    cause, result = f.evaluate(path)
  File "/usr/local/lib/python2.7/dist-packages/ryu/services/protocols/bgp/info_base/base.py",
line 1074, in evaluate
    path_seg = path_seg_list[0]
IndexError: list index out of range

Signed-off-by: Toshiki Tsuboi <t.tsubo2000@...>
---
 ryu/services/protocols/bgp/info_base/base.py | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/ryu/services/protocols/bgp/info_base/base.py b/ryu/services/protocols/bgp/info_base/base.py
index 0e56bd0..d3bc445 100644
--- a/ryu/services/protocols/bgp/info_base/base.py
+++ b/ryu/services/protocols/bgp/info_base/base.py
 <at>  <at>  -1000,9 +1000,9  <at>  <at>  class ASPathFilter(Filter):
     Attribute        Description
     ================ ==================================================
     as_number        A AS number used for this filter
-    policy           ASPathFilter.POLICY_TOP and PrefixFilter.POLICY_END,
+    policy           ASPathFilter.POLICY_TOP and ASPathFilter.POLICY_END,
                      ASPathFilter.POLICY_INCLUDE and
-                     PrefixFilter.POLICY_NOT_INCLUDE are available.
+                     ASPathFilter.POLICY_NOT_INCLUDE are available.
     ================ ==================================================

     Meaning of each policy is as follows;
 <at>  <at>  -1011,7 +1011,7  <at>  <at>  class ASPathFilter(Filter):
         Filter checks if the specified AS number is at the top of
         AS_PATH attribute.

-    * POLICY_TOP :
+    * POLICY_END :
         Filter checks is the specified AS number
         is at the last of AS_PATH attribute.

 <at>  <at>  -1071,7 +1071,10  <at>  <at>  class ASPathFilter(Filter):

         path_aspath = path.pathattr_map.get(BGP_ATTR_TYPE_AS_PATH)
         path_seg_list = path_aspath.path_seg_list
-        path_seg = path_seg_list[0]
+        if path_seg_list:
+            path_seg = path_seg_list[0]
+        else:
+            path_seg = []
         result = False

         LOG.debug("path_seg : %s", path_seg)
--

-- 
1.9.1
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
fortitude.zhang | 19 Oct 17:51 2014
Picon

[PATCH] stplib.py: Should wildcard non-relevant bits in the mask field of port mod message for OpenFlow 1.2+.

---
 ryu/lib/stplib.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/ryu/lib/stplib.py b/ryu/lib/stplib.py
index 8855cab..9fbdece 100644
--- a/ryu/lib/stplib.py
+++ b/ryu/lib/stplib.py
 <at>  <at>  -1151,7 +1151,10  <at>  <at>  class OfCtl_v1_2later(OfCtl_v1_0):
         config = {ofproto_v1_2: PORT_CONFIG_V1_2,
                   ofproto_v1_3: PORT_CONFIG_V1_3}

-        mask = 0b1111111
+        # Only turn on the relevant bits defined on OpenFlow 1.2+, otherwise
+        # some switch that follows the specification strictly will report
+        # OFPPMFC_BAD_CONFIG error.
+        mask = 0b1100101
         msg = parser.OFPPortMod(self.dp, port.port_no, port.hw_addr,
                                 config[ofp][state], mask, port.advertised)
         self.dp.send_msg(msg)
--

-- 
1.8.5.5

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
Choe Jong-Hak (choe | 17 Oct 18:32 2014
Picon

building a packet in ryu controller

Hi all,

I am trying to make a simple ryu program which redirects the packets.

I have three hosts(h1, h2, h3) and one ryu controller, and openwrt switch. 

If I ping from h1 to h2, the following happens:
     1. h1 sends broadcast packets to all hosts looking for h2's mac address. (the packet is about "who has h2")
     2. controller changes h2 into h3 in the broadcast packet (the packet is changed into "who has h3")
     3. h3 sends ARP reply message to h1 (the packet is about "h3 is here"). 
     4. Controller changes the source mac and ip addresses in the packet so that the packet looks like from h2 
          (the packet is about "h2 is there").
     5. h1 believes the packet is sent from h2 and starts to send ICMP request to h2.
     6. controller send the packet to h3.

For these, the program keeps all mac addresses and ip addresses for all hosts.

This program works perfectly in Mininet. But it does not work for the real testbed. The switch and
controller does not show errors.
The ping says destination host is not reachable. I checked the input, output packets in controller and
those seemed to be ok.

I think the reason is that the controller can manipulate the packet, but it cannot create one to make believe
by host.
And the reason that the program works in Mininet is because the hosts are virtual and created by me.
Because mac addresses and ip address for real machines are different from those in mininet, I made changes,
but I don't think that is the problem.

Can anybody tell me what my problem is?
Thank you in advance.
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
Weiyang Mo | 17 Oct 02:36 2014
Picon

How to create LLC packets with specific payload

Hi All,

I would like to create some LLC packets with specific payload. I did the following:

e = ethernet.ethernet(dst='ff:ff:ff:ff:ff:ff',
                              src='08:60:6e:7f:74:e7',
                              ethertype=1000)

l= llc.llc(dsap_addr=1,ssap_addr=1,control=llc.ControlFormatI())
p = packet.Packet()
p.add_protocol(e)
p.add_protocol(l)
p.serialize()

I execute the code and I do find the LLC packet is constructed, however I have no ideas where can I append its payload.

Any one can help?

Thank you very much.

William
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
Ashwin Prabhu | 16 Oct 09:54 2014
Picon

RYU TOPOLOGY VIEWER problem

Hello Team,

I am referring to this document.

I wanted to see how topology viewer works. So i created a mininet topology as mentioned in the link. 
sudo mn --controller remote --topo tree,depth=3
​I then opened a new command prompt and tried to execute this.

$ PYTHONPATH=. ./bin/ryu run --observe-links ryu/app/gui_topology/gui_topology.py


​This above link is to initiate the topology script. But it gives me an error stating:
bash: ./bin/ryu​: No such file or directory.



Could you please let me know where i am going wrong ?

 
Kind Regards,
Ashwin Prabhu
Graduate Student
San Jose State University
Contact: 408 859 2573
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Ryu-devel mailing list
Ryu-devel@...
https://lists.sourceforge.net/lists/listinfo/ryu-devel
Ashwin Prabhu | 16 Oct 09:47 2014
Picon

RYU TOPOLOGY VIEWER problem

Hello Team,

I am referring to this document.

I wanted to see how topology viewer works. So i created a mininet topology as mentioned in the link. 
sudo mn --controller remote --topo tree,depth=3

​I then opened a new command prompt and tried to execute this.

$ PYTHONPATH=. ./bin/ryu run --observe-links ryu/app/gui_topology/gui_topology.py

This above link is to inititate the topology script. But it gives me an error stating:
bash: ./bin/ryu​ 

--
Kind Regards,
Ashwin Prabhu
Graduate Student
San Jose State University
Contact: 408 859 2573
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
_______________________________________________
Ryu-devel mailing list
Ryu-devel@...
https://lists.sourceforge.net/lists/listinfo/ryu-devel
YAMAMOTO Takashi | 16 Oct 04:45 2014
Picon

[PATCH 1/2] simple_switch_13: Update a comment about OVS bug

Signed-off-by: YAMAMOTO Takashi <yamamoto@...>
---
 ryu/app/simple_switch_13.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ryu/app/simple_switch_13.py b/ryu/app/simple_switch_13.py
index 47cf0a7..14bf2a4 100644
--- a/ryu/app/simple_switch_13.py
+++ b/ryu/app/simple_switch_13.py
 <at>  <at>  -41,7 +41,7  <at>  <at>  class SimpleSwitch13(app_manager.RyuApp):
         # OVS bug. At this moment, if we specify a lesser number, e.g.,
         # 128, OVS will send Packet-In with invalid buffer_id and
         # truncated packet data. In that case, we cannot output packets
-        # correctly.
+        # correctly.  The bug has been fixed in OVS v2.1.0.
         match = parser.OFPMatch()
         actions = [parser.OFPActionOutput(ofproto.OFPP_CONTROLLER,
                                           ofproto.OFPCML_NO_BUFFER)]
--

-- 
1.9.4

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho
Yusuke Iwase | 16 Oct 02:23 2014
Picon

[PATCH] sw test tool: Fix typos

Reported by Ian Y. Choi on ryu-devel.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@...>
---
 ryu/tests/switch/tester.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ryu/tests/switch/tester.py b/ryu/tests/switch/tester.py
index 82120f8..02a1de1 100644
--- a/ryu/tests/switch/tester.py
+++ b/ryu/tests/switch/tester.py
 <at>  <at>  -211,8 +211,8  <at>  <at>  MSG = {STATE_INIT_FLOW:
        {TIMEOUT: 'Failed to request table stats: request timeout.',
         RCV_ERR: 'Failed to request table stats: %(err_msg)s'},
        STATE_SEND_BARRIER:
-       {TIMEOUT: 'Faild to send packet: barrier request timeout.',
-        RCV_ERR: 'Faild to send packet: %(err_msg)s'},
+       {TIMEOUT: 'Failed to send packet: barrier request timeout.',
+        RCV_ERR: 'Failed to send packet: %(err_msg)s'},
        STATE_FLOW_UNMATCH_CHK:
        {FAILURE: 'Table-miss error: increment in matched_count.',
         ERROR: 'Table-miss error: no change in lookup_count.',
--

-- 
1.9.1

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho

Gmane