Investigating Intermittent ECONNRESET Errors in Local TCP Connections (Part 1)
By
zdw
If you only eat one bagel today, this is the bagel.
Summary
A technical blog post investigating mysterious ECONNRESET errors occurring between two services communicating over TCP on the same machine. The author sets up a reproducer with a server that opens a listening TCP socket bound to localhost, and a client that connects to it. Despite no crashes or other errors in logs, the connecting service intermittently receives ECONNRESET errors while reading from the socket. The post is part 1 of 2, setting up the problem and a lab reproducer.
Key quotes
· 3 pulledTwo services running on the same machine. One of them opens a listening TCP socket bound to localhost, the other one connects to that.
Every now and then, the service that initiated the connection gets an ECONNRESET while reading from the socket -- but no other errors show up in the logs, no crashes, nothing.
Let's start with the "server", i.e. the service that opens the listening socket.
You might also wanna read
BGP Lab Project Expanded to Include Full IPv6 Feed
The author extends their BGP lab project to support full IPv6 feeds, following requests from readers who previously received IPv4 BGP feeds.
Whosthere: A Go-based LAN discovery tool with interactive TUI for unprivileged network scanning
Whosthere is a Go-based Local Area Network (LAN) discovery tool with an interactive Terminal User Interface (TUI). It performs unprivileged,
IPv8: An Alternative IPv4 Successor with Backward Compatibility and Integrated Network Management
This article introduces IPv8, an alternative successor to IPv4 that differs from IPv6 by focusing on integrated network management and singl
How to get a free *.city.state.us locality domain in the US
This article explains how US residents can obtain a free locality domain name (e.g., somename.city.state.us) for their town. It covers the h
Cloudflare fixes CUBIC congestion control bug in QUIC implementation that permanently pinned performance at minimum
Cloudflare engineers discovered and fixed a bug in the CUBIC congestion control algorithm (RFC 9438) used in their QUIC implementation (quic
PlanB-LPM: Portable C++ Implementation of IPv6 Longest-Prefix-Match Algorithm with AVX-512 SIMD
This article describes an independent reimplementation of the PlanB algorithm for IPv6 longest-prefix-match (LPM) routing. The implementatio
