Yes, client-server architecture costs more to start up and running. But let's think ahead a little before we dive into peer-to-peer.
You have a small business with 10 employees with computer workstations, each with an operating system like Windows® 98. You can wire them up so they can 'see' each other, and share their files and printers. Cool. Jane's workstation even has a modem and is set up with an internet access account. And you have a slick color printer connected to Bob's computer everyone can print to now. And you've decided that Linda's computer can be home to that neat customer database everyone works on from time to time during a typical day. And why not let everyone back up their important word processing documents and spreadsheets to Linda's hard disk drive too. Even cooler.
Now, most of the employees will need internet access, and that will have to be funneled (i.e., proxied) through Jane's workstation. Can it handle that load as well as Jane's workload at the same time? Can Bob's workstation manage a queue of print jobs from around the office and let Bob get his job done too? Is Linda's machine capable of hosting a sizeable database for office-wide collaboration as well as handle the traffic of simultaneous file transfers to her hard disk every time someone else saves a file? Not likely.
Now Jane, Bob and Linda are being pushed off their computers. Will you buy three more workstations at that point to handle the print, internet and file tasks? Who's going to run around to boot them up, log on to the internet, check the file backups, etc., etc.? It looks like you're already moving toward client-server, albeit in a haphazard and reactionary manner. Not cool, and ultimately more costly than a basic client-server system. And this is just the tip of the iceberg.
Workstation: A standard desktop-style computer, not designed for mission-critical duty.
Proxy: An application that serves as means for some number of network users to access the internet through a single point of connection on another computer.
'See': When a computer is on a network and is correctly configured, it can be 'seen' by using, for example, a utility such as Network Neighborhood on a Windows®-based computer which is a member of the same network. Similarly, when a user configures a drive, file directory or printer on his or her computer to be shared on the network as a resource, that particular shared resource can be 'seen' as well.
Print Queue: Literally, the print tasks waiting in line to be processed by the computer to which the target printer is connected; to be sent to the printer in an orderly and faultless (hopefully) fashion. Often a significant hog of computer horsepower.
hosting: Providing a service or resource, in the sense of being a server. The terms 'server' and 'host,' in reference to a computer, are generally interchangeable.
Database: A compilation of related computer files which is created and managed by database management system software, such as Microsoft Access.