NXM fields in Ryu are defined as the following.
http://ryu.readthedocs.io/en/latest/nicira_ext_ref.html#module-ryu.ofproto.nicira_ext
For "NXM_OF_IN_PORT", you can use "in_port_nxm", I guess.
Post by Mahdieh ShariatHi Iwase,
Thank you for your reply.
parser.NXActionRegLoad(ofs_nbits=nicira_ext.ofs_nbits(4, 31), dst="NXM_OF_IN_PORT[]", value=0x0),
parser.OFPActionOutput(_port)]
Post by Mahdieh ShariatFile "/home/mahdie/.local/lib/python2.7/site-packages/ryu/ofproto/oxx_fields.py", line 58, in
_from_user_header
(num, t) = _get_field_info_by_name(oxx, name_to_field, name)
File "/home/mahdie/.local/lib/python2.7/site-packages/ryu/ofproto/oxx_fields.py", line 53, in
_get_field_info_by_name
raise KeyError('unknown %s field: %s' % (oxx.upper(), name))
KeyError: 'unknown OXM field: NXM_OF_IN_PORT[]'
f = name_to_field[name]
t = f.type
num = f.num
t = type_desc.UnknownType
num = int(name.split('_')[1])
raise KeyError('unknown %s field: %s' % (oxx.upper(), name))
return num, t
Unfortunately I can't find the related field name of "NXM_OF_IN_PORT[]" in Ryu. How can I find that?
Thanks for your assistance
Hi Mahdieh,
Excuse me for jumping in.
Hi, Fujimoto
Thank you very much for the prompt reply. It works.
But I have another problem in developing my app. In my app when I'm installing rules on
1. when a packet is incoming to in_port_1 and will go to out_port_2
2. when a packet is incoming to in_port_2 and will go to out_port_2
should I have two separate rules for these situations? May I have a common action for them?
» ovs-ofctl add-flow br0 in_port=2,actions=load:0->NXM_OF_IN_PORT[],2
How about using OFPActionSetField?
This action is almost equivalent to "load" action of OVS.
http://ryu.readthedocs.io/en/latest/ofproto_v1_3_ref.html#ryu.ofproto.ofproto_v1_3_parser.OFPActionSetField
<http://ryu.readthedocs.io/en/latest/ofproto_v1_3_ref.html#ryu.ofproto.ofproto_v1_3_parser.OFPActionSetField>
If you want to use "load" action of OVS via Ryu, please refer to the following document.
http://ryu.readthedocs.io/en/latest/nicira_ext_ref.html#ryu.ofproto.ofproto_v1_3_parser.NXActionRegLoad
<http://ryu.readthedocs.io/en/latest/nicira_ext_ref.html#ryu.ofproto.ofproto_v1_3_parser.NXActionRegLoad>
Thanks,
Iwase
Thanks
Hi, Mahdieh
You can use "ofproto.OFPP_IN_PORT" to do it.
actions = [parser.OFPActionOutput(ofproto.OFPP_IN_PORT)]
self.add_flow(datapath, 0, match, actions)
Then, the flow shown below will be installed.
$ovs-ofctl -O OpenFlow13 dump-flows s1
OFPST_FLOW reply (OF1.3) (xid=0x2): cookie=0x0, duration=2.975s, table=0,
n_packets=13,
n_bytes=1026, priority=0 actions=IN_PORT
Thanks,
Fujimoto
Hi,
actions=[action][,action...]
port
output:port
Outputs the packet to OpenFlow port number port. If port is
the packet's
input port, the packet is not output.
» actions = [ofproto_parser.OFPActionOutput(output_port)]
when input_port== output_port, the packet is dropped.
in_port
Outputs the packet on the port from which it was
received.
but I can't find this action in Ryu... could you please help me to write a code
actions=[ofproto_parser.OFPActionInPort()]
I'm using ovs 2.7 and openflow 1.3
Thanks in advance
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org!http://sdm.link/slashdot <http://sdm.link/slashdot>
_______________________________________________
Ryu-devel mailing list
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
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
https://lists.sourceforge.net/lists/listinfo/ryu-devel