Tony Hansen wrote:
On the flip side is this:
4.5.3.2.6. DATA Termination: 10 Minutes.
This is while awaiting the "250 OK" reply.
There's a world of difference between the obligation of the server to
emit a timely response, and the obligation of the client to not give up
early.
Dave, unfortunately I'm not good at the normative references, but I am
long on experience here. My observation at Postini was that most clients
give up after a much shorter time. 5 minutes was common, but some were
as little as 30 seconds. Postini uses a proxy, so the amount of time
after the dot was the sum of all latencies, including the receiver and
all of the network delays from the sender to the proxy, and from the
proxy to the receiver.
As a result, duplicates were such a staggering huge problem. To mitigate
that, Postini computed a SHA-1 hash for every message, and if there was
any evidence that the receiver had sent the 250 OK, but the sender never
got it, the hash was saved in a database. If the sender resent the
message, the proxy (knowing it had already been delivered) quietly ate it.
When that database broke, the customers noticed immediately. The effect
was that significant.
<csg>