Displaying 3 results from an estimated 3 matches for "9b0b75c".
2019 Jun 06
4
[nbdkit PATCH 0/2] Reduce network overhead with corking
Slightly RFC, as I need more time to investigate why Unix sockets
appeared to degrade with this patch. But as TCP sockets (over loopback
to localhost) and TLS sessions (regardless of underlying Unix or TCP)
both showed improvements, this looks like a worthwhile series.
Eric Blake (2):
server: Add support for corking
server: Cork around grouped transmission send()s
server/internal.h | 3
2019 Jun 06
0
[nbdkit PATCH 1/2] server: Add support for corking
...(__nonnull__ (1)));
@@ -180,6 +182,7 @@ struct connection {
int sockin, sockout;
connection_recv_function recv;
connection_send_function send;
+ connection_cork_function cork;
connection_close_function close;
};
diff --git a/server/connections.c b/server/connections.c
index b7d9a6a..9b0b75c 100644
--- a/server/connections.c
+++ b/server/connections.c
@@ -38,6 +38,8 @@
#include <inttypes.h>
#include <string.h>
#include <unistd.h>
+#include <netinet/ip.h>
+#include <netinet/tcp.h>
#include "internal.h"
@@ -51,6 +53,7 @@ static void free_conn...
2019 Jun 06
0
[nbdkit PATCH 2/2] server: Cork around grouped transmission send()s
...hy Unix sockets degraded...
I also probably out to repeat my timings more than a single run...
---
server/connections.c | 2 ++
server/protocol.c | 52 ++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+)
diff --git a/server/connections.c b/server/connections.c
index 9b0b75c..8c92dc5 100644
--- a/server/connections.c
+++ b/server/connections.c
@@ -356,6 +356,7 @@ raw_send (struct connection *conn, const void *vbuf, size_t len)
return 0;
}
+#ifdef TCP_CORK
/* Change the cork status to batch a group of send calls, and either succeed
* completely (returns 0) or fa...