Documentation: add TLS offload documentation
authorJakub Kicinski <jakub.kicinski@netronome.com>
Wed, 22 May 2019 01:57:14 +0000 (18:57 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 22 May 2019 19:18:20 +0000 (12:18 -0700)
commitf42c104f2ec94a9255a835cd4cd1bd76279d4d06
tree8091f73788033c91ca169a2711d97a0f19c7511a
parentf3c0f3c6c2013e6caa7ab9c3c6a9fb12f6832c43
Documentation: add TLS offload documentation

Describe existing kernel TLS offload (added back in Linux 4.19) -
the mechanism, the expected behavior and the notable corner cases.

This documentation is mostly targeting hardware vendors who want
to implement offload, to ensure consistency between implementations.

v2:
 - add emphasis around TLS_SW/TLS_HW/TLS_HW_RECORD;
 - remove mentions of ongoing work (Boris);
 - split the flow of data in SW vs. HW cases in TX overview
   (Boris);
 - call out which fields are updated by the device and which
   are filled by the stack (Boris);
 - move error handling into it's own section (Boris);
 - add more words about fallback (Boris);
 - note that checksum validation is required (Alexei);
 - note that drivers shouldn't pay attention to the TLS
   device features.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Acked-by: Dave Watson <davejwatson@fb.com>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/index.rst
Documentation/networking/tls-offload-layers.svg [new file with mode: 0644]
Documentation/networking/tls-offload-reorder-bad.svg [new file with mode: 0644]
Documentation/networking/tls-offload-reorder-good.svg [new file with mode: 0644]
Documentation/networking/tls-offload.rst [new file with mode: 0644]
Documentation/networking/tls.rst