As I understand it, to "think something is wrong" requires an application-layer timeout. Some people think this is about 5s, but I don't believe TCP specifies an upper bound.
An ICMP message can give an "instant" response.
It's worth considering that the ICMP message may trigger the "sacrificial" HTTP request by the operating system.
From: Lorenzo Colitti [[email protected]]
Sent: Wednesday, February 22, 2017 10:24 AM
To: Dave Dolson
Cc: David Bird; [email protected]; Kyle Larose; [email protected]
Subject: Re: [Captive-portals] Thinking of something related to captive portals for the ietf98 hackathon
Ok, but the implementations that are the most likely to implement this sort of feature already send sacrificial plaintext HTTP requests on connect, and are quite capable of generating HTTP requests on demand when they think something is wrong.
On Wed, Feb 22, 2017 at 11:53 PM, Dave Dolson <[email protected]> wrote: