Have you installed a rule to send the entire packet (the type that you
want to duplicate) to the controller?  If not, it may well be truncated.
So you may only be sending the truncated version out on the second dpid.
Depending on how you're checking to see if this is working, this may
just look like it's failing (e.g., because if it's a TCP packet, the
receiver will just throw it away because its checksum will be wrong
among other things).

-- Murphy

On Fri, 2010-12-10 at 14:08 -0500, Aaron Rosen wrote:
> Hi Ali, 
> 
> Looking at the comments for send_openflow, if buffer_id is -1 then, it
> should send the packet. Though, maybe I'm still doing this
> incorrectly?
> 
>                     actions = [[openflow.OFPAT_OUTPUT, [0, 11]]]
>                     self.send_openflow(self.dpid_of_duplication, -1,
> buf, actions, inport)
> 
> also 
>                     actions = [[openflow.OFPAT_PACKET_OUTPUT, [0,
> 11]]]
>                     self.send_openflow(self.dpid_of_duplication, -1,
> buf or packet, actions, inport)
> 
> doesn't seem to work. Could you point out where I'm going wrong? 
> 
> 
> Thanks, 
> 
> Aaron
> 
> 
> On Fri, Dec 10, 2010 at 1:41 PM, Ali Al-Shabibi
> <ali.al-shab...@cern.ch> wrote:
>         Hi Aaron,
>         
>         self.dpid_of_duplication is not the dpid the packet arrived
>         on, therefore therefore bufid is meaningless to
>         self.dpid_of_duplication. You should send
>         self.dpid_of_duplication the actual packet you want to
>         packet_out.
>         
>         Hope this helps,
>         
>         --
>         Ali Al-Shabibi
>         
>         
>         On 10 déc. 2010, at 18:57, Aaron Rosen <aro...@clemson.edu>
>         wrote:
>         
>         > Hello,
>         >
>         > When I get a specific kind of packet I want to send that
>         packet to a specific dpid and port and also send it to the
>         dpid and port that the packet was intended for.
>         >
>         > If I do:
>         >
>         > # send packet to end host
>         > # note self.PortMaping[dpid, mac_to_str(packet.dst)] returns
>         the port number the packet.dst is on
>         >
>         > actions = [[openflow.OFPAT_OUTPUT, [0, self.PortMaping[dpid,
>         mac_to_str(packet.dst)]]]]
>         > self.send_openflow(dpid, bufid, buf, actions, inport)
>         >
>         > # send packet to specific dpid and port 11
>         >
>         > actions = [[openflow.OFPAT_OUTPUT, [0, 11]]]
>         > self.send_openflow(self.dpid_of_duplication, bufid, buf,
>         actions, inport)
>         >
>         > The packet never gets to the self.dpid_of_duplication port
>         11.
>         >
>         > Anyone see where I'm going wrong here?
>         >
>         > Thanks,
>         >
>         > Aaron
>         >
>         > --
>         > Aaron O. Rosen
>         > Masters Student - Network Communication
>         > 306B Fluor Daniel
>         > 843.425.9777
>         >
>         
>         > _______________________________________________
>         > nox-dev mailing list
>         > nox-dev@noxrepo.org
>         > http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
> 
> 
> 
> -- 
> Aaron O. Rosen 
> Masters Student - Network Communication
> 306B Fluor Daniel 
> 843.425.9777
> 
> _______________________________________________
> nox-dev mailing list
> nox-dev@noxrepo.org
> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org



_______________________________________________
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org

Reply via email to