annotate support/pop/popbb.txt @ 12:441a2190cfae

Lion fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 21 Apr 2012 13:10:49 +0900
parents bce86c4163a3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
bce86c4163a3 Initial revision
kono
parents:
diff changeset
1 Request For Comments: draft
bce86c4163a3 Initial revision
kono
parents:
diff changeset
2
bce86c4163a3 Initial revision
kono
parents:
diff changeset
3
bce86c4163a3 Initial revision
kono
parents:
diff changeset
4
bce86c4163a3 Initial revision
kono
parents:
diff changeset
5
bce86c4163a3 Initial revision
kono
parents:
diff changeset
6
bce86c4163a3 Initial revision
kono
parents:
diff changeset
7
bce86c4163a3 Initial revision
kono
parents:
diff changeset
8
bce86c4163a3 Initial revision
kono
parents:
diff changeset
9
bce86c4163a3 Initial revision
kono
parents:
diff changeset
10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
11
bce86c4163a3 Initial revision
kono
parents:
diff changeset
12
bce86c4163a3 Initial revision
kono
parents:
diff changeset
13
bce86c4163a3 Initial revision
kono
parents:
diff changeset
14 Post Office Protocol (revised)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
15 Extended Service Offerings
bce86c4163a3 Initial revision
kono
parents:
diff changeset
16
bce86c4163a3 Initial revision
kono
parents:
diff changeset
17
bce86c4163a3 Initial revision
kono
parents:
diff changeset
18 Wed Dec 18 23:17:52 1985
bce86c4163a3 Initial revision
kono
parents:
diff changeset
19
bce86c4163a3 Initial revision
kono
parents:
diff changeset
20
bce86c4163a3 Initial revision
kono
parents:
diff changeset
21 Marshall T. Rose
bce86c4163a3 Initial revision
kono
parents:
diff changeset
22
bce86c4163a3 Initial revision
kono
parents:
diff changeset
23 Northrop Research and Technology Center
bce86c4163a3 Initial revision
kono
parents:
diff changeset
24 One Research Park
bce86c4163a3 Initial revision
kono
parents:
diff changeset
25 Palos Verdes Peninsula, CA 90274
bce86c4163a3 Initial revision
kono
parents:
diff changeset
26
bce86c4163a3 Initial revision
kono
parents:
diff changeset
27 MRose%NRTC@USC-ECL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
28
bce86c4163a3 Initial revision
kono
parents:
diff changeset
29
bce86c4163a3 Initial revision
kono
parents:
diff changeset
30
bce86c4163a3 Initial revision
kono
parents:
diff changeset
31
bce86c4163a3 Initial revision
kono
parents:
diff changeset
32 This memo suggests a simple method for workstations to dynamically
bce86c4163a3 Initial revision
kono
parents:
diff changeset
33 access mail from a discussion group server, as an extension to an
bce86c4163a3 Initial revision
kono
parents:
diff changeset
34 earlier memo which dealt with dynamically accessing mail from a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
35 mailbox server using the Post Office Protocol (POP). This RFC
bce86c4163a3 Initial revision
kono
parents:
diff changeset
36 specifies a proposed protocol for the ARPA Internet community, and
bce86c4163a3 Initial revision
kono
parents:
diff changeset
37 requests discussion and suggestions for improvements. All of the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
38 extensions described in this memo to the POP are OPTIONAL.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
39
bce86c4163a3 Initial revision
kono
parents:
diff changeset
40 Request For Comments: draft M. Rose
bce86c4163a3 Initial revision
kono
parents:
diff changeset
41 POP (revised) Extended Service Offerings NRTC
bce86c4163a3 Initial revision
kono
parents:
diff changeset
42
bce86c4163a3 Initial revision
kono
parents:
diff changeset
43
bce86c4163a3 Initial revision
kono
parents:
diff changeset
44
bce86c4163a3 Initial revision
kono
parents:
diff changeset
45 Introduction and Motivation
bce86c4163a3 Initial revision
kono
parents:
diff changeset
46
bce86c4163a3 Initial revision
kono
parents:
diff changeset
47 It is assumed that the reader is familiar with the previous memo
bce86c4163a3 Initial revision
kono
parents:
diff changeset
48 that discusses the Post Office Protocol (POP) [MRose84]. This memo
bce86c4163a3 Initial revision
kono
parents:
diff changeset
49 describes extensions to the POP which enhance the service it offers
bce86c4163a3 Initial revision
kono
parents:
diff changeset
50 to clients. This additional service permits a client host to access
bce86c4163a3 Initial revision
kono
parents:
diff changeset
51 discussion group mail, which is often kept in a separate spool area,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
52 using the general POP facilities.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
53
bce86c4163a3 Initial revision
kono
parents:
diff changeset
54 The next section describes the evolution of discussion groups and
bce86c4163a3 Initial revision
kono
parents:
diff changeset
55 the technologies currently used to implement them. To summarize:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
56
bce86c4163a3 Initial revision
kono
parents:
diff changeset
57 o An exploder is used to map from a single address to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
58 a list of addresses which subscribe to the list, and redirects
bce86c4163a3 Initial revision
kono
parents:
diff changeset
59 any subsequent error reports associated with the delivery of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
60 each message. This has two primary advantages:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
61 - Subscribers need know only a single address
bce86c4163a3 Initial revision
kono
parents:
diff changeset
62 - Responsible parties get the error reports and not
bce86c4163a3 Initial revision
kono
parents:
diff changeset
63 the subscribers
bce86c4163a3 Initial revision
kono
parents:
diff changeset
64
bce86c4163a3 Initial revision
kono
parents:
diff changeset
65 o Typically, each subscription address is not a person's private
bce86c4163a3 Initial revision
kono
parents:
diff changeset
66 maildrop, but a system-wide maildrop, which can be accessed
bce86c4163a3 Initial revision
kono
parents:
diff changeset
67 by more than one user. This has several advantages:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
68 - Only a single copy of each message need traverse the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
69 net for a given site (which may contain several local
bce86c4163a3 Initial revision
kono
parents:
diff changeset
70 hosts). This conserves bandwidth and cycles.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
71 - Only a single copy of each message need reside on each
bce86c4163a3 Initial revision
kono
parents:
diff changeset
72 subscribing host. This conserves disk space.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
73 - The private maildrop for each user is not cluttered
bce86c4163a3 Initial revision
kono
parents:
diff changeset
74 with discussion group mail.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
75
bce86c4163a3 Initial revision
kono
parents:
diff changeset
76 Despite this optimization of resources, further economy can be
bce86c4163a3 Initial revision
kono
parents:
diff changeset
77 achieved at sites with more than one host. Typically, sites with
bce86c4163a3 Initial revision
kono
parents:
diff changeset
78 more than one host either:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
79
bce86c4163a3 Initial revision
kono
parents:
diff changeset
80 1. Replicate discussion group mail on each host. This
bce86c4163a3 Initial revision
kono
parents:
diff changeset
81 results in literally gigabytes of disk space committed to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
82 unnecessarily store redundant information.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
83
bce86c4163a3 Initial revision
kono
parents:
diff changeset
84 2. Keep discussion group mail on one host and give all users a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
85 login on that host (in addition to any other logins they may
bce86c4163a3 Initial revision
kono
parents:
diff changeset
86 have). This is usually a gross inconvenience for users who
bce86c4163a3 Initial revision
kono
parents:
diff changeset
87 work on other hosts, or a burden to users who are forced to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
88 work on that host.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
89
bce86c4163a3 Initial revision
kono
parents:
diff changeset
90 As discussed in [MRose84], the problem of giving workstations
bce86c4163a3 Initial revision
kono
parents:
diff changeset
91 dynamic access to mail from a mailbox server has been explored in
bce86c4163a3 Initial revision
kono
parents:
diff changeset
92 great detail (originally there was [RFC918], this prompted the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
93 author to write [MRose84], independently of this [RFC918] was
bce86c4163a3 Initial revision
kono
parents:
diff changeset
94 upgraded to [RFC937]). A natural solution to the problem outlined
bce86c4163a3 Initial revision
kono
parents:
diff changeset
95 above is to keep discussion group mail on a mailbox server at each
bce86c4163a3 Initial revision
kono
parents:
diff changeset
96 site and permit different hosts at that site to employ the POP to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
97 access discussion group mail. If implemented properly, this
bce86c4163a3 Initial revision
kono
parents:
diff changeset
98 avoids the problems of both strategies outlined above.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
99
bce86c4163a3 Initial revision
kono
parents:
diff changeset
100 ASIDE: It might be noted that a good distributed filesystem
bce86c4163a3 Initial revision
kono
parents:
diff changeset
101 could also solve this problem. Sadly, "good"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
102 distributed filesystems, which do not suffer
bce86c4163a3 Initial revision
kono
parents:
diff changeset
103 unacceptable response time for interactive use, are
bce86c4163a3 Initial revision
kono
parents:
diff changeset
104 few and far between these days!
bce86c4163a3 Initial revision
kono
parents:
diff changeset
105
bce86c4163a3 Initial revision
kono
parents:
diff changeset
106 Given this motivation, now let's consider discussion groups, both in
bce86c4163a3 Initial revision
kono
parents:
diff changeset
107 general and from the point of view of a user agent. Following this,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
108 extensions to the POP defined in [MRose84] are presented. Finally,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
109 some additional policy details are discussed along with some initial
bce86c4163a3 Initial revision
kono
parents:
diff changeset
110 experiences.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
111
bce86c4163a3 Initial revision
kono
parents:
diff changeset
112 What's in a Discussion Group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
113
bce86c4163a3 Initial revision
kono
parents:
diff changeset
114 Since mailers and user agents first crawled out of the primordial
bce86c4163a3 Initial revision
kono
parents:
diff changeset
115 ARPAnet, the value of discussion groups have been appreciated,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
116 (though their implementation has not always been well-understood).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
117
bce86c4163a3 Initial revision
kono
parents:
diff changeset
118 Described simply, an discussion group is composed of a number of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
119 subscribers with a common interest. These subscribers post mail to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
120 a single address, known as a distribution address. From this
bce86c4163a3 Initial revision
kono
parents:
diff changeset
121 distribution address, a copy of the message is sent to each
bce86c4163a3 Initial revision
kono
parents:
diff changeset
122 subscriber. Each group has a moderator, which is the person that
bce86c4163a3 Initial revision
kono
parents:
diff changeset
123 administrates the group. The moderator can usually be reached at a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
124 special address, known as a request address. Usually, the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
125 responsibilities of the moderator are quite simple, since the mail
bce86c4163a3 Initial revision
kono
parents:
diff changeset
126 system handles the distribution to subscribers automatically. In
bce86c4163a3 Initial revision
kono
parents:
diff changeset
127 some cases, the interest group, instead of being distributed
bce86c4163a3 Initial revision
kono
parents:
diff changeset
128 directly to its subscribers, is put into a digest format by the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
129 moderator and then sent to the subscribers. Although this requires
bce86c4163a3 Initial revision
kono
parents:
diff changeset
130 more work on the part of the moderator, such groups tend to be
bce86c4163a3 Initial revision
kono
parents:
diff changeset
131 better organized.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
132
bce86c4163a3 Initial revision
kono
parents:
diff changeset
133 Unfortunately, there are a few problems with the scheme outlined
bce86c4163a3 Initial revision
kono
parents:
diff changeset
134 above. First, if two users on the same host subscribe to the same
bce86c4163a3 Initial revision
kono
parents:
diff changeset
135 interest group, two copies of the message get delivered. This is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
136 wasteful of both processor and disk resources.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
137
bce86c4163a3 Initial revision
kono
parents:
diff changeset
138 Second, some of these groups carry a lot of traffic. Although
bce86c4163a3 Initial revision
kono
parents:
diff changeset
139 subscription to an group does indicate interest on the part of a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
140 subscriber, it is usually not interesting to get 50 messages or so
bce86c4163a3 Initial revision
kono
parents:
diff changeset
141 delivered to the user's private maildrop each day, interspersed with
bce86c4163a3 Initial revision
kono
parents:
diff changeset
142 personal mail, that is likely to be of a much more important and
bce86c4163a3 Initial revision
kono
parents:
diff changeset
143 timely nature.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
144
bce86c4163a3 Initial revision
kono
parents:
diff changeset
145 Third, if a subscriber on the distribution list for a group becomes
bce86c4163a3 Initial revision
kono
parents:
diff changeset
146 "bad" somehow, the originator of the message and not the moderator
bce86c4163a3 Initial revision
kono
parents:
diff changeset
147 of the group is notified. It is not uncommon for a large list to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
148 have 10 or so bogus addresses present. This results in the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
149 originator being flooded with "error messages" from mailers across
bce86c4163a3 Initial revision
kono
parents:
diff changeset
150 the ARPA Internet stating that a given address on the list was bad.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
151 Needless to say, the originator usually could not care less if the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
152 bogus addresses got a copy of the message or not. The originator is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
153 merely interested in posting a message to the group at large.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
154 Furthermore, the moderator of the group does care if there are bogus
bce86c4163a3 Initial revision
kono
parents:
diff changeset
155 addresses on the list, but ironically does not receive notification.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
156
bce86c4163a3 Initial revision
kono
parents:
diff changeset
157 There are various approaches which can be used to solve some or all
bce86c4163a3 Initial revision
kono
parents:
diff changeset
158 of these problems. Usually these involve placing an exploder agent
bce86c4163a3 Initial revision
kono
parents:
diff changeset
159 at the distribution source of the discussion group, which expands
bce86c4163a3 Initial revision
kono
parents:
diff changeset
160 the name of the group into the list of subscription addresses for
bce86c4163a3 Initial revision
kono
parents:
diff changeset
161 the group. In the process, the exploder will also change the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
162 address that receives error notifications to be the request address
bce86c4163a3 Initial revision
kono
parents:
diff changeset
163 or other responsible party.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
164
bce86c4163a3 Initial revision
kono
parents:
diff changeset
165 A complementary approach, used in order to cut down on resource
bce86c4163a3 Initial revision
kono
parents:
diff changeset
166 utilization of all kinds, replaces all the subscribers at a single
bce86c4163a3 Initial revision
kono
parents:
diff changeset
167 host (or group of hosts under a single administration) with a single
bce86c4163a3 Initial revision
kono
parents:
diff changeset
168 address at that host. This address maps to a file on the host,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
169 usually in a spool area, which all users can access. (Advanced
bce86c4163a3 Initial revision
kono
parents:
diff changeset
170 implementations can also implement private discussion groups this
bce86c4163a3 Initial revision
kono
parents:
diff changeset
171 way, in which a single copy of each message is kept, but is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
172 accessible to only a select number of users on the host.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
173
bce86c4163a3 Initial revision
kono
parents:
diff changeset
174 The two approaches can be combined to avoid all of the problems
bce86c4163a3 Initial revision
kono
parents:
diff changeset
175 described above.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
176
bce86c4163a3 Initial revision
kono
parents:
diff changeset
177 Finally, a third approach can be taken, which can be used to aid
bce86c4163a3 Initial revision
kono
parents:
diff changeset
178 user agents processing mail for the discussion group: In order to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
179 speed querying of the maildrop which contains the local host's copy
bce86c4163a3 Initial revision
kono
parents:
diff changeset
180 of the discussion group, two other items are usually associated with
bce86c4163a3 Initial revision
kono
parents:
diff changeset
181 the discussion group, on a local basis. These are the maxima and
bce86c4163a3 Initial revision
kono
parents:
diff changeset
182 the last-date. Each time a message is received for the group on the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
183 local host, the maxima is increased by at least one. Furthermore,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
184 when a new maxima is generated, the current date is determined.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
185 This is called the last date. As the message is entered into the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
186 local maildrop, it is given the current maxima and last-date. This
bce86c4163a3 Initial revision
kono
parents:
diff changeset
187 permits the user agent to quickly determine if new messages are
bce86c4163a3 Initial revision
kono
parents:
diff changeset
188 present in the maildrop.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
189
bce86c4163a3 Initial revision
kono
parents:
diff changeset
190 NOTE: The maxima may be characterized as a monotonically
bce86c4163a3 Initial revision
kono
parents:
diff changeset
191 increasing quanity. Although sucessive values of the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
192 maxima need not be consecutive, any maxima assigned
bce86c4163a3 Initial revision
kono
parents:
diff changeset
193 is always greater than any previously assigned value.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
194
bce86c4163a3 Initial revision
kono
parents:
diff changeset
195 Definition of Terms
bce86c4163a3 Initial revision
kono
parents:
diff changeset
196
bce86c4163a3 Initial revision
kono
parents:
diff changeset
197 To formalize these notions somewhat, consider the following 7
bce86c4163a3 Initial revision
kono
parents:
diff changeset
198 parameters which describe a given discussion group from the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
199 perspective of the user agent (the syntax given is from [RFC822]):
bce86c4163a3 Initial revision
kono
parents:
diff changeset
200
bce86c4163a3 Initial revision
kono
parents:
diff changeset
201 NAME Meaning: the name of the discussion group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
202 Syntax: TOKEN (ALPHA *[ ALPHA / DIGIT / "-" ])
bce86c4163a3 Initial revision
kono
parents:
diff changeset
203 (case-insensitive recognition)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
204 Example: unix-wizards
bce86c4163a3 Initial revision
kono
parents:
diff changeset
205
bce86c4163a3 Initial revision
kono
parents:
diff changeset
206 ALIASES Meaning: alternates names for the group, which
bce86c4163a3 Initial revision
kono
parents:
diff changeset
207 are locally meaningful; these are
bce86c4163a3 Initial revision
kono
parents:
diff changeset
208 typically used to shorten user typein
bce86c4163a3 Initial revision
kono
parents:
diff changeset
209 Syntax: TOKEN (case-insensitive recognition)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
210 Example: uwiz
bce86c4163a3 Initial revision
kono
parents:
diff changeset
211
bce86c4163a3 Initial revision
kono
parents:
diff changeset
212 ADDRESS Meaning: the primary source of the group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
213 Syntax: 822 address
bce86c4163a3 Initial revision
kono
parents:
diff changeset
214 Example: Unix-Wizards@BRL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
215
bce86c4163a3 Initial revision
kono
parents:
diff changeset
216 REQUEST Meaning: the primary moderator of the group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
217 Syntax: 822 address
bce86c4163a3 Initial revision
kono
parents:
diff changeset
218 Example: Unix-Wizards-Request@BRL
bce86c4163a3 Initial revision
kono
parents:
diff changeset
219
bce86c4163a3 Initial revision
kono
parents:
diff changeset
220 FLAGS Meaning: locally meaningful flags associated
bce86c4163a3 Initial revision
kono
parents:
diff changeset
221 with the discussion group; this memo
bce86c4163a3 Initial revision
kono
parents:
diff changeset
222 leaves interpretation of this parameter
bce86c4163a3 Initial revision
kono
parents:
diff changeset
223 to each POP implementation
bce86c4163a3 Initial revision
kono
parents:
diff changeset
224 Syntax: octal number
bce86c4163a3 Initial revision
kono
parents:
diff changeset
225 Example: 01
bce86c4163a3 Initial revision
kono
parents:
diff changeset
226
bce86c4163a3 Initial revision
kono
parents:
diff changeset
227 MAXIMA Meaning: the magic cookie associated with the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
228 last message locally received for the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
229 group; it is the property of the magic
bce86c4163a3 Initial revision
kono
parents:
diff changeset
230 cookie that it's value NEVER decreases,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
231 and increases by at least one each time
bce86c4163a3 Initial revision
kono
parents:
diff changeset
232 a message is locally received
bce86c4163a3 Initial revision
kono
parents:
diff changeset
233 Syntax: decimal number
bce86c4163a3 Initial revision
kono
parents:
diff changeset
234 Example: 1004
bce86c4163a3 Initial revision
kono
parents:
diff changeset
235
bce86c4163a3 Initial revision
kono
parents:
diff changeset
236 LASTDATE Meaning: the date that the last message was
bce86c4163a3 Initial revision
kono
parents:
diff changeset
237 locally received
bce86c4163a3 Initial revision
kono
parents:
diff changeset
238 Syntax: 822 date
bce86c4163a3 Initial revision
kono
parents:
diff changeset
239 Example: Thu, 19 Dec 85 10:26:48 -0800
bce86c4163a3 Initial revision
kono
parents:
diff changeset
240
bce86c4163a3 Initial revision
kono
parents:
diff changeset
241 Note that the last two values are locally determined for the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
242 maildrop associated with the discussion group and with each message
bce86c4163a3 Initial revision
kono
parents:
diff changeset
243 in that maildrop. Note however that the last message in the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
244 maildrop have a different MAXIMA and LASTDATE than the discussion
bce86c4163a3 Initial revision
kono
parents:
diff changeset
245 group. This often occurs when the maildrop has been archived.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
246
bce86c4163a3 Initial revision
kono
parents:
diff changeset
247 Finally, some local systems provide mechanisms for automatically
bce86c4163a3 Initial revision
kono
parents:
diff changeset
248 archiving discussion group mail. In some cases, a two-level archive
bce86c4163a3 Initial revision
kono
parents:
diff changeset
249 scheme is used: current mail is kept in the standard maildrop,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
250 recent mail is kept in an archive maildrop, and older mail is kept
bce86c4163a3 Initial revision
kono
parents:
diff changeset
251 off-line. With this scheme, in addition to having a "standard"
bce86c4163a3 Initial revision
kono
parents:
diff changeset
252 maildrop for each discussion group, an "archive" maildrop may also
bce86c4163a3 Initial revision
kono
parents:
diff changeset
253 be available. This permits a user agent to examine the most recent
bce86c4163a3 Initial revision
kono
parents:
diff changeset
254 archive using the same mechanisms as those used on the current mail.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
255
bce86c4163a3 Initial revision
kono
parents:
diff changeset
256 The XTND Command
bce86c4163a3 Initial revision
kono
parents:
diff changeset
257
bce86c4163a3 Initial revision
kono
parents:
diff changeset
258 The following commands are valid only in the TRANSACTION state of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
259 the POP. This implies that the POP server has already opened the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
260 user's maildrop (which may be empty). This maildrop is called the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
261 "default maildrop". The phrase "closes the current maildrop" has
bce86c4163a3 Initial revision
kono
parents:
diff changeset
262 two meanings, depending on whether the current maildrop is the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
263 default maildrop or is a maildrop associated with a discussion
bce86c4163a3 Initial revision
kono
parents:
diff changeset
264 group.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
265
bce86c4163a3 Initial revision
kono
parents:
diff changeset
266 In the former context, when the current maildrop is closed any
bce86c4163a3 Initial revision
kono
parents:
diff changeset
267 messages marked as deleted are removed from the maildrop currently
bce86c4163a3 Initial revision
kono
parents:
diff changeset
268 in use. The exclusive-access lock on the maildrop is then released
bce86c4163a3 Initial revision
kono
parents:
diff changeset
269 along with any implementation-specific resources (e.g.,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
270 file-descriptors).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
271
bce86c4163a3 Initial revision
kono
parents:
diff changeset
272 In the latter context, a maildrop associated with a discussion group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
273 is considered to be read-only to the POP client. In this case, the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
274 phrase "closes the current maildrop" merely means that any
bce86c4163a3 Initial revision
kono
parents:
diff changeset
275 implementation-specific resources are released. (Hence, the POP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
276 command DELE is a no-op.)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
277
bce86c4163a3 Initial revision
kono
parents:
diff changeset
278 All the new facilities are introduced via a single POP command,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
279 XTND. All positive reponses to the XTND command are multi-line.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
280
bce86c4163a3 Initial revision
kono
parents:
diff changeset
281 The most common multi-line response to the commands contains a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
282 "discussion group listing" which presents the name of the discussion
bce86c4163a3 Initial revision
kono
parents:
diff changeset
283 group along with it's maxima. In order to simplify parsing all POP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
284 servers are required to use a certain format for discussion group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
285 listings:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
286
bce86c4163a3 Initial revision
kono
parents:
diff changeset
287 NAME SP MAXIMA
bce86c4163a3 Initial revision
kono
parents:
diff changeset
288
bce86c4163a3 Initial revision
kono
parents:
diff changeset
289 This memo makes no requirement on what follows the maxima in the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
290 listing. Minimal implementations should just end that line of the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
291 response with a CRLF pair. More advanced implementations may
bce86c4163a3 Initial revision
kono
parents:
diff changeset
292 include other information, as parsed from the message.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
293
bce86c4163a3 Initial revision
kono
parents:
diff changeset
294 NOTE: This memo STRONGLY discourages implementations from
bce86c4163a3 Initial revision
kono
parents:
diff changeset
295 supplying additional information in the listing.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
296
bce86c4163a3 Initial revision
kono
parents:
diff changeset
297
bce86c4163a3 Initial revision
kono
parents:
diff changeset
298 XTND BBOARDS [name]
bce86c4163a3 Initial revision
kono
parents:
diff changeset
299 Arguments: the name of a discussion group (optionally)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
300 Restrictions: may only be given in the TRANSACTION state.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
301 Discussion:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
302
bce86c4163a3 Initial revision
kono
parents:
diff changeset
303 If an argument was given, the POP server closes the current
bce86c4163a3 Initial revision
kono
parents:
diff changeset
304 maildrop. The POP server then validates the argument as the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
305 name of a discussion group. If this is successful, it opens
bce86c4163a3 Initial revision
kono
parents:
diff changeset
306 the maildrop associated with the group, and returns a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
307 multi-line response containing the discussion group listing.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
308 If the discussion group named is not valid, or the associated
bce86c4163a3 Initial revision
kono
parents:
diff changeset
309 archive maildrop is not readable by the user, then an error
bce86c4163a3 Initial revision
kono
parents:
diff changeset
310 response is returned.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
311
bce86c4163a3 Initial revision
kono
parents:
diff changeset
312 If no argument was given, the POP server issues a multi-line
bce86c4163a3 Initial revision
kono
parents:
diff changeset
313 response. After the initial +OK, for each discussion group
bce86c4163a3 Initial revision
kono
parents:
diff changeset
314 known, the POP server responds with a line containing the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
315 listing for that discussion group. Note that only
bce86c4163a3 Initial revision
kono
parents:
diff changeset
316 world-readable discussion groups are included in the multi-line
bce86c4163a3 Initial revision
kono
parents:
diff changeset
317 response.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
318
bce86c4163a3 Initial revision
kono
parents:
diff changeset
319 In order to aid user agents, this memo requires an extension to
bce86c4163a3 Initial revision
kono
parents:
diff changeset
320 the scan listing when an "XTND BBOARDS" command has been given.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
321 Normally, a scan listing, as generated by the LIST, takes the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
322 form:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
323
bce86c4163a3 Initial revision
kono
parents:
diff changeset
324 MSGNO SIZE
bce86c4163a3 Initial revision
kono
parents:
diff changeset
325
bce86c4163a3 Initial revision
kono
parents:
diff changeset
326 where MSGNO is the number of the message being listed and SIZE
bce86c4163a3 Initial revision
kono
parents:
diff changeset
327 is the size of the message in octets. When reading a maildrop
bce86c4163a3 Initial revision
kono
parents:
diff changeset
328 accessed via "XTND BBOARDS", the scan listing takes the form
bce86c4163a3 Initial revision
kono
parents:
diff changeset
329
bce86c4163a3 Initial revision
kono
parents:
diff changeset
330 MSGNO SIZE MAXIMA
bce86c4163a3 Initial revision
kono
parents:
diff changeset
331
bce86c4163a3 Initial revision
kono
parents:
diff changeset
332 where MAXIMA is the maxima that was assigned to the message
bce86c4163a3 Initial revision
kono
parents:
diff changeset
333 when it was placed in the BBoard.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
334
bce86c4163a3 Initial revision
kono
parents:
diff changeset
335 Possible Responses:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
336 +OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
337 -ERR no such bboard
bce86c4163a3 Initial revision
kono
parents:
diff changeset
338 Examples:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
339 C: XTND BBOARDS
bce86c4163a3 Initial revision
kono
parents:
diff changeset
340 S: +OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
341 S: system 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
342 S: mh-users 100
bce86c4163a3 Initial revision
kono
parents:
diff changeset
343 S: .
bce86c4163a3 Initial revision
kono
parents:
diff changeset
344 C: XTND BBOARDS system
bce86c4163a3 Initial revision
kono
parents:
diff changeset
345 S: + OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
346 S: system 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
347 S: .
bce86c4163a3 Initial revision
kono
parents:
diff changeset
348
bce86c4163a3 Initial revision
kono
parents:
diff changeset
349 XTND ARCHIVE name
bce86c4163a3 Initial revision
kono
parents:
diff changeset
350 Arguments: the name of a discussion group (required)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
351 Restrictions: may only be given in the TRANSACTION state.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
352 Discussion:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
353
bce86c4163a3 Initial revision
kono
parents:
diff changeset
354 The POP server closes the current maildrop. The POP server
bce86c4163a3 Initial revision
kono
parents:
diff changeset
355 then validates the argument as the name of a discussion group.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
356 If this is successful, it opens the archive maildrop associated
bce86c4163a3 Initial revision
kono
parents:
diff changeset
357 with the group, and returns a multi-line response containing
bce86c4163a3 Initial revision
kono
parents:
diff changeset
358 the discussion group listing. If the discussion group named is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
359 not valid, or the associated archive maildrop is not readable
bce86c4163a3 Initial revision
kono
parents:
diff changeset
360 by the user, then an error response is returned.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
361
bce86c4163a3 Initial revision
kono
parents:
diff changeset
362 In addition, the scan listing generated by the LIST command is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
363 augmented (as described above).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
364
bce86c4163a3 Initial revision
kono
parents:
diff changeset
365 Possible Responses:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
366 +OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
367 -ERR no such bboard
bce86c4163a3 Initial revision
kono
parents:
diff changeset
368 Examples:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
369 C: XTND ARCHIVE system
bce86c4163a3 Initial revision
kono
parents:
diff changeset
370 S: + OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
371 S: system 3
bce86c4163a3 Initial revision
kono
parents:
diff changeset
372 S: .
bce86c4163a3 Initial revision
kono
parents:
diff changeset
373
bce86c4163a3 Initial revision
kono
parents:
diff changeset
374 XTND X-BBOARDS name
bce86c4163a3 Initial revision
kono
parents:
diff changeset
375 Arguments: the name of a discussion group (required)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
376 Restrictions: may only be given in the TRANSACTION state.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
377 Discussion:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
378
bce86c4163a3 Initial revision
kono
parents:
diff changeset
379 The POP server validates the argument as the name of a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
380 discussion group. If this is unsuccessful, then an error
bce86c4163a3 Initial revision
kono
parents:
diff changeset
381 response is returned. Otherwise a multi-line response is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
382 returned. The first 14 lines of this response (after the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
383 initial +OK) are defined in this memo. Minimal implementations
bce86c4163a3 Initial revision
kono
parents:
diff changeset
384 need not include other information (and may omit certain
bce86c4163a3 Initial revision
kono
parents:
diff changeset
385 information, outputing a bare CRLF pair). More advanced
bce86c4163a3 Initial revision
kono
parents:
diff changeset
386 implementations may include other information.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
387
bce86c4163a3 Initial revision
kono
parents:
diff changeset
388 Line Information (refer to "Definition of Terms")
bce86c4163a3 Initial revision
kono
parents:
diff changeset
389 ---- -----------
bce86c4163a3 Initial revision
kono
parents:
diff changeset
390 1 NAME
bce86c4163a3 Initial revision
kono
parents:
diff changeset
391 2 ALIASES, separated by SP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
392 3 system-specific: maildrop
bce86c4163a3 Initial revision
kono
parents:
diff changeset
393 4 system-specific: archive maildrop
bce86c4163a3 Initial revision
kono
parents:
diff changeset
394 5 system-specific: information
bce86c4163a3 Initial revision
kono
parents:
diff changeset
395 6 system-specific: maildrop map
bce86c4163a3 Initial revision
kono
parents:
diff changeset
396 7 system-specific: encrypted password
bce86c4163a3 Initial revision
kono
parents:
diff changeset
397 8 system-specific: local leaders, separated by SP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
398 9 ADDRESS
bce86c4163a3 Initial revision
kono
parents:
diff changeset
399 10 REQUEST
bce86c4163a3 Initial revision
kono
parents:
diff changeset
400 11 system-specific: incoming feed
bce86c4163a3 Initial revision
kono
parents:
diff changeset
401 12 system-specific: outgoing feeds
bce86c4163a3 Initial revision
kono
parents:
diff changeset
402 13 FLAGS SP MAXIMA
bce86c4163a3 Initial revision
kono
parents:
diff changeset
403 14 LASTDATE
bce86c4163a3 Initial revision
kono
parents:
diff changeset
404
bce86c4163a3 Initial revision
kono
parents:
diff changeset
405 Most of this information is entirely too specific to the UCI
bce86c4163a3 Initial revision
kono
parents:
diff changeset
406 Version of the Rand MH Message Handling System[MRose85].
bce86c4163a3 Initial revision
kono
parents:
diff changeset
407 Nevertheless, lines 1, 2, 9, 10, 13, and 14 are of general
bce86c4163a3 Initial revision
kono
parents:
diff changeset
408 interest, regardless of the implementation.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
409
bce86c4163a3 Initial revision
kono
parents:
diff changeset
410 Possible Responses:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
411 +OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
412 -ERR no such bboard
bce86c4163a3 Initial revision
kono
parents:
diff changeset
413 Examples:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
414 C: XTND X-BBOARDS system
bce86c4163a3 Initial revision
kono
parents:
diff changeset
415 S: + OK XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
416 S: system
bce86c4163a3 Initial revision
kono
parents:
diff changeset
417 S: local general
bce86c4163a3 Initial revision
kono
parents:
diff changeset
418 S: /usr/bboards/system.mbox
bce86c4163a3 Initial revision
kono
parents:
diff changeset
419 S: /usr/bboards/archive/system.mbox
bce86c4163a3 Initial revision
kono
parents:
diff changeset
420 S: /usr/bboards/.system.cnt
bce86c4163a3 Initial revision
kono
parents:
diff changeset
421 S: /usr/bboards/.system.map
bce86c4163a3 Initial revision
kono
parents:
diff changeset
422 S: *
bce86c4163a3 Initial revision
kono
parents:
diff changeset
423 S: mother
bce86c4163a3 Initial revision
kono
parents:
diff changeset
424 S: system@nrtc
bce86c4163a3 Initial revision
kono
parents:
diff changeset
425 S: system-request@nrtc
bce86c4163a3 Initial revision
kono
parents:
diff changeset
426 S:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
427 S: dist-system@nrtc-gremlin
bce86c4163a3 Initial revision
kono
parents:
diff changeset
428 S: 01 10
bce86c4163a3 Initial revision
kono
parents:
diff changeset
429 S: Thu, 19 Dec 85 00:08:49 -0800
bce86c4163a3 Initial revision
kono
parents:
diff changeset
430 S: .
bce86c4163a3 Initial revision
kono
parents:
diff changeset
431
bce86c4163a3 Initial revision
kono
parents:
diff changeset
432 Policy Notes
bce86c4163a3 Initial revision
kono
parents:
diff changeset
433
bce86c4163a3 Initial revision
kono
parents:
diff changeset
434 Depending on the particular entity administrating the POP service
bce86c4163a3 Initial revision
kono
parents:
diff changeset
435 host, two additional policies might be implemented:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
436
bce86c4163a3 Initial revision
kono
parents:
diff changeset
437 1. Private Discussion Groups
bce86c4163a3 Initial revision
kono
parents:
diff changeset
438
bce86c4163a3 Initial revision
kono
parents:
diff changeset
439 In the general case, discussion groups are world-readable, any user,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
440 once logged in (via a terminal, terminal server, or POP, etc.), is
bce86c4163a3 Initial revision
kono
parents:
diff changeset
441 able to read the maildrop for each discussion group known to the POP
bce86c4163a3 Initial revision
kono
parents:
diff changeset
442 service host. Nevertheless, it is desirable, usually for privacy
bce86c4163a3 Initial revision
kono
parents:
diff changeset
443 reasons, to implement private discussion groups as well.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
444
bce86c4163a3 Initial revision
kono
parents:
diff changeset
445 Support of this is consistent with the extensions outlined in this
bce86c4163a3 Initial revision
kono
parents:
diff changeset
446 memo. Once the AUTHORIZATION state has successfully concluded, the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
447 POP server grants the user access to exactly those discussion groups
bce86c4163a3 Initial revision
kono
parents:
diff changeset
448 the POP service host permits the authenticated user to access. As a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
449 "security" feature, discussion groups associated with unreadable
bce86c4163a3 Initial revision
kono
parents:
diff changeset
450 maildrops should not be listed in a positive response to the XTND
bce86c4163a3 Initial revision
kono
parents:
diff changeset
451 BBOARDS command.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
452
bce86c4163a3 Initial revision
kono
parents:
diff changeset
453 2. Anonymous POP Users
bce86c4163a3 Initial revision
kono
parents:
diff changeset
454
bce86c4163a3 Initial revision
kono
parents:
diff changeset
455 In order to minimize the authentication problem, a policy
bce86c4163a3 Initial revision
kono
parents:
diff changeset
456 permitting "anonymous" access to the world-readable maildrops for
bce86c4163a3 Initial revision
kono
parents:
diff changeset
457 discussion groups on the POP server may be implemented.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
458
bce86c4163a3 Initial revision
kono
parents:
diff changeset
459 Support of this is consistent with the extensions outlined in this
bce86c4163a3 Initial revision
kono
parents:
diff changeset
460 memo. The POP server can be modified to accept a USER command for a
bce86c4163a3 Initial revision
kono
parents:
diff changeset
461 well-known pseudonym (i.e., "anonymous") which is valid with any
bce86c4163a3 Initial revision
kono
parents:
diff changeset
462 PASS command. As a "security" feature, it is advisable to limit
bce86c4163a3 Initial revision
kono
parents:
diff changeset
463 this kind of access to only hosts at the local site, or to hosts
bce86c4163a3 Initial revision
kono
parents:
diff changeset
464 named in an access list.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
465
bce86c4163a3 Initial revision
kono
parents:
diff changeset
466 Experiences and Conclusions
bce86c4163a3 Initial revision
kono
parents:
diff changeset
467
bce86c4163a3 Initial revision
kono
parents:
diff changeset
468 All of the facilities described in this memo and in [MRose84] have
bce86c4163a3 Initial revision
kono
parents:
diff changeset
469 been implemented in MH #6.1. Initial experiences have been, on the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
470 whole, very positive.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
471
bce86c4163a3 Initial revision
kono
parents:
diff changeset
472 After the first implementation, some performance tuning was
bce86c4163a3 Initial revision
kono
parents:
diff changeset
473 required. This consisted primarily of caching the datastructures
bce86c4163a3 Initial revision
kono
parents:
diff changeset
474 which describe discussion groups in the POP server. A second
bce86c4163a3 Initial revision
kono
parents:
diff changeset
475 optimization pertained to the client: the program most commonly
bce86c4163a3 Initial revision
kono
parents:
diff changeset
476 used to read BBoards in MH was modified to retrieve messages only
bce86c4163a3 Initial revision
kono
parents:
diff changeset
477 when needed. Two schemes are used:
bce86c4163a3 Initial revision
kono
parents:
diff changeset
478
bce86c4163a3 Initial revision
kono
parents:
diff changeset
479 o If only the headers (and the first few lines of the body) of
bce86c4163a3 Initial revision
kono
parents:
diff changeset
480 the message are required, e.g., for a scan listing, then only
bce86c4163a3 Initial revision
kono
parents:
diff changeset
481 these are retrieved. The resulting output is then cached, on
bce86c4163a3 Initial revision
kono
parents:
diff changeset
482 a per-message basis.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
483
bce86c4163a3 Initial revision
kono
parents:
diff changeset
484 o If the entire message is required, then it is retrieved intact,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
485 and cached locally.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
486
bce86c4163a3 Initial revision
kono
parents:
diff changeset
487 With these optimizations, response time is quite adequate when the
bce86c4163a3 Initial revision
kono
parents:
diff changeset
488 POP server and client are connected via a high-speed local area
bce86c4163a3 Initial revision
kono
parents:
diff changeset
489 network. In fact, the author uses this mechanism to access certain
bce86c4163a3 Initial revision
kono
parents:
diff changeset
490 private discussion groups over the ARPAnet. In this case, response
bce86c4163a3 Initial revision
kono
parents:
diff changeset
491 is still good. When a 9.6Kbps modem is inserted in the path,
bce86c4163a3 Initial revision
kono
parents:
diff changeset
492 response went from good to almost tolerable (fortunately the author
bce86c4163a3 Initial revision
kono
parents:
diff changeset
493 only reads a few discussion groups in this fashion).
bce86c4163a3 Initial revision
kono
parents:
diff changeset
494
bce86c4163a3 Initial revision
kono
parents:
diff changeset
495 To conclude: the POP is a good thing, not only for personal mail
bce86c4163a3 Initial revision
kono
parents:
diff changeset
496 but for discussion group mail as well.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
497
bce86c4163a3 Initial revision
kono
parents:
diff changeset
498 References
bce86c4163a3 Initial revision
kono
parents:
diff changeset
499
bce86c4163a3 Initial revision
kono
parents:
diff changeset
500 [MRose84] M.T. Rose.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
501 "Post Office Protocol (revised)", University of Delaware.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
502 (October, 1984)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
503
bce86c4163a3 Initial revision
kono
parents:
diff changeset
504 [MRose85] M.T. Rose, J.L. Romine.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
505 "The Rand MH Message Handling System: User's Manual",
bce86c4163a3 Initial revision
kono
parents:
diff changeset
506 University of California, Irvine. (November, 1985)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
507
bce86c4163a3 Initial revision
kono
parents:
diff changeset
508 [RFC822] D.H. Crocker.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
509 "Standard for the Format of ARPA Internet Text
bce86c4163a3 Initial revision
kono
parents:
diff changeset
510 Messages", University of Delaware. (August, 1982)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
511
bce86c4163a3 Initial revision
kono
parents:
diff changeset
512 [RFC918] J.K. Reynolds.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
513 "Post Office Protocol", USC/Information Sciences Institute.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
514 (October, 1984)
bce86c4163a3 Initial revision
kono
parents:
diff changeset
515
bce86c4163a3 Initial revision
kono
parents:
diff changeset
516 [RFC937] M. Butler, J.B. Postel, et. al.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
517 "Post Office Protocol - Version 2", USC/Information Sciences
bce86c4163a3 Initial revision
kono
parents:
diff changeset
518 Institute.
bce86c4163a3 Initial revision
kono
parents:
diff changeset
519 (February, 1985)