Вы находитесь на странице: 1из 48

Prasad B S Assistant Professor Dept.



1960s- U.S Department of Defense (DoD) became interested in developing a new large scale computer network. The DoDs Advanced Research Projects Agency (ARPA) funded the construction of the first such network established at UCLA in 1969 . Hence it was named as ARPAnet.

Early use-simple text-based communications through e-mail.


Other Networks (1970s-80s)

BITNET( Because its Time network) by City University of New York CSNET (Computer Science Network) connected University of Delware, Purdue University, University of Wisconsin, RAND Corporation etc. Provided E-mail service. NSEnet( National Science Foundation) in 1986 initially connected five universities later connected many organization and establishment and connected 1million computers by 1992. In 1995 it became known as Internet.
8/20/2013 3

The Internet is a global system of interconnected computer networks that use the standard Internet Protocol Suite (TCP/IP) Since 1982, all connections use TCP/IP- TCP/IP hides the differences among devices connected to the Internet It consists of millions of private, public, academic, business, and government networks of local to global scope that are linked by a broad array of electronic and optical networking technologies.


All devices connected to the Internet are uniquely identified using IP address. The Internet Protocol (IP) address of a machine connected to the Internet is a unique 32-bit number. IP addresses usually are written as four 8-bit numbers, separated by periods. New standard IPv6 128 bits.


Text based names to remember IP address technically known as Domain Name System(DNS). These names begin with the names of the host machine, followed by progressively larger enclosing collection of machines, called domains. There may be two, three or more domain names. DNS is of the form hostname.domainName.domainName .Example: vtu.ac.in First domain : Hostname Second domain and so on : Domain of which first domain is a part Last Domain : Type of organization. Ex: .com, .gov, .org, .in


The DNS has to be converted to IP address before destination is reached because computer understands only numbers. The conversion is done with the help of name server. As soon as domain name is provided, it will be sent across the internet to contact name servers. This name server is responsible for converting domain name to IP, If one of the name servers is not able to convert DNS to IP, it contacts other name server. This process continues until IP address is generated. Once the IP address is generated, the host can be accessed. The hostname and all domain names form what is known as FULLY QUALIFIED DOMAIN NAME.
8/20/2013 7


In 1980s, different protocols on TCP\IP had been developed to developed to support a variety of Internet uses.
FTP To transfer files over Internet Telenet- Remote login Usenet Electronic bulletin board mailto message over Internet

Drawback: User had to learn interfaces of all the different protocols. Solution: World Wide Web (WWW)


1989: Tim Berners Lee and his group proposed a new protocol for the Internet whose intention was to allow documents exchange. The proposed new system was designed to allow a user anywhere on the Internet to search for and retrieve documents from the databases on any number of different document-serving computers.

The system used hypertext, which is text with

embedded links to text in other documents to allow non-sequential browsing of textual material.
8/20/2013 10

Units of Web information:

Pages Documents Resources

Documents are texts with embedded links to other documents, they mal also have images, sound recordings or other media. In such case it is called hypermedia.

These documents can be accessed by web browsers and are provided by web servers.



It is important to understand that the Internet and the Web is not the same thing.
The Internet is a collection of computers and other devices connected by equipment that allows them to communicate with each other. The Web is a collection of software and protocols that has been installed on most, if not all, of the computers on the Internet



Client: Request for Information. Server: Provides service by providing requested information. Most application on WEB operates in this client\server configuration. Client: Web Browser Server: Web Server



Documents provided by servers on the Web are requested by browsers, which are programs running on client machines. First browsers were text based, not capable of displaying graphics, images, interface. 1993, Mosaic, first graphical interface browser, developed by NCSA ( National center for super computer application) Resulted in explosive growth of web usage.







Programs that provide documents to requesting browsers ( clients). First two servers:
Server at CERN in Europe Server at NCSA at university of Illinois

Commonly Used web servers:

Apache Microsoft Internet Information Server (IIS)

Web browser specifies a address of a data file on server or a program stored in the server that the client wants executed, with the output of the program returned to the client.
8/20/2013 17

All the communications between a web client and a web server uses the standard protocol HTTP When a web server begins execution,
It informs the OS under which it is running & it runs as a background process 1. 2. 3. 4. 1. 2. 3. Opens a network connection to a web server, Sends information requests and possibly data to the server, Receives information from the server and closes the connection. Monitor a communication port on host machine, Accept HTTP commands through that port and Perform the operations specified by the commands.

A web client or browser,

The primary task of web server is to

When the URL is received, it is translated into either a filename or a program name.
8/20/2013 18

Common characteristics of web servers Web servers have two main directories:
1. Document root (servable documents) 2. Server root (server system software)

The files stored directly in the document root are those available to clients through top level URLs The secondary areas from which documents can be served are called virtual document trees. Many servers can support more than one site on a computer, potentially reducing the cost of each site and making their maintenance more convenient. Such secondary hosts are called

virtual hosts.

Some servers can serve documents that are in the document root of other machines on the web; in this case they are called as

proxy servers.



Apache: Began as the NCSA server httpd Most widely used web server. Fast and Reliable Open source software and free Best available server for UNIX based systems which is preferred for servers. Contains three configuration files:
Httpd.conf Srm.conf Access.conf



Supplied with Microsoft windows server systems. Provides similar service to that of Apache. IIS Snap-in is a window based (GUI) management program to configure the server unlike configuration file of Apache.



Uniform Resource Locators (URLs) are used to identify different kinds of resources on Internet. If the web browser wants some document from web server, just giving domain name is not sufficient because domain name can only be used for locating the server. It does not have information about which document client needs. Therefore, URL should be provided. The general format of URL is:

scheme: object-address
Example: http: www.vtu.ac.in/results.php The scheme indicates protocols being used. (http, ftp, telnet...) In case of http, the full form of the object address of a URL is as follows: http://fully-qualified-domain-name/path-to-document



URLs can never have embedded spaces. It cannot use special characters like semicolons, ampersands and colons The path to the document for http protocol is a sequence of directory names and a filename, all separated by whatever special character the OS uses. (forward or backward slashes) A path that includes all directories along the way is called a complete path. Example: http://www.vtu.ac.in/index.html In most cases, the path to the document is relative to some base path that is specified in the configuration files of the server. Such paths are called partial paths. Example: http://www.vtu.ac.in/



A browser determines the format of a document it receives by the help of MIME. A web server attaches MIME format specification to the beginning of the document provided to browser. When browser receives the document, it uses the MIME specification to determine qwhat to do. MIME specification have the following format: type/subtype
8/20/2013 24

The most common types of MIME are texts, image and video. Common text subtypes are plain and html. Common image subtype gif and jpeg. Common video subtype mpeg and quicktime. Server determines the file type by using filenames extension.



Name of experimental type begins with x. Ex: video/-x msvideo Web provider can add an experimental subtype by having its name added to the list of MIME specification in web providers server. Web browser must supply a support program called helper applications or plug-ins.



All web communications and transactions uses the same protocol HTTP. Current version is HTTP1.1- stable, formally defines as RFC 2616. Two phases : Each communication consists of two parts, a header and a body.
Header- Information about communication Body Data of the communication if any Request Response



General form of an http request is as follows:

1. 2. 3. 4. HTTP method Domain part of the URL Header fields Blank line Message body HTTP version

/cs.uccp.edu/degrees.html HTTP/1.1




Commonly used HTTP request methods



Optional Header fields have four categories:

General: For general information such as date Request: Included in the request headers Response: For response headers Entity: Used in both request and response headers.

- Common request fields:

Accept: text/plain Accept: text/* If-Modified_since: date

- Common response fields:

Content-length: 488 Content-type: text/html



Host: hostname request field gives the name of the host. If the request has a body length of the body must given with a content-length field. Header of a request must be followed by a blank line, which is used to separate the header from the body. GET , HEAD, DELETE methods do not have bodies.



GET http://www.tiggerwigger.com/ HTTP/1.0 Proxy-Connection: Keep-Alive User-Agent: Mozilla/5.0 [en] (X11; I; Linux 2.2.3 i686) Host: www.tiggerwigger.com Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */ * Accept-Encoding: gzip Accept-Language: en Accept-Charset: iso-8859-1, *, utf-8



The general form of an HTTP response phase

1. 2. 3. 4. Status line Response header fields Blank line Response body

Status line
HTTP version three digit status code status code explain HTTP/1.1 200 OK



Common status codes:

404 not found 200- OK 500- Server encountered problem



Several lines of information about the response header. Content-type : only essential field.
HTTP/1.1 200 OK Date: Sat, 25 July 2009 20:15:11 GMT Server: Apache /2.2.3 (CentOS) Last-modified: Tues, 18 May 2004 16:38:38 GMT Etag: "1b48098-16a-3dab592dc9f80" Accept-ranges: bytes Content-length: 364 Connection: close Content-type: text/html, charset=UTF-8



Fertile ground for security problems. Transmit data without any interception and corruption. Security issues for a communication between a browser and a server: 1. Privacy 2. Integrity 3. Authentication 4. Nonrepudiation



Encryption:Basic tool to support privacy and integrity. Symmetric and Asymmetric Private-Key encryption and Public key encryption Public key encryption in 1976 by Whitfield Diffie and Martin Hellman. Most widely used public key encryption is RSA algorithm -1977- by Ron Rivest, Adi Shamir and Leonard Adelman of MIT.
8/20/2013 37

Viruses, Zombies, worms, hacking .. Solution is to use Anti Virus software's and keeping it up to date. Virus examples:
ILOVEYOU 2000 CodeRedvirus 2001 Blaster Worm 2003



Most common tools used in the Web programming. XHMTL, XML, Javascript, Java, Perl, PHP, Ruby, AJAX, Rails



To describe the general form and layout of documents An XHTML document is a mix of content and controls Controls are tags and their attributes
Tags often delimit content and specify something about how the content should be arranged in the document Attributes provide additional information about the content of a tag

Tools for creating XHTML documents

XHTML editors - make document creation easier, Shortcuts to typing tag names, spell-checker, WYSIWYG XHTML editors- Need not know XHTML to create XHTML documents



Plug ins
Integrated into tools like word processors, effectively converting them to WYSIWYG
XHTML editors

Convert documents in other formats to XHTML

Advantages of both filters and plug-ins:

Existing documents produced with other tools can be converted to XHTML documents Use a tool you already know to produce XHTML

Disadvantages of both filters and plug-ins:

XHTML output of both is not perfect - must be fine tuned XHTML may be non-standard You have two versions of the document, which are difficult to synchronize



A meta-markup language Used to create a new markup language for a particular purpose or area Because the tags are designed for a specific area, they can be meaningful No presentation details A simple and universal way of representing and transmitting data of any textual kind

A client-side XHTML-embedded scripting language
Only related to Java through syntax Dynamically typed and not object-oriented Provides a way to access elements of XHTML documents and dynamically change them



A system for building and displaying text, graphics, sound, interactivity, and animation (movies) Two parts:
Authoring environment Player

Supports both motion and shape animation

Interactivity is supported with ActionScript

A server-side scripting language Similar to JavaScript Great for form processing and database access through the Web



Asynchronous JavaScript + XML No new technologies or languages Much faster for Web applications that have extensive user/server interactions Uses asynchronous requests to the server Requests and receives small parts of documents, resulting in much faster responses

Java Web Software

Servlets server-side Java classes JavaServer Pages (JSP) a Java-based approach to server-side scripting, an alternative to servlets JavaServer Faces adds an event-driven interface model on JSP



Does what JSP and JSF do, but in the .NET environment
Allows any .NET language to be used as a server-side scripting language ASP.NET documents are compiled into classes

A pure object-oriented interpreted scripting language Every data value is an object, and all operations are via method calls Most operators can be redefined by the user

Both classes and objects are dynamic

Variables are all type-less references to objects



A development framework for Web-based


Particularly useful for Web applications that access databases Written in Ruby and uses Ruby as its primary user language Based on the Model-View-Controller architecture