2. DNS- Domain Name System
Every host in internet can be accessed using IP address, but it very difficult for humans
to remember IP address of each host, he needs to contact.
As a solution, host are gives names, humans can access host using name.
Naming scheme is hierarchical, domain based naming scheme.
To manage large number of named, internet authority have managed it like postal
system. In postal system, each address consist of country, state, city, street etc.
Names of host are also according some hierarchy.
Conceptually, internet is divided into top 200 domain, similarly like country in postal
system.
Each domain is partitioned into subdomains and these are further partitioned. This is
similar to states in country, and cities in state.
This naming system can be represented by tree.
4. Domain Name System
Getting a second level domain, such as name-of-company.com is easy.
It just requires registration of the name with the authority of the top level domain.
Domains are named by path from it to root in upward direction.
Domain names are case insensitive. Each component can contain up to 63 character
and full path name must not exceed 255 characters.
Each domain can create sub domain within it.
Domain can contain single host or multiple host within it.
5. Domain Name Server
Domain Name Servers (DNS) are the Internet's equivalent of a phone book. They
maintain a directory of domain names and translate them to Internet Protocol (IP)
addresses.
This is necessary because, although domain names are easy for people to remember,
computers or machines, access websites based on IP addresses.
Each domain can have different types of records of it, these are called resource
records.
Recourse record is five tuple record.
domain-name time-to-live class type value
1. domain-name: is name of domain to whom given record belongs.
2. time-to-live: gives indication how stable information is.
3. class: class of information. For internet information, class is IN.
4. type: type of information.
5. value: value of record.
8. Name Server
A single name server can contain entire DNS database, but in practical, this server would be
overloaded.
To avoid this problem, DNS name space is divided into zones.
A zone contains some part of DNS tree and name server holding information about zone.
9. Name Server
A zone will have a primary server and secondary server.
Primary server gets information about zone from disk, secondary server gets information about zone
from primary servers.
When ever host requires DNS record, it will call a program called “resolver” and pass it the host name
for which IP address is required.
Resolver first pass query to local name server, if host name falls under boundary of that local server, it
will reply with record. This record is called “Authoritative Record”.
If the local name server does not have data of given host name, it will ask another name server. This
method is called recursive query.
12. E mail
Mail system is consist of TWO subsystem.
user agent: allows people to read and write mail.
Message Transfer agent: moves message from source to destination.
User agent is program that provides command base or menu base interface.
Message transfer agent are daemons, that run in background.
services provided by Email system
1. Composition: process of creating and answering.
2. Transfer: Moving message from sender to receiver.
3. Reporting: report to sender about status of sent message
4. Displaying: displays the messages to the user
5. Disposition: allows to save or throw message.
Other facilities are mailboxes: to store incoming mail, mailing list: a list of email addresses etc.
13. User Agent
User agent is a program that accepts commands for composing, receiving, replying to message.
When user agent starts up, it first of check mailbox of user for incoming email. Then it displays
messages in mailbox.
Message Format: messages consist of header field, blank line and message body.
header according to RFC 822 standard is given below.
15. User Agent
Earlier, mail used to be written only in English and expressed in ASCII format.
Due to growth of internet, mails are required to support other type of data also.
Solution is called MIME(Multipurpose Internet Mail Extensions).
MIME uses RFC 822 format, but it defines encoding rules for non ASCII messages.
MIME messages can sent using normal program and protocol, only sending and receiving user
agent needs to change so that they can support other language.
MIME header is attached after mail header, this header contains information about data and how
that data can be interpreted.
Message headers added by MIME.
16. Message Transfer agent
Message transfer agent deliver message from sender to receiver.
It complete task by establishing transport connection, transfer the data then
release connection.
SMTP: The Simple Mail Transfer Protocol
To send and receiver mail, SMTP is followed. Message transfer agent that is
using SMTP is listening at port 25. so TCP connection is established at port 25
of destination machine.
These message transfer daemon accepts incoming message, copies into
appropriate mailbox.
If message can not be delivered then error report is sent to sender.
20. Message Transfer
Until now, it is assumed that receiver message agent is always ready to accept but it is not
normal.
Solution of this problem is that, message transfer agent on ISP accepts mail on behalf of
customer and stores in mailbox on ISP machine.
When user agent comes on line, it will fetch mail from ISP’s machine.
To get mail from ISP machine, POP3(Post Office Protocol VERSION 3) is used.
POP3 begins when user starts mail reader. It establishes TCP connection with message agent
on ISP on port POP3.
Once connection is established, POP3 performs three steps in sequence.
1. authentication
2. Transaction
3. Update
23. WWW
World wide web is an architectural framework for accessing linked documents spread out all over
the internet.
The web began in 1989 at CERN, European center for nuclear research.
In 1994, M.I.T. and CERN signed agreement setting up World Wide Web Consortium (W3C) for
further development of web.
From users point of view, web is vast collection of documents called web pages.
Each page may contain link to another page.
Pages are viewed with a program called browser, browser fetches a page, interpret command in
it and displays page according to format.
String of text that is linked to another page is called hyperlink.
25. WWW
The Client Side:
Browser program at client side display the page and catches mouse clicks. When any item is
selected, browser follows hyperlink and page is fetched.
In hyperlink, pages are name using URL( Uniform Resource Locator).
http://www.abcd.com/product.html
URL has three parts,
1. Name of protocol (here http) used access resource.
2. DNS name of the machine where resource is located. ( here DNS name is www.abcd.com)
3. name of file containing the resource. (here product.html)
26. WWW
When user clicks on hyperlink, browser carries out following series of steps to
fetch the page.
1. Browser determines the URL
2. Browser asks DNS for the IP address of the server
3. DNS replies
4. The browser makes a TCP connection
5. Sends HTTP request for the page
6. Server sends the page as HTTP response
7. The TCP connection is released
8. The browser displays the page
Web pages are written in standard language like HTML, so all browser can
understand it.
27. WWW
Not all pages contains HTML, a page may contain PDF, song or video. Not all browser can
interpret all the data. To overcome problem, two solutions are possible.
1. plug in
2. helper application
(a) A browser plug-in. (b) A helper application.
28. WWW
The Server Side:
The steps that server or web server performs when request from client are listed below
1. Accept a TCP connection from client
2. Get path to page, name of file requested.
3. Get the file (from disk).
4. Send contents of the file to the client.
5. Release the TCP connection.
One problem is for every file, disk access is required. Solution is to maintain cache of n most
recently used files.
Modern server also performs authentication and access control task, it will first perform
authentication and access control, then it will fetch file from disk.
30. HTTP
The protocol that is used to transfer pages in world wide web is HTTP (Hypertext Transfer
Protocol).
It specifies what messages Client may send to server and what response they got back in
return.
Usual way to for browser to contact server is establish TCP connection with server, send
request, get the reply and release connection.
HTTP 1.1, supports persistent connections, with them it is possible to send and receive
multiple request, reply using single TCP connection.
Client request pages and other action on pages using various request method.
32. HTTP
Every request gets response consist of status line and other information.
Status line contains three digit Status code.
The status code response groups
33. HTTP
Message header:
The http methods may be followed by additional lines with more information. They are called
request headers.
Responses from server may also additional information, they are called response headers.
There are several types of request and response header for various purpose.
“User-agent” header allows client to inform server about its browser, OS and other properties.
“host” header contains servers DNS name.