How Web Browser Works ?

      Now days one of the most important software use for surfing web called a Web browser. Web Browsers enables a user to navigate through Web pages by  fetching those pages from some servers and subsequently displaying them on the user’s screen.  A web browser typically provides an interface by which hyperlinks are displayed in such a way that the user can easily select them through a single mouse click. In old days web browser used to be simple program but now days thing are changed, browsers are considered to be one of the most complex piece of software. Logically,we browsers consist of several components, shown in Figure. An important aspect of Web browsers is that it should (ideally) be platform independent. This goal is often achieved by making use of standard graphical libraries, shown as the display back-end, along with standard networking libraries. The core of a browser is formed by the browser engine and the rendering engine. The latter contains all the code for properly displaying documents as we explained before. This rendering at the very least requires parsing HTML or XML, but may also require script interpretation. In most case, there is only an interpreter for JavaScript included, but in theory other interpreters may be included as well. The browser engine provides the mechanisms for an end-user to go over a document, select parts of it, activate hyperlinks, etc.

One of the problems that Web browser designers have to face is that a browser should be easily extensible so that it, in principle, can support any type of document that is returned by a server. The approach followed in most cases is to offer facilities for what are known as plug-ins such as Adobe Flash Player.

What is a plugin ?
A plug-in is a small program that can be dynamically loaded into a browser for handling a specific document type or content. The latter is generally given as a MIME type. A plug-in should be locally available. Possibly after being specifically transferred by a user from a remote server. Plug-ins normally offer a standard interface to the browser and, likewise, expect a standard interface from the browser. Logically, they form an extension of the rendering engine shown in Figure.

Another client-side process that is often used is a Web proxy. Originally, such a process was used to allow a browser to handle application-level protocols other than HTTP. For example, to transfer a file from a FTP server, the browser can issue an HTTP request to a local FTP proxy, which will then fetch the file and return it embedded as HTTP.

By now most Web browsers are capable of supporting a variety of protocols, or can otherwise be dynamically extended to do so and for that reason do not need proxies. However, proxies are still used for other reasons. For example, a proxy can be configured for filtering requests and responses (bringing it close to an application-level firewall), logging, compression, but most of all caching. We return to proxy caching below. A widely used Web proxy is Squid, which has been developed as an open-source project.


Popular posts from this blog

MATLAB code for Circular Convolution using Matrix method

Positive number pipe in angular 2+