diff --git a/common/cpp/src/system_io.cpp b/common/cpp/src/system_io.cpp
index bebd718fb73d66045349330cf67a0e1272e99a55..933c55bdc8e30b17945a6988a12e149c271ecbbb 100644
--- a/common/cpp/src/system_io.cpp
+++ b/common/cpp/src/system_io.cpp
@@ -75,11 +75,11 @@ hidra2::FileDescriptor hidra2::SystemIO::CreateAndConnectIPTCPSocket(const std::
     if(*err != IOErrors::kNoError) {
         return -1;
     }
-	InetConnect(fd, address, err);
-	if (*err != IOErrors::kNoError) {
-		CloseSocket(fd, nullptr);
-		return -1;
-	}
+    InetConnect(fd, address, err);
+    if (*err != IOErrors::kNoError) {
+        CloseSocket(fd, nullptr);
+        return -1;
+    }
 
     return fd;
 }
@@ -285,27 +285,27 @@ void hidra2::SystemIO::Listen(SocketDescriptor socket_fd, int backlog, hidra2::I
 
 
 size_t hidra2::SystemIO::ReceiveTimeout(SocketDescriptor socket_fd, void* buf, size_t length, long timeout_in_usec,
-	IOErrors* err) const {
-	*err = hidra2::IOErrors::kNoError;
-
-	fd_set read_fds;
-	FD_ZERO(&read_fds);
-	FD_SET(socket_fd, &read_fds);
-	timeval timeout;
-	timeout.tv_sec = 0;
-	timeout.tv_usec = timeout_in_usec;
-
-	int res = ::select(socket_fd + 1, &read_fds, nullptr, nullptr, &timeout);
-	if (res == 0) {
-		*err = IOErrors::kTimeout;
-		return 0;
-	}
-	if (res == -1) {
-		*err = GetLastError();
-		return 0;
-	}
-
-	return Receive(socket_fd, buf, length, err);
+                                        IOErrors* err) const {
+    *err = hidra2::IOErrors::kNoError;
+
+    fd_set read_fds;
+    FD_ZERO(&read_fds);
+    FD_SET(socket_fd, &read_fds);
+    timeval timeout;
+    timeout.tv_sec = 0;
+    timeout.tv_usec = timeout_in_usec;
+
+    int res = ::select(socket_fd + 1, &read_fds, nullptr, nullptr, &timeout);
+    if (res == 0) {
+        *err = IOErrors::kTimeout;
+        return 0;
+    }
+    if (res == -1) {
+        *err = GetLastError();
+        return 0;
+    }
+
+    return Receive(socket_fd, buf, length, err);
 }
 
 
@@ -447,14 +447,14 @@ void hidra2::SystemIO::InetConnect(SocketDescriptor socket_fd, const std::string
     socket_address.sin_port = htons(port);
     socket_address.sin_family = family;
 
-	if (_connect(socket_fd, (struct sockaddr*) &socket_address, sizeof(socket_address)) == -1) {
-		*err = GetLastError();
-		// On windows its normal that connect might throw a "WSAEWOULDBLOCK" since the socket need time to be created
-		if (*err != IOErrors::kNoError && *err != IOErrors::kResourceTemporarilyUnavailable) {
-			return;
-		}
-	}
-	*err = IOErrors::kNoError;
+    if (_connect(socket_fd, (struct sockaddr*) &socket_address, sizeof(socket_address)) == -1) {
+        *err = GetLastError();
+        // On windows its normal that connect might throw a "WSAEWOULDBLOCK" since the socket need time to be created
+        if (*err != IOErrors::kNoError && *err != IOErrors::kResourceTemporarilyUnavailable) {
+            return;
+        }
+    }
+    *err = IOErrors::kNoError;
 }
 
 std::unique_ptr<std::tuple<std::string, SocketDescriptor>> SystemIO::InetAccept(SocketDescriptor socket_fd,
@@ -468,21 +468,21 @@ IOErrors* err) const {
     sockaddr_in client_address{};
     static size_t client_address_size = sizeof(sockaddr_in);
 
-	int peer_fd;
-	while (true) {
-		peer_fd = _accept(socket_fd, reinterpret_cast<sockaddr*>(&client_address), &client_address_size);
-	
-		if (peer_fd == -1) {
-			*err = GetLastError();
-			if (*err == IOErrors::kResourceTemporarilyUnavailable) {
-				continue;
-			}
-			return nullptr;
-		}
-		break;
-	}
-
-	*err = IOErrors::kNoError;
+    int peer_fd;
+    while (true) {
+        peer_fd = _accept(socket_fd, reinterpret_cast<sockaddr*>(&client_address), &client_address_size);
+
+        if (peer_fd == -1) {
+            *err = GetLastError();
+            if (*err == IOErrors::kResourceTemporarilyUnavailable) {
+                continue;
+            }
+            return nullptr;
+        }
+        break;
+    }
+
+    *err = IOErrors::kNoError;
     ApplyNetworkOptions(peer_fd, err);
 
     std::string
diff --git a/common/cpp/src/system_io_linux.cpp b/common/cpp/src/system_io_linux.cpp
index 43478ca2422b6e604d992c77e830015faaf31f31..02b2c6503309b0e925093bd74b217de077abf066 100644
--- a/common/cpp/src/system_io_linux.cpp
+++ b/common/cpp/src/system_io_linux.cpp
@@ -160,6 +160,22 @@ void SystemIO::CollectFileInformationRecursivly(const std::string& path,
     closedir(dir);
 }
 
+void hidra2::SystemIO::ApplyNetworkOptions(SocketDescriptor socket_fd, IOErrors* err) const {
+    //TODO: Need to change network layer code, so everything can be NonBlocking
+    //int flags;
+    if (
+        /*(flags = fcntl(socket_fd, F_GETFL, 0)) == -1
+        ||
+        fcntl(socket_fd, F_SETFL, flags | O_NONBLOCK) == -1
+        ||*/
+        setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
+        ||
+        setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
+    ) {
+        *err = GetLastError();
+    }
+}
+
 hidra2::FileDescriptor hidra2::SystemIO::_open(const char* filename, int posix_open_flags) const {
     return ::open(filename, posix_open_flags, S_IWUSR | S_IRWXU);
 }
diff --git a/common/cpp/src/system_io_windows.cpp b/common/cpp/src/system_io_windows.cpp
index 519ed12a71232a7cedbf535c47720bdd5976ee58..f8ff667a3b8619e51bbb75ea8720787198ea2d32 100644
--- a/common/cpp/src/system_io_windows.cpp
+++ b/common/cpp/src/system_io_windows.cpp
@@ -31,8 +31,8 @@ IOErrors IOErrorFromGetLastError() {
         return IOErrors::kConnectionResetByPeer;
     case WSAENOTSOCK:
         return IOErrors::kSocketOperationOnNonSocket;
-	case WSAEWOULDBLOCK:
-		return IOErrors::kResourceTemporarilyUnavailable;
+    case WSAEWOULDBLOCK:
+        return IOErrors::kResourceTemporarilyUnavailable;
     default:
         std::cout << "[IOErrorFromGetLastError] Unknown error code: " << last_error << std::endl;
         return IOErrors::kUnknownError;
@@ -142,25 +142,22 @@ void SystemIO::CollectFileInformationRecursivly(const std::string& path,
     }
 }
 
-
-
-
 void hidra2::SystemIO::ApplyNetworkOptions(SocketDescriptor socket_fd, IOErrors* err) const {
-	//TODO: Seeing issues when using these settings - need further investigation
-	//Event if NonBlockingIO is set, it seems that _recv is a blocking call :/
-	/*
-	static u_long iMode = 1;
-
-	if (
-		ioctlsocket(socket_fd, FIONBIO, &iMode) != 0
-		||
-		setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
-		||
-		setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
-		) {
-		*err = GetLastError();
-	}
-	*/
+    //TODO: Seeing issues when using these settings - need further investigation
+    //Event if NonBlockingIO is set, it seems that _recv is a blocking call :/
+    /*
+    static u_long iMode = 1;
+
+    if (
+    	ioctlsocket(socket_fd, FIONBIO, &iMode) != 0
+    	||
+    	setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
+    	||
+    	setsockopt(socket_fd, SOL_SOCKET, SO_SNDBUF, (char*)&kNetBufferSize, sizeof(kNetBufferSize)) != 0
+    	) {
+    	*err = GetLastError();
+    }
+    */
 }
 
 FileDescriptor SystemIO::_open(const char* filename, int posix_open_flags) const {
@@ -230,4 +227,4 @@ SocketDescriptor SystemIO::_accept(SocketDescriptor socket_fd, void* address, si
     return ::accept(socket_fd, static_cast<sockaddr*>(address), (int*)address_length);
 }
 
-}
\ No newline at end of file
+}
diff --git a/tests/system_io/ip_tcp_network_speedtest/ip_tcp_network_speedtest.cpp b/tests/system_io/ip_tcp_network_speedtest/ip_tcp_network_speedtest.cpp
index 83b1e3c80c7019719dfc6931969c81a36ac49183..736ea629c25f0f76ee4d9b3490d04e6f4ddef025 100644
--- a/tests/system_io/ip_tcp_network_speedtest/ip_tcp_network_speedtest.cpp
+++ b/tests/system_io/ip_tcp_network_speedtest/ip_tcp_network_speedtest.cpp
@@ -21,7 +21,7 @@ static const std::string kListenAddress = "127.0.0.1:4206";
 static std::promise<void> kThreadStarted;
 
 static size_t kTestSize = size_t(1024) * size_t(1024) * size_t(512); //512MiByte
-static int kTestCount = 50;
+static int kTestCount = 20;
 
 void Exit(int exit_number) {
     std::cerr << "ERROR: Exit on " << exit_number << std::endl;
@@ -87,7 +87,8 @@ void Speedtest() {
         high_resolution_clock::time_point t2 = high_resolution_clock::now();
 
         double tookMs = std::chrono::duration_cast<std::chrono::milliseconds>( t2 - t1 ).count();
-        std::cout << i << ":\t" << std::setprecision(2) << std::fixed << (kTestSize / (tookMs / 1000)) / 1024 / 1024 / 1024 << " GiByte/s" <<
+        std::cout << i << ":\t" << std::setprecision(2) << std::fixed << (kTestSize / (tookMs / 1000)) / 1024 / 1024 / 1024 <<
+                  " GiByte/s" <<
                   std::endl;
         /*
         << "\t"<< std::fixed << kTestSize/(tookMs/1000) << " Byte/s" << std::endl