⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text.tex

📁 早期freebsd实现
💻 TEX
📖 第 1 页 / 共 4 页
字号:
\subsection{Distribution Lists}			% mtr\MH/ has a convenient interface to the UCI BBoards facility\cite{MRose84a}.%\nfootnote{The UCI BBoards facility can run under either the \MMDF/ or\SendMail/,or in a more restricted form under stand-alone \MH/.}This facility permits the efficient distribution of interest group messageson a single host,to a group of hosts under a single administration,and to the ARPA Internet community.Described simply, an interest group is composed of a number of subscriberswith a common interest.These subscribers post mail to a single address, known as a{\it distribution} address (e.g., {\tx MH-Workers@UCI}).From this distribution address, a copy of the message is sent to eachsubscriber.Each group has a {\it moderator},which is the person that runs the group.This moderator can usually be reached at a special address,known as a {\it request} address (e.g., {\tx MH-Workers-Request@UCI}).Usually, the responsibilities of the moderator are quite simple,since the mail system handles distribution to subscribers automatically.In some interest groups,instead of each separate message being distributed directly to subscribers,a batch of (related) messages are put into a {\it digest} format by themoderator and then sent to the subscribers.Although this requires more work on the part of the moderatorand introduces delays,such groups tend to be better organized.Unfortunately, some problems arise with the scheme outlined above.First, if two users on the same host subscribe to the same interest group,two copies of the message will be delivered.This is wasteful of both processor and disk resources at that host.Second,some groups carry a lot of traffic.Although subscription to a group does indicate interest on the part of asubscriber,it is usually not interesting to get 50 messages or so delivered to the user's private maildrop each day,interspersed with {\it personal} mail,that is likely to be of a much more important and timely nature.Third, if a subscriber's address in a distribution list becomes ``bad'' somehow and causes failed mail to be returned,the originator of the message is normally notified.It is not uncommon for a large list to have several bogus addresses.This results in the originator being flooded with ``error messages'' frommailers across the Internet stating that a given address on the list wasbad.Needless to say,the originator usually does not care if the bogus addresses got a copyof the message or not.The originator is merely interested in posting a messageto the group at large.On the other hand,the moderator of the group does care if there are bogus addresses on the list,but ironically does not receive notification.To solve all of these problems,the UCI BBoards facility introduces a new entity into the picture:all interest group mail is handled by a special component of the mail system.The distribution address maps to a special {\it channel} that performsseveral actions.First, if local delivery is to be performed,then a copy of the message is placed in a global maildrop for the interestgroup with a timestamp and a unique number.Local users can read messages posted for the interest group by reading this``public'' maildrop.Second, if further distribution is to take place,a copy of the message is sent to the distribution address in such a way thatif any of the addresses are bogus,failure notices will be returned to the local maintainer of the groupaddress list, rather than the originator of the message.This scheme has several advantages:First, messages delivered to the local host are processed and saved oncein a globally accessible area.The UCI BBoards facility supports software which allows a user to query aninterest group for new messages and to read and processthose messages in the \MH/-style.Second, once a host administrator subscribes to an interest group,each user can join or quit the list's readership withoutcontacting anyone.Third, a hierarchical distribution scheme can be constructed toreduce the amount of delivery effort.Fourth, errors are prevented from propagating.When an address on the distribution list goes bad,the list moderator who is immediately responsible for the address is notified.If a local moderator does not exist,then the local PostMaster is notified (not the global group moderator).In addition to solving the problems outlined above,the UCI BBoards facility supports several other capabilities.BBoards may be automatically archived in order to conserve disk space andreduce processing time when reading current items.Also,the archives can be separately maintained on tape for access by interestedresearchers.Special alias files may be generated which allow the \MH/ user to shortenaddress type-in.For example, instead of sending to {\tx SF-Lovers@Rutgers},a user of \MH/ usually sends to \eg{SF-Lovers} and the \MH/ aliasingfacility automatically makes the appropriate expansion in the headers of theoutgoing message.Hence,the user need only know the name of an interest group and not its globalnetwork address.Finally, the UCI BBoards facility supports {\it private} interest groupsusing the \unix/ group access mechanism.This allows a group of people on the same or different machines to conduct aprivate discussion.The practical upshot of all this is that the UCI BBoards facility automatesthe vast majority of BBoards handling from the point of view of both thePostMaster and the user.\MH/ provides three programs to deal with interest groups.The \pgm{bbc} program is used to check on the status of one or more groups,and to optionally start an \MH/ shell on those groups which the user isinterested in.The \pgm{bbl} program can be used to perform manual maintenance on adiscussion group beyond the normal automatic capabilities of the UCI BBoardsfacility.Finally,the \pgm{msh} program implements an \MH/ shell for reading BBoards,in which nearly all of the \MH/ commands are implemented in a single program.Observant readers may note that the use of \pgm{msh} is contrary to the \MH/philosophy of using relatively small, single-purposed programs.Sadly,the authors admit that this is true.In an effort to avoid some problems with shared-access and message namingconventions (which are beyond the scope of this paper),BBoards are kept in maildrop format (monolithic) instead of folders.Some research has gone into overcoming this problem in order to restore\MH/'s purity of purpose,but all solutions proposed to date are either unworkable or requiresignificant recoding of \MH/'s internals.\subsection{Encapsulation}			% mtrAs described above,some interest groups appear in digest form.This means that the messages which appear in such a forum actuallyencapsulate other messages in their body.It turns out that the generation of a digest is not at all unlike thegeneration of a draft which forwards one or more messages.In RFC934\cite{MRose85b},a method is proposed to standardize message encapsulation for the ARPAInternet community.\MH/ uses this method for the generation of digests,forwardings,and blind-carbon-copies.A key requisite for using an encapsulation technique for digests andforwardings is the ability to later decapsulate the contents.Without this ability,the forwarded messages are of little use to the recipients because they cannot be distributed, forwarded, replied-to, searched-for,or otherwise processed as separate individual messages.In the case of a digest,a bursting capability is especially useful.Not only does the ability to burst a digest permit a recipient of the digestto reply to an individual digestified message,but it also allows the recipient to selectively process the other messagesencapsulated in the digest.For example,a single digest issue usually contains more than one topic.A subscriber may only be interested in a subset of the topic discussed in aparticular issue.With a bursting capability,the subscriber can burst the digest,scan the headers,and process those messages which are of interest.The others can be ignored,if the user so desires.Note that with proper encapsulation technology,one can argue for the re-distribution of messages simply becomingspecial cases of message forwarding.For example,the NBS Standard for Mail Interchange\cite{FIPS98}and the recent CCITT draft on Mail Handling Systems standards\cite{X.400}both discourage the re-distribution facility in favor of forwardingby encapsulation.\subsection{Encapsulation and Blind-Carbon-Copies} % mtrMany user agents support a blind-carbon-copy facility.\MH/ implements this using a form of encapsulation.It may not be apparent to the reader as to why encapsulation of the originalmessage is a good way to deliver blind-carbon-copies.With a blind-carbon-copy facility,two types of addressees are possible in the draft to be sent:{\it visible} and {\it blind}.The visible recipients are listed as addresses in the \eg{To:} and \eg{cc:}fields,and the blind recipients are listed in the \eg{Bcc:} fields of the draft.The idea behind this facility is that copies of the draft which aredelivered to the \eg{To:} and \eg{cc:} recipients should show the visiblerecipients only.A major concern with a blind-carbon-copy facilityis that blind recipients should be prevented from accidentally replying to themessage in such a way that the visible recipients are included as addresseesin the reply.There are several methods to implement this facility.Most rely on posting two drafts with the \MTS/.One draft is destined for visible recipients,and simply lacks the \eg{Bcc:} fields of the original draft.The second draft is destined for the blind recipients.The question then arises as to what form this latter draft posted should take.One approach might be to disable the \eg{To:} and \eg{cc:} fields of thedraft sent to the blind recipients(e.g., by prefixing the string \eg{BCC-} to these fields).Unfortunately,this is often very confusing to the blind recipientsbecause it differs from what the visible recipients got.Although accidental replies are not possible,it is often difficult to tell that the message received is the result of ablind-carbon-copy.The method used by \MH/ is to post two drafts,a visible draft for the visible recipients,and a blind draft for the blind recipients.The visible draft consists of the original draft without any \eg{Bcc:} fields.The blind draft contains the visible message as a forwarded message.The headers for the blind draft contain the minimal RFC822 headers(\eg{From:} and \eg{Date:})and,if the original draft had a ``Subject:'' field,then this header field is also included.In addition,\MH/ alerts the recipient that the message is a blind-carbon-copy byplacing this information in the initial encapsulation information in theblind recipient's copy.This scheme prevents inadvertent replies while allowing the recipientfull access to an exact copy of what was sent to the visible recipients.\section{\MH/ as a Record Handler}		% stefAlthough message format standards such as RFC822(and its predecessors) were originally devised to facilitatecomputer processing of interpersonal messages,there is no special reason why the concept should belimited to interpersonal message processing.Messages are just one of a variety of useful record forms that mightbe created in one place and transfered to another for processing.In this regard,RFC822 wisely left open the option for higher level applications to usearbitrary header names or field contents by proscribing \MTS/ useof header names beginning with \eg{X-}.\MH/ carries though on this idea by allowing the \pgm{pick} commandto accept any arbitrary field name for string searches,so MH users can select on any arbitrary field name without prior definition.Beyond this,since all messages are simply files in \unix/ directories,applications can be developed to apply any programmable process toany selected message.For example,a {\it Time Card Form} might be called up by an \MH/ user with\example comp\ -form\ timecomps\endexampleto enter time and attendance information into \eg{X-time$\tdots$:} fields in adraft message record.The \file{timecomps} form would include the address of asupervisor who should validate the information,along with empty fields to be filled in with data.In fancy applications,this might be done with a sophisticated interactive data entry toolwhich would validate entered information,but this is an open choice within the \MH/ framework.Another

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -