Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-20 Thread Iwase Yusuke
Hi, On 2016年12月21日 05:51, Garegin Grigoryan wrote: > Thanks a lot! > > My other question is: how to add the application data to the udp packet? > > Here's my code. It doesn't work, the receiver doesn't read the payload. > def send_udp_reply(self, dpid, datapath, eth, ipv4_pkt, udp_segment,

Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-20 Thread Garegin Grigoryan
Thanks a lot! My other question is: how to add the application data to the udp packet? Here's my code. It doesn't work, the receiver doesn't read the payload. def send_udp_reply(self, dpid, datapath, eth, ipv4_pkt, udp_segment, out_port, message): ofproto = datapath.ofproto total_leng

Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-19 Thread Iwase Yusuke
Hi, As you said, udp_pkt is a instance of UDP Header parser class. For getting the payload of UDP, please check pkt.protocols member, first. It should be contains each protocol header instance and payload data (might be binary type). e.g.) pkt.protocols might contain [ethernet(...), ipv4(..), ud

Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-19 Thread Garegin Grigoryan
Thanks! But udp_pkt contains only the header, as I understand it. I want to get the application data from the udp_segment and nothing else (no headers). On Tue, Dec 20, 2016 at 1:05 AM, Iwase Yusuke wrote: > Hi, > > > On 2016年12月20日 14:18, Garegin Grigoryan wrote: > > Hi, > > > > What is the be

Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-19 Thread Garegin Grigoryan
I think I can do it this way, because udp headers is 8 bytes: udp_pointer = len(msg.data) - udp_segment.total_length + 8 print msg.data[udp_pointer:] On Tue, Dec 20, 2016 at 1:08 AM, Garegin Grigoryan wrote: > Thanks! > > But udp_pkt contains only the header, as I unders

Re: [Ryu-devel] Parsing UDP segments in ryu

2016-12-19 Thread Iwase Yusuke
Hi, On 2016年12月20日 14:18, Garegin Grigoryan wrote: > Hi, > > What is the best way to parse UDP segments in ryu controller? I want to see > the application data. > I've tried this but it doesn't work: > > udp_parser = stream_parser.StreamParser() > print udp_parser.parse(msg.data) Does "msg.da

[Ryu-devel] Parsing UDP segments in ryu

2016-12-19 Thread Garegin Grigoryan
Hi, What is the best way to parse UDP segments in ryu controller? I want to see the application data. I've tried this but it doesn't work: udp_parser = stream_parser.StreamParser() print udp_parser.parse(msg.data) TypeError: Can't instantiate abstract class StreamParser with abstract methods try