Econet
Econet was Acorn Computers's low-cost local area network system, intended for use by schools and small businesses.
Econet upgrade manuals | |
Developer | Acorn Computers |
---|---|
Manufacturer | Acorn Computers |
Type | Computer networking |
Generation | 8-bit |
Release date | 1981 |
Operating system | MOS |
Econet software was mostly superseded by AUN, though some suppliers were still offering bridging kits to interconnect old and new networks.[1][2] In turn, AUN was superseded by the Acorn Access+ software.[3] Support for Econet was removed from the Linux kernel at version 3.5 in 2012, citing lack of use and privilege escalation vulnerabilities.[4][5]
Implementation history
Econet was first developed for the Acorn Atom and Acorn System 2/3/4 computers in 1981. Also in that year the BBC Microcomputer was released, initially with provision for floppy disc and Econet interfaces but without the necessary hardware fitted, intended to be supplied as future upgrades.
In 1982, the Tasmania Department of Education requested a tender for the supply of personal computers to their schools. Earlier that year Barson Computers, Acorn's Australian computer distributor, had released the BBC Microcomputer with floppy disc storage as part of a bundle. Acorn's Hermann Hauser and Chris Curry agreed to allow it to be also offered with Econet fitted, as they had previously done with the disc interface. As previously with the Disc Filing System, they stipulated that Barson would need to adapt the network filing system from the System 2 without assistance from Acorn. Barson's engineers applied a few modifications to fix bugs on the early BBC Micro motherboards, which were adopted by Acorn in later releases. With both floppy disc and networking available, the BBC Micro was approved for use in schools by all state and territory education authorities in Australia and New Zealand, and quickly overtook the Apple II as the computer of choice in private schools.
With no other supporting documentation available, the head of Barson's Acorn division, Rob Napier, published Networking with the BBC Microcomputer,[6] the first reference documentation for Econet.
Econet was officially released for the BBC Micro in the UK in 1984, and it later became popular as a networking system for the Acorn Archimedes. Econet was eventually supported on all post-Atom Acorn machines, apart from the Electron (except in Australia and New Zealand where Barson Computers built their own Econet daughter board), the A3010, and the eventually-cancelled Phoebe 2100.
Econet was supported by Acorn MOS, RISC OS and RISC iX.[7] Acorn once received an offer from Commodore International to license the technology, which it refused.[8]
An "Ecolink" ISA interface card for IBM-compatible PCs was available.[9] It used Microsoft's MS-NET Redirector for MS-DOS to provide file and printer sharing via the NET USE command.
Subsequent development
With the falling prices and widespread adoption of IP networking in the early 1990s, Acorn Universal Networking (AUN), an implementation of Econet protocols and addressing over TCP/IP, was developed to provide legacy support for Econet on Ethernet-connected machines.[10]
The Econet protocol and AUN were also supported by the Linux kernel.
Supported systems
Econet was supported by a large number of different computer and server systems, produced both by Acorn and by other companies. As well as Acorn's MOS and RISC OS these also used other operating systems such as CP/M, DR-DOS, Unix or Microsoft Windows.
The Econet API includes an Econet_MachinePeek
command, which can be used by software to determine if a machine is present on the network and its hardware platform. The machine-type codes which can be returned by that command[11][12]
are a useful indication of the range of hardware that offered Econet as their primary networking function or as an option:
Code | Machine type |
---|---|
&0000 | Reserved |
&0001 | Acorn BBC Micro Computer (OS 1 or OS 2) |
&0002 | Acorn Atom |
&0003 | Acorn System 3 or System 4 |
&0004 | Acorn System 5 |
&0005 | Acorn Master 128 (OS 3) |
&0006 | Acorn Electron (OS 0) |
&0007 | Acorn Archimedes (OS 6) |
&0008 | Reserved for Acorn |
&0009 | Acorn Communicator |
&000A | Acorn Master 128 Compact Econet Terminal |
&000B | Acorn Filestore |
&000C | Acorn Master 128 Compact (OS 5) |
&000D | Acorn Ecolink card for Personal Computers |
&000E | Acorn Unix Workstation |
&000F to &FFF9 | Reserved (see below for later allocations) |
&FFFA | SCSI Interface |
&FFFB | SJ Research IBM PC Econet interface |
&FFFC | Nascom 2 |
&FFFD | Research Machines 480Z |
&FFFE | SJ Research File Server |
&FFFF | Z80 CP/M |
The manual[12] includes an assembly language program to report a machine type, software version and release numbers.
An update to the list in volume 5A of the PRM[13] lists the following additions to the table above:
Code | Machine type |
---|---|
&000F | RISC PC architecture |
&0010 to &FFF7 | Reserved |
&FFF8 | SJ Research GP server |
&FFF9 | SJ Research 80386 UNIX |
Physical and data-link layers
1 | Data (+ve) |
2 | Ground |
3 | Clock (+ve) |
4 | Data (-ve) |
5 | Clock (-ve) |
Econet is a five-wire bus network. One pair of wires is used for the clock, one pair for data, and one wire as a common ground. Signalling used the RS-422 5-volt differential standard, with one bit transferred per clock cycle. Unshielded cable was used for short lengths, and shielded cable for longer networks. The cable was terminated at each end to prevent reflections and to guarantee high logic levels when the bus was undriven.
The original connectors were five-pin circular 180° DIN types. On later 32-bit machines (notably the A3020 and A4000), the Econet connection was made via five of the pins on their 15-pin D-type Network port, which could also accept MAUs (Media Attachment Units) to allow other types of network to be connected via the same socket. This port looks similar to an AUI port, but is not compatible.
Each Econet interface was controlled by a Motorola MC68B54 Advanced Data Link Controller (ADLC) chip, which handled electrical transmission/reception, frame checksumming and collision detection.[14]
Network and transport layers
Econet used a connectionless transmission model, similar to the current UDP, with no checksumming or error correction at this layer. Each packet had a four byte header consisting of:
- The destination station number
- The destination network number
- The source station number
- The source network number
A single data transmission consisted of four frames, each with a header as above:
- The sending station sends a scout packet with a port number and a flag byte
- The addressed receiving station returns a scout acknowledge to the sender
- The sending station sends the data
- The receiving station finishes with a final acknowledge, identical to the scout acknowledge
There was provision for broadcast transmissions, a single frame sent with its destination station and network numbers set to 255. There was also provision for promiscuous mode reception, termed wild receive in the PRM, requested by listening for station and network numbers both being zero.
Technical details of packets and frames, the Econet API, and worked examples in ARM assembler and BBC BASIC are given in the RISC OS Programmer's Reference Manual.[15]
Network services
At the time and in the markets for which Econet was developed, the main purpose of computer networking was to provide local area shared access to expensive hardware such as disc storage and printers. Acorn provided software for the BBC Micro to implement a file server, and optionally a printer server also. The original file server was very basic, essentially allowing limited access to a floppy disc over the network. The server software was further developed over many years, and Acorn and other manufacturers also produced dedicated Econet servers based on various technologies. So the servers available fell into roughly three categories:[16]
- The Acorn Level 1 through Level 4, running on a standard computer (BBC, Master or Archimedes) and providing simple file and print services.
- The dedicated Acorn FileStore units, running on dedicated hardware with higher capacity and more facilities.
- Third party units (notably from SJ Research), again running on dedicated hardware and with their own implementations of the server software. These were compatible with the Acorn implementations, but with additional enhancements.
The machine type numbers listed in the "Supported systems" section above are an indication of the range of hardware that was available or planned.
Additional services could be implemented, using the network API provided. Short utilities such as network chat programs were often published in magazines or distributed by sharing among users; these made use of the Econet protocols to work alongside the basic file and print services. Larger software packages (some of them commercial) were available that provided services such as Teletext and modem drivers.[17]
Comparison with modern systems
While Econet can be considered unique amongst network systems and specific to the Acorn range of computers, it does share many commonalities with modern network file systems and protocols:
- Remote Procedure Call – Almost all network operations were performed via a primitive remote procedure call system, either by passing a command line direct to the file server, or by passing an operating system call parameter block. The logon command *I AM was processed by passing the whole command line and reading back the result code.
- Access Permissions – By the time of the Acorn Level 4 File Server and the SJ Research MDFS systems, Econet file servers had a full user name and password system with public and private attributes. These worked similar to Unix permissions without the group field. Files could be set to be readable and/or writable by everyone, just by the user, or both.
- Subnetting – A basic Econet would be a single network segment, which is usually assumed to be network 0. With the use of one or more bridges, it is possible to have up to 127 Econet segments with up to 254 hosts each, for a maximum of 32,258 possible machines.
- Broadcasting – By using host 255, an Econet host could send broadcast packets to all hosts on the network segment. Later implementations of the client software used this to automatically locate file and printer servers.
- Printer Spooling – Later versions of the Econet printer server software used printer spooling to locally cache print jobs before sending to the remote printer. This ensured whole print jobs were sent to the printer in one go.
- Ports – Because the various protocols (file and printer servers, bridge discovery, and so forth) used defined port numbers,[18][19][20] it was possible to for additional services such as BroadcastLoader, AppFS, a teletext server, and a range of chat programs and multiplayer games to coexist within the Econet system.
See also
- LocalTalk
- List of device bandwidths
References
- "CJEMicro Networking and Broadband". 2018. Retrieved 14 November 2018.
- "BeebMaster Beebshop". 2018. Retrieved 14 November 2018.
- "Acorn Access+ User Guide" (PDF). Acorn Computers. 1994. Retrieved 26 November 2014.
- Hemminger, Stephen (18 May 2012). "Econet: Remove Ancient Bug Ridden Protocol". Archived from the original on 9 July 2012. Retrieved 18 May 2012.
- Corbet, Jonathan (23 May 2012). "The 3.5 Merge Window Opens". LWN.net. Retrieved 24 November 2014.
- Napier, Robert G. (1984). Networking with the BBC Microcomputer. Prentice-Hall. ISBN 978-0-13-611468-0.
- "Acorn Unix Econet Device Driver and Network Device" (PDF). Acorn Computers RISC iX Group. Retrieved 26 November 2014.
- Athreye, Suma S. (18 July 2000). "Agglomeration and Growth: A Study of the Cambridge Hi-Tech Cluster" (PDF). SIEPR Discussion Paper No. 00-42. Stanford Institute for Economic Policy Research. Archived from the original (PDF) on 13 May 2003. Retrieved 18 June 2012.
- "PC Econet Interface". beebmaster.co.uk. Retrieved 25 November 2014.
- "AUN - Acorn Universal Networking" (PDF). Acorn Computers. June 1995. Retrieved 26 November 2014.
- RISC OS 3 Programmer's Reference Manual. Volume 2. Acorn Computers Ltd. 1992. pp. 2–635. ISBN 1-85250-110-3.
- "RISC OS Programmer's Reference Manual". RISCOS.com. Retrieved 24 November 2014.
- "RISC OS Programmer's Reference Manual". RISCOS.com. Retrieved 24 November 2014.
- "6854/68A54/68B54 Advanced Data Link Controller data sheet" (PDF). Motorola. Retrieved 25 November 2014.
- "Chapter 47 - Econet". RISC OS 3 Programmer's Reference Manual. Volume 2. Acorn Computers Ltd. 1992. pp. 2–609 et seq. ISBN 1-85250-110-3.
- Murray, Rick. "Econet server software description". Econet Enthusiasts Area. Retrieved 26 November 2014.
- For example, see articles and mail-order advertisements in Acorn User magazines from the late 1980s onwards.
- Port numbers prior to RISC OS 3.5 are listed at "RISC OS Programmer's Reference Manual". RISCOS.com. Retrieved 26 November 2014.
- Port numbers for RISC OS 3.5 and later are listed at "RISC OS Programmer's Reference Manual". RISCOS.com. Retrieved 26 November 2014.
- Port numbers for RISC OS Open are defined in "Hdr.Econet". Econet Enthusiasts Area. Retrieved 26 November 2014.
External links
- The Econet Enthusiasts Area
- Chris' Acorns
- Econet documentation at 8-bit software
- RISC OS Programmer's Reference Manuals – the latest versions as of May 2014