-
Type:
Improvement
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 0.23.0, 2.4.1
-
Fix Version/s: 2.6.0
-
Component/s: ipc
-
Labels:None
-
Target Version/s:
-
Hadoop Flags:Reviewed
-
Release Note:This change enables the TCP_NODELAY flag for all Hadoop IPC connections, hence bypassing TCP Nagling. Nagling interacts poorly with TCP delayed ACKs especially for request-response protocols.
I think we should switch the default for the IPC client and server NODELAY options to true. As wikipedia says:
In general, since Nagle's algorithm is only a defense against careless applications, it will not benefit a carefully written application that takes proper care of buffering; the algorithm has either no effect, or negative effect on the application.
Since our IPC layer is well contained and does its own buffering, we shouldn't be careless.
- is duplicated by
-
HADOOP-7421 Performance Patch: Disable Client-Side Nagle By Default
-
- Resolved
-
- is related to
-
HADOOP-8071 Avoid an extra packet in client code when nagling is disabled
-
- Resolved
-
- relates to
-
HBASE-1177 Delay when client is located on the same node as the regionserver
-
- Resolved
-
-
HDFS-9700 DFSClient and DFSOutputStream should set TCP_NODELAY on sockets for DataTransferProtocol
-
- Resolved
-