How Nagle algorithm hurt performance - http://smallvoid.com/article/winnt-nagle-algorithm.html , and one way to handle it better - http://hg.openjdk.java.net/jdk8/tl/jdk/rev/10480cf00dcd Visualizing System Latency - http://queue.acm.org/detail.cfm?id=1809426 Sometime TCP just not the right option - http://www.snookles.com/slf-blog/2012/01/05/tcp-incast-what-is-it/ http://www.psc.edu/index.php/component/remository/Publications/PSC_1997/The-Macroscopic-Behavior-of-the-TCP-Congestion-Avoidance-Algorithm/ How software affecting network status - http://kellabyte.com/2013/11/04/the-network-partitions-are-rare-fallacy/ http://ashkrit.blogspot.com.au/2012/11/latency-number-that-you-should-know.html It maybe good to turn off TCP timestamp - http://highscalability.com/blog/2015/10/14/save-some-bandwidth-by-turning-off-tcp-timestamps.html http://www.automatedtrader.net/articles/strategies/158505/measuring-the-absolute-accuracy-of-10gbe-packet-timestamping Case study about how to find out latency coming from - https://blog.cloudflare.com/the-story-of-one-latency-spike/ https://qumulo.com/blog/investigating-storage-performance/ https://vanilla-java.github.io/2018/04/25/High-throughput-Consensus.html https://vanilla-java.github.io/2018/08/28/Reducing-network-latency.html RDMA is better? - https://levelup.gitconnected.com/why-tcp-ip-stack-is-highly-inefficient-for-high-performance-computing-systems-e294003e1cf7