What is networking
A lone computer is a powerful thing, but a computer which is linked to other computers is more powerful still. A network is so much more than a convenient way of copying files. A network opens up entirely new and exciting ways of working.
We've all seen how the Internet has exploded in popularity, giving everyone access to more information than ever before. Information access is what networks are all about. A network will let you share files with other users, so you can all work together on a project. Or many computers can make use of expensive peripherals such as large removable hard disks, CD -ROM drives or printers. Networking makes it possible for many Amigas to work together as one, rendering frames for an animation for example.
It's not just Amiga's which can benefit either. Networking has several standards which are cross-platform: in other words, you can connect your Amiga to PCs, Apple Macs, UNIX boxes or even the biggest network of them all: the Internet.
If you want to quickly copy some small files between two Amigas, the easiest way is often to copy the files to floppy disk and walk over to the other machine. This no-tech approach is often called "sneakernet", and the great advantages are that it works well and it's very cheap.
However, when you want to copy lots of files or files which are too big to store on single floppy disks you start to run into problems. Yes, you could use external Zip or Jaz drives and sneak across with the cartridges. Or you could use Split and Join utilities to chop a file into parts and trans fer each one at a time. It's not a fun solution though.
Computers are supposed to be good at moving information, and relying on moving magnetic disks from one place to another isn't particularly impressive.
If you have used a modem to dial into a Bulletin Board or the Internet, you'll know that moving data is what they are designed to do. One way to copy files between two Amigas is therefore to use two modems, and set one to dial the other. Using standard terminal emulation software you can then copy files using ZModem protocols. This solution has the disadvantage of costing money as the modems need to be dialed into BT's network.
So, do without the modem. Use the Amiga's serial ports, but do without the modems. For this trick you need a null modem cable, which is wired in such a way as to make the Amiga's believe they each have a modem attached. Run the terminal software of each machine, and then you should be able to copy the files across.
Any problems? Yes, two. First of all this ser ial link isn't particularly fast. Serial links send one bit of information at a time, and this is a slow process. Secondly, it's quite a nuisance to use a terminal emulator and mess around with baud rates, bit protocols and Zmodem uploads. Serial links are great for games (Stunt Car Racer, Lotus, Knights of the Sky) but for serious data transfer they leave a lot to be desired.
Networking systems which use the Parallel ports are going to be faster by definition, as they can shift eight bits at a time, instead of one.
One of the first parallel port
networking programs was ParNet from the
Software Distillery. Using a special DIY cable, ParNet is a
very clever piece of programming. It creates a "networked
filesystem", in that the devices of the first Amiga are available
from the second and vice versa. For example, imagine an Amiga 1200
fitted with a hard drive with two partitions called hd0: and hd1:
connected up to
an A500.
With ParNet run
ning, the A500 can access the two drive partitions on the A1200.
Icons for them will appear on the A500's Workbench. The A500 can
load and save programs. The A500 can even access the A1200's
floppy disk port and ram disk. This is the nearest to "real"
networking you can get for free, and it's well worth
investigating.
Over the years, there have been advances made to the ParNet system. New installers have appeared which make it a lot easy to get the software up and running (ParBench for example). New versions of the software which are faster and more reliable (ParNFS) or which make use of the serial port (SerNet) are also available.
Real Networking:
The
SANA-II standard
It was only when the SANA-II standard was developed that the Amiga had any real chance of serious networking. SANA-II was created by Dale Larson, who worked as a Software Engineer at Commodore. The idea was to create the network equivalent of a serial.device driver, and it woul d be used to separate the networking hardware from the network protocol.
Here's how it fits into the grand scheme of things:
Networking Application
(e.g. Printer sharer)
Network Protocol
(e.g. Envoy)
SANA-II Driver
(e.g. driver for Ethernet card, brand X)
Network Hardware
(e.g. Brand X Ethernet card)
The Amiga is a very flexible system, and so is the SANA-II standard. The SANA-II drivers are designed to allow multiple protocols to be used at the same time, and even use the same piece of network hardware. For example, a single Ethernet card with a single SANA-II friendly driver could be used both by a Web browser running on TCP/IP, and share a printer using Envoy.
The advantage of using the intervening SANA-II driver is that it completely divorces the hardware from the software. For example, imagine you have an Amiga running the Envoy networking system, fitted with an Ethernet card. The Ethernet card came with a SANA-II d river, which Envoy happily uses. Now, remove the Ethernet card and fit an AmiLink system which connects via the floppy-disk ports. However, AmiLink also comes with a SANA-II compliant driver which means you don't need to stop using Envoy -- you simply adjust the settings to make it use the new AmiLink driver instead of the Ethernet driver.
What SANA-II can't do is magically allow different network protocols to talk to one another. You cannot connect an Ethernet card to an AmiLink card, or an AmiLink card to a serial link.
There are ways to get these systems to talk to each other however, and we'll look at those later.
Yes, And?
You might be wondering why all this talk about SANA-II is important. You might feel that you are unlikely to ever buy an expensive piece of networking hardware. That's fair enough, but there is still a very good chance that you'll come across the SANA-II driver. Remember, networking software doesn't care about the hardware, as long as there is a SANA-II compatible driver -- and there are a lot of drivers available. One of the simplest is a version of our friend, ParNet, called magPLIP by Marius Groger.
The magPLIP consists of a SANA-II compliant driver and a description of the special parallel port cable you need to make. Once magPLIP is installed on two Amiga's and the cable has been connected, you are free to run whatever network protocol and application software you wish.
If you would rather trust a commercial package, Blittersoft in the UK sell Liana. Liana consists of SANA-II drivers for its own special (supplied) parallel cable. Again, once you have installed it you can run what you like: however, Liana comes with the Envoy system which makes for an easy life. Liana is the cheapest commercial networking system, and is worth considering if you need to connect any two Amiga computers.
If you use the Internet, you'll also have heard of some more drivers : SLIP, CSLIP and PPP. It is the job of these drivers to provide a link via the serial port and usually a modem. They are mostly used by a TCP/IP implementation in combination with a dial-up connection to an Internet Service Provider, like this:
Networking Application
(e.g. Mosaic the WWW browser)
Network Protocol
(e.g. TCP/IP)
SANA-II Driver
(e.g. CSLIP)
Network Hardware
(e.g. modem)
Systems which are linked via parallel or serial ports aren't perfect. They are still quite slow, and of course a standard Amiga only has two of each. This means that trying to network three or more Amiga's isn't possible. These Amiga-specific networking solutions are also incompatible with other non-Amiga platforms.
Now we're talking
Ever wanted to swap a lot of data between your Amiga and an inferior machine such as a PC or an Apple Mac? Bored to the back teeth using CrossDOS to carry floppy disks back and fo rth? Getting irritated trying to build a suitable null modem cable and then waiting for Zmodem to upload over a slow serial link?
How would you like to be able to send files back and forward at speeds of 400K a second or better? It can be done -- although you will need to invest in some hardware: namely an Ethernet card. Ethernet is a networking hardware standard which has a theoretical speed on 10Mbit/second. It's relatively cheap and easy to use and it's widely available on PC and Apple systems. We'll look at some of the Ethernet solutions for the Amiga next month in a lot more detail.
Now that the machines are communicating, what can you do? That depends a lot on what the machines actually are, and the protocol stack used to network them together. Let's take a simple example to start with: two A1200's networked using magPLIP. One choice is to use AmiTCP to provide a TCP/IP link.
If this is the case, then to check if each machine can "see" the other on the network, one of TC P/IP's many tools can be used. For example, if the two Amiga's have been given IP addresses 172.16.0.1 and 172.16.0.2, then each can "ping" the other like the example shown in Listing One.
This confirms that the hardware is working, and the software has been configured properly. The next stage is to actually try and do something, such as copying a file. To achieve this, it is necessary to use the TCP/IP tool "FTP". On one machine you must run an FTP daemon program, and on the other an FTP client. When they are talking, you can copy files backwards and forwards.
There are dozens of other TCP/IP tools available. You can open a Shell on the remote machine, or play games such as Noughts and Crosses and Chess. You can even set up your own World (well, "Room" in this case) Wide Web system and send electronic mail backwards and forwards.
An alternative to TCP/IP is to install the considerably more integrated package, Envoy. Envoy is a network filesystem which means, like Pa rNet, you can read and write to the disks on the remote machine. Envoy also includes support for printer sharing and a whole host of other goodies. However, Envoy only works on Amiga's -- what if you want to connect up to PCs or to Macs?
On other platforms, the easiest thing to do is return to the land of TCP/IP. Getting TCP/IP running on other platforms is frighteningly easy: Both the AppleOS and Windows95 have support built in and it's only a matter of clicking a few boxes to get it set up. Assuming the network hardware is compatible (i.e. it's Ethernet). a
TCP/IP is a networking protocol. It looks after how data is transmitted and received, and makes sure it gets to where it is supposed to. It splits data up into little packets, and addresses each one using a unique "IP" address. If the data arrives in the wrong order, or if a packet is missing, TCP/IP will take care of it. This robustness makes TCP/IP ideal for dealing with very large networks such as the Int ernet, but it can also be used on smaller scale local networks too.
As far as the Amiga is concerned, there are several implementations of TCP/IP. Perhaps the most popular is AmiTCP, which is available in demo form from Aminet and in full commercial form from Blittersoft. Escom managed to put together their own Internet pack, and this was based on a version of AS225r2 (sound familiar?). There are other versions available as well: a version called Miami is due very soon. (See our Amiga.net tutorial on page 80).
Installing TCP/IP is not a problem: configuring it is an entirely different matter. In order to work properly, The TCP/IP needs to be set-up with vital information which is unique to your system. These settings are contained in various files scattered throughout the installation. This isn't really done to annoy you, it's a consequence of how flexible and powerful the TCP/IP protocol really is.
The first information you need sets the name of your machine and its IP addres s. If you are setting up TCP/IP to interact with the Internet via a Service Provider, they'll probably already have supplied you with this information. They'll also provide the address of the machine acting as a gateway. If not, you can usually make up your own values - although within reason.
Some IP addresses have special meanings, so stick to using those within the following ranges:
>172.16.0.0 through to 172.31.0.192.
>168.0.0 through to 192.168.255.0
When using these addresses in your own networks,
stay clear of x.x.x.0 and x.x.x.255.
I have had most success
with the group as a "Class B" address, and most software is happy
with these values without messing around with sub-networking and
subnet masks.
You will also need to define the device driver to be used. Again, if you are setting up a serial link via a modem to a service provider you'll need to specify SLIP, CSLIP or PPP. If you are setting up a local network you should specify the device driver which came with your hard ware: for example, an Ethernet card driver or a magPLIP driver.
Using TCP/IP can be a nightmare as there are so many things that can go wrong. One common area of confusion is the use of Dynamic addressing. Some service providers give their customers a different IP address every time they log in. To take this into account, you need to write a script which can detect the chosen IP address and set up TCP/IP appropriately. It turns out that PPP is the dial-up protocol for these situations, so find a PPP driver and devour the documentation.
THE AMIGA AND NETWORKING
The Amiga has always been embarassingly poor at networking, and the implications meant a lot more than not being able to use a four player Doom clone with your mates. The lack of networking support has always damaged the Amiga in the
"serious" application sector.
Apple Macintosh computers have extra fast serial ports as standard, and the built-in software provides a system called "AppleTalk" which allows Macs to be easily inter- connected.
Ever since Windows for Workgroups appeared in 1992, networking on the PC became easy. A room full of PCs can be networked together in an afternoon using cards which cost less than 50 each. All the PCs can share printers and files, and data transfere is fast and reliable.
The ability to share data and
peripherals is essential in the business world, and it's one reason
that despite excellent word processing and graphics applications,
an Amiga is not an ideal
office machine.
Commodore did develop a networking protocol, AS225. It was a TCP/IP package originally developed by a company called "Ameristar". Release one was finished in 1991, and work on the more useful release two started. Sadly, although various
betas where made available, the full package was never released. This has got to be one of the many times Commodore failed the Amiga community.
The problems with networking go back further, right to the point when the Amiga Operating System was created. Remember that the Amig a was ahead of its time, in providing a flexible multitasking graphical user interface when most people used DOS prompts. However, the Amiga was never designed to be a "multiuser" system. Unlike, say UNIX, it is impossible to mark files as for use by only specific users. The memory management system, also adaquate for most single-user applications, isn't up to looking after different programs running for different users. To be blunt, the Amiga doesn't make a great network server -- and this hampers it's use in network environments.
A null modem cable is used to connect two computers together via their serial ports. The computers can then run standard terminal emulation software and upload and download files using XModem or Zmodem. Serial leads are also used by many games to offer a "link"so that two players can play at once, or play against each other. Making a null modem cable requires two suitable connectors,and a length of cable. You need to connect GND together on both machines, an d then connect RX on one to TX on the other, and vice versa. On a 25 way connector, this means connecting pin seven together, and swapping around two and three. Some software requires additional connections to be made for "hardware handshaking". This means that RTS and CTS need to be swapped (four and five) and sometimes DTR and DSR (twenty and six). Some systems require a Carrier Detect signal. If so, connect pin eight to pin five.
ParNet is a budget-basement networking solution for connecting two Amigas. It works using a special cable linking the parallel (printer) ports, and only works between Amigas: not with Amigas and other machines (that said, a program called ParNet-PC is available although it looks quite scary and is not recommended for beginners). There are various versions of the ParNet software available, and these are as follows:
Parnet - the original ParNet software.
Parbench - ParNet with a new and easy to use installer.
ParNFS - an upda ted version of ParNet, slightly more stable.
Various utilities are available which run on top of ParNet, and these allow machines to send electronic mail to each other and take control of the mouse and keyboard on the remote machine. It is important to use a cable constructed especially for the job: do not use any other kind of parallel cable! The cable has the following connections. Try to keep it as short as possible, and use high-quality shielded cabling.
CABLE: Connect D7-D0, SEL, POUT, and BUSY across,
Connect ACK (FLAG interrupt) to SEL locally:
(2-9) D7-D0 -------- D7-D0
(12) POUT -------- POUT
(11) BUSY -------- BUSY PARALLEL PORT
(13) SEL --+------+-- SEL
(10) ACK -/ \- ACK
(18-22) GND -------- GND (18-22)
Double check the gender for the DB25 connectors you'll need to connect to your Parallel Port.
A500/A2000 Parallel port is Female so you need a Male connector.
A1000 Parallel port is Male so y ou need a Female connector.
ParNet is useful when one machine lacks a hard drive. It's possible to make a minimum floppy disk for this machine to boot with: it loads ParNet and then boots the rest of Workbench from the hard drive of the other Amiga. ParNet has also given a new lease of life to CDTVs. These were Amiga 500's in a smart case with a CD-ROM drive. Using ParNet, other Amiga's could access the CDTV's CD-ROM drive.
A class of cabling used with Ethernet hardware. Also known as "Thin" Ethernet or "Cheapernet" as it uses relatively inexpensive co-axial cable.
10Base10:
So-called "Thick" Ethernet cabling, using largish D-style plugs and sockets.
10BaseT:
Ethernet cabling using plugs which look the same as those on the end of telephone wires.
ARCnet:
A now defunct networking system similar (but not compatible with) Ethernet.
AS225:
An implementation of a TCP/IP stack for the Amiga, originally developed by Commodore.
AmiTCP/IP:
An implementation of a TCP/IP stack for the Amiga.
Baud:
The number of state changes on a communications line per second. Often confused with BPS.
BPS:
Bits per Second. The actual number of bits that are transmitted across a communications link per second.
Client:
A program which is used to extract information from a server.
CSLIP:
Compressed SLIP. See SLIP. Then compress it a bit.
Demon:
The UK's first (and one of the largest) dial-up Internet access providers.
DNS:
The database which contains all the Domains and their corresponding IP addresses.
Domain Name:
This is an address of a given computer system on a network such as the Internet.
Driver:
Software which is written to control a piece of hardware, such as a modem or a networking card.
Dynamic addressing:
A system whereby the IP address of a dial-in Internet account is allocated from a pool every time the user dials in.
Envoy
A peer-to-peer networking package for the Amiga.
Ethernet
A networking system, using hardware which can transmit data at up to 10Mbit/second.
FTP
File Transfer Protocol - used to swap files over a TCP/IP network.
Gateway
A machine which acts as a link between networks. For example, a machine could be acting as a gateway between a local network and the Internet.
Host
A machine on a network.
HTTP
Hyper Text Transfer Protocol. This is the protocol used for data transfer by Hypertext based systems such as WWW and Mosaic.
Internet
The Internet is the worldwide network of computers. Open any newspaper, switch on the TV or ask your granny for more details.
IP
Internet Protocol. This is the data communication protocol used as a common la yer throughout the Internet.
IP address
Every machine in a TCP/IP network must have a unique, 32-bit address. The address is usually written "w.x.y.z" where each number is in the range of 0 to 255. Some addresses have special meanings.
LAN
A Local Area Network is one in which the machines are located physically close together.
LINUX
Free version of UNIX, available for many platforms including the Amiga.
Modem
A piece of hardware which connects to a computers serial port, and allows information to be transmitted on the plain old telephone system (POTS). Thankfully no-one cares what it stands for these days.
NFS
Network File System: software which allows computers to share hard drives over a network.
Null modem
A cable which connects between two computers using their serial ports. The computers are given the impression they are linked by modem.
Parnet
A set of programs and a special cable whic h provides a basic NFS for two Amigas, connected via their parallel ports.
Peer-to-peer
A network in which there is no central server: all machines are equal and are both clients and servers.
Plip
Parallel Line IP - a standard for connecting an Amiga to a TCP/IP network via the parallel port.
POP
Post Office Protocol - an electronic mail standard.
PPP
Point to Point Protocol - used to allow a computer to connect to the Internet via a dial-up line. Similar to, but better than, SLIP or CSLIP.
Routing
Finding the path from one host on the network to another.
SLIP
Serial Line Internet Protocol, a way of sending TCP/IP signals down a serial line and hence through a modem.
SMTP
Simple Mail Transfer Protocol, used to send mail over TCP/IP links.
Static addressing
When your Internet Service Provider gives you a unique and un-changing IP address which you use every time you dial-up. You therefore have a static address.
TCP/IP
Transmission Control Protocol / Internet Protocol. The networking system used by the Internet.
Telnet
A program which allows a computer to log in to a remote host over the Internet or other network.
Terminator
Item of hardware sent back from the future and attached to both ends of an Ethernet network to stop signals from bouncing around and becoming corrupt (and evil).
WAN
Wide Area Network. A network spread over a large physical distance.
World Wide Web
The collection of linked pages of text, graphics and sound distributed all over the Internet. Access with a program such as AMosic, IBrowse or AWeb.
UNIX
Powerful, multitasking operating system. Very popular amongst Internet users.
Usenet
Huge bulletin board system which uses networks such as the Internet to propogate around the world.