Re: [openflowplugin-dev] openflowjava IOB Exception in netvirt csit


Tomáš Slušný <tomas.slusny@...>
 

So I was able to succesfully add both flows you mentioned via RPC, and I do not see any Message derialization failed messages in log. Here is output from dump-flows:


$ sudo ovs-ofctl dump-flows s1 -O Openflow13
OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0x80000006, duration=183.352s, table=21, n_packets=0, n_bytes=0, priority=10,ip,metadata=0x30d52/0xfffffe actions=goto_table:26
 cookie=0x80000006, duration=292.436s, table=26, n_packets=0, n_bytes=0, priority=5,ip,metadata=0x30d52/0xfffffe actions=set_field:0x186a9->tun_id,group:1

And here is goto_table flow RPC:
http://ix.io/tuP

And here is set_field flow RPC:
http://ix.io/tuQ

So maybe there is problem somewhere else?


Od: Tomáš Slušný <tomas.slusny@...>
Odoslané: piatok, 12. mája 2017 10:05
Komu: Jamo Luhrsen; openflowplugin-dev@...; openflowjava-dev@...; netvirt-dev@...
Predmet: Re: [openflowplugin-dev] openflowjava IOB Exception in netvirt csit
 

After looking at it again, it is probably not issue in padding, because it is added in parent class, but it should be some similar issue, so I am trying to fix it.



Od: Tomáš Slušný
Odoslané: piatok, 12. mája 2017 10:01
Komu: Jamo Luhrsen; openflowplugin-dev@...; openflowjava-dev@...; netvirt-dev@...
Predmet: Re: [openflowplugin-dev] openflowjava IOB Exception in netvirt csit
 

Jamo,


thanks for your response, it helped me to probably find cause of this issue. Issue is that set-field action deserializer in single layer serialization is not skipping padding at end of set-field action, so then it have some left-over zeros, and based on logs it then tries to deserialize OutputAction (what type is 0) but body does not match, so it fails. I will try to make fix for this as soon as possible. But until then, with single-layer-serialization disabled it will work.


Regards,

Tomas



Od: Jamo Luhrsen <jluhrsen@...>
Odoslané: piatok, 12. mája 2017 6:42
Komu: Tomáš Slušný; openflowplugin-dev@...; openflowjava-dev@...; netvirt-dev@...
Predmet: Re: [openflowplugin-dev] openflowjava IOB Exception in netvirt csit
 
Tomas,

I spent some time trying to figure this out (too much probably...) :) and correct me if
I'm wrong but this IOBE is coming from a flow that already exists on the switch and not
one we are trying to program. I do notice in a test I did that the IOBE comes every
~3s which I think is our default polling of operational.

anyway, I *think* narrowed down the exact test case that introduces this, and then compared
the flow table before and after that test case. The only difference are these two flows:

 cookie=0x8000006, duration=0.810s, table=21, n_packets=0, n_bytes=0, priority=10,ip,metadata=0x30d52/0xfffffe
actions=goto_table:26
 cookie=0x8000006, duration=0.810s, table=26, n_packets=0, n_bytes=0, priority=5,ip,metadata=0x30d52/0xfffffe
actions=set_field:0x186a9->tun_id,group:225003

full flow table here [0]

I am only able to check these things with our CSIT stuff. I tried to manually create a flow that
looks like the table=26 flow above (via NB rest) but couldn't figure it out. I think my trouble
was trying to give a mask to the metadata.

Anything help?

I didn't try with serialization disabled yet, as that is gonna take some time to figure out
how to toggle it with our CSIT.

Thanks,
JamO

[0]
https://logs.opendaylight.org/releng/jenkins092/netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-carbon/21/archives/log.html.gz#s1-s1-s3-t9-k3-k1-k1-k1-k15-k4

On 05/10/2017 01:04 AM, Tomáš Slušný wrote:
> Hi Jamo,
>
>
> can you please try if this issue also occurs with single-layer serialization disabled? Here is link to wiki on how to disable
> it: https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:OF13%2B_Single_Layer_Serialization#Enabling.2FDisabling_Single_Layer_Serialization
>
> Also, can you send dump of flows (or ideally only that single flow that is failing when OFP is tryining to deserialize it)
> from ovs?
>
>
> Regards,
>
> Tomas
>
>
> -----------------------------------------------------------------------------------------------------------------------------
> *Od:* Jamo Luhrsen <jluhrsen@...>
> *Odoslané:* utorok, 9. mája 2017 21:24
> *Komu:* openflowplugin-dev@...; openflowjava-dev@...; netvirt-dev@...
> *Predmet:* [openflowplugin-dev] openflowjava IOB Exception in netvirt csit

> Hi OFP, OFJ, Netvirt,
>
> I'm debugging some failures in netvirt CSIT and saw an exception I don't remember
> seeing before (not that it's new, I just haven't seen it. although I dig at these
> things daily)
>
> 2017-05-09 15:52:45,124 | WARN  | entLoopGroup-7-5 | OFDecoder                        | 268 -
> org.opendaylight.openflowjava.openflow-protocol-impl - 0.9.0.SNAPSHOT | Message deserialization failed
> java.lang.IndexOutOfBoundsException: readerIndex(166) + length(4) exceeds writerIndex(166): UnpooledSlicedByteBuf(ridx: 166,
> widx: 166, cap: 166/166, unwrapped: PooledUnsafeDirectByteBuf(ridx: 13896, widx: 13896, cap: 16384))
>         at io.netty.buffer.AbstractByteBuf.checkReadableBytes0(AbstractByteBuf.java:1389)[117:io.netty.buffer:4.1.8.Final]
>         at io.netty.buffer.AbstractByteBuf.readInt(AbstractByteBuf.java:766)[117:io.netty.buffer:4.1.8.Final]
>         at io.netty.buffer.AbstractByteBuf.readUnsignedInt(AbstractByteBuf.java:782)[117:io.netty.buffer:4.1.8.Final]
>
>
> There are a lot of them (~1200) over a 90m system test job.
>
> I don't know yet if they are related to the failures I am debugging, but something is not right.
>
> Any comments? Need a bug?
>
> here is the full karaf log:
> https://logs.opendaylight.org/releng/jenkins092/netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-carbon/21/archives/odl1_karaf.log.gz
>
> Thanks,
> JamO
> _______________________________________________
> openflowplugin-dev mailing list
> openflowplugin-dev@...
> https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev
>

>
> TomášSlušný
>
> Software Developer
>
>
> Sídlo / Mlynské Nivy 56 / 821 05 Bratislava / Slovakia
> R&D centrum / Janka Kráľa 9 /  974 01 Banská Bystrica / Slovakia
> +421 911 083 902/ tomas.slusny@...
> reception: +421 2 206 65 114 / www.pantheon.tech
>
> logo
>

>
 
Tomáš Slušný
Software Developer
 
PANTHEON technologies s.r.o.
Janka Kráľa 9, 974 01 Banská Bystrica
Slovakia
Tel / +421 220 665 111
 
MAIL / tomas.slusny@...
WEB / www.pantheon.tech
 
 
 
Tomáš Slušný
Software Developer
 
PANTHEON technologies s.r.o.
Janka Kráľa 9, 974 01 Banská Bystrica
Slovakia
Tel / +421 220 665 111
 
MAIL / tomas.slusny@...
WEB / www.pantheon.tech
 
 

Join z.archive.openflowjava-dev@lists.opendaylight.org to automatically receive all group messages.