Web development - a study

This is a series of materials for study updated periodically with articles and references in relevant topics of web development from established authors, journals and books widely read.

Vedanti Home
Web Central Directory Browser
Email us
Site search
Free email
Video
Free hosting
Exhibition
Free journalism
Yellow pages
Burning Assam
City today
Mirror of Assam
Music trainer
Feedback
Matrimonial
Web designing
Web commerce
News
Shopping
Membership
Sell & Buy
Free placement
Discussion
Chat
 

1.1 Basics of Communication:

Exchange of data is done by interconnecting computers through computer networks. The basic communication technologies are given below:

Communication using electricity: Since the discovery of electricity scientists, inventors and engineers have worked on ways to use electrical signals for communication. The principles discovered have resulted in fast, reliable communication systems. Our knowledge of digital communication can be divided into three historical stages:

  Signals on Wires

Electrical signals pass across wires and they lose energy while passing through the wire resulting in the use of electronic devices to amplify signals. Electrical signals emit electromagnetic radiation that can interfere with signals in nearby wires; so high speed networks and cable TV connections use a special cable to shield the wire.

  Information Coding

Researchers discovered a technique called modulation that transmits human voice across telephone lines with minimum distortion. For this the sender must have a device called modulator. The modulator begins with a basic oscillating signal called carrier that oscillates back and forth regularly. It then uses a second signal (one generated by human voice) to change the carrier slightly. At the receiving end a demodulator device performs the reverse function known as demodulation. The demodulator is tuned to expect the carrier. By measuring how much the incoming signal deviates from a perfect carrier, the receiver can recover the second signal (the human voice). This principle of modulation is used in modern communication system like Internet to enable communication among two computers through a modulator at one end and a demodulator at the other. Modems (Modulator/Demodulator) contain both a modulator through which it sends information and a demodulator through which it receives information.

Modems are also available that allow communication overran ordinary dial-up telephone connection. A dial-up modem contains additional circuitry that can dial a phone number or answer an incoming call. The user must instruct a modem on one end to dial a phone number and a modem on the other end to answer the call (Fig.1.1). Once the call has been accepted, both modems can begin transferring data. To sum up: a modem is a device needed for communication across a dial-up telephone connection or for long distance communication across a wire. A modem supports two-way communication because it contains a modulator for the signal being sent and a demodulator for the signal being received.

Two terminals connected through modems

Just like voice transmission, researchers also considered transmission of digital information. They found ways to encode the basic values of a bit in an electrical signal (e.g. using a positive voltage to encode 1 and negative voltage to encode 0). In addition they devised a sequence of bits to represent each letter and digit. Most modern character codes usually assigns a sequence of seven 0’s and 1’s to each letter. The American Standard Coder for Information Interchange (ASCII) is the most popular character code used throughout the computer and network industry.

Detecting and correcting errors

Early work on digital communication was focused on error detection and correction. Researchers studied errors that occur while sending electrical signals across a wire, and found ways to detect them. For example, natural phenomenon like lightning can cause random electrical signals to appear on wires and get confused with signals that carry information. Electrical signals are also distorted by magnetic fields. These may result in damage or loss of data during transmission. To guard against corruption of information caused by random electrical noise, researchers devised mechanisms to detect and correct the problem. Researchers found that adding an extra bit called parity bit to a character code before transmission can help detect errors that occur when transmitting the character across the network. The extra bit is called parity bit. Character E will be assigned parity bit 1 because its 7-bit code, 1000101, contains an odd number of 1 bit. However character S will be assigned a 7-bit code, 1010011, contains an even number of 1 bit.

To make parity checking work, a receiver must test the parity of each incoming character. The receiver examines all the bits that arrived, including the parity bit. The receiver declares that an error has occurred if it finds an odd number of bits turned on and declares that the character arrived undamaged otherwise. If electrical interference changes one of the bits during transmission, the receiver rejects the character as damaged because it will find an odd number of bits turned on. However parity alone is not enough to detect all possible errors. For this more powerful techniques are required.

1.2 OSI Model

In 1983, the International Standards Organization (ISO) developed a model, which would allow the  sending,and receiving of data between two computers. It works on a layer approach, where each layer is responsible for performing certain functions.

When we think of how to send data from one computer to another, there are many different things involved. There are network adapters, voltages and signals on the cable, how the data is packaged, and error control in case something goes wrong, and many other concerns. By dividing these into separate layers, it makes the task of writing software to perform this much easier.

In the Open Systems Interconnect model, which allows dissimilar computers to transfer data between themselves, there are SEVEN distinct layers. The principles that were applied to arrive at the seven layers are as follows:

1. A layer should be created where a different level of abstraction is needed.

2. Each layer should perform a well-defined function.

3. The function of each layer should be chosen with an eye toward defining internationally standardised protocols.

4. The layer boundaries should be chosen to minimise the information flow across the interfaces.

5. The number of layers should large enough that distinct functions need not be thrown together in the same layer out of necessity and small enough that the architecture does not become unwieldy.

Below we will discuss each layer of the model in turn, starting at the bottom layer (Fig. 1.2).

1.2.1 The Physical Layer:

The physical layer is concerned with transmitting raw bits over a communication channel. The design issues have to do with making sure that when one side sends a 1 bit, it is received by the other side as a 1 bit, not as a 0 bit. Typical questions here are how many volts   should be used to represent a 1 and how many for a 0, how many microseconds a bit lasts, whether transmission may proceed simultaneously in both directions, how the initial connection is established and how it is torn down when both sides are finished and how many pins the network connectors has and what each pin is used for. The design issues here largely deal with mechanical, electrical and procedural interfaces and the physical transmission medium, which lies below the physical layer.

 

1.2.2 The Data Link Layer

The main task of the data link layer is to take a raw transmission facility and transform it into a line that appears free of undetected transmission errors to the network layer. It accomplishes this task by having the sender break the input data up into data frames, transmit the frames sequentially and process the acknowledgement frames sent back by the receiver.

1.2.3 The Network Layer

The network layer is concerned with controlling the operation of the subnet. A key design issue is determining how packets are routed from source to destination.

If too many packets are present in the subnet at the same time, they will get in each other’s way, forming bottlenecks.

When a packet has to travel from one network to another to get to its destination, many problems can arise. The addressing used by the second network may be different from the first one. The second one may not accept the packet at all because it is too large. The protocols may differ and so on. It is up to the network layer to overcome all these problems to allow heterogeneous networks to be interconnected.

 1.2.4 The Transport Layer

The basic function of the transport layer is to accept data from the session layer, split it up into smaller units if need be, pass these to the network layer and ensure that the pieces all arrive correctly at the other hand. Furthermore, all this must be done efficiently and in a way that isolates the upper layers from the inevitable changes in the hardware technology.

1.2.5 The Session Layer

The session layer allows users on different machines to establish sessions between items. A session allows ordinary data transport, as does the transport layer, but it also provides enhanced services useful in some applications. A session might be used to allow a user to log into a remote time-sharing system or to transfer a file between two machines.

1.2.6 The Presentation Layer

The presentation layer performs certain functions that are requested sufficiently often to warrant finding a general solution for them, rather than letting each user solve the problems. In particular, unlike all the lower layers, which are just interested in moving bits reliably from here to there, the presentation layer is concerned with the syntax and semantics of the information transmitted.

1.2.7 The Application Layer

The application layer contains a variety of protocols that are commonly needed.

For example, there are hundreds of incompatible terminal types in the world. Consider the plight of a full screen editor that is supposed to work over a network with many different terminal types, each with different screen layouts, escape sequence for inserting and deleting text, moving cursor, etc. One way to solve this problem is to define an abstract network virtual terminal that editors and other programs can be written to deal with. To handle each terminal type, a piece of software must be written to deal with. To handle each terminal type, a piece of software must be written to map the functions of the network virtual terminal into real terminal. Another application layer function is file transfer. Different file systems have different file naming conventions, different ways of representing text lines and so on. Transferring a file between two different systems requires handling these and other incompatibilities. This work too belongs to the application layer, as do electronic mail, remote job entry, dictionary lookup and various other general purpose and special purpose facilities.

Data Transmission in the OSI Model

The presentation layer may transform this item in various ways and possibly add a header to the front, giving the result to the session layer. It is important to realise that the presentation layer is not aware of which portion of the data given to it by the application layer is AH, if any and which is true user data.

 The process is repeated until the data reach the physical layer, where they are actually transmitted to the receiving machine. On that machine the various headers are stripped off one be one as the message propagates up the layers until it finally arrives at the receiving process.

The TCP/IP Reference Model

The ability to connect multiple networks together in a seamless way was one of the major design goals from the very beginning. This architecture later became known as the TCP/IP Reference Model, after its two primary protocols. It was first defined in Cerf and Kahn, 1974.

The Internet Layer

 All these requirements let to the choice of the packet-switching network based on a connectionless internetwork layer. This layer, called the Internet layer. Its job is to permit hosts to inject packets into any network and have them travel independently to the destination (potentially on a different network). They may even arrive in a different order than they were sent, in which case it is the job of higher layers to rearrange them, if in-order delivery is desired. Note that “internet” is used here in the generic sense, even though this layer is present in the Internet.

The Internet layer defines an official packet format and protocol called IP (Internet Protocol). The job of the Internet layer is to deliver IP packets where they are supposed to go. Packet routing is clearly the major issue here, as is avoiding congestion. For these reason, it is reasonable to say that the TCP/IP Internet layer is very similar in functionally to the OSI network layer. Figure 1.4 shows this correspondence.

1.3  Local Area Network (LAN)

Local Area Networks, generally called LANs, are privately owned networks within a single building or campus of up to a few kilometers in size. They are widely used to connect personal computers and workstations in corporate offices and factories to share resources (eg, printers) and exchange information. LANs are distinguished from other types of networks by three characteristics: (i) their size; (ii) their transmission technology; and (iii) their topology.

LANs often use a transmission technology consisting of a single cable to which, all the machines are attached-like the telephone company once used in rural areas. Traditional LANs run at speeds f 10 to 100 Mbps, have low delay (tens of microseconds) and make very few errors. Modern LANs may operate at higher speeds, up to hundreds of megabits per second. In this book, we shall adhere to tradition and measure line speeds in megabits per second (Mbps) not in megabits per second. A megabit is equivalent to 1,000,000 bits. Various topologies are available for LAN. Figure 1.5 shows two of them.

 Ethernet is a bus-based broadcast network with decentralised controls, operating at 10 or 100 Mbps where computers can transmit whenever they want to; if two or more packets collide, each computer just waits for a random time and tries again later.

1.4  Wide Area Network (WAN)

 

A Wide Area Network (WAN) spans a large geographical area, often a country or continent. It consists of large collection of machines intended for running user and is called hosts.

Scientists and engineers build networks that connected multiple computers across large geographic distances. WANs used modems to send signals across long distance systems. WANs can connect more than two computers across a single transmission channel. WAN uses computers to unify a set of transmission lines into a coordinated system.

WAN includes a small-dedicated computer at each site that attaches to the transmission line and keeps the network operating independently from the computers that use it. The dedicated computer receives an incoming message that arrives from another site and delivers it to one of the local computers. It accepts a message from any local computer and sends message across a transmission line towards the destination.

1.5   Metropolitan Area Networks (MANs)

A Metropolitan Area Network or MAN is basically a bigger version of LAN. It might cover a group of nearby corporate officers or a city and might be either private or public. A MAN can support both data and voice and might even be related to the local cable television networks.

 

 
 
 
Copyright ©SM Computer Consultants Pvt. Ltd, Guwahati, India '1998-2010'