FidoNet
|
FidoNet is an inter-connecting file and message transport system that was used by bulletin board systems. The network still exists today, but is dwindling in size and organization, due to the lack of callers to BBS systems that it was developed to serve, and the closing of most of those systems as a result.
FidoNet was originally founded in 1984 by Tom Jennings of San Francisco, California as a means to network together BBSes that used his own "Fido" BBS software. Over time, other BBS software was independently adapted to support the relevant FidoNet protocols, and the network became a popular means for hobbyist computer users to communicate. FidoNet was non-commercial, and mostly popular amongst hobbyist computer users, many of them hackers and radio amateurs, before the Internet became accessible and inexpensive.
Contents |
Fidonet organizational structure
Fidonet is goverened in a hierarchical structure according to FidoNet policy [1] (http://www.writebynight.com/policy4.txt), with designated coordinators at each level to manage the administration of fidonet nodes and resolve disputes between members. Network coordinators are responsible for managing the individual nodes within their area, usually a city or similar sized area. Regional coordinators are responsible for managing the administration of the network coordinators within their region, typically the size of a state, or small country. Zone coordinators are responsible for managing the administration of all of the regions within their zone. The world is divided into six zones, the coordinators of which elect one of themselves to be the "International Coordinator" of FidoNet.
Disputes
Recently, as the size and extent of FidoNet has dwindled, its political infrastructure has become fragmented at the higher levels. This has, in part, been due to disputes resulting from the vast majority of remaining FidoNet nodes being located in Zone 2 (Europe). A particular dispute arose in 2004 when Ward Dossche, then International Coordinator (IC) as well as the Zone 2 Coordinator, refused to acknowledge a vote by other Zone Coordinators to have him replaced by Malcolm Miles, then the Zone 3 Coordinator. Dossche argued that because 89% of FidoNet nodes were within Zone 2, his own vote should be worth 89% of the collective and therefore decisive over the other five coordinators [2] (http://www.was-ist-fido.de/doks/fnews/fido2120.txt). As of June 2005, there had been no resolution to the multiple IC issue.
Technical structure
FidoNet was historically designed to use modem-based dial-up access between bulletin board systems, and much of its policy and structure reflected this.
The FidoNet system officially referred only to transfer of "Netmail"—the individual private messages between people using bulletin boards—including the protocols and standards with which to support it. A netmail message would contain the name of the person sending, the name of the intended recipient, and the respective FidoNet addresses of each. The FidoNet system was responsible for routing the message from one system to the other, with the bulletin board software on each end being responsible for ensuring that only the intended recipient could read it. Due to the hobbyist nature of the network, any privacy between sender and recipient was only the result of politeness from the owners of the FidoNet systems involved in the mail's transfer. It was common, however, for system operators to reserve the right to review the content of mail that passed through their system.
Despite FidoNet's focus on Netmail, several other protocols for transferring other kinds of data were built on top of FidoNet, and were often referred to as being part of it. The most popular of these was Echomail, comparable with Usenet-like newsgroups, for public and open discussions. Other systems allowed for the automated distrubution of files, and transmission of data for inter-BBS games. Such protocols typically worked by using automated tools to package information, attach it to Netmail messages for transfer via FidoNet, and unpackage the information on receipt.
Routing of fidonet mail
In a theoretical situation, a node would normally forward messages to a hub. The hub, acting as a distribution point for mail, might then send the message to the Net Coordinator. From there it may be sent through a Regional Coordinator, or to some other system specifically set up for the function. Mail to other zones might be sent through a Zone Gate. For example, a fidonet message might follow the path:
- 1:170/918.42 (point) to 1:170/918 (node) to 1:170/900 (hub) to 1:170/0 (net coordinator) to 1:19/0 (region coordinator) to 1:1/0 (zone coordinator). From there, it was distributed 'down stream' to the destination node(s).
Part of the objective behind the formation of local nets was to implement cost reduction plans by which all messages would be sent to one or more hubs or hosts in compressed form (ARC was nominally standard, PKZIP was also very widely used); one toll call could then be made during off-peak hours to exchange entire message-filled archives with an out-of-town uplink for further redistribution.
In practice, as FidoNet structure allowed for any node to connect directly to any other, node operators would sometimes form their own toll-calling arrangements on an ad-hoc basis, allowing for a balance between collective cost saving and timely delivery. For instance, if one node operator in a network offered to make regular toll calls to a particular system elsewhere, other operators might arrange to forward all of their mail destined for the remote system, and those near it, to the local volunteer. Operators within individual networks would sometimes have cost-sharing arrangements, but it was also common for people to volunteer to pay for regular toll calls either out of generosity, or to build their status in the community.
This ad-hoc system was particularly popular with networks that were built on top of FidoNet. Echomail, for instance, often involved relatively large file transfers due to its popularity. If official FidoNet distrubutors refused to transfer Echomail due to additional toll charges, other node operators would sometimes volunteer. In such cases, echomail messages would be routed to the volunteers' systems instead.
As the FidoNet system was best adapted to an environment in which local telephone service was inexpensive and long-distance calls (or intercity data transfer via packet-switched networks) artificially costly, it fared somewhat poorly in countries such as Japan, where local lines are expensive. Fidonet was only moderately successful in countries such as France, where tolls on local calls and competition with Minitel or other data networks traditionally limited its growth.
Geographic structure
Fidonet was politically organized into a tree structure, with different parts of the tree electing their respective coordinators. The Fidonet hierarchy consists of Zones, Regions, Networks, Nodes and Points broken down more-or-less geographically.
The highest level was the Zone which was largely continent based: Zone 1 was North America, Zone 2 was Europe, Zone 3 was Australia, Zone 4 was South America, Zone 5 was Africa and Zone 6 was Asia (excluding Russia, which was listed in Zone 2). Each zone is broken down into regions, which are broken down into nets, which consisted of individual nodes. Zones 7-4095 were, and often still are used for "othernets"; groupings of BBSes which use Fido-compatible software to carry their own independent message areas without being in any way controlled by FidoNet's political structure. Using un-used zone numbers would ensure that each network would have a unique set of addresses, avoiding potential routing conflicts and ambiguities for systems that belonged to more than one network.
Any given node could also support points, if the node operator decided to do so. A "point" was a system that had a unique address derived from its parent node, but without the point's owner being an official member of FidoNet. Thus, the sysop who provided a fidonet feed to the point operator would officially be responsible for all mail originating from that point, as far as the remainder of the FidoNet network was concerned. Points were popular among users who did not operate BBS's, but wanted the independence of being able to operate their own message bases and mail reading software.
Fidonet addresses
Fidonet addresses explicitly consisted of a Zone number, a Network number (or region number), and a Node number. The Fidonet structure also allowed for semantic designation of region and hub status for particular nodes, but this status was not directly indicated by the address alone.
For example, consider a node located in Tulsa, Oklahoma, USA with an assigned node number is 918, located in Zone 1 (North America), Region 19, and Network 170. The full Fidonet address would be 1:170/918. The region was for administrative purposes, and was only part of the address if the node was listed directly underneath the Regional Coordinator, rather than one of the networks that were used to divide the region further. If the system supported points, each point would have its number appended as a suffix, such as 1:170/918.42.
Fidonet policy required that each Fidonet system maintain a nodelist of every other member system. Information on each node included the name of the system or BBS, the name of the node operator, the geographic location, the telephone number, and software capabilities. The nodelist was be updated weekly, to avoid unwanted calls to nodes that had shut down, with their phone numbers possibly having been reassigned for voice use by the respective telephone company.
To accomplish regular updates, coordinators of each network maintained the list of systems in their local areas. The lists were forwarded back to the International Coordinator via automated systems on a regular basis. The International Coordinator would then compile a new nodelist, and generate the list of changes (nodediff) to be distributed for node operators to apply to their existing nodelist.
Technical specifications
Fidonet contained several technical specifications for compatibility between systems. The most basic of all was FTS-0001, with which all fidonet systems were required to comply as a minimal requirement. FTS-0001 defined:
- Handshaking - the protocols used by mailer software to identify each other and exchange meta information about the session.
- Transfer protocol (XMODEM) - the protocols to be used for transferring files containing fidonet mail between systems.
- Message format - the standard format for fidonet messages during the time which they were exchanged between systems.
Other specifications that were commonly used provided for echomail, different transfer protocols and handshake methods (e.g.: Yoohoo/Yoohoo2u2, EMSI), file compression, nodelist format, transfer over reliable connections such as the Internet (Binkp), and other aspects.
Zone mail hour
Since computer bulletin boards historically used the same telephone lines for transferring mail as were used for dial-in human users of the BBS, FidoNet policy dictated that at least one designated line of each FidoNet node must be available for accepting mail from other FidoNet nodes during a particular hour of each day.
"Zone Mail Hour", as it was named, varied depending on the geographic location of the BBS, and was designated to occur during the early morning. The exact hour varied depending on the time zone, and any BBS with only one telephone line was required to reject human callers. In practice, particularly in later times, most FidoNet systems tended to accept mail at any time of day when the phone line was not busy.
Fidonet deployments
Although monolithic software that encompassed all required functions in one package was available, most FidoNet deployments were designed in a modular fashion. A typical deployment would involve several applications that would communicate through shared files and directories, and switch between each other through carefully designed scripts or batch files.
Mailer software was responsible for transferring files and messages between systems, as well as passing control to other applications, such as the BBS software, at appropriate times. The mailer would initially answer the phone and, if necessary, deal with incoming mail via FidoNet transfer protocols. If the mailer answered the phone and a human caller was detected rather than other mailer software, the mailer would exit, and pass control to the BBS software, which would then initialise for interaction with the user. When outgoing mail was waiting on the local system, the mailer software would attempt to send it from time to time by dialing and connecting to other systems who would accept and route the mail further. Due to the costs of toll calls which often varied between peak and off-peak times, mailer software would usually allow its operator to configure the optimal times in which to attempt to send mail to other systems.
BBS software was used to interact with human callers to the system. BBS software would allow dial-in users to use the system's message bases and write mail to others, locally or on other BBS's. Mail directed to other BBS's would later be routed and sent by the mailer, usually after the user had finished using the system. BBS's would often allow users to exchange files, play games, and interact with other users in a variety of ways.
A scanner/tosser application would normally be invoked when a BBS user had entered a new fidonet message that needed to be sent, or when a mailer had received new mail to be imported into the local messages bases. This application would be responsible for handling the packaging of incoming and outgoing mail, moving it between the local system's message bases and the mailer's inbound and outbound directories. The scanner/tosser application would generally be responsible for basic routing information, determining which systems to forward mail to.
In later times, message readers that were independent of BBS software were also developed. Often the System Operator of a particular BBS would use a devoted message reader, rather than the BBS software itself, to read and write FidoNet and related messages. In some cases FidoNet nodes, or more often FidoNet points, had no public bulletin board attached, and existed only for the transfer of mail for the benefit of the node's operator.
The original Fido BBS software, and much other original fidonet-supporting software, is no longer functional on modern systems. This is for several reasons, including problems related to the Y2K bug. In many cases, the original authors have left the BBS or shareware community, and the software, much of which was closed source, has been rendered abandonware. Alternative software had been designed to be interoperable with the same standards, however, and thus the network is still accessible.
FidoNet availability
While the use of Fidonet has dropped dramatically compared with its use up to the mid-1990s, it is still particularly popular in Russia. Some BBS's, including those that are now available for users with Internet connections via telnet, also retain their Fidonet netmail and echomail feeds.
Some of FidoNet's echomail conferences are available via gateways with the Usenet news hierarchy. There are also mail gates for exchanging messages between Internet and FidoNet. Widespread net abuse and e-mail spam on the Internet side has caused some gateways (such as the former 1:1/31 IEEE fidonet.org gateway) to become unusable or cease operation entirely.
External links
- International FidoNet Home Page (http://www.fidonet.org/)
- FidoNews, a weekly newsletter (http://www.fidonews.org/)
- FidoNet Technical Standards Committee Home Page (http://www.ftsc.org/)
- FidoNet Echomail Archive (http://fidonet.sensationcontent.com/)
- International Echolist Home Page (http://www.tlchost.net/echolist/)
- Alternate Fidonet Home Page (http://www.fidonet.us/)
- Fidonet Parody Page (http://www.fidonet.ro/)
- Tom Jennings' homepage (http://www.wps.com/)
- IP-only 2:5004/75 fidonet node site. Points wanted (http://f75.n5004.z2.fidonet.net/)pt:FidoNet
da:FidoNet de:FidoNet fi:FidoNet it:FidoNet hu:FidoNet nl:FidoNet pl:Fidonet ru:FidoNet