Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Sergey Shinder says an SMS login-code client retried immediately after receiving HTTP 429 responses because it treated a date-form Retry-After header as invalid and fell back to a zero-second delay. The incident illustrates a protocol detail with real operational consequences: Retry-After can specify either an HTTP date or a delay in seconds.
How the date header became a zero-second retry
In his DEV Community account, Sergey Shinder describes a system that sent login codes through an SMS provider. For three years, its client had interpreted Retry-After as an integer number of seconds. Shinder says that after the provider moved its API behind a new gateway on Monday, June 15, 2026, the header began arriving as a date, such as Mon, 15 Jun 2026 08:02:31 GMT.
The client could not parse that date as an integer. According to Shinder, its exception handler then used a zero-second delay, so every 429 response was followed immediately by another request. He says 40 sender workers did this together during the busiest half-hour of the week. The provider’s abuse protection suspended the account within four minutes, for an hour, according to his account. He also says users could not receive login codes, including some whose sessions had expired over the weekend. These incident details and impacts are Shinder’s claims; they are not independently verified.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallWhat the Retry-After standard permits
RFC 9110, published by the IETF in June 2022, defines the Retry-After value as either an HTTP date or a number of seconds to wait before a follow-up request. The RFC’s examples demonstrate both forms. A client that only parses an integer therefore does not support the full syntax defined for this field.
#1 Best Overall
- 16 Ports Industrial-Grade GSM Modem Pool
- Based on Wavecom Q2403A Module
- USB Port Interface
- Control via AT Commands
- Support Dual Frequencies: GSM/GPRS 900/1800MHz
In practical terms, a seconds-form value might tell a client to wait for a stated number of seconds. A date-form value identifies a time to retry; the client must calculate the delay between that time and its current time. The date in Shinder’s example is not an instruction to retry immediately. RFC 9110 §10.2.3
Why an immediate retry can make throttling worse
A 429 response indicates that a request has been rate-limited. When a client ignores the indicated wait and retries at once, it can keep sending traffic while the service is asking it to pause. If many workers make the same mistake together, their repeated attempts can compound the load and resemble abusive traffic. That is the failure chain Shinder says led to the suspension in this incident; RFC 9110 does not quantify how often this happens.
Rank #2
- 16 ports industrial-grade modem pool
- Based on EC21-E module for Quectel
- USB port Interface
- Control via AT commands
- Support FDD LTE: B1/B3/B5/B7/B8/B20 (800/850/900/1800/2100/2600), WCDMA: B1/B5/B8 (850/900/2100), GSM: 900/1800
The key engineering risk was not merely failure to parse a date. It was the fallback behavior: a malformed or unsupported value became zero, converting a throttling signal into an immediate retry. A retry policy should not silently interpret an unrecognized wait instruction as permission to send again now.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →What Shinder says the team changed
Shinder reports that the client was updated to parse both permitted forms and turn a date into a delay relative to its own clock. The team bounded the resulting delay between one second and ten minutes; those are the implementation’s reported limits, not ranges mandated by the RFC or universal recommendations.
Rank #3
- CABLE INTERNET AND WIFI MADE FOR YOUR HOME: This two-in-one cable modem and WiFi router puts every setting in your hands, from your WiFi names and passwords to how your network runs, so it works the way your household needs.
- APPROVED FOR YOUR PROVIDER AND PLAN: Works with Xfinity internet plans up to 800Mbps and Cox plans up to 500Mbps. Not compatible with Verizon, AT&T, CenturyLink, DirecTV, DISH, or bundled voice plans. ISP activation required after setup.
- GET THE FULL SPEED OF PLANS UP TO 800 MBPS: DOCSIS 3.0 delivers plenty of speed for HD and 4K streaming, online gaming, and video calls across your home. Actual speeds vary by plan and provider.
- AC1900 WIFI COVERAGE FOR THE WHOLE HOME: Stay connected in every room with dual-band AC1900 WiFi covering up to 1,800 sq ft and Beamforming+ for stronger signal to mobile devices. Real-world coverage depends on home size, layout, and building materials.
- WIRED CONNECTIONS FOR YOUR FASTEST DEVICES: Four Gigabit Ethernet ports keep gaming consoles, desktops, and streaming devices hardwired for the lowest latency and the most stable connection in your home.
- Unparseable values: wait longer with jitter instead of falling back to zero, and log the raw header value.
- Multiple workers: draw retries from one shared budget so separate workers do not multiply traffic independently.
- Protocol coverage: add contract tests for every form permitted by the specification for each header the team reads.
- Provider failover: switch to a second SMS provider after two minutes, according to Shinder. That threshold is a reported implementation choice, not a general standard.
He summarized the incident this way: “They asked us to wait, in a form we had agreed to accept, and we ignored them in a way that looked to them exactly like an attack.”
Quick Recap
Best Value
- 16 Ports Industrial-Grade GSM Modem Pool
- Based on Wavecom Q2403A Module
- USB Port Interface
- Control via AT Commands
- Support Dual Frequencies: GSM/GPRS 900/1800MHz
Rank #4
- 16 Ports Industrial-Grade GSM Modem Pool
- Based on Wavecom Q2403A Module
- USB Port Interface
- Control via AT Commands
- Support Dual Frequencies: GSM/GPRS 900/1800MHz
How to prevent the same retry failure
- Parse the complete field syntax. Accept both an HTTP date and a delay in seconds, rather than coding only for the representation observed in one integration.
- Make parsing failure safe. Do not map an unknown value to a zero-second wait. Choose a bounded backoff policy that avoids immediate repeated requests.
- Prevent synchronized retries. Use jitter so clients or workers do not all retry at the same instant, and consider a retry budget shared across the workers that generate traffic.
- Test the contract. Include tests for each permitted representation and for invalid values, including verification that parsing failures cannot cause immediate retries.
- Make failures diagnosable. Record the received value and the wait the client computed, while ensuring logs follow the system’s privacy and security rules.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

