Initcwnd Checker & TCP Window Analyzer
Estimate the Initial Congestion Window (initcwnd) size of any HTTP/S web server or CDN by analyzing initial TCP/TLS flight bursts and packet arrival timings.
Calculating Congestion Window...
Analyzing time-to-first-byte and segment arrival bursts.
Estimated Initcwnd
-
First Flight Bytes
-
TCP Handshake RTT
-
TLS Handshake Time
-
Burst Arrival Timeline
| Burst # | Bytes Received | Time Offset (ms) | Inter-burst Delta (ms) |
|---|---|---|---|
| No data captured yet. Run a measurement to inspect segment timings. | |||
What Is TCP Initial Congestion Window (initcwnd)?
The TCP Initial Congestion Window (initcwnd) (RFC 6928) determines how many MSS (Maximum Segment Size, typically ~1460 bytes) packets a TCP server can send to a client before waiting for an ACK confirmation packet back.
Why Initcwnd Optimization Matters for Web Performance
Historical web servers used initcwnd=2 or initcwnd=4 (limiting initial payload delivery to ~5.8 KB). Modern Linux kernels (since v3.0) and major CDNs (Cloudflare, CloudFront, Akamai) set initcwnd=10 (delivering ~14.6 KB in the first round-trip time flight).
- Reduced Round Trips: A larger initial window allows the initial HTML document, CSS stylesheet, and favicon to fit in the very first TCP packet burst.
- Lower Latency: Significantly improves Time to First Byte (TTFB) and First Contentful Paint (FCP) on mobile network connections.
- Kernel Configuration: Configured on Linux via
ip route change default via ... dev eth0 initcwnd 10 initrwnd 10.