Re: Why do we have or should have keep-alive packets?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2007-3-26, at 14:09, ext Gorry Fairhurst wrote:
Thoughts and comments are welcome!

I'd be good to keep the discussion in RFC1122, Section 4.2.3.6 on TCP keep-alives in mind:

	A "keep-alive" mechanism periodically probes the other
	end of a connection when the connection is otherwise
	idle, even when there is no data to be sent.  The TCP
	specification does not include a keep-alive mechanism
	because it could:  (1) cause perfectly good connections
	to break during transient Internet failures; (2)
	consume unnecessary bandwidth ("if no one is using the
	connection, who cares if it is still good?"); and (3)
	cost money for an Internet path that charges for
	packets.

These days, I'd add: (4) keep-alives can drain battery power, because they may prevent certain radio links from efficiently utilizing their low-power modes.

	A TCP keep-alive mechanism should only be invoked in
	server applications that might otherwise hang
	indefinitely and consume resources unnecessarily if a
	client crashes or aborts a connection during a network
	failure.

Note that I'm not vehemently opposed to the idea of adding keep- alives to DCCP, but the pros and cons must be weighted carefully.

Lars


Attachment: smime.p7s
Description: S/MIME cryptographic signature


[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux