diff --git a/src/socket.c b/src/socket.c index dbe0595..ea6c84a 100644 --- a/src/socket.c +++ b/src/socket.c @@ -38,6 +38,7 @@ #include #include #include +#include #include "qperf.h" @@ -597,6 +598,10 @@ client_init(int *fd, KIND kind) if (!ai->ai_family) continue; *fd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); + { + int one = 1; + setsockopt(*fd, SOL_TCP, TCP_NODELAY, &one, sizeof(one)); + } setsockopt_one(*fd, SO_REUSEADDR); if (connect(*fd, ai->ai_addr, ai->ai_addrlen) == SUCCESS0) break; @@ -630,6 +635,10 @@ stream_server_init(int *fd, KIND kind) listenFD = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); if (listenFD < 0) continue; + { + int one = 1; + setsockopt(listenFD, SOL_TCP, TCP_NODELAY, &one, sizeof(one)); + } setsockopt_one(listenFD, SO_REUSEADDR); if (bind(listenFD, ai->ai_addr, ai->ai_addrlen) == SUCCESS0) break;