Ranges for port numbers are not an OpenFlow feature (at least not in 1.0), so 
the short answer is that doing this is impossible.

I don't think anything to do with set_match() will help you, since set_match() 
just builds an OpenFlow match structure (and, again, port range matches are not 
an OpenFlow 1.0 feature).

The longer answer is that you can install individual rules that exactly match 
port numbers.  If you were interested in, say, five particular ports, 
installing five flows proactively with those five port numbers is probably a 
fine solution.  But installing 1024 flows is probably not a good idea.  A 
reactive approach scales better (at the cost of flow setup latency which 
includes a round trip from the switch to the controller) -- install a flow that 
matches on everything you're interested in *except* port number, wildcard the 
port number, and give it a send-to-controller action.  When a packet hits this 
rule, it'll get sent to the controller, and you can install a new rule with a 
higher priority that exactly matches the port number used by that flow.

Hope that helps.

-- Murphy

On Aug 10, 2011, at 6:03 AM, Masoud Moshref Javadi wrote:

> How can we set rules with wildcards that do not cover all of the range. For 
> example, I want to set a rule that match destination port numbers from 1 to 
> 1024 or any other arbitrary ranges. Should I replicate what set_match method 
> does?
> _______________________________________________
> nox-dev mailing list
> nox-dev@noxrepo.org
> http://noxrepo.org/mailman/listinfo/nox-dev

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

Reply via email to