0% found this document useful (0 votes)
35 views63 pages

CS3591-CN Unit1 Notes

Computer Networks Unit 1 Notes

Uploaded by

agignatius
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views63 pages

CS3591-CN Unit1 Notes

Computer Networks Unit 1 Notes

Uploaded by

agignatius
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 63

CS3591 – Computer Networks Unit-1

INTRODUCTION TO NETWORKS
 A network is a set of devices (often referred to as nodes) connected by
communication links.
 A node can be a computer, printer, or any other device capable of sending or
receiving data generated by other nodes on the network.
 When we communicate, we are sharing information. This sharing can be local or
remote.

CHARACTERISTICS OF A NETWORK
The effectiveness of a network depends on three characteristics.
1. Delivery: The system must deliver data to the correct destination.
2. Accuracy: The system must deliver data accurately.
3. Timeliness: The system must deliver data in a timely manner.

CRITERIA NECESSARY FOR AN EFFECTIVE AND EFFICIENT


NETWORK
A network must be able to meet a certain number of criteria. The most important of
these are performance, reliability, and security.

Factors that affect the Factors that affect the Factors that affect the
Performance of a network: Reliability of a network: Security of a network:

1. Number of users 1. Efficiency of software. 1.Protecting data from


2. Type of transmission 2. Frequency of failure unauthorized access and
medium 3.Recovery time of a viruses.
3. Capabilities of the network after a failure
connected hardware

1
CS3591 – Computer Networks Unit-1

COMPONENTS INVOLVED IN A NETWORK PROCESS

The five components are:


1. Message - It is the information to be communicated. Popular forms of
information include text, pictures, audio, video etc.
2. Sender - It is the device which sends the data messages. It can be a computer,
workstation, telephone handset etc.
3. Receiver - It is the device which receives the data messages. It can be a
computer, workstation, telephone handset etc.
4. Transmission Medium - It is the physical path by which a message travels from
sender to receiver. Some examples include twisted-pair wire, coaxial cable,
radiowaves etc.
5. Protocol - It is a set of rules that governs the data communications. It represents
an agreement between the communicating devices. Without a protocol, two
devices may be connected but not communicating.

KEY ELEMENTS OF PROTOCOL


 Syntax: Refers to the structure or format of the data, meaning the order in which
they are presented.
 Semantics: Refers to the meaning of each section of bits.
 Timing: Refers to two characteristics. (1). When data should be sent and (2). How
fast they can be sent.

TRANSMISSION MODES
o The way in which data is transmitted from one device to another device is known
as transmission mode.
o The transmission mode is also known as the communication mode.
o Each communication channel has a direction associated with it, and transmission
media provide the direction. Therefore, the transmission mode is also known as a
directional mode.
o The transmission mode is defined in the physical layer.

2
CS3591 – Computer Networks Unit-1

Types of Transmission mode

The Transmission mode is divided into three categories:

o Simplex Mode
o Half-duplex Mode
o Full-duplex mode (Duplex Mode)

SIMPLEX MODE

o In Simplex mode, the communication is unidirectional, i.e., the data flow in one
direction.
o A device can only send the data but cannot receive it or it can receive the data but
cannot send the data.
o This transmission mode is not very popular as mainly communications require the
two-way exchange of data. The simplex mode is used in the business field as in
sales that do not require any corresponding reply.
o The radio station is a simplex channel as it transmits the signal to the listeners but
never allows them to transmit back.
o Keyboard and Monitor are the examples of the simplex mode as a keyboard can
only accept the data from the user and monitor can only be used to display the
data on the screen.
o The main advantage of the simplex mode is that the full capacity of the
communication channel can be utilized during transmission.

Advantage of Simplex mode:


o In simplex mode, the station can utilize the entire bandwidth of the
communication channel, so that more data can be transmitted at a time.

Disadvantage of Simplex mode:


o Communication is unidirectional, so it has no inter-communication between
devices.

3
CS3591 – Computer Networks Unit-1

HALF-DUPLEX MODE

o In a Half-duplex channel, direction can be reversed, i.e., the station can transmit
and receive the data as well.
o Messages flow in both the directions, but not at the same time.
o The entire bandwidth of the communication channel is utilized in one direction at
a time.
o In half-duplex mode, it is possible to perform the error detection, and if any error
occurs, then the receiver requests the sender to retransmit the data.
o A Walkie-talkie is an example of the Half-duplex mode.
o In Walkie-talkie, one party speaks, and another party listens. After a pause, the
other speaks and first party listens. Speaking simultaneously will create the
distorted sound which cannot be understood.

Advantage of Half-duplex mode:


o In half-duplex mode, both the devices can send and receive the data and also can
utilize the entire bandwidth of the communication channel during the
transmission of data.

Disadvantage of Half-Duplex mode:


o In half-duplex mode, when one device is sending the data, then another has to
wait, this causes the delay in sending the data at the right time.

FULL-DUPLEX MODE

o In Full duplex mode, the communication is bi-directional, i.e., the data flow in
both the directions.
o Both the stations can send and receive the message simultaneously.
o Full-duplex mode has two simplex channels. One channel has traffic moving in
one direction, and another channel has traffic flowing in the opposite direction.
o The Full-duplex mode is the fastest mode of communication between devices.
o The most common example of the full-duplex mode is a Telephone network.
When two people are communicating with each other by a telephone line, both
can talk and listen at the same time.

4
CS3591 – Computer Networks Unit-1

Advantage of Full-duplex mode:


o Both the stations can send and receive the data at the same time.

Disadvantage of Full-duplex mode:


o If there is no dedicated path exists between the devices, then the capacity of the
communication channel is divided into two parts.

COMPARISON - SIMPLEX, HALF-DUPLEX AND FULL-DUPLEX MODE

BASIS FOR SIMPLEX HALF-DUPLEX FULL-DUPLEX


COMPARISON MODE MODE MODE

Direction of Communication is Communication is Communication


communication unidirectional. bidirectional, but is bidirectional.
one at a time.

Send/Receive A device can only Both the devices Both the devices
send the data but can send and can send and
cannot receive it or receive the data, receive the data
it can only receive but one at a time. simultaneously.
the data but cannot
send it.

Example Radio, Keyboard, Walkie-Talkie Telephone


and monitor. network.

LINE CONFIGURATION / LINE CONNECTIVITY

Line configuration refers to the way two or more communication devices attach to a
link. A link is a communications pathway that transfers data from one device to another .
There are two possible line configurations:
i. Point to Point (PPP): Provides a dedicated Communication link between two
devices. It is simple to establish. The most common example for Point-to-Point
connection is a computer connected by telephone line. We can connect the two
devices by means of a pair of wires or using a microwave or satellite link.

5
CS3591 – Computer Networks Unit-1

ii. MultiPoint : It is also called Multidrop configuration. In this connection two or


more devices share a single link.There are two kinds of Multipoint Connections.

 Spatial Sharing: If several devices can share the link simultaneously,


it is called Spatially shared line configuration

 Temporal (Time) Sharing: If users must take turns using the link ,
then its called Temporally shared or Time Shared Line Configuration.

NETWORK TOPOLOGY
Two or more devices connect to a link. Two or more links form a topology.Topology is
defined as
(1) The way in which a network is laid out physically.
(2)The geometric representation of the relationship of all the links and nodes to
one-another.
The various types of topologies are : Bus, Ring, Tree, Star, Mesh and Hybrid.

6
CS3591 – Computer Networks Unit-1

BUS TOPOLOGY

 Bus topology is a network type in which every computer and network device is
connected to single cable.
 The long single cable acts as a backbone to link all the devices in a network.
 When it has exactly two endpoints, then it is called Linear Bus topology.
 It transmits data only in one direction.

Advantages of Bus Topology Disadvantages of Bus Topology


1. It is cost effective. 1. Cables fails then whole network fails.
2. Cable required is least compared to 2. If network traffic is heavy or nodes are
other network topology. more, the performance of the network
3. Used in small networks. decreases.
4. It is easy to understand. 3. Cable has a limited length.
5. Easy to expand joining two cables 4. It is slower than the ring topology.
together

RING TOPOLOGY

 In a ring topology, each device has a dedicated point-to-point connection with


only the two devices on either side of it.
 A signal is passed along the ring in one direction, from device to device, until it
reaches its destination.
 Each device in the ring incorporates a repeater.
 When a device receives a signal intended for another device, its repeater
regenerates the bits and passes them along.

7
CS3591 – Computer Networks Unit-1

Advantages of Ring Topology Disadvantages of Ring Topology


1. Transmitting network is not affected by 1. Troubleshooting is difficult in ring
high traffic or by adding more nodes, topology.
as only the nodes having tokens can 2. Adding or deleting the computers
transmit data. disturbs the network activity.
2. Cheap to install and expand 3. Failure of one computer disturbs the
whole network

TREE TOPOLOGY

 It has a root node and all other nodes are connected to it forming a hierarchy.
 It is also called hierarchical topology.
 It should at least have three levels to the hierarchy.
 Tree topology is ideal if workstations are located in groups.
 They are used in Wide Area Network.

Advantages of Tree Topology Disadvantages of Tree Topology


1. Extension of bus and star topologies. 1. Heavily cabled.
2. Expansion of nodes is possible and easy. 2. Costly.
3. Easily managed and maintained. 3. If more nodes are added maintenance is
4. Error detection is easily done. difficult.
4. Central hub fails, network fails.

STAR TOPOLOGY

 In a star topology, each device has a dedicated point-to-point link only to a


central controller, usually called a hub.
 The devices are not directly linked to one another.
 The controller acts as an exchange.
 If one device wants to send data to another, it sends the data to the controller,
which then relays the data to the other connected device.

8
CS3591 – Computer Networks Unit-1

Advantages of Star Topology Disadvantages of Star Topology


1. Fast performance with few nodes and 1. Cost of installation is high.
low network traffic. 2. Expensive to use.
2. Hub can be upgraded easily. 3. If the hub fails, then the whole
3. Easy to troubleshoot. network is stopped.
4. Easy to setup and modify. 4. Performance is based on the hub that
5. Only that node is affected which has is it depends on its capacity
failed, rest of the nodes can work
smoothly

MESH TOPOLOGY

 In a mesh topology, every device has a dedicated point-to-point link to every


other device.
 The term dedicated means that the link carries traffic only between the two
devices it connects.
 The number of physical links in a fully connected mesh network with n nodes is
given by n (n – 1) / 2.

Advantages of Mesh Topology Disadvantages of Mesh Topology


1. Each connection can carry its own data 1. Installation and configuration is
load. difficult.
2. It is robust. 2. Cabling cost is more.
3. Fault is diagnosed easily. 3. Bulk wiring is required.
4. Provides security and privacy.

9
CS3591 – Computer Networks Unit-1

HYBRID TOPOLOGY

 Hybrid Topology is a combination of one or more basic topologies.


 For example if one department in an office uses ring topology, the other
departments uses star and bus topology, then connecting these topologies will
result in Hybrid Topology.
 Hybrid Topology inherits the advantages and disadvantages of the topologies
included.

Advantages of Hybrid Topology Disadvantages of Hybrid Topology


1. Reliable as Error detecting and trouble 1. Complex in design.
shooting is easy. 2. Costly
2. Effective.
3. Scalable as size can be increased easily.
4. Flexible.

NETWORK TYPES
 A computer network is a group of computers linked to each other that enables the
computer to communicate with another computer and share their resources, data,
and applications.
 A computer network can be categorized by their size.
 A computer network is mainly of three types:
1. Local Area Network (LAN)
2. Wide Area Network (WAN)
3. Metropolitan Area Network (MAN)

LOCAL AREA NETWORK (LAN)


o Local Area Network is a group of computers connected to each other in a small
area such as building, office.
o LAN is used for connecting two or more personal computers through a
communication medium such as twisted pair, coaxial cable, etc.

10
CS3591 – Computer Networks Unit-1

o It is less costly as it is built with inexpensive hardware such as hubs, network


adapters, and ethernet cables.
o The data is transferred at an extremely faster rate in Local Area Network.
o LAN can be connected using a common cable or a Switch.

Advantages of LAN Disadvantages of LAN


 Resource Sharing  High Setup Cost
 Software Applications Sharing.  Privacy Violations
 Easy and Cheap Communication  Data Security Threat
 Centralized Data.  LAN Maintenance Job
 Data Security  Covers Limited Area
 Internet Sharing

WIDE AREA NETWORK (WAN)


o A Wide Area Network is a network that extends over a large geographical area
such as states or countries.
o A Wide Area Network is quite bigger network than the LAN.

11
CS3591 – Computer Networks Unit-1

o A Wide Area Network is not limited to a single location, but it spans over a large
geographical area through a telephone line, fibre optic cable or satellite links.
o The internet is one of the biggest WAN in the world.
o A Wide Area Network is widely used in the field of Business, government, and
education.
o WAN can be either a point-to-point WAN or Switched WAN.

Point-to-point WAN Switched WAN

Advantages of Wide Area Network: Disadvantages of Wide Area Network:


o Large Geographical area o Security issue
o Centralized data o Needs Firewall & antivirus software
o Exchange messages o High Setup cost
o Sharing of software and resources o Troubleshooting problems
o High bandwidth

METROPOLITAN AREA NETWORK (MAN)

o A metropolitan area network is a network that covers a larger geographic area by


interconnecting a different LAN to form a larger network.
o It generally covers towns and cities (50 km)
o In MAN, various LANs are connected to each other through a telephone
exchange line.
o Communication medium used for MAN are optical fibers, cables etc.
o It has a higher range than Local Area Network(LAN).It is adequate for distributed
computing applications.

12
CS3591 – Computer Networks Unit-1

INTERNETWORK

o An internetwork is defined as two or more computer network LANs or WAN.


o An Internetwork can be formed by joining two or more individual networks by
means of various devices such as routers, gateways and bridges.
o An interconnection between public, private, commercial, industrial, or
government computer networks can also be defined as internetworking.

Types of Internetwork
Extranet Intranet
An extranet is used for information
An intranet belongs to an organization
sharing. The access to the extranet is
which is only accessible by
restricted to only those users who have
the organization's employee or members.
login credentials. An extranet is the lowest
The main aim of the intranet is to share the
level of internetworking. It can be
information and resources among the
categorized as MAN, WAN or other
organization employees. An intranet
computer networks. An extranet cannot
provides the facility to work in groups and
have a single LAN, atleast it must have
for teleconferences.
one connection to the external network.

13
CS3591 – Computer Networks Unit-1

MESSAGE SWITCHING

o Message Switching is a switching technique in which a message is transferred as


a complete unit and routed through intermediate nodes at which it is stored and
forwarded.
o In Message Switching technique, there is no establishment of a dedicated path
between the sender and receiver.
o The destination address is appended to the message. Message Switching provides
a dynamic routing as the message is routed through the intermediate nodes based
on the information available in the message.
o Message switches are programmed in such a way so that they can provide the
most efficient routes.
o Each and every node stores the entire message and then forward it to the next
node. This type of network is known as store and forward network.
o Message switching treats each message as an independent entity.

PROTOCOL LAYERING
 In networking, a protocol defines the rules that both the sender and receiver and
all intermediate devices need to follow to be able to communicate effectively.
 A protocol provides a communication service that the process use to exchange
messages.
 When communication is simple, we may need only one simple protocol.
 When the communication is complex, we may need to divide the task between
different layers, in which case we need a protocol at each layer, or protocol
layering.
 Protocol layering is that it allows us to separate the services from the
implementation.
 A layer needs to be able to receive a set of services from the lower layer and to
give the services to the upper layer.
 Any modification in one layer will not affect the other layers.

14
CS3591 – Computer Networks Unit-1

Basic Elements of Layered Architecture


 Service: It is a set of actions that a layer provides to the higher layer.
 Protocol: It defines a set of rules that a layer uses to exchange the information
with peer entity. These rules mainly concern about both the contents and order of
the messages used.
 Interface: It is a way through which the message is transferred from one layer to
another layer.

Features of Protocol Layering


1. It decomposes the problem of building a network into more manageable
components.
2. It provides a more modular design.

Principles of Protocol Layering


1. The first principle dictates that if we want bidirectional communication, we need
to make each layer so that it is able to perform two opposite tasks, one in each
direction.
2. The second principle that we need to follow in protocol layering is that the two
objects under each layer at both sites should be identical.

Protocol Graph
 The set of protocols that make up a network system is called a protocol graph.
 The nodes of the graph correspond to protocols, and the edges represent a
dependence relation.
 For example, the Figure below illustrates a protocol graph consists of protocols
RRP (Request/Reply Protocol) and MSP (Message Stream Protocol) implement
two different types of process-to-process channels, and both depend on the HHP
(Host-to- Host Protocol) which provides a host-to-host connectivity service

15
CS3591 – Computer Networks Unit-1

OSI MODEL
o OSI stands for Open System Interconnection.
o It is a reference model that describes how information from a software application
in one computer moves through a physical medium to the software application in
another computer.
o OSI consists of seven layers, and each layer performs a particular network
function.
o OSI model was developed by the International Organization for Standardization
(ISO) in 1984, and it is now considered as an architectural model for the inter-
computer communications.
o OSI model divides the whole task into seven smaller and manageable tasks. Each
layer is assigned a particular task.
o Each layer is self-contained, so that task assigned to each layer can be performed
independently.

ORGANIZATION OF THE OSI LAYERS

16
CS3591 – Computer Networks Unit-1

FUNCTIONS OF THE OSI LAYERS


1. PHYSICAL LAYER

The physical layer coordinates the functions required to transmit a bit stream over a
physical medium.
The physical layer is concerned with the following functions:
 Physical characteristics of interfaces and media - The physical layer defines
the characteristics of the interface between the devices and the transmission
medium.
 Representation of bits - To transmit the stream of bits, it must be encoded to
signals. The physical layer defines the type of encoding. 
 Signals: It determines the type of the signal used for transmitting the information .
 Data Rate or Transmission rate - The number of bits sent each second –is also
defined by the physical layer.
 Synchronization of bits - The sender and receiver must be synchronized at the
bit level. Their clocks must be synchronized.
 Line Configuration - In a point-to-point configuration, two devices are
connected together through a dedicated link. In a multipoint configuration, a link
is shared between several devices. 
 Physical Topology - The physical topology defines how devices are connected to
make a network. Devices can be connected using a mesh, bus, star or ring
topology.
17
CS3591 – Computer Networks Unit-1

 Transmission Mode - The physical layer also defines the direction of


transmission between two devices: simplex, half-duplex or full-duplex.

2. DATA LINK LAYER

It is responsible for transmitting frames from one node to the next node.
The other responsibilities of this layer are
 Framing - Divides the stream of bits received into data units called frames.
 Physical addressing – If frames are to be distributed to different systems on the
network , data link layer adds a header to the frame to define the sender and
receiver.
 Flow control- If the rate at which the data are absorbed by the receiver is less
than the rate produced in the sender ,the Data link layer imposes a flow ctrl
mechanism.
 Error control- Used for detecting and retransmitting damaged or lost frames and
to prevent duplication of frames. This is achieved through a trailer added at the
end of the frame.
 Medium Access control -Used to determine which device has control over the
link at any given time.

3. NETWORK LAYER

This layer is responsible for the delivery of packets from source to destination.
It determines the best path to move data from source to the destination based on the
network conditions, the priority of service, and other factors.
The other responsibilities of this layer are
 Logical addressing - If a packet passes the network boundary, we need another
addressing system for source and destination called logical address. This
addressing is used to identify the device on the internet.
 Routing – Routing is the major component of the network layer, and it
determines the best optimal path out of the multiple paths from source to the
destination.

4. TRANSPORT LAYER

It is responsible for Process to Process delivery. That is responsible for source-to-


destination (end-to-end) delivery of the entire message, It also ensures whether the
message arrives in order or not.
The other responsibilities of this layer are
 Port addressing / Service Point addressing - The header includes an address
called port address / service point address. This layer gets the entire message to
the correct process on that computer.
 Segmentation and reassembly - The message is divided into segments and each
segment is assigned a sequence number. These numbers are arranged correctly on
the arrival side by this layer.
18
CS3591 – Computer Networks Unit-1

 Connection control - This can either be connectionless or connection oriented.


 The connectionless treats each segment as an individual packet and
delivers to the destination.
 The connection-oriented makes connection on the destination side before
the delivery. After the delivery the termination will be terminated.
 Flow control - The transport layer also responsible for flow control but it is
performed end-to-end rather than across a single link.
 Error Control - Error control is performed end-to-end rather than across the
single link..

5. SESSION LAYER

This layer establishes, manages and terminates connections between applications.


The other responsibilities of this layer are
 Dialog control - Session layer acts as a dialog controller that creates a dialog
between two processes or we can say that it allows the communication between
two processes which can be either half-duplex or full-duplex.
 Synchronization- Session layer adds some checkpoints when transmitting the
data in a sequence. If some error occurs in the middle of the transmission of data,
then the transmission will take place again from the checkpoint. This process is
known as Synchronization and recovery.

6. PRESENTATION LAYER

It is concerned with the syntax and semantics of information exchanged between two
systems.
The other responsibilities of this layer are
 Translation – Different computers use different encoding system, this layer is
responsible for interoperability between these different encoding methods. It will
change the message into some common format.
 Encryption and decryption-It means that sender transforms the original
information to another form and sends the resulting message over the n/w. and
vice versa.
 Compression and expansion-Compression reduces the number of bits contained
in the information particularly in text, audio and video.

7. APPLICATION LAYER
This layer enables the user to access the network. It handles issues such as network
transparency, resource allocation, etc. This allows the user to log on to remote user.
The other responsibilities of this layer are
 FTAM (File Transfer, Access, Management) - Allows user to access files in a
remote host.
 Mail services - Provides email forwarding and storage.
 Directory services - Provides database sources to access information about
various sources and objects.

19
CS3591 – Computer Networks Unit-1

TCP / IP PROTOCOL SUITE


 The TCP/IP architecture is also called as Internet architecture.
 It is developed by the US Defense Advanced Research Project Agency (DARPA)
for its packet switched network (ARPANET).
 TCP/IP is a protocol suite used in the Internet today.
 It is a 4-layer model. The layers of TCP/IP are
1. Application layer
2. Transport Layer (TCP/UDP)
3. Internet Layer
4. Network Interface Layer

APPLICATION LAYER
 An application layer incorporates the function of top three OSI layers. An
application layer is the topmost layer in the TCP/IP model.
 It is responsible for handling high-level protocols, issues of representation.
 This layer allows the user to interact with the application.
 When one application layer protocol wants to communicate with another
application layer, it forwards its data to the transport layer.
 Protocols such as FTP, HTTP, SMTP, POP3, etc running in the application layer
provides service to other program running on top of application layer

20
CS3591 – Computer Networks Unit-1

TRANSPORT LAYER
 The transport layer is responsible for the reliability, flow control, and correction
of data which is being sent over the network.
 The two protocols used in the transport layer are User Datagram protocol and
Transmission control protocol.
o UDP – UDP provides connectionless service and end-to-end delivery of
transmission. It is an unreliable protocol as it discovers the errors but not
specify the error.
o TCP – TCP provides a full transport layer services to applications. TCP is
a reliable protocol as it detects the error and retransmits the damaged
frames.

INTERNET LAYER
 The internet layer is the second layer of the TCP/IP model.
 An internet layer is also known as the network layer.
 The main responsibility of the internet layer is to send the packets from any
network, and they arrive at the destination irrespective of the route they take.
 Internet layer handle the transfer of information across multiple networks through
router and gateway .
 IP protocol is used in this layer, and it is the most significant part of the entire
TCP/IP suite.

NETWORK INTERFACE LAYER


 The network interface layer is the lowest layer of the TCP/IP model. 
 This layer is the combination of the Physical layer and Data Link layer defined in

the OSI reference model.


 It defines how the data should be sent physically through the network. 
 This layer is mainly responsible for the transmission of the data between two
devices on the same network.
 The functions carried out by this layer are encapsulating the IP datagram into
frames transmitted by the network and mapping of IP addresses into physical
addresses.
 The protocols used by this layer are Ethernet, token ring, FDDI, X.25, frame
relay.

21
CS3591 – Computer Networks Unit-1
COMPARISON - OSI MODEL AND TCP/IP MODEL

S.No OSI MODEL TCP/IP MODEL


1 Defined before advent of internet Defined after the advent of Internet.
2 Service interface and protocols Service interface and protocols were not
are clearly distinguished before clearly distinguished before

3 Internetworking not supported TCP/IP supports Internet working

4 Strict layering Loosely layered

5 Protocol independent standard Protocol Dependant standard

6 Less Credible More Credible

7 All packets are reliably delivered TCP reliably delivers packets, IP does
not reliably deliver packets

22
CS3591 – Computer Networks Unit-1
WWW (WORLD WIDE WEB)
 WWW is a distributed client/server service, in which a client (Browsers such as
IE, Firefox, etc.) can access services at a server (Web server such as IIS,
Apache).
 The service provided is distributed over many locations called sites.
 WWW was constructed originally by a small group of people led by Tim
Berners Lee at CERN, in 1989 and in 1991 this was released to the world.
 A new protocol for the Internet and a system of document access to use it was
proposed and named as WWW.

 This system allows document search and retrieval from any part of the Internet.
 The documents were having Hypertext as the content
 The units of information on the web can be referred to as pages, documents or
resources.
 A document can contain text, images, sound and video, together called
Hypermedia.
 Web is a vast collection of data, information, software and protocols , spread
across the world in web servers, which are accessed by client machines by
browsers through the Internet.

COMPONENTS OF THE WEB


Structural Components Semantic Components
1. Web Clients/Browsers 1. Hyper Text Transfer Protocol (HTTP)
2. Web Servers 2. Hyper Text Markup Language (HTML)
3. Web Caches 3. eXtensible Markup Language (XML)
4. Internet 4. Uniform Resource Identifier (URI)

23
CS3591 – Computer Networks Unit-1
 Clients use browser application to send URL’s via HTTP to servers requesting
a Web page.
 Web pages constructed using HTML /XML and consist of text, graphics,
sounds plus embedded files
 Servers (or caches) respond with requested Web page.
 Client’s browser renders Web page returned by server
 Web Page is written using Hyper Text Markup Language (HTML)
 Displays text, graphics and sound in browser
 The entire system runs over standard networking protocols (TCP/IP, DNS)

WEB CLIENTS (BROWSERS)


 A browser is a software on the client on the web which initiates the
communication with the server.
 Each browser usually consists of three parts: a controller, client protocols, and
interpreters.
 The controller receives input from the keyboard or the mouse and uses the
client programs to access the document. After the document has been accessed,
the controller uses one of the interpreters to display the document on the
screen.
 Examples are Internet Explorer, Mozilla FireFox, Netscape Navigator, Safari
etc.

WEB SERVERS
 All the communication between the web client and a web server use the
standard protocol called as HTTP.
 Web server informs its operating system to accept incoming network
connections using a specific port on the machine.
 The server also runs as a background process.
 A client (browser) opens a connection to the server, sends a request, receives
information from server and closes the connection.
 Web server monitors a communications port on its host machine, accepts the
http commands through it and performs specified operations.
 HTTP commands include a URL specifying the host machine.
 The URL received is translated into either a filename or a program name,
accordingly the requested file or the output of the program execution is sent
back to the browser.

24
CS3591 – Computer Networks Unit-1
PROXY SERVER
 A Proxy server is a computer that keeps copies of responses to recent requests.
 The web client sends a request to the proxy server.
 The proxy server checks its cache.
 If the response is not stored in the cache, the proxy server sends the request to
the corresponding server.

 Incoming responses are sent to the proxy server and stored for future requests
from other clients.
 The proxy server reduces the load on the original server, decreases traffic, and
improves latency.
 However, to use the proxy server, the client must be configured to access the
proxy instead of the target server.
 The proxy server acts as both server and client.
 When it receives a request from a client for which it has a response, it acts as a
server and sends the response to the client.
 When it receives a request from a client for which it does not have a response,
it first acts as a client and sends a request to the target server.
 When the response has been received, it acts again as a server and sends the
response to the client.

URL - UNIFORM RESOURCE LOCATOR


 Uniform Resource Locator (URL), uniquely identify resources on the Internet
 URL provides information about its location on the Web
 When a user enters URL, browser forms a request message and sends it to the
server.
 Web server retrieves the requested URL and sends back a response message.
 Web browser renders the response in HTML or appropriate format.
 Format : http://www.domain_name/filename
 Example : http://www.cs.hello.org/index.html

 The URL defines four parts - Method, Host computer, Port, and Path.
o Method: The method is the protocol used to retrieve the document from a
server. For example, HTTP.
25
o Host: The host is the computer where the information is stored, and the
o CS3591 – Computer Networks Unit-1
o computer is given an alias name. Web pages are mainly stored in the computers
and the computers are given an alias name that begins with the characters
"www". This field is not mandatory.
o Port: The URL can also contain the port number of the server, but it's an
optional field. If the port number is included, then it must come between the
host and path and it should be separated from the host by a colon.
o Path: Path is the pathname of the file where the information is stored. The path
itself contain slashes that separate the directories from the subdirectories and
files.

URL Paths
 The path of the document for a http protocol is same as that for a document
or file or a directory in a client.
 In Unix the path components are separated by forward slashes (/) and in
windows backward slashes (\).
 But an URL need not include all the directories in the path.
 A path which includes all the directories is a complete path, else it is a
partial path.

URI - Uniform Resource Identifiers


 URI is a string that identifies resources such as document, image, service, etc.
 It is of the form scheme:scheme-specific
 Scheme identifies a resource type, such as mailto for mail address, file for
file name, etc. and scheme-specific is a resource identifier.
 Example is mailto: [email protected]
 URI identifies a resource, whereas URL is used to locate a resource.

WEB DOCUMENTS
The documents in the WWW can be grouped into three broad categories:
Static, Dynamic and Active.

Static Documents
 Static documents are fixed-content documents that are created and stored in a
server.
 The client can get a copy of the document only.
 In other words, the contents of the file are determined when the file is created,
not when it is used.
 Of course, the contents in the server can be changed, but the user cannot
change them.
 When a client accesses the document, a copy of the document is sent.
 The user can then use a browser to see the document.
 Static documents are prepared using one of several languages:
1. HyperText Markup Language26 (HTML)
2. Extensible Markup Language (XML)
CS3591 – Computer Networks Unit-1
3. Extensible Style Language (XSL)
4. Extensible Hypertext Markup Language (XHTML).

Dynamic Documents
 A dynamic document is created by a web server whenever a browser requests
the document.
 When a request arrives, the web server runs an application program or a script
that creates the dynamic document.

 The server returns the result of the program or script as a response to the
browser that requested the document.
 Because a fresh document is created for each request, the contents of a dynamic
document may vary from one request to another.
 A very simple example of a dynamic document is the retrieval of the time and
date from a server.
 Time and date are kinds of information that are dynamic in that they change
from moment to moment.
 Dynamic documents can be retrieved using one of several scripting languages:
1. Common Gateway Interface (CGI)
2. Java Server Pages (JSP)
3. Active Server Pages (ASP)
4. ColdFusion

Active Documents
 For many applications, we need a program or a script to be run at the client site.
These are called active documents.
 For example, suppose we want to run a program that creates animated graphics
on the screen or a program that interacts with the user.
 The program definitely needs to be run at the client site where the animation or
interaction takes place.
 When a browser requests an active document, the server sends a copy of the
document or a script.
 The document is then run at the client (browser) site.
 Active documents can be created using one of several languages:
1. Java Applet – A program written in Java on the server. It is compiled
and ready to be run. The document is in bytecode format.
2. Java Script - Download and run the script at the client site.

3. HTTP (HYPERTEXT TRANSFER PROTOCOL)


 The HyperText Transfer Protocol (HTTP) is used to define how the client-
server programs can be written to retrieve web pages from the Web.
 It is a protocol used to access the data27on the World Wide Web (WWW).
 CS3591
 – Computer Networks Unit-1
 
 The HTTP protocol can be used to transfer the data in the form of plain text,
hypertext, audio, video, and so on.
 HTTP is a stateless request/response protocol that governs client/server
communication.
 An HTTP client sends a request; an HTTP server returns a response.
 The server uses the port number 80; the client uses a temporary port number.
 HTTP uses the services of TCP , a connection-oriented and reliable protocol.
HTTP is a text-oriented protocol. It contains embedded URL known as links
 When hypertext is clicked, browser opens a new connection, retrieves file from
the server and displays the file.
 Each HTTP message has the general form
START_LINE <CRLF>
MESSAGE_HEADER <CRLF>
<CRLF> MESSAGE_BODY <CRLF>
where <CRLF> stands for carriage-return-line-feed.

Features of HTTP
o Connectionless protocol:
HTTP is a connectionless protocol. HTTP client initiates a request and
waits for a response from the server. When the server receives the
request, the server processes the request and sends back the response to
the HTTP client after which the client disconnects the connection. The
connection between client and server exist only during the current
request and response time only.

o Media independent:
HTTP protocol is a media independent as data can be sent as long as
both the client and server know how to handle the data content. It is
required for both the client and server to specify the content type in
MIME-type header.

o Stateless:
HTTP is a stateless protocol as both the client and server know each
other only during the current request. Due to this nature of the protocol,
both the client and server do not retain the information between various
requests of the web pages.

HTTP REQUEST AND RESPONSE MESSAGES


 The HTTP protocol defines the format of the request and response messages.

28
CS3591 – Computer Networks Unit-1
 Request Message: The request message is sent by the client that consists of a
request line, headers, and sometimes a body.
 Response Message: The response message is sent by the server to the client
that consists of a status line, headers, and sometimes a body.

HTTP REQUEST MESSAGE

 The first line in a request message is called a request line.


 After the request line, we can have zero or more request header lines.
 The body is an optional one. It contains the comment to be sent or the file to be
published on the website when the method is PUT or POST.

Request Line
 There are three fields in this request line - Method, URL and Version.
 The Method field defines the request types.
 The URL field defines the address and name of the corresponding web page.
 The Version field gives the version of the protocol; the most current version of
HTTP is 1.1.
 Some of the Method types are

Request Header
 Each request header line sends additional information from the client to the
server.
 Each header line has a header name, a colon, a space, and a header value.
 The value field defines the values associated with each header name.
 Headers defined for request message include

29
CS3591 – Computer Networks Unit-1

Body
 The body can be present in a request message. It is optional.
 Usually, it contains the comment to be sent or the file to be published on the
website when the method is PUT or POST.

Conditional Request
 A client can add a condition in its request.
 In this case, the server will send the requested web page if the condition is met
or inform the client otherwise.
 One of the most common conditions imposed by the client is the time and date
the web page is modified.
 The client can send the header line If-Modified-Since with the request to tell the
server that it needs the page only if it is modified after a certain point in time .

HTTP RESPONSE MESSAGE

 The first line in a request message is called a status line.


 After the request line, we can have zero or more response header lines.
 The body is an optional one. The body is present unless the response is an error
message

Status Line
 The Status line contains three fields - HTTP version , Status code, Status
phrase
 The first field defines the version of HTTP protocol, currently 1.1.
 The status code field defines the status of the request. It classifies the HTTP
result. It consists of three digits.
1xx–Informational, 2xx– Success, 3xx–Redirection,
30
4xx–Client error, 5xx–Server error
 CS3591 – Computer
The Status phrase fieldNetworks Unit-1
gives brief description about status code in text form.
 Some of the Status codes are

Response Header
 Each header provides additional information to the client.
 Each header line has a header name, a colon, a space, and a header value.
 Some of the response headers are:

Body
 The body contains the document to be sent from the server to the client.
 The body is present unless the response is an error message.
HTTP CONNECTIONS
 HTTP Clients and Servers exchange multiple messages over the same TCP
connection.
 If some of the objects are located on the same server, we have two choices: to
retrieve each object using a new TCP connection or to make a TCP connection
and retrieve them all.
 The first method is referred to as a non-persistent connection, the second as a
persistent connection.
 HTTP 1.0 uses non-persistent connections and HTTP 1.1 uses persistent
connections .

NON-PERSISTENT CONNECTIONS

 In a non-persistent connection, one TCP connection is made for each


request/response.
 Only one object can be sent over a singleTCP connection
 The client opens a TCP connection and sends a request.
 The server sends the response and closesthe connection.
 The client reads the data until it encounters an end-of-file marker.
 It then closes the connection. 

31
CS3591 –CONNECTIONS
PERSISTENT Computer Networks Unit-1

 HTTP version 1.1 specifies a persistent connection


by default.
 Multiple objects can be sent over a single TCP
connection.
 In a persistent connection, the server leaves the
connection open for more requests after sending a
response.
 The server can close the connection at the request of
a client or if a time-out has been reached.
 Time and resources are saved using persistent
connections. Only one set of buffers and variables
needs to be set for the connection at each site.
 The round trip time for connection establishment
and connection termination is saved.

HTTP COOKIES
 An HTTP cookie (also called web cookie, Internet cookie, browser cookie,
or simply cookie) is a small piece of data sent from a website and stored on the
user's computer by the user's web browser while the user is browsing.
 HTTP is stateless , Cookies are used to add State.
 Cookies were designed to be a reliable mechanism for websites to
remember stateful information (such as items added in the shopping cart in an
online store) or to record the user's browsing activity (including clicking
particular buttons, logging in, or recording which pages were visited in the
past).
 They can also be used to remember arbitrary pieces of information that the user
previously entered into form fields such as names, addresses, passwords, and
credit card numbers.

Components of Cookie
A cookie consists of the following components:
1. Name
2. Value
3. Zero or more attributes (name/value pairs). Attributes store information such as
the cookie's expiration, domain, and flags

Creating and Storing Cookies 32


The creation and storing of cookies depend on the implementation; however, the
CS3591
principle is the –same.
Computer Networks Unit-1
1. When a server receives a request from a client, it stores information
about the client in a file or a string. The information may include the
domain name of the client, the contents of the cookie (information the
server has gathered about the client such as name, registration number,
and so on), a timestamp, and other information depending on the
implementation.
2. The server includes the cookie in the response that it sends to the client.
3. When the client receives the response, the browser stores the cookie in
the cookie directory, which is sorted by the server domain name.

Using Cookies
 When a client sends a request to a server, the browser looks in the cookie
directory to see if it can find a cookie sent by that server.
 If found, the cookie is included in the request.
 When the server receives the request, it knows that this is an old client, not a
new one.
 The contents of the cookie are never read by the browser or disclosed to the
user. It is a cookie made by the server and eaten by the server.

Types of Cookies
1. Authentication cookies
These are the most common method used by web servers to know whether the
user is logged in or not, and which account they are logged in with. Without
such a mechanism, the site would not know whether to send a page containing
sensitive information, or require the user to authenticate themselves by logging
in.
2. Tracking cookies
These are commonly used as ways to compile individuals browsing histories.
3. Session cookie
A session cookie exists only in temporary memory while the user navigates the
website. Web browsers normally delete session cookies when the user closes
the browser.
4. Persistent cookie
Instead of expiring when the web browser is closed as session cookies do,
a persistent cookie expires at a specific date or after a specific length of time.
This means that, for the cookie's entire lifespan , its information will be
transmitted to the server every time the user visits the website that it belongs to,
or every time the user views a resource belonging to that website from another
website.

HTTP SECURITY
 HTTP does not provide security.
 However HTTP can be run over the Secure Socket Layer (SSL).
 In this case, HTTP is referred to as HTTPS.
 HTTPS provides confidentiality, client33 and server authentication, and data
CS3591 – Computer Networks
integrity. Unit-1

4. FTP (FILE TRANSFER PROTOCOL)


 FTP stands for File transfer protocol.
 FTP is a standard internet protocol provided by TCP/IP used for
transmitting the files from one host to another.
 It is mainly used for transferring the web page files from their creator to the
computer that acts as a server for other computers on the internet.
 It is also used for downloading the files to computer from other servers.
 Although we can transfer files using HTTP, FTP is a better choice to
transfer large files or to transfer files using different formats.

FTP OBJECTIVES
 It provides the sharing of files.
 It is used to encourage the use of remote computers.
 It transfers the data more reliably and efficiently.

FTP MECHANISM

 The above figure shows the basic model of the FTP.


 The FTP client has three components:
o user interface, control process, and data transfer process.
 The server has two components:
o server control process and server data transfer process.

FTP CONNECTIONS
 There are two types of connections in FTP -
Control Connection and Data Connection.
 The two connections in FTP have different lifetimes.
 The control connection remains connected during the entire interactive FTP
session.
 The data connection is opened and then closed for each file transfer activity.
When a user starts an FTP session, the control connection opens.
 While the control connection is open, the data connection can be opened and
closed multiple times if several files are transferred.
 FTP uses two well-known TCP ports:
o Port 21 is used for the control connection
o Port 20 is used for the data connection.

34
CS3591 – Computer Networks Unit-1

 Control Connection:
o The control connection uses very simple rules for communication.
o Through control connection, we can transfer a line of command or line
of response at a time.
o The control connection is made between the control processes.
o The control connection remains connected during the entire interactive
FTP session.

 Data Connection:
o The Data Connection uses very complex rules as data types may vary.
o The data connection is made between data transfer processes.
o The data connection opens when a command comes for transferring the
files and closes when the file is transferred.

FTP COMMUNICATION
 FTP Communication is achieved through commands and responses.
 FTP Commands are sent from the client to the server
 FTP responses are sent from the server to the client.
 FTP Commands are in the form of ASCII uppercase, which may or may not be
followed by an argument.
 Some of the most common commands are

 Every FTP command generates at least one response.


 A response has two parts: a three-digit number followed by text.

35
 CS3591 – Computer
The numeric Networks
part defines Unit-1
the code; the text part defines needed parameter.

FTP FILE TYPE


 FTP can transfer one of the following file types across the data connection:
ASCII file, EBCDIC file, or image file.
FTP TRANSMISSION MODE
 FTP can transfer a file across the data connection using one of the following
three transmission modes: stream mode, block mode, or compressed mode.
 The stream mode is the default mode; data are delivered from FTP to TCP as a
continuous stream of bytes.
 In the block mode, data can be delivered from FTP to TCP in blocks.
 In the compressed mode, data can be compressed and delivered from FTP to
TCP.

FTP FILE TRANSFER


 File transfer occurs over the data connection under the control of the
commands sent over the control connection.
 File transfer in FTP means one of three things:
o retrieving a file (server to client)
o storing a file (client to server)
o directory listing (server to client).

FTP SECURITY
 FTP requires a password, the password is sent in plaintext which is
unencrypted. This means it can be intercepted and used by an attacker.
 The data transfer connection also transfers data in plaintext, which is insecure.
 To be secure, one can add a Secure Socket Layer between the FTP application
layer and the TCP layer.
 In this case FTP is called SSL-FTP.

5. EMAIL (SMTP, MIME, IMAP, POP)


 One of the most popular Internet services is electronic mail (E-mail).
 Email is one of the oldest network applications.
 The three main components of an Email are
1. User Agent (UA)
2. Messsage Transfer Agent (MTA) – SMTP
3. Messsage Access Agent (MAA) - IMAP , POP

36
CS3591 – Computer
 WhenNetworks
the sender and the receiver of an e-mail are onUnit-1
the same
system, we need only two User Agents and no Message
Transfer Agent
 When the sender and the receiver of an e-mail are on different
system, we need two UA, two pairs of MTA (client and
server), and two MAA (client and server).

WORKING OF EMAIL

 When Alice needs to send a message to Bob, she runs a UA


program to prepare the message and send it to her mail server.
 The mail server at her site uses a queue (spool) to store
messages waiting to be sent. The message, however, needs to
be sent through the Internet from Alice’s site to Bob’s site
using an MTA.
 Here two message transfer agents are needed: one client and one
server.
 The server needs to run all the time because it does not know
when a client willask for a connection.
 The client can be triggered by the system when there is a
message in the queueto be sent.
 The user agent at the Bob site allows Bob to read the received
message.
 Bob later uses an MAA client to retrieve the message from
an MAA serverrunning on the second server.

USER AGENT (UA)


 The first component of an electronic mail system is the user agent (UA).
 It provides service to the user to make the process of sending and receiving a
message easier.
37
 CS3591 – Computer
A user agent Networks
is a software Unit-1
package that composes, reads, replies to, and
forwards messages. It also handles local mailboxes on the user computers.

 There are two types of user agents: Command-driven and GUI-based.

Command driven
o Command driven user agents belong to the early days of electronic mail.
o A command-driven user agent normally accepts a one character command from
the keyboard to perform its task.
o Some examples of command driven user agents are mail, pine, and elm.

GUI-based
o Modern user agents are GUI-based.
o They allow the user to interact with the software by using both the keyboard
and the mouse.
o They have graphical components such as icons, menu bars, and windows that
make the services easy to access.
o Some examples of GUI-based user agents are Eudora and Outlook.

MESSAGE TRANSFER AGENT (MTA)


 The actual mail transfer is done through message transfer agents (MTA).
 To send mail, a system must have the client MTA, and to receive mail, a
system must have a server MTA.
 The formal protocol that defines the MTA client and server in the Internet is
called Simple Mail Transfer Protocol (SMTP).

MESSAGE ACCESS AGENT (MAA)


 MAA is a software that pulls messages out of a mailbox.
 POP3 and IMAP4 are examples of MAA.
ADDRESS FORMAT OF EMAIL
 E-mail address is userid @ domain where domain is hostname of the mail
server.

MESSAGE FORMAT OF EMAIL


 Email message consists of two parts38
namely header and body.
 CS3591 – Computer
Each header Networks
line contains type and value separated by a colon (:). Unit-1
 Some header contents are:
o From: identifier sender of the message.
o To: mail address of the recipient(s).
o Subject: says about purpose of the message.
o Date: timestamp of when the message was transmitted.
 Header is separated from the body by a blank line.
 Body contains the actual message.

 Email was extended in 1993 to carry many different types of data: audio,
video, images, Word documents, and so on.
 This extended version is known as MIME(Multipurpose Mail Extension).

SIMPLE MAIL TRANSFER PROTOCOL (SMTP)

 SMTP is the standard protocol for transferring mail between hosts in the
TCP/IP protocol suite.
 SMTP is not concerned with the format or content of messages themselves.
 SMTP uses information written on the envelope of the mail (message header),
but does not look at the contents (message body) of the envelope.

 SMTP clients and servers have two main components


o User Agents(UA) – Prepares the message, encloses it in an envelope.
o Mail Transfer Agent (MTA) – Transfers the mail across the internet

39
CS3591 – Computer Networks Unit-1

 SMTP also allows the use of Relays allowing other MTAs to relay the mail.

SMTP MAIL FLOW

 To begin, mail is created by a user-agent program in response to user input.


 Each created message consists of a header that includes the recipient's email
address and other information, and a message body containing the message to
be sent. 40
 CS3591 – Computer
These messages Networks
are then Unit-1
queued in some fashion and provided as input to an
SMTP Sender program.

SMTP COMMANDS AND RESPONSES


 The operation of SMTP consists of a series of commands and responses
exchanged between the SMTP sender and SMTP receiver.
 The initiative is with the SMTP sender, who establishes the TCP connection.
 Once the connection is established, the SMTP sender sends commands over the
connection to the receiver.
 The command is from an MTA client to an MTA server; the response is from
an MTA server to the MTA client.

SMTP Commands
 Commands are sent from the client to the server. It consists of a keyword
followed by zero or more arguments. SMTP defines 14 commands.

SMTP Responses
 Responses are sent from the server to the client.

41
CS3591
A response – Computer
is a three digit code Networks Unit-1
that may be followed by additional textualinformation

SMTP OPERATIONS
Basic SMTP operation occurs in three phases:
1. Connection Setup
2. Mail Transfer
3. Connection Termination

Connection Setup
 An SMTP sender will attempt to set up a TCP connection with a target host
when it has one or more mail messages to deliver to that host.
 The sequence is quite simple:
1. The sender opens a TCP connection with the receiver.
2. Once the connection is established, the receiver identifies itself with
"Service Ready”.
3. The sender identifies itself with the HELO command.
4. The receiver accepts the sender's identification with "OK".
5. If the mail service on the destination is unavailable, the destination host
returns a "Service Not Available" reply in step 2, and the process is
terminated. 42
CS3591 – Computer Networks Unit-1

Mail Transfer
 Once a connection has been established, the SMTP sender may send one or
more messages to the SMTP receiver.
 There are three logical phases to the transfer of a message:
1. A MAIL command identifies the originator of the message.
2. One or more RCPT commands identify the recipients for this
message.
3. A DATA command transfers the message text.

Connection Termination
 The SMTP sender closes the connection in two steps.
 First, the sender sends a QUIT command and waits for a reply.
 The second step is to initiate a TCP close operation for the TCP connection.
 The receiver initiates its TCP close after sending its reply to the QUIT
command.

LIMITATIONS OF SMTP
 SMTP cannot transmit executable files or other binary objects.
 SMTP cannot transmit text data that includes national language characters, as
these are represented by 8-bit codes with values of 128 decimal or higher, and
SMTP is limited to 7-bit ASCII.
 SMTP servers may reject mail message over a certain size.
 SMTP gateways that translate between43 ASCII and the character code EBCDIC
CS3591 – Computer
do not use a consistentNetworks Unit-1
set of mappings, resulting in translation problems.
 Some SMTP implementations do not adhere completely to the SMTP standards
defined.
 Common problems include the following:
1. Deletion, addition, or recording of carriage return and linefeed.
2. Truncating or wrapping lines longer than 76 characters.
3. Removal of trailing white space (tab and space characters).
4. Padding of lines in a message to the same length.
5. Conversion of tab characters into multiple-space characters.

MULTIPURPOSE INTERNET MAIL EXTENSION (MIME)


 SMTP provides a basic email service, while MIME adds multimedia capability to
SMTP.
 MIME is an extension to SMTP and is used to overcome the problems and limitations
of SMTP.
 Email system was designed to send messages only in ASCII format.
 Languages such as French, Chinese, etc., are not supported.
 Image, audio and video files cannot be sent.
 MIME adds the following features to email service:

44
CS3591
MIME CONTENT – Computer
TYPES Networks Unit-1
 There are seven different major types of content and a total of 14 subtypes.
 In general, a content type declares the general type of data, and the subtype
specifies a particular format for that type of data.
 MIME also defines a multipart type that says how a message carrying more
than one data type is structured.
 This is like a programming language that defines both base types (e.g., integers
and floats) and compound types (e.g., structures and arrays).
 One possible multipart subtype is mixed, which says that the message contains
a set of independent data pieces in a specified order.
 Each piece then has its own header line that describes the type of that piece.
 The table below lists the MIME content types:

ENCODING FORMATS OF MIME


 MIME uses various encoding formats to convert binary data into the ASCII
character set.
 To transfer binary data, MIME offers five encoding formats which can be used
in the header transfer-encoding:
 7-bit : 7-bit text format (for messages without accented characters);
 8-bit : 8-bit text format;
 quoted-printable : Quoted-Printable format, recommended for messages
which use a 7-bit alphabet (such as when there are accent marks);
 base-64 : Base 64, for sending binary files as attachments;
 binary : binary format; not recommended.
 Since MIME is very open, it can use third-party encoding formats such as:
 BinHex : A proprietary format belonging to Apple
 Uuencode : for UNIX-to-UNIX encoding
 Xencode : for binary-to-text encoding

MESSAGE TRANSFER IN MIME


45
CS3591 – Computer Networks Unit-1

 MTA is a mail daemon (sendmail) active on hosts having mailbox, used to send
an email.
 Mail passes through a sequence of gateways before it reaches the recipient mail
server.
 Each gateway stores and forwards the mail using Simple mail transfer protocol
(SMTP).
 SMTP defines communication between MTAs over TCP on port 25.
 In an SMTP session, sending MTA is client and receiver is server. In each
exchange:
 Client posts a command (HELO, MAIL, RCPT, DATA, QUIT, VRFY, etc.)
 Server responds with a code (250, 550, 354, 221, 251 etc) and an explanation.
 Client is identified using HELO command and verified by the server
 Client forwards message to server, if server is willing to accept.
 Message is terminated by a line with only single period (.) in it.
 Eventually client terminates the connection.

IMAP (INTERNET MAIL ACCESS PROTOCOL)


 IMAP is an Application Layer Internet protocol that allows an e-mail client to
access e-mail on a remote mail server.
 It is a method of accessing electronic mail messages that are kept on a possibly
shared mail server.
 IMAP is a more capable wire protocol.
 IMAP is similar to SMTP in many ways.
 IMAP is a client/server protocol running over TCP on port 143.
 IMAP allows multiple clients simultaneously connected to the same mailbox,
and through flags stored on the server, different clients accessing the same
mailbox at the same or different times can detect state changes made by other
clients.
 In other words, it permits a "client" email program to access remote message
stores as if they were local.
 For example, email stored on an IMAP server can be manipulated from a
desktop computer at home, a workstation at the office, and a notebook
computer while travelling, without the need to transfer messages or files back
and forth between these computers.
 IMAP can support email serving in three modes:
 Offline
 Online
Users may connect to the server, look at what email is available,
and access it online. This
46 looks to the user very much like having
CS3591 – Computer Networks
local spool files, but they’re on the mail server. Unit-1
 Disconnected operation
A mail client connects to the server, can make a “cache” copy of
selected messages, and disconnects from the server. The user can
then work on the messages offline, and connect to the server later
and resynchronize the server status with the cache.

OPERATION OF IMAP
 The mail transfer begins with the client authenticating the user and identifying
the mailbox they want to access.
 Client Commands
LOGIN, AUTHENTICATE, SELECT, EXAMINE, CLOSE, and LOGOUT
 Server Responses
OK, NO (no permission), BAD (incorrect command),
 When user wishes to FETCH a message, server responds in MIME format.
 Message attributes such as size are also exchanged.
 Flags are used by client to report user actions.
SEEN, ANSWERED, DELETED, RECENT

IMAP4
 The latest version is IMAP4. IMAP4 is more powerful and more complex.
 IMAP4 provides the following extra functions:
 A user can check the e-mail header prior to downloading.
 A user can search the contents of the e-mail for a specific string of
characters prior to downloading.

 A user can partially download e-mail. This is especially useful if bandwidth


is limited and the e-mail contains multimedia with high bandwidth
requirements.
 A user can create, delete, or rename mailboxes on the mail server.
 A user can create a hierarchy of mailboxes in a folder for e-mail storage.
47
CS3591 – Computer Networks Unit-1

ADVANTAGES OF IMAP
 With IMAP, the primary storage is on the server, not on the local machine.
 Email being put away for storage can be foldered on local disk, or can be
foldered on the IMAP server.
 The protocol allows full user of remote folders, including a remote folder
hierarchy and multiple inboxes.
 It keeps track of explicit status of messages, and allows for user-defined status.
 Supports new mail notification explicitly.
 Extensible for non-email data, like netnews, document storage, etc.
 Selective fetching of individual MIME body parts.
 Server-based search to minimize data transfer.
 Servers may have extensions that can be negotiated.

POST OFFICE PROTOCOL (POP3)


 Post Office Protocol (POP3) is an application-layer Internet standard protocol
used by local e-mail clients to retrieve
48 e-mail from a remote server over a
CS3591 – Computer Networks
TCP/IP connection. Unit-1
 There are two versions of POP.
• The first, called POP2, became a standard in the mid-80's and requires
SMTP to send messages.
• The current version, POP3, can be used with or without SMTP. POP3
uses TCP/IP port 110.
 POP is a much simpler protocol, making implementation easier.
 POP supports offline access to the messages, thus requires less internet usage
time
 POP does not allow search facility.
 In order to access the messages, it is necessary to download them.
 It allows only one mailbox to be created on server.
 It is not suitable for accessing non mail data.
 POP mail moves the message from the email server onto the local computer,
although there is usually an option to leave the messages on the email server as
well.
 POP treats the mailbox as one store, and has no concept of folders.
 POP works in two modes namely, delete and keep mode.
 In delete mode, mail is deleted from the mailbox after retrieval. The delete
mode is normally used when the user is working at their permanent
computer and can save and organize the received mail after reading or
replying.
 In keep mode, mail after reading is kept in mailbox for later retrieval. The
keep mode is normally used when the user accesses her mail away from
their primary computer .

 POP3 client is installed on the recipient computer and POP server on the mail
server.
 Client opens a connection to the server using TCP on port 110.
 Client sends username and password to access mailbox and to retrieve
messages.

49
POP3CS3591 – Computer Networks
Commands Unit-1
POP commands are generally abbreviated into codes of three or four letters
The following describes some of the POP commands:
1. UID - This command opens the connection
2. STAT - It is used to display number of messages currently in the mailbox
3. LIST - It is used to get the summary of messages
4. RETR -This command helps to select a mailbox to access the messages
5. DELE - It is used to delete a message
6. RSET - It is used to reset the session to its initial state
7. QUIT - It is used to log off the session

DIFFERENCE BETWEEN POP AND IMAP


SNo. POP IMAP

1 Generally used to support single Designed to handle multiple clients.


client.
2 Messages are accessed offline. Messages are accessed online
although it also supports offline mode.
3 POP does not allow search facility. IMAP offers ability to search emails.
4 All the messages have to be It allows selective transfer of messages to
downloaded. the client.
5 Only one mailbox can be created on Multiple mailboxes can be created on the
the server. server.
6 Not suitable for accessing non-mail Suitable for accessing non-mail data i.e.
data. attachment.

32

50
CS3591 – Computer Networks Unit-1

POP commands are generally IMAP commands are not abbreviated,


7 abbreviated into codes of three or four they are full. Eg. STATUS.
letters. Eg. STAT.
8 It requires minimum use of server Clients are totally dependent on server.
resources.
9 Mails once downloaded cannot be Allows mails to be accessed from
accessed from some other location. multiple locations.
10 The e-mails are not downloaded Users can view the headings and sender
automatically. of e-mails and then decide to download.
11 POP requires less internet usage time. IMAP requires more internet usage time.

Advantages of IMAP over POP


 IMAP is more powerful and more complex than POP.
 User can check the e-mail header prior to downloading.
 User can search e-mail for a specific string of characters prior to downloading.
 User can download partially, very useful in case of limited bandwidth.
 User can create, delete, or rename mailboxes on the mail server.

NAME SPACE
 To be unambiguous, the names assigned to machines must be carefully selected
from a name space with complete control over the binding between the names and
IP address.
 The names must be unique because the addresses are unique.
 A name space that maps each address to a unique name can be organized in
two ways: flat (or) hierarchical.

Flat Name Space


 In a flat name space, a name is assigned to an address.
 A name in this space is a sequence of characters without structure.
 The main disadvantage of a flat name space is that it cannot be used in a
large system such as Internet because it must be centrally controlled to avoid
ambiguity and duplication.

Hierarchical Name Space


 In a hierarchical name space, each name is made of several parts.
 The first part can define the organization, the second part can define the name,the
third part can define departments, and so on.

51
CS3591 – Computer Networks Unit-1
 In this case, the authority to assign and control the name spaces can be
decentralized.
 A central authority can assign the part of the name that defines the nature of the
organization and the name.
 The responsibility for the rest of the name can be given to the organization
itself. Suffixes can be added to the name to define host or resources.
 The management of the organization need not worry that the prefix chosen for a
host is taken by another organization because even if part of an address is the
same, the whole address is different.
 The names are unique without the need to be assigned by a central authority.
 The central authority controls only part of the name, not the whole name.

DOMAIN NAME SPACE


 To have a hierarchical name space, a domain name space was designed. In this
design, the names are defined in an inverted-tree structure with the root at the top.
 Each node in the tree has a label, which is a string with a maximum of 63
characters.
 The root label is a null string.
 DNS requires that children of a node have different labels, which guaranteesthe
uniqueness of the domain names.

 Each node in the tree has a label, which is a string with a maximum of 63
characters.
 The root label is a null string (empty string). DNS requires that children of a node
(nodes that branch from the same node) have different labels, which guarantees
the uniqueness of the domain names.

Domain Name
 Each node in the tree has a label called as domain name.
 A full domain name is a sequence of labels separated by dots (.)
 The domain names are always read from the node up to the root.
 The last label is the label of the root (null).
 This means that a full domain name always ends in a null label, which
means the last character is a dot because the null string is nothing.
52
CS3591 – Computer Networks Unit-1
 If a label is terminated by a null string, it is called a fully qualified domain
name (FQDN).
 If a label is not terminated by a null string, it is called a partially qualified
domain name (PQDN).

Domain
 A domain is a subtree of the domain name space.
 The name of the domain is the domain name of the node at the top of the sub-
tree.
 A domain may itself be divided into domains.

DISTRIBUTION OF NAME SPACE


 The information contained in the domain name space must be stored.
 But it is very inefficient and also not reliable to have just one computer store
such a huge amount of information.
 It is inefficient because responding to requests from all over the world, places a
heavy load on the system.
 It is not reliable because any failure makes the data inaccessible.
 The solution to these problems is to distribute the information among many
computers called DNS servers.

53
CS3591 – Computer Networks Unit-1
HIERARCHY OF NAME SERVERS
 The way to distribute information among DNS servers is to divide the whole
space into many domains based on the first level.
 Let the root stand-alone and create as many domains as there are first level
nodes.
 Because a domain created this way could be very large,
 DNS allows domains to be divided further into smaller domains.
 Thus we have a hierarchy of servers in the same way that we have a hierarchyof
names.

ZONE
 What a server is responsible for, or has authority over, is called a zone.
 The server makes a database called a zone file and keeps all the information for
every node under that domain.
 If a server accepts responsibility for a domain and does not divide the domains
into smaller domains, the domain and zone refer to the same thing.
 But if a server divides its domain into sub domains and delegates parts of its
authority to other servers, domain and zone refer to different things.
 The information about the nodes in the sub domains is stored in the servers at the
lower levels, with the original server keeping some sort of references to these
lower level servers.
 But still, the original server does not free itself from responsibility totally.
 It still has a zone, but the detailed information is kept by the lower level
servers.

ROOT SERVER
 A root sever is a server whose zone consists of the whole tree.
 A root server usually does not store any information about domains butdelegates
its authority to other servers, keeping references to those servers.
54
CS3591 – Computer Networks Unit-1
 Currently there are more than 13 root servers, each covering the whole domain
name space.
 The servers are distributed all around the world.

PRIMARY AND SECONDARY SERVERS


 DNS defines two types of servers: primary and secondary.
 A Primary Server is a server that stores a file about the zone for which it is an
authority.
 Primary Servers are responsible for creating, maintaining, and updating the
zone file.
 Primary Server stores the zone file on a local disc.
 A secondary server is a server that transfers the complete information about a zone
from another server (Primary or Secondary) and stores the file on its local disc.
 If updating is required, it must be done by the primary server, which sends the
updated version to the secondary.
 A primary server loads all information from the disk file; the secondary server
loads all information from the primary server.

DNS IN THE INTERNET


 DNS is a protocol that can be used in different platforms.
 In the Internet, the domain name space (tree) is divided into three different
sections - Generic domains, Country domains, and Inverse domain.

Generic Domains
 The generic domains define registered hosts according to their generic
behavior.
 Each node in the tree defines a domain, which is an index to the domain name
space database.
 The first level in the generic domains section allows seven possible threecharacter
levels.
 These levels describe the organization types as listed in following table.

55
CS3591 – Computer Networks Unit-1

Country Domains
 The country domains section follows the same format as the generic domainsbut
uses two characters for country abbreviations
 E.g.; in for India, us for United States etc) in place of the three character
organizational abbreviation at the first level.
 Second level labels can be organizational, or they can be more specific,national
designation.
 India for example, uses state abbreviations as a subdivision of the country
domain us. (e.g., ca.in.)

Inverse Domains
 Mapping an address to a name is called Inverse domain.
 The client can send an IP address to a server to be mapped to a domain name and
it is called PTR(Pointer) query.
 To answer queries of this kind, DNS uses the inverse domain

DNS RESOLUTION
 Mapping a name to an address or an address to a name is called name address
resolution.
 DNS is designed as a client server application.
 A host that needs to map an address to a name or a name to an address calls a DNS
client named a Resolver.
 The Resolver accesses the closest DNS server with a mapping request.
 If the server has the information, it satisfies the resolver; otherwise, it either refers
the resolver to other servers or asks other servers to provide the information.
 After the resolver receives the mapping, it interprets the response to see if it is a
real resolution or an error and finally delivers the result to the process that
requested it.
 A resolution can be either recursive or iterative.

Recursive Resolution

 The application program on the source host calls the DNS resolver (client) to find
the IP address of the destination host. The resolver, which does not know this
address, sends the query to the local DNS server of the source (Event 1)
56
CS3591 – Computer Networks Unit-1
 The local server sends the query to a root DNS server (Event 2)
 The Root server sends the query to the top-level-DNS server(Event 3)
 The top-level DNS server knows only the IP address of the local DNS server at the
destination. So it forwards the query to the local server, which knows the IP
address of the destination host (Event 4)
 The IP address of the destination host is now sent back to the top-level DNS
server(Event 5) then back to the root server (Event 6), then back to the source
DNS server, which may cache it for the future queries (Event 7), and finally back
to the source host (Event 8).

Iterative Resolution

 In iterative resolution, each server that does not know the mapping, sends theIP
address of the next server back to the one that requested it.
 The iterative resolution takes place between two local servers.
 The original resolver gets the final answer from the destination local server.
 The messages shown by Events 2, 4, and 6 contain the same query.
 However, the message shown by Event 3 contains the IP address of the top-
level domain server.
 The message shown by Event 5 contains the IP address of the destination local
DNS server
 The message shown by Event 7 contains the IP address of the destination.
 When the Source local DNS server receives the IP address of the destination, it
sends it to the resolver (Event 8).

DNS CACHING
 Each time a server receives a query for a name that is not in its domain, it needs to
search its database for a server IP address.
 DNS handles this with a mechanism called caching.
 When a server asks for a mapping from another server and receives the response,
it stores this information in its cache memory before sending it to the client.
 If the same or another client asks for the same mapping, it can check its cache
memory and resolve the problem.
 However, to inform the client that the response is coming from the cache memory
and not from an authoritative source, the server marks the response as
unauthoritative.
 Caching speeds up resolution. Reduction of this search time would increase
57
CS3591 – Computer Networks Unit-1
efficiency, but it can also be problematic.
 If a server caches a mapping for a long time, it may send an outdated mapping to
the client.
 To counter this, two techniques are used.
 First, the authoritative server always adds information to the mapping
called time to live (TTL). It defines the time in seconds that the receiving
server can cache the information. After that time, the mapping is invalid
and any query must be sent again to the authoritative server.

 Second, DNS requires that each server keep a TTL counter for each
mapping it caches. The cache memory must be searched periodically
and those mappings with an expired TTL must be purged.

DNS RESOURCE RECORDS (RR)


 The zone information associated with a server is implemented as a set of
resource records.
 In other words, a name server stores a database of resource records.
 A resource record is a 5-tuple structure :
(Domain Name, Type, Class, TTL, Value)
 The domain name identifies the resource record.
 The type defines how the value should be interpreted.
 The value defines the information kept about the domain name.
 The TTL defines the number of seconds for which the information is valid.
 The class defines the type of network

Types of Resource Records

DNS MESSAGES
 DNS has two types of messages: query and response.
 Both types have the same format.
 The query message consists of a header and question section.
 The response message consists of a header, question section, answer section,
authoritative section, and additional section .

58
CS3591 – Computer Networks Unit-1
 Header
 Both query and response messages have the same header format with
some fields set to zero for the query messages.
 The header fields are as follows:

 The identification field is used by the client to match the response withthe
query.
 The flag field defines whether the message is a query or response. It also
includes status of error.
 The next four fields in the header define the number of each record typein
the message.
 Question Section
 The question section consists of one or more question records. It is
present in both query and response messages.
 Answer Section
 The answer section consists of one or more resource records. It ispresent
only in response messages.
 Authoritative Section
 The authoritative section gives information (domain name) about one or
more authoritative servers for the query.
 Additional Information Section
 The additional information section provides additional information that
may help the resolver.

DNS CONNECTIONS
 DNS can use either UDP or TCP.
 In both cases the well-known port used by the server is port 53.
 UDP is used when the size of the response message is less than 512 bytes
because most UDP packages have a 512-byte packet size limit.
 If the size of the response message is more than 512 bytes, a TCP connection is
used.

DNS REGISTRARS
 New domains are added to DNS through a registrar. A fee is charged.
 A registrar first verifies that the requested domain name is unique and then
enters it into the DNS database.
 Today, there are many registrars; their names and addresses can be found at
http://www.intenic.net
59
CS3591 – Computer Networks Unit-1
 To register, the organization needs to give the name of its server and the IP
address of the server.
 For example, a new commercial organization named wonderful with a server
named ws and IP address 200.200.200.5, needs to give the following
information to one of the registrars:
Domain name: ws.wonderful.com IP address: 200.200.200.5

Simple Network Management Protocol

 The Simple Network Management Protocol (SNMP) is a framework for


managing devices in an internet using the TCP/IP protocol suite.
 SNMP is an application layer protocol that monitors and manages routers,
distributed over a network.
 It provides a set of operations for monitoring and managing the internet.
 SNMP uses services of UDP on two well-known ports: 161 (Agent) and 162
(manager).
 SNMP uses the concept of manager and agent.

SNMP MANAGER
 A manager is a host that runs the SNMP client program
 The manager has access to the values in the database kept by the agent.
 A manager checks the agent by requesting the information that reflects the
behavior of the agent.
 A manager also forces the agent to perform a certain function by resetting
values in the agent database.
 For example, a router can store in appropriate variables the number of packets
received and forwarded.
 The manager can fetch and compare the values of these two variables to see ifthe
router is congested or not.

SNMP AGENT
 The agent is a router that runs the SNMP server program.
 The agent is used to keep the information in a database while the manager is used
to access the values in the database.
 For example, a router can store the appropriate variables such as a number of
packets received and forwarded while the manager can compare these variables to
determine whether the router is congested or not.
 Agents can also contribute to the management process.
60
CS3591 – Computer Networks Unit-1
 A server program on the agent checks the environment, if something goes wrong,
the agent sends a warning message to the manager.

SNMP MANAGEMENT COMPONENTS


 Management of the internet is achieved through simple interaction between a
manager and agent.
Management is achieved through the use of two protocols

o Structure of Management Information (SMI)


o Management Information Base (MIB).

Structure of Management Information (SMI)


 To use SNMP, we need rules for naming objects.
 SMI is a protocol that defines these rules.
 SMI is a guideline for SNMP
 It emphasizes three attributes to handle an object: name, data type, andencoding
method.
 Its functions are:
 To name objects.
 To define the type of data that can be stored in an object.
 To show how to encode data for transmission over the network.

Name
 SMI requires that each managed object (such as a router, a variable in a router,a
value,etc.) have a unique name. To name objects globally.
 SMI uses an object identifier, which is a hierarchical identifier based on a tree
structure.
 The tree structure starts with an unnamed root. Each object can be defined
using a sequence of integers separated by dots.
 The tree structure can also define an object using a sequence of textual names
separated by dots.
Type of data
 The second attribute of an object is the type of data stored in it.
 To define the data type, SMI uses Abstract Syntax Notation One (ASN.1)
definitions.
 SMI has two broad categories of data types: simple and structured.
 The simple data types are atomic data types. Some of them are taken directly
from ASN.1; some are added by SMI.
 SMI defines two structured data types: sequence and sequence of.
 Sequence - A sequence data type is a combination of simple data types, not
necessarily of the same type.
 Sequence of - A sequence of data type is a combination of simple data
types all of the same type or a combination of sequence data types all of the
61
CS3591 – Computer Networks Unit-1
same type.
Encoding data
 SMI uses another standard, Basic Encoding Rules (BER), to encode data to be
transmitted over the network.
 BER specifies that each piece of data be encoded in triplet format (TLV): tag,
length, value

Management Information Base (MIB)


The Management Information Base (MIB) is the second component used in network
management.
 Each agent has its own MIB, which is a collection of objects to be managed.
 MIB classifies objects under groups.

MIB Variables
MIB variables are of two types namely simple and table.
 Simple variables are accessed using group-id followed by variable-id and 0
 Tables are ordered as column-row rules, i.e., column by column from top to
bottom. Only leaf elements are accessible in a table type.

SNMP MESSAGES/PDU
SNMP is request/reply protocol that supports various operations using PDUs.
SNMP defines eight types of protocol data units (or PDUs):
GetRequest, GetNext-Request, GetBulkRequest, SetRequest, Response, Trap,
InformRequest, and Report

GetRequest
62
CS3591 – Computer Networks Unit-1
 The GetRequest PDU is sent from the manager (client) to the agent (server) to
retrieve the value of a variable or a set of variables.

GetNextRequest
The GetNextRequest PDU is sent from the manager to the agent to retrieve thevalue of a
variable.

GetBulkRequest
 The GetBulkRequest PDU is sent from the manager to the agent to retrieve a large
amount of data. It can be used instead of multiple GetRequest and
GetNextRequest PDUs.

SetRequest
 The SetRequest PDU is sent from the manager to the agent to set (store) a
value in a variable.

Response
 The Response PDU is sent from an agent to a manager in response to GetRequest
or GetNextRequest. It contains the value(s) of the variable(s) requested by the
manager.

Trap
 The Trap PDU is sent from the agent to the manager to report an event. For
example, if the agent is rebooted, it informs the manager and reports the time of
rebooting.

InformRequest
 The InformRequest PDU is sent from one manager to another remote manager to
get the value of some variables from agents under the control of the remote
manager. The remote manager responds with a Response PDU.

Report
 The Report PDU is designed to report some types of errors between managers.

63

You might also like