WO2008039117A1 - A method and apparatus for controlling a proxy server - Google Patents
A method and apparatus for controlling a proxy server Download PDFInfo
- Publication number
- WO2008039117A1 WO2008039117A1 PCT/SE2006/001102 SE2006001102W WO2008039117A1 WO 2008039117 A1 WO2008039117 A1 WO 2008039117A1 SE 2006001102 W SE2006001102 W SE 2006001102W WO 2008039117 A1 WO2008039117 A1 WO 2008039117A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- script
- request
- client
- workflow
- server
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
Definitions
- the present invention relates generally to a method and apparatus for providing a proxy server connected to one or more access networks to support communication with web servers over the Internet or an Intranet.
- a solution is provided for facilitating modifications and adaptations in a proxy server.
- a user can then access wanted information or services by sending a request to a server hosting a particular web site, e.g. for fetching a web page or a software program available from the web site.
- the contacted server then sends some kind of response back to the requesting client.
- HTTP HyperText Transfer Protocol
- WAP Wireless Application Protocol
- intermediary proxy servers are used which are basically- adapted to communicate with external web servers on behalf of clients, and vice versa.
- proxy server is used for short to represent a HTTP proxy server and/or a WAP proxy server.
- a proxy server is basically a computer offering a computer network service to allow clients to make indirect network connections to other network services.
- the proxy server generally adapts and controls the communication between the clients and web servers, providing suitable interfaces on one side towards the servers and on the other side towards the clients.
- a client first connects to the proxy server, then requests a connection, file, or other resource available on a web server.
- the proxy server is adapted to provide the requested resource either by connecting to the specified web server or by retrieving it from a cache. In some cases, the proxy may alter the client's request or the server's response for various purposes, e.g. depending on prevailing policies and rules.
- a typical proxy application often provides a nearby cache of web pages and files originally available on remote web servers, allowing clients to access them more quickly or reliably.
- a caching proxy When receiving a request for a particular web resource (specified by a URL) , a caching proxy looks for the given URL in its local cache. If found, the requested web resource can be retrieved from the cache and delivered immediately. Otherwise it fetches the resource from the .remote server, returns it to the requester and optionally also saves a copy in the cache.
- Fig. 1 illustrates a typical communication scenario where a mobile client terminal T accesses a web server S amongst a plurality of web servers 100 over the Internet 102 using a conventional proxy server 104, according to the prior art.
- the terminal T is connected to a mobile access network 106, which in this case is based on GPRS (General Packet Radio Service) and/or WCDMA (Wideband Code Division Multiple Access) technology using a gateway node called GGSN (Gateway GPRS Support Node) connected to the proxy server 104.
- GGSN General Packet Radio Service
- Further access networks may also be connected to the same proxy server 104, as generally illustrated by the numeral 110.
- the proxy server 104 is logically divided into different functional stack layers, including a server stack layer 112 facing the client side basically to receive requests from client terminals using WAP or HTTP, and a client stack layer 114 facing the web server side basically to send HTTP requests to the origin servers on the Internet.
- the server stack 112 and the client stack 114 are configured to adapt the communication to clients and web servers, respectively, such that server stack 112 basically appears as a web server towards client T and client stack 114 basically appears as a client towards web server S.
- a hard-coded proxy layer 116 is arranged between the server stack 112 and the client stack 114 in the proxy server 104, being responsible for various controlling and supporting functions, such as: subscriber identification, access control, charging, statistics, content filtering, format conversion, etc.
- the proxy layer 116 may exchange information with various external units schematically indicated by the numeral 118, to support these functions when needed, such as an online charging unit or a network access control unit.
- the proxy layer 116 may also retrieve various information from a session database 120 and a subscriber database 122, that may be required in order to control the communication and to support the proxy functions, e.g. as mentioned above.
- the server stack 112 and the client stack 114 in the proxy server 104 are well specified and not required to change very often.
- the functions implemented in the proxy layer 116 are typically very operator specific and changes or modifications of these functions may be required more or less frequently to keep them up-to-date with new services and policies.
- a conventional proxy layer is hard-coded, making it quite expensive and difficult to make any changes or modifications to the functions in the proxy layer 116. Therefore, the entire proxy layer must be hard-coded anew when implementing a new or modified function, and each function modification or addition requires considerable knowledge of the design and implementation of the entire proxy layer code. There is also always a considerable risk that modification or addition of functions in the proxy layer 116 could unintentionally influence existing functions in a negative and/or unpredictable way.
- a solution is desirable for making modifications or changes of functions more easy and reliable. It is also generally desirable to obtain greater flexibility of such functions in a proxy server supporting communication between clients and web servers over the Internet or an Intranet.
- a proxy server for adapting and controlling communication between a client terminal and a web server over the Internet or an Intranet, as defined by the independent claims.
- a workflow script is selected in the proxy server for the request.
- the workflow script is adapted to give instructions to at least one associated script-controlled function module for performing a specific function of the proxy server when handling the client request.
- the selected workflow script is then executed for the received client request.
- a plurality of different workflow scripts and associated function modules can be implemented in the proxy server as a proxy layer between a server stack layer facing client terminals and a client stack layer facing web servers.
- the workflow scripts are selected for different proxy functions, preferably as different types of workflow scripts including a session script, an incoming request script and an outgoing request script.
- the session script type basically specifies how the proxy server should operate when the client terminal starts or ends a web browsing session, and may also specify how the proxy server should validate that the network address of the terminal connected to the session is still allocated to the same terminal having started the session.
- the incoming request script type basically specifies how the proxy server should operate when said client request is received from the client terminal, and when a response from the web server to that request is delivered to the client terminal.
- the outgoing request script type basically specifies how the proxy server should operate when an outgoing request of the client terminal is sent to the web server, and when a response to that request is received from the web server.
- the function modules may perform various proxy functions such as subscriber identification, access control, charging, statistics, content filtering, and format conversion. At least some of the function modules may be connected to external units and databases to support their functions.
- a multipart handler in the proxy server may be used to create a subsequent outgoing request to the web server for each embedded object, for delivery to the client in a single multipart response.
- the workflow script may be selected based on at least one of: the type of client terminal or user-agent having sent the request, the identity of the web server, and the nature of the request and/or invoked service.
- a pre- processing script designed to correct any errors or bugs that are known to generally occur in requests from specific terminal models, may be selected if available for the model of the requesting client terminal.
- the workflow script may then be selected based on a URL given in said client request, and/or based on the identity of the operator and/or network serving the requesting client. Otherwise, a default workflow script may be selected if no URL-specific and/or operator/network specific workflow script is available for the client request.
- the workflow script may further be selected based on any of: the current type of client subscription, the current time of day/week/season, and the current traffic load.
- the selected script can be executed immediately if a valid version of the script is available in binary encoded form. However, if a valid version of the script is available only in textual form and not in binary encoded form, the textual version of the script is loaded and translated into a binary format before being executed.
- the inventive arrangement in the proxy server comprises a plurality of workflow scripts and a plurality of script-controlled function modules associated with said workflow scripts, for performing specific functions of the proxy server when handling received client requests directed to web servers. Each function module is adapted to perform a specific function based on instructions from an associated workflow script.
- the workflow scripts and associated function modules can be implemented in the proxy server as a proxy layer between a server stack layer facing client terminals and a client stack layer facing web servers.
- the workflow scripts preferably include the following types of workflow scripts: session scripts, incoming request scripts and outgoing request scripts, each specifying how the proxy server should operate as described above for the inventive method.
- the function modules can be adapted to perform different proxy functions, e.g., subscriber identification, access control, charging, statistics, content filtering, and format conversion.
- the proxy server arrangement may further comprise a multipart handler adapted to, if a web server response to a client request refers to one or more embedded objects and a requesting client terminal supports multipart content, create a subsequent outgoing request to the web server for each embedded object, for delivery to the client in a single multipart response.
- the proxy server arrangement may further comprise means for selecting a workflow script for a particular client request directed to a web server, based on at least one of: the type of client terminal or user-agent having sent the request, the identity of the web server, and the nature of the request and/or invoked service.
- the script selecting means may be adapted to select a pre-processing script, designed to correct any errors or bugs that are known to generally occur in requests from specific terminal models, if available for the model of the requesting client terminal.
- the script selecting means may further be adapted to select the workflow script based on a URL given in said client request.
- the script selecting means may further be adapted to select the workflow script based on the identity of the operator and/or network serving the requesting client.
- the script selecting means may further be adapted to select a default workflow script if no URL-specific and/or operator/network specific workflow script is available for the client request.
- the script selecting means may further be adapted to select the workflow script based on any of: the current type of client subscription, the current time of day/week/season, and the current traffic load.
- the proxy server arrangement may further comprise means for executing the selected script immediately if a valid version of the script is available in binary encoded form, and means for loading and translating an available textual version of the selected script into a binary format before being executed, if no valid version of the script is available in binary encoded form.
- FIG. 1 is a block diagram illustrating a communication scenario where a client terminal accesses a web server over the Internet using a conventional proxy server, according to the prior art.
- FIG. 2 is a block diagram illustrating a communication scenario where a client terminal accesses a web server over the Internet using a proxy server, according to one embodiment .
- - Fig. 3 a flow chart illustrating steps performed in a proxy server when handling an incoming request from a client, according to another embodiment.
- - Fig. 4 is a flow chart illustrating steps performed in a proxy server when handling an incoming response from a web server, according to yet another embodiment.
- Fig. 5 illustrates an exemplary architecture for implementing three types of workflow scripts and associated function modules in a script controlled proxy layer, according to yet another embodiment.
- Fig. 6 is a flow chart illustrating steps performed in a proxy server when selecting a workflow script, according to yet another embodiment.
- Fig. 7 is a flow chart illustrating steps performed in a proxy server when executing a selected workflow script, according to yet another embodiment.
- a mobile client terminal T accesses a web server S via the proxy server 200 which is configured with a layered structure including a server stack layer 202 facing the client terminal T, and a client stack layer 204 facing the web server S.
- a set of workflow scripts 206 and associated function modules 208 are arranged between the server stack layer 202 and the client stack layer 204, making up the proxy layer.
- Each workflow script 206 comprises a series of work instructions which, when executed, activates one or more specific proxy functions implemented in the associated function modules 208, e.g. the above-mentioned functions of subscriber identification, access control, charging, statistics, content filtering, format conversion, etc.
- the function modules 208 are thus script-controlled, or "scriptable”.
- the workflow scripts 206 may be written according to the ECMA-262 standard, often referred to as ECMA script, Javascript or Jscript.
- Certain function modules 208 may be further connected to various external units and databases to support their functions, exemplified in the figure by the numerals 210, 212 and 214.
- one module Mi may be adapted to perform subscriber identification and exchanges information with an external subscriber database 210.
- Another module M 3 may be adapted to perform charging control and exchanges information with an external charging unit 212, and yet another module M 4 may be adapted to perform access control and exchanges information with an external access control unit 214, and so forth.
- the proxy server 200 receives a request from a client, or a response from a web server, one or more suitable workflow scripts are selected from the set of scripts 206, e.g. based on the nature of the request and/or service invoked. The process of script selection will be described in more detail later on in this description.
- Fig. 3 is a flow chart illustrating some basic steps executed in the proxy layer of a proxy server when handling an incoming request from a client directed to a web server. Reference to Fig. 2 will also be made when describing the steps in Fig. 3 as follows.
- a first step 300 an incoming client request directed to web server S is received from the server stack 202, having originally received the request from client terminal T.
- a suitable work script is selected from the set of scripts 206 for processing the client request, in a next step 302.
- the selected script is then executed in a following step 304, which may involve activation of one or more associated function modules 208 as described above.
- a next step 306 it is determined whether another work script is required for processing the client request, e.g.
- Fig. 4 is a flow chart illustrating some basic steps executed in the proxy layer when handling an incoming response from a web server, i.e. moving in the opposite direction through the proxy server 200. The server response is given in response to the client request handled in Fig. 3. Reference to Fig. 2 will again be made when describing the steps in Fig. 4 as follows.
- a first step 400 an incoming response directed to client terminal T is received from the client stack 204, being a response from server S to the earlier request from client terminal T.
- the one or more workflow scripts selected for the client request in the process of Fig. 3 are now further executed for processing the server response, in a next step 402, which may again involve activation of one or more associated function modules according to said scripts.
- each workflow script may include instructions both for handling the request and the subsequent response.
- the response is finally forwarded to the server stack 202, for transfer to terminal T.
- the operation of the proxy layer in a proxy server may be controlled by three main types of scripts: session scripts, incoming request scripts and outgoing request scripts.
- the client terminal is an HTTP client, although the present invention is not limited thereto.
- a session script specifies how the proxy layer should operate when a client terminal starts or ends a web browsing session, e.g. using HTTP or WAP. It also specifies how the proxy layer should validate that the network address of the terminal connected to the session, typically an IP address, is still allocated to the same terminal having started the session.
- a session script may include the following instructions:
- An incoming request script specifies how the proxy layer should operate when an incoming request is received from the client terminal directed to a web server. It also specifies how the proxy layer should operate when a response to that request from the web server is delivered to the client terminal.
- an incoming request script may include the following instructions: - Send the request from the subscriber to the multipart handler,
- An outgoing request script specifies how the proxy layer should operate when an outgoing request coming from the client terminal is sent to a web server. It also specifies how the proxy layer should operate when a response to that request is received from the web server.
- an outgoing request script may include the following instructions:
- Fig. 5 An exemplary architecture for implementing these three main types of workflow scripts and associated function modules in a script controlled proxy layer, is schematically illustrated in Fig. 5.
- the proxy layer is again arranged between a server stack and a client stack in the same manner as shown in Fig. 2.
- Fig. 5 specifically illustrates the situation when a request is received from a client terminal, not shown, directed to a web server, not shown.
- the server stack 500 receives the request and forwards it to a session block 502 in the proxy layer in a step 5:1.
- the client request is then forwarded to a selected session script 504 in a next step 5:2.
- the session script 504 is executed, one or more function modules are activated by means of instructions.
- the figure illustrates that an identification module 506 is activated as well as any further required function modules 508 associated with the session script 504.
- the incoming request 510 is then applied to a selected incoming request script 512, in a step 5:3.
- the incoming request script 512 is executed, one or more function modules are activated by means of instructions.
- a charging module 514 is activated as well as any further required function modules 516 associated with the incoming request script 512.
- the proxy server can automatically fetch objects (e.g. pictures or style sheets) that are related to a root document, for delivery to the client in a single multipart response.
- objects e.g. pictures or style sheets
- a fetched document or the like according to an original request may refer to one or more additional embedded objects to be fetched separately from the web server.
- a so-called "multipart handler" in the proxy layer can be used for creating a new outgoing request for each embedded object, to be submitted to the web server.
- an original client request may result in one or more subsequent requests in this manner.
- the incoming request will in fact result in multiple outgoing requests according to the above.
- the request is now forwarded to a multipart handler 518 in a following step 5:4, which is configured to check the web server response and create one or more additional requests 520 depending on whether the response to the original request refers to any embedded objects.
- the original request here denoted as outgoing request 1
- a selected outgoing request script A is applied to a selected outgoing request script A in a step 5:5.
- subsequent requests 520 will be applied to further outgoing request scripts 522, to be described below.
- the outgoing request script A When executed, the outgoing request script A may activate one or more function modules by means of instructions.
- the figure illustrates that a URL filtering module 524 is activated by outgoing request script A as well as any further required function modules 526 associated with script A.
- the outgoing request 1 After being processed by means of the outgoing request script A, the outgoing request 1 is now ready to be submitted to the target web server. Thus, request 1 is forwarded to the client stack 528, as illustrated by a step 5:6.
- the web server Upon receiving the above-handled request 1, the web server provides a response to the client stack 528, in this case referring to embedded objects that can be fetched by means of further requests.
- the next step 5:7 illustrates that the client stack 528 forwards the web server' s response back to the previously selected outgoing request script A for further processing which may again involve activation of associated function modules.
- the URL filtering module 524 may again be activated in order to adapt any delivered information or visual content to requirements dictated by the client's subscription and/or prevailing policies and rules, etc.
- the response is forwarded to the multipart handler 518, as illustrated by a following step 5:8.
- the response refers to embedded objects resulting in another two outgoing requests 520 to be applied to another two selected outgoing request scripts 522 as follows.
- a subsequent second outgoing request 2 is applied to a selected outgoing request script B in a step 5:5a
- a subsequent third outgoing request 3 is applied to another selected outgoing request script C in a step 5:5b.
- scripts B and C may activate associated function modules in the same manner. Being different scripts, script B and/or script C may activate function modules different from the ones activated by script A, and so forth.
- the same outgoing request script may be selected for two or more of the requests 1, 2 and 3.
- requests 2 and 3 are forwarded to the client stack 528, as illustrated by further steps 5:6a and 5:6b, respectively, to be submitted to the web server.
- the next steps 5:7a and 5:7b illustrate that the client stack 528 forwards two incoming separate responses from the web server further to the selected outgoing request scripts B and C, respectively, for further processing which may again involve activation of associated function modules.
- the URL filtering module 524 may again be activated in order to adapt any delivered information or visual content to requirements dictated by the client's subscription and/or prevailing policies and rules, etc.
- the two subsequent responses are forwarded to the multipart handler 518, as illustrated by following steps 5:8a and 5:8b, in order to compile them with the first response into a single combined response for delivery to the client.
- steps 5:5a-5:8a and steps 5:5b ⁇ 5:8b may be executed as parallel procedures for two different embedded objects found in the original response of step 5:8. It should be noted that steps 5:5a-5:8a and 5:5b- 5:8b are optional depending on whether any embedded objects are present in the response from the web server, therefore being indicated with dashed arrows in the figure. In general, any number of such embedded objects can be fetched by means of this procedure.
- the multipart handler 518 compiles the individual responses of steps 5:8, 5:8a and 5:8b into a combined response which is then applied to the previously selected incoming request script 512, in a step 5:9, which when executed may activate one or more function modules in the same manner as described above.
- the response is now ready for delivery to the client and is forwarded to the session block 502 in a step 5:10.
- the session script 504 is applied once more, in a step 5:11, in order to end the session.
- the response is forwarded to the server stack.500 in a step 5:12. for ... delivery to the client.
- the proxy layer in a proxy server may comprise plural different session, incoming and outgoing request scripts to be selected for handling each client request.
- the different workflow scripts may be selected according to different conditions and facts, including the type of client terminal (or user-agent) or the identity of the web server, as well as the nature of the request and/or invoked service.
- a session script may be selected by the logic session block 502
- an incoming request script may be selected by a logic block handling the incoming request 510
- outgoing request scripts may be selected by respective logic blocks handling the outgoing requests 1-3 520.
- a client request is received from a client terminal, directed to a specific web server.
- the proxy layer contains one or more "preprocessing" scripts which can be executed before executing the selected "main" script, i.e. a session script, an incoming or outgoing request script.
- the pre-processing scripts (not shown in Fig. 5) are designed to correct any errors or bugs that are known to generally occur in requests from specific terminal models, e.g. by adding or removing HTTP headers. Any incoming request contains information on the terminal type which is read when received by the proxy layer.
- any incoming client request contains a URL pointing to a specific resource in the web server.
- the proxy layer contains a main script that is specific for the URL addressed in the request. If so, the URL specific main script is selected for the request in a following step 608.
- the proxy server may operate specifically for different applications such as normal browsing, download of games or ring tones, submission/ retrieval of an MMS (Multimedia Message Service) , etc.
- the proxy layer may check a specific look-up table matching certain known URL's with specific scripts.
- step 608 is naturally omitted.
- the proxy layer contains a main script that is specific for the operator/ network, or "virtual gateway operator", serving the requesting client.
- the operator/network identity can also be read from the incoming request. If so, the operator/network specific main script is selected for the request in a following step 612.
- the proxy server can use different subscriber identification/authentication mechanisms depending on whether it serves a GSM network or a CDMA network.
- step 612 is naturally omitted and a default main script is selected in a step 614, which is neither URL specific nor operator/network specific.
- the proxy layer may check a specific look-up table matching operator/network identities with specific scripts.
- the selected script is executed in a last step 516.
- the client request is then ready to be processed by another script or unit in the proxy layer, or to be submitted to the target web server, e.g. by forwarding the request to a client stack in the proxy server.
- a specific main script may be selected depending on either the URL or the operator/network identity, after optionally applying a terminal specific pre-processing script.
- a default script is selected.
- the script selection process may be configured to select the script depending on other criteria, e.g., the type of client subscription, the identity of target web server, the time of day/week/season, the current traffic load, etc.
- any relevant criteria or combinations of criteria may be used for script selection, within the scope of the present invention.
- different script selection procedures may be used for different operators, making the entire selection process and its criteria operator specific. Performance is crucial for successful usage of scripts in the proxy layer of a proxy server, particularly in terms of response time. Therefore, it is desirable that the proxy server does not have to load and interpret a selected script every time it is executed.
- a script When a script is to be executed, it is therefore first checked whether a binary encoded version of the script is available in an internal memory cache, according to yet another embodiment. If no binary encoded version of the script is available, or if an available binary encoded version is out-of-date and only a textual version of the valid script is available, then the textual version of the script must be loaded and translated into a binary format. If available, the valid binary version of the script can be executed immediately, which is significantly faster than the time-consuming process of loading and interpreting the textual version.
- a script is selected, e.g. according to the script selection procedure described for Fig. 6 above. It is then checked in a next step 702 whether a binary version of the selected script is available or not, e.g. in a local cache. If so, it is further checked in a step 704 whether the available binary version is the latest version, i.e. up-to-date.
- a next step 706 must be performed to load a textual version and translate into an executable binary format for executed in a last step 708.
- steps 702 and 704 it is found by steps 702 and 704 that a binary version is available which is the latest version, i.e. up-to-date, that version is fetched and executed in step 708 immediately. In this way, the time-consuming process of loading and interpreting a textual version of a selected script is only performed when absolutely necessary.
- proxy server it may be much easier and less costly to modify the proxy server as compared to a conventional hard coded proxy server.
- its functionality can easily be adapted to different services and the needs of different operators. Minor amendments and adaptations can be done directly in the workflow scripts, either by system integration personnel, or by experienced operators without requiring major efforts for changing the entire proxy layer, or even for creating a wholly new script.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SE2006/001102 WO2008039117A1 (en) | 2006-09-29 | 2006-09-29 | A method and apparatus for controlling a proxy server |
GB0907111A GB2456255B (en) | 2006-09-29 | 2006-09-29 | A method and apparatus for controlling a proxy server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SE2006/001102 WO2008039117A1 (en) | 2006-09-29 | 2006-09-29 | A method and apparatus for controlling a proxy server |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2008039117A1 true WO2008039117A1 (en) | 2008-04-03 |
Family
ID=39230436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/SE2006/001102 WO2008039117A1 (en) | 2006-09-29 | 2006-09-29 | A method and apparatus for controlling a proxy server |
Country Status (2)
Country | Link |
---|---|
GB (1) | GB2456255B (en) |
WO (1) | WO2008039117A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103118137A (en) * | 2013-03-01 | 2013-05-22 | 畅捷通信息技术股份有限公司 | Device and method for cross domain access of pages |
US8924395B2 (en) | 2010-10-06 | 2014-12-30 | Planet Data Solutions | System and method for indexing electronic discovery data |
CN105991739A (en) * | 2015-02-28 | 2016-10-05 | 阿里巴巴集团控股有限公司 | Data request method and device |
CN106878460A (en) * | 2017-03-24 | 2017-06-20 | 腾讯科技(深圳)有限公司 | Communication processing method and device |
CN108287566A (en) * | 2017-12-09 | 2018-07-17 | 上海悠络客电子科技股份有限公司 | The holder of HTTP or HTTPS operation internet hardware or equipment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060117376A1 (en) * | 2004-12-01 | 2006-06-01 | Oracle International Corporation | Charging via policy enforcement |
US20060143686A1 (en) * | 2004-12-27 | 2006-06-29 | Oracle International Corporation | Policies as workflows |
-
2006
- 2006-09-29 WO PCT/SE2006/001102 patent/WO2008039117A1/en active Application Filing
- 2006-09-29 GB GB0907111A patent/GB2456255B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060117376A1 (en) * | 2004-12-01 | 2006-06-01 | Oracle International Corporation | Charging via policy enforcement |
US20060143686A1 (en) * | 2004-12-27 | 2006-06-29 | Oracle International Corporation | Policies as workflows |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8924395B2 (en) | 2010-10-06 | 2014-12-30 | Planet Data Solutions | System and method for indexing electronic discovery data |
CN103118137A (en) * | 2013-03-01 | 2013-05-22 | 畅捷通信息技术股份有限公司 | Device and method for cross domain access of pages |
CN105991739A (en) * | 2015-02-28 | 2016-10-05 | 阿里巴巴集团控股有限公司 | Data request method and device |
CN105991739B (en) * | 2015-02-28 | 2019-06-18 | 阿里巴巴集团控股有限公司 | A kind of data request method and device |
CN106878460A (en) * | 2017-03-24 | 2017-06-20 | 腾讯科技(深圳)有限公司 | Communication processing method and device |
CN108287566A (en) * | 2017-12-09 | 2018-07-17 | 上海悠络客电子科技股份有限公司 | The holder of HTTP or HTTPS operation internet hardware or equipment |
Also Published As
Publication number | Publication date |
---|---|
GB0907111D0 (en) | 2009-06-03 |
GB2456255B (en) | 2011-03-23 |
GB2456255A (en) | 2009-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9497284B2 (en) | Apparatus and method for caching of compressed content in a content delivery network | |
US11263284B2 (en) | Method and system for loading web page, and server | |
CN107025234B (en) | Information pushing method and cache server | |
US8694609B2 (en) | Method and apparatus for improving wireless data networks performance | |
US6862607B1 (en) | Method to provide information in an internet telecommunication network | |
JP4312962B2 (en) | Internet client server multiplexer | |
US7702317B2 (en) | System and method to query wireless network offerings | |
US9736017B2 (en) | Server-side protocol configuration of accessing clients | |
US20040068579A1 (en) | System and method to refresh proxy cache server objects | |
US20020046262A1 (en) | Data access system and method with proxy and remote processing | |
US20080320503A1 (en) | URL Namespace to Support Multiple-Protocol Processing within Worker Processes | |
US20090327460A1 (en) | Application Request Routing and Load Balancing | |
US20090177778A1 (en) | Session Affinity Cache and Manager | |
CN107181779B (en) | Method, device and system for processing access request | |
JP2000048045A (en) | Flexible link method and device using alias | |
US8868638B2 (en) | Methods for reducing latency in network connections using automatic redirects and systems thereof | |
US20030061378A1 (en) | Automatic request forwarding method and system | |
WO2008039117A1 (en) | A method and apparatus for controlling a proxy server | |
US20040019636A1 (en) | System and method for dynamically routing web procedure calls | |
CN104615597A (en) | Method, device and system for clearing cache file in browser | |
EP1425893B1 (en) | Method and apparatus to retrieve information in a network | |
US20180302489A1 (en) | Architecture for proactively providing bundled content items to client devices | |
MacLarty et al. | Policy-based content delivery: an active network approach | |
JP2003141002A (en) | Url length conversion system and program | |
US20050108397A1 (en) | Reducing number of messages processed by control processor by bundling control and data messages and offloading the TCP connection setup and termination messages |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 06799703 Country of ref document: EP Kind code of ref document: A1 |
|
DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2478/DELNP/2009 Country of ref document: IN |
|
ENP | Entry into the national phase |
Ref document number: 0907111 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20060929 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 0907111.9 Country of ref document: GB |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 06799703 Country of ref document: EP Kind code of ref document: A1 |