X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=vswitchd%2Fvswitch.xml;h=2889a4105511ae473c547d1e3770d1a4dad8aded;hb=1c030aa5704db05b41671133df32e2a1b64aa60d;hp=f6a8db147bbaf77fb1466e162c735156b643d8aa;hpb=4905e2dfef440a2377cec934f3cfae62a3feee83;p=sliver-openvswitch.git diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index f6a8db147..2889a4105 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -1306,14 +1306,19 @@

- Open vSwitch currently assigns the OpenFlow port number for an - interface once, when the client first adds the interface. It does - not change the port number later if the client sets or changes or - clears . Therefore, to ensure that - takes effect, the client should set - it in the same database transaction that creates the interface. - (Future versions of Open vSwitch might honor changes to .) + A client should ideally set this column's value in the same + database transaction that it uses to create the interface. Open + vSwitch version 2.1 and later will honor a later request for a + specific port number, althuogh it might confuse some controllers: + OpenFlow does not have a way to announce a port number change, so + Open vSwitch represents it over OpenFlow as a port deletion + followed immediately by a port addition. +

+ +

+ If is set or changed to some other + port's automatically assigned port number, Open vSwitch chooses a + new port number for the latter port.

@@ -2534,6 +2539,68 @@ column has no effect.

+ + +

+ This string set specifies which fields should be used for + address prefix tracking. Prefix tracking allows the + classifier to skip rules with longer than necessary prefixes, + resulting in better wildcarding for datapath flows. +

+

+ Prefix tracking may be beneficial when a flow table contains + matches on IP address fields with different prefix lengths. + For example, when a flow table contains IP address matches on + both full addresses and proper prefixes, the full address + matches will typically cause the datapath flow to un-wildcard + the whole address field (depending on flow entry priorities). + In this case each packet with a different address gets handed + to the userspace for flow processing and generates its own + datapath flow. With prefix tracking enabled for the address + field in question packets with addresses matching shorter + prefixes would generate datapath flows where the irrelevant + address bits are wildcarded, allowing the same datapath flow + to handle all the packets within the prefix in question. In + this case many userspace upcalls can be avoided and the + overall performance can be better. +

+

+ This is a performance optimization only, so packets will + receive the same treatment with or without prefix tracking. +

+

+ The supported fields are: tun_id, + tun_src, tun_dst, + nw_src, nw_dst (or aliases + ip_src and ip_dst), + ipv6_src, and ipv6_dst. (Using this + feature for tun_id would only make sense if the + tunnel IDs have prefix structure similar to IP addresses.) +

+

+ For example, prefixes=ip_dst,ip_src instructs the + flow classifier to track the IP destination and source + addresses used by the rules in this specific flow table. To + set the prefix fields, the flow table record needs to exist: +

+
+
ovs-vsctl set Bridge br0 flow_tables:0=@N1 -- --id=@N1 create Flow_Table name=table0
+
+ Creates a flow table record for the OpenFlow table number 0. +
+ +
ovs-vsctl set Flow_Table table0 prefixes=ip_dst,ip_src
+
+ Enables prefix tracking for IP source and destination + address fields. +
+
+ +

+ There is a maximum number of fields that can be enabled for any + one flow table. Currently this limit is 3. +

+