home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / rfc / 1100s / rfc1178.txt < prev    next >
Text File  |  1996-04-04  |  18KB  |  451 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                          D. Libes
  8. Request for Comments: 1178                Integrated Systems Group/NIST
  9. FYI: 5                                                      August 1990
  10.  
  11.  
  12.                    Choosing a Name for Your Computer
  13.  
  14. Status of this Memo
  15.  
  16.    This FYI RFC is a republication of a Communications of the ACM
  17.    article on guidelines on what to do and what not to do when naming
  18.    your computer [1].  This memo provides information for the Internet
  19.    community.  It does not specify any standard.
  20.  
  21.    Distribution of this memo is unlimited.
  22.  
  23. Abstract
  24.  
  25.    In order to easily distinguish between multiple computers, we give
  26.    them names.  Experience has taught us that it is as easy to choose
  27.    bad names as it is to choose good ones.  This essay presents
  28.    guidelines for deciding what makes a name good or bad.
  29.  
  30.    Keywords: domain name system, naming conventions, computer
  31.    administration, computer network management
  32.  
  33. Introduction
  34.  
  35.    As soon as you deal with more than one computer, you need to
  36.    distinguish between them.  For example, to tell your system
  37.    administrator that your computer is busted, you might say, "Hey Ken.
  38.    Goon is down!"
  39.  
  40.    Computers also have to be able to distinguish between themselves.
  41.    Thus, when sending mail to a colleague at another computer, you might
  42.    use the command "mail libes@goon".
  43.  
  44.    In both cases, "goon" refers to a particular computer.  How the name
  45.    is actually dereferenced by a human or computer need not concern us
  46.    here.  This essay is only concerned with choosing a "good" name.  (It
  47.    is assumed that the reader has a basic understanding of the domain
  48.    name system as described by [2].)
  49.  
  50.    By picking a "good" name for your computer, you can avoid a number of
  51.    problems that people stumble over again and again.
  52.  
  53.    Here are some guidelines on what NOT to do.
  54.  
  55.  
  56.  
  57.  
  58. Libes                                                           [Page 1]
  59.  
  60. RFC 1178                   Name Your Computer                August 1990
  61.  
  62.  
  63.       Don't overload other terms already in common use.
  64.  
  65.          Using a word that has strong semantic implications in the
  66.          current context will cause confusion.  This is especially true
  67.          in conversation where punctuation is not obvious and grammar is
  68.          often incorrect.
  69.  
  70.          For example, a distributed database had been built on top of
  71.          several computers.  Each one had a different name.  One machine
  72.          was named "up", as it was the only one that accepted updates.
  73.          Conversations would sound like this: "Is up down?"  and "Boot
  74.          the machine up." followed by "Which machine?"
  75.  
  76.          While it didn't take long to catch on and get used to this
  77.          zaniness, it was annoying when occasionally your mind would
  78.          stumble, and you would have to stop and think about each word
  79.          in a sentence.  It is as if, all of a sudden, English has
  80.          become a foreign language.
  81.  
  82.       Don't choose a name after a project unique to that machine.
  83.  
  84.          A manufacturing project had named a machine "shop" since it was
  85.          going to be used to control a number of machines on a shop
  86.          floor.  A while later, a new machine was acquired to help with
  87.          some of the processing.  Needless to say, it couldn't be called
  88.          "shop" as well.  Indeed, both machines ended up performing more
  89.          specific tasks, allowing more precision in naming.  A year
  90.          later, five new machines were installed and the original one
  91.          was moved to an unrelated project.  It is simply impossible to
  92.          choose generic names that remain appropriate for very long.
  93.  
  94.          Of course, they could have called the second one "shop2" and so
  95.          on.  But then one is really only distinguishing machines by
  96.          their number.  You might as well just call them "1", "2", and
  97.          "3".  The only time this kind of naming scheme is appropriate
  98.          is when you have a lot of machines and there are no reasons for
  99.          any human to distinguish between them.  For example, a master
  100.          computer might be controlling an array of one hundred
  101.          computers.  In this case, it makes sense to refer to them with
  102.          the array indices.
  103.  
  104.          While computers aren't quite analogous to people, their names
  105.          are.  Nobody expects to learn much about a person by their
  106.          name.  Just because a person is named "Don" doesn't mean he is
  107.          the ruler of the world (despite what the "Choosing a Name for
  108.          your Baby" books say).  In reality, names are just arbitrary
  109.          tags.  You cannot tell what a person does for a living, what
  110.          their hobbies are, and so on.
  111.  
  112.  
  113.  
  114. Libes                                                           [Page 2]
  115.  
  116. RFC 1178                   Name Your Computer                August 1990
  117.  
  118.  
  119.       Don't use your own name.
  120.  
  121.          Even if a computer is sitting on your desktop, it is a mistake
  122.          to name it after yourself.  This is another case of
  123.          overloading, in which statements become ambiguous.  Does "give
  124.          the disk drive to don" refer to a person or computer?
  125.  
  126.          Even using your initials (or some other moniker) is
  127.          unsatisfactory.  What happens if I get a different machine
  128.          after a year?  Someone else gets stuck with "don" and I end up
  129.          living with "jim".  The machines can be renamed, but that is
  130.          excess work and besides, a program that used a special
  131.          peripheral or database on "don" would start failing when it
  132.          wasn't found on the "new don".
  133.  
  134.          It is especially tempting to name your first computer after
  135.          yourself, but think about it.  Do you name any of your other
  136.          possessions after yourself?  No.  Your dog has its own name, as
  137.          do your children.  If you are one of those who feel so inclined
  138.          to name your car and other objects, you certainly don't reuse
  139.          your own name.  Otherwise you would have a great deal of
  140.          trouble distinguishing between them in speech.
  141.  
  142.          For the same reason, it follows that naming your computer the
  143.          same thing as your car or another possession is a mistake.
  144.  
  145.       Don't use long names.
  146.  
  147.          This is hard to quantify, but experience has shown that names
  148.          longer than eight characters simply annoy people.
  149.  
  150.          Most systems will allow prespecified abbreviations, but why not
  151.          choose a name that you don't have to abbreviate to begin with?
  152.          This removes any chance of confusion.
  153.  
  154.       Avoid alternate spellings.
  155.  
  156.          Once we called a machine "czek".  In discussion, people
  157.          continually thought we were talking about a machine called
  158.          "check".  Indeed, "czek" isn't even a word (although "Czech"
  159.          is).
  160.  
  161.          Purposely incorrect (but cute) spellings also tend to annoy a
  162.          large subset of people.  Also, people who have learned English
  163.          as a second language often question their own knowledge upon
  164.          seeing a word that they know but spelled differently.  ("I
  165.          guess I've always been spelling "funxion" incorrectly.  How
  166.          embarrassing!")
  167.  
  168.  
  169.  
  170. Libes                                                           [Page 3]
  171.  
  172. RFC 1178                   Name Your Computer                August 1990
  173.  
  174.  
  175.          By now you may be saying to yourself, "This is all very
  176.          silly...people who have to know how to spell a name will learn
  177.          it and that's that." While it is true that some people will
  178.          learn the spelling, it will eventually cause problems
  179.          somewhere.
  180.  
  181.          For example, one day a machine named "pythagoris" (sic) went
  182.          awry and began sending a tremendous number of messages to the
  183.          site administrator's computer.  The administrator, who wasn't a
  184.          very good speller to begin with, had never seen this machine
  185.          before (someone else had set it up and named it), but he had to
  186.          deal with it since it was clogging up the network as well as
  187.          bogging down his own machine which was logging all the errors.
  188.          Needless to say, he had to look it up every time he needed to
  189.          spell "pythagoris".  (He suspected there was an abbreviation,
  190.          but he would have had to log into yet another computer (the
  191.          local nameserver) to find out and the network was too jammed to
  192.          waste time doing that.)
  193.  
  194.       Avoid domain names.
  195.  
  196.          For technical reasons, domain names should be avoided.  In
  197.          particular, name resolution of non-absolute hostnames is
  198.          problematic.  Resolvers will check names against domains before
  199.          checking them against hostnames.  But we have seen instances of
  200.          mailers that refuse to treat single token names as domains.
  201.          For example, assume that you mail to "libes@rutgers" from
  202.          yale.edu.  Depending upon the implementation, the mail may go
  203.          to rutgers.edu or rutgers.yale.edu (assuming both exist).
  204.  
  205.       Avoid domain-like names.
  206.  
  207.          Domain names are either organizational (e.g., cia.gov) or
  208.          geographical (e.g., dallas.tx.us).  Using anything like these
  209.          tends to imply some connection.  For example, the name "tahiti"
  210.          sounds like it means you are located there.  This is confusing
  211.          if it is really somewhere else (e.g., "tahiti.cia.gov is
  212.          located in Langley, Virginia?  I thought it was the CIA's
  213.          Tahiti office!").  If it really is located there, the name
  214.          implies that it is the only computer there.  If this isn't
  215.          wrong now, it inevitably will be.
  216.  
  217.          There are some organizational and geographical names that work
  218.          fine.  These are exactly the ones that do not function well as
  219.          domain names.  For example, amorphous names such as rivers,
  220.          mythological places and other impossibilities are very
  221.          suitable.  ("earth" is not yet a domain name.)
  222.  
  223.  
  224.  
  225.  
  226. Libes                                                           [Page 4]
  227.  
  228. RFC 1178                   Name Your Computer                August 1990
  229.  
  230.  
  231.       Don't use antagonistic or otherwise embarrassing names.
  232.  
  233.          Words like "moron" or "twit" are good names if no one else is
  234.          going to see them.  But if you ever give someone a demo on your
  235.          machine, you may find that they are distracted by seeing a
  236.          nasty word on your screen.  (Maybe their spouse called them
  237.          that this morning.)  Why bother taking the chance that they
  238.          will be turned off by something completely irrelevant to your
  239.          demo.
  240.  
  241.       Don't use digits at the beginning of the name.
  242.  
  243.          Many programs accept a numerical internet address as well as a
  244.          name.  Unfortunately, some programs do not correctly
  245.          distinguish between the two and may be fooled, for example, by
  246.          a string beginning with a decimal digit.
  247.  
  248.          Names consisting entirely of hexadecimal digits, such as
  249.          "beef", are also problematic, since they can be interpreted
  250.          entirely as hexadecimal numbers as well as alphabetic strings.
  251.  
  252.       Don't use non-alphanumeric characters in a name.
  253.  
  254.          Your own computer may handle punctuation or control characters
  255.          in a name, but most others do not.  If you ever expect to
  256.          connect your computer to a heterogeneous network, you can count
  257.          on a variety of interpretations of non-alphanumeric characters
  258.          in names.  Network conventions on this are surprisingly
  259.          nonstandard.
  260.  
  261.       Don't expect case to be preserved.
  262.  
  263.          Upper and lowercase characters look the same to a great deal of
  264.          internet software, often under the assumption that it is doing
  265.          you a favor.  It may seem appropriate to capitalize a name the
  266.          same way you might do it in English, but convention dictates
  267.          that computer names appear all lowercase.  (And it saves
  268.          holding down the shift key.)
  269.  
  270.    Now that we've heard what not to do, here are some suggestions on
  271.    names that work well.
  272.  
  273.       Use words/names that are rarely used.
  274.  
  275.          While a word like "typical" or "up" (see above) isn't computer
  276.          jargon, it is just too likely to arise in discussion and throw
  277.          off one's concentration while determining the correct referent.
  278.          Instead, use words like "lurch" or "squire" which are unlikely
  279.  
  280.  
  281.  
  282. Libes                                                           [Page 5]
  283.  
  284. RFC 1178                   Name Your Computer                August 1990
  285.  
  286.  
  287.          to cause any confusion.
  288.  
  289.          You might feel it is safe to use the name "jose" just because
  290.          no one is named that in your group, but you will have a problem
  291.          if you should happen to hire Jose.  A name like "sphinx" will
  292.          be less likely to conflict with new hires.
  293.  
  294.       Use theme names.
  295.  
  296.          Naming groups of machines in a common way is very popular, and
  297.          enhances communality while displaying depth of knowledge as
  298.          well as imagination.  A simple example is to use colors, such
  299.          as "red" and "blue".  Personality can be injected by choices
  300.          such as "aqua" and "crimson".
  301.  
  302.          Certain sets are finite, such as the seven dwarfs.  When you
  303.          order your first seven computers, keep in mind that you will
  304.          probably get more next year.  Colors will never run out.
  305.  
  306.          Some more suggestions are: mythical places (e.g., Midgard,
  307.          Styx, Paradise), mythical people (e.g., Procne, Tereus, Zeus),
  308.          killers (e.g., Cain, Burr, Boleyn), babies (e.g., colt, puppy,
  309.          tadpole, elver), collectives (e.g., passel, plague, bevy,
  310.          covey), elements (e.g., helium, argon, zinc), flowers (e.g.,
  311.          tulip, peony, lilac, arbutus).  Get the idea?
  312.  
  313.       Use real words.
  314.  
  315.          Random strings are inappropriate for the same reason that they
  316.          are so useful for passwords.  They are hard to remember.  Use
  317.          real words.
  318.  
  319.       Don't worry about reusing someone else's hostname.
  320.  
  321.          Extremely well-known hostnames such as "sri-nic" and "uunet"
  322.          should be avoided since they are understood in conversation as
  323.          absolute addresses even without a domain.  In all other cases,
  324.          the local domain is assumed to qualify single-part hostnames.
  325.          This is similar to the way phone numbers are qualified by an
  326.          area code when dialed from another area.
  327.  
  328.          In other words, if you have choosen a reasonable name, you do
  329.          not have to worry that it has already been used in another
  330.          domain.  The number of hosts in a bottom-level domain is small,
  331.          so it shouldn't be hard to pick a name unique only to that
  332.          domain.
  333.  
  334.  
  335.  
  336.  
  337.  
  338. Libes                                                           [Page 6]
  339.  
  340. RFC 1178                   Name Your Computer                August 1990
  341.  
  342.  
  343.       There is always room for an exception.
  344.  
  345.          I don't think any explanation is needed here.  However, let me
  346.          add that if you later decide to change a name (to something
  347.          sensible like you should have chosen in the first place), you
  348.          are going to be amazed at the amount of pain awaiting you.  No
  349.          matter how easy the manuals suggest it is to change a name, you
  350.          will find that lots of obscure software has rapidly accumulated
  351.          which refers to that computer using that now-ugly name.  It all
  352.          has to be found and changed.  People mailing to you from other
  353.          sites have to be told.  And you will have to remember that
  354.          names on old backup media labels correspond to different names.
  355.  
  356.          I could go on but it would be easier just to forget this
  357.          guideline exists.
  358.  
  359. Conclusion
  360.  
  361.    Most people don't have the opportunity to name more than one or two
  362.    computers, while site administrators name large numbers of them.  By
  363.    choosing a name wisely, both user and administrator will have an
  364.    easier time of remembering, discussing and typing the names of their
  365.    computers.
  366.  
  367.    I have tried to formalize useful guidelines for naming computers,
  368.    along with plenty of examples to make my points obvious.  Having been
  369.    both a user and site administrator, many of these anecdotes come from
  370.    real experiences which I have no desire to relive.  Hopefully, you
  371.    will avoid all of the pitfalls I have discussed by choosing your
  372.    computer's name wisely.
  373.  
  374. Credits
  375.  
  376.    Thanks to the following people for suggesting some of these
  377.    guidelines and participating in numerous discussions on computer
  378.    naming: Ed Barkmeyer, Peter Brown, Chuck Hedrick, Ken Manheimer, and
  379.    Scott Paisley.
  380.  
  381.    This essay first appeared in the Communications of the ACM, November,
  382.    1989, along with a Gary Larson cartoon reprinted with permission of
  383.    United Press Syndicate.  The text is not subject to copyright, since
  384.    it is work of the National Institute of Standards and Technology.
  385.    However, the author, CACM, and NIST request that this credit appear
  386.    with the article whenever it is reprinted.
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Libes                                                           [Page 7]
  395.  
  396. RFC 1178                   Name Your Computer                August 1990
  397.  
  398.  
  399. References
  400.  
  401.    [1]  Libes, D., "Choosing a Name for Your Computer", Communications
  402.    of the ACM, Vol. 32, No. 11, Pg. 1289, November 1989.
  403.  
  404.    [2]  Mockapetris, P., "Domain Names - Concepts and Facilities",
  405.    RFC 1034, USC/Information Sciences Institute, November 1987.
  406.  
  407. Security Considerations
  408.  
  409.    Security issues are not discussed in this memo.
  410.  
  411. Author's Address
  412.  
  413.    Don Libes
  414.    Integrated Systems Group
  415.    National Institute of Standards and Technology
  416.    Gaithersburg, MD 20899
  417.  
  418.    Phone: (301) 975-3535
  419.  
  420.    EMail:  libes@cme.nist.gov
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Libes                                                           [Page 8]
  451.