Hello Vilius,

    There are 2 modes in which OpenFlow works on HP switches (for the
firmware you are using). Depending on the mode the OpenFlow pipeline would
be different.

1) Standard Match Mode (DEFAULT)

    0 --------->  100  -------------> 200 -------> 201 -----------> 202
--------> 203 ----------> 204

    0 : Pipeline start. This is a READ ONLY table. You cant program rules
on this
   100: HardwareTable
   200+: Software tables.

2) IP Control Table Mode.

   0 -----------> 50  ------------> 101 ------------------> 200 ------> 201
-----------> 202 --------> 203 ----------> 204
   |                 |                                               |
   |                 |                                               |
   |                 |-----------------> 102 ------------------> |
   |                                                                 |
   ------------------> 100 --------------------------------------|

   0 : Pipeline start. This is a READ ONLY table. You cant program rules on
this
   50: IP Control Table.
   101: IP Match Table
   102: IP Miss table
   100: Non IP table
   200+ : Software Tables.


Not sure why the switch is disconnecting and reconnecting. Can you share
the output of "show logging -r" command on the switch when this is
happening? Also if possible share the packet capture between the switch and
the controller.

Regards,
Nitish

On Tue, Nov 25, 2014 at 4:27 PM, Palubinskas Vilius <
[email protected]> wrote:

>
> Hello,
>
> Looks like HP have upgraded switch firmware to WB.15.16.0004 and OF 1.3
> made possible. Now I found some information what flows can be installed in
> specific tables (100 and 200 table). I modified simple_switch_13.py. At
> first time it look like working when I got notifications or errors.
> Switch's flow table becomes empty. Looks like switch reconnecting after
> some time?  Thanks in advance.
>
> What is config and main modes?
>
> @ubuntu:~/ryu$ PYTHONPATH=. ./bin/ryu-manager --verbose
> ryu/app/simple_switch.py loading app ryu/app/simple_switch.py
> loading app ryu.controller.ofp_handler
> instantiating app ryu/app/simple_switch.py of SimpleSwitch13
> instantiating app ryu.controller.ofp_handler of OFPHandler
> BRICK SimpleSwitch13
>   CONSUMES EventOFPSwitchFeatures
>   CONSUMES EventOFPPacketIn
> BRICK ofp_event
>   PROVIDES EventOFPSwitchFeatures TO {'SimpleSwitch13': set(['config'])}
>   PROVIDES EventOFPPacketIn TO {'SimpleSwitch13': set(['main'])}
>   CONSUMES EventOFPEchoRequest
>   CONSUMES EventOFPPortDescStatsReply
>   CONSUMES EventOFPSwitchFeatures
>   CONSUMES EventOFPErrorMsg
>   CONSUMES EventOFPHello
> connected socket:<eventlet.greenio.GreenSocket object at 0xb6778f0c>
> address:('10.0.0.2', 51640)
> hello ev <ryu.controller.ofp_event.EventOFPHello object at 0xb678518c>
> move onto config mode
> EVENT ofp_event->SimpleSwitch13 EventOFPSwitchFeatures
> switch features ev version: 0x4 msg_type 0x6 xid 0xe30c1503
> OFPSwitchFeatures(auxiliary_id=0,capabilities=271,
> datapath_id=585321643271168L,n_buffers=0,n_tables=3)
> move onto main mode
> connected socket:<eventlet.greenio.GreenSocket object at 0xb678562c>
> address:('10.0.0.2', 55489)
> hello ev <ryu.controller.ofp_event.EventOFPHello object at 0xb67858cc>
> move onto config mode
> EVENT ofp_event->SimpleSwitch13 EventOFPSwitchFeatures
> switch features ev version: 0x4 msg_type 0x6 xid 0x646b5e48
> OFPSwitchFeatures(auxiliary_id=0,capabilities=271,
> datapath_id=585321643271168L,n_buffers=0,n_tables=3)
> move onto main mode
> EVENT ofp_event->SimpleSwitch13 EventOFPPacketIn
> packet in 585321643271168 00:15:2b:19:a9:c0 ff:ff:ff:ff:ff:ff 4
> EVENT ofp_event->SimpleSwitch13 EventOFPPacketIn
> EVENT ofp_event->SimpleSwitch13 EventOFPPacketIn
> connected socket:<eventlet.greenio.GreenSocket object at 0xb673b6ec>
> address:('10.0.0.2', 58809)
> hello ev <ryu.controller.ofp_event.EventOFPHello object at 0xb673b90c>
> move onto config mode
> EVENT ofp_event->SimpleSwitch13 EventOFPSwitchFeatures
> connected socket:<eventlet.greenio.GreenSocket object at 0xb673ba4c>
> address:('10.0.0.2', 53490)
> hello ev <ryu.controller.ofp_event.EventOFPHello object at 0xb673bcac>
> move onto config mode
> EVENT ofp_event->SimpleSwitch13 EventOFPSwitchFeatures
> connected socket:<eventlet.greenio.GreenSocket object at 0xb673be0c>
> address:('10.0.0.2', 55278)
> hello ev <ryu.controller.ofp_event.EventOFPHello object at 0xb66c40cc>
>
> ------------------------------------------------------------
> -------------------------------------------------------------
> diff --git a/ryu/app/simple_switch_13.py b/ryu/app/simple_switch_13.py
> index b9cbad0..fa7c4aa 100644
> --- a/ryu/app/simple_switch_13.py
> +++ b/ryu/app/simple_switch_13.py
> @@ -45,9 +45,9 @@ class SimpleSwitch13(app_manager.RyuApp):
>          match = parser.OFPMatch()
>          actions = [parser.OFPActionOutput(ofproto.OFPP_CONTROLLER,
>                                            ofproto.OFPCML_NO_BUFFER)]
> -        self.add_flow(datapath, 0, match, actions)
> +        self.add_flow(datapath, 0, 100, match, actions)
>
> -    def add_flow(self, datapath, priority, match, actions,
> buffer_id=None):
> +    def add_flow(self, datapath, priority, table, match, actions,
> buffer_id=Non
>          ofproto = datapath.ofproto
>          parser = datapath.ofproto_parser
>
> @@ -59,7 +59,7 @@ class SimpleSwitch13(app_manager.RyuApp):
>                                      instructions=inst)
>          else:
>              mod = parser.OFPFlowMod(datapath=datapath, priority=priority,
> -                                    match=match, instructions=inst)
> +                                    match=match, instructions=inst,
> table_id=ta
>          datapath.send_msg(mod)
>
>      @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER)
> @@ -102,10 +102,10 @@ class SimpleSwitch13(app_manager.RyuApp):
>              # verify if we have a valid buffer_id, if yes avoid to send
> both
>              # flow_mod & packet_out
>              if msg.buffer_id != ofproto.OFP_NO_BUFFER:
> -                self.add_flow(datapath, 1, match, actions, msg.buffer_id)
> +                self.add_flow(datapath, 1, 200, match, actions,
> msg.buffer_id)
>                  return
>              else:
> -                self.add_flow(datapath, 1, match, actions)
> +                self.add_flow(datapath, 1, 200, match, actions)
>          data = None
>          if msg.buffer_id == ofproto.OFP_NO_BUFFER:
>              data = msg.data
>
> Regards,
> Vilius
>
>
>
>
> From: nitish nagesh [mailto:[email protected]]
> Sent: Wednesday, November 12, 2014 1:30 PM
> To: Vilius Palubinskas
> Cc: [email protected]
> Subject: Re: [Ryu-devel] HP 2920 1.3OF
>
> Hello Vilius,
>    Can you please share more details on whats not working with HP 2920
> when used with Ryu in 1.3?
>
> Regards,
> Nitish
>
> On Wed, Nov 12, 2014 at 3:20 PM, Vilius Palubinskas <
> [email protected]> wrote:
> Hi,
>
> I’m looking for root problems why HP 2920  switch not fully functional
> using 1.3 OF in Ryu controller.  By the way with 1.0 OF works fine. It’s
> possible to make some modifications in controller code or write application
> to add 1.3 OF capability for this switch?
>
> Regards,
>                              Vilius.
>
>
> ------------------------------------------------------------
> ------------------
> 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://pubads.g.doubleclick.net/gampad/clk?id=154624111&;
> iu=/4140/ostg.clktrk
> _______________________________________________
> Ryu-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ryu-devel
>
>
>
------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to