TECHNIQUE FOR IMPROVING THROUGHPUT OF A GATEWAY INTERFACE

Abstract: A technique for improving a throughput of a gateway interface, e.g., a WAP (Wireless Application Protocol) gateway, includes: a client, e.g., a wireless client, forwarding a request to a server via the gateway which is disposed between the client and the server; determining in the server if the requested content has been validated and if so, setting a predetermined header to "validated" and forwarding the requested content to the gateway and if not, either setting the predetermined header to "not validated" or not setting the predetermined header and forwarding the requested content to the gateway. Furthermore, the technique includes the gateway determining if the predetermined header of the forwarded requested content of the server has been set to "validated" and if so, forwarding the requested content to the client after encoding the validated content and if not, validating the content and then encoding the validated content and forwarding it to the client. In this way, the gateway does not have to needlessly validate requested content which had already been validated by the server.

Description: TECHNIQUE FOR IMPROVING THROUGHPUT OF A GATEWAY INTERFACE TECHNICAL FIELD The present invention relates to the field of gateway interfaces and more particularly, the present invention relates to a technique for improving the throughput of a gateway interface. The Wireless Application Protocol is an open global specification that allows mobile users with wireless devices to easily access information and interact with services without delay. Stated differently, the Wireless Application Protocol is an application environment and set of communication protocols for wireless devices which have been designed to enable access to the internet and advance telephony services independently of the manufacturer of the wireless device used. The WAP allows mobile devices to interface with the internet as well as interfacing with corporate intranets and allows the delivery of a wide range of value added services to the wireless subscribers or clients while being independent of the network and wireless terminal. This allows wireless subscribers to access the vast store of information available on the internet using a handheld wireless device in the same fashion as presently available utilizing a desktop computer connected by land- line to an internet provider. A Wireless Application Protocol gateway is the interface between the wireless client and an internet or intranet web server. Normally, upon a request from a client, a web server forwards content to the WAP gateway. The WAP gateway, prior to encoding the content from one format into content in another format, validates the content. The validation of the content is a time consuming operation and is performed by the WAP gateway whether or not the web server had previously validated the content. Thus, the content may be twice validated, needlessly consuming time and resources. This occurs because of the fact that the WAP gateway receives no information as to whether or not the content had been previously validated by the web server. DISCLOSURE OF THE INVENTION To overcome the above-noted problem, what is proposed is a technique for improving the throughput of a gateway interface by enabling the web server to inform the gateway as to whether or not the content has been previously validated by the web server utilizing, for example, HTTP headers. The above-noted technique includes a client forwarding a request to the server for content via the gateway which is disposed between the client and the server. The server then determines if the requested content has been validated and if so, sets a predetermined header to "validated" and forwards the requested content to the gateway and if not, either sets the predetermined header to "not validated" or does not set the predetermined header and forwards the requested content to the gateway. The gateway, upon receiving the forwarded requested content, determines if the predetermined header of the forwarded requested content has been set to "validated" and if so, forwards the requested content to the client after encoding it and if not, validates the content and then encodes it and forwards the validated content to the client. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram of the flow of information between an internet or intranet web server and a client. Fig. 2 is a flowchart of operations performed by a web server in accordance with the present invention. Fig. 3 is a flowchart of operations performed by a gateway interface in accordance with the present invention. BEST MODE FOR CARRYING OUT THE INVENTION Fig. 1 illustrates the basic flow of information between an internet or intranet web server and a wireless client, for example, via a gateway interface, for example, a WAP gateway. Normally, the web server validates content prior to sending it to the WAP gateway in response to a request from the wireless client. The WAP gateway first validates the content with a WML validator, for example, prior to encoding the content into WML or WML script content, for example, utilizing a WML encoder or WML script encoder. Since, in the past, the WAP gateway has no way of knowing whether or not the content has been validated, it has been necessary for the WAP gateway to validate the content from the web server irrespective of whether or not the web server has already validated the content. In accordance with the present invention, however, the web server sets, for example, a validation header, that is, perhaps an HTTP header, such as an Etag header, of the content to "validated" subsequent to validating the content and then forwards the content with the validation header to the WAP gateway. The WAP gateway receives the content along with its HTTP headers and then checks for the presence of a validation header. If the validation header is found and if it has been set to "validated," then the WAP gateway encodes the content utilizing a WML or WML script encoder, for example, and passes the WML or WML script content to the wireless client using the proper WAP (Wireless Application Protocol) without needlessly validating the already validated content. On the other hand, if no validation header has been found or if it has not been set to "validated," then the WAP gateway validates the content prior to encoding it. By the use of a validation header, such as an HTTP header, the web server can inform the WAP gateway as to whether or not the content has been validated, thereby allowing the WAP gateway to avoid needlessly validating an already validated content. More particularly, referring to Fig. 2 the web server first receives a request for content from the wireless client via the WAP gateway, for example. The server then determines if the requested content is available and has been validated. If the requested content has been validated, then the web server sets a validation header, perhaps an HTTP Etag header, for example, attached to the content to "validated" and forwards the content with the set validation header to the WAP gateway. On the other hand, if the requested content has not been validated, then the server either sets the validation header to "not validated" or does not set the validation header at all and then sends the unvalidated content to the WAP gateway. As illustrated in Fig. 3, the WAP gateway, for example, first receives the content from the web server. The gateway then determines if a validation header, such as an HTTP Etag header, is present and has been set to "validated." If the validation header is present and has been set to "validated," then the WAP gateway immediately encodes the content utilizing the WML or WML script encoder and forwards the encoded WML or WML script content to the wireless client using the Wireless Application Protocol. On the other hand, if the validation header is not present or is present and is not set to "validated," then the WAP gateway first validates the content prior to encoding the content into WML or WML script content utilizing the WML or WML script encoder and then forwards the encoded WML or WML script content to the wireless client using the Wireless Application Protocol. In this way, the transfer of information between the web server and the wireless client is optimized in that the WAP gateway interface throughput has been increased by eliminating the needless validation of already validated content. While in the above-noted example, a WAP gateway is used, the WAP gateway encoding the content using a WML or WML script encoder, the present invention is not limited to such encoding and such a gateway. All XML (extended markup language) based content types can be validated against DTD (document type definition). The DTD are the rules determined by an application that apply an SGML (Standard Generalized Markup Language), which is a syntax for markup languages that formalizes markup and frees it of system and processing dependencies to the markup language to documents of a particular type. The SGML provides the syntax for the markup language and the DTD provides the vocabulary for the markup language. The most common encoding currently used by WAP gateways is WML text format to WML binary format. The present invention, however, is not limited to this encoding format. The validation referred to above is defined as taking a document, for example, and checking that it is properly formed. XML documentation can be defined by using a DTD. The XML parser reads the DTD and the XML document and checks that the document is properly formed. A specific content type can have additional validation steps, e.g., WML which is based on XML defines extra validation steps so that to validate a WML document, one first needs to validate the document against XML and then an additional validation of the document is required by WML. As to the specifications of the WAP gateway, there is no single specification defining such a gateway because the specifications for the WAP gateway consists of multiple subcomponents that are specified by the WAP Forum. While the invention has been described in terms of a single preferred embodiment, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the appended claims. Thus, having described our invention, what we claim is new and is desired to be secured by a Letters Patent is as follows:

Claims: CLAIMS: 1. A method of improving a throughput of a gateway interface comprising the steps of: A - receiving a request for content from a client; B - determining if the requested content has been validated; C - if the content has been validated, setting a predetermined header to "validated" and forwarding the requested content to the gateway; and D - if the content has not been validated, one of either setting a predetermined header to "not validated" or not setting the predetermined header and forwarding the requested content to the gateway. 2. The method of claim 1, further comprising the steps of: E - determining in the gateway if the predetermined header of the forwarded requested content from the server has been set to "validated;" F - if the content has been validated, as evidenced by the predetermined header having been set to "validated," forwarding the requested content to the client; and G - if the content has not been validated, as evidenced by the predetermined header not being set to "validated," validating the content and then forwarding the content to the client. 3. The method of claim 2, further comprising the step of encoding the validated content in the gateway prior to forwarding the content to the client. 4. The method of claim 1, wherein the predetermined header comprises an HTTP (Hypertext Transfer Protocol) header. 5. The method of claim 4, wherein the HTTP header comprises an Etag header. 6. The method of claim 2, wherein the predetermined header comprises an HTTP (Hypertext Transfer Protocol) header. 7. The method of claim 6, wherein the H ' l ' l ' P header comprises an Etag header. 8. The method of claim 3, wherein the predetermined header comprises an H ' l ' l ' P (Hypertext Transfer Protocol) header. 9. The method of claim 8, wherein the H ' l ' l ' P header comprises an Etag header. 10. An apparatus for improving a throughput of a gateway interface comprising: a client and a server, the client forwarding a request to said server via the gateway which is disposed between said client and said server; wherein said server determines if the requested content has been validated, and if so, sets a predetermined header to "validated" and forwards the requested content to the gateway; and wherein if said server determines that the requested content has not been validated, said server one of either does not set the predetermined header to "validated" or sets the predetermined header to "not validated," and then forwards the requested content to the gateway. 11. The apparatus of claim 10, wherein the gateway determines if the predetermined header of the forwarded requested content from said server has been set to "validated;" and if so, forwards the requested content to said client and if not validates the content and then forwards the content to said client. 12. The apparatus of claim 10, wherein the gateway encodes the validated content prior to forwarding the content to the client. 13. The apparatus of claim 10, wherein said predetermined header comprises an HTTP (Hypertext Transfer Protocol) header. 14. The apparatus of claim 13, wherein said HTTP header comprises an Etag header. 15. The apparatus of claim 11, wherein said predetermined header comprises an HTTP (Hypertext Transfer Protocol) header. 16. The apparatus of claim 15, wherein said HTTP header comprises an Etag header. 17. The apparatus of claim 12, wherein said predetermined header comprises an HTTP (Hypertext Transfer Protocol) header. 18. The apparatus of claim 17, wherein said HTTP header comprises an Etag header. 19. The apparatus of claim 10, wherein the gateway comprises a WAP (Wireless Application Protocol) gateway and wherein said client comprises a wireless client. 20. The apparatus of claim 11, wherein the gateway comprises a WAP (Wireless Application Protocol) gateway and wherein said client comprises a wireless client.

Inventors: LEPPINEN MIKA, PADMA SACHIN, LEPPINEN, MIKA, PADMA, SACHIN
Applicants: LEPPINEN MIKA, NOKIA CORP, LEPPINEN, MIKA, NOKIA CORPORATION
Application year: 2000
Main classification: H04L29
IPC codes: H04L29