No description
Find a file
Boris Pismenny 4799ac81e5 tls: Add rx inline crypto offload
This patch completes the generic infrastructure to offload TLS crypto to a
network device. It enables the kernel to skip decryption and
authentication of some skbs marked as decrypted by the NIC. In the fast
path, all packets received are decrypted by the NIC and the performance
is comparable to plain TCP.

This infrastructure doesn't require a TCP offload engine. Instead, the
NIC only decrypts packets that contain the expected TCP sequence number.
Out-Of-Order TCP packets are provided unmodified. As a result, at the
worst case a received TLS record consists of both plaintext and ciphertext
packets. These partially decrypted records must be reencrypted,
only to be decrypted.

The notable differences between SW KTLS Rx and this offload are as
follows:
1. Partial decryption - Software must handle the case of a TLS record
that was only partially decrypted by HW. This can happen due to packet
reordering.
2. Resynchronization - tls_read_size calls the device driver to
resynchronize HW after HW lost track of TLS record framing in
the TCP stream.

Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-07-16 00:13:11 -07:00
arch ARM: net: bpf: improve 64-bit ALU implementation 2018-07-13 15:26:42 +02:00
block
certs
crypto
Documentation Documentation: ip-sysctl.txt: document addr_gen_mode 2018-07-11 22:50:45 -07:00
drivers tls: Refactor tls_offload variable names 2018-07-16 00:12:09 -07:00
firmware
fs
include tls: Add rx inline crypto offload 2018-07-16 00:13:11 -07:00
init
ipc
kernel
lib
LICENSES
mm
net tls: Add rx inline crypto offload 2018-07-16 00:13:11 -07:00
samples samples/bpf: xdp_redirect_cpu handle parsing of double VLAN tagged packets 2018-07-14 00:52:54 +02:00
scripts
security
sound
tools Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2018-07-14 18:47:44 -07:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS
Makefile
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.
See Documentation/00-INDEX for a list of what is contained in each file.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.