public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug remote/26710] New: disable delayed ack on TCP connection for better performance
@ 2020-10-06 15:11 sn2010 at onlinehome dot de
  2020-10-08  6:10 ` [Bug remote/26710] " sn2010 at onlinehome dot de
  2020-10-08  6:12 ` sn2010 at onlinehome dot de
  0 siblings, 2 replies; 3+ messages in thread
From: sn2010 at onlinehome dot de @ 2020-10-06 15:11 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=26710

            Bug ID: 26710
           Summary: disable delayed ack on TCP connection for better
                    performance
           Product: gdb
           Version: HEAD
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P2
         Component: remote
          Assignee: unassigned at sourceware dot org
          Reporter: sn2010 at onlinehome dot de
  Target Milestone: ---

Created attachment 12890
  --> https://sourceware.org/bugzilla/attachment.cgi?id=12890&action=edit
wireshark protocol for delayed ack (marked pakets)

When using gdb with tcp remote connection, the host may collect and delay tcp
acknowledgments. Running on Windows10 or a Raspberry with debian stretch, I
could see a 40 ms delay after the target has send a single char '+'. The gdb is
waiting for this char to continue, but the host OS will delay the ack for 40
ms.
On Windows, it could be changed by a registry key TcpAckFrequency:
https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/registry-entry-control-tcp-acknowledgment-behavior
But this is a rough method that affects all TCP connections.
A better solution seems to be to set TCP_QUICKACK (Linux >2.4) or
SIO_TCP_SET_ACK_FREQUENCY (on Windows). This a short discussion about setting
the option:
https://stackoverflow.com/questions/55034112/c-disable-delayed-ack-on-windows

The delayed ack is not the same as the TCP_NODELAY that disables the nagle
algorithm on the sending side, its an optimization on the receiver.

Thanks for reading.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug remote/26710] disable delayed ack on TCP connection for better performance
  2020-10-06 15:11 [Bug remote/26710] New: disable delayed ack on TCP connection for better performance sn2010 at onlinehome dot de
@ 2020-10-08  6:10 ` sn2010 at onlinehome dot de
  2020-10-08  6:12 ` sn2010 at onlinehome dot de
  1 sibling, 0 replies; 3+ messages in thread
From: sn2010 at onlinehome dot de @ 2020-10-08  6:10 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=26710

--- Comment #1 from Johannes S. <sn2010 at onlinehome dot de> ---
This issue can be closed.
I have discovered the 'QStartNoAckMode' option in the gdb remote protocol. This
is the solution for this problem at its origin. For a TCP connection, the short
ACK messages can be turned of and the problem with delayed TCP acks is avoided.
Trying to turn off the delayed ack from the sender side is difficult, there are
no portable options and its the matter of the OS to accept changing delayed ack
behaviour or not.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug remote/26710] disable delayed ack on TCP connection for better performance
  2020-10-06 15:11 [Bug remote/26710] New: disable delayed ack on TCP connection for better performance sn2010 at onlinehome dot de
  2020-10-08  6:10 ` [Bug remote/26710] " sn2010 at onlinehome dot de
@ 2020-10-08  6:12 ` sn2010 at onlinehome dot de
  1 sibling, 0 replies; 3+ messages in thread
From: sn2010 at onlinehome dot de @ 2020-10-08  6:12 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=26710

Johannes S. <sn2010 at onlinehome dot de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |NOTABUG

--- Comment #2 from Johannes S. <sn2010 at onlinehome dot de> ---
as explained in the comment above.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-10-08  6:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-06 15:11 [Bug remote/26710] New: disable delayed ack on TCP connection for better performance sn2010 at onlinehome dot de
2020-10-08  6:10 ` [Bug remote/26710] " sn2010 at onlinehome dot de
2020-10-08  6:12 ` sn2010 at onlinehome dot de

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).