DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [RFC] net/mlx5: Flow mark ID and L3/L4 header CQE compression
@ 2020-09-04 22:09 Alexander Kozyrev
  0 siblings, 0 replies; only message in thread
From: Alexander Kozyrev @ 2020-09-04 22:09 UTC (permalink / raw)
  To: dev

CQE compression reduces PCI bandwidth usage by coalescing and compressing
multiple CQEs into a single zipped CQE. This improves Rx message rate,
especially for small packet traffic.

CQEs must be almost identical to be successfully merged and compressed
together. All the shared data is contained in the Title Compression block,
while the packet size, for example, may differ and stored in the each
compressed CQE independently.

CQE compression doesn't tolerate any other differences except the packet
size and the Checksum/Hash and falls back to the regular CQE scheme in all
other cases.

There is a proposal to include more fields into the CQE compression format
to achieve a better performance in the following scenarios:
1. Different RTE Flow marks associated with Rx traffic.
Having the mark ID as part of the mini-CQE structure allows us to keep
the CQE compression uninterrupted for multiple different RTE flows with
different mark IDs.
2. Mixed TCP/UDP and IPv4/IPv6 traffic.
Adding L3/L4 header type to the mini-CQE format helps with the performance
of the mixed traffic of various TCP/UDP headers and coexistence of IPv4
and IPv6 protocols in one compression session.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-09-04 22:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-04 22:09 [dpdk-dev] [RFC] net/mlx5: Flow mark ID and L3/L4 header CQE compression Alexander Kozyrev

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git