diff options
author | Stefano Brivio <sbrivio@redhat.com> | 2021-04-22 13:39:36 +0200 |
---|---|---|
committer | Stefano Brivio <sbrivio@redhat.com> | 2021-04-22 13:39:36 +0200 |
commit | 1f7cf04d343f185f9e044fdca70a1d0252492aed (patch) | |
tree | 77b28cc46e824f9247151ca21849e74da1cc0d57 /passt.h | |
parent | 5b0c88d4ef48c2c3c434929faf418f46db06d555 (diff) | |
download | passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar.gz passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar.bz2 passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar.lz passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar.xz passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.tar.zst passt-1f7cf04d343f185f9e044fdca70a1d0252492aed.zip |
passt: Introduce packet batching mechanism
Receive packets in batches from AF_UNIX, check if they can be sent
with a single syscall, and batch them up with sendmmsg() in case.
A bit rudimentary, currently only implemented for UDP, but it seems
to work.
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'passt.h')
-rw-r--r-- | passt.h | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -1,5 +1,19 @@ #define UNIX_SOCK_PATH "/tmp/passt.socket" +/** + * struct tap_msg - Generic message descriptor for arrays of messages + * @start: Pointer to message start + * @l4_start: Pointer to L4 header + * @len: Message length, with L2 headers + * @l4_len: Message length, with L4 headers + */ +struct tap_msg { + char *start; + char *l4h; + size_t len; + size_t l4_len; +}; + #include "icmp.h" #include "tcp.h" |