%!PS-Adobe-3.0 %%Creator: groff version 1.05 %%DocumentNeededResources: font Times-Bold %%+ font Times-Italic %%+ font Times-Roman %%DocumentSuppliedResources: procset grops 1.05 0 %%Pages: 5 %%PageOrder: Ascend %%Orientation: Portrait %%EndComments %%BeginProlog %%BeginResource: procset grops 1.05 0 /setpacking where { pop currentpacking true setpacking } if /grops 120 dict dup begin % The ASCII code of the space character. /SC 32 def /A /show load def /B { 0 SC 3 -1 roll widthshow } bind def /C { 0 exch ashow } bind def /D { 0 exch 0 SC 5 2 roll awidthshow } bind def /E { 0 rmoveto show } bind def /F { 0 rmoveto 0 SC 3 -1 roll widthshow } bind def /G { 0 rmoveto 0 exch ashow } bind def /H { 0 rmoveto 0 exch 0 SC 5 2 roll awidthshow } bind def /I { 0 exch rmoveto show } bind def /J { 0 exch rmoveto 0 SC 3 -1 roll widthshow } bind def /K { 0 exch rmoveto 0 exch ashow } bind def /L { 0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow } bind def /M { rmoveto show } bind def /N { rmoveto 0 SC 3 -1 roll widthshow } bind def /O { rmoveto 0 exch ashow } bind def /P { rmoveto 0 exch 0 SC 5 2 roll awidthshow } bind def /Q { moveto show } bind def /R { moveto 0 SC 3 -1 roll widthshow } bind def /S { moveto 0 exch ashow } bind def /T { moveto 0 exch 0 SC 5 2 roll awidthshow } bind def % name size font SF - /SF { findfont exch [ exch dup 0 exch 0 exch neg 0 0 ] makefont dup setfont [ exch /setfont cvx ] cvx bind def } bind def % name a c d font MF - /MF { findfont [ 5 2 roll 0 3 1 roll % b neg 0 0 ] makefont dup setfont [ exch /setfont cvx ] cvx bind def } bind def /level0 0 def /RES 0 def /PL 0 def /LS 0 def % BP - /BP { /level0 save def 1 setlinecap 1 setlinejoin 72 RES div dup scale LS { 90 rotate } { 0 PL translate } ifelse 1 -1 scale } bind def /EP { level0 restore showpage } bind def % centerx centery radius startangle endangle DA - /DA { newpath arcn stroke } bind def % x y SN - x' y' % round a position to nearest (pixel + (.25,.25)) /SN { transform .25 sub exch .25 sub exch round .25 add exch round .25 add exch itransform } bind def % endx endy startx starty DL - % we round the endpoints of the line, so that parallel horizontal % and vertical lines will appear even /DL { SN moveto SN lineto stroke } bind def % centerx centery radius DC - /DC { newpath 0 360 arc closepath } bind def /TM matrix def % width height centerx centery DE - /DE { TM currentmatrix pop translate scale newpath 0 0 .5 0 360 arc closepath TM setmatrix } bind def % these are for splines /RC /rcurveto load def /RL /rlineto load def /ST /stroke load def /MT /moveto load def /CL /closepath load def % fill the last path % amount FL - /FL { currentgray exch setgray fill setgray } bind def % fill with the ``current color'' /BL /fill load def /LW /setlinewidth load def % new_font_name encoding_vector old_font_name RE - /RE { findfont dup maxlength dict begin { 1 index /FID ne { def } { pop pop } ifelse } forall /Encoding exch def dup /FontName exch def currentdict end definefont pop } bind def /DEFS 0 def % hpos vpos EBEGIN - /EBEGIN { moveto DEFS begin } bind def /EEND /end load def /CNT 0 def /level1 0 def % llx lly newwid wid newht ht newllx newlly PBEGIN - /PBEGIN { /level1 save def translate div 3 1 roll div exch scale neg exch neg exch translate % set the graphics state to default values 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit [] 0 setdash /setstrokeadjust where { pop false setstrokeadjust } if /setoverprint where { pop false setoverprint } if newpath /CNT countdictstack def userdict begin /showpage {} def } bind def /PEND { clear countdictstack CNT sub { end } repeat level1 restore } bind def end def /setpacking where { pop setpacking } if %%EndResource %%IncludeResource: font Times-Bold %%IncludeResource: font Times-Italic %%IncludeResource: font Times-Roman grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron/scaron/zcaron /Ydieresis/trademark/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/space/exclam /quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright /asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven /eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J /K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright/circumflex /underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z /braceleft/bar/braceright/tilde/.notdef/quotesinglbase/guillemotleft /guillemotright/bullet/florin/fraction/perthousand/dagger/daggerdbl/endash /emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut/dotaccent/breve /caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash/quotedblbase/OE/Lslash /.notdef/exclamdown/cent/sterling/currency/yen/brokenbar/section/dieresis /copyright/ordfeminine/guilsinglleft/logicalnot/minus/registered/macron/degree /plusminus/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla /onesuperior/ordmasculine/guilsinglright/onequarter/onehalf/threequarters /questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla /Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis/Eth /Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave /Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave/aacute/acircumflex /atilde/adieresis/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave /iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex/otilde /odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis/yacute/thorn /ydieresis]def/Times-Roman@0 ENC0/Times-Roman RE/Times-Italic@0 ENC0 /Times-Italic RE/Times-Bold@0 ENC0/Times-Bold RE %%EndProlog %%Page: 1 1 %%BeginPageSetup BP %%EndPageSetup /F0 12/Times-Bold@0 SF -.5(What is a Domain?)239.58 82.031 R/F1 10 /Times-Italic@0 SF(Mark R. Horton)255.92 100.031 Q(ABSTRACT)264.385 154.031 Q /F2 10/Times-Roman@0 SF 1.689(In the past, electronic mail has used many dif) 122 190.031 R 1.688(ferent kinds of syntax, naming a)-.18 F .036 (computer and a login name on that computer)122 202.031 R 5.036(.A)-.55 G .036 (new system, called `)318.134 202.031 R(`domains')-.74 E .037(', is)-.74 F 1.905(becoming widely used, based on a heirarchical naming scheme.)122 214.031 R 1.904(This paper is)6.904 F 1.256 (intended as a quick introduction to domains.)122 226.031 R 1.257 (For more details, you should read)6.257 F (some of the documents referenced at the end.)122 238.031 Q F1 2.5(1. Intr)72 286.031 R(oduction)-.37 E F2 .139(What exactly are domains?)72 304.031 R (Basically)5.139 E 2.639(,t)-.65 G .138 (hey are a way of looking at the world as a heirarchy \(tree structure\).) 230.625 304.031 R -1(Yo)72 316.031 S 1.079(u're already used to using two tree\ world models that work pretty well: the telephone system and the)1 F(post of) 72 328.031 Q 2.5(\214ce. Domains)-.18 F (form a similar heirarchy for the electronic mail community)2.5 E(.)-.65 E .232 (The post of)72 346.031 R .232(\214ce divides the world up geographically)-.18 F 2.732<2c8c>-.65 G .232 (rst into countries, then each country divides itself up,)289.946 346.031 R .598(those units subdivide, and so on.)72 358.031 R .598(One such country)5.598 F 3.098(,t)-.65 G .598(he USA, divides into states, which divide into coun-) 290.332 358.031 R .211(ties \(except for certain states, like Louisiana, which\ divide into things like parishes\), the counties subdivide)72 370.031 R 2.189 (into cities, towns, and townships, which typically divide into streets, the s\ treets divide into lots with)72 382.031 R .265(addresses, possibly containing \ room and apartment numbers, the then individual people at that address.)72 394.031 R(So)5.265 E(you have an address like)72 406.031 Q(Mark Horton)108 424.031 Q(Room 2C-249)108 436.031 Q(6200 E. Broad St.)108 448.031 Q (Columbus, Ohio, USA)108 460.031 Q 1.167(\(I'm ignoring the name `)72 478.031 R (`A)-.74 E 1.168(T&T Bell Laboratories')-1.11 F 3.668('a)-.74 G 1.168 (nd the zip code, which are redundant information.\))292.814 478.031 R (Other countries may subdivide dif)72 490.031 Q(ferently)-.18 E 2.5(,f)-.65 G (or example many small countries do not have states.)247.25 490.031 Q .554 (The telephone system is similar)72 508.031 R 5.554(.Y)-.55 G .553 (our full phone number might look like 1-614-860-1234 x234 This con-)214.6 508.031 R 1.24(tains, from left to right, your country code \(Surprise!)72 520.031 R 1.24(The USA has country code `)6.24 F(`1')-.74 E 1.24 ('!\), area code 614)-.74 F 1.012 (\(Central Ohio\), 860 \(a pre\214x in the Reynoldsbur)72 532.031 R 3.512(gC) -.18 G 1.012(.O.\), 1234 \(individual phone number\), and extension)287.398 532.031 R 2.69(234. Some)72 544.031 R .191(phone numbers do not have extension\ s, but the phone system in the USA has standardized on a)2.69 F 3.782(3d)72 556.031 S 1.281(igit area code, 3 digit pre\214x, and 4 digit phone number) 85.782 556.031 R 6.281(.O)-.55 G 1.281(ther countries don')332.354 556.031 R 3.781(tu)-.18 G 1.281(se this standard, for)421.837 556.031 R 1.424(example, i\ n the Netherlands a number might be +46 8 7821234 \(country code 46, city code\ 8, number)72 568.031 R .294(7821234\), in Germany +49 231 7551234, in Sweden \ +31 80 551234, in Britain +44 227 61234 or +44 506)72 580.031 R(41)72 592.031 Q 3.237(1234. Note)-.37 F .737(that the country and city codes and telephone num\ bers are not all the same length, and the)3.237 F .812(punctuation is dif)72 604.031 R .812(ferent from our North American notation.)-.18 F -.4(Wi)5.812 G .812(thin a country).4 F 3.312(,t)-.65 G .812(he length of the telephone) 396.882 604.031 R .25(number might depend on the city code.)72 616.031 R .251 (Even within the USA, the length of extensions is not standardized:)5.25 F .005 (some places use the last 4 digits of the telephone number for the extension, \ some use 2 or 3 or 4 digit exten-)72 628.031 R .649 (sions you must ask an operator for)72 640.031 R 5.649(.E)-.55 G .649 (ach country has established local conventions.)227.363 640.031 R .65 (But the numbers are)5.65 F .197(unambigous when dialed from left-to-right, so\ as long as there is a way to indicate when you are done dial-)72 652.031 R (ing, there is no problem.)72 664.031 Q 3.092(Ak)72 682.031 S .592(ey dif) 87.312 682.031 R .593(ference in philosophy between the two systems is evident\ from the way addresses and telephone)-.18 F 1.497(numbers are written.)72 694.031 R -.4(Wi)6.497 G 1.497(th an address, the most speci\214c information \ comes \214rst, the least speci\214c last.).4 F .573(\(The `)72 706.031 R .573 (`root of the tree')-.74 F 3.073('i)-.74 G 3.073(sa)172.515 706.031 S 3.074(tt) 183.918 706.031 S .574(he right.\))192.552 706.031 R -.4(Wi)5.574 G .574 (th telephones, the least speci\214c information \(root\) is at the left.).4 F .299(The telephone system was designed for machinery that looks at the \214rst\ few digits, does something with it,)72 718.031 R .773 (and passes the remainder through to the next level.)72 730.031 R .773 (Thus, in ef)5.773 F .774(fect, you are routing your call through the)-.18 F .255(telephone network.)72 742.031 R .255(Of course, the exact sequence you di\ al depends on where you are dialing from - some-)5.255 F .259(times you must d\ ial 9 or 8 \214rst, to get an international dialtone you must dial 01)72 754.031 R .259(1, if you are calling locally)-.37 F EP %%Page: 2 2 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF .31(you can \(and sometimes must\) leave of)72 96 R 2.81(ft)-.18 G .31(he 1 and the area code.)239.24 96 R .31 (\(This makes life very interesting for peo-)5.31 F .463 (ple who must design a box to call their home of)72 108 R .463 (\214ce from any phone in the world.\))-.18 F .464(This type of address is) 5.464 F(called a `)72 120 Q(`relative address')-.74 E (', since the actual address used depends on the location of the sender)-.74 E (.)-.55 E .547(The postal system, on the other hand, allows you to write the s\ ame address no matter where the sender is.)72 138 R .851(The address above wil\ l get to me from anywhere in the world, even private company mail systems.)72 150 R -1(Ye)5.851 G(t,)1 E .195 (some optional abbreviations are possible - I can leave of)72 162 R 2.695(ft) -.18 G .195(he USA if I'm mailing within the USA; if I'm in)307.61 162 R .552 (the same city as the address, I can usually just say `)72 174 R(`city')-.74 E 3.053('i)-.74 G 3.053(np)312.94 174 S .553(lace of the last line.)325.993 174 R .553(This type of address is)5.553 F(called an `)72 186 Q(`absolute address') -.74 E (', since the unabbreviated form does not depend on the location of the sender) -.74 E(.)-.55 E .674(The ARP)72 204 R .674 (ANET has evolved with a system of absolute addresses: `)-.92 F(`user@host') -.74 E 3.173('w)-.74 G .673(orks from any machine.)407.001 204 R .269 (The UUCP network has evolved with a system of relative addresses: `)72 216 R -2.13(`host!user ')-.74 F 2.769('w)-.74 G .269(orks from any machine)410.713 216 R .566(with a direct link to `)72 228 R(`host')-.74 E .565(', and you have\ to route your mail through the network to \214nd such a machine.)-.74 F .451 (In fact, the `)72 240 R(`user@host')-.74 E 2.951('s)-.74 G .452(yntax has bec\ ome so popular that many sites run mail software that accepts this)180.114 240 R .502(syntax, looks up `)72 252 R(`host')-.74 E 3.002('i)-.74 G 3.002(nat) 175.578 252 S .501(able, and sends it to the appropriate network for `)193.802 252 R(`host')-.74 E 3.001('. This)-.74 F .501(is a very nice)3.001 F .693 (user interface, but it only works well in a small network.)72 264 R .693 (Once the set of allowed hosts grows past about)5.693 F (1000 hosts, you run into all sorts of administrative problems.)72 276 Q .357(\ One problem is that it becomes nearly impossible to keep a table of host names\ up to date.)72 294 R .356(New machines)5.356 F 1.123 (are being added somewhere in the world every day)72 306 R 3.623(,a)-.65 G 1.123(nd nobody tells you about them.)294.727 306 R 1.124(When you try to)6.124 F .951(send mail to a host that isn')72 318 R 3.451(ti)-.18 G 3.451(ny)196.537 318 S .951 (our table \(replying to mail you just got from a new host\), your mailing) 209.988 318 R 1.057(software might try to route it to a smarter machine, but w\ ithout knowing which network to send it to, it)72 330 R(can')72 342 Q 2.78(tg) -.18 G .28(uess which smarter machine to forward to.)99.59 342 R .28 (Another problem is name space collision - there is noth-)5.28 F 1.293(ing to \ prevent a host on one network from choosing the same name as a host on another\ network.)72 354 R(For)6.293 E .944(example, DEC')72 366 R 3.444(sE)-.55 G .944 (NET has a `)148.048 366 R(`vortex')-.74 E 3.444('m)-.74 G .944 (achine, there is also one on UUCP)244.204 366 R 5.943(.B)-1.11 G .943 (oth had their names long)401.348 366 R .13 (before the two networks could talk to each other)72 378 R 2.63(,a)-.4 G .131 (nd neither had to ask the other network for permission to)275.5 378 R 1.268 (use the name.)72 390 R 1.268(The problem is compounded when you consider how \ many computer centers name their)6.268 F(machines `)72 402 Q(`A)-.74 E -.74('') -1.11 G 2.5(,`).74 G(`B')137.81 402 Q(', `)-.74 E(`C')-.74 E(', and so on.)-.74 E 1.123(In recognition of this problem, ARP)72 420 R 3.623(Ah)-.92 G 1.123 (as established a new way to name computers based on domains.)236.978 420 R 1.423(The ARP)72 432 R 1.423(ANET is pioneering the domain convention, and man\ y other computer networks are falling in)-.92 F .575(line, since it is the \ \214rst naming convention that looks like it really stands a chance of working\ .)72 444 R .576(The MIL-)5.576 F .626(NET portion of ARP)72 456 R .626 (ANET has a domain, CSNET has one, and it appears that Digital, A)-.92 F(T&T) -1.11 E 3.125(,a)-.74 G .625(nd UUCP)464.205 456 R .661 (will be using domains as well.)72 468 R .661 (Domains look a lot like postal addresses, with a simple syntax that \214ts on) 5.661 F .876(one line, is easy to type, and is easy for computers to handle.)72 480 R 2.276 -.7(To i)5.876 H .875(llustrate, an old routed UUCP address).7 F 7.093(might read `)72 492 R(`sdcsvax!ucbvax!allegra!cbosgd!mark')-.74 E 9.593 ('. The)-.74 F 7.094(domain version of this might read)9.593 F -.74(``)72 504 S (mark@d.osg.cb.att.uucp').74 E 4.443('. The)-.74 F 1.942 (machine is named d.osg.cb.att.uucp \(UUCP domain, A)4.443 F 1.942(T&T company) -1.11 F(,)-.65 E 1.183 (Columbus site, Operating System Group project, fourth machine.\))72 516 R 1.183(Of course, this example is somewhat)6.183 F .877(verbose and contrived; \ it illustrates the heirarchy well, but most people would rather type something\ like)72 528 R -.74(``)72 540 S(cbosgd.att.uucp').74 E 2.791('o)-.74 G 2.791 (re)154.401 540 S .292(ven `)164.962 540 R(`cbosgd.uucp')-.74 E .292 (', and actual domains are usually set up so that you don')-.74 F 2.792(th)-.18 G .292(ave to)479.548 540 R(type very much.)72 552 Q -1(Yo)72 570 S 5.307(um)1 G 2.806(ay wonder why the single @ sign is present, that is, why the above add\ ress does not read)101.307 570 R -.74(``)72 582 S(mark.d.osg.cb.att.uucp').74 E 3.736('. In)-.74 F 1.236 (fact, it was originally proposed in this form, and some of the examples in) 3.736 F .961(RFC819 do not contain an @ sign.)72 594 R .961 (The @ sign is present because some ARP)5.961 F .961 (ANET sites felt the strong)-.92 F .317(need for a divider between the domain,\ which names one or more computers, and the left hand side, which)72 606 R 1.73 (is subject to whatever interpretation the domain chooses.)72 618 R 1.729 (For example, if the A)6.729 F 1.729(TT domain chooses to)-1.11 F .185 (address people by full name rather than by their login, an address like `)72 630 R(`Mark.Horton@A)-.74 E(TT)-1.11 E(.UUCP')-.74 E 2.685('m)-.74 G(akes) 486.23 630 Q .16(it clear that some machine in the A)72 642 R .159 (TT domain should interpret the string `)-1.11 F(`Mark.Horton')-.74 E .159 (', but if the address)-.74 F 2.657(were `)72 654 R(`Mark.Horton.A)-.74 E(TT) -1.11 E(.UUCP')-.74 E 2.657 (', routing software might try to \214nd a machine named `)-.74 F(`Horton')-.74 E 5.158('o)-.74 G(r)500.67 654 Q -.74(``)72 666 S(Mark.Horton').74 E 2.613 ('. \(By)-.74 F .113(the way)2.613 F 2.613(,c)-.65 G .113 (ase is ignored in domains, so that `)201.952 666 R(`A)-.74 E(TT)-1.11 E (.UUCP')-.74 E 2.612('i)-.74 G 2.612(st)402.282 666 S .112(he same as `)411.564 666 R(`att.uucp')-.74 E('.)-.74 E 1.58 -.7(To t)72 678 T .181 (he left of the @ sign, however).7 F 2.681(,ad)-.4 G .181 (omain can interpret the text any way it wants; case can be ignored or)226.987 678 R(it can be signi\214cant.\))72 690 Q 1.202(It is important to note that)72 708 R/F1 10/Times-Bold@0 SF 1.202(domains ar)3.702 F 3.702(en)-.18 G 1.202 (ot r)248.666 708 R(outes)-.18 E F0 6.202(.S)C 1.202 (ome people look at the number of !')301.44 708 R 3.702(si)-.55 G 3.702(nt) 463.816 708 S 1.202(he \214rst)475.298 708 R .679(example and the number of .') 72 720 R 3.179(si)-.55 G 3.179(nt)202.444 720 S .68 (he second, and assume the latter is being routed from a machine called)213.403 720 R -.74(``)72 732 S(uucp').74 E 2.548('t)-.74 G 2.548(oa)108.608 732 S .048 (nother called `)120.596 732 R(`att')-.74 E 2.548('t)-.74 G 2.548(oa)202.29 732 S .048(nother called `)214.278 732 R(`cb')-.74 E 2.548('a)-.74 G .048 (nd so on.)297.072 732 R .048(While it is possible to set up mail routing)5.048 F .547(software to do this, and indeed in the worst case, even without a reaso\ nable set of tables, this method will)72 744 R EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF .077(always work, the intent is that `)72 96 R (`d.osg.cb.att.uucp')-.74 E 2.577('i)-.74 G 2.577(st)279.919 96 S .077 (he name of a machine, not a path to get there.)289.166 96 R .077(In par)5.077 F(-)-.2 E(ticular)72 108 Q 2.534(,d)-.4 G .035(omains are absolute addresses, \ while routes depend on the location of the sender)107.184 108 R 5.035(.S)-.55 G .035(ome subroutine)442.025 108 R 1.067(is char)72 120 R 1.067(ged with \214gu\ ring out, given a domain based machine name, what to do with it.)-.18 F 1.066 (In a high quality)6.067 F .148(environment like the ARP)72 132 R 2.648(AI)-.92 G .148(nternet, it can query a table or a name server)189.442 132 R 2.648(,c) -.4 G .148(ome up with a 32 bit host num-)377.682 132 R(ber)72 144 Q 2.555(,a) -.4 G .055(nd connect you directly to that machine.)93.865 144 R .055 (In the UUCP environment, we don')5.055 F 2.555(th)-.18 G .055 (ave the concept of two)413.25 144 R .785 (processes on arbitrary machines talking directly)72 156 R 3.286(,s)-.65 G 3.286(ow)276.302 156 S 3.286(ef)291.808 156 S .786 (orward mail one hop at a time until it gets to the)302.864 156 R .096 (appropriate destination.)72 168 R .096(In this case, the subroutine decides i\ f the name represents the local machine, and if)5.096 F (not, decides which of its neighbors to forward the message to.)72 180 Q/F1 10 /Times-Italic@0 SF 2.5(2. What)72 204 R(is a Domain?)2.5 E F0 .084 (So, after all this background, we still haven')72 222 R 2.584(ts)-.18 G .084 (aid what a domain is.)258.582 222 R .085(The answer \(I hope it')5.085 F 2.585 (sb)-.55 G .085(een worth the)449.4 222 R .439 (wait\) is that a domain is a subtree of the world tree.)72 234 R .439 (For example, `)5.439 F(`uucp')-.74 E 2.939('i)-.74 G 2.939(sat)380.937 234 S .439(op level domain \(that is, a)397.925 234 R .127(subtree of the `)72 246 R (`root')-.74 E .127 ('.\) and represents all names and machines beneath it in the tree.)-.74 F -.74 (``)5.128 G(att.uucp').74 E 2.628('i)-.74 G 2.628(sas)463.194 246 S(ubdo-) 480.67 246 Q .04(main of `)72 258 R(`uucp')-.74 E .04 (', representing all names, machines, and subdomains beneath `)-.74 F(`att') -.74 E 2.54('i)-.74 G 2.54(nt)407.74 258 S .04(he tree.)418.06 258 R .04 (Similarly for)5.04 F -.74(``)72 270 S(cb.att.uucp').74 E .812(', `)-.74 F (`osg.cb.att.uucp')-.74 E .812(', and even `)-.74 F(`d.osg.cb.att.uucp')-.74 E 3.312('\()-.74 G .812(although `)337.65 270 R(`d.osg.cb.att.uucp')-.74 E 3.312 ('i)-.74 G 3.313(sa`)461.664 270 S -1.95(`leaf ')479.21 270 R(')-.74 E (domain, representing only the one machine\).)72 282 Q 2.664(Ad)72 300 S .164 (omain has certain properties.)86.884 300 R .164 (The key property is that it has a `)5.164 F(`registry')-.74 E 2.663('. That) -.74 F .163(is, the domain has a list)2.663 F .429(of the names of all immedia\ te subdomains, plus information about how to get to each one.)72 312 R .43 (There is also a)5.43 F .601(contact person for the domain.)72 324 R .601 (This person is responsible for the domain, keeping the registry up-to-date,) 5.601 F .007(serving as a point of contact for outside queries, and setting po\ licy requirements for subdomains.)72 336 R .008(Each sub-)5.008 F .839(domain \ can decide who it will allow to have subdomains, and establish requirements th\ at all subdomains)72 348 R .062(must meet to be included in the registry)72 360 R 5.062(.F)-.65 G .062(or example, the `)243.506 360 R(`cb')-.74 E 2.562('d) -.74 G .063(omain might require all subdomains to be)336.964 360 R (physically located in the A)72 372 Q(T&T building in Columbus.)-1.11 E(ARP)72 390 Q 3.564(Ah)-.92 G 1.064 (as established certain requirements for top level domains.)106.314 390 R 1.064 (These requirements specify that there)6.064 F .371(must be a list of all subd\ omains and contact persons for them, a responsible person who is an authority \ for)72 402 R .685(the domain \(so that if some site does something bad, it can\ be made to stop\), a minimum size \(to prevent)72 414 R 1.051(small domains f\ rom being top level\), and a pair of nameservers \(for redundancy\) to provide\ a directory-)72 426 R .367(assistance facility)72 438 R 5.367(.D)-.65 G .367(\ omains can be more lax about the requirements they place on their subdomains, \ mak-)157.624 438 R .139 (ing it harder to be a top level domain than somewhere lower in the tree.)72 450 R .139(Of course, if you are a subdomain,)5.139 F (your parent is responsible for you.)72 462 Q 1.005 (One requirement that is NOT present is for unique parents.)72 480 R 1.004 (That is, a machine \(or an entire subdomain\))6.005 F .724 (need not appear in only one place in the tree.)72 492 R .725(Thus, `)5.724 F (`cb')-.74 E 3.225('m)-.74 G .725(ight appear both in the `)321.65 492 R(`att') -.74 E 3.225('d)-.74 G .725(omain, and in)447.83 492 R 1.253(the `)72 504 R (`ohio')-.74 E 3.753('d)-.74 G 3.753(omain. This)126.346 504 R 1.253(allows do\ mains to be structured more \215exibly than just the simple geography)3.753 F .297(used by the postal service and the telephone company; or)72 516 R .298 (ganizations or topography can be used in parallel.)-.18 F(\(Actually)72 528 Q 2.761(,t)-.65 G .261(here are a few instances where this is done in the postal\ service [overseas military mail] and the)117.161 528 R .528(telephone system \ [pre\214xes can appear in more than one area code, e.g. near W)72 540 R .529 (ashington D.C., and Silicon)-.8 F -1.11(Va)72 552 S 4.068(lley].\) It)1.11 F 1.567(also allows domains to split or join up, while remaining upward compatib\ le with their old)4.068 F(addresses.)72 564 Q 1.958 (Do all domains represent speci\214c machines?)72 582 R 1.958(Not necessarily) 6.958 F 6.958(.I)-.65 G(t')342.794 582 Q 4.458(sp)-.55 G 1.958 (retty obvious that a full path like)361.702 582 R -.74(``)72 594 S (d.cbosg.att.uucp').74 E 3.546('r)-.74 G 1.046(efers to exactly one machine.) 155.986 594 R 1.046(The OSG domain might decide that `)6.046 F (`cbosg.att.uucp')-.74 E(')-.74 E .385 (represents a particular gateway machine.)72 606 R .385 (Or it might decide that it represents a set of machines, several of)5.385 F 1.763(which might be gateways.)72 618 R 1.763(The `)6.763 F(`att.uucp')-.74 E 4.263('d)-.74 G 1.762(omain might decide that several machines, `)261.338 618 R (`ihnp4.uucp')-.74 E(',)-.74 E -.74(``)72 630 S(whgwj.uucp').74 E .482 (', and `)-.74 F(`hogtw)-.74 E(.uucp')-.65 E 2.982('a)-.74 G .482 (re all entry points into `)221.456 630 R(`att.uucp')-.74 E 2.983('. Or)-.74 F .483(it might decide that it just rep-)2.983 F .045 (resents a spot in the name space, not a machine.)72 642 R .044 (For example, there is no machine corresponding to `)5.044 F(`arpa')-.74 E(') -.74 E .336(or `)72 654 R(`uucp')-.74 E .336(', or to the root.)-.74 F .337 (Each domain decides for itself.)5.336 F .337 (The naming space and the algorithm for getting)5.337 F .977(mail from one mac\ hine to another are not closely linked - routing is up to the mail system to \ \214gure out,)72 666 R(with or without help from the structure of the names.)72 678 Q .286(The domain syntax does allow explicit routes, in case you want to e\ xercise a particular route or some gate-)72 696 R 9.168(way is balking.)72 708 R 9.167(The syntax is `)165.334 708 R(`@dom)-.74 E(1)281.576 713 Q(,@dom) 286.576 708 Q(2)316.066 713 Q(,...,@dom)321.066 708 Q(n)360.556 713 Q (:user@domain')365.556 708 Q 9.167(', for example,)-.74 F(@ihnp4.UUCP)72 720 Q (,@ucbvax.UUCP)-1.11 E(,:joe@NIC.ARP)-1.11 E .946 (A, forcing it to be routed through dom)-.92 F(1)425.602 725 Q 3.446(,d)430.602 720 S(om)441.548 720 Q(2)454.328 725 Q 3.446(,.)459.328 720 S .946(.., dom) 467.774 720 R(n)496.5 725 Q(,)501.5 720 Q .406 (and from domn sent to the \214nal address.)72 732 R .406 (This behaves exactly like the UUCP ! routing syntax, although it)5.406 F (is somewhat more verbose.)72 744 Q EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF 2.218(By the way)72 96 R 4.718(,y)-.65 G 2.219(ou've n\ o doubt noticed that some forms of electronic addresses read from left-to-righ\ t)133.554 96 R .545 (\(cbosgd!mark\), others read from right-to-left \(mark@Berkeley\).)72 108 R .545(Which is better?)5.545 F .544(The real answer here is)5.544 F .891 (that it')72 120 R 3.391(sar)-.55 G .891(eligious issue, and it doesn')117.173 120 R 3.391(tm)-.18 G .891(ake much dif)245.338 120 R 3.391 (ference. left-to-right)-.18 F .891(is probably a bit easier for a)3.391 F 1.413(computer to deal with because it can understand something on the left an\ d ignore the remainder of the)72 132 R 2.507(address. \(While)72 144 R(it') 2.507 E 2.507(sa)-.55 G .008(lmost as easy for the program to read from right-\ to-left, the ease of going from left-to-)158.951 144 R(right was probably in t\ he backs of the minds of the designers who invented host:user and host!user)72 156 Q(.\))-.55 E .779(On the other hand, I claim that user@host is easier for \ humans to read, since people tend to start reading)72 174 R .811(from the left\ and quit as soon as they recognize the login name of the person.)72 186 R .812 (Also, a mail program that)5.812 F 1.53 (prints a table of headers may have to truncate the sender)72 198 R 2.629 -.55 ('s a).37 H 1.529(ddress to make it \214t in a \214xed number of).55 F (columns, and it')72 210 Q 2.5(sp)-.55 G(robably more useful to read `)147.56 210 Q(`mark@d.osg.a')-.74 E 2.5('t)-.74 G(han `)335.8 210 Q(`ucbvax!sdcsv')-.74 E('.)-.74 E .841(These are pretty minor issues, after all, humans can adapt to\ skip to the end of an address, and programs)72 228 R .393 (can truncate on the left.)72 240 R .392(But the real problem is that if the w\ orld contains BOTH left-to-right and right-to-)5.392 F .82 (left syntax, you have ambiguous addresses like x!y@z to consider)72 252 R 5.82 (.T)-.55 G .82(his single problem turns out to be a)357.43 252 R(killer)72 264 Q 2.5(,a)-.4 G (nd is the best single reason to try to stamp out one in favor of the other) 102.15 264 Q(.)-.55 E/F1 10/Times-Italic@0 SF 2.5(3. So)72 288 R(why ar)2.5 E 2.5(ew)-.37 G 2.5(ed)137.74 288 S(oing this, anyway?)149.68 288 Q F0 .938 (The current world is full of lots of interesting kinds of mail syntax.)72 306 R .938(The old ARP)5.938 F 3.437(A`)-.92 G(`user@host')423.656 306 Q 3.437('i) -.74 G 3.437(ss)481.663 306 S(till)492.88 306 Q 1.156(used on the ARP)72 318 R 1.156(ANET by many systems.)-.92 F 1.156 (Explicit routing can sometimes by done with an address like)6.156 F -.74(``)72 330 S(user@host2@host1').74 E 3.856('w)-.74 G 1.356 (hich sends the mail to host1 and lets host1 interpret `)173.336 330 R (`user@host2')-.74 E 3.855('. Addresses)-.74 F .704 (with more than one @ were made illegal a few years ago, but many ARP)72 342 R .704(ANET hosts depended on them,)-.92 F 1.899 (and the syntax is still being used.)72 354 R 1.899(UUCP uses `)6.899 F -2.13 (`h1!h2!h3!user ')-.74 F 1.898(', requiring the user to route the mail.)-.74 F (Berknets use `)72 366 Q -2.13(`host:user ')-.74 F 2.5('a)-.74 G (nd do not allow explicit routing.)181.14 366 Q 4.804 -.7(To g)72 384 T 3.404 (et mail from one host to another).7 F 5.904(,i)-.4 G 5.904(th)252.842 384 S 3.404(ad to be routed through gateways.)266.526 384 R 3.405(Thus, the address) 8.404 F -.74(``)72 396 S(csvax:mark@Berkeley').74 E 2.744('f)-.74 G .244 (rom the ARP)181.324 396 R .244(ANET would send the mail to Berkeley)-.92 F 2.743(,w)-.65 G .243(hich would forward it to)405.818 396 R 2.948 (the Berknet address csvax:mark.)72 408 R 4.348 -.7(To s)7.948 H 2.949 (end mail to the ARP).7 F 2.949(ANET from UUCP)-.92 F 5.449(,a)-1.11 G 5.449 (na)426.003 408 S 2.949(ddress such as)440.892 408 R -.74(``)72 420 S (ihnp4!ucbvax!sam@foo-unix').74 E 7.46('w)-.74 G 4.96 (ould route it through ihnp4 to ucbvax, which would interpret)216.6 420 R -.74 (``)72 432 S(sam@foo-unix').74 E 4.422('a)-.74 G 4.422(sa)152.462 432 S 4.422 (nA)165.214 432 S(RP)181.856 432 Q 1.922(ANET address and pass it along.)-.92 F 1.923(When the Berknet-UUCP gateway and)6.922 F(Berknet-ARP)72 444 Q 16.197 (ANET gateway were on dif)-.92 F 16.196(ferent machines, addresses such as)-.18 F -.74(``)72 456 S(csvax:ihnp4!ihnss!warren@Berkeley').74 E 2.5('w)-.74 G (ere common.)242.18 456 Q .986(As you can see, the combination of left-to-righ\ t UUCP syntax and right-to-left ARP)72 474 R .986(ANET syntax makes)-.92 F 1.681(things pretty complex.)72 486 R 1.681(Berknets are gone now)6.681 F 4.181 (,b)-.65 G 1.68(ut there are lots of gateways between UUCP and the)279.757 486 R(ARP)72 498 Q 1.301(ANET and ARP)-.92 F(ANET)-.92 E 1.301 (-like mail networks.)-.92 F 1.301 (Sending mail to an address for which you only know a)6.301 F 5.618 (path from the ARP)72 510 R 5.618 (ANET onto UUCP is even harder \255 suppose the address you have is)-.92 F (ihnp4!ihnss!warren@Berkeley)72 522 Q 3.51(,a)-.65 G 1.011 (nd you are on host rlgvax which uses seismo as an ARP)204.87 522 R 1.011 (ANET gateway)-.92 F(.)-.65 E -1(Yo)72 534 S 3.535(um)1 G 1.035 (ust send to seismo!ihnp4!ihnss!warren@Berkeley)99.535 534 R 3.535(,w)-.65 G 1.035(hich is not only pretty hard to read, but when)314.705 534 R 1.43 (the recipient tries to reply)72 546 R 3.93(,i)-.65 G 3.93(tw)189.04 546 S 1.43 (ill have no idea where the break in the address between the two UUCP)202.97 546 R .608(pieces occurs.)72 558 R .608(An ARP)5.608 F .608 (ANET site routing across the UUCP world to somebody')-.92 F 3.108(sE)-.55 G .607(thernet using domains)414.456 558 R 2.224 (locally will have to send an address something like `)72 570 R(`xxx@Berkeley) -.74 E(.ARP)-.65 E -1.02 -1.11(A' ')-.92 H 2.225(to get it to UUCP)5.835 F 4.725(,t)-1.11 G(hen)489.56 570 Q -.74(``)72 582 S(ihnp4!decvax!island!yyy').74 E 4.039('t)-.74 G 4.039(og)190.639 582 S 1.539 (et it to the other ethernet, then `)204.678 582 R(`sam@csvax.ISLAND')-.74 E 4.038('t)-.74 G 4.038(og)444.116 582 S 1.538(et it across)458.154 582 R 31.285 (their ethernet.)72 594 R 31.286(The single address would therefore be)195.11 594 R(ihnp4!decvax!island!sam@csvax.ISLAND@Berkeley)72 606 Q(.ARP)-.65 E 2.801 (A, which is too much to ask any person or)-.92 F 5.863(mailer to understand.) 72 618 R(It')179.299 618 Q 8.363(se)-.55 G 5.863 (ven worse: gateways have to deal with ambiguous names like)204.882 618 R (ihnp4!mark@Berkeley)72 630 Q 4.833(,w)-.65 G 2.333 (hich can be parsed either `)177.873 630 R(`\(ihnp4!mark\)@Berkeley')-.74 E 4.833('i)-.74 G 4.833(na)409.531 630 S 2.333(ccordance with the)423.804 630 R (ARP)72 642 Q(ANET conventions, or `)-.92 E(`ihnp4!\(mark@Berkeley\)')-.74 E 2.5('a)-.74 G 2.5(st)301.26 642 S(he old UUCP would.)310.43 642 Q .415(Another\ very important reason for using domains is that your mailing address becomes \ absolute instead of)72 660 R 3.03(relative. It)72 672 R .53(becomes possible t\ o put your electronic address on your business card or in your signature \214l\ e)3.03 F .185(without worrying about writing six dif)72 684 R .185 (ferent forms and \214fteen hosts that know how to get to yours.)-.18 F .185 (It dras-)5.185 F .468(tically simpli\214es the job of the reply command in yo\ ur mail program, and automatic reply code in the net-)72 696 R(news software.) 72 708 Q EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Italic@0 SF 2.5(4. Further)72 96 R(Information)2.5 E/F1 10 /Times-Roman@0 SF .794(For further information, some of the basic ARP)72 114 R .794(ANET reference documents are in order)-.92 F 5.794(.T)-.55 G .794 (hese can often)445.212 114 R .65 (be found posted to Usenet, or available nearby)72 126 R 5.65(.T)-.65 G .65 (hey are all available on the ARP)276.23 126 R .65(ANET on host NIC via)-.92 F .371(FTP with login ANONYMOUS, if you have an ARP)72 138 R .371(ANET login.) -.92 F .371(They can also be ordered from the Net-)5.371 F (work Information Center)72 150 Q 2.5(,S)-.4 G (RI International, Menlo Park, California, 94025.)182.14 150 Q 2.5(RFC819 The) 72 168 R(Domain Naming Convention for Internet User Applications)2.5 E 2.5 (RFC821 Simple)72 180 R(Mail T)2.5 E(ransfer Protocol)-.35 E 2.5 (RFC822 Standard)72 192 R(for the Format of ARP)2.5 E(ANET T)-.92 E (ext Messages)-.7 E 2.5(RFC881 The)72 204 R(Domain Names Plan and Schedule)2.5 E(#)72 222 Q 2.5(#@)72 234 S 29.07(\(#\)domain.mm 2.1)88.71 234 R (smail 12/14/86)2.5 E(#)72 246 Q EP %%Trailer end %%EOF