On Thu, Aug 16, 2012 at 05:16:53PM +0900, Isaku Yamahata wrote:
> Hi. Right now OVS tells a controller that 256 tables available
> as SWITCH_FEATURES response.
> (i.e. ofp_switch_features->n_tables = 256 = N_TABLES)

It should say 255, are you sure about 256?

> But the table whose id is TBL_INTERNAL = N_TABLES - 1 is used for ovs
> internal use so can't be available to a controller.

The controller can't modify it, but it is allowed to view it.

> Addition to the above, the document, DESIGN, says that
> > Tables 128 and above are reserved for use by the switch itself.
> > Controllers should use only tables 0 through 127.
> 
> So what should be returned as n_tables?
> - 256 (current value)
>   With OF1.0, there is no way to know that table id 255 is unusable.

OF1.0 uses table id 255 as a special value in many places, but what
you write is true of table 254.

I don't think that it is meaningful to say that table 254 is not
usable in OF1.0, because in OF1.0 there is no way to place a flow in a
particular table.  Open vSwitch will always place flows in table 0, if
the controller uses OF1.0 without extensions.  So, I can't see how the
controller can be bothered by such a reserved table.

>   With OF1.1+, allowed operations can be described. So a controller can know
>   that which tables are actually usable.

I hadn't noticed that but it is a useful fact.

> - 255
>   This reflects the reality, but contradicts to the document, DESIGN.

DESIGN says:

    The Open vSwitch software switch implementation offers 255 flow
    tables.

> - 128
>   Actually 255 tables are usable.

I don't see how there is a practical problem here.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to