Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Essential terms and concepts Network Applications and Applications Protocols Most computer networks support similar network-related applications like email. The function of these applications across different networks is similar; the manner in which they are implemented is protocol dependant. An application program provides the users with an interface to interact with the application, and it contains a related application protocol that defines the manner in which an application communicates over the network. Although nodes have to use the same application protocol, users are not restricted in their use of application programs. Computer Communications and Networking Models Decentralized systems Users maintain their own systems and there is no electronic exchange of resources or information among these separate systems Provides user with computing independence – it moves control closer to the end user Can result in data redundancy Can be expensive to implement in terms of increased costs for hardware, maintenance, and support Centralized systems A single computer houses all the data of an organization and users have access to the data via terminals All systems operations are under the auspices and control of a single department Data redundancy and inconsistency are reduced or eliminated Promote and ease data sharing among users Are not as reliable as decentralized systems because of the presence of a single point of failure Distributed systems Consists if independent computers interconnected to one another Resources are made available to the user in a transparent manner; from the user’s perspective it appears as if it was a single system The key to the inherent transparency of a distributed system is specially designed software generically called Network Operating System (NOS), which is usually independent of a computer’s native operating system. A NOS can also be built into the native operating system. A distributed system can be thought of as an hybrid of decentralized and centralized systems. Client server Can be thought of as dividing a network transaction in two parts: The client side (or front end) provides the user with an interface for requesting services from the network, and the server side (or back end) is responsible for accepting user requests for services and providing these services transparent to the user. Both terms – client and server – can be applied to either application programs or actual computing devices In TCP/IP, server processes on some systems such as UNIX are commonly referred to as daemons and are designated by the letter d at the end of a program’s name. o HTTPD: Server side, Web server process o HTTP: Client side, Web application process, (Browser) A typical client / server interaction works as follows: o A server process is started on a host, notifies the host that it is ready to accept client requests and then waits for a client to request a specific network application service o Independent of the server process, a client process is started, usually by a user through an application program. A request for service is sent by the client process to the host that is providing the requested service and the server program running on the host respond to the request o When the server process has fully honoured the client’s request, the server returns to a “wait” state and waits for another client request from the same or another client. Peer-to-Peer Each networked host runs both the client and server parts of an application. This is accomplished by installing the same NOS on all hosts within the network, enabling them to provide resources and services to all other networked hosts. Can be less reliable than Client / Server based networks Unlike Peer-to-Peer networking, in the client / server model a network service can only be provided if a server program responsible for servicing a request is running on a particular host. Example: Dynamic Host Configuration Protocol (DHCP) responsible to provide IP addresses automatically. Web-Based Is still based on the Client / Server model, it deserves a separate recognition because of it’s potential for reshaping the manner in which resources are provisioned to the end user Generally involve the use of specially designed network-based devices, commonly called network appliances, netappliances, information appliances, and Internet appliances. Network appliances usually rely on application service providers (ASP) to furnish users with computing resources via the Internet. Servant Enables local and remote systems to be both client and server, similar to the Peerto-Peer model. Napster is a good example of this model; all the hosts running Napster are concurrently servers and clients. Unlike the Peer-to-Peer model, which is one-to-one, or the client server model, which is one-to-many, the servant model is many-to-many. This concept is expected to be expanded into general file-sharing model that will enable all interconnected hosts to exchange any type of file residing on their hard drive. Communication Service Methods and Data Transmission Modes Serial and Parallel communications Serial communication is data transmission in which the bits representing a character of data are transmitted in sequence, one bit a time, over a single communication channel. Parallel communication refers to simultaneous transmission, each on a separate channel, of all the bits representing a character. Parallel communication requires a relatively complex communication link, which is achieved through the use of multiwire copper cables. The longer the link, the worse the degradation of the electrical signal. In most networking applications, parallel communication is limited to peripherals directly connected to a system and for communication between systems that are relatively close to each other. Synchronous and Asynchronous communications Synchronous communication implies that each node monitors communication between two nodes. If data is to be transmitted or received, then the nodes are aware of this transmission almost immediately and prepare for the exchange based on ordered data rates and sizes. It is also tied to the clocking inherent to the link Asynchronous communication is achieved by encapsulating the data by special start and stop bits. A direct consequence of the inclusion of these start-stop bits in the bit stream is that data can be transferred at any time by the sending node without the receiving node having any advance notification of the transfer. The receiving node does not necessarily know when the data string is being sent or the length of the message. Isochronous communication involves establishing specific bandwidth and data rate requirements that a session will need so data flow between source and destination is continual and uninterrupted. This is critical for delivery of applications that require a Constant Bit Rate (CBR) of information to be sent and delivered over the communication interface. Most terminals, dialup modems and local links are asynchronous by nature. Synchronous communication tends to be more expensive because of the need for sophisticated clocking mechanisms in the hardware. However, Synchronous communication can eliminate up to 20% of the associated overhead inherent to asynchronous communication. This would allow greater data throughput and better error detection. Synchronous communication is typically seen in higher speed connections. Simplex and Duplex communications In simplex communication mode data may flow only in one direction; one device assumes the role of sender and the other one assumes the role of receiver. These roles may not be reversed. In half-duplex transmission, data may travel in either direction, but only one unit can send at any one time. While one is in send mode the other is in receive mode. A full-duplex transmission involves a link that allows simultaneous sending and receiving of data in both directions. It involves two separate but parallel transmissions occurring simultaneously. Analog and Digital Communications In any computer communication system, data are transmitted across a medium from sender to receiver in the form of electrical signal. Analog communication Refers to any physical device or signal that can continuously vary in strength or quantity, for example voltage in a circuit. Signals flow across a wire in the form of electromagnetic waves. When viewed by an oscilloscope, these signals appear as continuous waves called sinusoidal waves. Sinusoidal wave have three attributes: o Amplitude: Level of voltage on a wire o Frequency: Number of oscillations, or cycles, of a wave in a specified length of time o Phase: The point to which a wave has advanced within it’s cycle A frequency rate of one cycle per second is defined as one Hertz (Hz). Thus, Hertz is a measure of frequency in cycles per second Digital Communications Refers to any physical device or signal that is coded in the binary form A binary code is a system that uses two symbols zero (0) and one (1) to represent data. A single 1 or 0 is referred to as binary digit, commonly called a bit. Signal is discrete, that is there is no in between. The signal consists of only 2 states: electrical current applied or no current at all. On = 1, Off = 0 Speed and Capacity of a communication Channel From a most general perspective, “speed” implies data rate, that is, how fast data can be transmitted from one node to another. Capacity implies the amount of data that can be carried by a communication channel. Bandwidth and Baud rate In analog communications, bandwidth refers to the total capacity of a communication channel. o It is the difference between the highest and lowest frequencies capable of being carried over the channel. In Digital communications, bandwidth refers to the data rate o It is the amount of data tat can be transferred over a communication medium in a given period. o Data is measured in bits per seconds (“bps”) and can vary considerably from one type of channel to another. Data rate (measured in bits per seconds) should not be confused with baud rate. A baud is a measure of signalling speed. It is the number of discrete changes in a single period of signal. Although baud represents a measurement of data transmission speed, it does not correspond to the number of bits transmitted per second. Throughput There is a difference between the maximum theoretical capacity of a communications channel and the actual data transmission rate. Extraneous factors such as node processing capability, input/output processor speed, operating system overhead , communications software overhead, and amount of traffic on the network at a given time all serve to reduce the actual data rate. Noise In the context of computer communications and networking, noise is any undesirable, extraneous signal in a transmission medium. Ambient noise: Also called thermal noise, is always present and is primarily generated by transmission equipment (transmitters, receivers, repeaters). Can also be induced by external sources such as fluorescent light transformers, electrical facilities, and heat. Impulse noise: Consists of intermittent signals induced by external sources such as lightning, switching equipment and heavy electrically operated machinery. It increases or decreases a circuit signal level. Whichever the type or source, noise degrades the quality of and performance of a communications channel and is one of the most common causes of transmission errors in computer networks. Although noise is always present, much of it can be avoided through proper cable installation. Multiplexing and Switching Multiplexing is a technique used to place multiple signals on a single communication channel. Switching is a process that involves establishing an appropriate path, which data message will follow as it travels throughout a network en route between a sending source and a destination node. Multiplexing In it’s simplest form, it involves combining data from several relatively low-speed input channels and transmitting these data across a single highspeed circuit. Many different transmissions are possible using a single medium. (One channel for voice, one channel for data, one for video) Each of these separate, independent transmissions can occur simultaneously. Multiplexing strategies: Frequency division multiplexing (FDM): Partitions the available transmission bandwidth in narrower bands, each being a separate channel. Each subfrequency is customized to the bandwidth of data it must carry. FDM transmissions are parallel by nature. Time division multiplexing (TDM): Enables more than one signal to be transmitted over the same channel but at different time interval. TDM assigns to each node connected to a channel an identification number and a small amount of time in which to transmit. TDM based transmissions are serially sequenced. Statistical multiplexing: Allocates part of a channel’s capacity only to nodes that have to transmit. This permits a greater number of devices to be connected because not all devices need to transmit at the same time. Demand access multiplexing (DAM): Involves the creating and management of a pool of frequencies. Pairs of communications frequencies are assigned to a requesting station – one pair for transmission, one pair for reception. When one or the other of the stations are finished communicating the frequencies are deallocated and returned to the frequency pool. Wavelength division multiplexing (WDM): Used with fiber-optic cables. The light sources, which are of different wavelength, are combined by a WDM multiplexer and transmitted over a single line. Inverse multiplexing: The reverse of multiplexing, Instead of partitioning a single communication medium into several channels, an inverse multiplexer combines several ‘smaller” channels into a high-speed circuit. Also called line aggregation. Switching Circuit switched: Dedicated physical circuit is established between source and destination nodes before any data transmission can take place. Remains in place for the duration of a transmission. Reserved exclusively for that senderreceiver pair. (Ex: Telephone communication) Packet switched: Instead of using a dedicated physical circuit, nodes share a communication channel via a virtual circuit. o A virtual circuit is a non-dedicated connection through a shared medium that gives the user the appearance of a dedicated, direct connection. Created by multiplexing a physical link so that the physical link can be shared by multiple network programs or data transmission. o In a packet switched network, messages are partitioned into packets, which may contain only a few hundreds bytes of data, accompanied by addressing information and sequence numbers. o Packet switched networks can employ 2 methods to deliver packets: Virtual circuit or datagram service. In a virtual circuit all packets are transported along the same virtual path as if it were a dedicated circuit, and store and forward method is employed: All packets are stored and then forwarded. In Datagram switching packets are transmitted independently of each other, packets can travel along different paths and can arrive out of order. In a circuit switched network only the first data message carries the destination address, which is needed to initially set up the link. Circuit-Switching vs Packet Switching Circuit Switched Packet Switched Bandwidth is allocated in advance and is garanteed for the entire transmission Bandwidth is acquired and released dynamically on an asnedded basis Once circuit is established, the full capacity of the circuit is available for use, and the capacity of the circuit will never be reduced due to other network activity Several communications can occur concurently between nodes using the virtual links over the same physical channel Circuit costs are independent of the amount of data being transmitted and hence any unused bandwidth is wasted As packet-switched networks become overloaded with more traffic, delays and congestion are introduced Packet-switched networks are more cost effective and offer better performance than circuitswitched networks. Network Architecture and the OSI Reference Model Network architecture is a formal, logical structure that defines how network devices and software interact and function. It defines communications protocols, message formats, and standards required for interoperability. OSI Model The Open Systems Interconnections (OSI) formally defines and codifies the concept of layered network architecture. Each layer is independent and isolated from other layers Each layer is responsible for performing specific set of functions and for providing specific set of services. Specific protocols define both the service and the manner in which these services are provided. Seven layers o Application o Presentation o Session o Transport o Network o Data link o Physical Each layer consists of two parts: a service definition, which defines the type of services a layer provides, and a protocol specification that details the rules governing the implementation of a particular service. Lower layers provide services to upper layers. OSI Services types The OSI layers provide Connection-Oriented or Connectionless services. Some layers may also provide multiplexing. Services are available at service access points (SAP), with each SAP having a corresponding address. Connection-Oriented: Implies that prior to the transfer of data a physical (and virtual) is established. The link remains for the duration of transmission, when transmission is terminated then the link is removed. ( wasted bandwidth, high potential for hung network, and guaranteed sequential arrival of packet at destination.) Connectionless: No physical link is established prior to data transmission. Message partitioned into packets and routed through the network. Each packet is independent of the others, must carry a destination address and can arrive out of sequence. Can be Reliable or unreliable. o Reliable: Requires an acknowledgement of receipt of data. Acknowledged datagram service o Unreliable: Does not require acknowledgment of receipt of data. Datagram service. <-----------Hardware---------> <-------------------Software------------------> Summary of OSI Layers and Functions Aplication (7) Provides user application services and procedures Application or ServiceOriented Layers Presentation (6) Structures data in a mutually agreed format; concerned with issues such as how to code and format data; includes data encryption. Session (5) Controls process communications; responsible for segmenting, buffering, and synchronization Transport (4) Provides end-to-end control; responsible Delivery and for partitioning and reassembling messages verification services Network (3) Provides routing services for transferring Communication or data across the network; performs network management, Network Oriented packet formatting Layers Data Link (2) Organizes data into frames; provides flow initialization, flow control, link termination, and error control Physical (1) Transfers bits across link, defines physical characteristics of media