RFC 1016 (rfc1016) - Page 1 of 18
Something a host could do with source quench: The Source Quench Introduced Delay (SQuID)
Alternative Format: Original Text Document
Network Working Group W. Prue
Request for Comments: 1016 J. Postel
ISI
July 1987
Something a Host Could Do with Source Quench:
The Source Quench Introduced Delay (SQuID)
Status of this Memo
This memo is intended to explore the issue of what a host could do
with a source quench. The proposal is for each source host IP module
to introduce some delay between datagrams sent to the same
destination host. This is an "crazy idea paper" and discussion is
essential. Distribution of this memo is unlimited.
Introduction
A gateway may discard Internet datagrams if it does not have the
buffer space needed to queue the datagrams for output to the next
network on the route to the destination network. If a gateway
discards a datagram, it may send a source quench message to the
Internet source host of the datagram. A destination host may also
send a source quench message if datagrams arrive too fast to be
processed. The source quench message is a request to the host to cut
back the rate at which it is sending traffic to the Internet
destination. The gateway may send a source quench message for every
message that it discards. On receipt of a source quench message, the
source host should cut back the rate at which it is sending traffic
to the specified destination until it no longer receives source
quench messages from the gateway. The source host can then gradually
increase the rate at which it sends traffic to the destination until
it again receives source quench messages [1,2].
The gateway or host may send the source quench message when it
approaches its capacity limit rather than waiting until the capacity
is exceeded. This means that the data datagram which triggered the
source quench message may be delivered.
The SQuID Concept
Suppose the IP module at the datagram source has a queue of datagrams
to send, and the IP module has a parameter "D". D is the introduced
delay between sending datagrams from the queue to the network. That
is, when the IP module discovers a datagram waiting to be sent to the
network, it sends it to the network then waits time D before even
looking at the datagram queue again. Normally, the value of D is
Prue & Postel