WO2014112367A1 - 中継サーバ、情報システム、中継方法、および、記憶媒体 - Google Patents
中継サーバ、情報システム、中継方法、および、記憶媒体 Download PDFInfo
- Publication number
- WO2014112367A1 WO2014112367A1 PCT/JP2014/000141 JP2014000141W WO2014112367A1 WO 2014112367 A1 WO2014112367 A1 WO 2014112367A1 JP 2014000141 W JP2014000141 W JP 2014000141W WO 2014112367 A1 WO2014112367 A1 WO 2014112367A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- content data
- cache
- client device
- acquisition
- acquisition request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
Definitions
- the present invention relates to a relay server, an information system, a relay method, and a storage medium.
- the amount of content data distributed on the Internet is increasing day by day, and the bandwidth of physical lines is being pressed. Therefore, there is a relay server (for example, a cache server) having a cache as one of the means effective for reducing the bandwidth.
- the cache server includes a network interface, a cache that temporarily stores content data, and a control function that performs various protocol processes.
- the cache server When the cache server receives the content data acquisition request from the client device, if the corresponding content data does not exist in the cache, the cache server transfers the content data acquisition request to the origin server that holds the content data.
- the cache server acquires content data as the response result, and transfers the response result to the client device that has issued the content data acquisition request.
- the cache server determines whether or not the above-mentioned response result may be cached as an attribute of the content data or should not be cached (determining whether or not to cache). As a result of determining whether or not the response result can be cached, if the cache is possible, the cache server stores the response result in the cache.
- the cache server determines whether the cached content data can be used for the response.
- the determination results are mainly divided into three types: “(1) response without confirmation”, “(2) response based on confirmation”, and “(3) response after re-obtaining from origin for invalid content data”. Divided into processing. The details of this sequence are described in Non-Patent Document 1, for example.
- the cache server has an effect of reducing the transfer of the same content data acquisition request to the origin server, and as a result, it can reduce the bandwidth pressure on the physical line of the Internet. In particular, traffic between the origin server and the cache server can be reduced.
- Patent Document 1 An example of a technique related to Internet cache control is described in Patent Document 1.
- This technology divides proxy server cache data into groups for each date and time range and stores them in order of deletion priority. When deleting cache data, the oldest group of data with the highest deletion priority is selected as the deletion candidate. It is.
- Patent Document 2 An example of a technique related to cache control of the proxy server is described in Patent Document 2.
- the proxy server when a request from a client device is a request for a dynamic page in the online mode, the proxy server always relays the request to the origin server and acquires a response.
- the problem with the above technology is that the traffic reduction rate between the cache server and the client device is low, and the network bandwidth reduction rate is low.
- An object of the present invention is to provide a relay server, an information system, a relay method, and a storage medium that solve the above problems.
- a relay server includes a connection unit that communicates with a client device and an origin server, a cache unit that stores content data, and the connection unit receives a content data acquisition request from the client device. Then, the connection unit transmits a content data acquisition request to the origin server. When the connection unit receives an acquisition response corresponding to the acquisition request from the origin server, the connection unit receives the reception request.
- Control means for causing the client device to transmit an acquisition response including content data included in the acquired response, and the control means is a cache attribute included in the acquisition response received from the origin server, Data that can be cached for content data included in the acquisition response If the cache attribute indicating whether or not the data is non-cacheable, the cache attribute is changed to cacheable, the content data is stored in the cache means, and the cache attribute is cacheable to the connection means.
- the acquisition response including the content data thus transmitted is transmitted to the client device.
- An information system includes the above-described relay server, the client device that stores content data in an internal cache when receiving an acquisition response including content data whose cache attribute is cacheable, and the relay Receiving an acquisition request from a server, and transmitting the acquisition response to the relay server.
- the content data acquisition request when the content data acquisition request is received from the client device, the content data acquisition request is transmitted to the origin server, and the acquisition response corresponding to the acquisition request is received from the origin server. If the cache attribute included in the acquisition response and the cache attribute indicating whether or not the content data included in the acquisition response is cacheable data is not cacheable, the cache attribute is changed to cacheable. The content data is stored, and an acquisition response including the content data that enables the cache attribute to be cached is transmitted to the client device.
- the computer-readable storage medium includes a process for receiving a content data acquisition request from a client device, a process for transmitting a content data acquisition request to an origin server, and the acquisition from the origin server. Processing for receiving an acquisition response corresponding to the request, and a cache attribute included in the acquisition response, which indicates whether the content data included in the acquisition response is cacheable data is not cacheable Whether or not the cache attribute is non-cacheable, the cache attribute is changed to cacheable, the content data is stored, and the cache attribute is cacheable content An acquisition response including data is sent to the client device.
- a process of transmitting to the causes the computer to execute.
- the present invention has the effect of greatly reducing the traffic between the relay server (including the cache server) and the client device and improving the network bandwidth reduction rate.
- FIG. 1 is a block diagram illustrating a configuration of a relay server according to the first embodiment.
- the relay server 100 includes a cache unit 200, a control unit 300, and a connection unit 400.
- the cache unit 200 stores content data.
- the connection unit 400 is connected to an origin server, a client device, and the like via a network, for example, and performs communication.
- the control unit 300 controls the relay server 100.
- the control unit 300 causes the connection unit 400 to receive an acquisition request and an acquisition response from the client device and the origin server, respectively.
- the control unit 300 causes the connection unit 400 to transmit an acquisition response and an acquisition request to the client device and the origin server, respectively.
- FIG. 2 is an operation explanatory diagram illustrating the operation of the relay server 100 according to the first embodiment.
- connection unit 400 of the relay server 100 receives an acquisition request (content data) from the client device (step S1).
- the control unit 300 checks whether content data corresponding to the acquisition request exists in the cache unit 200 (step S2).
- the connection unit 400 transmits the acquisition request to the origin server according to the control of the control unit 300 (step S3).
- the control unit 300 checks the cache attribute of the received content data (step S5).
- the cache attribute indicates whether the content data is cacheable data. For example, the cache attribute is included in the header part of the acquisition response. A configuration in which the content data itself includes a cache attribute is also possible.
- step S6 the control unit 300 changes the cache attribute to cacheable (step S6). If the cache attribute is cacheable (step S5 / N), the control unit 300 does not change the cache attribute.
- control unit 300 stores the content data included in the acquisition response received from the origin server in the cache unit 200 (step S7).
- the connection unit 400 transmits an acquisition response (including content data received from the origin server) to the client device according to the control of the control unit 300 (step S8).
- the cache attribute included in the reception response indicates a changed attribute, that is, cacheable.
- Step S9 If content data corresponding to the acquisition request exists in the cache unit 200 (step S2 / Y), the control unit 300 reads out valid content data corresponding to the acquisition request from the cache unit 200 and includes it in the acquisition response. (Step S9).
- connection unit 400 transmits an acquisition response (including content data read from the cache unit 200) to the client device according to the control of the control unit 300 (step S8).
- the client device When the client device receives content data whose cache attribute is cacheable, the client device can store it in its own cache.
- the relay server 100 is configured to change the cache attribute of content data from being uncacheable to being cacheable. Therefore, the client device can store content data that cannot be cached in the cache of the client device itself.
- the client device does not need to acquire the content data via the network. Therefore, the performance of the client device is improved.
- the traffic between the client device and the relay server 100 can be greatly reduced, and the network bandwidth reduction rate can be improved.
- FIG. 3 is a block diagram showing the configuration of the information system according to the second embodiment.
- an information system 500 includes a relay server 100, a client device 501, an origin server 503, a network 511, and a network 512.
- the network 511 and the network 512 may be the same.
- the relay server 100 is an example of the relay server 100 according to the first embodiment.
- the client device 501 and the relay server 100 are connected via a network 511.
- the relay server 100 and the origin server 503 are connected via a network 512.
- FIGS. 4, 5, and 6 are operation explanatory diagrams illustrating the operation of the information system according to the second embodiment.
- the acquisition request and the acquisition response all pass through the network 511 or the network 512, but the description thereof is omitted for the sake of simplicity.
- the client device 501 transmits an unconditional acquisition request C01 (content data) to the relay server 100.
- the relay server 100 transmits the unconditional acquisition request C02 to the origin server 503.
- the unconditional acquisition request refers to an acquisition request without a condition such as checking whether the content data is valid or invalid when using the content data.
- “content data is valid” indicates that the content data stored in the cache of the client device 501 is the same data as the content data stored in the origin server 503.
- invalid content data indicates that the content data stored in the cache of the client device 501 is different from the content data stored in the origin server 503.
- the origin server 503 that has received the unconditional acquisition request C02 refers to the identification information (for example, URI (Uniform Resource Identifier) etc.) included in the unconditional acquisition request C02, and includes content data corresponding to the unconditional acquisition request C02.
- An acquisition response C03 is transmitted to the relay server 100.
- the relay server 100 checks the cache attribute included in the acquisition response C03.
- the cache attributes include, for example, “cannot be cached”, “can use data in cache without confirmation”, “can use data in cache if confirmed and valid”, and the like.
- the relay server 100 changes the cache attribute to “if the data is confirmed and valid, the data in the cache can be used”, and the cache attribute is changed to the cache unit 200. Store content data. Further, the relay server 100 stores therein information indicating that the cache attribute has been changed.
- the relay server 100 transmits to the client device 501 an acquisition response C05 including the changed cache attribute (“if it is confirmed and valid, the data in the cache can be used”) and content data.
- the client device 501 Upon receiving the acquisition response C05, the client device 501 refers to the cache attribute, and stores the cache attribute and content data included in the received acquisition response C05 in its own cache. Thereafter, the client device 501 sends a conditional acquisition request to the relay server 100 when using content data whose cache attribute in its own cache is “If the data is confirmed and valid, the data in the cache can be used”. Send and confirm.
- the conditional acquisition request indicates an acquisition request with a condition such as checking whether the content data is valid or invalid when using the content data.
- the client apparatus 501 transmits a conditional acquisition request C11 to the relay server 100.
- the relay server 100 transmits to the origin server 503 an unconditional acquisition request C12 that removes the condition from the acquired conditional acquisition request C11.
- the origin server 503 that has received the no-condition acquisition request C12 refers to the identification information included in the no-condition acquisition request C12, and transmits an acquisition response C13 including content data corresponding to the no-condition acquisition request C12.
- the relay server 100 compares the content data of the acquisition response C13 with the content data corresponding to the conditional acquisition request C11 in the cache unit 200. If there is no difference in the content data as a result of the comparison, the relay server 100 transmits an acquisition response C15 indicating that the content data is valid (not changed) to the client device 501.
- the client device 501 Upon receiving the acquisition response C15, the client device 501 uses the corresponding content data in its own cache.
- the relay server 100 compares the content data of the acquisition response C13 with the content data corresponding to the conditional acquisition request C11 in the cache unit 200. If there is a difference in the content data as a result of the comparison, the relay server 100 stores the content data included in the acquisition response C13 in the cache unit 200.
- the relay server 100 transmits an acquisition response C25 including the content data included in the acquisition response C13 to the client device 501.
- the client device 501 uses the content data included in the acquisition response C25, and replaces the content data corresponding to the conditional acquisition request C11 of its own cache with the received content data.
- the information system 500 according to the second embodiment includes the relay server 100 according to the first embodiment, the information system 500 has the same effect as that of the first embodiment.
- FIG. 7 is a block diagram illustrating a configuration of the relay server 100 according to the third embodiment.
- the relay server 100 according to the third embodiment is an example of the relay server 100 according to the second embodiment.
- the relay server 100 includes a cache unit 200, a control unit 300, and a connection unit 400.
- the control unit 300 includes a main control unit 306, an acquisition response change history information unit 307, and a content data control unit 308.
- the main control unit 306 performs a change of the acquisition request, a change of the cache attribute included in the acquisition response, a control of the determination of the acquisition request, and the like, and stores the change history of the cache attribute in the acquisition response change history information unit 307.
- the acquisition response change history information unit 307 stores a cache attribute change history under the control of the main control unit 306.
- the cache attribute in the present embodiment includes information indicating whether or not the data in the cache of the client device 501 can be used in addition to the information indicating whether or not the content data is cacheable data. .
- the content data control unit 308 controls storage and reading of content data in the cache unit 200. In addition, the content data control unit 308 performs control such as comparison between content data stored in the cache unit 200 and content data received from the origin server 503.
- the connection unit 400 includes a network interface unit 301, a transmission unit 302, and a reception unit 303.
- the network interface unit 301 is connected to the network 511 and the network 512.
- the transmission unit 302 transmits an acquisition request to the origin server 503 and an acquisition response to the client device 501 via the network interface unit 301.
- the receiving unit 303 receives an acquisition request from the client device 501 and an acquisition response from the origin server 503 via the network interface unit 301.
- the receiving unit 303 of the relay server 100 receives an acquisition request (in this case, an unconditional acquisition request C01) from the client device 501 (step S11).
- the main control unit 306 determines the type of the unconditional acquisition request C01 received by the receiving unit 303 (step S12).
- the transmission unit 302 transmits an unconditional acquisition request C02 to the origin server 503 according to the control of the main control unit 306 (step S15).
- the main control unit 306 checks the cache attribute included in the acquisition response C03 (step S17).
- step S17 / N If the cache attribute indicates “non-cacheable” (step S17 / N), the main control unit 306 changes the cache attribute to “if the data is confirmed and valid, the data in the cache can be used” ( Step S18).
- step S17 If the cache attribute indicates “cacheable” (step S17 / Y), the main control unit 306 does not change the cache attribute. Then, the main control unit 306 stores the cache attribute change history indicating the change in the acquisition response change history information unit 307 (step S19).
- the content data control unit 308 stores the changed cache attribute and the content data included in the acquisition response C03 in the cache unit 200 (step S20). Then, the transmission unit 302 transmits an acquisition response C05 to the client device 501 according to the control of the main control unit 306 (step S21).
- This acquisition response C05 includes a cache attribute indicating the changed “If the data is confirmed and valid, the data in the cache can be used”. Then, the client device 501 stores the cache attribute and content data included in the acquisition response C05 in its own cache.
- the receiving unit 303 receives an acquisition request (in this case, a conditional acquisition request C11) from the client device 501 (step S11).
- the main control unit 306 determines the type of the received conditional acquisition request C11 (step S12).
- the content data control unit 308 checks whether content data corresponding to the conditional acquisition request C11 exists in the cache unit 200 (step S23).
- step S23 / N When the corresponding content data does not exist in the cache unit 200 (step S23 / N), the operations shown in step S15 and subsequent steps of (2.1) described above are performed.
- step S23 / Y the main control unit 306 checks the cache attribute change history in the acquisition response change history information unit 307 (step S24).
- the main control unit 306 changes the conditional acquisition request C11 to the unconditional acquisition request C12 (step S25).
- the transmission unit 302 transmits the no-condition acquisition request C12 changed in step S25 to the origin server 503 according to the control of the main control unit 306 (step S26).
- the receiving unit 303 receives an acquisition response C13 to the unconditional acquisition request C12 from the origin server 503 (step S27). Then, the content data control unit 308 compares the content data included in the acquisition response C13 with the content data corresponding to the conditional acquisition request C11 stored in the cache unit 200 (step S28).
- the main control unit 306 changes the acquisition response C13 to an acquisition response C15 indicating “no content data change” (step S29). Then, the transmission unit 302 transmits an acquisition response C15 to the client device 501 according to the control of the main control unit 306 (step S30).
- step S17 As a result of the comparison, if there is a difference in the content data (step S28 / Y), the operations shown after step S17 are performed.
- step S30 when the client apparatus 501 receives the acquisition response C15 “no content data change”, the client apparatus 501 uses the content data stored in its own cache.
- step S31 the change history does not indicate that the cache attribute has been changed. Therefore, as shown in FIG.
- the cache attribute of the content data corresponding to the conditional acquisition request C11 is checked (step S31).
- the transmission unit 302 confirms with respect to the origin server 503 according to the control of the main control unit 306. Acquisition request C22 is transmitted (step S32).
- the confirmation acquisition request is content data for confirming whether the content data is valid or invalid (that is, whether the content data in the cache unit 200 and the content data in the origin server 503 are the same data).
- This is an acquisition request.
- the relay server 100 transmits valid information indicating whether the content data is valid or invalid to the origin server 503 when the content data in the cache unit 200 is changed. May be.
- the relay server 100 is configured to acquire content data and valid information from the origin server 503 as a response (confirmation acquisition response) corresponding to the confirmation acquisition request.
- the main control unit 306 displays the “valid information” included in the confirmation acquisition response C23.
- the confirmation response includes content data corresponding to the confirmation acquisition request C22.
- step S 34 / Y If the “valid information” indicates “valid” (step S 34 / Y), the content data in the cache unit 200 is valid, so the content data control unit 308 sends the content data corresponding to the conditional acquisition request C 11 from the cache unit 200. Is read (step S35).
- the transmission unit 302 transmits an acquisition response C35 including content data read from the cache unit 200 to the client device 501 under the control of the main control unit 306 (step S36).
- step S34 / N When the “valid information” does not indicate “valid” (step S34 / N), as shown in FIG. 8, the main control unit 306 checks the cache attribute included in the confirmation acquisition response C23 (step S17). And the operation
- the cache attribute is not “If the data is confirmed and valid, the data in the cache can be used” (step S31 / N), the content data control unit 308 issues a conditional acquisition request C11 from the cache unit 200. Corresponding content data is read (step S35). In this case, the cache attribute indicates that “data in the cache can be used without confirmation”.
- the transmission unit 302 transmits an acquisition response C35 including content data read from the cache unit 200 to the client device 501 under the control of the main control unit 306 (step S36).
- the relay server 100 according to the third embodiment is an example of the relay server 100 according to the second embodiment, and thus has the same effect as the second embodiment.
- the overall configuration of the information system according to the fourth embodiment is the same as the overall configuration of the information system according to the third embodiment shown in FIG.
- the information system according to the fourth embodiment is an example of the information system according to the third embodiment. Specifically, the information system of the fourth embodiment is configured to apply the information system of the third embodiment to HTTP (HypertextperTransfer Protocol-HTTP / 1.1) of Non-Patent Document 1.
- HTTP HypertextperTransfer Protocol-HTTP / 1.1
- a normal GET method (or HEAD method) is possible.
- the conditional acquisition request may be one of the fields such as “If-Match”, “If-Modified-Since”, “If-None-Match”, “If-Range”, “If-Unmodified-Since”, for example. The case where two or more are included applies.
- the conditionless acquisition request does not include, for example, “If-Match”, “If-Modified-Since”, “If-None-Match”, “If-Range”, “If-Unmodified-Since” The case applies.
- acquisition responses include “200 OK”, “206 Partial Content”, and “304 Not Modified”. In particular, when there is no change in content data, “304 Not Modified” can be applied as an acquisition response.
- Cache attributes that can be added to the header part of an acquisition request are “no-cache”, “no-store”, “max-age”, “max-stale”, “min-fresh”, “no-transform”, “only” -if-cached ”is applicable. A plurality of these attributes can be combined.
- Cache attributes that can be added to the header part of an acquisition response are “public”, “private”, “no-cache”, “no-store”, “no-transform”, “must-revalidate”, “proxy-revalidate”, “Max-age” and “s-maxage” are applicable. A plurality of these attributes can be combined.
- “must-revalidate” and “proxy-revalidate” can be applied to indicate the confirmation attribute of “If the data is valid after confirmation (or without confirmation), the data in the cache can be used”. is there.
- the information system according to the fourth embodiment is an example of the information system according to the third embodiment, the information system has the same effect as the third embodiment.
- the information system according to the fourth embodiment is applied with HTTP, there is no need to change the software compliant with HTTP operating on the client device 501, and it is economical.
- connection unit for communicating with the client device and the origin server;
- cache unit for storing content data;
- connection unit receives an acquisition request from the client device, the connection unit transmits an acquisition request to the origin server, the connection unit receives an acquisition response from the origin server, and the cache attribute included in the acquisition response If the cache attribute is not cacheable, the cache attribute is changed to cacheable, the content data is stored in the cache unit, and an acquisition response including the content data with the cache attribute cacheable is sent to the connection unit to the client device.
- a control unit to transmit to, Including a relay server.
- Appendix 2 The relay server according to appendix 1, wherein the relay server includes the control unit that stores therein a cache attribute change history when the cache attribute is changed.
- connection unit 4 When the acquisition request from the client device is a conditional acquisition request, and there is content data corresponding to the cache unit, and the cache attribute change history indicates a cache attribute change, The connection unit transmits an unconditional acquisition request to the origin server, the connection unit receives an acquisition response from the origin server, and the content data included in the acquisition response and the corresponding content stored in the cache unit If there is no difference with the data, The relay server according to supplementary note 3, including the control unit that causes the connection unit to transmit an acquisition response indicating no content data change to the client device.
- Appendix 8 Additional relay server of appendix 1, 2, 3, 4, 5, 6, or 7;
- the client device When receiving an acquisition response including content data whose cache attribute is cacheable, the client device stores content data of an internal cache; and
- the origin server Upon receiving an acquisition request from the relay server, the origin server that transmits an acquisition response to the relay server;
- An information system characterized by including:
- Appendix 10 The relay method according to appendix 9, wherein the cache attribute change history is stored therein when the cache attribute is changed.
- Appendix 12 When the acquisition request from the client device is a conditional acquisition request, and there is content data corresponding to the cache unit, and the cache attribute change history indicates a cache attribute change, Send an unconditional acquisition request to the origin server, the connection unit receives an acquisition response from the origin server, and the difference between the content data included in the acquisition response and the corresponding content data stored in the cache unit Without The relay method according to appendix 11, wherein an acquisition response indicating no content data change is transmitted to the client device.
- Appendix 15 The program according to appendix 14, wherein when the cache attribute is changed, the computer is caused to execute a procedure for storing a cache attribute change history therein.
- the present invention can be applied to control of a relay server, proxy server, cache server, etc. connected to a network, or an information system including them.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
中継サーバとクライアント装置との間のトラフィックを大きく削減させ、ネットワークの帯域の削減率を向上させる中継サーバは、通信を行う接続手段と、コンテンツデータを格納するキャッシュ手段と、クライアント装置からコンテンツデータの取得要求を受信すると、オリジンサーバへの取得要求を、前記オリジンサーバから前記取得要求に対応する取得応答を受信すると、前記クライアント装置にコンテンツデータを含む取得応答を、前記接続手段に送信させる制御手段と、を備える。前記制御手段は、前記オリジンサーバから受信した取得応答に含まれるキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ手段に前記コンテンツデータを格納させ、前記クライアント装置へ前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を、前記接続手段に送信させる。
Description
本発明は、中継サーバ、情報システム、中継方法、および、記憶媒体に関する。
インターネット上に流通するコンテンツデータの量は日々増大しており、物理回線の帯域を圧迫しつつある。そこで、帯域削減のために有効とされる手段の一つとしてキャッシュを持つ中継サーバ(たとえば、キャッシュサーバ)がある。キャッシュサーバは、ネットワークインタフェースと、コンテンツデータを一時蓄積するキャッシュと、種々のプロトコル処理を行う制御機能とからなる。
キャッシュサーバは、クライアント装置からのコンテンツデータの取得要求を受け付けると、該当するコンテンツデータがキャッシュに存在しない場合には、そのコンテンツデータを保有するオリジンサーバにコンテンツデータの取得要求を転送する。
キャッシュサーバは、その応答結果としてコンテンツデータを取得し、コンテンツデータの取得要求を発したクライアント装置に前述の応答結果を転送する。
その際に、キャッシュサーバは、前述の応答結果が、コンテンツデータの属性として、キャッシュしても良いか、あるいは、キャッシュすべきでないかの判断(キャッシュ可否判断)を行う。前述の応答結果に対するキャッシュ可否判断の結果、キャッシュ可能であれば、キャッシュサーバは、前述の応答結果をキャッシュに蓄積する。
また、キャッシュサーバは、クライアント装置からのコンテンツデータの取得要求に該当するコンテンツデータがキャッシュに存在した場合には、キャッシュされたコンテンツデータを応答に使ってよいかを判断する。その判断結果は、主に、「(1)確認不要で応答」、「(2)確認に基づき応答」、「(3)コンテンツデータ無効のためオリジンから再取得してから応答」の3通りの処理に分かれる。このシーケンスの詳細は、たとえば、非特許文献1に記載されている。
上述の処理を行うことにより、キャッシュサーバは、オリジンサーバへの同一のコンテンツデータの取得要求の転送を削減する効果があり、ひいては、インターネットの物理回線の帯域圧迫を削減することができる。特に、オリジンサーバとキャッシュサーバとの間のトラフィックを削減することができる。
また、インターネットのキャッシュ制御に関する技術の一例が特許文献1に記載されている。この技術は、プロキシサーバのキャッシュデータを日時の範囲ごとにグループに分けて削除優先度順に記憶し、キャッシュデータの削除に際し、最古グループ内の最も削除優先度の高いデータを削除候補とするものである。
また、プロキシサーバのキャッシュ制御に関する技術の一例が特許文献2に記載されている。この技術は、クライアント装置からのリクエストがオンラインモードにおける動的ページへのリクエストであると、プロキシサーバが、必ず、リクエストをオリジンサーバに中継し、レスポンスを取得するものである。
R.Fielding,et.al.,"Hypertext Transfer Protocol--HTTP/1.1", RFC2616, IETF,1999.
上述の技術の問題点は、キャッシュサーバとクライアント装置との間のトラフィックの削減率が低く、ネットワークの帯域の削減率が低いことである。
本発明の目的は、上記問題点を解決する中継サーバ、情報システム、中継方法、および、記憶媒体を提供することである。
本発明の一態様に係る中継サーバは、クライアント装置、および、オリジンサーバと通信を行う接続手段と、コンテンツデータを格納するキャッシュ手段と、前記接続手段が前記クライアント装置からコンテンツデータの取得要求を受信すると、前記接続手段に対し、前記オリジンサーバへのコンテンツデータの取得要求を送信させ、前記接続手段が前記オリジンサーバから前記取得要求に対応する取得応答を受信すると、前記接続手段に対し、前記受信した取得応答に含まれるコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる制御手段と、を備え、前記制御手段は、前記オリジンサーバから受信した取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ手段に前記コンテンツデータを格納させ、前記接続手段に対し、前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる。
本発明の一態様に係る情報システムは、上述の中継サーバと、キャッシュ属性がキャッシュ可能であるコンテンツデータを含む取得応答を受信すると、内部のキャッシュのコンテンツデータを格納する前記クライアント装置と、前記中継サーバから取得要求を受け取ると、取得応答を前記中継サーバに送信する前記オリジンサーバと、を含む。
本発明の一態様に係る中継方法は、クライアント装置からコンテンツデータの取得要求を受信すると、オリジンサーバへコンテンツデータの取得要求を送信し、前記オリジンサーバから前記取得要求に対応する取得応答を受信し、当該取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、前記コンテンツデータを格納し、前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する。
本発明の一態様に係るコンピュータで読み取り可能な記憶媒体は、クライアント装置からコンテンツデータの取得要求を受信する処理と、オリジンサーバへコンテンツデータの取得要求を送信する処理と、前記オリジンサーバから前記取得要求に対応する取得応答を受信する処理と、当該取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能であるか否かを確認する処理と、前記キャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更する処理と、前記コンテンツデータを格納する処理と、前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する処理と、をコンピュータに実行させる。
本発明は、中継サーバ(キャッシュサーバを含む)とクライアント装置との間のトラフィックを大きく削減でき、ネットワークの帯域の削減率が向上するという効果を持つ。
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。図1は、第1の実施の形態に係る中継サーバの構成を示すブロック図である。
図1を参照すると、第1の実施の形態に係る中継サーバ100は、キャッシュ部200、制御部300、および、接続部400を含む。
キャッシュ部200は、コンテンツデータを格納する。接続部400は、たとえば、ネットワークを介して、オリジンサーバ、クライアント装置等と接続され、通信を行う。
制御部300は、中継サーバ100の制御を行う。制御部300は、接続部400に、クライアント装置およびオリジンサーバから、それぞれ、取得要求および取得応答を受信させる。また、制御部300は、接続部400に、クライアント装置およびオリジンサーバへ、それぞれ、取得応答および取得要求を送信させる。
次に、第1の実施の形態に係る中継サーバ100の動作について図面を参照して説明する。図2は、第1の実施の形態に係る中継サーバ100の動作を示す動作説明図である。
図2を参照すると、中継サーバ100の接続部400が、クライアント装置から、取得要求(コンテンツデータの)を受信する(ステップS1)。制御部300は、キャッシュ部200に、取得要求に対応するコンテンツデータが存在するかどうかを調べる(ステップS2)。
キャッシュ部200に、取得要求に対応するコンテンツデータが存在しないと(ステップS2/N)、接続部400は、制御部300の制御にしたがって、オリジンサーバに取得要求を送信する(ステップS3)。接続部400が、オリジンサーバから取得要求に対する取得応答(コンテンツデータを含む)を受信すると(ステップS4/Y)、制御部300は、受信したコンテンツデータのキャッシュ属性を調べる(ステップS5)。キャッシュ属性とは、コンテンツデータがキャッシュ可能なデータか否かを示すものである。たとえば、キャッシュ属性は、取得応答のヘッダ部に含まれる。コンテンツデータ自身がキャッシュ属性を含む構成も可能である。
そのキャッシュ属性がキャッシュ不可能であると(ステップS5/Y)、制御部300は、キャッシュ属性をキャッシュ可能に変更する(ステップS6)。そのキャッシュ属性がキャッシュ可能であると(ステップS5/N)、制御部300は、キャッシュ属性を変更しない。
次に、制御部300は、オリジンサーバから受信した取得応答に含まれるコンテンツデータをキャッシュ部200に格納する(ステップS7)。そして、接続部400は、制御部300の制御にしたがって、クライアント装置に取得応答(オリジンサーバから受信したコンテンツデータを含む)を送信する(ステップS8)。このとき、受信応答に含まれるキャッシュ属性は、変更された属性、すなわち、キャッシュ可能を示す。
また、キャッシュ部200に、取得要求に対応するコンテンツデータが存在すると(ステップS2/Y)、制御部300は、キャッシュ部200から、取得要求に対応する有効なコンテンツデータを読み出し、取得応答に含める(ステップS9)。
次に、接続部400は、制御部300の制御にしたがって、取得応答(キャッシュ部200から読み出されたコンテンツデータを含む)をクライアント装置に送信する(ステップS8)。
クライアント装置は、キャッシュ属性がキャッシュ可能のコンテンツデータを受信すると、クライアント装置自身のキャッシュに格納することができる。
また、コンピュータ(たとえば、中継サーバ100)に、キャッシュ部200、制御部300、および、接続部400の機能(または、手順)を実行させるプログラムが実現可能である。
次に、第1の実施の形態の効果について説明する。
第1の実施の形態において、中継サーバ100が、コンテンツデータのキャッシュ属性をキャッシュ不可能から、キャッシュ可能に変更する構成を持つ。したがって、クライアント装置が、元々、キャッシュ不可能なコンテンツデータを、クライアント装置自身のキャッシュに格納することが可能となる。
よって、第1の実施の形態では、クライアント装置がコンテンツデータを、ネットワークを介して取得しなくてもよい可能性が高くなる。したがって、クライアント装置の性能が向上する。
また、第1の実施の形態では、クライアント装置と中継サーバ100との間のトラフィックを大きく削減でき、ネットワークの帯域の削減率が向上するという効果がある。
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。図3は、第2の実施の形態に係る情報システムの構成を示すブロック図である。
図3を参照すると、第2の実施の形態の情報システム500は、中継サーバ100、クライアント装置501、オリジンサーバ503、ネットワーク511、および、ネットワーク512を含む。ネットワーク511およびネットワーク512が同一であってもよい。中継サーバ100は、第1の実施の形態の中継サーバ100の一例である。
クライアント装置501および中継サーバ100は、ネットワーク511を介して接続される。中継サーバ100およびオリジンサーバ503は、ネットワーク512を介して接続される。
次に、第2の実施の形態の動作について図面を参照して説明する。図4、図5、図6は、第2の実施の形態に係る情報システムの動作を示す動作説明図である。ここで、取得要求、取得応答は、すべてネットワーク511、または、ネットワーク512を経由するが、説明を簡単にするため、その記述を省略する。
(1.1)まず、クライアント装置501が、初めてコンテンツデータの取得要求を送信する場合、または、以前、コンテンツデータを受信したが、クライアント装置501内に、そのコンテンツデータが存在しない場合について説明する。
図4を参照すると、クライアント装置501は、条件無し取得要求C01(コンテンツデータの)を中継サーバ100に送信する。条件なし取得要求C01に対応するコンテンツデータが、中継サーバ100のキャッシュ部200に存在しない場合、中継サーバ100は、条件無し取得要求C02をオリジンサーバ503に送信する。ここで、条件なし取得要求とは、コンテンツデータを利用する際に、例えば、当該コンテンツデータが有効か無効かの確認を行うなどの条件がない取得要求のことを示している。ここで、コンテンツデータが有効とは、クライアント装置501のキャッシュ内に格納しているコンテンツデータが、オリジンサーバ503に格納されたコンテンツデータと同じデータであることを示している。また、コンテンツデータが無効とは、クライアント装置501のキャッシュ内に格納しているコンテンツデータが、オリジンサーバ503に格納されたコンテンツデータと異なるデータであることを示している。
条件無し取得要求C02を受信したオリジンサーバ503は、条件無し取得要求C02に含まれる識別情報(たとえば、URI(Uniform Resource Identifier)等)を参照し、条件なし取得要求C02に対応するコンテンツデータを含む取得応答C03を中継サーバ100に送信する。
中継サーバ100は、取得応答C03に含まれるキャッシュ属性を調べる。キャッシュ属性には、たとえば、「キャッシュ不可能」、「確認無しで、キャッシュ内のデータを利用可能」、「確認して有効であれば、キャッシュ内のデータを利用可能」等がある。
キャッシュ属性が、「キャッシュ不可能」である場合、中継サーバ100は、キャッシュ属性を「確認して有効であれば、キャッシュ内のデータを利用可能」に変更し、キャッシュ部200に変更したキャッシュ属性、コンテンツデータを格納する。また、中継サーバ100は、キャッシュ属性を変更したことを示す情報を内部に格納する。
次に、中継サーバ100は、変更したキャッシュ属性(「確認して有効であれば、キャッシュ内のデータを利用可能」)、コンテンツデータを含む取得応答C05をクライアント装置501に送信する。
クライアント装置501は、取得応答C05を受信すると、キャッシュ属性を参照し、受信した取得応答C05に含まれるキャッシュ属性およびコンテンツデータを自身のキャッシュに格納する。以降、クライアント装置501は、自身のキャッシュ内のキャッシュ属性が「確認して有効であれば、キャッシュ内のデータを利用可能」であるコンテンツデータを利用する場合、中継サーバ100に条件付き取得要求を送信して確認を行う。ここで、条件付き取得要求とは、コンテンツデータを利用する際に、例えば、当該コンテンツデータが有効か無効かの確認を行うなどの条件が付いている取得要求のことを示している。
(1.2)次に、クライアント装置501が、自身のキャッシュ内のキャッシュ属性が「確認して有効であれば、キャッシュ内のデータを利用可能」であるコンテンツデータを利用する場合で、かつ、そのコンテンツデータが有効である場合について説明する。
以下、求められたコンテンツデータが、中継サーバ100のキャッシュ部200に存在し、かつ、キャッシュ属性の変更されたものである場合について説明する。
図5を参照すると、クライアント装置501は、条件付き取得要求C11を中継サーバ100に送信する。
中継サーバ100は、取得した条件付き取得要求C11から条件を外した条件無し取得要求C12をオリジンサーバ503に送信する。
条件無し取得要求C12を受信したオリジンサーバ503は、条件無し取得要求C12に含まれる識別情報を参照し、条件無し取得要求C12に対応するコンテンツデータを含む取得応答C13を送信する。
中継サーバ100は、取得応答C13のコンテンツデータと、キャッシュ部200内の条件付き取得要求C11に対応するコンテンツデータとを比較する。比較の結果、コンテンツデータに差がない場合、中継サーバ100は、コンテンツデータが有効である(変更されていない)ことを示す取得応答C15をクライアント装置501に送信する。
クライアント装置501は、取得応答C15を受信すると、自身のキャッシュ内の上記対応するコンテンツデータを利用する。
(1.3)次に、クライアント装置501が、自身のキャッシュ内のキャッシュ属性が「確認して有効であれば、キャッシュ内のデータを利用可能」であるコンテンツデータを利用する場合で、かつ、そのコンテンツデータが有効でない場合について説明する。
以下、求められたコンテンツデータが、中継サーバ100のキャッシュ部200に存在し、かつ、キャッシュ属性の変更されたものである場合について説明する。
図6を参照すると、条件付き取得要求C11、条件無し取得要求C12、取得応答C13に関する動作は、前述の(1.2)と同一である。
次に、中継サーバ100は、取得応答C13のコンテンツデータと、キャッシュ部200内の条件付き取得要求C11に対応するコンテンツデータとを比較する。比較の結果、コンテンツデータに差があると、中継サーバ100は、取得応答C13に含まれるコンテンツデータをキャッシュ部200に格納する。
さらに、中継サーバ100は、取得応答C13に含まれていたコンテンツデータを含む取得応答C25をクライアント装置501に送信する。クライアント装置501は、取得応答C25を受信すると、取得応答C25に含まれるコンテンツデータを利用し、自身のキャッシュの条件付き取得要求C11に対応するコンテンツデータを、受信したコンテンツデータで置き換える。
次に、第2の実施の形態の効果について説明する。第2の実施の形態の情報システム500は、第1の実施の形態の中継サーバ100を含むので、第1の実施の形態と同一の効果を持つ。
次に、本発明の第3の実施の形態について図面を参照して詳細に説明する。第3の実施の形態に係る情報システムの全体構成は、図3に示される第2の実施の形態に係る情報システムの全体構成と同一である。図7は、第3の実施の形態に係る中継サーバ100の構成を示すブロック図である。第3の実施の形態の中継サーバ100は、第2の実施の形態の中継サーバ100の一例である。
図7を参照すると、第3の実施の形態に係る中継サーバ100は、キャッシュ部200、制御部300、および、接続部400を含む。
制御部300は、主制御部306、取得応答変更履歴情報部307、および、コンテンツデータ制御部308を含む。
主制御部306は、取得要求の変更、および、取得応答に含まれるキャッシュ属性の変更、取得要求の判別の制御等を行い、取得応答変更履歴情報部307にキャッシュ属性の変更履歴を格納する。取得応答変更履歴情報部307は、主制御部306の制御にしたがいキャッシュ属性の変更履歴を格納する。
なお、本実施の形態におけるキャッシュ属性は、コンテンツデータがキャッシュ可能なデータか否かを示す情報に加え、更に、クライアント装置501のキャッシュ内のデータを利用可能か否かを示す情報を含んでいる。
コンテンツデータ制御部308は、コンテンツデータのキャッシュ部200への格納、および、読み出しの制御を行う。また、コンテンツデータ制御部308は、キャッシュ部200に格納されているコンテンツデータと、オリジンサーバ503から受信したコンテンツデータとの比較等の制御を行う。
接続部400は、ネットワークインタフェース部301、送信部302および受信部303を含む。ネットワークインタフェース部301は、ネットワーク511、および、ネットワーク512と接続される。
送信部302は、ネットワークインタフェース部301を介して、オリジンサーバ503に取得要求を、クライアント装置501に取得応答を送信する。受信部303は、ネットワークインタフェース部301を介して、クライアント装置501から取得要求を、オリジンサーバ503から取得応答を受信する。
次に、第3の実施の形態の動作について図面を参照して説明する。図8、図9および図10は、第3の実施の形態に係る中継サーバ100の動作を示す動作説明図である。以下の説明において、送受信がネットワークインタフェース部301を経由することは自明なので、ネットワークインタフェース部301に関する記述を省略する。
(2.1)まず、上述の(1.1)に対応する動作について説明する。図8を参照すると、中継サーバ100の受信部303は、クライアント装置501から取得要求(この場合、条件無し取得要求C01)を受信する(ステップS11)。
次に、主制御部306は、受信部303で受信された条件無し取得要求C01の種別を判別する(ステップS12)。ここでは、条件無しの場合なので(ステップS12/Y)、送信部302は、主制御部306の制御にしたがい、オリジンサーバ503に対する条件無し取得要求C02を送信する(ステップS15)。
次に、受信部303が、オリジンサーバ503から条件無し取得要求C02に対する取得応答C03を受信すると(ステップS16)、主制御部306は、取得応答C03に含まれるキャッシュ属性を調べる(ステップS17)。
キャッシュ属性が「キャッシュ不可能」を示していると(ステップS17/N)、主制御部306は、キャッシュ属性を「確認して有効であれば、キャッシュ内のデータを利用可能」に変更する(ステップS18)。
キャッシュ属性が「キャッシュ可能」を示していると(ステップS17/Y)、主制御部306は、キャッシュ属性を変更しない。そして、主制御部306は、変更したことを示すキャッシュ属性の変更履歴を取得応答変更履歴情報部307に格納させる(ステップS19)。
次に、コンテンツデータ制御部308は、変更されたキャッシュ属性、および、取得応答C03に含まれるコンテンツデータをキャッシュ部200に格納する(ステップS20)。そして、送信部302は、主制御部306の制御にしたがい、クライアント装置501に対する取得応答C05を送信する(ステップS21)。
この取得応答C05は、変更された「確認して有効であれば、キャッシュ内のデータを利用可能」を示すキャッシュ属性を含む。そして、クライアント装置501は、取得応答C05に含まれるキャッシュ属性およびコンテンツデータを自身のキャッシュに格納する。
(2.2)次に、上述の(1.2)、(1.3)に対応する動作について説明する。図8および図10を参照すると、受信部303は、クライアント装置501から取得要求(この場合、条件付き取得要求C11)を受信する(ステップS11)。
次に、主制御部306は、受信された条件付き取得要求C11の種別を判別する(ステップS12)。ここでは、条件付きの場合なので(ステップS12/N)、コンテンツデータ制御部308が、キャッシュ部200に、条件付き取得要求C11に対応するコンテンツデータが存在するかどうかを調べる(ステップS23)。
キャッシュ部200に、上記対応するコンテンツデータが存在しない場合(ステップS23/N)、上述の(2.1)のステップS15以降に示された動作が行われる。キャッシュ部200に、上記対応するコンテンツデータが存在する場合(ステップS23/Y)、主制御部306は、取得応答変更履歴情報部307内のキャッシュ属性の変更履歴を調べる(ステップS24)。
変更履歴が、キャッシュ属性が変更されたことを示す場合(ステップS24/Y)、主制御部306が、条件付き取得要求C11を条件無し取得要求C12に変更する(ステップS25)。次に、送信部302は、主制御部306の制御にしたがい、オリジンサーバ503に対し、ステップS25で変更された条件無し取得要求C12を送信する(ステップS26)。
次に、受信部303が、オリジンサーバ503から条件無し取得要求C12に対する取得応答C13を受信する(ステップS27)。そして、コンテンツデータ制御部308は、取得応答C13に含まれるコンテンツデータとキャッシュ部200に格納されている、条件付き取得要求C11に対応するコンテンツデータとを比較する(ステップS28)。
比較の結果、コンテンツデータに差がない場合(ステップS28/N)、主制御部306は、取得応答C13を「コンテンツデータ変更無し」を示す取得応答C15に変更する(ステップS29)。そして、送信部302は、主制御部306の制御にしたがい、クライアント装置501に対する取得応答C15を送信する(ステップS30)。
比較の結果、コンテンツデータに差があると(ステップS28/Y)、ステップS17以降に示された動作が行われる。
ステップS30の終了後、クライアント装置501は、「コンテンツデータ変更無し」の取得応答C15を受信すると、自身のキャッシュに格納されているコンテンツデータを利用する。
(2.3)次に、上述の(2.2)において、変更履歴が、キャッシュ属性が変更されていないことを示す場合(ステップS24/N)の動作を説明する。
図10を参照すると、上記の場合、変更履歴は、キャッシュ属性が変更されたことを示さないので(ステップS24/N)、図9に示すように、コンテンツデータ制御部308は、キャッシュ部200内の条件付き取得要求C11に対応するコンテンツデータのキャッシュ属性を調べる(ステップS31)。
キャッシュ属性が、「確認して有効であれば、キャッシュ内のデータを利用可能」であれば(ステップS31/Y)、送信部302は、主制御部306の制御にしたがい、オリジンサーバ503に対する確認用取得要求C22を送信する(ステップS32)。
ここで確認用取得要求とは、コンテンツデータが有効か無効か(つまり、キャッシュ部200のコンテンツデータとオリジンサーバ503のコンテンツデータとが同じデータであるか否か)を確認するためのコンテンツデータの取得要求である。なお、本実施の形態においては、中継サーバ100がコンテンツデータが有効か無効かを示す有効情報を、キャッシュ部200内のコンテンツデータが変更された際にオリジンサーバ503に対して送信する構成であってもよい。この場合、中継サーバ100は、オリジンサーバ503から確認用取得要求に対応する応答(確認用取得応答)にコンテンツデータと有効情報とを取得する構成となる。
次に、受信部303が、オリジンサーバ503から確認用取得要求C22に対する確認用取得応答C23を受信すると(ステップS33)、主制御部306は、確認用取得応答C23に含まれる「有効情報」を調べる(ステップS34)。この確認応答には、確認用取得要求C22に対応するコンテンツデータが含まれる。
「有効情報」が「有効」を示すと(ステップS34/Y)、キャッシュ部200内のコンテンツデータが有効なので、コンテンツデータ制御部308は、キャッシュ部200から条件付き取得要求C11に対応するコンテンツデータを読み出す(ステップS35)。
次に、送信部302は、主制御部306の制御にしたがい、キャッシュ部200から読み出されたコンテンツデータを含む取得応答C35をクライアント装置501に送信する(ステップS36)。
「有効情報」が「有効」を示さない場合(ステップS34/N)、図8に示されるように、主制御部306は、確認用取得応答C23に含まれるキャッシュ属性を調べる(ステップS17)。そして、ステップS17以降に示された動作が行われる。
また、キャッシュ属性が、「確認して有効であれば、キャッシュ内のデータを利用可能」でなければ(ステップS31/N)、コンテンツデータ制御部308は、キャッシュ部200から条件付き取得要求C11に対応するコンテンツデータを読み出す(ステップS35)。この場合、キャッシュ属性は、「確認無しに、キャッシュ内のデータを利用可能」であることを示す。
次に、送信部302は、主制御部306の制御にしたがい、キャッシュ部200から読み出されたコンテンツデータを含む取得応答C35をクライアント装置501に送信する(ステップS36)。
次に、第3の実施の形態の効果について説明する。第3の実施の形態の中継サーバ100は、第2の実施の形態の中継サーバ100の一例なので、第2の実施の形態と同一の効果を持つ。
次に、本発明の第4の実施の形態について図面を参照して詳細に説明する。第4の実施の形態に係る情報システムの全体構成は、図3に示される第3の実施の形態に係る情報システムの全体構成と同一である。
第4の実施の形態に係る情報システムは、第3の実施の形態に係る情報システムの一例である。詳細には、第4の実施の形態の情報システムは、第3の実施の形態の情報システムを、非特許文献1のHTTP(Hypertext Transfer Protocol -- HTTP/1.1)に適用する構成である。
コンテンツデータの取得要求としては、通常GETメソッド(または、HEADメソッド)が可能である。
条件付き取得要求としては、たとえば、“If-Match”、“If-Modified-Since”、“If-None-Match”、“If-Range”、“If-Unmodified-Since”等のフィールドのうち一つ以上が含まれる場合が適用される。そして、条件無し取得要求としては、たとえば、“If-Match”、“If-Modified-Since”、“If-None-Match”、“If-Range”、“If-Unmodified-Since”が含まれない場合が適用される。
取得応答の例としては、“200 OK”、“206 Partial Content”、“304 Not Modified”などがある。特に、コンテンツデータの変更がない場合には、取得応答として“304 Not Modified”が適用可能である。
取得要求のヘッダ部に付加できるキャッシュ属性は、“no-cache”、“no-store”、“max-age”、“max-stale”、“min-fresh”、“no-transform”、“only-if-cached”が適用可能である。これらの属性は、複数を組み合わせることも可能である。
取得応答のヘッダ部に付加できるキャッシュ属性は、“public”、“private”、“no-cache”、“no-store”、“no-transform”、“must-revalidate”、“proxy-revalidate”、“max-age”、“s-maxage”が適用可能である。これらの属性は、複数を組み合わせることも可能である。
また、「確認して有効であれば(または、確認無しに)、キャッシュ内のデータを利用可能」の確認の属性を示すために、“must-revalidate”、“proxy-revalidate”が適用可能である。
次に、第4の実施の形態の効果について説明する。第4の実施の形態に係る情報システムは、第3の実施の形態に係る情報システムの一例なので、第3の実施の形態と同一の効果を持つ。また、第4の実施の形態の情報システムは、HTTPが適用されるので、クライアント装置501で動作するHTTPに準拠したソフトウェアを変更する必要がなく、経済的であるという効果を持つ。
上記の実施の形態の一部、または、全部は、以下の付記のようにも記載されうるが、以下には限られない。
[付記1]
クライアント装置、および、オリジンサーバと通信を行う接続部と、
コンテンツデータを格納するキャッシュ部と、
前記接続部が前記クライアント装置から取得要求を受信すると、前記接続部に前記オリジンサーバへの取得要求を送信させ、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる制御部と、
を含むことを特徴とする中継サーバ。
クライアント装置、および、オリジンサーバと通信を行う接続部と、
コンテンツデータを格納するキャッシュ部と、
前記接続部が前記クライアント装置から取得要求を受信すると、前記接続部に前記オリジンサーバへの取得要求を送信させ、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる制御部と、
を含むことを特徴とする中継サーバ。
[付記2]
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納する前記制御部を含むことを特徴とする付記1の中継サーバ。
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納する前記制御部を含むことを特徴とする付記1の中継サーバ。
[付記3]
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記接続部に前記オリジンサーバへの条件無し取得要求を送信させる前記制御部を含むことを特徴とする付記2の中継サーバ。
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記接続部に前記オリジンサーバへの条件無し取得要求を送信させる前記制御部を含むことを特徴とする付記2の中継サーバ。
[付記4]
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記接続部に前記オリジンサーバへの条件無し取得要求を送信させ、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
前記接続部にコンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記3の中継サーバ。
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記接続部に前記オリジンサーバへの条件無し取得要求を送信させ、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
前記接続部にコンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記3の中継サーバ。
[付記5]
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記4の中継サーバ。
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記4の中継サーバ。
[付記6]
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示さない場合、
対応するコンテンツデータのキャッシュ属性が、「確認して有効であれば、キャッシュ内のデータを利用可能」であれば、前記接続部に、前記オリジンサーバへの確認用取得要求を送信させ、前記接続部が受信した確認用取得応答に含まれる「有効情報」が「有効」を示すと、
前記接続部に、前記キャッシュ部から読み出した対応するコンテンツデータを含む取得応答を前記クライアント装置へ送信させ、
対応するコンテンツデータのキャッシュ属性が、「確認無しに、キャッシュ内のデータを利用可能」であれば、前記接続部に、前記キャッシュ部から読み出した対応するコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記5の中継サーバ。
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示さない場合、
対応するコンテンツデータのキャッシュ属性が、「確認して有効であれば、キャッシュ内のデータを利用可能」であれば、前記接続部に、前記オリジンサーバへの確認用取得要求を送信させ、前記接続部が受信した確認用取得応答に含まれる「有効情報」が「有効」を示すと、
前記接続部に、前記キャッシュ部から読み出した対応するコンテンツデータを含む取得応答を前記クライアント装置へ送信させ、
対応するコンテンツデータのキャッシュ属性が、「確認無しに、キャッシュ内のデータを利用可能」であれば、前記接続部に、前記キャッシュ部から読み出した対応するコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる前記制御部を含むことを特徴とする付記5の中継サーバ。
[付記7]
前記接続部が受信した確認用取得応答に含まれる「有効情報」が「有効」を示さないと、
確認用取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信させる前記制御部を含むことを特徴とする付記6の中継サーバ。
前記接続部が受信した確認用取得応答に含まれる「有効情報」が「有効」を示さないと、
確認用取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、前記接続部に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信させる前記制御部を含むことを特徴とする付記6の中継サーバ。
[付記8]
付記1、2、3、4、5、6、または、7の前記中継サーバと、
キャッシュ属性がキャッシュ可能であるコンテンツデータを含む取得応答を受信すると、内部のキャッシュのコンテンツデータを格納する前記クライアント装置と、
前記中継サーバから取得要求を受け取ると、取得応答を前記中継サーバに送信する前記オリジンサーバと、
を含むことを特徴とする情報システム。
付記1、2、3、4、5、6、または、7の前記中継サーバと、
キャッシュ属性がキャッシュ可能であるコンテンツデータを含む取得応答を受信すると、内部のキャッシュのコンテンツデータを格納する前記クライアント装置と、
前記中継サーバから取得要求を受け取ると、取得応答を前記中継サーバに送信する前記オリジンサーバと、
を含むことを特徴とする情報システム。
[付記9]
クライアント装置から取得要求を受信すると、オリジンサーバへの取得要求送信し、前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信することを特徴とする中継方法。
クライアント装置から取得要求を受信すると、オリジンサーバへの取得要求送信し、前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信することを特徴とする中継方法。
[付記10]
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納することを特徴とする付記9の中継方法。
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納することを特徴とする付記9の中継方法。
[付記11]
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記オリジンサーバへの条件無し取得要求を送信することを特徴とする付記10の中継方法。
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記オリジンサーバへの条件無し取得要求を送信することを特徴とする付記10の中継方法。
[付記12]
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記オリジンサーバへの条件無し取得要求を送信し、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
コンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信することを特徴とする付記11の中継方法。
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記オリジンサーバへの条件無し取得要求を送信し、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
コンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信することを特徴とする付記11の中継方法。
[付記13]
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信することを特徴とする付記12の中継方法。
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信することを特徴とする付記12の中継方法。
[付記14]
クライアント装置から取得要求を受信すると、オリジンサーバへの取得要求送信し、前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する手順をコンピュータに実行させることを特徴とするプログラム。
クライアント装置から取得要求を受信すると、オリジンサーバへの取得要求送信し、前記オリジンサーバから取得応答を受信し、取得応答に含まれるキャッシュ属性がキャッシュ不可能であると、キャッシュ属性をキャッシュ可能に変更し、キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する手順をコンピュータに実行させることを特徴とするプログラム。
[付記15]
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納する手順をコンピュータに実行させることを特徴とする付記14のプログラム。
キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納する手順をコンピュータに実行させることを特徴とする付記14のプログラム。
[付記16]
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記オリジンサーバへの条件無し取得要求を送信する手順をコンピュータに実行させることを特徴とする付記15のプログラム。
前記クライアント装置からの取得要求が、条件無し取得要求である場合、または、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在しない場合、
前記オリジンサーバへの条件無し取得要求を送信する手順をコンピュータに実行させることを特徴とする付記15のプログラム。
[付記17]
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記オリジンサーバへの条件無し取得要求を送信し、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
コンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信する手順をコンピュータに実行させることを特徴とする付記16のプログラム。
前記クライアント装置からの取得要求が、条件付き取得要求であり、かつ、前記キャッシュ部に対応するコンテンツデータが存在し、キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、
前記オリジンサーバへの条件無し取得要求を送信し、前記接続部が前記オリジンサーバから取得応答を受信し、取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差がないと、
コンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信する手順をコンピュータに実行させることを特徴とする付記16のプログラム。
[付記18]
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信する手順をコンピュータに実行させることを特徴とする付記17のプログラム。
取得応答に含まれるコンテンツデータと前記キャッシュ部に格納されている対応するコンテンツデータとに差があると、
取得応答に含まれるキャッシュ属性がキャッシュ不可能であれば、キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ部にコンテンツデータを格納し、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信する手順をコンピュータに実行させることを特徴とする付記17のプログラム。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2013年1月21日に出願された日本出願特願2013-008614号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明は、ネットワークに接続された中継サーバ、プロキシサーバ、キャッシュサーバ等、または、それらを含む情報システムの制御に適用できる。
100 中継サーバ
200 キャッシュ部
300 制御部
301 ネットワークインタフェース部
302 送信部
303 受信部
306 主制御部
307 取得応答変更履歴情報部
308 コンテンツデータ制御部
400 接続部
500 情報システム
501 クライアント装置
503 オリジンサーバ
511 ネットワーク
512 ネットワーク
200 キャッシュ部
300 制御部
301 ネットワークインタフェース部
302 送信部
303 受信部
306 主制御部
307 取得応答変更履歴情報部
308 コンテンツデータ制御部
400 接続部
500 情報システム
501 クライアント装置
503 オリジンサーバ
511 ネットワーク
512 ネットワーク
Claims (10)
- クライアント装置、および、オリジンサーバと通信を行う接続手段と、
コンテンツデータを格納するキャッシュ手段と、
前記接続手段が前記クライアント装置からコンテンツデータの取得要求を受信すると、前記接続手段に対し、前記オリジンサーバへのコンテンツデータの取得要求を送信させ、前記接続手段が前記オリジンサーバから前記取得要求に対応する取得応答を受信すると、前記接続手段に対し、前記受信した取得応答に含まれるコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる制御手段と、を備え、
前記制御手段は、前記オリジンサーバから受信した取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ手段に前記コンテンツデータを格納させ、前記接続手段に対し、前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる、ことを特徴とする中継サーバ。 - 前記制御手段は、前記キャッシュ属性を変更した場合に、キャッシュ属性の変更履歴を内部に格納する、ことを特徴とする請求項1に記載の中継サーバ。
- 前記制御手段は、前記クライアント装置からの前記取得要求が、コンテンツデータが有効か無効かの確認を行うという条件が付いていない条件無し取得要求である場合、または、前記条件が付いた条件付き取得要求であり、かつ、前記キャッシュ手段に、前記条件付き取得要求に対応するコンテンツデータが存在しない場合、前記接続手段に前記オリジンサーバへの条件無し取得要求を送信させる、ことを特徴とする請求項2に記載の中継サーバ。
- 前記制御手段は、前記クライアント装置からの前記取得要求が、コンテンツデータが有効か無効かの確認を行うという条件が付いた条件付き取得要求であり、かつ、前記キャッシュ手段に、前記条件付き取得要求に対応するコンテンツデータが存在し、前記キャッシュ属性の変更履歴がキャッシュ属性の変更を示す場合、前記接続手段に前記オリジンサーバへの条件無し取得要求を送信させ、
前記接続手段が前記オリジンサーバから取得応答を受信し、当該取得応答に含まれるコンテンツデータと前記キャッシュ手段に格納されている前記対応するコンテンツデータとに差がない場合、前記接続手段にコンテンツデータ変更無しを示す取得応答を前記クライアント装置に対し送信させる、ことを特徴とする請求項2または3に記載の中継サーバ。 - 前記制御手段は、前記オリジンサーバから受信した取得応答に含まれるコンテンツデータと前記キャッシュ手段に格納されている前記対応するコンテンツデータとに差があり、前記取得応答に含まれるキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ手段にコンテンツデータを格納させ、前記接続手段に、キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる、ことを特徴とする請求項4に記載の中継サーバ。
- 前記キャッシュ属性は、前記クライアント装置にキャッシュされたコンテンツデータを利用可能か否かを示す情報を更に含み、
前記制御手段は、前記クライアント装置からの前記取得要求が、コンテンツデータが有効か無効かの確認を行うという条件が付いている条件付き取得要求であり、かつ、前記キャッシュ手段に前記条件付き取得要求に対応するコンテンツデータが存在し、前記コンテンツデータの前記キャッシュ属性の変更履歴がキャッシュ属性の変更を示さない場合において、前記対応するコンテンツデータのキャッシュ属性が、前記キャッシュ手段のコンテンツデータと前記オリジンサーバのコンテンツデータとが同じデータである場合に前記クライアント装置にキャッシュされたコンテンツデータを利用可能であることを示すとき、前記キャッシュ手段のコンテンツデータが有効か否かを確認し、
前記キャッシュ手段のコンテンツデータが有効であるとき、前記接続手段に、前記キャッシュ手段から読み出した、前記対応するコンテンツデータを含む取得応答を前記クライアント装置へ送信させ、
前記対応するコンテンツデータのキャッシュ属性が、前記キャッシュ手段のコンテンツデータと前記オリジンサーバのコンテンツデータとが同じデータであるか否かの確認を無しに前記クライアント装置にキャッシュされたコンテンツデータを利用可能であることを示すとき、前記接続手段に、前記キャッシュ手段から読み出した前記対応するコンテンツデータを含む取得応答を前記クライアント装置に対し送信させる、ことを特徴とする請求項2から5の何れか1項に記載の中継サーバ。 - 前記制御手段は、前記キャッシュ手段のコンテンツデータが有効でないと確認した場合において、前記オリジンサーバから取得したコンテンツデータのキャッシュ属性がキャッシュ不可能の場合、当該キャッシュ属性をキャッシュ可能に変更し、前記キャッシュ手段に前記コンテンツデータを格納させ、前記接続手段に、前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信させる、ことを特徴とする請求項6の中継サーバ。
- 請求項1から7の何れか1項に記載の中継サーバと、
キャッシュ属性がキャッシュ可能であるコンテンツデータを含む取得応答を受信すると、内部のキャッシュのコンテンツデータを格納する前記クライアント装置と、
前記中継サーバから取得要求を受け取ると、取得応答を前記中継サーバに送信する前記オリジンサーバと、
を含むことを特徴とする情報システム。 - クライアント装置からコンテンツデータの取得要求を受信すると、オリジンサーバへコンテンツデータの取得要求を送信し、
前記オリジンサーバから前記取得要求に対応する取得応答を受信し、
当該取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更し、
前記コンテンツデータを格納し、
前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する、ことを特徴とする中継方法。 - クライアント装置からコンテンツデータの取得要求を受信する処理と、
オリジンサーバへコンテンツデータの取得要求を送信する処理と、
前記オリジンサーバから前記取得要求に対応する取得応答を受信する処理と、
当該取得応答に含まれるキャッシュ属性であって、当該取得応答に含まれるコンテンツデータがキャッシュ可能なデータか否かを表すキャッシュ属性がキャッシュ不可能であるか否かを確認する処理と、
前記キャッシュ属性がキャッシュ不可能である場合、当該キャッシュ属性をキャッシュ可能に変更する処理と、
前記コンテンツデータを格納する処理と、
前記キャッシュ属性をキャッシュ可能としたコンテンツデータを含む取得応答を前記クライアント装置へ送信する処理と、をコンピュータに実行させるプログラムを記録することを特徴とするコンピュータで読み取り可能な記憶媒体。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013-008614 | 2013-01-21 | ||
| JP2013008614 | 2013-01-21 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014112367A1 true WO2014112367A1 (ja) | 2014-07-24 |
Family
ID=51209463
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2014/000141 Ceased WO2014112367A1 (ja) | 2013-01-21 | 2014-01-15 | 中継サーバ、情報システム、中継方法、および、記憶媒体 |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2014112367A1 (ja) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001098904A1 (en) * | 2000-06-23 | 2001-12-27 | Hitachi, Ltd. | Method of web information service and web server |
| US20100325357A1 (en) * | 2009-06-22 | 2010-12-23 | Anoop Kandi Reddy | Systems and methods for integration between application firewall and caching |
-
2014
- 2014-01-15 WO PCT/JP2014/000141 patent/WO2014112367A1/ja not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2001098904A1 (en) * | 2000-06-23 | 2001-12-27 | Hitachi, Ltd. | Method of web information service and web server |
| US20100325357A1 (en) * | 2009-06-22 | 2010-12-23 | Anoop Kandi Reddy | Systems and methods for integration between application firewall and caching |
Non-Patent Citations (1)
| Title |
|---|
| TOSHIAKI BABA: "Kosoku . Kokino HTTP Sever Nginx Kochiku . Settei Manual", SOFTWARE DESIGN, 18 December 2012 (2012-12-18), pages 58 - 81 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8990429B2 (en) | HTTP-based synchronization method and apparatus | |
| EP3275162B1 (en) | Systems and techniques for web communication | |
| CN105100172B (zh) | 一种http协议的缓存状态更新方法和设备、处理机 | |
| US9065526B2 (en) | Relay device, relay method, and relay device control program | |
| JP2009140290A (ja) | コンテンツ中継装置、コンテンツ中継システム及びコンテンツ中継方法並びにプログラム | |
| CN112243013A (zh) | 一种实现跨域资源缓存的方法、系统、服务器和存储介质 | |
| CN110545472B (zh) | 视频数据的处理方法、装置、电子设备及计算机可读介质 | |
| WO2017107795A1 (zh) | 一种网站访问加速方法及装置 | |
| CN103546829A (zh) | 一种视频业务处理方法及设备 | |
| JP2014057149A (ja) | 通信装置、中継装置および通信方法 | |
| EP3079328A1 (en) | Media resource sharing method, shared server and shared system | |
| CN109194706B (zh) | 网络资源拨测方法及终端 | |
| CN107809681B (zh) | 切片视频传输的方法及装置 | |
| CN105991465A (zh) | 一种应用程序业务处理的方法、设备和系统 | |
| WO2013180255A1 (ja) | 通信装置および方法 | |
| WO2014112367A1 (ja) | 中継サーバ、情報システム、中継方法、および、記憶媒体 | |
| CN105245446B (zh) | 一种报文发送方法及网关 | |
| CN106790176B (zh) | 一种访问网络的方法及系统 | |
| JP5332117B2 (ja) | Wwwコンテンツ取得システム及びwwwコンテンツ取得方法 | |
| CN108259576B (zh) | 一种软硬件实时信息传输系统和方法 | |
| CN105519121A (zh) | 一种关键帧路由的方法及媒体服务器 | |
| CN107918737A (zh) | 压力测试数据的传输方法、装置及系统 | |
| CN106657339B (zh) | 一种数据传输的方法及服务器及客户端 | |
| CN106936808B (zh) | Http流媒体传输方法及装置 | |
| CN104202618B (zh) | 获取播放资源的方法、代理客户端、代理服务器和系统 |
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: 14741038 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14741038 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: JP |