Did this article resolve your question/issue?


Your feedback is appreciated.

Please tell us how we can make this article more useful. Please provide us a way to contact you, should we need clarification on the feedback provided or if you need further assistance.

Characters Remaining: 1025



What Is the TCP-NODELAY option in 4GL Sockets

« Go Back


Article Number000012136
EnvironmentProduct: Progress
Version: 9.x
Product: OpenEdge
Version: All supported versions
OS: All supported platforms
Question/Problem Description
What Is the TCP-NODELAY option in 4GL Sockets
Steps to Reproduce
Clarifying Information
Error Message
Defect/Enhancement Number
The TCP-NODELAY is actually an option in the TCP/IP stack, therefore what follows is a description based on the documentation for various operating systems, and may not apply to your specific TCP/IP implementation.

Each time a workstation sends a network packet to another one, the receiving workstation must send an ACK (acknowledgement packet) back to the sender. This is the basic idea that makes TCP/IP a reliable protocol.

Usually, this acknowledgement packet is delayed for a small amount of time in the hope to combine the acknowledgement of several TCP/IP packets in one single reply (this mechanism is named 'delayed ACK'). Similarly, the sending workstation will try and collapse a few small TCP messages to a given receiver in one single network packet (this mechanism is named 'Nagle algorithm'). 
These algorithms are designed to reduce the number of packets sent over the network to improve overall throughput, but they can cause an increase in latency on individual packets.

TCP-NODELAY disables both the delayed ACK and the Nagle algorithm on sockets.
Last Modified Date4/6/2016 11:15 AM