honey@umix.cc.umich.edu (Peter Honeyman) (09/26/87)
In article <7333@e.ms.uky.edu> david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: >At the moment our problem with it [mush] is that > > 1. It wants to do routing ... That feature can be turned > off, but still it doesn't belong in a User Agent. it follows from bitter experience that routing in the DA should be of the most casual style ("dumb" or "first host" routing). the UA is precisely where routing belongs, where it can be as smart as you like since the user can inspect and modify the result. peter
greg@ncr-sd.UUCP (09/27/87)
>In article <7333@e.ms.uky.edu> david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: >> [discussing what he perceives as problems in Mush] >> 1. It wants to do routing ... That feature can be turned >> off, but still it doesn't belong in a User Agent. To which the infamous Peter Honeyman (honey@citi.umich.edu), replies in article <1631@umix.cc.umich.edu>: >the UA is precisely where routing belongs, where it can be as smart as >you like since the user can inspect and modify the result. I think you are both right and both wrong. There are certainly some aspects of generating a valid return address that belong in the user agent, including inspecting the path that the the router proposes to use, but on the other hand, I don't think that the user agent is the right place for making the actual routing decisions. That should be done by an agent of the system administrator (or other management) as they are the ones that should have the final say in allocating the resources. Note that there are several issues here. One is re-writing the destination given by the user (or extracted from a header, or whatever) into a valid address. This would include tasks like taking a partially-qualified name and changing it into a fully-qualified domain name, modifying a path relative to somewhere else into a self-relative path, or converting a path into an address (I know, it's not always possible to do, but a partial job would be better than none). This is clearly the job of a user agent. Another job is the delivery of the mail. In most cases (Peter is an exception), the user doesn't care how the mail is delivered, as long as it \is/ delivered. This job is better left to a delivery agent, that is, a router, that enforces the policy decisions of management. Another way of saying this is that the routing decisions should be left to someone who knows more about the routes; this person is almost \never/ the user. What I would like to see would be some way of capturing the routing descisions (not only local decisions, but also considerations about other machines) in a way that a user agent could make use of them, and then to be able to look at the proposed routes and amend the addresses if desired. And I would like the descisions to be maintained centrally; that is, the user agents all use the information in the same way. And that it would be easy to change a things around. About the only way I see of doing this is for someone to implement a library (or at least, a library interface) that does all of these things, and make it so easy to use that all user agents \want/ to use it. But do I think this is possible? Naaahhhh..... Hmmm, this is getting a little long; I'd better quit before what I am trying to say gets lost in the fog. The basic point that I am trying to make is that to say that routing (decisions/information) belongs \only/ in the user agent or \only/ in the delivery agent is too narrow a position. Routing is a job that often can use some direction from the user, but on the other hand, it is too (dangerous/costly/error-prone) to leave completely in the hands of the average user. Rather than argue about where the decision should be made, I'd rather that we discuss how to distribute the functionality so that the user can see what is intended for his mail and can influence the process. -- -- Greg Noel, NCR Rancho Bernardo Greg.Noel@SanDiego.NCR.COM
david@ms.uky.edu (David Herron -- Resident E-mail Hack) (09/27/87)
In article <1631@umix.cc.umich.edu> honey@citi.umich.edu (Peter Honeyman) writes: >In article <7333@e.ms.uky.edu> david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: >>At the moment our problem with it [mush] is that >> >> 1. It wants to do routing ... That feature can be turned >> off, but still it doesn't belong in a User Agent. First, I think I said that about ELM, not MUSH. I personally haven't looked at MUSH enough to say that about it. But no matter, the objection is still correct. >it follows from bitter experience that routing in the DA should be of >the most casual style ("dumb" or "first host" routing). > >the UA is precisely where routing belongs, where it can be as smart as >you like since the user can inspect and modify the result. > > peter Putting the routing into the UA would require my users to know all sorts of grungy details about networks. Things which they don't want to know! Things which change from time to time. seismo is no longer the forwarder for the Known World. ihnp4 is no longer the center of the universe. akgua no longer is the center of the southeast, and cbosgd will probably no longer be the center of the eastern-mid-west. And so on. Two of the networks we're on want us to believe there is no such things as routes, and for the most part there isn't. (BITNET and the Internet). Not even I (the E-mail hack for the U of KY) want to deal with that routing baggage in the User Agent. Also, I don't think I could possibly generate the appropriate information with the configuration of the local systems. Locally we have an 11/750 and some uVaxIIen and some Sunen and a Sequent. For historical reasons, the Vaxen are the main machines ... especially for mail purposes. The interface into bitnet is at the 750. The interface into uucp is on one of the uVaxIIen. The "controlling system" from which all the connection information is emanated is yet another uVaxIIen. That's 3 machines which have a good idea of the shape of the world. ALL of the other machines only know about the local machines, and to forward anything they don't know about over to the "controlling system". Suppose we've got this fancy-dancy user-agent you've described before, where you give it an address and it tells you the way it's going to route it, allowing the details to be changed as desired. (I'll pretend for the moment that this is do-able under MMDF, which I'm not sure if it is or isn't ...). I'm sending mail from a uVaxII workstation which doesn't have the disk-space to store the whole routing database. Where do I get the information from? Yah, I could have some sort of protocol the UA talks to a server on a central machine ... This fancy database/server combination doesn't help anyway. The maps are always a couple of months out of date, a fact which will probably never change. Given that it's always out of date, how is every last one of my users going to be able to keep up with the connection information. They generally have a very vague idea how all this stuff works to begin with? But all this stuff we're talking about here is stuff-to-be-implemented. And also of questionable value (i.e. it's questionable if many people want it). -- <---- David Herron, Local E-Mail Hack, david@ms.uky.edu, david@ms.uky.csnet <---- {rutgers,uunet,cbosgd}!ukma!david, david@UKMA.BITNET <---- <---- E-Mail hacks get to talk about Spanish Cows whenever they want.
edward@engr.uky.edu (Edward C. Bennett) (09/27/87)
In article <1631@umix.cc.umich.edu> honey@citi.umich.edu (Peter Honeyman) writes: >In article <7333@e.ms.uky.edu> david@ms.uky.edu (David Herron) writes: >>At the moment our problem with it [mush] is that >> 1. It wants to do routing ... That feature can be turned >> off, but still it doesn't belong in a User Agent. >it follows from bitter experience that routing in the DA should be of >the most casual style ("dumb" or "first host" routing). >the UA is precisely where routing belongs, where it can be as smart as >you like since the user can inspect and modify the result. I must disagree. With the advent of domains, users aren't supposed to need to know about routes any more. DA's are the ones that know all the good routes to places. That way, all a UA has to know is how to compose and submit a piece of mail. HOWEVER, I, as a user, should still be able to use, say, mail ukma!cbosgd!mtuxo!mtune!rutgers!citi!honey and not have anything mess with the route. -- Edward C. Bennett DOMAIN: edward@engr.uky.edu UUCP: cbosgd!ukma!ukecc!edward "Goodnight M.A." BITNET: edward%ukecc.uucp@ukma "He's become a growling, snarling white-hot mass of canine terror"
honey@umix.UUCP (09/28/87)
it appears that greg and i are in violent agreement (except on a small matter of infamy). yes, the MTA has to be a able to route messages. (in a previous note, i said something about a DA doing the routing. i take it back. i mean the MTA.) this is a vacuous point, since the MTA has the fundamental responsibility for the most basic routing decisions: picking the delivery channel. the utility of UA routing is as greg suggests: letting users inspect the routes, as a sanity check. this allows mail hackers to employ arbitrarily complex routing algorithms without having to worry (too much) about host name collisions, etc. mind you, "under user control" means precisely that: the default action is to ship the specified addresses to the MTA untouched. and of course, the MTA remains the final arbiter of routing decisions. this is not a gedanken experiment: i added a comand to the UA i use (a hacked up Mail) a long time ago, and it's quite satisfactory. i don't \always/ use its routing capability, but i use it enough to be convinced it's a good thing. david and edward seem to doubt whether routing in the UA can be done at all, or whether there is such a thing as routing. we disagree on the basics, and will probably never find a common ground, which is ok too. peter
honey@umix.UUCP (09/28/87)
steve bellovin, who wrote the first version of pathalias, also distributed hooks to the prevailing UA and MTA of the day. even there, users had coarse-grained control over routing, as in the following .mailrc fragment. # trust originating addresses, don't trust reply addresses. if receive set pathalias="smart" else set pathalias="dumb" endif peter
torben@dorsai.ics.hawaii.edu (Torben N. Nielsen) (09/28/87)
In article <1599@ukecc.engr.uky.edu> edward@engr.uky.edu (Edward C. Bennett) writes: >In article <1631@umix.cc.umich.edu> honey@citi.umich.edu (Peter Honeyman) writes: >>In article <7333@e.ms.uky.edu> david@ms.uky.edu (David Herron) writes: >>>At the moment our problem with it [mush] is that >>> 1. It wants to do routing ... That feature can be turned >>> off, but still it doesn't belong in a User Agent. >I must disagree. With the advent of domains, users aren't supposed >to need to know about routes any more. DA's are the ones that know >all the good routes to places. That way, all a UA has to know is >how to compose and submit a piece of mail. > >HOWEVER, I, as a user, should still be able to use, say, > mail ukma!cbosgd!mtuxo!mtune!rutgers!citi!honey >and not have anything mess with the route. I have to agree with David. User's should not know ANYTHING about the route a given message will take. The UA should only know how about addresses and the proper format of the message itself. All issues of routing should be handled through an MTA (Mail Transfer Agent) such as ``sendmail" (using appropriate databases generated through ``pathalias" or some similar tool). Can anyone site a single advantage of having users know about routes? The argument about the maps frequently being out of date doesn't hold water. Experience shows that users are far more out of date than the maps. Maybe we should all put some more effort into assuring that the maps ARE kept up to date :-) Consider what users do when they use explicit path routing. since the paths are so long, they typically use some sort of aliasing facility. That works fine until there's a problem with some site. Maybe they are dropping mail or have simply disappeared from the net. If the MTA handles all routing, I could very quickly remove the site in question from the database (at the first indication of trouble) and mail would be routed around that site. Except for the mail coming from users with long established aliases that contain full routes. Their mail might disappear into nowhere and guess who gets blamed for it.... Users should be concerned with addresses and not routes. Do you want to tell the postman the exact path he should take in order to deliver your letter? I think not. Teach the postman how to do do routing, tell him the address and leave it at that.
daveb@geac.UUCP (Brown) (09/28/87)
In article <1758@ncr-sd.SanDiego.NCR.COM> greg@ncr-sd.SanDiego.NCR.COM | (Greg Noel) writes: I think you are both right and both wrong. There | are certainly some aspects of generating a valid return address that | belong in the user agent, including inspecting the path that the the | router proposes to use, but on the other hand, I don't think that the | user agent is the right place for making the actual routing decisions. | That should be done by an agent of the system administrator (or other | management) as they are the ones that should have the final say in | allocating the resources. Well, when Honeywell was putting up an (SMTP based) mailer on one of their lines of machines this very question came up. Domains weren' tquite working ((:-)), and the routing was passed off to a logically separate entity, the "Network Host and Domain Table", which in this case really was a table. A seperate "User Oracle" was in charge of the table, and could be asked for domain, identification, routing and delivery information by the user agent, the transfer agent, the administrator or the client. It sorta worked REAL GOOD. --dave reference: Stachour et all, "GCOS Internet Mail Project Internal Documentation", Mineapolis, MN (Honeywell Corp. Computer Sci. Centre), 1983. [Stachour@Hi-Multics.ARPA] -- David Collier-Brown. {mnetor|yetti|utgpu}!geac!daveb Geac Computers International Inc., | Computer Science loses its 350 Steelcase Road,Markham, Ontario, | memory (if not its mind) CANADA, L3R 1B3 (416) 475-0525 x3279 | every 6 months.
usenet@calyx.UUCP (USENET admin) (09/28/87)
In article <1599@ukecc.engr.uky.edu> edward@engr.uky.edu (Edward C. Bennett) writes: >In article <1631@umix.cc.umich.edu> honey@citi.umich.edu (Peter Honeyman) writes: >>it follows from bitter experience that routing in the DA should be of >>the most casual style ("dumb" or "first host" routing). >>the UA is precisely where routing belongs, where it can be as smart as >>you like since the user can inspect and modify the result. > >I must disagree. With the advent of domains, users aren't supposed >to need to know about routes any more. DA's are the ones that know >all the good routes to places. That way, all a UA has to know is >how to compose and submit a piece of mail. If domains worked perfectly, if databases were always up to date, if uucp connections never changed... but they do. And as long as they do, I want to be able to play with the mail routing myself. I want to be able to say "route me around system X, please." Or, "go through systems a and b, please." Right now I do routing the hard way: first, I see what the mail message (or article) has for a path - then I try pathalias. I also check whether the system is on Arpanet... all by hand. It would be nice to have this done automatically - IF I could tell the mailer, "no, please don't send it that way - it bounced the last time." ___ Ariel Glenn (std.disclaimer) {rutgers,ihnp4}!uwvax!uwmcsd1!calyx!ariel (UUCP) Love is the Law, Love under will! calyx!ariel@csd1.milw.wisc.edu (Internet)
krs@amdahl.amdahl.com (Kris Stephens) (09/28/87)
When I, as a user, know that mail is getting stuck on the "preferred" path from here to there, and I know that another path is working rapidly and well, *and* I have mail I feel is urgent, I want the option of routing around the standard path. The (in)famous problems of ihnp4 being *the* way into most of AT&T and Bell Labs while they were hard to reach and were constantly dropping mail on the floor is a perfect example. Here's another one: Amdahl (we) took a power hit a couple of weeks ago (the city had to replace the massive junction box providing power to the building). Were I a user on a nearby machine, had I seen the posting from a neighboring site getting the word out, and had I mail that I wanted to get through *now*, I'd want to be able to hand-feed the path to route around the dead node. So, make it so that I can ignore paths almost all the time, but leave me recourse when *I* know more than pathalias does about what the condition of the net is. ...Kris -- Kristopher Stephens, | (408-746-6047) | {whatever}!amdahl!krs Amdahl Corporation | | -or- krs@amdahl.amdahl.com [The opinions expressed above are mine, solely, and do not ] [necessarily reflect the opinions or policies of Amdahl Corp. ]
honey@umix.cc.umich.edu (Peter Honeyman) (09/29/87)
there's a big difference between "users should not know anything about routing" and "users shall not know anything about routing." peter
kyle@xanth.UUCP (Kyle Jones) (09/29/87)
I completely agree that users should be given the option to override paths; pathalias/smail are not infallible. But I do question putting routing information into *the headers* and I question having the *UA* do the routing. In all the cases cited so far "routing by hand" is used as a last resort, so why should the uninitiated have to see the way routed are crazy-glued together? Furthermore if the UA uses the same data that the DA uses to produce its routes, you gain nothing. So you're left doing the routing by hand, in which case it's simple to format your own messages and hand them to the DA directly (with a good route).
krs@amdahl.amdahl.com (Kris Stephens) (09/29/87)
In article <1798@umix.cc.umich.edu> honey@citi.umich.edu (Peter Honeyman) writes: >there's a big difference between "users should not know anything about >routing" and "users shall not know anything about routing." > > peter I still think the significant point is the difference between either of your statements and "users need not not anything about routing". ...Kris -- Kristopher Stephens, | (408-746-6047) | {whatever}!amdahl!krs Amdahl Corporation | | -or- krs@amdahl.amdahl.com [The opinions expressed above are mine, solely, and do not ] [necessarily reflect the opinions or policies of Amdahl Corp. ]
krs@amdahl.amdahl.com (Kris Stephens) (09/29/87)
In article <2589@xanth.UUCP> kyle@xanth.UUCP (Kyle Jones) writes: >I completely agree that users should be given the option to override >paths; pathalias/smail are not infallible. But I do question putting >routing information into *the headers* and I question having the *UA* >do the routing. > >In all the cases cited so far "routing by hand" is used as a last >resort, so why should the uninitiated have to see the way routed are >crazy-glued together? Furthermore if the UA uses the same data that >the DA uses to produce its routes, you gain nothing. So you're left >doing the routing by hand, in which case it's simple to format your >own messages and hand them to the DA directly (with a good route). I have no real problem with this as long as the user-interface remains constant. It's tough enough teaching someone how to use this system without letting them in on multiple pipes into the mailer. If a user can send mail to "name" or "name-at-site" or to a fully-specified path all with the same command and with all other tactile aspects the same, I think we've done him a great service. ...Kris -- Kristopher Stephens, | (408-746-6047) | {whatever}!amdahl!krs Amdahl Corporation | | -or- krs@amdahl.amdahl.com [The opinions expressed above are mine, solely, and do not ] [necessarily reflect the opinions or policies of Amdahl Corp. ]
bryan@seradg.Dayton.NCR.COM (Bryan Klopfenstein) (09/30/87)
In message <1798@umix.cc.umich.edu> Peter da Silva writes: > there's a big difference between "users should not know anything about > routing" and "users shall not know anything about routing." It appears to me that the desired phrase should be "users should not BE REQUIRED TO know anything about routing." If the individual user should wish to override the "automatic" routing capabilities, this should be allowed, however, the individual should be able to proceed quite happily without routing knowledge also. Bryan Klopfenstein (bryan@dayton.ncr.com) (usual disclaimer applies)
jwg1@bunny.UUCP (James W. Gish) (10/01/87)
In article <101@dorsai.ics.hawaii.edu> torben@dorsai.ics.hawaii.edu (Torben N. Nielsen) writes: >Users should be concerned with addresses and not routes. Do you want to tell the >postman the exact path he should take in order to deliver your letter? I think >not. Teach the postman how to do do routing, tell him the address and leave it >at that. I agree totally that users should not be concerned with routes. However I strongly believe that in general they should not be concerned with addresses either. That's what computers are for. I have worked in office automation and on electronic mail systems for a long time now and one mistake I find many people making is trying to make automated systems mimic manual systems, e.g. the "desktop" analogy or the "postman" analogy. While I do see some merit in such familiar notions to help educate novice users and make the transition to automation easier, I think that we often don't end up with the best systems by adhering to the structures of manual systems. But I digress... What I want to be able to do when I sit down to send mail is enter what in the X.400 standard is referred to as a "user friendly" name, e.g. "Jim Gish" or "Jim Gish @ GTE Labs." I don't give a hoot, nor should I, that a user's login id is jwg1 and that his host is bunny. Now I know that this is a complex technical, organizational and like it or not political problem that involves setting up naming domains and deciding how and what information is to be distributed, how name resolution is handled etc., but it is within our technical abilities to design and contruct distributed Directory Service Agents (DSAs). I also want public distributed nested distribution lists, private directories, and more. There is lots of good work being done in the standards community (see for example the CCITT x.ds work now in "progress"). However, there are many problems to be solved and too few people working on them. Let's get to work to free ourselves from the user having to know all the address gobbledygook now required to send a message. (flame over) -- Jim Gish GTE Laboratories, Inc., Waltham, MA CSNET: jwg1@gte-labs UUCP: ..!harvard!bunny!jwg1
jc@minya.UUCP (jc) (10/10/87)
> Users should be concerned with addresses and not routes. Do you want to tell the > postman the exact path he should take in order to deliver your letter? I think > not. Teach the postman how to do do routing, tell him the address and leave it > at that. This turns out to be a real bad example. Like many people, I have no trouble coming up with personal cases where the postman screwed up. For instance, a couple years back I lived close to a family that had once moved away, to the other coast in fact, and after a year or so moved back to their original home. Ten years later, they were still receiving mail that had been noticed by some diligent postal worker, forwarded to their "new" address across the country, and then forwarded back. They brought this to the attention of many, many people in the Postal Service, to no avail. The rules said that the changes of address could only be removed if they were wrong, and the family had in fact moved just like the records said, so the records had to remain unchanged. Now, I'm quite certain that everyone in that post office knew exactly what they were doing, and understood exactly why it was wrong. But rules is rules. Do you really think that we are going to have mailers installed that are more intelligent than this, in our lifetimes? If you do, hey, I've got a just slightly used bridge which you may like as an investment opportunity. Even if you can write such an intelligent forwarder, well, that's fine if my mail goes through your machine. But how are you going to stop all those organizations out there from installing "standard" mailers that follow the rules just like the above-mentioned postal workers, and screw up my mail just as badly? I hope you're not so naive that you expect a standards organization to come up with a forwarding scheme that works, or that vendors will implement a standard correctly. You might not have noticed, but there is a growing population of email users around who are concluding in a bemused fashion that those email turkeys will never get their acts together so that email stops bouncing half the time. Perhaps you could get their respect if you gave them a way of figuring out a usable path. True, we'd all like to just stick on an address, drop it in the hopper, and trust that the email will go through. But we're not near that yet; most of the problems are caused by brain-damaged forwarders all over the network; and correcting it on one machine does very little to clear up the problem. If forwarders will honor absolute bang-paths, and bounce them back if they fail, then users will at least have a way out when mail fails. -- John Chambers <{adelie,ima,maynard}!minya!{jc,root}> (617/484-6393)
jc@minya.UUCP (jc) (10/10/87)
> first, I see what the mail message (or article) has for a path - then > I try pathalias. I also check whether the system is on Arpanet... all > by hand. > It would be nice to have this done automatically - IF I could tell the > mailer, "no, please don't send it that way - it bounced the last time." You know, there's an elegant solution to this sort of problem, exemplified by the way that Prolog resolves things. What is needed is a user agent that will first try what it thinks is a "best" path, and then, when that fails, can be told "try again, with the next-best path". This could be repeated until a good path is found, which could then be made the "best" path for the next time. It might be a good idea if the "try again" command could accept a parameter, which would be advise from the user about a path (fragment) to include (or reject) in generating the next path. This would be a simply way for a user to select for/against a given site or link. It's not clear that this should be heavily automated; it could easily end up with a message bouncing around the net for years looking for a path. You'd probably want to tell the user about each failure, and hold the failed mail until told what to do with it. Just a few thoughts; let me know what's wrong with them. (;-) -- John Chambers <{adelie,ima,maynard}!minya!{jc,root}> (617/484-6393)
david@ms.uky.edu (David Herron -- Resident E-mail Hack) (10/12/87)
In article <279@minya.UUCP> jc@minya.UUCP (jc) writes: [ Deleted quotation from someone describing their personal algorithm for sending mail ... i.e. Look at the address and determine where the site is, and re-write the address appropriately. All by hand. ] >You know, there's an elegant solution to this sort of problem, exemplified >by the way that Prolog resolves things. What is needed is a user agent >that will first try what it thinks is a "best" path, and then, when that >fails, can be told "try again, with the next-best path". This could be >repeated until a good path is found, which could then be made the "best" >path for the next time. hmmm ... how are you intending to test the path? You don't have the needed information on your machine. NOBODY does. The only information you have is the UUCP Project database, and that's gauranteed to be at least 1 to 2 months out of date. We can do this "try again until it works" algorithm of yours by hand right now. I do this quite often in fact (well, maybe a couple of times a month -- more often than I really want tho'). You send the mail, and if it bounces you forward the message through a different route. Obviously it's a good algorithm but I don't see the point of making it "automatic" like you suggest. -- <---- David Herron, Local E-Mail Hack, david@ms.uky.edu, david@ms.uky.csnet <---- {rutgers,uunet,cbosgd}!ukma!david, david@UKMA.BITNET <---- I thought that time was this neat invention that kept everything <---- from happening at once. Why doesn't this work in practice?
jc@minya.UUCP (John Chambers) (10/15/87)
In article <7461@g.ms.uky.edu>, david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: > In article <279@minya.UUCP> jc@minya.UUCP (jc) writes: > [ Deleted quotation from someone describing their personal > algorithm for sending mail ... i.e. Look at the address > and determine where the site is, and re-write the address > appropriately. All by hand. ] > [ Deleted rephrasing of Prolog resolution applied to mail paths] > > hmmm ... how are you intending to test the path? Easy send it; if it bounces, that's a failure to resolve that path. > You don't have the needed information on your machine. NOBODY does. > The only information you have is the UUCP Project database, and that's > gauranteed to be at least 1 to 2 months out of date. Nonsense. I have much better info than that. My mailer extracts the paths from all incoming mail and puts it (with a timestamp) into the database. I thus have good info on good paths to those people who have sent me mail lately. This is at worst the same data as is used by the mailers; it is usually better. > Obviously it's a good algorithm but I don't see the point of making > it "automatic" like you suggest. Only because I get tired of doing something by hand when it could be done better by a computer. That's why we buy the little beasts, after all. Anyhow, characterizing the Prolog algorithm as "try it again until it works" is a bit inaccurate. Hunting around at random is quite a bit different from a systematic search through a list sorted according to recent successes. The current proposals for intelligent forwarders strike me as being basically an uncoordinated random walk. This will work, most of the time, and the mathematics of it all is over a century old. But there are much better algorithms known. The Prolog approach has the distinct advantage of being implementable on the originating machine. But it does require that the sender be able to dictate the path, and that other mailers not try to "improve" it. -- John Chambers <{adelie,ima,maynard,mit-eddie}!minya!{jc,root}> (617/484-6393)
david@ms.uky.edu (David Herron -- Resident E-mail Hack) (10/16/87)
In article <287@minya.UUCP> jc@minya.UUCP (John Chambers) writes: >In article <7461@g.ms.uky.edu>, david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: >> hmmm ... how are you intending to test the path? >Easy send it; if it bounces, that's a failure to resolve that path. ok, I understood that to begin with ... but the point I wanted to make and apparently didn't, was that this bounce-try-another-path approach is expensive. >> You don't have the needed information on your machine. NOBODY does. >> The only information you have is the UUCP Project database, and that's >> gauranteed to be at least 1 to 2 months out of date. >Nonsense. I have much better info than that. My mailer extracts the >paths from all incoming mail and puts it (with a timestamp) into the >database. I thus have good info on good paths to those people who >have sent me mail lately. This is at worst the same data as is used >by the mailers; it is usually better. You must be on a well connected site. hmmm ... that's an interesting approach, just don't use Path: information from news headers. Too bad I don't have the time to try implementing such a thing. Have you thought about packaging up an rmail (or description of how to muck up an rmail) which records this information into a database, and distributing via a sources group? -- <---- David Herron, Local E-Mail Hack, david@ms.uky.edu, david@ms.uky.csnet <---- {rutgers,uunet,cbosgd}!ukma!david, david@UKMA.BITNET <---- I thought that time was this neat invention that kept everything <---- from happening at once. Why doesn't this work in practice?
ambar@athena.mit.edu (Jean Marie Diaz) (10/19/87)
In article <287@minya.UUCP> jc@minya.UUCP (John Chambers) writes: > >Nonsense. I have much better info than that. My mailer extracts the >paths from all incoming mail and puts it (with a timestamp) into the >database. I thus have good info on good paths to those people who >have sent me mail lately. This is at worst the same data as is used >by the mailers; it is usually better. Er, no. It is never wise to assume that a mail path works both ways. An example I saw recently: someone was sending mail from Tektronix to MIT using the path fragment ..!allegra!eddie!athena!user. It was their dumb luck that allegra realized that "eddie" was the same machine as mit-eddie (aka eddie.mit.edu), AND that eddie would resolve "athena" as athena.mit.edu (which is mit-athena in the uucp world). How did I trip over this one? The recipient was trying to reverse that path and send along it. Oops. Didn't work. (mit-athena was looking for the uucp machine eddie, and losing.) Don't try this one at home... AMBAR {backbones}!mit-eddie!ambar ambar@eddie.mit.edu
davidsen@steinmetz.steinmetz.UUCP (William E. Davidsen Jr) (10/19/87)
In article <287@minya.UUCP> jc@minya.UUCP (John Chambers) writes: |In article <7461@g.ms.uky.edu>, david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: ... |Easy send it; if it bounces, that's a failure to resolve that path. | |> You don't have the needed information on your machine. NOBODY does. |> The only information you have is the UUCP Project database, and that's |> gauranteed to be at least 1 to 2 months out of date. | |Nonsense. I have much better info than that. My mailer extracts the |paths from all incoming mail and puts it (with a timestamp) into the |database. I thus have good info on good paths to those people who |have sent me mail lately. This is at worst the same data as is used |by the mailers; it is usually better. Excuse me, but that's not always the case. Things like the net map are smart enough to understand that all paths are not bidirectional, or at least not equal in cost in both directions. Your reversal of the incoming path may produce an inefficient or inoperative path. Two real examples: The machine sixwed3 connects to machine benway by calling at any time. The pathalias cost is DIRECT. The benway machine never calls sixwed3, and only passes mail back when called. Mail may be rejected after three days. The pathalias cost for the reverse link is POLLED. There is a better way via two hops, DEDICATED and DIRECT when reach the sixwed3 machine. The machine sixhub connects to sixwbn in a nonstandard way, and passes all mail to it compressed and batched late at night. The pathalias cost is DAILY+LOW. Mail coming back is returned on a weekly basis, rather than daily. The cost is WEEKLY+LOW. Hopefully this has demonstrated that paths should not be teated as bidirectional. There are a number of other examples which I could cite, having to do with backbone machines connected to one-off backbone machines. -- bill davidsen (wedu@ge-crd.arpa) {uunet | philabs | seismo}!steinmetz!crdos1!davidsen "Stupidity, like virtue, is its own reward" -me
jc@minya.UUCP (10/22/87)
> >Nonsense. I have much better info than that. My mailer extracts the > >paths from all incoming mail and puts it (with a timestamp) into the > >database. I thus have good info on good paths to those people who > >have sent me mail lately. This is at worst the same data as is used > >by the mailers; it is usually better. > > Er, no. It is never wise to assume that a mail path works both ways. > An example I saw recently: someone was sending mail from Tektronix to > MIT using the path fragment ..!allegra!eddie!athena!user. It was their > dumb luck that allegra realized that "eddie" was the same machine as > mit-eddie (aka eddie.mit.edu), AND that eddie would resolve "athena" as > athena.mit.edu (which is mit-athena in the uucp world). > Er, I hear what you're saying, but my experience is otherwise. It's true that some links don't work in both directions equally well. From here, I can get mail to my neighbors within minutes; they must wait for my call to deliver mail here. This is fairly common, but it doesn't interfere with reversing a path. Some links are truly one-directional. In such cases, a path-reversal simply won't work, unless there's an intelligent forwarder on this side of the bad link. The above example falls into this class, but in a truly original way. In effect, the link has been made one-way by having one of the machines lie about its name in the path. This is truly perverse! Despite the efforts of programmers and administrators to make life difficult, the fact is that in the current email network, path reversal is still the most effective way to respond. I have three neighbors with fairly intelligent forwarders, and when I submit mail with only "To: target!user" or "To: user@target", the chance of it being delivered is around 40%. When I send it through the same hosts with a reversed path, the success rate is around 90%. It would be better, but a fair number of the full paths are subverted and redirected along bogus paths by some "intelligent" forwarder along the path. Thus, all four of my neighbors talk to harvard; if the reverse path goes there, their mailer rewrites it, and is wrong about as often as it is right. If all mailers were willing to accept pure bang paths and not question them, I claim that path reversal would succeed in well over 99% of the cases. It's true that a reversed path will fail some percentage of the time. But replacing a method that fails 1% of the time with one that fails 60% of the time (at this site) doesn't seem to me to be much of a win. -- John Chambers <{adelie,ima,maynard,mit-eddie}!minya!{jc,root}> (617/484-6393)
daveb@geac.UUCP (10/23/87)
||In article <7461@g.ms.uky.edu>, david@ms.uky.edu (David Herron -- Resident E-mail Hack) writes: ||Nonsense. I have much better info than that. My mailer extracts the ||paths from all incoming mail and puts it (with a timestamp) into the ||database. I thus have good info on good paths to those people who ||have sent me mail lately. This is at worst the same data as is used ||by the mailers; it is usually better. In article <7651@steinmetz.steinmetz.UUCP> davidsen@crdos1.UUCP (bill davidsen) writes: |Excuse me, but that's not always the case. Things like the net map are |smart enough to understand that all paths are not bidirectional, or at |least not equal in cost in both directions. Your reversal of the |incoming path may produce an inefficient or inoperative path. Sounds like you need to have a path database and update routes known to be bidirectional on the basis of usage. Not an unreasonable thing for a prolong (oops, prolog) program to do. Add another rule! -- David Collier-Brown. {mnetor|yetti|utgpu}!geac!daveb Geac Computers International Inc., | Computer Science loses its 350 Steelcase Road,Markham, Ontario, | memory (if not its mind) CANADA, L3R 1B3 (416) 475-0525 x3279 | every 6 months.