Computer Network
INTRODUCTION
In contrast to the earlier generations of computing in which computation and data storage was centralized, we now have distributed systems in which a user may retrieve a program from one place, run it on any of a variety of processors, and send the result to a third location. Such a system connecting different devices such as PCs, printers, disk drives etc. is a computer network.
A Computer Network may specifically be defined as “an interconnected collection of autonomous computers”. Two computers are said to be interconnected if they are able to exchange information. The connections may be thru copper wires, optical fibers, and wireless electromagnetic or optical media. ‘Autonomous’ means that there is no master/slave relationship between the connected devices. Typically, each device in a network serves a specific purpose for one or more individuals. For example, a PC can provide access to information or software. On the other hand another PC may be a file server devoted to managing a disk drive containing shared files. A network may cover a small geographic area connecting devices in a single building or group of buildings. Such a network is a Local area network (LAN). A network that covers a large area such as a state, country or the world is called a Wide area network (WAN).
GOALS AND APPLICATIONS OF COMPUTER NETWORKS
Network goals can be summarized in terms of the uses of Networks for companies, organizations, people etc. These uses can be viewed as the facilities provided by computer networks. Some of the goals or objectives can be summarized as:
- Resource sharing: Goal is to make all programs, data, and equipment available to anyone on the network without regard to the physical location of the resource and the user. This provides a high availability of resources to users.
- Load sharing: this is another aspect of resource sharing. Sharing load between multiple computers connected together can reduce the delays for carrying out time intensive applications.
- High reliability: High reliability can be achieved due to alternative sources of supply. For example, all files could be replicated on two or three machines. So, if one of them is unavailable( due to a hardware failure), the other copies could be used. In addition, the presence of multiple CPUs means that if one goes down the others may be able to take over its work. For real time applications such as military, banking, air traffic control etc. , the ability to continue operating in the face of hardware problems is of great importance.
- Cost effectiveness: Small computers have a much better price/performance ratio than large ones. Mainframes are roughly a factor of ten faster than the fastest single chip microprocessor, but they cost a thousand times more. Thus it may be more appropriate to have network of low cost PCs running in parallel rather than terminals (users) connected to a single high cost mainframe operating in time-sharing mode. This imbalance has caused designers to build Client-Server systems in which data is kept on one or more shared file server machines and users (clients) can share (access) this data thru their personal computers connected to the server(s) on a network. Such a network with many computers located in the same room or building is called a Local Area Network (LAN). In contrast, there can be far flung networks covering entire countries or continents. Such networks are called Wide Area Networks (WAN).
- Scalability: A closely related point is the ability to increase system performance gradually as the workload increases just by adding more PCs. With a central mainframe, when a system is full, it must be replaced by a larger one, usually at great expense and with even greater disruption to the users.
- Powerful communication medium: A real time communication can be possible between two persons sitting on-line and far apart (distant geographical locations). Two authors sitting far apart can prepare a report together, making changes to the document and viewing it together at the same time, instead of waiting several days for a letter.
Network Applications:
- Access to remote information: Access to remote information is one of the most important applications of networks and it covers various areas such as access to financial institutions (people can pay their bills, manage their bank accounts, and handle their investments electronically), home shopping (on-line catalogs, instant video on any product, order placement and home deliveries), on-line newspapers, magazines, scientific journals, on-line digital library etc. World Wide Web is another information access application area that provides access to information about the arts, business, cooking, government, health, history, hobbies, recreation, science, sports, travel and almost everything of interest. All these applications involve interactions between a person and a remote database.
- Person-to-person communication: The second broad category of network use is person-to-person interaction. Electronic-mail (email) is widely used by millions of people to send mails containing text, audio and video. Real-time email allows remote users to communicate with no delay along with seeing and hearing each other. This technology makes it possible to have virtual meetings called videoconference, among far-flung people. Videoconferencing involves setting up video cameras and televisions at different locations so that people at each location can see and hear each other. In effect, they attend meetings or conferences without leaving their individual locations. Figures and charts needed for presentations also can be broadcast for all to see.Worldwide newsgroups, with discussions on every conceivable topic are another area providing communication between a selected group of people. Here, one person posts a message and all the subscribers to the newsgroup can read it.
- Interactive entertainment: Video on demand will provide access to any movie or any program in any country. Live television with the audience participating in quiz shows and other similar programs interactively is another area. Game playing in a worldwide shared 3-D virtual real environment is another killer application where we have multiperson real time simulation games, like hide-and-seek in a virtual dungeon, and flight simulators with the players on one team trying to shoot players on the opposing team.
DISTRIBUTED PROCESSING
Networks use distributed processing, in which a task is divided among multiple computers. Instead of a centralized system in which a single large machine is responsible for all aspects of a process, each separate computer (usually a personal computer or workstation) may handle a subset of the complete task. Such a distribution of processing leads to the following advantages:
- Security/encapsulation: Access and interaction of a user with the entire system can be limited upto his requirements and necessity. For example, a bank can allow users to access their own accounts without allowing them access to the bank’s entire database.
- Distributed databases: The entire database can be distributed on multiple systems rather than requiring storage capacity of a single system. For example, the WWW gives users access to information that may actually be stored anywhere on the Internet. Such a system also facilitates storage of a huge amount of information, which may not be possible to store on a single system.
- Faster application processing: Multiple computers working on parts of a problem concurrently can solve the problem faster than a single machine working alone.
- Security and high reliability through redundancy: multiple computers running the same program simultaneously can provide security in the sense that if one has a hardware problem, the other two can override it.
- Collaborative processing: Both multiple users and multiple computers may interact with each other on a task for example a game in which actions of a player are visible to all other players.
TOPOLOGIES
Network topology defines the interconnection structure of stations and links. Following are some of the issues that are influenced by the interconnection structure:
- Expansion cost: The incremental cost of adding another station.
- Reconfiguration flexibility: The ease of modifying the topology.
- Reliability: Dependency on a single component for network operation.
- Software complexity: The complexity of protocols required.
- Performance: in terms of throughput or delay.
- Broadcast capability: Sending a single message that is received by all other stations.
In the following section we will see that networks can be classified according to the transmission technology used and according to scale. The topologies are discussed under each category. In general we have complete interconnection (mesh), partial interconnection (partial mesh), star, tree, serial bus, and ring topologies. In addition, there are wireless networks, which do not have a regular topology in the sense that the stations are not physically connected to each other through guided media (cables).
CATEGORIES OF NETWORKS
In its simplest form, data communication takes places between two devices that are directly connected by some form of point-to-point transmission medium. Often, however, it is impractical for two devices to be directly, point-to-point connected. This is so because of one (or both) of the following reasons.
- The devices are very far apart. It would be inordinately expensive to string a dedicated link between two devices thousands of miles apart.
- There is a set of devices, each of which may require a link to many of the others at various times. Except for the case of a very few devices, it is impractical to provide a dedicated wire between each pair of devices.
The solution to this problem is to attach each device to a communications network. The way in which different devices are connected may be different depending upon the distance between the devices.
Two dimensions stand out as important in the classification of networks according to the connectivity between the devices
- Transmission technology
- Scale
Transmission Technology
There are two types of transmission technologies identified according to the architecture and techniques they use for transmission.
1. Point-to-point networks
2. Broadcast/Multipoint networks
Multipoint/Broadcast line configuration is one in which more than two specific devices share a single link.Broadcast networks have a single communication channel that is shared by all the machines on the network. Short messages, called packets in certain contexts, sent by any machine are received by all the others. An address field within the packet specifies for whom it is intended. Upon receiving a packet, a machine checks the address field. If the packet is intended for itself, it processes the packet; if the packet is intended for some other machine, it is just ignored.Broadcast system generally also allows the possibility of addressing a packet to all destinations by using a special code in the address field. When a packet with this code is transmitted, it is received and processed by every machine on the network. This mode of operation is called broadcasting. Some broadcast systems also support transmission to a subset of the machines, known as multicasting. One possible scheme is to reserve one bit to indicate multicasting. The remaining n-1 address bits can hold a group number. Each machine can “subscribe” to any or all of the groups. When a packet is sent to a certain group, it is delivered to all machines subscribing to that group.
In contrast, a point-to-point line configuration provides a dedicated link between two devices. Point- to- point (also called store-and-forward or switched) networks consist of many connections between individual pairs of machines. To go from the source to the destination, a packet on this type of network may have to first visit one or more intermediate machines. Often multiple routes, of different lengths are possible, so routing algorithms play an important role in point to point networks.
As a general rule (there may be exceptions) smaller, geographically localized networks (Local Area Networks) tend to use broadcasting; where as larger networks (Wide Area Networks) usually are point to point.