[ovs-dev] faq: Give specific versions that introduced various features.
diff mbox series

Message ID 20191021220011.28887-1-blp@ovn.org
State New
Headers show
Series
  • [ovs-dev] faq: Give specific versions that introduced various features.
Related show

Commit Message

Ben Pfaff Oct. 21, 2019, 10 p.m. UTC
Some users would find it useful to know the particular OVS version that
introduced a feature to the OVS tree kernel module or to the OVS
userspace (DPDK) datapath implementation.  This patch updates the FAQ
to include that information.

This information is primarily gleaned from the top-level NEWS file.
For most of these, I did not verify them by looking carefully through
the history, so some of them may be inaccurate.

Requested-by: Jianjun Shen <shenj@vmware.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
---
 Documentation/faq/releases.rst | 55 ++++++++++++++++++----------------
 1 file changed, 30 insertions(+), 25 deletions(-)

Comments

Aaron Conole Oct. 22, 2019, 3:27 p.m. UTC | #1
Ben Pfaff <blp@ovn.org> writes:

> Some users would find it useful to know the particular OVS version that
> introduced a feature to the OVS tree kernel module or to the OVS
> userspace (DPDK) datapath implementation.  This patch updates the FAQ
> to include that information.
>
> This information is primarily gleaned from the top-level NEWS file.
> For most of these, I did not verify them by looking carefully through
> the history, so some of them may be inaccurate.
>
> Requested-by: Jianjun Shen <shenj@vmware.com>
> Signed-off-by: Ben Pfaff <blp@ovn.org>
> ---

Looks mostly accurate enough, afaict.  Just one nit - otherwise

Acked-by: Aaron Conole <aconole@redhat.com>

>  Documentation/faq/releases.rst | 55 ++++++++++++++++++----------------
>  1 file changed, 30 insertions(+), 25 deletions(-)
>
> +    Conntrack Fragment Reass.       4.3            2.6          2.8      YES

I think the 2.8 should be 2.12, given this news item (for 2.12):

   - Userspace datapath:
      ...
     * Add v4/v6 fragmentation support for conntrack.

-Aaron
Ben Pfaff Oct. 22, 2019, 3:44 p.m. UTC | #2
On Tue, Oct 22, 2019 at 06:22:17PM +0200, Ilya Maximets wrote:
> On 22.10.2019 0:00, Ben Pfaff wrote:
> > Some users would find it useful to know the particular OVS version that
> > introduced a feature to the OVS tree kernel module or to the OVS
> > userspace (DPDK) datapath implementation.  This patch updates the FAQ
> > to include that information.
> > 
> > This information is primarily gleaned from the top-level NEWS file.
> > For most of these, I did not verify them by looking carefully through
> > the history, so some of them may be inaccurate.
> > 
> > Requested-by: Jianjun Shen <shenj@vmware.com>
> > Signed-off-by: Ben Pfaff <blp@ovn.org>
> > Acked-by: Aaron Conole <aconole@redhat.com>
> > ---
> 
> > +    sFlow                           YES            1.0          2.7      NO
> > +    IPFIX                           3.10           1.11         2.7      YES
> > +    Set action                      YES            1.0          2.7    PARTIAL
> > +    NIC Bonding                     YES            1.0          2.7      YES
> > +    Multiple VTEPs                  YES            1.10         2.7      YES
> > +    Meters                          4.15           1.10         2.7      NO
> 
> Hi, Ben.
> Just trying to figure out from where these '2.7's came from for userspace datapath.
> For example, IIRC, 'NIC bonding' was there before 2.7.
> Is there something I missed that makes this version so special?

This is really from conflating DPDK with the userspace datapath.  2.7
was when the "experimental" tag was removed from DPDK support.  If we
ignore that (since the userspace datapath supported all of these
basically forever), we might as well just write the same as the kernel
datapath values there.
Ben Pfaff Oct. 22, 2019, 3:45 p.m. UTC | #3
On Tue, Oct 22, 2019 at 11:27:12AM -0400, Aaron Conole wrote:
> Ben Pfaff <blp@ovn.org> writes:
> 
> > Some users would find it useful to know the particular OVS version that
> > introduced a feature to the OVS tree kernel module or to the OVS
> > userspace (DPDK) datapath implementation.  This patch updates the FAQ
> > to include that information.
> >
> > This information is primarily gleaned from the top-level NEWS file.
> > For most of these, I did not verify them by looking carefully through
> > the history, so some of them may be inaccurate.
> >
> > Requested-by: Jianjun Shen <shenj@vmware.com>
> > Signed-off-by: Ben Pfaff <blp@ovn.org>
> > ---
> 
> Looks mostly accurate enough, afaict.  Just one nit - otherwise
> 
> Acked-by: Aaron Conole <aconole@redhat.com>
> 
> >  Documentation/faq/releases.rst | 55 ++++++++++++++++++----------------
> >  1 file changed, 30 insertions(+), 25 deletions(-)
> >
> > +    Conntrack Fragment Reass.       4.3            2.6          2.8      YES
> 
> I think the 2.8 should be 2.12, given this news item (for 2.12):
> 
>    - Userspace datapath:
>       ...
>      * Add v4/v6 fragmentation support for conntrack.

Thanks, I'll make that update.
Ilya Maximets Oct. 22, 2019, 4:22 p.m. UTC | #4
On 22.10.2019 0:00, Ben Pfaff wrote:
> Some users would find it useful to know the particular OVS version that
> introduced a feature to the OVS tree kernel module or to the OVS
> userspace (DPDK) datapath implementation.  This patch updates the FAQ
> to include that information.
> 
> This information is primarily gleaned from the top-level NEWS file.
> For most of these, I did not verify them by looking carefully through
> the history, so some of them may be inaccurate.
> 
> Requested-by: Jianjun Shen <shenj@vmware.com>
> Signed-off-by: Ben Pfaff <blp@ovn.org>
> Acked-by: Aaron Conole <aconole@redhat.com>
> ---

> +    sFlow                           YES            1.0          2.7      NO
> +    IPFIX                           3.10           1.11         2.7      YES
> +    Set action                      YES            1.0          2.7    PARTIAL
> +    NIC Bonding                     YES            1.0          2.7      YES
> +    Multiple VTEPs                  YES            1.10         2.7      YES
> +    Meters                          4.15           1.10         2.7      NO

Hi, Ben.
Just trying to figure out from where these '2.7's came from for userspace datapath.
For example, IIRC, 'NIC bonding' was there before 2.7.
Is there something I missed that makes this version so special?

Best regards, Ilya Maximets.
Ilya Maximets Oct. 22, 2019, 6:02 p.m. UTC | #5
On 22.10.2019 17:44, Ben Pfaff wrote:
> On Tue, Oct 22, 2019 at 06:22:17PM +0200, Ilya Maximets wrote:
>> On 22.10.2019 0:00, Ben Pfaff wrote:
>>> Some users would find it useful to know the particular OVS version that
>>> introduced a feature to the OVS tree kernel module or to the OVS
>>> userspace (DPDK) datapath implementation.  This patch updates the FAQ
>>> to include that information.
>>>
>>> This information is primarily gleaned from the top-level NEWS file.
>>> For most of these, I did not verify them by looking carefully through
>>> the history, so some of them may be inaccurate.
>>>
>>> Requested-by: Jianjun Shen <shenj@vmware.com>
>>> Signed-off-by: Ben Pfaff <blp@ovn.org>
>>> Acked-by: Aaron Conole <aconole@redhat.com>
>>> ---
>>
>>> +    sFlow                           YES            1.0          2.7      NO
>>> +    IPFIX                           3.10           1.11         2.7      YES
>>> +    Set action                      YES            1.0          2.7    PARTIAL
>>> +    NIC Bonding                     YES            1.0          2.7      YES
>>> +    Multiple VTEPs                  YES            1.10         2.7      YES
>>> +    Meters                          4.15           1.10         2.7      NO
>>
>> Hi, Ben.
>> Just trying to figure out from where these '2.7's came from for userspace datapath.
>> For example, IIRC, 'NIC bonding' was there before 2.7.
>> Is there something I missed that makes this version so special?
> 
> This is really from conflating DPDK with the userspace datapath.  2.7
> was when the "experimental" tag was removed from DPDK support.  If we
> ignore that (since the userspace datapath supported all of these
> basically forever), we might as well just write the same as the kernel
> datapath values there.
> 

Hmm. I see.

Personally, I have never been a fan of equalization of "DPDK" and "Userspace datapath".
And never liked words "DPDK datapath" as there is no such datapath in OVS.

Userspace datapath is agnostic to netdev types, so I'm not sure about versions
we should mention. BTW, there is no DPDK support on BSD in OVS, but userspace
datapath exists and functional.

BTW2, in this phrase:
+    given feature into the included kernel module or the userspace
+    (DPDK) datapath, respectively.
DPDK catches my eyes too.

I'm not sure how to make this right.

Best regards, Ilya Maximets.
Ben Pfaff Oct. 23, 2019, 5:20 p.m. UTC | #6
On Tue, Oct 22, 2019 at 08:02:57PM +0200, Ilya Maximets wrote:
> On 22.10.2019 17:44, Ben Pfaff wrote:
> > On Tue, Oct 22, 2019 at 06:22:17PM +0200, Ilya Maximets wrote:
> > > On 22.10.2019 0:00, Ben Pfaff wrote:
> > > > Some users would find it useful to know the particular OVS version that
> > > > introduced a feature to the OVS tree kernel module or to the OVS
> > > > userspace (DPDK) datapath implementation.  This patch updates the FAQ
> > > > to include that information.
> > > > 
> > > > This information is primarily gleaned from the top-level NEWS file.
> > > > For most of these, I did not verify them by looking carefully through
> > > > the history, so some of them may be inaccurate.
> > > > 
> > > > Requested-by: Jianjun Shen <shenj@vmware.com>
> > > > Signed-off-by: Ben Pfaff <blp@ovn.org>
> > > > Acked-by: Aaron Conole <aconole@redhat.com>
> > > > ---
> > > 
> > > > +    sFlow                           YES            1.0          2.7      NO
> > > > +    IPFIX                           3.10           1.11         2.7      YES
> > > > +    Set action                      YES            1.0          2.7    PARTIAL
> > > > +    NIC Bonding                     YES            1.0          2.7      YES
> > > > +    Multiple VTEPs                  YES            1.10         2.7      YES
> > > > +    Meters                          4.15           1.10         2.7      NO
> > > 
> > > Hi, Ben.
> > > Just trying to figure out from where these '2.7's came from for userspace datapath.
> > > For example, IIRC, 'NIC bonding' was there before 2.7.
> > > Is there something I missed that makes this version so special?
> > 
> > This is really from conflating DPDK with the userspace datapath.  2.7
> > was when the "experimental" tag was removed from DPDK support.  If we
> > ignore that (since the userspace datapath supported all of these
> > basically forever), we might as well just write the same as the kernel
> > datapath values there.
> > 
> 
> Hmm. I see.
> 
> Personally, I have never been a fan of equalization of "DPDK" and "Userspace datapath".
> And never liked words "DPDK datapath" as there is no such datapath in OVS.
> 
> Userspace datapath is agnostic to netdev types, so I'm not sure about versions
> we should mention. BTW, there is no DPDK support on BSD in OVS, but userspace
> datapath exists and functional.
> 
> BTW2, in this phrase:
> +    given feature into the included kernel module or the userspace
> +    (DPDK) datapath, respectively.
> DPDK catches my eyes too.
> 
> I'm not sure how to make this right.

I can't argue with that.

I send out a v3 that avoids the term "DPDK datapath" and then removes
existing uses of the term from the tree.

Patch
diff mbox series

diff --git a/Documentation/faq/releases.rst b/Documentation/faq/releases.rst
index ec6f90916064..87f84a85709c 100644
--- a/Documentation/faq/releases.rst
+++ b/Documentation/faq/releases.rst
@@ -103,35 +103,40 @@  Q: Are all features available with all datapaths?
     Hyper-V
       Also known as the Windows datapath.
 
-    The following table lists the datapath supported features from an Open
-    vSwitch user's perspective.
+    The following table lists the datapath supported features from an
+    Open vSwitch user's perspective.  The "Linux upstream" column
+    lists the Linux kernel version that introduced a given feature
+    into its kernel module.  The "Linux OVS tree" and "Userspace"
+    columns list the Open vSwitch release versions that introduced a
+    given feature into the included kernel module or the userspace
+    (DPDK) datapath, respectively.
 
     ========================== ============== ============== ========= =======
     Feature                    Linux upstream Linux OVS tree Userspace Hyper-V
     ========================== ============== ============== ========= =======
-    Connection tracking             4.3            YES          YES      YES
-    Conntrack Fragment Reass.       4.3            YES          YES      YES
-    Conntrack Timeout Policies      5.2            YES          NO       NO
-    Conntrack Zone Limit            4.18           YES          NO       YES
-    NAT                             4.6            YES          YES      YES
-    Tunnel - LISP                   NO             YES          NO       NO
-    Tunnel - STT                    NO             YES          NO       YES
-    Tunnel - GRE                    3.11           YES          YES      YES
-    Tunnel - VXLAN                  3.12           YES          YES      YES
-    Tunnel - Geneve                 3.18           YES          YES      YES
-    Tunnel - GRE-IPv6               4.18           YES          YES      NO
-    Tunnel - VXLAN-IPv6             4.3            YES          YES      NO
-    Tunnel - Geneve-IPv6            4.4            YES          YES      NO
-    Tunnel - ERSPAN                 4.18           YES          YES      NO
-    Tunnel - ERSPAN-IPv6            4.18           YES          YES      NO
-    QoS - Policing                  YES            YES          YES      NO
-    QoS - Shaping                   YES            YES          NO       NO
-    sFlow                           YES            YES          YES      NO
-    IPFIX                           3.10           YES          YES      YES
-    Set action                      YES            YES          YES    PARTIAL
-    NIC Bonding                     YES            YES          YES      YES
-    Multiple VTEPs                  YES            YES          YES      YES
-    Meters                          4.15           YES          YES      NO
+    Connection tracking             4.3            2.5          2.6      YES
+    Conntrack Fragment Reass.       4.3            2.6          2.8      YES
+    Conntrack Timeout Policies      5.2            2.12         NO       NO
+    Conntrack Zone Limit            4.18           2.10         NO       YES
+    NAT                             4.6            2.6          2.8      YES
+    Tunnel - LISP                   NO             2.11         NO       NO
+    Tunnel - STT                    NO             2.4          NO       YES
+    Tunnel - GRE                    3.11           1.0          2.4      YES
+    Tunnel - VXLAN                  3.12           1.10         2.4      YES
+    Tunnel - Geneve                 3.18           2.4          2.4      YES
+    Tunnel - GRE-IPv6               4.18           2.6          2.6      NO
+    Tunnel - VXLAN-IPv6             4.3            2.6          2.6      NO
+    Tunnel - Geneve-IPv6            4.4            2.6          2.6      NO
+    Tunnel - ERSPAN                 4.18           2.10         2.10     NO
+    Tunnel - ERSPAN-IPv6            4.18           2.10         2.10     NO
+    QoS - Policing                  YES            1.1          2.6      NO
+    QoS - Shaping                   YES            1.1          NO       NO
+    sFlow                           YES            1.0          2.7      NO
+    IPFIX                           3.10           1.11         2.7      YES
+    Set action                      YES            1.0          2.7    PARTIAL
+    NIC Bonding                     YES            1.0          2.7      YES
+    Multiple VTEPs                  YES            1.10         2.7      YES
+    Meters                          4.15           1.10         2.7      NO
     ========================== ============== ============== ========= =======
 
     Do note, however: