Data and Computer Communications
An interconnected collection of autonomous computers. Two computers are said to be interconnected if they are able to exchange information. A system with one control unit and many slaves is not a network.
Computer Network (Cont.)
The existence of multiple autonomous computers is transparent to the user. Allocation of jobs to processor and files to disks and all other system functions must be automatic. Distributed system is a software system built on top of a network. Overlap between distributed systems and Computer Network Example: More files around System can involve the User movement.
User must explicitly do everything.
Uses of Computer Network
Companies Resource Sharing Geography People Access to information remote Social Issues News-groups Bulletin Boards
High reliability: replication
Saving money on the flow
Person To Person communication & email Interactive Entertainment
Client-server model Scalability: Ability to increase system performance gradually as the workload grows.
.Computer Network (Cont.
A Communications Model
Generates data to be transmitted
Converts data into transmittable signals
Converts received signal into data
Takes incoming data
.Simplified Communications Model .
Key Communications Tasks
Transmission system utilization Interfacing Signal generation Synchronization Exchange management Error detection and correction Addressing and routing Recovery Message formatting Security Network management
sent by any machine.Network Hardware
Broadcast Network Single communication channel that is shared by all the machines on the network.
. All the others receive ³Packets´ in certain contexts. Point ± To ± Point Network Many connections between individual pairs of machines A packet may have to visit one or more intermediate machine. Multicasting: transmission to a subnet of the machines.
Routing algorithms play an important role in PTP networks. An address field within the packet specifies for whom it is intended.
Simplified Data Communications Model
Point to point communication not usually practical
Devices are too far apart Large set of devices would need impractical number of connections
Solution is a communications network
Simplified Network Model
Local Area Networks
Building or small campus
Usually owned by same organization as attached devices Data rates much higher Usually broadcast systems Now some switched systems and ATM are being introduced
BUS (Ethernet) Ring (Token ring)
.Local Area Networks (Cont.)
LAN MAN WAN INTERNET
Size Transmission Technology Topology
Restricted in Size
Single Cable 10 to 100 Mbps Low delay (ms) Very few Errors Megabits/Sec.
Each bus has a head-end. traffics to the left uses the lower one.
. a device that initiates transmission activity.MAN
Metropolitan Area Network Support data and voice No switching elements Standard: DQDB (Distributed Queue Dual Bus) Two unidirectional buses to which all the computers are connected. Traffic that is destined for a computer to the right of the sender uses the upper bus.
Wide Area Networks
Large geographical area Crossing public rights of way Rely in part on common carrier circuits Alternative technologies
Circuit switching Packet switching Frame relay Asynchronous transfer mode (ATM)
Host (end system).Circuits. Subnet (communication subnet).
. WANs typically have irregular topologies.
WAN CONSISTS OF
Transmission Lines:.Wide Area Networks (Cont. Channels or Tanks
Switching Elements:Specialized computers used to connect two or more transmission lines.
Collection of interconnected networks. SUBNET : (only routers). WAN : (router + hosts). Example: A collection of LAN s connected by a WAN.
Dedicated communications path established for the duration of the conversation E.G.
Data sent out of sequence Small chunks (packets) of data at a time Packets passed from node to node between source and destination Used for terminal to computer and computer to computer communications
Packet switching systems have large overheads to compensate for errors Modern systems are more reliable Errors can be caught in end system Most overhead for error control is stripped out
Asynchronous Transfer Mode
ATM (cell relay) Evolution of frame relay Little overhead for error control Fixed packet (called cell) length Anything from 10mbps to Gbps Constant data rate using packet switching technique Offers a constant data rate channel
Integrated Services Digital Network
ISDN Designed to replace public telecom system Wide variety of services Entirely digital domain First generation ( narrowband ISDN )
64 kbps channel is the basic unit Circuit-switching orientation Contributed to frame relay
Second generation ( broadband ISDN )
100s of mbps Packet-switching orientation Contributed to ATM ( cell relay )
Used for communications between entities in a system Must speak the same language Entities
User applications E-mail facilities Terminals
Computer Terminal Remote sensor
Protocol: is an agreement between the communicating parties on how communication is to proceed. no data directly transferred from layer n on one machine to layer n on another machine.Protocol Hierarchies
Organized as a series of layers or levels. Layer n on one-machine carries on a conversation with layer n on another machine.
. The purpose of each layer is to offer certain services to the higher layers. In reality. Peers communicate using the protocol.
The design of layers helps in:
Minimizing the amount of information that must be passed between layers Make it simpler to reduce the implementation of one layer with a completely different one
Protocol stack: A list of protocol used by a certain system.)
Each layer passes data and control information to the layer immediately below it. one protocol per layer.Protocol Hierarchies (Cont.
. Between each pair of adjacent layers there is an interface .
Key Elements of a Protocol
Data formats Signal levels
Control information Error handling
Speed matching Sequencing
Design Issues for the Layers
Addressing. Data transfer.
Simplex communication. Half-duplex communication. Full-duplex communication.
Number and priorities of the logical connection channels. Many networks provide at least two logical channels per connection, one for normal data and one for urgent data. Error control.
Error detecting code. Error correcting code.
Design Issues (Cont.)
How to receive data in order (sequence no.). How to keep a fast sender from swamping a slow receiver with data (flow control). Size of the message: disassembling >transmitting >reassembling messages. Routing: multiple paths between source and destination.
Task of communication broken up into modules For example file transfer could use three modules
File transfer application Communication service module Network access module
Simplified File Transfer Architecture
A Three Layer Model
Network access layer Transport layer Application layer
.Network Access Layer
Exchange of data between the computer and the network Sending computer provides address of destination May invoke levels of service Dependent on type of network used (LAN. packet switched etc.
Reliable data exchange Independent of network being used Independent of application
Support for different user applications e. file transfer
Software [example: process. Layer n called service provider.
The entities in layer n implement a service used by layer n+1. Services are available at sap s (service access points). Hardware [example: intelligent I/O chip. Layer n + 1 called service user.Interfaces and Services
Active elements in each layer are called ENTITIES.]. Each SAP has an address that uniquely identifies it. Entity.
IDU: interface data unit.
At a typical interface. SDU: service data unit.
. In order to transfer the SDU. the layer n + 1 entity passes an IDU to the layer n entity through the SAP. ICI: interface control info. the layer n entity may have to fragment it into several pieces. each of which is given a header and send to as a separate PDU (protocol data unit) such as a packet.Interfaces and Services (Cont.
Two levels of addressing required Each computer needs unique network address Each application on a (multi-tasking) computer needs a unique address within the computer
The service access point or SAP
Protocol Architectures and Networks
Protocols in Simplified Architecture
Protocol Data Units (PDU)
At each layer. protocols are used to communicate Control information is added to user data at each layer Transport layer may fragment user data Each fragment has a transport header added
Destination SAP Sequence number Error detection code
This gives a transport protocol data unit
Adds network header
Network address for destination computer Facilities requests
Connection Oriented Modeled after the telephone system Establish a connection Use the Connection Release the connection Acts like a tube: receive data by the same order was sent Messages could be received in different order than it was sent with Connectionless Modeled after posted system
Reliable connection oriented service
Unreliable connectionless service (not acknowledged)
Request reply service
Sender transmits a single datagram containing a request. Used to implement communication in the client-server model. the reply contains the answer.
Operation of a Protocol Architecture
CONNECT.request Request a connection to be established. CONNECT.indication Signal the called party.
Example: Connection oriented service with 8 service primitives. Primitive tells the service to
Perform some action OR Report an action by a peer entity.Service Primitives
A service is formally specified by a set of primitives (operations) available to a user or other entity to access the service.
DISCONNECT. DATA.request Request that a connection be released.confirm Tell the caller whether the call was accepted.response Used by the caller to accept/reject calls.indication Signal the peer about the request. DISCONNECT. CONNECT.indication Signal the arrival of data.)
Confirmed (Example: CONNECT).request Request the data be sent. Service Could be. Unconfirmed (Example: DISCONNECT).
. DATA.Example (Cont.
A set of rules governing the format and meaning of the frames.
REFERENCE MODELS OSI References Model TCP/IP Reference Model
. Protocol. provided they do not change the service visible to their users. Entities are free to change their protocols. or messages that are exchanged by the peer entities within a layer. packets.Relationship of Services to Protocols
Service: is a set of primitives (operations) that a layer provides to the layer above it. Entities use protocols in order to implement their service definitions.
Application layer. Physical layer.
. Internet layer. No official model but a working one.TCP/IP Protocol Architecture
Developed by the US defense advanced research project agency (DARPA) for its packet switched network (ARPANET). Network access layer. Used by the global internet. Host to host or transport layer.
Physical interface between data transmission device (e. Computer) and transmission medium or network Characteristics of transmission medium Signal levels Data rates Etc.G.
Network Access Layer
Exchange of data between end system and network Destination address provision Invoking services like priority
Internet Layer (IP)
Systems may be attached to different networks Routing functions across multiple networks Implemented in end systems and routers
Transport Layer (TCP)
Reliable delivery of data Ordering of delivery
Support for user applications e. http. SMPT
TCP/IP Protocol Architecture Model
Open systems interconnection Developed by the international organization for standardization (ISO) Seven layers A theoretical system delivered too late! TCP/IP is the de facto standard
Reference model: deals with connecting open systems that are. Open for communication with other systems.
. OSI (Open Systems Interconnection).OSI References Model
International Standards Organization.
The layer boundaries should be chosen to minimize the information flow across the interfaces.
. The number of layers should be large enough that distinct functions need not be thrown together on the same layer out of necessity. The function of each layer should be chosen with an eye toward defining internationally standardized protocols.Principles
A layer should be created where a different level of abstraction is needed. Each layer should perform a well-defined function.
Application Presentation Session Transport Network Data link Physical
The Physical Layer
Deals with transmitting raw bits over a communication channel.
. electrical and procedural interfaces. How many microseconds a bit lasts. Mechanics. How many volts for 1 or 0.
Insert the frame delimiter.
. Flow control. Solve the problems caused by damaged. Process the acknowledgement frames sent back by the receiver. lost and duplicate frames. Full duplex transmission (piggybacking) Medium access sub layer deals with how to control access to the shared channel in broadcast networks.Data link Layer
Break the input data up into data frames.
Routes can be static or dynamic Bottleneck. In broadcast networks.
Routing packets from source to destination. routing problem is simple. larger packet service). congestion Connect heterogeneous networks (different addressing method. so the network layer is thin.
split it up into smaller units if needed. dividing the data among the network connections to improve throughput
. the transport layer might create multiple network connections. pass these to the network layer and ensure that the all pieces arrive correctly at the other end Under normal conditions. the transport layer creates a distinct network connection for each transport connection required by the session layer If the transport connection requires a high throughput.Transport Layer
Accept data from the session layer.
Transport layer determines what type of service to provide the session layer with and ultimately. the users of the entire network The transport layer is a true end-to-end layer. from source to destination Multiple connections will be entering and leaving each host.Transport Layer (Cont. There is a need to tell which message belongs to which connection (transport header) Establishing and deleting connections across the network Flow control between hosts (as oppose between routers) so fast host cannot overrun a slow one
Only the side holding the token may perform the critical operation. Synchronization: insert a checkpoint.Session Layer
Allows users on different machines to establish sessions between them A session might be used to allow a user to log into a remote timesharing system or to transfer a file between two machines Example: token management.
Example: sending file for 20 hours.
. After a crash the portion after the checkpoint will be resend again.
. A typical example of a presentation service is encoding data in a standard agreed upon way. [Character strings.Presentation Layer
Concerned with the syntax and semantics of the information transmitted. floating-point numbers ]. integers.
Example: incompatible terminal type. a piece of s/w must be written to map the functions of the network virtual terminal onto the real terminal. To handle each terminal type.Application Layer
The application layer contains a variety of protocols that are commonly needed.
. Other application is file transfer(ftp). One way to solve this problem is to define an abstract network virtual terminal that editor can be written to deal with.
TCP/IP and OSI Protocol Architectures
.Example Of Networks
Novell NETWARE. Network layer runs IPX (internet packet exchange).
NCP (network core protocol).
Client-server model. Transport protocol. Transport service & other services. SPX (sequenced packet exchange): Just transport service. IPX/SPX. IPX uses 10 byte address (IP uses 4 bytes) flat addressing.
The agent on the local router machine sees this request.
.Example Of Networks (Cont. it sends a request for a server. About once a minute. each server broadcasts a packet giving its address and telling what services it offers. SAP (Service Advertising Protocol) is used for broadcasting Routers run some kind of special agent processes to construct databases of which servers are running. When a client is booted. and matches up the request with the best server.)
The application can choose between NCP & SPX
Transport control field counts how many networks the packet has traversed.
The APRANET. the ARPANET had been overtaken by newer networks.
. Each node consists of IMP and a host. 56-kbps lines leased from telephone companies interconnect the IMPS. Host sends messages of up to 8063 bits to its IMP. consisting of subnet and host computers. Each IMP would be connected to at least two other imps.
Packet switched network.Example Of Networks (Cont. IMP breaks the message into packets of at most 1008 bits and forwards them independently toward the destination. By 1990. IMPS (interface message processors) connected by transmission lines.
Example Of Networks (Cont. national science Foundation) began designing a high-speed successor to the ARPANET that would be open to all university research groups.S.)
By 1984 NSF Fig 1.
.26(the U. By 1995 the NSFNET backbone was no longer needed to interconnect the NSF regional networks because numerous companies were running commercial IP Networks.
The Internet. In 1992. Four main applications.Example Of Networks (Cont.
. to promote the use of the internet. File transfer: FTP. News. Remote login: telnet. rlogin. the internet society was set up.
A 1-Gbps network can reduce this to 20. Gigabit networks provide better bandwidth but not always much better delay.
The backbones operate at megabit speeds.)
Gigabit TESTBEDS. Example: sending a 1-kbit packet from NYC to san Francisco at (1 mbps) take. Examples:.
. 1 msec to pump the bits out and 20 msec for the delay.telemedicine & virtual meeting. bandwidth is what counts.001 msec. and these are the applications for which gigabit networks will make a big difference. For some applications. for a total of 21 msec.Example Of Networks (Cont.
Example Data Communication Services
SMDS X.25 FRAME RELAY BROADBAND ISDN AND ATM