Lars Eggert wrote:
I just checked the simple user-drive, cli client I wrote and it
doesn't retransmit at all (perhaps not the best UI experience).
the issue isn't with retransmissions. If - to use Harald's example - no
reply arrives for 70 out of 100 issued requests, this is a pretty strong
indication that the server or something on the way to or from the server
is congested. In response to such a signal, the request rate should be
reduced.
I'm not disagreeing. I was merely pointing to one reason why this never
came up as feed back from implementations.
I'd also like to bring up a second, somewhat related issue. Section 3 says:
Each IRIS-LWZ query or response is contained in a single UDP packet.
Servers MUST be prepared to accepted packets as large as 4000 octets,
and clients MUST NOT send packets larger than 4000 octets.
and Section 4 says
2. If a request is less than or equal to 4000 octets, send it
uncompressed.
3. If a request can be compressed to a size less than or equal to
4000 octets, send the request using compression. Otherwise use
another transfer protocol.
Sending packets larger than the minimum MTU of ~512 bytes is likely to
cause fragmentation, which can significantly reduce transmission
efficiency and reliability [1] and cause data corruption [2].
This section came about as feedback from a server implementation where the
implementor wanted to know how big of a buffer to reserve. To answer your
question below, 4000 was picked using DNSSEC as guidance. However, looking
at my code I see that MTU is the actual maximum value (I'll ask what others
have done). There likely should be a step 0: determine maximum size of
packet (the lesser of mtu or 4000, which is almost always likely to be mtu).
Fragmentation becomes more likely as packets get larger. With packets of
4000 bytes (where does this number come from, anyway?), fragmentation is
pretty much guaranteed across most links. If IRIS-LZW messages are
expected to be larger than ~512 bytes in general, the use of a transport
protocol other than UDP is probably a good idea.
That section does say: "Not all IRIS requests and responses will be able to
utilize UDP and may require the use of other transfer protocols (i.e.
IRIS-XPC and/or BEEP)."
-andy
_______________________________________________
Ietf@xxxxxxxx
https://www1.ietf.org/mailman/listinfo/ietf