Sunday, March 25, 2007

Minimize the Client and Server transactions on the Internet

Whenever any website is visited the web browser opens the website’s home page initially. The home page in website serve as the introductory page for the entire website. It provides the links to other pages for detailed specific information. These links can be in the form tabs, buttons in the menu or any hyper linked texts and used to open the different pages. Usually the information itself is broken down in to different pages so that each page serves a different purpose and provides the classified information. The home page provides the hyper links or tab links through menus to other pages.

Web browser at the client machine processes the URL and opens the home page first and waits for the user to click for any links on it. The pages are loaded from the web server on demand whenever user clicks the hyper links. This saves the Internet bandwidth by loading only the require pages.

Internet bandwidth always becomes inadequate even if the bandwidth capacity is improved. This is due to the fact that there is always overloaded Internet traffic in the form with text, photos, video and voice. So the bandwidth needs to be carefully utilized.

Current strategy used in web browser is loading the page based on user requirement as discussed above. As the client machine keeps on requesting the pages, the page is repeatedly fetched from the web server. Distributed servers have increased the speed of getting the page. Even if the nearest servers are chosen based on the client’s geographic information the number of transactions are not minimized. The web browsers were designed earlier to get only the required information. The reasons may be the costly hardware like RAM and the secondary storage devices at client side.

Each time the page is refreshed or the hyper link is clicked there are many processes happen to get the page from the server. At minimum following are the tasks that need to be completed to get a requested page (Assuming that the cache is not set for the pages to stay locally).

1. At the client side web browser sends the request to server.
2. Web server needs to process the document search operation.
3. The searched document is loaded on to the Internet and sent to the client machine.
4. Client machine receives the document and refreshes the screen with the new page.

This happens every time the page is refreshed. If there are two Internet explorers open on the same machine for the same user login both act independently. When same URL is opened in these Internet explorers, both initiate the http request for that page and get the pages from the server.

Can the web browser behave smart when communicating to the web server?

If the transaction between the client and the server is minimized the load on the Internet is going to be minimized definitely.

What are the strategies to minimize the transactions between the client and server? It depends on the type of transaction. For the transactions where the stepwise authentication is required at the server side it cannot be minimized. But in any other types of transactions it should be minimized. Web browsers should determine the type of transaction happening and act accordingly.

1. Whenever the web page has a descriptive material user will definitely click the hyper links embedded in between the paragraph. The web browser can get the web pages for all the links in that paragraph when the page is downloaded for the first time. This is like getting all materials required instead of getting it whenever is required. This protocol can be applied when the server is not nearer to the client and the client and server communication is costly.
2. When the home page is downloaded from the server the server can send the information to the client about when next update can happen to that page. So that the client can cache the page locally depends on this time length. Some web pages frequently updated can follow some protocol to set their page update time.

Any comments please…

Program Structures and properties

1. C program Structure and properties

Structure:

void main(void)
{
statement 1;
statement 2;
.
.
.
statement n;
return;
}

C program will have the above typical program structures. Every C program will have at least main function. Other functions, if present, are called from this main. The C style programming has the following features.

Properties:

Procedural Programming Technique -
C program logic is built sequentially. The entire program flow is sequential from start to end like a procedure. There may be multiple threads and exits in between but the logic flows from start to end like a process.
Modular Programming -
C program is always a collection of function modules. The main function calls other functions. Entire main function can be a sequence of function calls where the entire process is broken down into modules.
Top Down Approach -
The programming approach used in C language is top down means; the program logic is built by making the functions calls assuming that the functions are present. Once the higher-level logic is built then these functions are implemented. While building the higher-level logic one need not bother about the lower level details of the functions to be implemented. Programmer can just assume the availability these modules and use them.

This Section will be continued...
Readers please leave your comments and any more expectations.

Save Water and Save Life

Save Water and Save Life