home *** CD-ROM | disk | FTP | other *** search
/ Simtel MSDOS - Coast to Coast / simteldosarchivecoasttocoast2.iso / fido / ftsc_all.z43 / FSC-0027.TXT < prev    next >
Text File  |  1988-12-04  |  19KB  |  533 lines

  1.  
  2. FSC-0027
  3.  
  4.                     The Distribution Nodelist
  5.  
  6.                       by Ben Baker, 1:100/76
  7.                  updated by Rick Moore, 1:115/333
  8.                         December 4,  1988
  9.  
  10.  
  11. Copyright 1986, 1987, 1988 International FidoNet Association. All 
  12. rights reserved.  Duplication and or distribution permitted for 
  13. non-commercial purposes only.
  14.  
  15. This document is a proposed update for the document known under 
  16. the names of FSC002-4,  FSC-0002,  and FTS-0002.
  17.  
  18. This document defines the format and content of the nodelist for 
  19. the Public FidoNet Network (PFN) as published each Friday.
  20.  
  21. The PFN is an international network of independently owned 
  22. electronic mail systems, most with interlocking electronic 
  23. bulletin board systems.  The distribution nodelist, or simply 
  24. "nodelist," is the glue which holds the network together.  It is 
  25. the PFN's "phone book" and it defines the top-level network 
  26. structure.
  27.  
  28. The nodelist is published as an ASCII text file named 
  29. NODELIST.nnn,  where nnn is the day-of-year of the Friday 
  30. publication date.  This file is packed into an archive file (by 
  31. System Enhancement Associates' ARC utility) named NODELIST.Ann, 
  32. where nn are the last two digits of day-of-year.
  33.  
  34. A companion file,  COORD.nnn, lists the coordinators of the 
  35. various regions and local networks which constitute the PFN. This 
  36. file may be created from NODELIST.nnn by the program COORD.EXE, 
  37. distributed by many PFN bulletin boards.
  38.  
  39. As stated above, NODELIST.nnn is an ASCII text file.  It contains 
  40. two kinds of lines, comment lines and data lines.  Each line is 
  41. terminated with an ASCII carriage return and line feed character 
  42. sequence,  and contains no trailing white-space (spaces, tabs, 
  43. etc.).  The file is terminated with an end-of-file character (EOF 
  44. = decimal character value 26).
  45.  
  46. Comments lines contain a semicolon (;) in the first character 
  47. position followed by zero or more alphabetic characters called 
  48. "interest flags."  A program which processes the nodelist may use 
  49. comment interest flags to determine the disposition of a comment 
  50. line.  The remainder of a comment line (with one exception, 
  51. treated below) is free-form ASCII text.  There are five interest 
  52. flags defined as follows:
  53.  
  54.      ;S This comment is of particular interest to Sysops.
  55.  
  56.      ;U This comment is of particular interest to BBS users.
  57.  
  58.  
  59.  
  60.                               Page 1
  61.      ;F This comment should appear in any formatted "Fido List."
  62.  
  63.      ;A This comment is of general interest (shorthand for ;SUF).
  64.  
  65.      ;E This comment is an error message inserted by the nodelist 
  66.           generating program MakeNL.
  67.  
  68.      ; This comment may be ignored by a nodelist processor.
  69.  
  70. The first line of a nodelist is a special comment line containing 
  71. identification data for the particular edition of the nodelist. 
  72. The following is an example of the first line of a nodelist:
  73.  
  74. ;A FidoNet Nodelist for Friday, July 3, 1987 --
  75.      Day number 184 : 15943
  76.  
  77. This line contains the general interest flag,  the day,  date,  
  78. and day-of-year number of publication,  and ends with a 5-digit 
  79. decimal number with leading zeros,  if necessary.  This number is 
  80. the decimal representation of a check value derived as follows:
  81.  
  82.      Beginning with the first character of the second line,  a 
  83.      16-bit cyclic redundancy check (CRC) is calculated for the 
  84.      entire file, including carriage return and line feed 
  85.      characters,  but not including the terminating EOF 
  86.      character.  The check polynomial used is the same one used 
  87.      for many file transfer protocols:
  88.  
  89.           2**16 + 2**12 + 2**5 + 2**0
  90.  
  91. The CRC may be used to verify that the file has not been edited. 
  92. The importance of this will become evident in the discussion of 
  93. NODEDIFF,  below.  CRC calculation techniques are well documented 
  94. in the literature,  and will not be treated further here.
  95.  
  96. The content of the remaining comments in the nodelist are 
  97. intended to be informative.  Beyond the use of interest flags for 
  98. distribution,  a processing program need not have any interest in 
  99. them.
  100.  
  101. A nodelist data line contains eight variable length "fields" 
  102. separated by commas (,).  No space characters are allowed in a 
  103. data line,  and underscore characters are used in lieu of spaces. 
  104. The following discussion defines the contents of each field in a 
  105. data line.
  106.  
  107.  
  108. Field 1: Keyword
  109.  
  110. The keyword field may be empty,  or may contain one of the     
  111. following:
  112.  
  113.      Zone --
  114.           Begins the definition of a geographic zone and define 
  115.           its coordinator.  All the data lines following a line 
  116.           with the "Zone" keyword down to,  but not including the 
  117.  
  118.  
  119.  
  120.                               Page 2
  121.           next occurrence of a "Zone" keyword,  are regions,  
  122.           nets and nodes within the defined zone.
  123.  
  124.      Region --
  125.           Begins the definition of a geographic region and 
  126.           defines its coordinator.  All the data lines following 
  127.           a line with the "Region" keyword down to,  but not 
  128.           including the next occurrence of a "Region" or "Host" 
  129.           keyword, are independent nodes within the defined 
  130.           region.
  131.  
  132.      Host --
  133.           Begins the definition of a local network and defines 
  134.           its host.  All the data lines following a line with the 
  135.           "Host" keyword down to,  but not including the next 
  136.           occurrence of a "Region" or "Host" keyword,  are local 
  137.           nodes,  members of the defined local network.  The 
  138.           difference between a region and a local network is in 
  139.           the routing of messages.  A message addressed to a 
  140.           member of a region is sent  direct to the addressee, 
  141.           while a message to a member of a local network is sent 
  142.           to the network host.
  143.  
  144.      Hub --
  145.           Begins the definition of a routing subunit within a 
  146.           multilevel local  network.  The hub is the routing 
  147.           focal point for nodes listed below it until the next 
  148.           occurrence of a "Hub",  "Region",  "Host",  or "Zone" 
  149.           keyword.  The hub entry MUST be a redundant entry,  
  150.           with a unique number,  for one of the nodes listed 
  151.           below it.  This is necessary because some nodelist 
  152.           processors eliminate these entries in all but the local 
  153.           network.
  154.  
  155.      Pvt --
  156.           Defines a private node with unlisted number.  Private 
  157.           nodes are only allowed as members of local networks.
  158.  
  159.      Hold --
  160.           Defines a  node which  is temporarily down.  Mail may 
  161.           be sent to it and is held by its host or coordinator.
  162.  
  163.      Down --
  164.           Defines a node which is not operational.  Mail may NOT 
  165.           be sent  to it.  This keyword  may not be used for 
  166.           longer than two weeks on any single node,  at which  
  167.           point the "down" node is to be removed from the 
  168.           nodelist.
  169.  
  170.      <empty> --
  171.           Defines a normal node entry.
  172.  
  173. Field 2 - Net/Node number
  174.  
  175.  
  176.  
  177.  
  178.  
  179.                               Page 3
  180.      This field contains only numeric digits and is a number in 
  181.      the range of 0 to 32767.  If the line had the "Zone",  
  182.      "Region",  or "Host" keyword,  the number is the zone,  
  183.      net,  or region number,  and the node has an implied node 
  184.      number of 0.  Otherwise,  the number is the node number.  
  185.      The zone number,  region or net number,  and the node 
  186.      number,  taken together,  constitutes a node's FidoNet 
  187.      address.
  188.  
  189.      Zone numbers must be unique.  Region or net numbers must be 
  190.      unique within their zone.  Other numbers must be unique 
  191.      within their respective units.
  192.  
  193. Field 3 - Node name
  194.  
  195.      This field may contain any characters except commas and 
  196.      spaces.  Underscores are used to represent spaces.  This is 
  197.      the name by which the node is known.
  198.  
  199. Field 4 - Location
  200.  
  201.      This field may contain any characters except commas and 
  202.      spaces. Underscores are used to represent spaces.  This 
  203.      field contains the location of the  node.  In the USA it is 
  204.      typically "City_ST where ST is the standard two-letter 
  205.      abbreviation for the state.
  206.  
  207. Field 5 - Sysop name
  208.  
  209.      This field may contain any characters except commas and 
  210.      spaces.  Underscores are used to represent spaces.  This is 
  211.      the name of the system operator.
  212.  
  213. Field 6 - Phone number
  214.  
  215.      This field contains at least three and usually four numeric 
  216.      subfields separated by dashes (-).  The fields are country 
  217.      code (1 for USA and Canada),  city or area code,  exchange 
  218.      code,  and number.  The various parts of the phone number 
  219.      are frequently used to derive cost and routing information,  
  220.      as well as what number is to be dialed.  A typical example 
  221.      of the data in a phone number field is 1-800-555-1212,  
  222.      corresponding to country 1  (USA),  area 800 (inward WATS),  
  223.      exchange 555,  and number 1212.
  224.  
  225.      Alternatively,  this field may contain the notation 
  226.      "-Unpublished-" in the case of a private node.  In this 
  227.      case,  the keyword "Pvt" must appear on the line.
  228.  
  229. Field 7 - Baud rate
  230.  
  231.      This field contains one of the values:  300,  1200,  2400,  
  232.      or 9600,  and defines the maximum baud rate supported by the 
  233.      node.
  234.  
  235. Field 8 - Flags
  236.  
  237.  
  238.                               Page 4
  239.      This optional field contains data about the specific 
  240.      operation of the node,  such as file requests,  modem 
  241.      protocol supported,  etc.  Any text following the sixth 
  242.      comma on a data line is taken collectively to be the flags 
  243.      field.  The required format is zero or more subfields,  
  244.      separated by commas,  consisting of a flag,  possibly 
  245.      followed by a value.
  246.  
  247.  
  248.      The following flags define special operating conditions:
  249.  
  250.           Flag      Meaning
  251.  
  252.           CM        Node accepts mail 24 hours a day
  253.           MO        Node does not accept human callers
  254.  
  255.  
  256.      The following flags define modem protocols supported:
  257.  
  258.           Flag      Meaning
  259.  
  260.           CT1       CCITT V21 300 bps
  261.           CT2       CCITT V23 1200/75 split bps rate
  262.           CT3       CCITT V22 1200 bps full duplex
  263.           HAY       Hayes V9600
  264.           HST       USR Courier HST
  265.           MAX       Microcom AX/96xx series
  266.           PEP       Telebit TrailBlazer
  267.           V32       CCITT V32
  268.           V33       CCITT V33
  269.           V34       CCITT V34
  270.  
  271.                NOTE:  Many V22 modems also support Bell 212A.
  272.  
  273.           If no modem flag is given,  Bell 212A is assumed for 
  274.           1200 bps systems,  CCITT V22bis is assumed for 2400 bps 
  275.           systems.
  276.  
  277.  
  278.      The following flags define type of error correction 
  279.      available.  A separate error correction flag should not be 
  280.      used when the error correction type can be determined by the 
  281.      modem flag.  For instance,  a modem flag of HST implies MNP.
  282.  
  283.           Flag      Meaning
  284.  
  285.           MNP       Microcom Networking Protocol error correction
  286.           V42       LAP-M error correction w/fallback to MNP
  287.  
  288.  
  289.      The following flags define the type(s) of compression of 
  290.      mail packets supported.
  291.  
  292.           Flag      Meaning
  293.  
  294.  
  295.  
  296.                               Page 5
  297.           MN        No compression supported
  298.  
  299.                     NOTE:  The only compression method supported 
  300.                     by FidoNet at this time is SEA's ARC,  as 
  301.                     defined by the specs for ARCMail 0.6.  When 
  302.                     other types of mail compression are adopted,  
  303.                     indicators for them will be added.  For now,  
  304.                     the absence of a compression flag indicates 
  305.                     that ARCMail 0.6 compression is supported.
  306.  
  307.  
  308.      The following  flags  indicate  the types of file/update 
  309.      requests supported.
  310.  
  311.           Flag      Meaning
  312.  
  313.           XA        Bark and WaZOO file/update requests
  314.           XB        Bark file/update requests,  WaZOO file 
  315.                     requests
  316.           XP        Bark file/update requests
  317.           XR        Bark and WaZOO file requests
  318.           XW        WaZOO file requests
  319.  
  320.  
  321.      The following flag defines gateways to other domains 
  322.      (networks).
  323.  
  324.           Flag      Meaning
  325.  
  326.           Gx        Gateway to domain 'x' where 'x` is  a value 
  327.                     from 'A' to 'Z` or `1' to '9'.
  328.  
  329.                     NOTE:  Valid values of 'x' are assigned by 
  330.                     the FidoNet International Coordinator. 
  331.                     Current valid values of 'x' may be found in 
  332.                     the notes at the end of the current FidoNet 
  333.                     nodelist.
  334.  
  335.  
  336.      The following  flags define the dedicated mail periods 
  337.      supported. They have the form "#nn" or !nn where nn is the 
  338.      UTC hour the mail period begins, # indicates Bell 212A 
  339.      compatibility and ! indicates incompatibility with Bell 
  340.      212A.
  341.  
  342.           Flag      Meaning
  343.  
  344.           #02       Zone 2 mail hour (02:30 - 03:30 UTC)
  345.           #09       Zone 1 mail hour (09:00 - 10:00 UTC)
  346.           #18       Zone 3 mail hour (18:00 - 19:00 UTC)
  347.  
  348.                     NOTE:  When applicable,  the mail period 
  349.                     flags may be strung together with no 
  350.                     intervening commas,  eg.  "#02#09".  Only 
  351.                     mail hours other than that standard within a 
  352.                     node's zone should be given.  Since 
  353.  
  354.  
  355.                               Page 6
  356.                     observance of mail hour within one's zone is 
  357.                     mandatory,  it should not be indicated.
  358.  
  359.  
  360.      The following flag defines user-specific values. If 
  361.      present,  this flag MUST be the last flag present in a 
  362.      nodelist entry.
  363.  
  364.           Flag      Meaning
  365.  
  366.           Ux..x     A user-specified string,  which  may  contain 
  367.                     any character except blanks.  This string may 
  368.                     contain one to thirty-two characters of 
  369.                     information that may be used to add  
  370.                     user-defined data to a specific nodelist 
  371.                     entry.  This string may not contain any flags 
  372.                     already defined in this document.  FTSC makes 
  373.                     no guarantee that it will not assign an 
  374.                     unused letter/number to new flags.  Certain 
  375.                     unused flags are already reserved - see the 
  376.                     list below.
  377.  
  378.  
  379.      The following flags are reserved for future planned 
  380.      expansion of existing flags:  Mx and Px (where 'x' is any 
  381.      valid character).  This is not meant to imply that FTSC will 
  382.      not use any to use any other character sequences,  and FTSC 
  383.      reserves the right to assign any flag deemed necessary.
  384.  
  385.  
  386.      The FTSC recognizes that the FidoNet International 
  387.      Coordinator is the ultimate authority over what appears in 
  388.      the FidoNet nodelist. Also,  the FTSC is by definition a 
  389.      deliberative body,  and adding or changing a flag may take a 
  390.      considerable amount of time.  Therefore,  the FidoNet 
  391.      International Coordinator may temporarily make changes or 
  392.      additions to the flags as defined in this document.  The 
  393.      FidoNet International Coordinator will then consult with  
  394.      the FTSC over the changes needed to this document to reflect 
  395.      these temporary changes.
  396.  
  397.  
  398.  
  399.      The following are examples of nodelist data lines:
  400.  
  401. Host,102,SOCALNET,Los_Angeles_CA,John_Doe,1-213-874-9484,2400,XP
  402. ,101,Rainbow_Data,Culver_City_CA,Don_Brauns,1-213-204-2996,2400,
  403.  
  404.  
  405.  
  406. With more than a thousand nodes,  the nodelist,  even in archive 
  407. form,  is a substantial document (or file).  Since distribution 
  408. is via electronic file transfer,  this file is NOT routinely  
  409. distributed.  Instead,  when a new nodelist is prepared,  it is 
  410. compared with the previous week's nodelist,  and a file 
  411. containing only the differences is created and distributed.
  412.  
  413.  
  414.                               Page 7
  415. The distribution file,  called NODEDIFF.nnn,  where nnn is the 
  416. day-of-year of publication,  is actually an editing script which 
  417. will transform the previous week's nodelist into the current 
  418. nodelist.  A definition of its format follows:
  419.  
  420. The first line of NODEDIFF.nnn is an exact copy of the first line 
  421. of LAST WEEK'S nodelist.  This is used as a first-level  
  422. confidence check to insure that the right file is being edited.  
  423. The second and subsequent lines are editing commands and editing 
  424. data.
  425.  
  426. There are three editing commands and all have the same format:
  427.  
  428.           <command><number>
  429.  
  430.      <command> is a 1-letter command;  A,  C,  or D.  <number> is 
  431.      a decimal number greater than zero,  and defines the number 
  432.      of lines to be operated on by the command.  Each command 
  433.      appears on a line by itself.  The commands have the 
  434.      following meanings:
  435.  
  436.      Ann - Add the following nn lines to the output file.
  437.  
  438.      Cnn - Copy nn unchanged lines from the input to the output 
  439.      file.
  440.  
  441.      Dnn - Delete (or skip) nn lines from the input file.
  442.  
  443. The following  illustrate how the first few lines of NODEDIFF.213 
  444. might look:
  445.  
  446.      ;A Friday, July 25, 1986 -- Day number 206 : 27712
  447.      D2
  448.      A2
  449.      ;A Friday, August 1, 1986 -- Day number 213 : 05060
  450.      ;A
  451.      C5
  452.  
  453. This fragment illustrates all three editing commands.  The first 
  454. line is the first line from NODELIST.206.  The next line says 
  455. "delete the first two lines" from NODELIST.206.  These are the 
  456. identification line and the line following it.  The next command 
  457. says "add the next two lines" to NODELIST.213.  The two data 
  458. lines are followed by a command which says "copy five unchanged  
  459. lines" from NODELIST.206 to NODELIST.213.  Notice that the first  
  460. line added will ALWAYS contain the new nodelist's CRC.
  461.  
  462. Since only the differences will be distributed,  it is important 
  463. to insure the accuracy of the newly created nodelist.  This is 
  464. the function of the CRC mentioned above.  It is sufficient for a 
  465. program designed to  perform the above edits to pick the CRC 
  466. value from the first line added to the output file,  then compute 
  467. the CRC of the rest of the output file.  If the two CRCs do not 
  468. agree,  one of the input files has been corrupted.  If they do 
  469. agree,  the probability is very high (but not 100%) that the 
  470. output file is accurate.
  471.  
  472.  
  473.                               Page 8
  474. For actual  distribution,  NODEDIFF.nnn is packed into an archive 
  475. file named NODEDIFF.Ann, where nn are the last two digits of 
  476. day-of-year.
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.                               Page 9
  532.  
  533.