Introduction
1.1. WHAT IS THE INTERNET?
Internet or internetworking refers to a wide network through which computers are
interconnected globally with one another, and capable of sharing resources among
themselves. This network is called ‘internet’ (with a lower case i), The ‘Internet’
refers to millions of computers, connected in a gigantic network, which communicate
via TCP/IP protocols. This collection of computers store immense quantity of
information. Computer networks are very common in businesses and government
establishments. But the Internet is different from all others in two aspects. First, it
is the biggest network in the world, and second it is freely accessible to the public.
1.2 HISTORY OF THE INTERNET
In 1957, when Soviet satellite Sputnik was launched, the United States believed it to
be a great threat to its security. In response to this perceived threat, the United
States started a major military and academic initiative to promote research in the
areas of mathematics, pure sciences, and engineering. This initiative began under the
auspices of the Department of Defense, with the formation of an organizational body
called Defense Advanced Research Projects Agency (DARPA), later shortened to
ARPA.
Marshall McLuhan proposed the idea of the global village, where electronic
communications would come to function as the nerve system of the planet, replacing
the town-square as the gathering place for information. Leonard Kleinrock [1961] of
MIT proposed an alternative, called packet-switching. Instead of the traditional
streaming of data in wave forms, packet-switching sends data in packets. The data
12 + Web Technology: A Developer's Perspective
packets in packet-switching systems are small and in addition to the data, they also
carry information on where the data belongs in the original data stream and error
checking codes to ensure that the data arrives uncorrupted. This means that if a
packet is lost or corrupted, the receiving computer can request that only the missing
packet be resent, not the entire data stream. Although originally developed for radio
transmission, packet-switching proved to be robust enough to merit its adoption in all
forms of electronic data transfer. It would also become vital in the development of
such technologies as Ethernet, which is now a standard for local area networks
(LANs)
The year 1967, Wesley Clark coined the term Interface Message Processor or
IMP which is a separate mini-computer that functions as an interface between a
computer and the wide area network (WAN). In other words, IMPs allow different
types of computers to talk to each other. All of this research would reach its first
culmination in 1969 with the commissioning of ARPANET, the first wide area packet-
switched network. ARPANET ran under a control program called the Network
Control Program (NCP). NCP would be supplanted in the 70s by TCP/IP. ARPANET
initially consisted of four computers at the
University of California at Los Angeles (UCLA)
Stanford Research Institute
University of California at Santa Barbara (UCSB) and
University of Utah
In two years, this network had expanded to fifteen nodes. In twenty years time,
the number of nodes on the burgeoning Internet topped 100,000. At the beginning of
2001, the number of nodes on the Internet was more than 100 million
In 1972, Bob Kahn proposed the idea of an open architecture for the Internet.
The idea was to allow any computer to plug into the Internet and be able to function
with no modification to the computer itself. The original form of ARPANET had no
error checking for packets lost between networks and could not address a packet
beyond the IMP for the receiving network. ‘This was because it was designed to be
the only network. This worked fine as long as the people using it were the military
and affiliated academic researchers. But as the Internet grew, the need for open
architectures as well as new protocols became inevitable.
In 1973, Bob Kahn and Vinton Cerf began working on a detailed protocol that
addressed Kahn's Internet working standards. What they produced was called
TCPAP which stands for Transmission Control Protocol/Internet Protocol. This
protocol divides the process of transmitting data into two separate steps.
1. TCP handles the transmission of data and correction of in-stream
transmission errors,
2. IP handles the bundling of data into packets, addressing them and also
functions as the interface between the LAN and the Internet, and handles
errors where the data needs to be resent.
Along with TCP/IP came the IP address. Each computer on the Internet had
a unique IP address, which has four parts, each part being between ) and 255. The
number 255 was convenient breakpoint in binary math because it equals 11111111,Cuarrer 1 Introduction * 3
or the highest value presentable in one byte. Each number provided more detail for
the address in a hierarchical order. So the first number referred to the geographic
region, while the last number referred to a specific computer on a specific network.
This system yielded over four billion possible combinations, although the number of
usable addresses was significantly smaller than that.
With the increase in the number of computers connected to the Internet in the
70s, human-friendly addresses called domain names were implemented and maps to
IP addresses, which the router used to send information to the correct recipient. IP
addresses were all stored in the same large table, slowing down commu-nications as
every packet of data had to be checked against it. Paul Mockapetris solved this
problem by developing the Domain Name System (DNS). The DNS is a distributed
mechanism for domain name resolution, where different portions of the net handled
only parts of the addresses. Since the address is hierarchical, main routers only
checked the first level of the address, while local gateways only needed to check the
lowest level of the address to determine the specific computer to route the data
packet to.
By 1986, there were 5000 Internet hosts. By 1989, this umber reached 100,000.
One year later in 1990, it was 300,000. The Internet explosion had begun. Now the
Internet offers a lot of services which even help the common man to explore.
1.3. INTERNET SERVICES AND ACCESSIBILITY
As already discussed, today the Internet offers an extensive range of services many of
which were not speculated when the Internet was first launched services. Some of
the services offered are as follows
© Electronic mai
attach files
© Electronic mailing
sent to the list
USENET newsgroups: Electronic bulletin board service
A service that helps to send and receive messages and to
Everyone subscribed to the list gets a message
Real-time communication: Chat, messengers, videoconferencing, white-
boards, ete.
© File Transfer Protocol (FTP): A service that helps to send and receive
files to and from a file server
© Telnet, ssh: A remote login to other computers on the Internet, possibly
anonymously
© Gopher: This is an older menu-driven document system, which is now
mostly replaced by the Web
© World Wide Web (WWW): Documents and files of various types which
are connected using hypertext links to create a Web-like structure and are
accessed through the Internet by addresses called Uniform Resource
Locators (URLs)
The Internet users gain access to these services through Internet Service4 % Web Technology: A Developer's Perspective
Providers (ISPs). Usually, home PC is connected to the Internet through the landline
telephone connection using a device called modem (short form of modulator—
demodulator), which enables a computer to transmit data over telephone lines. There
are different types of Internet connections:
Dial-Up Connections: The dial-up access to Internet is a very popular
method because it is less expensive. To use this access, the computer should have a
modem to connect to the phone system and a software that uses the modem. This
software instructs the modem to place a telephone call to the number provided by the
ISP. At the ISP, another modem answers the call by giving hte connection.
Most of the Internet Service Providers supply 56 K connection. The 56 K refer to
the speed with which the information from the Internet can travel down the phone
line into your computer. The connection is normally established by dialing up to a
particular ISP.
High Speed Connections: High Speed Connections allow information to
travel quickly. With this connection, a lot of Internet services work better at higher
speeds. There are four basic types of high speed connections:
Digital Subscriber Lines (DSL): With DSL, the computer is always connected
to the Internet. This technology sends digital data through the existing phone lines
to carry Internet services.
Cable: Although the same wires are used, there is no interference to/from the
telephone calls. The Internet signal is carried on the TV cable network
Satellite: This connection needs a phone line to send information. It receives
data at high speed from the satellite
Integrated Services Digital Network (ISDN): ISDN is an international
communications standard for sending voice, video and data over digital telephone
limes or over normal telephone lines
1.4 USES OF THE INTERNET
The easy connectivity and convenient accessibility of Internet services have led to its
use in a number of different areas. Some of the services provided by the Internet are:
© telecommuting (working from home or anywhere) and online conferencing
business, advertising and online shopping (e.g. De! |. com for computers,
Amazon.com for books)
news, jobs, softwares
online courses, virtual classrooms, coachings
government services, politics and national defense
electronic publishing (magazines, newspapers and news services)
entertainment (television, radio, videos, audio MP3s, etc.)
teaching and learning (course websites, conferencing, simulation, visuali-
zation, etc.)
scholarly research (searchable databases of journal articles; individual Web
publishing, ete.)Cuarrer 1 Introduction * 5
e General information about a subject, especially which is not easily available
from other sources
© Correspondence (email, chatting, etc.)
1.5 PROTOCOLS
Protocol is a set of rules or an agreement that specifies a common language that
computers on a network use for communication with other computers. It also
specifies the conditions under which a particular message should be sent or
responded and the particular method of doing it. They give the specification on how
the computers talk with each other. There are various protocol suites available.
Ethernet: This is used to transfer information on a LAN. It specifies a
number of wiring and signaling standards for the physical layer, two ways of network
access (Media Access Control/Data Link Layer) and a common address format.
Internet Protocol (IP): This protocol provides communicable global addresses
offto the computers. The computers identify each other by the IP addresses.
Transport Control Protocol (TCP): This protocol guarantees reliable,
proper delivery of data from the sender to the receiver. It breaks large messages,
transports them reliably and reassembles them.
File Transfer Protocol (FTP): This is used to connect two computers over
the Internet so that the user of one computer can transfer files and perform file
commands on the other computer. It exchanges files over any network that supports
TCPAP protocol
Hypertext Transport Protocol (HTTP): This protocol is used to retrieve
Web pages from a Web server
Simple Mail Transfer Protocol (SMTP): This protocol is used for email
transmissions.
1.6 WEB CONCEPTS
The World Wide Web is an international hypertext system that links together
millions of documents. A hypertext link is a word or a picture, which requests a
different file from the Internet when you click on it. Hypertext markup language
(HTML) is a collection of tags, which is used to create formatted hypertext
documents. A Web page is a document created using HTML. A website is a
collection of related pages. Web pages and sites can be stored on the hard drive of a
local computer or a Web server on the Internet. A Web browser is a program that
displays the Web pages it retrieves. Popular browsers include Microsoft Internet
Explorer, Netscape Navigator, Mozilla, and Konqueror.6 + Web Technology: A Developer's Perspective
1.6.1 The Client/Server Model of the Web
Most Internet. services rely on the client/server model. The Internet user is the elient
and has the client software installed on his computer to access various Internet
services. When a user wants to connect to a particular information tool, he uses his
client software to connect to server programs, which provide the service or the
information needed. The client/server model has become one of the central ideas of
network computing, and is the basis of the TCP/IP protocol
Figure 1.1 shows the client software on a student's computer contacting a
server, using a particular protocol (the http protocol will produce a Web page
response). The server may return the data retrieved from a database.
response
‘\
- \ e
i 8 se data
query
protocol:
hetpi APD Server
FIGURE 1.1 The client software on a student’s computer connecting a server.
‘The Web browser is an example of the client software needed to access the
World Wide Web servers. Most browsers function as client programs for World Wide
Web and FTP access. For access to Telnet sites, a Telnet client is needed.
1.6.2 Retrieving Data from the Web
We can retrieve data by using the address of the file. This address is called a
Uniform Resource Locator (URL). The Address box of the browser shows the URL
of the currently displayed document. We can type a URL into the address box and
can get the file we wanted.
Structure of URLs: In the same way as each host computer has a unique IP
address, every data file or document on the Internet also has a unique address called
a URL (Uniform Resource Locator). The URL consists of three parts: the protocol,
the domain name and the path
The protocol, as discussed earlier, is the set of rules which the computer
follows in order to communicate with other computers. It lets the computer know
how to process the information it receives. If the protocol is http: //, for example,
the computer knows it will be processing a World Wide Web document,Cuarrer 1 Introduction * 7
The domain name is the Internet address of the computer (server) that is
hosting the site and storing the documents. This domain name may be expressed as
an IP address.
The path is the directory and file specification; it lets the computer know which
directory and file to access after connecting to the server. The path is not a required
element, but if you know the path, it will take you directly to the desired file or
document. The path is also part of the URL which changes frequently. For example,
http://www. linceweb. org/eresources.asp
hitp://_ is the protocol. ‘This lets you know that you are retrieving a World
Wide Web document and lets the computer know how to process the hypertext file it
is receiving.
www. linecweb.org/ is the domain name, the address of the computer that is
hosting the Web page
eresources.asp provides the path to the specific page you want; in this case,
the name of the file (eres ources. as) that provides links to electronic databases
1.6.3 How the Web Works
The model of Web communication conforms to client server communication. The
client is the Web browser like Netscape or Internet Explorer and the server is the
Web server where the requested Web pages are residing. The user uses a Web
browser and clicks on a document link. The browser reads the URL of the link and
recognizes the different parts of the URL. The client (the user's computer) contacts
the Web server (through the appropriate port number) and requests the file. The
server retrieves the file from its storage device (e.g. a hard disk). If no filename is
specified, default page (usually the home page) is retrieved. If the file is a program,
the program is run on the server. If the file contains images, those are also retrieved,
one by one. The server sends the results of the request to the Web browser, usually
in the form of an HTML document. The Web browser reads the HTML codes, formats
the document and images, and displays the results for the user to see
1.6.4 Web Browsers: Navigation Features
The following points give the overview of the default features available in the
browser.
The back button returns you to the page you last visited
The forward button reverses the action of the back button.
The home button takes you back to a page that your browser has chosen as the
home page
© Your browser’s home page opens when you open the browser.
© You can change the home page by opening the Preferences or Internet
Options dialog box listed in the browser menu.
© Use Current makes the current page the default. Use Blank opens a
browser window more quickly.B Wed Pechmatagy: A Developer's Perspective
‘The reload or refresh button redisplay# a page that has boon chan,
not display properly, The stop button tope loading oF downloading a nage dj
that is taking too long, The history button liste all the pages you have ot ah
n
visited, and makes it easy to return, Bookmarks or favoritos store Addrongee ent
can easily return to thom later. You can organize them into folders, 08 80 yo,
1.6.5 Searching Information on the Web
Tf we know a website address you can type it in the address box and th
directly. Several tools quickly search multiple sites on the Internet ler
e@ A subject guide or directory is a website that organizes ity conte
n
hierarchically by subject (topics and subtopics).
# Assearch engine searches the Web for one or more keywords you type aq
displays a list of pages found.
e@ A meta-search site submits the search to more than one search
thereby by reducing the distance between the client and the target,
Using a human search service, we can hire a real person to perform oy
search.
engine
1.7 INTERNET STANDARDS
Internet Standards have made possible the creation, testing and implementation ¢
the Internet. The Internet Engineering Task Force (IETF) develops these standards
The standards are then considered by the Internet Engineering Steering Grou,
(IESG), with appeal to the Internet Architecture Board (IAB), and circulated by th
Internet Society as international standards. The RFC Editor is responsible fo
preparing and organizing the standards in their final form. Generally Interne
standards define protocols, messages formats, schemas, and languages, which an
useful in interoperability of systems on the Internet. The most fundamental of th:
standards are the ones defining the Internet Protocol. All Internet standards an
given a number in the STD series—The first document in this series, STD !
describes the remaining documents in the series, and have a list of propose
standards. Often, documents in the STD series are copies of RFCs or are a few RFC:
collected together. Below is given a list of standards.
STD 66 (RFC3986) - Uniform Resource Identifier (URI): Generic Syntax
STD 64 (RFC3550) — RTP: A Transport Protocol for Real-Time Applications
STD 62 (RFC3413) — Simple Network Management Protocol (SNMP) Applications
STD 56 (RFC2453) - RIP Version 2
STD 54 (RFC2328) - OSPF Version 2
STD 51 (RFC1661) - The Point-to-Point Protocol (PPP)
STD 38 (RFC0903) - A Reverse Address Resolution Protocol
STD 13 (RFC1035) - Domain names—implementation and specification
STD 13 (RFC1034) - Domain names—concepts and facilitiesRie
Curse 1 Introduction % 9
STD 9 (RFC0959) —" File Transfer Protocol
STD § (RFC0854) — Telnet Protocol Specification
STD 7 (RFC0793) - Transmission Control Protocol
STD 6 (RFC0768) — User Datagram Protocol
STD 5 (RFC0792) — Internet Control Message Protocol
STD 5 (RFC0791) — Internet Protocol
STD 3 (RFC1123) - Requirements for Internet Hosts—Application and Support
STD 1 (RFC3700) - Internet Official Protocol Standards
oe Spe
Pras
10.
il.
12.
18.
14,
. What is the Internet?
. Distinguish the Internet and internet.
. Explain the different types of Internet connections.
. Write short notes on various services offered by the Internet.
The .. . allows computer users to locate and view multimedia based
documents over the Internet.
;. Define protocol.
. Describe various protocols used for communication over the Internet.
. Explain the client/server concepts of Web.
). What is a Web browser? Name any four.
. _ is a language to create Web pages.
Justify the use of the Internet.
How will you retrieve data from the Web?
Name the essential features of Web browser.
Expand the following acronyms
(a) HTTP
(be) FTP
() URL
(@) WWW
(e) SMTP
. How will you locate information on the Web?
What are the components of the Web? What is the communication protocol
between them?
_ How a Web browser communicates with a Web server?
Illustrate the architectural model of WWW and illustrate the steps involved
in accessing a Web page.iE a
Internet Protocols
2.1 INTRODUCTION
The Internet is a collection of end-systems that communicate using the TCP/IP
| protocol suite. TCP/IP stands for Transmission Control Protocol/Internet
| Protocol.
A protocol suite is a set of protocols defining services at a number of layers.
The TCP/IP protocol suite includes services at the network and transport layers.
The network layer needs some services from data link layer (e.g., Ethernet) to
_ provide basic communication between end-systems on the same network. TCP/IP does
not include a data link layer (or a physical layer), which means that TCP/IP can run
on many different types of networks (many different data link layers). The Internet
Protocols (IPs) are very popular open-system protocols, because they are inter-
| communicable between different sets of interconnected networks and are friendly to
both LAN and WAN.
Ethernet—a data link layer
Ethernet is a popular data link layer used in many LANs. It provides unique
addresses, but it is not globally communicable. Unlike IP, which is concerned with
the final destination of data packets, Ethernet is concerned only with the next host in
the network. Ethernet is supported by a variety of physical layer implementations.
| Although the physical layers may vary, all Ethernet networks have some common
mechanisms for transmission of data between computers on the same network,
including the ones mentioned below.
© =Multi-access (shared medium).12 % Web Technology: A Developer's Perspective
© Every Ethernet interface has a unique 48-bit address called as hardware
address or physical address. For example: C0:83:44:1 7
© ‘The broadcast address is in all 1s. A broadeast is a me:
received by all end
age that is
ms on a network,
Transmission of a frame
‘The source system constructs a chunk of data that includes the Ethernet address of
the destination and puts this data on the wire. All end-systems on the network (wire)
receive the data and look at the destination address, If the destination address
matches the Ethernet address of the end-system, it keeps the data which is other-
wise thrown away. Each frame includes a header that includes information such as
the destination address. The payload is the data that comes from/to higher level
layers,
2.2) INTERNET PROTOCOLS
‘The Internet protocols are popular open-system protocol suites. They are used
to communicate across interconnected networks. TCP and IP are well-known
communication protocols in that suite, The IP not only houses ‘TCP and IP, but also
applications like Email, Telnet, and File Transfer.
‘The protocol suite of ‘TCP/P along with the corresponding ISO/OSI (Inter-
national Standard Organization Open System Interconnection) layers is depicted
below
NFS 5-7 | ) Application Layer
Telnet XDR Presentation Layer
SMTP RPC Session Layer
SNMP
‘TCP/UDP 4 | Transport Layer
Routing Protocols, IP, ICMP | 3 | Network Layer
Data Link Layer 2 | Data Link Layer
Physical Layer 1 | Physieal Layer
2.2.1. Internet Protocol (IP)
‘The network layer of TCPAP is called IP (Internet Protocol. Since this is a network
layer, it is responsible for sending data between end-systems on different networks.
IP accomplishes this by using a data link layer such as Ethernet to transmit data
between systems on the same network, or delivers the data to a router that can
forward it to another network. IP networks have the following properties.
© Each end-system has a unique address (and IP address). Some systems have
multiple network interfaces and therefore multiple IP addressesCuarrer 2 Internet Protocols % 13
© The IP layer in each end-system uses a data link layer to transmit and
receive IP packets.
Since some systems (routers) must be able to forward IP packets, there must be
some mechanism for determining where each packet should go. This is accomplished
using network addresses (identifying networks) and host addresses, addressing
individual hosts (end-systems) on a network. The combination of network and host
address makes up the IP address, IP contains addressing information and control
information to send packets. The main features of IP are to provide connectionless
delivery of datagrams and provide fragmentation and reassembly of datagrams.
IP addresses
ch IP address is a pair of network address (net ia) and host address (host id)
Network Address | Host Address
For example: 137.132.88.16
An IP address is 32 bits Jong, and is usually shown using “dotted decimal
notation” in which each byte is shown as the decimal number encoded by the 8 bits.
For example,
Binary Dotted Decimal
00000001 00000010 90000011 00000100 1.2.3.4
10000000 11010101 00000001 00000001 128.213.1.1
‘The first part of each IP address specifies the network address, for example, the
network address 128.213 is the address for the Computer Science (CS) department
‘The last 2 digits specify the host (end-system) within the CS network, Therefore,
netid 128.213 and hostid 1.1 form the IP address 128.213.1.1.
When routing data packets, the routers look at the network address. Each
router has a table called a routing table that indicates where it should send a packet
given the destination network address. An example of a routing table is shown in
Table 2.1, Routers also have a “default route” that indicates where it should send
packets that have network addresses not in the routing table
TABLE 2.1 Routing table
Destination Network Address Forward to
177.132 Router at 128.213.7.3
128,113 Router at 128.213.1.4
144,13.7 Router at 128.113.7.2
128.213.7 Network A (128.213.7)
128.113.7 Network B (128.113. 7)
128.213.1 Network © (128.213.1)
Anything else Router at 128.213.1.414 % Web Technology: A Developer's Perspective
IP address space is currently administered by a hierarchy nominally rooted at
IANA (Internet Assigned Numbers Authority), but managed by the RIRs (Regional
Internet Registry). IANA allocates IP address space to the RIRs, who in turn allocate
IP address space to Internet Service Providers (ISPs). These ISPs may allocate IP
address space to down stream providers, custom ‘The RIRs may also assign IP
address space to organizations who are end entities, ie., organizations who will not
be reassigning any of their space to other organizations.
Types of Internet addresses
Internet addresses are divided into 5 classes A, B,C, D, and Bas shown in
Figure 2.1, Address ranges in each class are shown in Figure 2.2
7 bits 24 bits
Class A 0 hostid
14 bits 16 bits
Class B 1fo netid hostid
21 bits 8 bits
Class © a filo hostid
28 bits
Class D 1 fifilfo multicast group id
27 bits
Class B rfififilfo Reserved for future use
FIGURE 2.1 Class of IP addresses.
Class Address Range
A 0.0.0.0 to 127.255.255.255
B 128.0.0.0 to 191.255.255.255
c 192.0.0.0 to 223.255.255.255
D 224.0.0.0 to 239.255.255.255
E 240.0.0.0 to 247.255.255.255
Class Lowest Network Identifier Address Highest Network Identifier Address
A 1.0.0.0 126.0.0.0
B 128.0.0.0 191.255.0.0
c 192.0.0.0 223.255.255.0
D 224.0.0.0 239.255.255.255
5 240.0.0.0 247.255.255.255
FIGURE 2.2 Address ranges in each class.Cusrrer 2 Internet Protocols % 15
It is still possible for almost anyone to get assignment of a number for a small
Class C network in which the first three bytes identify the network and the last byte
identifies the individual host computer. Larger organizations can get a C
network where the first two bytes identify the network and the last two
identify each of up to 64 thousand individual workstations.
Certain addresses have special meanings. In particular 0, 127 and 255 are
usually reserved for special use. 255 indicates a broadcast address (for example
131.123.2.255), which is understood by all machines on the Net or subnet. The
network address with 127 as the first byte is the loopback network, which is
fictitious. ‘The address 127.0.0.1 is called localhost and means the current host
machine. 224.0.0.1 is the multicast address for all systems in the sub-network
Packet format
‘The packet format of an IP packet is given below
Version IHL | Type_of-serviee | Total Length
Identification Flags | Fragment Offset
‘Time_to_live Protocol Header Checksum
Source address
Destination address
Options (padding)
Data variable
‘The details of each field are given below:
Version Specifies the version of IP
IHL IP header length which is of 32-bit words
‘TOs Define how to handle datagrams
‘Total length Specifies the total length of the IP packet in bytes
ID Identification number used to identify the datagram fragments
Flags ‘This field consists of 8 bits: Lower order bit—specifies whether
datagram is fragmented, Middle bit—specifies whether the
datagram fragment is the last one, Higher order bit—not used
Fragmentation offset Specifies the relative position of the fragment from the
beginning of fragment data
TTL A counter that is decremented every time a router receives
the datagram and the datagram is discarded if it becomes zero
Protocol Indicates which upper layer protocol is present
Header checksum Used for ensuring the correctness of datagram packet
Source address IP address of source
Destination address IP address of destination
Options: Specifies various options, like security, to be set
Data Contains information16 % Web Technology: A Developer's Perspective
2.2.2 Transmission Control Protocol (TCP)
The TCP corresponds to transport layer of OSI reference model. The TCP provides
reliable transmission through connection-oriented, end-to-end reliable packet
delivery. It receives data from application layer and hand it over to IP layer.
‘The reliability mechanism deals with lost, delayed, duplicate or missed packets
‘Timeout mechanism is used to detect lost packets and requests for retransmission
Packet format
‘ource Port Destin:
ion port
jequence number
Acknowledgment number
HLEN Reserved Flags Window size
Checksum Urgent pointer
Option and padding
Data (variable)
‘The details of each field are given below:
Source and destination port | Specifies the port numbers at source host and
destination host
Sequence number Number assigned to first byte of data stream if it
has been split
Acknowledgment number | Specifies acknowledgment from the other end
Reserved Reserved for future use
HLEN Length of the header in bytes
Flag Defines 6 control bits for enabling flow contol,
connection establishment, and termination, and the
mode of transfer
Window size Defines the size of the window
Checksum Provided for error detection and correction
Urgent pointer Used if the segment contains urgent data
Options To include some optional information in the header
field
2.2.3 User Datagram Protocol (UDP)
User Datagram Protocol is a connectionless transport layer protocol, The UDP.
ports identify various applications running on a device. UDP adds no reliability, flow
control or error recovery. Each datagram is independent of others, and they may bert
lost by the network or arrive out of order. A receiving syatem remain unaware of the
sonding of a datagram unless it arrives. It also dooa not know if the received data is
just one in a series of datagrams, i.c., it cannot make any assumption about the order
received. UDP is used in situations, where reliability is not necessary and it ia very
helpful, in multimedia and multicasting applications, ‘The packet format follows:
Source port Destination port
Length Checksum
Source port Port number of source host
Destination port. Port number of destination host
Length Total length of the user datagram
Checksum Used to detect errors for the entire datagram
Most applications on the Internet are based on TCP. Both TCP and UDP must
provide communication between processes identified by protocol ports. So the
destination address of any TCP or UDP data includes an IP address and a protocol
port number. Many network services operate on a prescribed port number, for
example, HTTP (WWW) servers use port 80 and mail servers (SMTP) use port 25.
2.3 HOST NAMES
Users typically do not deal with IP addresses, but deal with the,host names. These
names are arranged in a hierarchical structure. The naming hierarchy is based”on—~
the concept of naming domains. Each domain covers some subset of the entire set of
names. At the top level there™are domains corresponding to educational institutions
(edu), commercial entities (.com), public organizations (org), government entities
(gov), ete. There are also top level domains for countries. Figure 2.3 shows such a
hierarchy.
Each individual organization get
IW
ts a name at the second level in the name
AKA I
\/
FIGURE 2.3 Domain hierarchy.oS
18 % Web Technology: A Developer's Perspective
jerar For example, Microsoft has microso£t.com It is :
aduonal Seen within organizations; and this is typienlly ‘ib to,
‘ons or dopartments within the larger organization, to ith
each individual host (end-system) hus 4 UniqUE Ham, :
department or sub-organization. The completo rm of hoat includes th lhiy |
well as the names of all sub-organization units, the organizational nam tg
level domain. For example, a specific computor in the computer aeiengy pt they
can be stan.cs.tem.edu and mun.tab.cs.tem.edu / Dg
There is a networked service that provides conversion between th
names and IP addresses; client process’s automatically access this sory ue
‘a-user enters a host name. This networked service is the Domain Name S8yn Mey
is an integral part of the Internet. There are thousands of participating DNg “In 4,
each server can provide IP addresses for a specific domain. Nery,
When an access to a remote computer is attempted on the Internet upjp
name, the client process contacts the DNS server that controls the domain jf 4
the client is found. It asks this server for the IP addross of the remoty gyn "hi
Once it gets a reply, the client now uses the IP address to establish commyy
with the remote computer. Since it is not likely that the local DNS server nytt”
IP address of all hosts on the Internet, it might need to contact another DN¢ yh!
(one that handles a larger domain) and ask for help. This process continuo, ine
naming tree until it reaches a top-level DNS server, whore the top-level server «
forward the request io the DNS server that handles tho top-level domain of
remote host (which can also pass the request to lower level domain servers), 5
collection of name servers can grow to accommodate the growth in the namin
hierarchy, since the conversion between names and IP addresses is a comm,
operation. Therefore, it is important that these requests are handled efficiently,
sub-organizati
Finally,
2.4 INTERNET APPLICATIONS AND APPLICATION PROTOCOL;
All Inteinet applications use TCP/IP to provide communication services, The dat
(the payload) delivered by TCP/IP must be formatted according to applicatin
protocols—these protocols define the exact nature of the data that is exchange
between processes. The development of protocols is typically done by a group calle
the Internet Engineering Task Force, with small committees responsible fo
development of each individual protocol. For example, there is a committee the
developed the SMTP protocol used to deliver email messages, and another tha
developed the FTP protocol used for file transfer. Each protocol is made wide)
available, so that anyone can develop software that adheres to the protocol. Now!
number of Internet Application Protocols are available some of which are liste
below:
HTTP—Hypertext Transfer Protocol
FTP—File Transfer Protocol
SMTP—Simple Mail Transfer Protocol
TFTP—Trivial File Transfer Protocol
RIP—Routing Information Protocol
IMAP—Internet Message Access ProtocolGoarree 2 Internat Pratctle % 1G
There are’many applicatione/services in wide use on the Internet, called
application level protocols that support some of these services. These protocols are
defined at the application layer in the OBI reference model (the highest layer) and
deal with the actual data exchanged by applications.
2.4.1 Datagram (Message Oriented) vs Stream
The TCP/AP supports the following two types of inter-process communication (aa
mentioned earlier also);
e UDP: provides datagram-oriented communication. Each “chunk” is delivered
independent of other chunks. There are hard limits on how large a “chunk”
can be (a few Kbytes).
TCP: provides an endless stream between two processes, Hach part of the
stream arrives in the order in which it was sent.
In situations that involve complex requests that cannot be structured to fit
within a single datagram, a stream-based protocol will be easier to uae. If requests
and replies are small, then a datagram protocol might simplify things and reeult im
faster communication (less overhead).
2.4.2 Trivial File Transfer Protocol (TFTP) ¢)
‘TP is a simple file transfer protocol that is designed for easy implementation.
TFTP supports basic file transfer and it does not support user authentication
“Aithough this protocol ie not in use now-a-days, a good example of a datagram-
‘oriented prot , and provides an ex: jow one can inbuild reliability to a
-based service (UDP does not_provide reliability).
TFTP supports two types of requests: Read File and Write File. A read
request_me: hat the client is asking the server to send a file, a write request
indicates that the client would like to send a file to the server. Since this protocol
P to deliver datagrams, cach individual message is delivered unreliably
“ses dat
tthe sender does not know if the message was received) apd the messages are
not necessarily deli
r of
‘Targe
in the order they were sent. TFTP supports the tran:
‘There are five different message types:
Read Request—sent by the client when asking the server to send a file.
Write request—sent by the client when asking the server to accept a file.
_— Data—the message contains part of a file being transferred.
— ACK—acknowledgment of a data message received
_- Error—the meesage contains an error code.
TFTP messages are not ASCII encoded messages (although some parts of the
messages are ASCII strings). Data is sent as raw bytes, Each time a process receives
a message (datagram) it must look at the first 2 bytes to determine which kind of
message is contained in the datagram. A typical exchange of messages involves an|
read request Or & write request, p
at is either @ write re ie ll
initial messee® fon nen race for ay ent ‘ithe setter: ‘and th i i
mple mess nt from the © 8 6,
9.4 shows @ 58) es ar" ived) eh
ta messag' e received).
although the iat messy data esse
must send an Server
Client
Read Request > Receives Read Request
cr Sends Data block #0
Receives Data block #0 pacar
Sends ACK block #0 ———__. Receives ACK block #0
Sends DATA block #1
Receives DATA block #1
Sends ACK block #1 (is lost) ‘timeout waiting for ACK!
Resends Data block #1
Receives DATA block #1
#1
Sends ACK block #1 —————_,. Roceives ACK block #1
eee Sends Data block #2 (<512 bytes)
Receives block #2
Sends ACK block #2
Done —————>» Receives ACK block #2
Done
FIGURE 24 Message trace for a read request.
2.4.3 FTP—File Transfer Protocol .
FTP is a protocol that supports the transfer of files. This protocol is more compli
than TFTP, but provides a richer set of services including authentication. FTP
ar most Web browsers. Files can be retrieved from an FTP server |
a ae te + expropricta hyperlink (or by entering an FTP URL).
Saiitilion In raded. fi nections used to transfer a file using FTP, the init
connection is used to ti ef exchange of commands and replies and the st!
the dala cone ( aneter a file (FTP supports transfer in either direction). 0"
server by cupeljing mais established, the client must authenticate itself with #
the server will sovept re ernnite and password. Once the authentication is complet
second ‘TCP connection this cory fle transfer. A file transfer includes establishit
the cmanecton creates a TCP endpoint wet eg as ee, orate sere Oe
in th ott tlt be used hy a clint to transfer files rs the peer, a, new Ber ul
servers to eee establishes connections b ee naa cst a oral th
ge the ‘desired file. Figure 2.6 seen vote the servers and tell
.5 shows the standard FTP connect”VIGURE 2.8 Standant FTP connection model (2 processes),
model (2 processos) and Figure 2.6 shown tho IEP alternative connection model
{8 processes). '
Control Control
FIGURE 2.6 FTP alternative connection model (3 processes).
24.4 Telnet (a generic TCP client)
‘elnet is available on most Unix systems and is a part of Windows 95/98/2000/NT.
“The Telnet. program allows the user to specify the address of a server (as an IP
address and port number) and attempts to open a TCP connection to the specified
process. Once a connection is established, the user can send a request by typing
commands and view anything sent back by the server. Telnet is useful only for
services that involve ASCII strings, binary data cannot typically be entered via a
| Keyboard or displayed in a window, In ‘Telnet, logging to a remote Unix computer
“means simply accessing the default port on the server machine on which the Telnet
is connected to. This default port is connected to a remote session server that starts
ip a shell so that commands can be typed as if they are typed on the same console.
though this is the most common use of Telnet, it is no different than connecting to
y other types of network service that is available via TCP.
2.4.5 HTTP (Hyper-Text Transfer Protocol)
(TTP is the application level protocol used to transfer hypertext documents on the
lorld Wide Web (WWW). The protocol itself is fairly simple, a client (typically aDeveloper's Perspect
TP serv the @
p connection 10,0 1 | ‘go formatted aa an ag’
browser) establishes a Tc} -conmectiny. The reply 8 often also formats aa an bsg)
of an ASCII string and exp! ‘data formats can be re’ | erver
+ ne ‘jinary data). Structure of the request is as follows, !
fare sent # ;
ii equence of lines of text—each |i,
te An HTTP request is. a Coat ta: ne}
LF pair. The first line includes tl
of methods supported by Hy
d: There are a variety
CRI
22 % Web Technology:
string, althoug
example, images
HTTP Reques
terminated by a CR
1. The request-metho
including: cnt
he client wants to get 6 vn
client wants to get some resource and ui :
t by the client that may modify the reque, tha
mitting forms). ne
nts information about sg,
"Th
ome resource
tells the server tl
e Post: tells the server the
more information will be sent
(used, for example, when sub
e HEAD: tells the server that the client wa
resource, but not the resource itself.
pur: tells the server that the client wants
server (not widely supported).
Is the server to delete a resource.
A resource-identifier: There is a strict format (syntax) for the resoun
jdentifier-strings that adhere to this format are called URIs (Univers
d of simple alphanumeric nam
Resource Identifiers). URIs are compose’
(some punctuation characters are permitted) delimited by the character “|
A URI looks like a UNIX file path, for example, the following are vali
URIs:
@ /~foobar/index
@ /cgi-bin/pizza_server
@ /£00/bar/£00/bar/fo0/bar/f00/bar/
3A ae? version identifier: It specifies the version of HTTP that the clier
understands. This string starts with the prefix HTTP/ and is followed b
version number (for example, HTTP/1.1). xd
eG
to send a resource to th
@ DELETE: tel
we
Some examples of the first line of an HTTP request are:
GET/~foobar/index HTTP/1.1
1
gi-bin/si leds
Qnup?name=daveéaddress=amos+eaton+119 HTTP/1-
gi-bin/signyy
HEAD/HTTP/11 eT) MTTP/1.1
‘The remaining lines of
meee contains additional inform
server provide a reg)
colon » followed by a fie!
“hich are shown below:
TTP
ee ars called header lines, each includ!
onermation about the client or the request that may hé
tte pa includes a field name, followed by
many predefined header fields, someCuarrn 2 Internet Protoc
User-Agent: generic browser
From: foobar@cs.man.edu
Referrer: http://barfoo.com/easy
Accept: */*
Cookie: favorite=chocolatecookles
‘The (possibly null) list of header lines is terminated by a blank line Gust a
CRLF pair). Once the server secs a blank line, it knows it has the complete request
and sends back a reply. Each reply contains a single line statua code, followed by a
Tet of header lines terminated with a blank line. If the reply includes some content
(typically some HTML) this follows the blank line. Although there are mechanisms
that the client can use to make multiple requests using a single TCP connection, in
ral, the server closes the connection as soon as it has sent a complete reply.
‘The following is an example session using Telnet to connect to an HTTP server.
‘The request (typed in by the user) is shown in italics and includes no header lines.
gene!
GET/HTTP/1.0
HTTP/1.0 200 Ok
Server: fool
Content-Type: text/html
Content-Length: 313
Last-Modified: Sat, 02 Sep 2005 14:21:28 GMT
Hi Dear
>
2.4.6 Email Protocols
‘There are a number of protocols in use on the Internet that support electronic mail,
and in addition to this, now there are a number of very popular Web-based email
systems. The structure of the Internet-based email system is depicted in Figure 2.7.
MTA is a Message Transfer Agent (a.k.a. an SMTP server). The MTAs forward
and/or store email messages.
UA is a User Agent (a mail client). User Agents provide the user interface, and
jsometimes also act as an SM'TP client or as a POP client.
MIME
MIME is an acronym of Multipurpose Internet Mail
standard that deals with the format of messages ex‘
Extensions. It is an international
changed between different email24 0 Web Technology: A Developer’
File System
net email system.
FIGURE 2.7 Overview of the Inter
systems. This standard is developed mainly to stent ees ae Antereti
9 includ 7 | messages, non-textual mes: a
to include non-US-ASCII textual me: OS ASCIT information in message headers,
i itipart messages and non ormati ;
i te gtondinds one provided by Internet Engineering Task Force (IETF) in
following documents.
rmat of ARPA Internet text messages
RFC-822 Standard for the fo: a
RFC-2045 Multipurpose Internet Mail Extensions (MIME) Part One: For
of Internet Message Bodies
RFC-2046 Multipurpose Internet Mail Extensions (MIME) Part Two: Mi
Types :
© RFC-2047 Multipurpose Internet Mail Extensions (MIME) Part Th
Message Header Extensions for Non-ASCII Text
© RFC-2048 Multipurpose Internet Mail Extensions (MIME) Part Fi
Registration Procedures
© RFC-2049 Multipurpose Internet Mail Extensions (MIME) Part F
Conformance Criteria and Examples
Need for MIME
os standards for basic Internet email were set in 1982 and described in RFC
locument. The 1982 standards allow mail messages with the following restriction
© messages contain only ASCII characters
© messages with only 1000 characters
© messages should not exceed certain length
‘To eliminate all the
bi ictis a
MIME was developed att (re, Testtictions and to include other message '
introduced as the standard in 1992.
Features
MIME allows mail messages to haveCuanren 2 Internet Pr
Multiple objects in a single mossnge
Mossage with any number of lincs or unlimited overall length
Characters othor than ASCII, allowing non-English messages
Multi-font: messages
Binary or application specific files
Images, audio, video and multipart messages
‘MIME headers
1,
w
MIME messages are represented by a body part. Each
and a body. While defining the header MIME specifies a
registered in IANA for public use. The syntax for content ty,
MIME-Version header field
This header uses a version number, which declares that the message
conforms to MIME standard. This field is necessary for processing MIME
messages. The header will look like this.
MIME-Version: 1.0
Content-Type header field
‘This field specifies the type and subtype of the data in the message body
and encoding format of such data. The following are the different content
types.
(a) Content-Type value Text
Used to represent textual information
(b) Content-Type value Multipart
Used to combine several body parts may be of different types into a
single message.
(©) Content-Type value Application
Used to transmit application or binary data.
(a) Content-Type value Message
Used for encapsulating mail message.
(e) Content-Type value Image
Used for transmitting image.
(f) Content-Type value Audio
Used for transmitting audio.
(g) Content-Type value Video
Used for transmitting video or moving data.
body part has a header
set of values, which are
pe header field is
type “/” subtype [";” parameter]
Content-Typvy perspective
Developer's Perspes
a Web Technology’ vei
26% Wel ‘abtypes and paramete for each content jp,
i
The defined content types *
given below:
Application
Application!
Indicates uninterpre'
lication/Postscript
at the
JOctet-Stream
‘ ted binary data.
Ane postscript document.
Indicates th: body contains 4
Audio
Audio!Basic /
. 1 dicates that audio is encoded by 8-bit ISDN w-law. When this suby
is specified the sample rate is 8000 Hz and single channel is assun,
Image
ImagelJPEG
Indicates an image in JPEG format.
ImogelGIF
Indicates an image in GIF format.
Message
MessagelRFC822
Indicates that the body contains an encapsulated message.
MessagelPartial
The partial subtype allows fragments of larger message to
transmitted. Three parameters are used along with this subtype:
© Id—match the parts together
@ = Number—part/fragment number
@ = Total—total number of parts or fragments
MessagelExternal-Body
Indicates that actual body data are not included but only referenced.
Mutipart
Indic i
i ates bs the data consists of multiple body parts, each having its °
pecial string called encapsulation boundary, encapsulates &
body part. It is d
look like lefined by boundary parameter. Multipart content type "
Content-Type: Mult
Multipart(Mixed
When this subtype i
a it}
viewed. ype is g
ipart/mixed; boundary = xghoTexc
ecified, multiple independent body parts #Curve 2 Internet Protocols 27
Multipart/Alternative
Bach part ia an alternative vorsion of the same mensnges, Mail reader
ean choone boat typo banod on tho aor's environment and preferences,
Multipart/Pavallel
AML body parte are dinplayod nimultancounly if supported by hardware
and software,
Multipart/Digest
Indicates each body part ia RIC822 mail message.
Toxt
It is default content type. The character set of the text is specified in charset
parameter.
Content-Type: text/Plain; charset = US_ASCIT
Text!Plain
Indicates plain (unformatted) text.
Text/Richtext
Indicates n portable word processing format defined by MIME standard.
Video
Specifies that body contain an image.
VideoIMPEG
Indicates video coded according to MPEG standard.
3, Content~Transfer-Encoding header field
Usually content in email will be encoded in 8-bit character or binary data.
Such data cannot be transmitted using some protocols like SMTP which
requires 7-bit ASCII encoding.
a mechanism to re-encode sw
header field. ‘The possible val
E id ch data through Content-
eae Encoding ues for this header fields
are:
BASEG4
QUOTED-PRINTABLE
8 BIT
7 BIT
BINARY
X-EncodingName
4, Optional Content-ID header field
h
If one body part references another, those body parts are labeled witl
Content-ID.reloper's Perspective
a header field
sociate descriP'
28% Web Technology: AB
tent Descriptio’
d to as
5. Optional Cor TT i
‘This header field is use 4
7 protocol)
ange email messages. $y
2.4.7 SMTP (Simple Mail Transfer
i hi
god by mail servers to exc! iil m f
tocol at sina, put does not support extraction Of @ user's ra
mjupported by 2 numbEE of other protocola inclugs
tions take place over @ TCP. sonnestion and are bag,
, one A i ages, tis type of Prot’ own ae
on a series of command reply exchanB™ + take place in the proper order, an, dt
step” protocol—a number of exchanges mus! F
entire sequence of exchanges makes up 2 transaction.
SMTP exchanges are based on lines of ASCII text,
that of the HTTP protocol. Each line coming from the
type and any parameters follow the request type On the sal
request types are listed below:
2 ELO—Establish SMTP connection,
MATL FROM—Tells the server that the client
steps necessary to create an email message.
that identifies the receiver of the message.
CPT TO—Tells the server from whom the message comes (the email addres
of the sender).
the content of the message follows (emai
paTa—Tells the server that
message content can include a number of email headers). 1
d for local email addresses)~
vrry—Verify that an email address is valid (use
gis the order in which an email message is exchanged between the
SMTP is the protoce”,
supports sending function oF ©
from server—that function *
POP and MAP. SMTP conversa!
in just the same way wig
client starts with a reque,
me line. Some of the maj,
jdentify the client
wants to initiate the sequence y
°
This includes the email addres
The followin:
client (the sender) and the server.
© Client establishes TCP connection and sends HELO command with cliex!
hostname as parameter.
e Server replies to the HELO with status line that indicates whether the HEC
was received properly. 4
© Client sends a MAIL FROM: comma: i i
nd with email address of sender.
e Server responds with status indication.
ient sends one or more RCPT TO: commands (one for each receiver) wit
.
ie email address of the receiver of the mail message.
erver responds with status indication. i fe
fol
co:
oe responds with a status indication.
; .
ome sani one or more lines of message data (the email messa e- its
_ eminated by a line with only a period (no spaces). oe be
sponds with.the status of entire transaction a
on
fade
This exchan
ge takes place it
each stat place in the order shi ,
each status reponse before proceeding, The only tae and the client should wait
onse is during the DATA commends ne 2 Sent Without ea
.
® Client sends a DATA command.
: ;
°asi Cuarrex 2 Internet Protocols
IAS POP (Rost Office Protocol, Version 3)
POP_which is similar to SMTP, involves com:
‘STP POP is used to retrieve mail fir wig
ASS | a database of email mossages crentod
raguire authentication in the form of a socrot th
server (@ password),
POP commands and replies are form:
ther “OK” or —ERR™. Some of the
J below:
mand/reply lockatep protocol. Unlike
le user, typically the POP server has
by an SMTP server. POP connections
at is shared by the user and the POP
‘atted as ASCII lines, and all replies start
commands that make up the POP protocol
specify username,
specify password.
fet mailbox status (number of messages in the mailbox).
get a list of messages and sizes, one per line, termination line
contains just a period.
ntrieve a message.
mark a message for deletion,
remove marked messages and close the (TCP) connection.
ids for Internet Message Access Protocol. This protocol is used to access the
s in email or electronic bulletin board that are in a mail server. For example,
a _email’message Stored in an IMAP server, can be accessed from a desktop
uter in home oF i ice ’ was originally developed in 1986 at Stanford
niversity.
The objectives of IMAP are
Compatible with Internet messaging standards, e.g, MIME.
.
© Allow message access from multiple computers.
¢ Provide support for “online”, “offline”, and “disconnected” access modes
°
.
Support for concurrent access to shared mailboxes
Client software needs no knowledge about the server's file store format,
The most distinctive feature of IMAP is the fact that the mail messages remain
on the server, instead of being downloaded to a computer. Checking the mail with a
client or Web-based environment, using this protocol will allow retaining the
messages in a universally-accessible place for access. IMAP supports the use of
folders for mail organization, but instead of organizing the messages on the local
computer, these folders are kept on the server as well. Another advantage to IMAP is
quicker access to mail. If e-mails are accessed from a slower connection, such as
modem dial-up, a substantial increase in speed can be noticed. Only the message
headers are initially downloaded, so the user can choose to download, open, and read
only those messages of interest. One drawback to using IMAP and saving messages
on the server is that the user will be restricted by any quota limitation the
administrator may set.30% Web Technology: A Developer's Perspective
poh cL REL ick
‘The protocol includes operations for
croating mailboxes
doleting mailboxes
renaming mailboxes
checking for new messages
permanently removing messages
otting and clearing flags / ;
serve based RFC-2822 and MIME parsing and searching
selective fetching of message attributes, texts, and portions for effcieney
IMAP vs POP
Some of the characteristics are common to both POP and IMAP:
-“e Both support offline operation. ;
a variety of client platform types.
Both can access new mail from ,
from anywhere in the network.
Both can access new mail
the Internet RFCs.
For both, protocols are open; defined by
Both are freely available implementations.
Both clients are available for PCs, Macs, and Unix.
For both, commercial implementations are available.
Both are Internet oriented; no SMTP mail gateways required.
Protocols deal with access only; both rely on SMTP to send.
Both support persistent message IDs (for disconnected operation).
‘The advantage of POP is that it is a simple protocol which is easier |
nt and most client software depend on it. The benefits of IMAP are, it
impleme:
manipulates persistent message status flags. These include flags such:
Seen, Deleted, Answered, as well as user-defined flags.
© stores messages as well as fetch them.
@ access and manage multiple mailboxes. This includes the ability to naz
and access different incoming and archive message folders, but also th
ability to list, create, delete, and rename them. These mailboxes can be ¢
the same server or on different servers.
© supports concurrent updates and access to shared mailboxes. This capabili
is useful when multiple individuals are processing messages coming int?
common inbox. Changes in mailbox state can be presented to #
concurrently active clients via IMAP. P
: ule, for accessing non-email data; e.g., NetNews, documents.
congiucie ie omiine paradigm, for minimum connect time and disk use.
speed links ie ee ae performance optimization, especially over lot
‘mithout dowulos : include the ability to fetch the structure of a messif
ie ioe it, to selectively fetch individual message parts, 2”
donee go use the server for searching in order to minimize data tre
Petwveen client and server. With multimedia or multipart MIME mess
“a ig selected parts of a message can be a huge advantage, as ¥>¢
receiving a short text message with a 10MB video clip “attachCrarra 2 Internet Protocols 31
Efficient i i i
be cient processing of MIME messages is a significant advantage of IMAP
In short, IMAP offers advantages over POP in the following areas:
17.
18.
. Explain briefly how the domain names are translated to II
. Write shortnotes on
richer functionality in manipulating someone's inbox
ability to manage mail folders besides someone's inbox
- primitives to allow optimization of online performance, especially when
dealing with large MIME messages.
REVIEW QUESTIONS
. What is a protocol?
. Define protocol suite.
. Write a short note on Ethernet.
What is the functionality of HTTP?
Give the functionality and purpose of HTTP. List the notion of transactions
and the primary characteristics.
Describe the architecture of TCP/IP?
How does TCP provides reliable and ordered delivery service?
Write short notes on IP addresses.
Differentiate Domain name and Domain name system.
|. Mention the functionalities of IANA.
Write short notes on (a) proxy server (b) firewalls.
. Explain briefly the services offered by TCP/IP.
"Describe the significance of IP addresses and their types.
_ is the authority responsible for providing IP address space.
P addresses.
() HTTP
(b) FTP
(© TFIP
@ SMTP
(e) Telnet
@® POP
(@) Domain Name System
Explain HTTP session with an example.
In the original class hierarchy of the Internet,
172.34.3.245 is a:
(a) Class A address
the IP address of