internet applications (cont’d) basic internet applications – world wide web (www) browser...

20
Internet Applications (Cont’d) • Basic Internet Applications – World Wide Web (WWW) • Browser Architecture • Static Documents • Dynamic Documents • Active Documents • HTTP 1

Upload: daniela-harrington

Post on 21-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Internet Applications (Cont’d)

• Basic Internet Applications– World Wide Web (WWW)• Browser Architecture• Static Documents• Dynamic Documents• Active Documents• HTTP

1

Page 2: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

WWW: How A Browser Works• WWW project was initiated by CERN

(European Laboratory for Particle Physics) to create a system to handle resources necessary for scientific research.

• Web browsing uses client-server paradigm

• Browser: – Makes TCP connection – Sends request for page – Reads page

• If a page contains several images, Each different item - e.g., <IMG> tag (image) - requires separate TCP connection

• HyperText Transport Protocol (HTTP) specifies commands and client-server

interaction

2

Fig. 22.1 (text book)

Page 3: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

How The World Wide Web Works• Use client-server interaction• The client:

– browser program uses the Internet to contact a remote server

• The server:– returns a copy of the requested page

with additional information• A URL (Uniform Resource Locator)

tells a browser which server to contact– Each URL uniquely identifies a page

of information by giving the name of a remote computer and a specific page of information available from the server

• URL specifies– an access protocol– the domain name of the remote

computer on which the server runs

– any specific item

3

Fig. 22.7 (text book)

Page 4: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Inside a Browser Program • Examples: Netscape Communicator, Microsoft IE• A Web Browser Architecture usually consists of 3 parts:

– controller:• receives and interpret input from the keyboard or the mouse • calls other components to perform operations specified by users (e.g.,

uses a client program to access a document)

– client programs: uses different protocols• HTTP client fetches HTML documents from WWW server• optional clients: FTP client and E-mail client• FTP client - access file transfer service• E-mail client - send & receive e-mails

– interpreters:• HTML interpreter displays HTML-formatted documents

4

Page 5: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Inside a Browser Program

5

Page 6: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Web Documents• Documents in WWW can be grouped into 3

categories: – static documents:

• fixed-content, created and stored in the a server. – dynamic documents:

• created by a Web server whenever a browser requests the document.

• contents can vary from one request to another.– active documents:

• contain program to be run at the client side, e.g. animation• stored in the form of binary code. • transported to the client in a binary form.

6

Page 7: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Static Documents

7

Fig. 24.1 (text book)

(1) A user enters a URL, causing a browser to contact a Web server and request the item

(2) the server extracts the specified item from its local disk and sends a copy to the browser.

Page 8: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Dynamic Documents

8

Figure 24.3 (text book)

(1) A browser requests a URL that corresponds to a CGI program, causing the server to start the program

(2) the CGI program computes a response, which the server returns to the browser.

Page 9: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Dynamic Documents• Dynamic documents:

– e.g. documents generated using CGI

• A server follows these steps:– it examines the URL to find if

it defines a dynamic document, e.g. with extension .cgi

– if it is dynamic, then it executes the program.

– it sends the output of the program to the client.

9

Page 10: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Active Documents

10

Figure 24.4 (text book)

(1) A browser requests a URL that corresponds to an active document,

(2) Server sent a copy of active program to client (browser)

(3) the browser runs a copy of the active document, which then controls the screen.

Page 11: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Active Documents• Active documents:

– e.g. documents containing Javascript.

• Its execution is as follows:– the binary code of the program is

created and stored at the server side.

– upon client request, the binary code is transported to the client.

– the client uses its own software to change the binary code into executable code.

– the client runs the program.

11

Page 12: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Comparing Static, Dynamic & Active Documents

• Static Document• Advantages:

– Simplicity: straightforward formatting specifications – can be created by non-technical person

– Reliability: after it has been created and tested thoroughly, a static document remains valid indefinitely

– Performance: browser can (1) display static documents more rapidly and (2) place a copy on cache to speed up future requests

• Disadvantage:– Inflexibility: must be revised whenever information changes; not

useful for reporting information that changes frequently

12

Page 13: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Comparing Static, Dynamic & Active Documents

• Dynamic Document• Advantage:

– Able to report current information• Disadvantage:

– Increase cost: more expensive to develop than static document– Inability to update information continuously: Do not deliver a continuous

stream of images

13

Page 14: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

Comparing Static, Dynamic & Active Documents

• Active Document• Advantages:

– ability to update information continuously– Ability to change the display quickly enough to show an animated image

• Disadvantage:– Additional cost (more programming skills needed, requires more sophisticated

browser software and more powerful computer)

14

Page 15: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP

• HTTP (Hypertext Transfer Protocol)– protocol used to access data on the WWW.– uses one TCP connection on well-known port 80.– two types of http messages: request, response– transfer data in the form of plain text, hypertext,

audio, video, and so on.– data transferred look like SMTP messages (see

Lecture note 2).

15

Page 16: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP• HTTP requests use the concept of resource locator (URL).• In more detail, URL defines four things: method, host computer, port and

path– Method is the protocol used to retrieve the document, e.g. FTP, & HTTP. An

access protocol (see slide 3)– Host is the computer where the information is located. Domain name of the

computer (see slide 3)– Port: port number of the server (optional)– Path is the pathname of the file where the information is located. Specify a

specific item to request (see slide 3)

16

Page 17: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP: Request and Response

17

Page 18: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP: Request and Response

18

Status Line

Request Line

Page 19: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP Example: Retrieving a File

19

Page 20: Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents

HTTP Example: Retrieving a File• Request line

– request type (method): GET– path: /usr/bin/image1– HTTP version: 1.1

• client can accept images in GIF and JPEG formats• status line:

– HTTP version: 1.1– status code (a 3 digit number): 200– status phrase: OK (200 OK indicates request is successful)

• Header lines defines:– date: 04-Jan-99– server name: challenger– MIME version: 1.0 - (MIME (Multipurpose Internet Mail Extensions) is an SMTP extension

to allow non-ASCII data to be sent through SMTP.)– length of document: 2048 bytes

20