Index: /trunk/src/VBox/Devices/Network/slirp/slirp.c
===================================================================
--- /trunk/src/VBox/Devices/Network/slirp/slirp.c	(revision 51904)
+++ /trunk/src/VBox/Devices/Network/slirp/slirp.c	(revision 51905)
@@ -860,5 +860,18 @@
     }
     else if (!fConnectOnly)
+    {
         SOWRITE(ret, pData, so);
+        if (RT_LIKELY(ret > 0))
+        {
+            /*
+             * Make sure we will send window update to peer.  This is
+             * a moral equivalent of calling tcp_output() for PRU_RCVD
+             * in tcp_usrreq() of the real stack.
+             */
+            struct tcpcb *tp = sototcpcb(so);
+            if (RT_LIKELY(tp != NULL))
+                tp->t_flags |= TF_DELACK;
+        }
+    }
     /*
      * XXX If we wrote something (a lot), there could be the need
