web browser architecture.87 to 88

23
1 Sub topic : Web Browser Architecture

Upload: myrajendra

Post on 25-May-2015

2.043 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Web browser architecture.87 to 88

1

Sub topic : Web Browser Architecture

Page 2: Web browser architecture.87 to 88

2

Objectives

After completion of this period you would be able

to understand about

• Reference web browser

• Reference web browser architecture

• Various elements

• Different browsers and their architectures

Page 3: Web browser architecture.87 to 88

Web Browser Architecture

• The architecture of different browsers are different

• But they are similar in some respects

• Therefore a generic or reference architecture is explained here, followed by specific architectures

Page 4: Web browser architecture.87 to 88

4

A Reference Architecture to Web Browsers

Fig.1

Page 5: Web browser architecture.87 to 88

• The reference architecture shown in the Figure 1 comprises eight major subsystems. They are explained as follows

• User Interface– The User Interface subsystem is the layer between

the user and the Browser Engine– It provides features such as toolbars, visual page-

load progress, smart download handling, preferences, and printing

– It may be integrated with the desktop environment to provide browser session management or communication with other desktop applications

A Reference Architecture to Web Browsers

Page 6: Web browser architecture.87 to 88

• Browser Engine– It is an embeddable component that provides a

high-level interface to the Rendering Engine– It loads a given URI and supports primitive

browsing actions such as forward, back, and reload– It provides hooks for viewing various aspects of the

browsing session such as current page load progress and JavaScript alerts

– It also allows the querying and manipulation of Rendering Engine settings

The Reference Architecture

Page 7: Web browser architecture.87 to 88

• Rendering Engine– The Rendering Engine subsystem produces a visual

representation for a given URI– It is capable of displaying HTML and Extensible

Markup Language (XML) documents, optionally styled with CSS, as well as embedded content such as images

– It calculates the exact page layout and may use “reflow” algorithms to incrementally adjust the position of elements on the page

– This subsystem also includes the HTML parser

The Reference Architecture contd…

Page 8: Web browser architecture.87 to 88

• Networking subsystem

– The Networking subsystem implements file transfer protocols such as HTTP and FTP

– It translates between different character sets, and resolves MIME media types for files

– It may implement a cache of recently retrieved resources

The Reference Architecture contd…

Page 9: Web browser architecture.87 to 88

• JavaScript Interpreter

– The JavaScript Interpreter evaluates JavaScript (also known as ECMAScript) code, which may be embedded in web pages

– JavaScript is an object-oriented scripting language

developed by Netscape

– Certain Java- Script functionality, such as the opening of pop-up windows, may be disabled by the Browser Engine or Rendering Engine for security purposes

The Reference Architecture contd…

Page 10: Web browser architecture.87 to 88

• XML Parser

– The XML Parser subsystem parses XML documents into a Document Object Model (DOM) tree

– This is one of the most reusable subsystems in the architecture

– In fact, almost all browser implementations leverage an existing XML Parser rather than creating their own from scratch

The Reference Architecture contd…

Page 11: Web browser architecture.87 to 88

• Display Backend subsystem

– The Display Backend subsystem provides drawing and windowing primitives, a set of user interface widgets, and a set of fonts

– It may be tied closely with the operating system

The Reference Architecture contd…

Page 12: Web browser architecture.87 to 88

• Data Persistence subsystem

– The Data Persistence subsystem stores various data associated with the browsing session on disk

– This may be high-level data such as bookmarks or toolbar settings, or it may be low-level data such as cookies, security certificates, or cache

The Reference Architecture contd…

Page 13: Web browser architecture.87 to 88

13

Other Web Browser Architectures

Web BrowserHTML Parser

History stack

Browser Cache

Presentation Module

Object ModelUser Interface

Network Interface

HTTP Module Cache Management

InternetRequest Response

……Web Server 1 Web Server 2 Web Server N

URL

Web Server 2

Fig.9

Page 14: Web browser architecture.87 to 88

14

Web Local Cache

• cache settings (inside browser)examples

automatically: all cacheable web pages are validper session: in current session, all cacheable web

pages are valid• HTTP cache controls (associated with received web

pages)a web page

cacheablevalid perioduncacheable: its expire time as the same time it is

created

Page 15: Web browser architecture.87 to 88

15

Modeling of Caching Settings

• assume given setting is automatically

• a web page is cacheable: if the cacheable setting is included in the header part of the HTTP message containing the web page

• For HTTP cache control, no model of expire time

if a page is cacheable, the page is always fresh

• each page associated with an attribute for cacheability

Page 16: Web browser architecture.87 to 88

16

Session Control

• most web applications need to maintain communication

sessions with their client browsers, and monitor each

client's individual status and activities

• example: an online banking system should maintain a communication session with a specific user during the time the user has logged in (and not yet logged out)

• HTTP is stateless, no functionality on session control

• cookie technique -- a solution

Page 17: Web browser architecture.87 to 88

17

Modeling of Session Control

• only sessions for authentications

• no consideration of relationship between cookie and dynamic content/link

• assume it is given whether a page is secure or notsecure page: should always be accessed with

authentication session openall entry pages are by nature not secure

• two special actions SignIn and SignOut: session will remain open for the consecutive accesses to secure pages until SignOut performed

Page 18: Web browser architecture.87 to 88

18

Web Browser - Architecture

Fig.10

Page 19: Web browser architecture.87 to 88

19

Web Browser - Architecture

Fig.11

Page 20: Web browser architecture.87 to 88

20

Web Browser – Architecture : Mozilla

Fig.12

Page 21: Web browser architecture.87 to 88

21

Web Browser - Architecture

Fig.13

Page 22: Web browser architecture.87 to 88

22

Summary

In this class, you have learnt about

• Web Browser Introduction

• Web Browser Architecture

• Session, Navigation Control

• Different Browser Examples

Page 23: Web browser architecture.87 to 88

home 23

Frequently Asked Questions

1. Explain in detail about Web browser architecture

2. List few famous Web browsers

3 List few applications of Web browsers