JP5779790B2 - Client estimation apparatus, client estimation method, and computer program - Google Patents
Client estimation apparatus, client estimation method, and computer program Download PDFInfo
- Publication number
- JP5779790B2 JP5779790B2 JP2011118084A JP2011118084A JP5779790B2 JP 5779790 B2 JP5779790 B2 JP 5779790B2 JP 2011118084 A JP2011118084 A JP 2011118084A JP 2011118084 A JP2011118084 A JP 2011118084A JP 5779790 B2 JP5779790 B2 JP 5779790B2
- Authority
- JP
- Japan
- Prior art keywords
- http
- client
- attribute
- header
- rule
- 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.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Description
本発明は、端末装置から送信されるデータに基づいて、端末装置で動作しているHTTP(HyperText Transfer Protocol)クライアントの属性を推定する技術に関する。 The present invention relates to a technique for estimating an attribute of an HTTP (HyperText Transfer Protocol) client operating on a terminal device based on data transmitted from the terminal device.
従来、端末装置から送信されるHTTPリクエストの内容に基づいて、端末装置で動作しているHTTPクライアント(ユーザエージェントも含む。以下同様。)の属性を推定することが行われている。特許文献1に開示された技術は、HTTPリクエストに含まれるUser-Agentヘッダの内容が格納された環境変数HTTP_USER_AGENTに、ウェブブラウザ(HTTPクライアント)の種類及びバージョンと、クライアント端末で動作しているOS(Operating System)の種類及びバージョンが記載されていることを利用している。すなわち、特許文献1に開示されたサーバは、環境変数HTTP_USER_AGENTに記載されている上記情報を読み出すことによって、クライアント端末で動作しているウェブブラウザの種類及びバージョンと、クライアント端末で動作しているOSの種類及びバージョンとが推定される。この場合、ウェブブラウザの種類及びバージョンと、OSの種類及びバージョンが属性である。
Conventionally, based on the content of an HTTP request transmitted from a terminal device, an attribute of an HTTP client (including a user agent; the same applies hereinafter) operating on the terminal device has been estimated. The technology disclosed in
しかしながら、User-Agentヘッダに記載されている情報が正確性に欠ける場合があるという問題があった。そのため、User-Agentヘッダの内容がそのまま格納された環境変数HTTP_USER_AGENTの情報のみに基づいて推定を行うと、誤った推定結果が得られる場合があった。
上記事情に鑑み、本発明は、HTTPリクエストの送信元の装置で動作しているHTTPクライアントの属性をより正確に推定する技術を提供することを目的としている。
However, there is a problem that information described in the User-Agent header may be inaccurate. For this reason, if the estimation is performed only based on the information of the environment variable HTTP_USER_AGENT in which the contents of the User-Agent header are stored as they are, an incorrect estimation result may be obtained.
In view of the above circumstances, an object of the present invention is to provide a technique for more accurately estimating an attribute of an HTTP client operating on a device that is an HTTP request transmission source.
本発明の一態様は、HTTPリクエストの記述の規則を、HTTPクライアントの属性毎に記憶する規則記憶部と、前記規則記憶部に記憶される規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定する推定部と、を備えるクライアント推定装置である。 According to one aspect of the present invention, a rule storage unit that stores an HTTP request description rule for each attribute of an HTTP client, a rule stored in the rule storage unit, a description of an HTTP request transmitted from a terminal device, And an estimation unit that estimates an attribute of an HTTP client in the terminal device.
本発明の一態様は、HTTPリクエストの記述の規則を、HTTPクライアントの属性毎に記憶する規則記憶部を備える情報処理装置が、前記規則記憶部に記憶される規則を読み出すステップと、前記情報処理装置が、読み出された前記規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定するステップと、を有するクライアント推定方法である。 According to one aspect of the present invention, there is provided an information processing apparatus including a rule storage unit that stores a rule for describing an HTTP request for each attribute of an HTTP client, and reading the rule stored in the rule storage unit; A device estimation method comprising: a step of estimating an attribute of an HTTP client in the terminal device based on the read rule and a description of an HTTP request transmitted from the terminal device.
本発明の一態様は、HTTPリクエストの記述の規則を、HTTPクライアントの属性毎に記憶する規則記憶部を備える情報処理装置に対し、前記規則記憶部に記憶される規則を読み出すステップと、読み出された前記規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定するステップと、を実行させるためのコンピュータプログラムである。 According to one aspect of the present invention, for an information processing apparatus including a rule storage unit that stores an HTTP request description rule for each attribute of an HTTP client, a step of reading the rule stored in the rule storage unit; And a step of estimating an attribute of an HTTP client in the terminal device based on the rule and the description of the HTTP request transmitted from the terminal device.
本発明により、HTTPリクエストの送信元の装置で動作しているHTTPクライアントの属性をより正確に推定することが可能となる。 According to the present invention, it is possible to more accurately estimate the attribute of an HTTP client that is operating in a device that is an HTTP request transmission source.
図1は、クライアント推定システム1のシステム構成を表すシステム構成図である。クライアント推定システム1は、端末装置10、HTTPサーバ20を備える。端末装置10とHTTPサーバ20とは、ネットワーク30を介して互いに通信可能である。
端末装置10は、パーソナルコンピュータ、携帯電話、スマートフォン、テレビ受像機、ゲーム装置、プリンタ、複合機等の装置である。端末装置10ではOSが動作し、OS上でHTTPクライアントが動作している。HTTPクライアントとは、HTTPに従ってHTTPサーバと通信を行うアプリケーションのことである。HTTPクライアントの具体例として、ウェブブラウザがあり、他にもソフトウェアやファームウェアの更新システム、検索エンジン等が情報収集するために使うクローラ(ボット、ロボット、スパイダとも呼ばれる)等がある。端末装置10は、HTTPサーバ20に対してHTTPリクエストを送信し、HTTPサーバ20からHTTPレスポンスを受信する。
HTTPサーバ20は、端末装置10から送信されたHTTPリクエストに基づいて、端末装置10におけるHTTPクライアントの属性を推定する。属性とは、HTTPクライアントの種類及びバージョンと、OSの種類及びバージョンである。
FIG. 1 is a system configuration diagram illustrating a system configuration of the
The
The HTTP
図2は、HTTPサーバ20の機能構成の概略を示す図である。HTTPサーバ20は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、プログラムを実行する。HTTPサーバ20は、プログラムの実行により、通信部201、応答内容記憶部202、応答部203、クライアント推定部40を備える装置として機能する。なお、HTTPサーバ20の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されても良い。プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されても良い。
FIG. 2 is a diagram showing an outline of a functional configuration of the
通信部201は、ネットワーク30を介して端末装置10と通信する。通信部201は、HTTPリクエストを受信すると、受信したHTTPリクエストをクライアント推定部40及び応答部203に渡す。
応答内容記憶部202は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。応答内容記憶部203は、応答内容テーブルを記憶する。図3は、応答内容テーブルの概略を示す図である。応答内容テーブルは、HTTPリクエストの条件と、クライアント推定部40の推定結果と、応答内容とを対応付けたテーブルである。推定結果として、応答内容テーブルは、HTTPクライアントの種類、HTTPクライアントのバージョン、OSの種類、OSのバージョンの項目を有する。図3の場合、受信されたHTTPリクエストの内容が条件R1に一致し、推定されたHTTPクライアントの種類、HTTPクライアントのバージョン、OSの種類、OSのバージョンがそれぞれm1、vm1、n1、vn1である場合には、応答内容がC1となる。
応答内容テーブルにおけるHTTPリクエストの条件として以下のようなものがある。例えば、条件としてHTTPリクエストに含まれるリクエストURI(Uniform Resource Identifier)を設定してもよい。この場合、リクエストURIとHTTPクライアントの組み合わせ毎に応答内容を定めることができる。また、条件としてHTTPリクエストに含まれることがあるAccept-Languageヘッダの内容を設定してもよい。この場合、Accept-Language ヘッダの内容に応じて日本語や英語といった言語毎に、HTTPクライアント毎の応答内容を定めることができる。また、その他のヘッダ等、HTTPリクエストの内容を条件に指定し、その条件毎に、HTTPクライアント毎の応答内容を定めることもできる。
The
The response
The HTTP request conditions in the response content table include the following. For example, a request URI (Uniform Resource Identifier) included in the HTTP request may be set as a condition. In this case, the response content can be determined for each combination of the request URI and the HTTP client. Moreover, you may set the content of the Accept-Language header which may be contained in an HTTP request as conditions. In this case, the response content for each HTTP client can be determined for each language such as Japanese or English according to the content of the Accept-Language header. In addition, the contents of the HTTP request such as other headers can be specified as conditions, and the response contents for each HTTP client can be determined for each condition.
応答内容テーブルにおける応答内容の具体例として以下のようなものがある。例えば、応答内容として、端末装置10に送信するコンテンツの識別情報が設定されても良い。この場合、同じHTTPリクエストの条件であっても、属性に応じて異なるコンテンツが送信される。また、原則として全てのHTTPクライアントに対して同じコンテンツが送信されるものの、特定の属性のHTTPクライアントに対してのみ他とは異なるコンテンツが送信されるように設定することも可能である。また、応答内容として特定のウェブページへのリダイレクトを送信することが設定されても良い。この場合、特定の属性のHTTPクライアントに対して、特定のウェブページへのリダイレクトが送信されるように設定することも可能である。
Specific examples of response contents in the response contents table include the following. For example, content identification information to be transmitted to the
図2に戻って説明を続ける。応答部203は、HTTPリクエストの条件と、クライアント推定部40による推定結果とに応じて、応答内容テーブルを参照することによって応答内容を決定する。応答部203は、決定した応答内容に基づいてHTTPレスポンスを生成する。応答部203は、通信部201を介してHTTPリクエストの送信元にHTTPレスポンスを送信する。
Returning to FIG. 2, the description will be continued. The
応答部203が生成するHTTPレスポンスの具体例について説明する。例えば、応答内容テーブルの応答内容としてコンテンツの識別情報が設定されている場合、応答部203は、識別情報によって表されるコンテンツを端末装置10に出力させるためのHTTPレスポンスを生成する。例えば、識別情報によって表されるコンテンツがウェブページである場合には、応答部203は、ウェブページを表示させるためのHTML(HyperText Markup Language)データを生成しても良い。応答内容として、特定のウェブページへのリダイレクトを送信することが設定されている場合、応答部203は、特定のウェブページへのリダイレクトのコードを含むHTTPレスポンスを生成しても良い。
A specific example of the HTTP response generated by the
クライアント推定部40は、HTTPリクエストの内容に基づいて、HTTPリクエストの送信元である端末装置10で動作しているHTTPクライアントの属性を推定する。クライアント推定部40は、規則記憶部402、推定部403を備える。
規則記憶部402は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。規則記憶部402は、HTTPクライアントの属性毎に規則テーブルを記憶する。規則テーブルは、HTTPクライアントの属性毎に、そのHTTPクライアントから送信されるHTTPリクエストの記述の規則を表す。
Based on the content of the HTTP request, the
The
図4は、規則テーブルの具体例を示す図である。図4に示す規則テーブルには、HTTPクライアントの具体例としてブラウザに関する情報が記録されている。図4の規則テーブルは、ブラウザ(HTTPクライアント)の種類が“xxx”、ブラウザのバージョンが“1”、OSの種類が“yyy”、OSのバージョンが“1”である属性のブラウザから送信されるHTTPリクエストの記述の規則を表す。ブラウザの種類、ブラウザのバージョン、OSの種類、OSのバージョン毎に規則テーブルが設けられる。 FIG. 4 is a diagram illustrating a specific example of the rule table. In the rule table shown in FIG. 4, information related to the browser is recorded as a specific example of the HTTP client. The rule table shown in FIG. 4 is transmitted from a browser having attributes of “xxx” for the browser (HTTP client), “1” for the browser, “yyy” for the OS, and “1” for the OS. This describes the rules for describing HTTP requests. A rule table is provided for each browser type, browser version, OS type, and OS version.
必ず存在するヘッダの欄に設定されている値は、上記属性のブラウザから送信されるHTTPリクエストに必ず記載されているヘッダの項目の名前を示す。図4の規則テーブルに定義された属性のブラウザから送信されるHTTPリクエストには必ず“Accept”、“Accept-Language”、“Accept-Encoding”、“User-Agent”、“Host”、“Connection”の項目が記述されている。 The value set in the header field that always exists indicates the name of the header item that is always described in the HTTP request transmitted from the browser having the attribute. The HTTP request sent from the browser having the attributes defined in the rule table of FIG. 4 must be “Accept”, “Accept-Language”, “Accept-Encoding”, “User-Agent”, “Host”, “Connection”. The items are described.
必ず存在しないヘッダの欄に設定されている値は、上記属性のブラウザから送信されるHTTPリクエストに必ず記載されていない項目の名前を示す。図4の規則テーブルに定義された属性のブラウザから送信されるHTTPリクエストには必ず“Accept-Charset”、“Date”の項目が記述されていない。 The value set in the header field that does not necessarily exist indicates the name of an item that is not necessarily described in the HTTP request transmitted from the browser having the attribute. The items “Accept-Charset” and “Date” are not always described in the HTTP request transmitted from the browser having the attributes defined in the rule table of FIG.
ヘッダの順番の欄に設定されている値は、上記属性のブラウザから送信されるHTTPリクエストに記述されている項目の順番を示す。図4の規則テーブルに定義された属性のブラウザから送信されるHTTPリクエストには“Accept”、“Accept-Language”、“Accept-Encoding”、“If-Modified-Since”、“If-None-Match”、“User-Agent”、“Host”、“Connection”の項目がこの順番で記述されている。この欄に定義されている項目と項目との順番が守られていれば、その間にこの欄に定義されていない他の項目が入ったとしても、あるいはこの欄に定義されている項目が無かったとしても、規則を満たしたこととなる。例えば、“Accept”と“Accept-Language”との間に、この欄に定義されていない他の項目が存在したとしても、“Accept”の後に“Accept-Language”が記述されている限りは、規則が満たされている。例えば、この欄に定義されている“If-Modified-Since”、“If-None-Match”が存在しなくても、存在している項目が定義の順番通り記述されている限りは、規則が満たされている。
例えば、HTTPリクエストに“Accept”、“Keep-Alive”、“Accept-Language”、“Accept-Encoding”、“User-Agent”、“Host”、“Connection”という順番でヘッダが記述されていた場合について説明する。この場合、“Accept”と“Accept-Language”の間に、この欄に定義されていない項目“Keep-Alive”が挿入されている。さらに、この欄で定義されている“If-Modified-Since”、“If-None-Match”が存在しない。しかしながら、その他の項目は定義の順番通り記述されているので、規則は満たされている。
個別条件の欄に設定されている事項は、各項目に設定された具体的な値に関する条件である。例えば、HTTPリクエストの”Accept”の項目に設定されている値の末尾が「,*/*」と一致すれば、図4に示される規則を満たす。
The value set in the header order column indicates the order of items described in the HTTP request transmitted from the browser having the attribute. The HTTP request transmitted from the browser having the attributes defined in the rule table of FIG. 4 includes “Accept”, “Accept-Language”, “Accept-Encoding”, “If-Modified-Since”, “If-None-Match”. "," User-Agent "," Host ", and" Connection "items are described in this order. If the order of the items defined in this column is kept, even if there are other items not defined in this column between them, or there are no items defined in this column Even so, the rules were met. For example, even if there are other items not defined in this field between “Accept” and “Accept-Language”, as long as “Accept-Language” is described after “Accept” Rules are met. For example, even if “If-Modified-Since” and “If-None-Match” defined in this column do not exist, the rules are not limited as long as the existing items are described in the order of definition. be satisfied.
For example, when headers are described in the order of "Accept", "Keep-Alive", "Accept-Language", "Accept-Encoding", "User-Agent", "Host", "Connection" in the HTTP request Will be described. In this case, an item “Keep-Alive” not defined in this column is inserted between “Accept” and “Accept-Language”. Furthermore, “If-Modified-Since” and “If-None-Match” defined in this column do not exist. However, since the other items are described in the order of definition, the rules are satisfied.
Items set in the individual condition column are conditions relating to specific values set in each item. For example, the rule shown in FIG. 4 is satisfied if the end of the value set in the “Accept” item of the HTTP request matches “, * / *”.
推定部403は、規則記憶部402に記憶されている規則テーブルに基づいて、受信されたHTTPリクエストの送信元である端末装置10で動作しているHTTPクライアントの属性を推定する。例えば、図4に示される規則テーブルに示された規則を全て満たすHTTPリクエストが受信された場合には、推定部403は、送信元のHTTPクライアントの属性について以下のように推定する。ブラウザ(HTTPクライアント)の種類は“xxx”、ブラウザのバージョンは“1”、OSの種類は“yyy”、OSのバージョンは“1”。
Based on the rule table stored in the
以下、推定部403について詳細に説明する。推定部403は、項目判定部404、順序判定部405、個別条件判定部406を備える。
項目判定部404は、ある属性では必ず記述されている項目の有無と、ある属性では必ず記述されていない項目の有無と、に基づいて、HTTPリクエストの送信元である端末装置10で動作しているHTTPクライアントの属性の候補(属性候補)を判定する。具体的には以下の通りである。項目判定部404は、規則テーブルの必ず存在するヘッダの欄と、必ず存在しないヘッダの欄とに基づいて、規則テーブルの規則を満たすか否か全ての規則テーブルについて判定する。規則を満たす場合、項目判定部404は、その規則テーブルに応じた属性を、属性候補と判定する。一方、規則を満たさない場合、項目判定部404は、その規則テーブルに応じた属性を、属性候補から外す。なお、規則を満たす場合とは、規則テーブルの必ず存在するヘッダに規定されている項目が全てHTTPリクエストに記述されており、必ず存在しないヘッダに規定されている項目が全てHTTPリクエストに記述されていない場合である。
Hereinafter, the
The
順序判定部405は、記述された項目の順序に基づいて属性候補を判定する。具体的には以下の通りである。順序判定部405は、規則テーブルのヘッダの順番の欄に基づいて、規則テーブルの規則を満たすか否か、項目判定部404で属性候補と判定された全ての規則テーブルについて判定する。規則を満たす場合、順序判定部405は、その規則テーブルに応じた属性を、属性候補と判定する。一方、規則を満たさない場合、順序判定部405は、その規則テーブルに応じた属性を、属性候補から外す。
The
個別条件判定部406は、ヘッダの項目の個別条件に基づいて、属性候補の中から属性を推定する。具体的には以下の通りである。個別条件判定部406は、規則テーブルの個別条件の欄に基づいて、規則テーブルの規則を満たすか否か、順序判定部405で属性候補と判定された全ての規則テーブルについて判定する。規則を満たす場合、個別条件判定部406は、その規則テーブルに応じた属性を、HTTPクライアントの属性と推定する。一方、規則を満たさない場合、個別条件判定部406は、その規則テーブルに応じた属性を、HTTPクライアントの属性ではないと推定する。個別条件判定部406は、推定結果を、クライアント推定部40の推定結果として応答部203に出力する。
The individual
図5は、HTTPサーバ20の動作例を表すフローチャートである。まず、通信部201は、HTTPリクエスト以外のデータを受信した場合には(ステップS101)、受信したデータを応答部203に渡す。一方、通信部201は、HTTPリクエストを受信すると(ステップS101−YES)、受信したHTTPリクエストをクライアント推定部40に渡す。項目判定部404は、受信したHTTPリクエストについて、必須項目(必ず存在するヘッダの項目、必ず存在しないヘッダの項目)に基づいて、HTTPクライアントの属性候補を判定する(ステップS102)。順序判定部405は、受信したHTTPリクエストについて、項目の順序(ヘッダの順番)に基づいて、HTTPクライアントの属性候補を判定する(ステップS103)。個別条件判定部406は、受信したHTTPリクエストについて、個別条件に基づいて、HTTPクライアントの属性候補の中から属性を推定する(ステップS104)。そして、個別条件判定部406は、推定結果を応答部203に出力する(ステップS105)。
FIG. 5 is a flowchart showing an operation example of the
応答部203は、応答内容テーブルを参照し、受信されたHTTPリクエストの条件と、クライアント推定部40による推定結果と、に基づいて応答内容を決定する(ステップS106)。応答部203は、決定した応答内容に基づいて、HTTPレスポンスを生成する(ステップS107)。そして、応答部203は、生成したHTTPレスポンスを、通信部201を介して端末装置10へ送信する(ステップS108)。
The
このように構成されたHTTPサーバ40では、HTTPクライアントの属性毎に固有のHTTPリクエストの記述の規則に基づいて、HTTPクライアントの属性が判定される。このHTTPリクエストの記述の規則にはUser-Agent ヘッダ以外の規則も含まれている。そのため、たとえUser-Agentヘッダに記載された情報に誤りがあったとしても、HTTPクライアントの属性をより正確に推定することが可能となる。
In the
また、規則は具体的に必須項目と、項目の記述の順序と、個別条件との三つの種類の規則で構成される。そのため、いずれか一つの規則のみに基づいて推定を行うよりもより正確な推定を行うことが可能となる。
また、推定結果に応じた応答内容に基づいてHTTPレスポンスが生成される。そのため、端末装置10で動作しているHTTPクライアントの属性に応じた適切なHTTPレスポンスを端末装置10へ送信することが可能となる。
Further, the rules are specifically composed of three types of rules: essential items, order of description of items, and individual conditions. Therefore, it is possible to perform more accurate estimation than performing estimation based on only one of the rules.
Further, an HTTP response is generated based on the response content corresponding to the estimation result. Therefore, it is possible to transmit an appropriate HTTP response corresponding to the attribute of the HTTP client operating on the
<変形例>
端末装置10及びHTTPサーバ20は、HTTPのみならず、HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)で通信しても良い。
推定部403は、項目判定部404、順序判定部405、個別条件判定部406のうち、いずれか一つ又は二つのみによって構成されても良い。
<Modification>
The
The
項目判定部404、順序判定部405、個別条件判定部406の処理の順序は、図5のフローチャートに示す順序に限定される必要は無い。いずれの順序の場合も、最初に処理をする機能部は全ての属性から属性候補を絞り、次に処理をする機能部は属性候補をさらに絞り、最後に処理をする機能部は絞られた属性候補の中から属性を推定する。また、上述したように推定部403は、項目判定部404、順序判定部405、個別条件判定部406のうち、いずれか一つ又は二つのみによって推定部403が構成される場合の処理の順序も、適宜設計される。
属性は、HTTPクライアントの種類及びバージョンと、端末装置10で動作しているOSの種類及びバージョンとの全てを含むのではなく、これらのうちいずれか一つ又は複数の組み合わせであっても良い。
The processing order of the
The attribute does not include all of the type and version of the HTTP client and the type and version of the OS operating on the
クライアント推定部40は、HTTPサーバ20ではなく、他の装置に設けられても良い。
例えば、クライアント推定部40は、ネットワーク30に設置された中継装置に設けられても良い。この場合、中継装置は以下のように動作しても良い。例えば、中継装置は、属性毎にHTTPリクエストを異なるネットワークへ転送しても良い。例えば、中継装置は、特定の属性によるHTTPリクエストのみを転送し、他の属性によるHTTPリクエストを廃棄しても良い。例えば、中継装置は、特定の属性によるHTTPリクエストのみをネットワークから遮断し、他の属性によるHTTPリクエストを遮断しなくても良い。例えば、中継装置は、特定の属性によるHTTPリクエストが受信された場合に、ネットワーク30の管理者に警告を発しても良い。
The
For example, the
例えば、クライアント推定部40は、端末装置10とHTTPサーバとの間に設けられたプロキシサーバ(Proxy Server)に設けられても良い。この場合、プロキシサーバは以下のように動作しても良い。例えば、プロキシサーバは、属性毎に異なるHTTPサーバへプロキシしても良い。例えば、プロキシサーバは、特定の属性によるHTTPリクエストのみをプロキシしても良い。例えば、プロキシサーバは、特定の属性によるHTTPリクエストのみプロキシせず、エラー画面などの所定のコンテンツをHTTPレスポンスとして返信しても良い。例えば、プロキシサーバは、特定の属性によるHTTPリクエストのみ特定のウェブページへリダイレクトさせるHTTPレスポンスを返送しても良い。例えば、プロキシサーバは、特定の属性によるHTTPリクエストが受信された場合に、プロキシサーバの管理者に警告を発しても良い。なお、プロキシサーバは、端末装置10とHTTPサーバとの間に一段設けられても良いし、多段設けられても良い。
For example, the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
1…クライアント推定システム, 10…端末装置, 20…HTTPサーバ, 30…ネットワーク, 201…通信部, 202…応答内容記憶部, 203…応答部, 40…クライアント推定部, 402…規則テーブル記憶部, 403…推定部, 404…項目判定部, 405…順序判定部, 406…個別条件判定部
DESCRIPTION OF
Claims (3)
前記規則記憶部に記憶される規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定する推定部と、
を備え、
前記HTTPリクエストの記述の規則は、前記HTTPクライアントから送信されるHTTPリクエストに必ず存在するヘッダと、必ず存在しないヘッダと、ヘッダの記述の順番と、に関する規則のうちいずれか一つ又は複数を含み、
前記ヘッダは、User-Agentヘッダと、User-Agentヘッダ以外のヘッダとを含む、クライアント推定装置。 A rule storage unit that stores rules for describing HTTP requests for each attribute of the HTTP client;
An estimation unit for estimating an attribute of an HTTP client in the terminal device based on the rule stored in the rule storage unit and a description of an HTTP request transmitted from the terminal device;
Equipped with a,
The rules for describing the HTTP request include one or more of rules regarding headers that are always present in HTTP requests transmitted from the HTTP client, headers that are not necessarily present, and the order of header descriptions. ,
The client estimation apparatus , wherein the header includes a User-Agent header and a header other than the User-Agent header .
前記情報処理装置が、読み出された前記規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定するステップと、
を有し、
前記HTTPリクエストの記述の規則は、前記HTTPクライアントから送信されるHTTPリクエストに必ず存在するヘッダと、必ず存在しないヘッダと、ヘッダの記述の順番と、に関する規則のうちいずれか一つ又は複数を含み、
前記ヘッダは、User-Agentヘッダと、User-Agentヘッダ以外のヘッダとを含む、クライアント推定方法。 An information processing apparatus comprising a rule storage unit that stores a rule for describing an HTTP request for each attribute of an HTTP client, and reading out the rule stored in the rule storage unit;
The information processing device estimating an attribute of an HTTP client in the terminal device based on the read rule and a description of an HTTP request transmitted from the terminal device;
Have
The rules for describing the HTTP request include one or more of rules regarding headers that are always present in HTTP requests transmitted from the HTTP client, headers that are not necessarily present, and the order of header descriptions. ,
The client estimation method , wherein the header includes a User-Agent header and a header other than the User-Agent header .
前記規則記憶部に記憶される規則を読み出すステップと、
読み出された前記規則と、端末装置から送信されたHTTPリクエストの記述と、に基づいて、前記端末装置におけるHTTPクライアントの属性を推定するステップと、
を有し、
前記HTTPリクエストの記述の規則は、前記HTTPクライアントから送信されるHTTPリクエストに必ず存在するヘッダと、必ず存在しないヘッダと、ヘッダの記述の順番と、に関する規則のうちいずれか一つ又は複数を含み、
前記ヘッダは、User-Agentヘッダと、User-Agentヘッダ以外のヘッダとを含む、クライアント推定方法を実行させるためのコンピュータプログラム。 For an information processing apparatus including a rule storage unit that stores HTTP request description rules for each attribute of an HTTP client,
Reading a rule stored in the rule storage unit;
Estimating an attribute of an HTTP client in the terminal device based on the read rule and a description of an HTTP request transmitted from the terminal device;
Have
The rules for describing the HTTP request include one or more of rules regarding headers that are always present in HTTP requests transmitted from the HTTP client, headers that are not necessarily present, and the order of header descriptions. ,
A computer program for executing a client estimation method , wherein the header includes a User-Agent header and a header other than the User-Agent header .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011118084A JP5779790B2 (en) | 2011-05-26 | 2011-05-26 | Client estimation apparatus, client estimation method, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011118084A JP5779790B2 (en) | 2011-05-26 | 2011-05-26 | Client estimation apparatus, client estimation method, and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012247919A JP2012247919A (en) | 2012-12-13 |
JP5779790B2 true JP5779790B2 (en) | 2015-09-16 |
Family
ID=47468323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011118084A Active JP5779790B2 (en) | 2011-05-26 | 2011-05-26 | Client estimation apparatus, client estimation method, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5779790B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6331411B2 (en) * | 2014-01-20 | 2018-05-30 | 凸版印刷株式会社 | Information management server, information providing system, information providing method, and information management program |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407351B2 (en) * | 2009-11-25 | 2013-03-26 | Nokia Corporation | Method and apparatus for ensuring transport of user agent information |
JP4964338B2 (en) * | 2011-02-04 | 2012-06-27 | 株式会社三菱東京Ufj銀行 | User confirmation apparatus, method and program |
-
2011
- 2011-05-26 JP JP2011118084A patent/JP5779790B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012247919A (en) | 2012-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8321502B2 (en) | Method for optimizing a web content proxy server and devices thereof | |
US10498736B2 (en) | Third party program integrity and integration control in web based applications | |
US11216612B2 (en) | Size-optimized data interchange method and system | |
US9871850B1 (en) | Enhanced browsing using CDN routing capabilities | |
US20030236883A1 (en) | Proxy server apparatus and method for providing service using the same | |
EP2732385A1 (en) | Methods for facilitating web page image hotspots and devices thereof | |
US9473592B2 (en) | Methods for optimizing a web content proxy server and devices thereof | |
US9785721B2 (en) | System and method for programmatically creating resource locators | |
EP2787454A1 (en) | Methods for optimizing a web content proxy server and devices thereof | |
US9400547B2 (en) | Processing device and method thereof | |
JP6381426B2 (en) | Information processing apparatus, control method, and program | |
JP5779790B2 (en) | Client estimation apparatus, client estimation method, and computer program | |
JP2016144186A (en) | Communication information controller, relay system, communication information control method, and communication information control program | |
US20190318036A1 (en) | Topic Based Publish and Parametric Subscribe Pattern | |
EP2868069B1 (en) | Processing requests | |
Zheng et al. | Qos evaluation of web services | |
CN115277383B (en) | Log generation method, device, electronic equipment and computer readable storage medium | |
JP2010181946A (en) | Communication system, terminal equipment, content obtaining method, and program | |
KR101775324B1 (en) | Method for handling removal of specific node in heap which includes at least one node and computing apparatus using the same | |
JP6350235B2 (en) | Information processing apparatus, information processing apparatus control method, and information processing apparatus control program | |
JP2013145487A (en) | Data transfer device and data processing system | |
Dominte | Introduction to the Web | |
JP2015210785A (en) | Communication control device, communication control method, and program | |
US20160036680A1 (en) | Packet monitoring method, packet monitoring apparatus, and storage medium | |
KR20170097459A (en) | Communication apparatus, network apparatus for transmitting web information in identifier/locator separation network and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150413 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150619 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5779790 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |