home *** CD-ROM | disk | FTP | other *** search
-
- FSC-0027
-
- The Distribution Nodelist
-
- by Ben Baker, 1:100/76
- updated by Rick Moore, 1:115/333
- December 4, 1988
-
-
- Copyright 1986, 1987, 1988 International FidoNet Association. All
- rights reserved. Duplication and or distribution permitted for
- non-commercial purposes only.
-
- This document is a proposed update for the document known under
- the names of FSC002-4, FSC-0002, and FTS-0002.
-
- This document defines the format and content of the nodelist for
- the Public FidoNet Network (PFN) as published each Friday.
-
- The PFN is an international network of independently owned
- electronic mail systems, most with interlocking electronic
- bulletin board systems. The distribution nodelist, or simply
- "nodelist," is the glue which holds the network together. It is
- the PFN's "phone book" and it defines the top-level network
- structure.
-
- The nodelist is published as an ASCII text file named
- NODELIST.nnn, where nnn is the day-of-year of the Friday
- publication date. This file is packed into an archive file (by
- System Enhancement Associates' ARC utility) named NODELIST.Ann,
- where nn are the last two digits of day-of-year.
-
- A companion file, COORD.nnn, lists the coordinators of the
- various regions and local networks which constitute the PFN. This
- file may be created from NODELIST.nnn by the program COORD.EXE,
- distributed by many PFN bulletin boards.
-
- As stated above, NODELIST.nnn is an ASCII text file. It contains
- two kinds of lines, comment lines and data lines. Each line is
- terminated with an ASCII carriage return and line feed character
- sequence, and contains no trailing white-space (spaces, tabs,
- etc.). The file is terminated with an end-of-file character (EOF
- = decimal character value 26).
-
- Comments lines contain a semicolon (;) in the first character
- position followed by zero or more alphabetic characters called
- "interest flags." A program which processes the nodelist may use
- comment interest flags to determine the disposition of a comment
- line. The remainder of a comment line (with one exception,
- treated below) is free-form ASCII text. There are five interest
- flags defined as follows:
-
- ;S This comment is of particular interest to Sysops.
-
- ;U This comment is of particular interest to BBS users.
-
-
-
- Page 1
- ;F This comment should appear in any formatted "Fido List."
-
- ;A This comment is of general interest (shorthand for ;SUF).
-
- ;E This comment is an error message inserted by the nodelist
- generating program MakeNL.
-
- ; This comment may be ignored by a nodelist processor.
-
- The first line of a nodelist is a special comment line containing
- identification data for the particular edition of the nodelist.
- The following is an example of the first line of a nodelist:
-
- ;A FidoNet Nodelist for Friday, July 3, 1987 --
- Day number 184 : 15943
-
- This line contains the general interest flag, the day, date,
- and day-of-year number of publication, and ends with a 5-digit
- decimal number with leading zeros, if necessary. This number is
- the decimal representation of a check value derived as follows:
-
- Beginning with the first character of the second line, a
- 16-bit cyclic redundancy check (CRC) is calculated for the
- entire file, including carriage return and line feed
- characters, but not including the terminating EOF
- character. The check polynomial used is the same one used
- for many file transfer protocols:
-
- 2**16 + 2**12 + 2**5 + 2**0
-
- The CRC may be used to verify that the file has not been edited.
- The importance of this will become evident in the discussion of
- NODEDIFF, below. CRC calculation techniques are well documented
- in the literature, and will not be treated further here.
-
- The content of the remaining comments in the nodelist are
- intended to be informative. Beyond the use of interest flags for
- distribution, a processing program need not have any interest in
- them.
-
- A nodelist data line contains eight variable length "fields"
- separated by commas (,). No space characters are allowed in a
- data line, and underscore characters are used in lieu of spaces.
- The following discussion defines the contents of each field in a
- data line.
-
-
- Field 1: Keyword
-
- The keyword field may be empty, or may contain one of the
- following:
-
- Zone --
- Begins the definition of a geographic zone and define
- its coordinator. All the data lines following a line
- with the "Zone" keyword down to, but not including the
-
-
-
- Page 2
- next occurrence of a "Zone" keyword, are regions,
- nets and nodes within the defined zone.
-
- Region --
- Begins the definition of a geographic region and
- defines its coordinator. All the data lines following
- a line with the "Region" keyword down to, but not
- including the next occurrence of a "Region" or "Host"
- keyword, are independent nodes within the defined
- region.
-
- Host --
- Begins the definition of a local network and defines
- its host. All the data lines following a line with the
- "Host" keyword down to, but not including the next
- occurrence of a "Region" or "Host" keyword, are local
- nodes, members of the defined local network. The
- difference between a region and a local network is in
- the routing of messages. A message addressed to a
- member of a region is sent direct to the addressee,
- while a message to a member of a local network is sent
- to the network host.
-
- Hub --
- Begins the definition of a routing subunit within a
- multilevel local network. The hub is the routing
- focal point for nodes listed below it until the next
- occurrence of a "Hub", "Region", "Host", or "Zone"
- keyword. The hub entry MUST be a redundant entry,
- with a unique number, for one of the nodes listed
- below it. This is necessary because some nodelist
- processors eliminate these entries in all but the local
- network.
-
- Pvt --
- Defines a private node with unlisted number. Private
- nodes are only allowed as members of local networks.
-
- Hold --
- Defines a node which is temporarily down. Mail may
- be sent to it and is held by its host or coordinator.
-
- Down --
- Defines a node which is not operational. Mail may NOT
- be sent to it. This keyword may not be used for
- longer than two weeks on any single node, at which
- point the "down" node is to be removed from the
- nodelist.
-
- <empty> --
- Defines a normal node entry.
-
- Field 2 - Net/Node number
-
-
-
-
-
- Page 3
- This field contains only numeric digits and is a number in
- the range of 0 to 32767. If the line had the "Zone",
- "Region", or "Host" keyword, the number is the zone,
- net, or region number, and the node has an implied node
- number of 0. Otherwise, the number is the node number.
- The zone number, region or net number, and the node
- number, taken together, constitutes a node's FidoNet
- address.
-
- Zone numbers must be unique. Region or net numbers must be
- unique within their zone. Other numbers must be unique
- within their respective units.
-
- Field 3 - Node name
-
- This field may contain any characters except commas and
- spaces. Underscores are used to represent spaces. This is
- the name by which the node is known.
-
- Field 4 - Location
-
- This field may contain any characters except commas and
- spaces. Underscores are used to represent spaces. This
- field contains the location of the node. In the USA it is
- typically "City_ST where ST is the standard two-letter
- abbreviation for the state.
-
- Field 5 - Sysop name
-
- This field may contain any characters except commas and
- spaces. Underscores are used to represent spaces. This is
- the name of the system operator.
-
- Field 6 - Phone number
-
- This field contains at least three and usually four numeric
- subfields separated by dashes (-). The fields are country
- code (1 for USA and Canada), city or area code, exchange
- code, and number. The various parts of the phone number
- are frequently used to derive cost and routing information,
- as well as what number is to be dialed. A typical example
- of the data in a phone number field is 1-800-555-1212,
- corresponding to country 1 (USA), area 800 (inward WATS),
- exchange 555, and number 1212.
-
- Alternatively, this field may contain the notation
- "-Unpublished-" in the case of a private node. In this
- case, the keyword "Pvt" must appear on the line.
-
- Field 7 - Baud rate
-
- This field contains one of the values: 300, 1200, 2400,
- or 9600, and defines the maximum baud rate supported by the
- node.
-
- Field 8 - Flags
-
-
- Page 4
- This optional field contains data about the specific
- operation of the node, such as file requests, modem
- protocol supported, etc. Any text following the sixth
- comma on a data line is taken collectively to be the flags
- field. The required format is zero or more subfields,
- separated by commas, consisting of a flag, possibly
- followed by a value.
-
-
- The following flags define special operating conditions:
-
- Flag Meaning
-
- CM Node accepts mail 24 hours a day
- MO Node does not accept human callers
-
-
- The following flags define modem protocols supported:
-
- Flag Meaning
-
- CT1 CCITT V21 300 bps
- CT2 CCITT V23 1200/75 split bps rate
- CT3 CCITT V22 1200 bps full duplex
- HAY Hayes V9600
- HST USR Courier HST
- MAX Microcom AX/96xx series
- PEP Telebit TrailBlazer
- V32 CCITT V32
- V33 CCITT V33
- V34 CCITT V34
-
- NOTE: Many V22 modems also support Bell 212A.
-
- If no modem flag is given, Bell 212A is assumed for
- 1200 bps systems, CCITT V22bis is assumed for 2400 bps
- systems.
-
-
- The following flags define type of error correction
- available. A separate error correction flag should not be
- used when the error correction type can be determined by the
- modem flag. For instance, a modem flag of HST implies MNP.
-
- Flag Meaning
-
- MNP Microcom Networking Protocol error correction
- V42 LAP-M error correction w/fallback to MNP
-
-
- The following flags define the type(s) of compression of
- mail packets supported.
-
- Flag Meaning
-
-
-
- Page 5
- MN No compression supported
-
- NOTE: The only compression method supported
- by FidoNet at this time is SEA's ARC, as
- defined by the specs for ARCMail 0.6. When
- other types of mail compression are adopted,
- indicators for them will be added. For now,
- the absence of a compression flag indicates
- that ARCMail 0.6 compression is supported.
-
-
- The following flags indicate the types of file/update
- requests supported.
-
- Flag Meaning
-
- XA Bark and WaZOO file/update requests
- XB Bark file/update requests, WaZOO file
- requests
- XP Bark file/update requests
- XR Bark and WaZOO file requests
- XW WaZOO file requests
-
-
- The following flag defines gateways to other domains
- (networks).
-
- Flag Meaning
-
- Gx Gateway to domain 'x' where 'x` is a value
- from 'A' to 'Z` or `1' to '9'.
-
- NOTE: Valid values of 'x' are assigned by
- the FidoNet International Coordinator.
- Current valid values of 'x' may be found in
- the notes at the end of the current FidoNet
- nodelist.
-
-
- The following flags define the dedicated mail periods
- supported. They have the form "#nn" or !nn where nn is the
- UTC hour the mail period begins, # indicates Bell 212A
- compatibility and ! indicates incompatibility with Bell
- 212A.
-
- Flag Meaning
-
- #02 Zone 2 mail hour (02:30 - 03:30 UTC)
- #09 Zone 1 mail hour (09:00 - 10:00 UTC)
- #18 Zone 3 mail hour (18:00 - 19:00 UTC)
-
- NOTE: When applicable, the mail period
- flags may be strung together with no
- intervening commas, eg. "#02#09". Only
- mail hours other than that standard within a
- node's zone should be given. Since
-
-
- Page 6
- observance of mail hour within one's zone is
- mandatory, it should not be indicated.
-
-
- The following flag defines user-specific values. If
- present, this flag MUST be the last flag present in a
- nodelist entry.
-
- Flag Meaning
-
- Ux..x A user-specified string, which may contain
- any character except blanks. This string may
- contain one to thirty-two characters of
- information that may be used to add
- user-defined data to a specific nodelist
- entry. This string may not contain any flags
- already defined in this document. FTSC makes
- no guarantee that it will not assign an
- unused letter/number to new flags. Certain
- unused flags are already reserved - see the
- list below.
-
-
- The following flags are reserved for future planned
- expansion of existing flags: Mx and Px (where 'x' is any
- valid character). This is not meant to imply that FTSC will
- not use any to use any other character sequences, and FTSC
- reserves the right to assign any flag deemed necessary.
-
-
- The FTSC recognizes that the FidoNet International
- Coordinator is the ultimate authority over what appears in
- the FidoNet nodelist. Also, the FTSC is by definition a
- deliberative body, and adding or changing a flag may take a
- considerable amount of time. Therefore, the FidoNet
- International Coordinator may temporarily make changes or
- additions to the flags as defined in this document. The
- FidoNet International Coordinator will then consult with
- the FTSC over the changes needed to this document to reflect
- these temporary changes.
-
-
-
- The following are examples of nodelist data lines:
-
- Host,102,SOCALNET,Los_Angeles_CA,John_Doe,1-213-874-9484,2400,XP
- ,101,Rainbow_Data,Culver_City_CA,Don_Brauns,1-213-204-2996,2400,
-
-
-
- With more than a thousand nodes, the nodelist, even in archive
- form, is a substantial document (or file). Since distribution
- is via electronic file transfer, this file is NOT routinely
- distributed. Instead, when a new nodelist is prepared, it is
- compared with the previous week's nodelist, and a file
- containing only the differences is created and distributed.
-
-
- Page 7
- The distribution file, called NODEDIFF.nnn, where nnn is the
- day-of-year of publication, is actually an editing script which
- will transform the previous week's nodelist into the current
- nodelist. A definition of its format follows:
-
- The first line of NODEDIFF.nnn is an exact copy of the first line
- of LAST WEEK'S nodelist. This is used as a first-level
- confidence check to insure that the right file is being edited.
- The second and subsequent lines are editing commands and editing
- data.
-
- There are three editing commands and all have the same format:
-
- <command><number>
-
- <command> is a 1-letter command; A, C, or D. <number> is
- a decimal number greater than zero, and defines the number
- of lines to be operated on by the command. Each command
- appears on a line by itself. The commands have the
- following meanings:
-
- Ann - Add the following nn lines to the output file.
-
- Cnn - Copy nn unchanged lines from the input to the output
- file.
-
- Dnn - Delete (or skip) nn lines from the input file.
-
- The following illustrate how the first few lines of NODEDIFF.213
- might look:
-
- ;A Friday, July 25, 1986 -- Day number 206 : 27712
- D2
- A2
- ;A Friday, August 1, 1986 -- Day number 213 : 05060
- ;A
- C5
-
- This fragment illustrates all three editing commands. The first
- line is the first line from NODELIST.206. The next line says
- "delete the first two lines" from NODELIST.206. These are the
- identification line and the line following it. The next command
- says "add the next two lines" to NODELIST.213. The two data
- lines are followed by a command which says "copy five unchanged
- lines" from NODELIST.206 to NODELIST.213. Notice that the first
- line added will ALWAYS contain the new nodelist's CRC.
-
- Since only the differences will be distributed, it is important
- to insure the accuracy of the newly created nodelist. This is
- the function of the CRC mentioned above. It is sufficient for a
- program designed to perform the above edits to pick the CRC
- value from the first line added to the output file, then compute
- the CRC of the rest of the output file. If the two CRCs do not
- agree, one of the input files has been corrupted. If they do
- agree, the probability is very high (but not 100%) that the
- output file is accurate.
-
-
- Page 8
- For actual distribution, NODEDIFF.nnn is packed into an archive
- file named NODEDIFF.Ann, where nn are the last two digits of
- day-of-year.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Page 9
-
-