Abstract:
An communications service provider provides wireless access to a packetized data network, such as the Internet. The service provider includes a server computer. The server computer is connected to the network, which is at least in part a wired network. The wired network is connected to a cellular wireless communications system. A method of the network includes a client device that communicates wirelessly with the server computer. The client device runs standard applications programs, such as browser, ftp, and e-mail. The method includes serving a first information by the server computer to the client device according to a specialized protocol, determining that the first information accords with the specialized protocol, and proxying the first information to the standard programs in a standard protocol readable by the standard programs.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is related to U.S. Provisional Patent Application No. 60/241,086 titled “Wireless Communications Invisible Proxy and Hooking Systems and Methods”, filed Oct. 17, 2000, co-pending herewith and which is hereby incorporated herein by this reference. 
    
    
     The present application is related to U.S. Pat. No. 6,166,729, entitled “Remote Digital Image Viewing System and Method”, issued Dec. 26, 2000 (CPA filed Oct. 26, 1999); U.S. Provisional Patent Application No. 60/177,329, entitled “Wireless Network System and Method”, filed Jan. 21, 2000; U.S. Provisional Patent Application No. 60/180,649, entitled “Digital Image Transfer System and Method”, filed Feb. 7, 2000; and U.S. Provisional Patent Application No. 60/220,730, entitled “Wireless Network System and Method,” filed Jul. 26, 2000, each of the same inventor hereof, and those respective applications are incorporated herein. The present application is also related to U. S. Provisional Patent Application No. 60/241,096, entitled “Wireless ASP Systems and Methods,” filed Oct. 17, 2000, U.S. Provisional Patent Application No. 60/241,095, entitled “E-Mail and Messaging Systems and Methods,” filed Oct. 17, 2000, U. S. Provisional Patent Application No. 60/241,087, entitled “Wireless Communications Protocols and Architectures Systems and Methods,” filed Oct. 17, 2000, and U.S. Provisional Patent No. 60/240,985, entitled “Browser and Network Optimization Systems and Methods,” filed Oct. 17, 2000. 
     BACKGROUND OF THE INVENTION 
     The present invention generally relates to wireless communications systems and methods and, more particularly, relates to systems and methods for wireless packetized data communications using specialized protocols and integration interfaces for operations of standard applications. 
     Conventional packetized data communications protocols and network architectures were developed primarily for use in wired networks and conditions. The protocols and networks are not optimized for the peculiarities of wireless communications environments. Networks, particularly client-server networks such as the Internet, are commonly designed to conform to standardized protocols, for example, the Transport Control Protocol/Internet Protocol (TCP/IP). Software and hardware applications of client devices that are connected to and communicate over these networks, therefore, generally are capable of communicating according to the TCP/IP or other standard protocol. 
     Where specialized or non-standard protocols are employed in communications on networks, these applications typically are not readily susceptible to communicating according to the specialized protocols. In the past, the applications have generally been re-written or modified to adapt to specialized protocol platforms and other communications nuances. For example, conventional practice has been to replace system DLL files or to use a proxy changing application (e.g., a browser) settings. Of course, such modifications are often costly, time-consuming, or inconvenient. Moreover, the general trend and concern of the communications industry is often expressed to be standardization and integration among multiple platforms and scenarios. 
     It would be a significant improvement in the art and technology to provide systems and methods for enabling standard software and hardware applications capable of communicating with certain protocols to be capable of communicating with other specialized protocols of networks, such as the Internet and particularly wireless environments, without requiring significant modification of the applications themselves. 
     SUMMARY OF THE INVENTION 
     An embodiment of the invention is a wireless communications network. The network includes a wireless communications channel, a wireless application service provider (ASP) server computer communicatively connected to the wireless communications channel, and a client device communicatively connected via the wireless channel to the wireless ASP server computer. The wireless ASP server computer communicates with the client device over the wireless communications channel by a specialized protocol. In certain embodiments, a hooking layer of the client device translates the specialized protocol to a standard protocol for use by standard applications programs of the client device. 
     Another embodiment of the invention is a method of wireless communications. A client device communicates wirelessly with a wireless application service provider (ASP) server computer. The client device runs standard programs. The method includes serving a first information by the wireless ASP server computer to the client device according to a specialized protocol, determining that the first information accords with the specialized protocol, and proxying the first information to the standard programs in a standard protocol readable by the standard programs. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present invention is illustrated by way of example and not limitation in the accompanying figures, in which like references indicate similar elements, and in which: 
         FIG. 1  illustrates a network, for example, the Internet, including a wireless communications portion and a wireless application service provider (ASP) system including a wireless ASP server computer in wireless communications with a wireless device; 
         FIG. 2  illustrates a hooking layer for intercepting standardized format communications and serving as an invisible proxy to specialized format communications, according to embodiments of the present invention; and 
         FIG. 3  illustrates a method of operation of the hooking layer of  FIG. 2 , according to embodiments of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     Network with Wireless ASP System 
     Referring to  FIG. 1 , a communications system  100  includes a wireless communications portion and a wired communications portion. The system  100  includes a network, such as the Internet  102 . The network is operable according to a particular packetized data protocol, such as transport control protocol/Internet protocol (TCP/IP) or some other network protocol. The network, such as the Internet  102 , interconnects various computing and communications devices, for example, among other devices, a server computer  104  and a wireless ASP server computer  106 . The server computer  104  and the wireless ASP server computer  16  are each one or more server computers including a microprocessor, memory storage, and communications capabilities via wire or wireless connection with the Internet  102 . The server computer  104  and the wireless ASP server computer  106  communicate over the Internet  102  or other network via the particular protocol of the network, such as the standard Internet network protocol TCP/IP. 
     The network, such as the Internet  102 , is also connected with a wireless communications service provider  108 . The wireless communications service provider  108  is, for example, a cellular or other packetized data wireless communications network, such as a cellular digital packet data (“CDPD”) or other network. The wireless service provider  108  connects by wire connection with the network, such as the Internet  102 . Alternatively, the wireless communications service provider  108  could connect with the network  102  by other communications connection, such as fiber optic, coax cable, wireless channel, or other communications connection. Furthermore, although the wireless communications service provider  108  is illustrated as a single particular communications channel, multiple links and multiple channels of those links, for example, communications links of wired and wireless channels, can alternatively provide the same functions and are included for purposes of the description. 
     The wireless service provider  108  is capable of communicating through wireless channels with various devices, such as a wireless device  200 . The wireless device  200  is a processing device, such as a data-enabled cellular telephone, a personal digital assistant, a laptop computer, or any of a wide variety of other processing devices that can wirelessly communicate with the wireless service provider  108 . Of course, the wireless device  200  includes communications equipment for accomplishing the wireless communication with the wireless service provider  108 , such as wireless modem. 
     The wireless device  200  communicates through the wireless service provider  108  and over the network, such as the Internet  102 , with the wireless ASP server computer  106 . The wireless ASP server computer  106  serves as a dedicated server for the wireless device  200  in its communications. The wireless ASP server computer  106  sends and receives communications to and from the wireless device  200  over the network, such as the Internet  102 , and on through the wireless service provider  108 . The wireless ASP server computer  106  also communicates over the network, such as the Internet  102 , with other network connected devices, such as the server computer  104 , via particular protocols in communications channels enabled for such communications on the network. In certain embodiments, for example, the wireless ASP server computer  106  and the wireless device  200  communicate with specialized protocols, such as optimized packetized data protocols, for example, optimized TCP/IP protocols or other protocols such as described in the related patent applications. 
     Communications between the wireless ASP server computer  106  and the wireless device  200  over the network, including through the wireless service provider  108  and the wireless portion, are performed according to special optimized, non-standard protocols and formats. Communications between the wireless ASP server computer  106  and other portions and elements of the Internet, for example, with the server computer  104 , are performed according to different protocols and formats, such as standard networking formats like TCP/IP. For purposes of example here, the network protocol is that of the Internet  102  (i.e., TCP/IP) and certain embodiments of non-standard protocols and formats, for the wireless communications between the wireless ASP server computer  106  and the wireless device  200 , are described in the related patent applications. The optimized protocols and formats are not limited to those of the related applications, however, and the same principles and concepts described herein apply to other situations and designs, as well. 
     Referring to  FIG. 2 , the wireless device  200  of  FIG. 1  includes various standard or typical application programs  202 . These programs  202  include, for example, a browser (e.g., Internet Explorer™), an FTP application (e.g., Bullet Proof™ FTP), and an e-mail client application (e.g., Eudora™). The programs  202  can, of course, be software applications, or firmware or hardware implementations. In any event, the programs  202  receive or use communications over the network&#39;s typical protocols, such as TCP/IP, which differ from the specialized protocols of communications between the wireless device  200  and the wireless ASP server computer  106 . The wireless device  200  also includes communications elements  204 , such as a wireless modem and applications for communicating with the wireless ASP server computer  106  over the wireless portions of the network  200 . The communications elements  204  include features for communicating with the wireless ASP server computer  106  according to the specialized protocols for such communications, as previously mentioned and as described in the related patent applications. 
     Additionally, the wireless device  200  also includes a hooking layer  206 , operably connected between the programs  202  and the communications elements  204 . The hooking layer  206  is implemented either in hardware or software and is resident on or communicatively connected to the wireless device  200 . The hooking layer  206  functions to allow communications of signals received by the communications elements  204  to be communicated, via either an application-standard socket (e.g., Winsock) or a specialized socket (i.e., Sockhook), between the communications elements  204  and the programs  202  in forms acceptable to the programs  202 . In effect, the application-standard protocol data received by the wireless device  200  is passed to the programs  202  via the standard sockets and any non-standard specialized protocol data received by the wireless device  202  is translated to be acceptable to the programs  202 . 
     Particularly, the hooking layer  206  includes sets of the standard dynamic link libraries (DLLs) (e.g., Winsock.dll) associated with the programs  202 . The hooking layer  206  also, however, includes a specialized set of non-standard DLLs (i.e., Sockhook.dll) that are specific for the specialized protocols and allow for appropriate action of the programs  202  in connection with communications according to the specialized protocols of the network  100 . As those skilled in the art will know and appreciate, the non-standard DLLs of the hooking layer  206  will depend upon the particular specialized protocols. In any event, the hooking layer  206  serves, in effect, as an invisible proxy to the programs  202  to make communications received by the wireless device  200  useable by the programs, whether such communications conform to standard network protocols or specialized optimized protocols. 
     Referring to  FIG. 3 , a method  300  of operation of the wireless device  200  and the hooking layer  206  is a form of switch that determines the applicable DLLs for the protocols of the communications and then provides an applicable socket for the programs  202 . The method  300 , when a communication is received by the wireless device  200 , for example, a wireless communication, commences with a step  302  of receiving the communication  302 . The communication is received in the step  302  by the modem and other communication elements of the wireless device  200 . 
     In a step  304 , the hooking layer  206  determines whether standard or non-standard sockets are appropriate, based on whether the received communication conforms to standard protocols or non-standard protocols, respectively. If the communication conforms to standard protocols of the network  100 , for example, TCP/IP protocols of the Internet, then the hooking layer  206  invokes the standard sockets and standard DLLs, such as Winsock sockets and Winsock.dll. The communication is then conveyed via the socket to the programs  202 , and the application performed by the programs  202  is run in a step  308 . 
     If, on the other hand, the communication is determined by the hooking layer  206  to be non-standard protocols, such as optimized wireless protocols of the related patent applications or others, then the hooking layer  206  invokes appropriate non-standard DLLs and acts as an invisible proxy in a step  312 . As an invisible proxy in the step  312 , the hooking layer  206  serves to interact with the received communication and the programs  202  by providing the information of the communication to the programs in form acceptable to the programs  202 . In acting as an invisible proxy, the hooking layer  206  sets up a non-standard socket (i.e., Sockhook) and uses the non-standard DLLs (i.e., Sockhook.dll). In effect, the hooking layer  206  in the step  312  receives the communication information in the form of the non-standard protocols, such as of the wireless portion of the network  100 , and manipulates the information to the form of the standard protocols of the network  100 , such as TCP/IP. The hooking layer  206 , acting as invisible proxy in the step  312 , provides the communicated information to the programs  202  for a step  308  of running the programs  202  using the information in acceptable form to the programs  202 . 
     In transmission communications of the wireless device  200 , the substantial reverse of the method  300  occurs. The application is run in a step  308 , and the result is delivered to the hooking layer  206 . At the hooking layer  206 , the hooking layer  206  again serves as an invisible proxy in a step  312 , although this time the hooking layer  206  manipulates the information from a standard protocol form to the non-standard protocols. The hooking layer  206  invokes the specialized socket and specialized DLLs for the manipulation, in the steps  304 ,  310 ,  312 . The wireless device  200  then transmits in a step  302  the information, formatted according to the specialized protocols, for example, the optimized wireless protocols. These specialized protocols are, thus, employed over the wireless portion of the network  100  in communications both ways between the wireless device  200  and the wireless ASP server computer  106 . 
     In operation of the systems  100 ,  200  and the method  300 , numerous alternative business and technical arrangements are possible. Of course, the wireless ASP server computer  16  must be capable of communicating via typical network protocols with other network connected devices in order to receive and deliver messages from and to those network connected devices, and then transfer those messages on or receive those messages from the wireless device  20 , as appropriate. Moreover, although only particular devices of a communications network and its nodes are herein described and discussed, particularly, primarily the wireless device  200  and the wireless ASP server computer  106 , the wired device  240  and the network  100 , such as the Internet, have been described with regard to the embodiments, it is to be expressly understood that combinations of those elements, such as a plurality of any, certain ones, all of those elements, and even additional or alternative elements, is possible in keeping with the scope of the embodiments herein. 
     The network could be an intranet, or even an intranet combination or intranet-extranet combination. Numerous banks of the wireless ASP server computer  16  can be possible for receiving communications from pluralities of wireless devices, and the wireless ASP server computers can be centrally located or distributed through a wide geographic area. In the case of a global network such as the Internet, the network is capable of communicating by its protocols, which may include other specialized protocols for specific situations. 
     The wireless ASP server computer in such instance can communicate with various devices on the network according to those other specialized protocols, if properly equipped as would be known to those skilled in the art. In general, the communications between the wireless device or devices and the wireless ASP server computer or computers occurs according to optimized protocols for wireless communications. These optimized protocols can be implemented entirely in software or alternatively can be hardware, combinations of hardware and software, or other mechanisms. The protocols of the hardware or software, as the case may be, for the wireless communications will, in any event, provide increased communications efficiency, speed, and adaptation for the wireless environment. 
     In the foregoing specification, the invention has been described with reference to specific embodiments. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the present invention as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present invention. 
     Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments. However, the benefits, advantages, solutions to problems and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature or element of any or all the claims. As used herein, the terms “comprises, “comprising,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus.