[comp.mail.uucp] map wizardry - terminal links

pst@canary.cdi.com (Paul Traina) (11/25/88)

The joys of pathalias.  Currently, we're routing uucp mail for several sites
in our local area.  However, we've come across a problem which I am having
difficulty solving.

Currently, we have a very expensive uucp link that happens to be connected to
90 billion other sites.  Currently the map entry for this remote site has us
listed as a rather low cost jump.  I'd like to keep things this way, but
I have a problem -- pathalias is generating paths from this host to us, to
our local university.  This means a significant chunk of "mis-addressed"
mail is being routed via our site to the university.  (I say mis-addressed,
because they are on the internet, so the mail would get to the right place
a lot faster if people would use internet addresses instead of uucp paths).

Now,  the simple solution would be to have our well placed neighbor declare
comdesign a terminal link in their map entry.  However, "comdesign" is just
the gateway for our own internal network.  I want a mail message that is
addressed to "...!comdesign!newvax!joe-user" to get passed via our well
placed neighbor,  but I don't want "...!comdesign!university!joe-user" to
go through our expensive neighbor.

Now, part of this problem is that "univserity" hasn't updated their map entries
in a long time.  They have their own well placed uucp links,  but mine seem
to generate lower costs in some instances.  I have to accept as a given that
I can't affect their map entry.  I could raise the "cost" to get to university
from my site,  but that would affect other local sites that currently route
mail through us to the university.  (I know I could tell them to lie in their
own pathalias databases, but that's ugly too).

Basicly, the two map entries I can affect are the cost from "well placed
system" to us, and all entries in our own map.  Does anyone have any great
ideas on how to solve this with some attempt of providing a _maintainable_
solution?

------
Paul Traina				To believe that what is true for
{uunet|pyramid}!comdesign!pst		you in your private heart is true
pst@cdi.com				for all men, that is genius.

honey@mailrus.cc.umich.edu (peter honeyman) (11/25/88)

it seems to me you want to keep your interior hosts out of the
maps and mark the uunet to comdesign link terminal.  i'm sure
you thought of this idea -- why did you reject it?

	peter

kre@cs.mu.oz.au (Robert Elz) (11/27/88)

In article <810@mailrus.cc.umich.edu>, honey@mailrus.cc.umich.edu
(Peter Honeyman) asks:
? it seems to me you want to keep your interior hosts out of the
? maps and mark the uunet to comdesign link terminal.  i'm sure
? you thought of this idea -- why did you reject it?

Probably because if he did that Rutgers would send all his mail to Finland
or somewhere...

kre

glee@cognos.uucp (Godfrey Lee) (11/30/88)

Not sure I understand exactly the situation described. But, we have a site that
we have a direct connection to but we do not want to advertise it, so I leave
it out of our public map, and add a local connection in input to pathalias and
mark the connection as private.
-- 
Godfrey Lee                                            P.O. Box 9707
Cognos Incorporated                                    3755 Riverside Dr.
VOICE:  (613) 738-1338 x3802   FAX: (613) 738-0002     Ottawa, Ontario
UUCP: uunet!mitel!sce!cognos!glee                      CANADA  K1G 3Z4

kls@ditka.UUCP (Karl Swartz) (12/06/88)

In article <810@mailrus.cc.umich.edu> honey@citi.umich.edu (peter honeyman) writes:
>it seems to me you want to keep your interior hosts out of the
>maps and mark the uunet to comdesign link terminal.

That's nice if it works for your situation, but there could be a
variety of reasons why you'd want to list the interior sites.  As
one example, maybe they are interior only in the sense of being
part of the same organization -- think of ihnp4 and cbosgd the
way things were a year ago.

What I'd really like to be able to do is use the terminal notation
on a multi-hop kind of thing.  At my old job, we talked to sunpitt,
the local Sun sales office, which in turn talked to sun.  We were
welcome to send mail thru sunpitt!sun to folks inside Sun, but they
asked us not to forward stuff to outside of Sun.  This would have
been easy with domains, but the real world didn't offer that solution
and the only alternative was some sed-hacks on the pathalias output.

In this case, I wanted to say something like

    formtek	<sunpitt>(DEMAND),		! sunpitt on demand
		<sunpitt!sun>(DEMAND+HOURLY)	! and they forward to sun

Maybe pathalias could (should) do the bookkeeping on the cost of
the secondary hop, and maybe another syntax would be better, but
you get the general idea.

-- 
Karl Swartz		|UUCP	{ames!hc!rt1,decuac!netsys}!ditka!kls
1-505/667-7777 (work)	|ARPA	rt1!ditka!kls@hc.dspo.gov
1-505/672-3113 (home)	|BIX	kswartz
"I never let my schooling get in the way of my education."  (Twain)

emv@a.cc.umich.edu (Ed Vielmetti) (12/07/88)

In article <513@ditka.UUCP> kls@ditka.UUCP (Karl Swartz) writes:
>
>In this case, I wanted to say something like
>
>    formtek	<sunpitt>(DEMAND),		! sunpitt on demand
>		<sunpitt!sun>(DEMAND+HOURLY)	! and they forward to sun
>

Try this:

formtek	sunpitt(DEMAND)
sunpitt	<sun>(DEMAND+HOURLY),sun(DEAD)

in your paths.local file.  That should have the same impact as your
proposed syntax.  

--Ed

duncan@comp.vuw.ac.nz (Duncan McEwan) (12/08/88)

In article <513@ditka.UUCP> kls@ditka.UUCP (Karl Swartz) writes:
[about terminal links, and keeping local sites out of the published
 maps to prevent other sites routing through them ...]
>This would have been easy with domains ...

This doesn't have much to do with Karl's idea, but is relevent to the
subject of terminal links, and domains, etc.

Some time ago I noticed the version of pathalias I have (version 9, which I
think is the most recent that has been posted to c.s.u although it may not be
the most recent available) was exhibiting strange behaviour when run over the
published maps.  As an example consider the following input data:

	ucbvax .berkeley.edu(DEDICATED)

	uunet  <ucbvax>(DEDICATED), somesite(DEMAND)
	somesite ucbvax(DEMAND)

	vuwcomp uunet(HOURLY)

Running this through pathalias, you get the following output

	vuwcomp		%s
	uunet		uunet!%s
	somesite	uunet!somesite!%s
	.berkeley.edu	uunet!somesite!ucbvax!%s
	ucbvax		uunet!ucbvax!%s

Pathalias is not choosing the shortest route to the gateway to the
.berkeley.edu domain due to uunet specifying its link to ucbvax as terminal.  I
understand that this is done to prevent paths being generated along Internet
links unless the Internet site is the final destination, but it seems to me
that that "anotherhost.berkeley.edu" is as much a part of the Internet as
"ucbvax.berkeley.edu", and should therefore be accessible via the shorter path.

After a bit of time looking at the code, I figured that an alias would
help -- if you add the line

	ucbvax = .berkeley.edu

to the input, the path to .berkeley.edu becomes "uunet!ucbvax!%s".

Two questions:

1) Is there anything wrong with this solution, that I have missed?

2) If the answer to the above is "No", why do more sites not do it?  There
   a number of entries for Internet sites in the current maps for which
   paths like the above are generated.

   If there is something wrong with such an alias is there anything else
   that can be done to cause saner paths to be generated.

I seem to recall a posting a while back about strange paths to domains being
generated by pathalias, but I don't remember if it was for the same reason, or
whether a solution was posted.  Apologies if this is all old-hat to everyone.

Duncan

alter@ttidca.TTI.COM (Steve Alter) (12/09/88)

In article <4109@mailgw.cc.umich.edu> emv@mailgw.cc.umich.edu (Ed Vielmetti) writes:
} Try this:
} 
} formtek	sunpitt(DEMAND)
} sunpitt	<sun>(DEMAND+HOURLY),sun(DEAD)
} 
} in your paths.local file.  That should have the same impact as your
} proposed syntax.  

I was planning to post the same suggestion, but saw a problem in it.
I mailed Karl Swartz a different suggestion; I didn't post it as I
wasn't sure about its validity.

Currently, there is no map-entry for sunpitt at my site; it sounds
like Sun Microsystems at Pittsburg but does not appear in any of the
Pennsylvania files.  A couple of sites talk to sunpitt, but sunpitt
doesn't talk to anybody?  AS LONG AS THIS IS TRUE, the above
suggestion will work, but if sunpitt decides to submit a map-entry...
(read on.)

The following is based, hypothetically, on the assumption that
sunpitt submits a map-entry with this cost in it:

sunpitt		sun(HOURLY)

The problem with the above suggestion (please correct me if I'm
wrong!) is that pathalias would see two unrestricted costs for the
sunpitt!sun link and will use the cheaper one in building the routing
tables.

The following line:
sunpitt		<sun>(DEMAND+HOURLY)
only means that the specified cost can enter the competition for routes
from formtek TO sun, but that link becomes very costly for routes
THROUGH sun to points beyond.

Now, we still have two unrestricted costs for the same link:
sunpitt		sun(HOURLY)		! sunpitt's entry
sunpitt		sun(DEAD)		! formtek's paths.local

Pathalias will use the cheaper one and will probably still end up
generating some routes through sunpitt!sun to other sites.

What is missing is the ability for formtek's paths.local to OVERRIDE
other costs for the same links, i.e. if the
sunpitt		sun(DEAD)
can override the
sunpitt		sun(HOURLY)
then no routes through that link to other sites will be generated, but
that link will still be used for mail directly to sun, because of the
sunpitt		<sun>(DEMAND+HOURLY)	! what a wierd cost!
line.

This make sense to anyone?
-- 
Steve Alter        <alter@tti.com>
{csun,philabs,psivax,pyramid,quad1,rdlvax,retix}!ttidca!alter
Citicorp/TTI, Santa Monica CA  (213) 452-9191 x2541

kls@ditka.UUCP (Karl Swartz) (12/09/88)

In article <4109@mailgw.cc.umich.edu> emv@mailgw.cc.umich.edu (Ed Vielmetti) writes:
>In article <513@ditka.UUCP> kls@ditka.UUCP (Karl Swartz) writes:
>>
>>In this case, I wanted to say something like
>>
>>    formtek	<sunpitt>(DEMAND),		! sunpitt on demand
>>		<sunpitt!sun>(DEMAND+HOURLY)	! and they forward to sun
>>
>
>Try this:

Ok, I guess I oversimplified things a bit.  We did actually have

    formtek	sunpitt(DEMAND)

and

    sunpitt	<sun>(HOURLY)

But we also wanted traffic to the sun.com domain to go thru
sunpitt, without also routing stuff going to non-sun sites
thru sunpitt's sun link.  How can I say this to pathalias
with the current capabilities?  Or maybe I also want non-
domain sun sites to route via sunpitt.  I want to say

    formtek	sunpitt(DEMAND)
    sunpitt	<sun>(HOURLY)

and also

    sunpitt	<sun!.sun.com>(HOURLY+LOCAL),
		<sun!texsun>(HOURLY*2)

I don't see any way of conveying this latter part.

-- 
Karl Swartz		|UUCP	{ames!hc!rt1,decuac!netsys}!ditka!kls
1-505/667-7777 (work)	|ARPA	rt1!ditka!kls@hc.dspo.gov
1-505/672-3113 (home)	|BIX	kswartz
"I never let my schooling get in the way of my education."  (Twain)

honey@mailrus.cc.umich.edu (peter honeyman) (12/09/88)

i have been meaning to change pathalias as you suggest.  trouble arises
if you go on to say

.ucbvax.edu = {ernie, cad}(LOCAL)
ernie erewhon(DEMAND)

other than this wrinkle,, your alias trick looks reasonable to me.

	peter

ps:  you get a medal for reading the code and figuring anything out.
that's some obscure shit, eh?

heiby@mcdchg.chi.il.us (Ron Heiby) (12/10/88)

Steve Alter (alter@ttidca.TTI.COM) writes:
> Now, we still have two unrestricted costs for the same link:
> sunpitt		sun(HOURLY)		! sunpitt's entry
> sunpitt		sun(DEAD)		! formtek's paths.local
> 
> Pathalias will use the cheaper one and will probably still end up
> generating some routes through sunpitt!sun to other sites.
> 
> What is missing is the ability for formtek's paths.local to OVERRIDE
> other costs for the same links,

Sure, that seems to make sense.  However, can't you say something like:
	dead {sun}
or
	dead {sunpitt!sun}
in formtek's paths.local and have it override all other costs?
My understanding is that the former declares the site dead, no
matter what else is in the pathalias run and that the latter
delcares the sunpitt to sun link dead, no matter what else is in
the pathalias run.  No?
-- 
Ron Heiby, heiby@mcdchg.chi.il.us	Moderator: comp.newprod
"There is a fine line between stupidity and cleverness." (This is Spinal Tap)

bob@rel.eds.com (Bob Leffler) (12/10/88)

In article <3528@ttidca.TTI.COM>, alter@ttidca.TTI.COM (Steve Alter) writes:
> In article <4109@mailgw.cc.umich.edu> emv@mailgw.cc.umich.edu (Ed Vielmetti) writes:
> The problem with the above suggestion (please correct me if I'm
> wrong!) is that pathalias would see two unrestricted costs for the
----Much edited------- 
> What is missing is the ability for formtek's paths.local to OVERRIDE
> other costs for the same links, i.e. if the

If I understand pathalias correctly, pathalias will use whatever value for
the cost of the link that it physically reads last.

i.e.  Most people use a wildcard as input to pathalias.  This means that if you 
had duplicate links in u.usa.al.1 and u.usa.mi.1 then the cost in u.usa.mi.1
would be used.

(Peter, is this correct?)

bob




-- 
Bob Leffler - EDS, GM Truck & Bus Account (313)456-5375
bob@rel.eds.com or {uunet!edsews, rutgers, umix}!rel!bob
Opinions expressed may not be those of my employer.

honey@mailrus.cc.umich.edu (peter honeyman) (12/11/88)

you can do it with a private sun:

formtek	sunpitt(DEMAND)
private 	{sun}		# private version of sun
sunpitt sun(HOURLY)		# how to get to the private sun
# sites that the private sun will relay to
sun-internal = {texsun, suneast, sunpitt, ...}(DEAD)
sun	sun-internal(HOURLY)
sun	.sun.com(LOCAL)
private {}			# end scope of privates 

or you could make a gatewayed net.

	peter

honey@mailrus.cc.umich.edu (peter honeyman) (12/11/88)

from pathalias.8:

    If a link is encountered more than once, the least-cost occurrence
    dictates the cost and network character.

order is irrelevant.

	peter