Thank you Kyriakos Zarifis

About the pyswitch.py information that I try to understand his function work.
And the core.py, there have a lot of function can use.
But I have no idea about the "actions". In the spec that has this structure

------------------------------------------------------------------------------------------------------------------
enum ofp_action_type {
OFPAT_OUTPUT, /* Output to switch port. */
OFPAT_SET_VLAN_VID, /* Set the 802.1q VLAN id. */
OFPAT_SET_VLAN_PCP, /* Set the 802.1q priority. */
OFPAT_STRIP_VLAN, /* Strip the 802.1q header. */
OFPAT_SET_DL_SRC, /* Ethernet source address. */
OFPAT_SET_DL_DST, /* Ethernet destination address. */
OFPAT_SET_NW_SRC, /* IP source address. */
OFPAT_SET_NW_DST, /* IP destination address. */
OFPAT_SET_NW_TOS, /* IP ToS (DSCP field, 6 bits). */
OFPAT_SET_TP_SRC, /* TCP/UDP source port. */
OFPAT_SET_TP_DST, /* TCP/UDP destination port. */
OFPAT_ENQUEUE, /* Output to queue. */
OFPAT_VENDOR = 0xffff
};
-------------------------------------------------------------------------------------------------------------------

If I want to filter TCP or port 22
how to do that?



2010/4/28 Kyriakos Zarifis <[email protected]>:
> Hi,
>
> in order to see an example of setting up flows programmatically through a
> NOX component written in python, you can look at
> /src/nox/coreapps/examples/pyswitch.py
> The idea is that you need to construct the openflow packet manually, filling
> out the flow description and the actions, and then send it to the desired
> switch
> When you say "add/delete/drop" flows, you actually cover 2 disparate things:
> add/delete refers to the type of the OF message (add/delete flow entry), but
> dropping a flow is described in the 'action' part (drop is an action, like
> 'forward to port 1, or send to controller). These are described in
> openflow's specification.
>
> It's a good idea to use wireshark with the OF dissector plugin, in order to
> monitor the packet you construct, and also see what the ones send out by,
> e.g. pyswitch, look like.
>
> (the process is the same in a C++ component, just the API differs a bit.
> Also you can manually setup flows using the 'dpctl' tool, but I'm assuming
> you were asking how one does it using NOX)
>
> On Wed, Apr 28, 2010 at 12:08 AM, 曾毓元 <[email protected]> wrote:
>>
>> Dear all:
>> Sorry to bother you.
>> I want to try to do the table control, like add/delete/drop flows
>> But, I don't know how to start it.
>>
>> Have any manner can provide?
>> or sample source code?
>>
>>
>> Regards
>> Ian
>>
>> _______________________________________________
>> nox-dev mailing list
>> [email protected]
>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
>
>

_______________________________________________
nox-dev mailing list
[email protected]
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org

Reply via email to