rfc1711.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,068 行 · 第 1/4 页

TXT
1,068
字号
   lead to a waste of expensive bandwidth. In order to be able to detect
   such cases, and to act upon it by sending one single copy over an
   expensive link and have it distributed at some remote hosts, an MTA
   must have additional knowledge of the relation between mail domains
   and the underlying network topology.

   BITNET uses the distribute protocol [4] for this purpose. A selected
   set of hosts is published to have the required topology knowledge and
   to be able to efficiently distribute the mail on behalf of other
   MTAs, who can explicitly route all bulk mail to one of those hosts.
   The complete message, including the envelope, is encoded in a message
   body, which starts with a distribution request to the distribute
   server. This server will break up the rest of the body into the
   original envelope and contents and then use it's topology knowledge
   to efficiently distribute the original message. Note that this
   protocol violates the conceptual model of the layering of MTA and UA
   functionality, but it is about the only trick that will work in a
   very direct routing environment. It is only needed to overrule a non-
   efficient (for large mailing lists) routing topology.

   Bulk routing is an area where mail routing issues start to overlap
   with the area of distributing netnews (bulletin board services).
   Several organisations, such as ISO, RARE and the IETF have started
   initiatives in the direction of harmonising the two worlds. The first



Houttuin                                                       [Page 10]

RFC 1711           Classifications in E-mail Routing        October 1994


   results, be it standards or products, are not expected before 1995
   though.

7.    Source routing

   Source routing was originally intended to allow a user to force a
   message to take a certain route. The mechanism works as follows: the
   MTA that the user wants the message to be routed through is
   integrated into the address. Once the message has arrived at the
   specified MTA, that MTA strips itself from the source-routed address
   and routes the remaining address in the usual way. This mechanism is
   called explicit source routing and can be useful if a user wants to
   test a routing path or force a message to be routed over a faster,
   cheaper, more reliable, or otherwise preferred path.

   For instance, if the Internet user user@uni-a.edu wants to test the
   mail connections to and from a remote domain uni-b.edu, he might
   source route a message to himself over the MTA at uni-b.edu by
   addressing the mail to:  @uni-b.edu:user@uni-a.edu

   Source routing need not always be explicit. Source routes can also be
   generated automatically by a gateway, in which case we speak of
   address rooting (to that gateway). The gateway will root itself to
   the message by putting its own domain in the source route mapped
   address, thus ensuring that any replies to the gatewayed message will
   be routed back through the same gateway.

   Example 1: RFC 1327 left hand side encoding (see [5]) performed by
   the gateway 'gw.ch':

        C=zz;A=a;P=p;O=oo;S=plork ->
        "/C=zz/A=a/P=p/O=oo/S=plork/"@gw.ch

   Example 2: RFC 1327 DDA mapping (see [5]) performed by the gateway
   C=zz;A=a;

        bush@dole.us ->
        DD.RFC-822=bush(a)dole.us;C=zz;A=a;

   Example 3: the so-called %-hack:

        user%final.domain@1st.relay

   When the relaying host '1st.relay' receives the message, it strips
   its own domain part and interprets the localpart 'user%final.domain':
   it changes the % to an @ sign and relays the message to the address

        user@final.domain



Houttuin                                                       [Page 11]

RFC 1711           Classifications in E-mail Routing        October 1994



   Example 4: Another example of the already mentioned explicit source
   routing, this time through two relays:

        @1st.relay,@2nd.relay:user@final.domain

   In the Internet, use of explicit source routing is strongly
   discouraged (see [6]), one reason being that not all mail relays will
   handle such addresses in a consistent manner. Apart from that, the
   need to use explicit source routing has disappeared over the last
   decennia. In earlier days, when the RFC 822 world consisted of many
   sparsely connected 'mail islands', source routing was sometimes
   needed to make sure that a message was routed through a gateway that
   was known to be connected to a remote island. Nowadays, the RFC 822
   world is almost fully interconnected through the Internet, so the
   need for end-users to have knowledge of the mail network's topology
   has become superfluous.

8.    Poor man's routing

   If we combine static, indirect and source routing, we get what is
   commonly known as "poor man's routing". The user thus specifies the
   complete route in the address. A classic example is the old UUCP bang
   style addressing:

        host1!host2!host3!host4!user

   Poor man's routing is presented here for historical reasons only.
   Since, for reasons discussed earlier, most present networks
   discourage source routing and prefer dynamic over static routing,
   poor man's routing is not widely deployed anymore.

9.    Routing communities

   A routing community can be defined as follows:

       Routing community:     a set of MTAs X, with the property
                              that for any address a, every MTA
                              in X except a subset Ya will have
                              the option, according to an agreed
                              upon set of routing rules, to
                              directly route that address to at
                              least one MTA in Ya.

   Which is a rather formal way of describing that a routing community
   consists of a set of MTAs (and human operators) that agreed on a
   common set of rules on how to route messages among each other.




Houttuin                                                       [Page 12]

RFC 1711           Classifications in E-mail Routing        October 1994


   An example of a routing community is the large Internet routing
   community, in which the agreed rules are implemented in the Domain
   Name System (DNS). For details, refer to [7]. The subset Ya is in
   this case the set of MTAs that have an MX record in the DNS for a.
   MTAs that hide behind fire walls or behind default routes are thus
   not considered direct members of this community, but normally form
   their own smaller routing community, with one host (the mail
   exchanger/default route) belonging to both communities.

   Another example is the GO-MHS community, consisting of a set of
   documented RELAY-MTAs (formerly called WEPs, Well-known Entry
   Points). Routing communities can be further classified depending on
   the openness and topology of their routing rules. [3] defines four
   classes of routing communities:

       Local community:       The scope of a single MTA. Contains
                              the MTAs view of the set of
                              bilateral routing agreements, and
                              routing information local to the
                              MTA. Example: any local MTA.

       Closed community:      This is like a local community, but
                              involves more than one MTA. The
                              idea is to route messages only
                              within this closed community. A
                              small subset of the involved MTAs
                              can be in another community as
                              well, in order to get the
                              connectivity to the outside world,
                              as described earlier. Example: A
                              set of Private Management Domains
                              (PRMDs) representing the same
                              organisation in multiple countries.

       Open community:        All routing information is public
                              and any MTA is invited to use it.
                              Example: the Internet.

       Hierarchical community:A subtree of the O/R address tree.
                              Note that the subtree will in
                              practice often be pruned; sub-sub-
                              trees may form their own routing
                              community. Example: GO-MHS.

   This classification cannot always be followed too strictly. For
   example, completely closed communities are relatively rare. In order
   for e-mail to be an effective communication tool, an organisation
   will typically designate at least one of its MTAs as a gateway to



Houttuin                                                       [Page 13]

RFC 1711           Classifications in E-mail Routing        October 1994


   another routing community, for instance to the Internet. The
   organisation will register an Internet domain, say 'org.net', which
   points to this gateway, and thus acts as a firewall from the Internet
   to the domain 'org.net', and as a default route from the closed
   community to the rest of the Internet. At this stage, the gateway MTA
   can be regarded as being a member of any of the four types of routing
   communities. The reader is invited to check this himself.

   Especially the distinction between open and closed communities is not
   always easy. To some extent, most routing communities are open, at
   least among their own participants. It is just that some routing
   communities are more open than others. Also, even the most open
   routing community is not just open to anyone. It is not enough for a
   community participant to use the community's routing rules and
   connect to any other MTA in the community. The participant will
   typically also have to fulfil an agreed upon set of operational
   requirements, for example the Internet host requirements [6] or the
   GO-MHS domain requirements [8].

   The most open routing community known today is certainly the Internet
   mail community. As for X.400 routing communities, some problems occur
   when trying to open a community, the main one being that most X.400
   software does not support the so called 'anonymous' connection mode,
   which allows any remote MTA to connect to it. Most software was
   designed or configured to use passwords for setting up MTA
   connections. This, together with the fact that X.400 routing was
   originally designed to be hierarchical, is one of the main reasons
   why most X.400 communities today are either closed or hierarchical.

10.   Realisations

   In this chapter some of the routing classifications described above
   are assigned to existing mail services and projects.

10.1. Internet mail

   RFC 822 mail. An operational service. Co-ordination: distributed.
   Mostly dynamic routing, although static routing is also possible. DNS
   based routing rules(*). Mostly direct routing, although indirect is
   also possible. No dynamic stack routing. Distributed domains
   possible. Shared MTAs possible, but rare. Routing control not
   normally used. Bulk routing via SMTP envelope grouping; also
   possible, but not widely deployed, using the 'distribute protocol'
   [4]. Source routing supported, but strongly discouraged. No poor
   man's routing. Open (and hierarchical) routing community.

   (*) Sub-communities don't use DNS based routing: The MX records in
   the DNS are used to "attract" messages from the Internet to the



Houttuin                                                       [Page 14]

RFC 1711           Classifications in E-mail Routing        October 1994


   "border" between the Internet and the sub-community. Thus from the
   Internet we have dynamic, directory based routing but once the
   "border" is reached, it is no longer possible to use MX records for
   mail routing, and thus some form of static routing is generally
   needed.

10.2. UUCP

   RFC 822 style mail. An operational service. Co-ordination:
   distributed. Mostly static routing, although dynamic routing is also
   possible. Table based routing rules. Mostly indirect routing. No

⌨️ 快捷键说明

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