On the junk mail problem
A short proposal for refusing unwanted messages at the Host/IMP interface.
Postel, J., "On the junk mail problem", RFC 706, DOI 10.17487/RFC0706, November 1975, <https://www.rfc-editor.org/info/rfc706>.
@misc{rfc706,
series = {Request for Comments},
number = 706,
howpublished = {RFC 706},
publisher = {RFC Editor},
doi = {10.17487/RFC0706},
url = {https://www.rfc-editor.org/info/rfc706},
author = {J. Postel},
title = {{On the junk mail problem}},
pagetotal = 1,
year = 1975,
month = nov,
} RFC text
Network Working Group Jon Postel (SRI-ARC)
Request for Comments: 706 Nov 1975
NIC #33861
On the Junk Mail Problem
In the ARPA Network Host/IMP interface protocol there is no
mechanism for the Host to selectively refuse messages. This means
that a Host which desires to receive some particular messages must
read all messages addressed to it. Such a Host could be sent many
messages by a malfunctioning Host. This would constitute a denial of
service to the normal users of this Host. Both the local users and
the network communication could suffer. The services denied are the
processor time consumed in examining the undesired messages and
rejecting them, and the loss of network thruput or increased delay
due to the unnecessary busyness of the network.
It would be useful for a Host to be able to decline messages from
sources it believes are misbehaving or are simply annoying. If the
Host/IMP interface protocol allowed the Host to say to the IMP
"refuse messages from Host X", the IMPs could discard the unwanted
messages at their earliest opportunity returning a "refused" notice
to the offending Host.
How the IMPs might do this is an open issue -- here are two
possibilities:
The destination IMP would keep a list (per local Host) of sources
to refuse (this has the disadvantage of keeping the network
busy).
The destination IMP on receiving the "refuse messages from Host
X" message forwards the message to the source IMP (the IMP local
to Host X). That IMP keeps a list (per local Host) of
destinations that are refusing messages from this source Host.
This restriction on messages might be removed by a destination Host
either by sending a "accept messages from Host X" message to the
IMP, or by resetting its Host/IMP interface.
A Host might make use of such a facility by measuring, per source,
the number of undesired messages per unit time, if this measure
exceeds a threshold then the Host could issue the "refuse messages
from Host X" message to the IMP.
ISO Plain Language
On this page
§1The Problem of Unwanted Messages
The Host/IMP interface protocol had no mechanism for a host to selectively refuse messages. A host that wanted particular messages therefore had to read all messages addressed to it.
A malfunctioning host could send many unwanted messages, consuming processing time and network capacity and delaying other traffic.
A host had to receive and examine messages even when they were unwanted. A malfunctioning sender could make that work consume resources.
§2Refusing a Source Host
The memo proposes that a host be able to tell its IMP, “refuse messages from Host X.” The IMPs could discard those messages as early as possible and return a refusal notice to the sending host.
One option is for the destination IMP to keep a list of sources to refuse for each local host. Another is for it to forward the request to the source IMP, which keeps a list of refusing destinations.
A host could name a source whose messages should be refused. The IMP could keep that rule locally or send the rule to the source host's IMP.
§3Changing or Removing a Refusal
The proposed restriction could be removed by a host sending an “accept messages from Host X” message to its IMP. Resetting the Host/IMP interface could also remove it.
A host might count unwanted messages from each source and issue a refusal request when a chosen threshold is exceeded. The RFC leaves the details of how IMPs would implement the feature open.
A host could later allow messages from that source again. It might base a refusal on how many unwanted messages arrive.