[ipxe-devel] HTTP Transfer does not timeout when transfer interrupted..

Michael Brown mcb30 at ipxe.org
Mon Oct 13 13:30:26 BST 2014


On 06/10/14 05:12, Post, Donald L UTAS wrote:
> In the following case it seems that an HTTP transfer does not time out
> and basically hangs forever (well a really long time).
>
> ·iPXE client is set up to perform for an HTTP of a Linux system.
>
> ·The root file system is fairly large and thus takes a bit to down load
> (say 15 seconds).
>
> ·If there is a loss of link during the transfer, the transfer does not
> timeout but seems to hang
>
> ·Even if the cable is reconnected (after a period of time long enough
> for the TCP connection to have timed out) the transfer does not continue.
>
> My questions are:
>
> 1.Is this the expected behavior?
>
> 2.If not, is there a setting I need to set to enable the timeout and
> restart of the connection?

The underlying problem is that the TCP connection is stable in this 
situation.  The client has nothing to send, so will not be retrying 
anything and will patiently wait forever until the server sends more data.

There is an overall --timeout option to all of the image-fetching 
commands ("imgfetch", "chain", etc) which allows you to specify a 
timeout for the complete download operation (including DNS lookup, etc). 
  The timeout is an inactivity timeout: if the download fails to make 
forward progress (as defined by a call to job_progress()) within the 
specified time then the download job will be aborted.

For backwards compatiblity, if no timeout is specified then iPXE will 
wait indefinitely.  We could potentially change this: what do people think?

Michael


More information about the ipxe-devel mailing list