I noticed that the flow mod event fires in response to a successful NOX API call for adding a flow. It gives the impression that it was successfully added to the switch, but, this is not always the case. For example, if I send two identical /ofp_flow_mod/ requests with the *OFPFF_CHECK_OVERLAP* flag set, then I will still get a flow mod, even though one triggers an error and is not added to the switch's table.

I'm guessing the reason for this is speed. Since OpenFlow switches do not reply to flow mod requests, there are a couple ways I can think of to confirm if a flow was added:

1. Send a barrier message after each add flow message. If a reply is received and no error message was received, then it was added.

2. Store an internal copy of the flow table in the NOX component and check for potential errors before adding.

Both of these solutions have problems if other components are also adding flows. Does anyone have any other ideas?

It would be nice if the OpenFlow protocol had responses to flow mod requests that could be optionally turned on/off for speed.

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

Reply via email to