JP4867799B2 - クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム - Google Patents
クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム Download PDFInfo
- Publication number
- JP4867799B2 JP4867799B2 JP2007149079A JP2007149079A JP4867799B2 JP 4867799 B2 JP4867799 B2 JP 4867799B2 JP 2007149079 A JP2007149079 A JP 2007149079A JP 2007149079 A JP2007149079 A JP 2007149079A JP 4867799 B2 JP4867799 B2 JP 4867799B2
- Authority
- JP
- Japan
- Prior art keywords
- content
- server
- request
- agent
- crawling
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- 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
- G06F16/951—Indexing; Web crawling techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/74—Admission control; Resource allocation measures in reaction to resource unavailability
- H04L47/745—Reaction in network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Description
しかし、この情報量ゆえに情報が埋没し、効果的な情報収集を行うことが難しく、現在では多くの検索エンジンサービスが提供されている。このような検索エンジンとしては、汎用の検索エンジンや、求人情報等の特定分野に限った専門検索エンジン等が存在している。
上記特許文献1に記載のような従来のクローリング手法では、ウェブクローラがクローリング対象のコンテンツを格納したサーバに接続し、コンテンツの収集が完了するまで接続を継続し、一定のネットワーク帯域を消費する。
そのため、クローリングの実行に際し、ネットワーク帯域の消費を抑えることのできるネットワーク帯域制御方法が望まれていた。
したがって、収集ステップでコンテンツをダウンロードしている途中で接続が切断されても、コンテンツのリストにそのコンテンツのアドレスを記録しておき、後から再取得することが可能である。
図1は、本発明の実施の形態1に係るネットワークシステムの構成図である。
図1において、100はネットワーク、110はクローリング端末、120はコンテンツサーバ、130はセッション制御サーバ、140は帯域制御サーバである。
クローリング端末110、コンテンツサーバ120、セッション制御サーバ130、帯域制御サーバ140は、ネットワーク100を介して接続されている。
取得リスト111は、クローリング端末110が取得すべきコンテンツのリストを保持する。コンテンツのリストは、例えば対象コンテンツのアドレス(URIやURL)により記述される。
取得中リスト112は、クローリング端末110が取得中のコンテンツのリストを保持する。記述形式は取得リスト111と同様である。
再取得リスト113は、クローリング端末110が取得に失敗したコンテンツのリストを保持する。記述形式は取得リスト111と同様である。
これらのリストの役割は、後述の図7で改めて説明する。
セッション制御サーバ130は、ネットワーク100を介して他のサーバ等に接続する際の接続手続を仲介するものである。以下の説明では、クローリング端末110がコンテンツサーバ120に接続する際の手続について述べるが、他の接続手続についても同様の仲介処理が行われる。
帯域制御サーバ140は、ネットワーク100上の通信端末がセッション制御サーバ130へ接続確立を要求した際に、その使用帯域を管理し、必要な帯域を割り当てたり、通信を切断して帯域を解放したりするサーバである。
帯域制御サーバ140は、確保帯域記憶装置141を備える。
確保帯域記憶装置141には、優先切断リスト142と確保帯域データ143が格納される。優先切断リスト142については図2で、確保帯域データ143については図3で説明する。
ウェブクローラ(Web Crawler)プログラムは、ウェブページの収集を人手に代わって行うプログラムである。このプログラムは、ウェブページを巡回してコンテンツを自動的にダウンロードし、その中に記述されているハイパーリンクを抽出し、次に収集すべきURL(Uniform Resource Locator)を発見する。この処理を繰り返すことで、ウェブページに含まれるデータを収集していく。
ウェブクローラは、ウェブロボット、ウェブスパイダーとも呼ばれ、インデキシングやデータ更新を行う場合もある。
URLリストの中から、次にコンテンツを取得するURLを選択する。
(S1202)
ステップS1201で選択したURLに基づき、Webサーバにアクセスする。
(S1203)
ステップS1201で選択したURLからコンテンツを収集可能であるか否かを判定する。収集可能であればステップS1204へ進み、収集できなければステップS1201へ戻って別のURLを選択する。
なお、コンテンツが収集できない場合とは、例えば当該コンテンツが存在しない場合や、アクセス制限がかけられている場合等が相当する。
アクセスしたURLからWebページをダウンロードする。
(S1205)
ダウンロードしたWebページのHTMLを解析し、その中に含まれる他のURLを抽出するとともに、ダウンロードしたWebページを保存する。保存したWebページは、インデキシング処理等を施して、検索エンジンの利用に供する。
なお、Webページに他のURLが含まれる場合とは、一般に他のWebページへのリンクが含まれる場合であることが多いが、これに限られるものではない。
ステップS1205で抽出した他のURLをURLリストに追加する。
(S1207)
クローリングを継続する場合はステップS1201に戻り、別のURLを選択する。
図12で説明したように、クローリングの過程では、ダウンロードしたWebページに含まれる他のURLを辿っていくことで、クローリング対象を広げていく。
図13の例では、最初にダウンロードしたWebページ「1」に、他のWebページ「2」〜「4」へのリンクが含まれており、さらにWebページ「4」には、Webページ「5」〜「7」へのリンクが含まれていることを示している。
ここで、他のURLを抽出する際に、抽出の深さを指定(幅優先探索ともいう)しておくこともできる。例えば図13において、深さ1を指定しておけば、Webページ「2」〜「4」を取得でき、深さ2を指定しておけば、さらにWebページ「5」〜「7」を取得することができる。
優先切断リスト142は、ネットワーク帯域が枯渇した際に、優先的に接続を切断してよい通信端末のリストを保持するものである。同リストには、該当する通信端末のアドレス等、その通信端末を特定することのできる情報がセットされる。
優先切断リスト142の形式は、テーブル形式、CSV形式等、処理に都合のよい適切なファイル形式等を用いればよい。
なお、同リストに値がセットされるタイミング等については、後述の図5で説明する。
確保帯域データ143は、「端末」列、「接続先」列、「確保通信帯域」列、「通信経路」列を有する。
「端末」列には、帯域制御サーバ140が管理している通信端末のアドレス等、その通信端末を特定することのできる情報が格納される。
「接続先」列には、「端末」列で特定される通信端末の接続先サーバのアドレス等、その接続先を特定することのできる情報が格納される。なお、図1の構成図の例では、本列にはコンテンツサーバ120のアドレス等が格納されることになる。
「確保通信帯域」列には、「端末」列で特定される通信端末が、「接続先」列で特定される接続先に接続するに際して使用するネットワーク帯域の値が格納される。即ち、帯域制御サーバ140は、本列の値を用いることにより、各通信端末の使用帯域を管理することができる。
「通信経路」列には、「端末」列で特定される通信端末が、「接続先」列で特定される接続先と通信するに際して使用される通信経路が格納される。
要求部114は、ネットワーク100を介して接続先への接続要求を発行する。本実施の形態1の例では、コンテンツサーバ120に対する接続要求を発行することになる。
確立部115は、接続先との間のネットワーク接続を確立する。
収集部116は、コンテンツサーバ120からコンテンツを収集する。
切断部117は、確立部115が確立したネットワーク接続を切断する。
要求受信部131は、コンテンツサーバ120に対する接続要求をクローリング端末110から受け取る。
確立部132は、要求受信部131が受信した接続要求に基づき、クローリング端末110とコンテンツサーバ120の間の接続確立を仲介する。
切断部133は、確立している接続を切断すべき旨の命令を発行する。同命令を受け取った通信端末は、その時点で確立している接続を切断する。
なお、セッション制御サーバ130の詳細動作は、後述の図5で説明する。
なお、クローリング端末110がコンテンツサーバ120に接続するに際し、セッション制御サーバ130がその接続を仲介し、コンテンツサーバ120への接続手続を行うため、まずはその接続制御手順を次の図5〜図6で説明し、その後にクローリング手順を説明する。
クローリング端末110の要求部114は、セッション制御サーバ130に対し、クローリング端末110の登録を要求する。本ステップは、SIP(Session Initiation Protocol)の「REGISTER」に相当する。
(S502)
セッション制御サーバ130の要求受信部131は、登録要求を受信し、クローリング端末110を制御対象として登録する。
(S503)
登録が完了すると、要求受信部131は、クローリング端末110に対し、登録完了の旨を返信する。
クローリング端末110の要求部114は、セッション制御サーバ130に対し、コンテンツサーバ120に対する接続を要求する。本ステップは、SIPの「INVITE」に相当する。
このとき、ネットワーク帯域が枯渇した際には、クローリング端末110とコンテンツサーバ120の間の接続を優先的に切断してよい旨を、要求パケットに含めておく。
セッション制御サーバ130の要求受信部131は、接続要求を受信し、帯域制御サーバ140に対し、コンテンツサーバ120への接続に必要な帯域が確保可能かどうかを問い合わせる。
また、ステップS504と同様に、ネットワーク帯域が枯渇した際には、クローリング端末110とコンテンツサーバ120の間の接続を優先的に切断してよい旨を、問合せパケットに含めておく。
帯域制御サーバ140は、ルータなどの通信経路上のネットワーク機器について、クローリング端末110がコンテンツサーバ120に接続するために必要なネットワーク帯域を確保できるか否かを調査する。
確保可能であれば、現在のネットワーク100全体の帯域から、クローリング端末110がコンテンツサーバ120に接続するために必要なネットワーク帯域を確保する。
帯域制御サーバ140は、ステップS506で確保した帯域について、確保帯域データ143に記録する。ここでは、「端末=クローリング端末110」、「接続先=コンテンツサーバ120」、となる。
(S508)
帯域制御サーバ140は、セッション制御サーバ130に、ネットワーク帯域が確保できた旨を返信する。
なお、接続要求には、ネットワーク帯域が枯渇した際に優先的に接続を切断してよい旨が含まれているので、優先切断リスト142に、クローリング端末110のアドレス等を記録しておく。
セッション制御サーバ130の要求受信部131は、ネットワーク帯域が確保できた旨の返信を受け取る。
次に、確立部132は、コンテンツサーバ120に対し、クローリング端末110から受け取った接続要求を送信する。本ステップは、SIPの「INVITE」に相当する。
(S510)
コンテンツサーバ120は、クローリング端末110からの接続を受け入れる場合は、接続許諾の旨をセッション制御サーバ130に返信する。本ステップは、SIPの「200 OK」に相当する。
セッション制御サーバ130の確立部132は、コンテンツサーバ120がクローリング端末110からの接続を受け入れる旨の応答を受信する。
次に、確立部132は、その応答をクローリング端末110に送信する。
(S512)
クローリング端末110の要求部114は、接続を受け入れる旨の応答を受信する。
次に、クローリング端末110の確立部115は、コンテンツサーバ120との接続が可能であれば、セッション制御サーバ130に対し、受入れ可能である旨を送信する。本ステップは、SIPの「ACK」に相当する。
セッション制御サーバ130の確立部132は、クローリング端末110が受入れ可能である旨を、コンテンツサーバ120に送信する。
(S514)
クローリング端末110とコンテンツサーバ120の間で接続が確立される。
以後、クローリング端末110の収集部116は、コンテンツサーバ120のコンテンツを収集する。
他の通信端末がコンテンツサーバ120との接続を確立する等により、クローリング端末110が確立した通信経路上で、ネットワーク帯域の枯渇が生じ、帯域管理サーバ140がそれを検出したものと仮定する。
(S602)
帯域管理サーバ140は、優先切断リスト142の中から、接続を切断することで必要なネットワーク帯域が確保できそうな端末を検索する。検索に際しては、確保帯域データ143を適宜参照し、「確保通信帯域」等の必要な値を得る。
帯域管理サーバ140は、ステップS602で検索した端末を、セッション管理サーバ130に通知する。
(S604)
セッション管理サーバ130の切断部133は、帯域管理サーバ140からの通知を受け取り、クローリング端末110とコンテンツサーバ120の間の接続を切断すべき旨を指示する。本ステップの処理は、SIPの「BYE」に相当する。
クローリング端末110の切断部117は、コンテンツサーバ120との間の接続を切断する。
次に、クローリング端末110がコンテンツサーバ120に対して実行するクローリング手順について、次の図7で説明する。なお、接続確立および切断の手順は、図5〜図6で説明したものと同様であるため、説明を省略する。
図5で説明した手順で、クローリング端末110とコンテンツサーバ120の間の接続が既に確立されているものとする。
クローリング端末110の収集部116は、取得リスト111を参照し、取得すべきコンテンツのアドレスを選択する。
選択したアドレスは、取得リスト111から消去するとともに、取得中リスト112に追加する。
(S702)
収集部116は、ステップS701で選択したアドレスに基づき、コンテンツサーバ120にアクセスする。
(S703)
収集部116は、ステップS701で選択したアドレスからコンテンツを収集可能であるか否かを判定する。収集可能であればステップS704へ進み、収集できなければステップS701へ戻って別のアドレスを選択する。
収集部116は、アクセスしたアドレスからコンテンツをダウンロードする。
(S705)
収集部116は、ステップS704でコンテンツのダウンロードが完了したか否かを判定する。完了していればステップS706へ進み、完了していなければステップS708へ進む。
なお、コンテンツのダウンロードが未完了である場合とは、ダウンロード途中に帯域制御サーバ140がネットワーク帯域の枯渇を検出し、図6で説明した手順により、クローリング端末110とコンテンツサーバ120の間の接続を切断したような場合のことである。
収集部116は、取得中リスト112から、ダウンロードしたコンテンツのアドレスを削除する。
次に、収集部116は、ダウンロードしたコンテンツを解析し、その中に含まれる他のアドレスを抽出するとともに、ダウンロードしたコンテンツを保存する。保存したコンテンツは、インデキシング処理等を施して、検索エンジンの利用に供する。
(S707)
収集部116は、ステップS706で抽出した他のアドレスを、取得リスト111に追加する。
収集部116は、ダウンロードが完了しなかったコンテンツのアドレスを再取得リスト113に記録するとともに、取得中リスト112から消去する。
(S709)
取得リスト111に未取得アドレスが残っており、クローリングを継続する場合は、ステップS701に戻って残りのアドレスを選択する。
このとき、再取得リスト113に記録されているアドレスがあれば、そのアドレスについても再度取得を試みる。
また、セッション制御サーバ130と帯域制御サーバ140を個別のサーバとして構成した場合は、本実施の形態1における「切断部」は、切断部133と帯域制御サーバ140がこれに相当する。
また、本実施の形態1における「リスト」は、取得リスト111、取得中リスト112、再取得リスト113がこれに相当する。
したがって、音声データや動画データのストリーミングのように、一定の帯域確保を保証してコンテンツを取得するようなコンテンツサーバ120に接続している場合に、クローリング端末110が長時間ネットワーク帯域を占有することを防ぐ効果がある。
図8は、本発明の実施の形態2に係るネットワークシステムの構成図である。
図8において、図1の構成に加えて新たに分散エージェント150a、150bが追加されている。また、次の図9で説明するが、クローリング端末110には、新たに再取得依頼部118が追加されている。
分散エージェント150a、150bは、ネットワーク100に接続されている。
その他の構成は図1と同様であるため、説明を省略する。
なお、図8では分散エージェントは2つのみとしているが、個数に制限はない。
再取得依頼部118は、ネットワーク100に接続するためのインターフェースと、通信手順を制御するための回路デバイス等のハードウェア、もしくはCPUやマイコン等の演算装置上で実行されるソフトウェア等により構成することができる。
なお、本実施の形態2においては、実施の形態1と異なり、クローリング端末110自身は、再取得リスト113に記録されたコンテンツの再取得は行わない。
なお、他の分散エージェント(例えば分散エージェント150b)も、同様の構成を備える。
再取得依頼部158は、分散エージェント150aがコンテンツサーバ120からコンテンツを取得できなかった場合に、他の分散エージェント(例えば分散エージェント150b)に対し、当該コンテンツの取得を依頼する。
依頼受信部159は、クローリング端末110、もしくは他の分散エージェント(例えば分散エージェント150b)から、コンテンツの取得要求を受け取る。
再取得依頼部118は、以後のステップS1002〜S1006の処理を、クローリング端末110が稼働している間、繰り返し実行する。
(S1002)
再取得依頼部118は、一定時間スリープする。
(S1003)
再取得依頼部118は、再取得リスト113に記録があるか否かを確認する。記録があればステップS1004へ進み、なければステップS1002に戻る。
再取得依頼部118は、再取得リスト113に記録されているコンテンツの再取得を依頼する分散エージェントを選択する。
選択の基準は、例えばBGP(Border Gateway Protocol)のようなルーティングプロトコルを用いて、コンテンツサーバ120との間のネットワーク距離が最も近いものを選ぶ、などとすればよい。
なお、ネットワーク距離の算出手法には種々のものが考えられるが、例えばホップ数をネットワーク距離とみなせば処理が簡易である。
再取得依頼部118は、ステップS1004で選択した分散エージェントに対し、再取得リスト113に記録されているコンテンツのアドレスを送信する。
(S1006)
再取得依頼部118は、分散エージェントに送信したアドレスを再取得リスト113から削除し、取得中リスト112にそのアドレスを記録する。
分散エージェント150aの依頼受信部159は、クローリング端末110が上述のステップS1005で送信したアドレスを受信する。
次に、要求部154、確立部155は、実施の形態1の図5で説明したものと同様の手順により、コンテンツサーバ120との間の接続を確立する。
収集部156は、取得リスト151を参照し、取得すべきコンテンツのアドレスを選択する。選択したアドレスは、取得リスト151から消去するとともに、取得中リスト152に追加する。
実施の形態1の図7で説明したステップS702〜S707と同様であるため、説明を省略する。
再取得依頼部158は、クローリング端末110が備える再取得依頼部118と同様の手法により、コンテンツの再取得を依頼する他の分散エージェントを選択する。
(S1109)
ステップS1108で他の分散エージェントを選択できた場合はステップS1110へ進み、選択できなかった場合はステップS1111へ進む。
再取得依頼部158は、ステップS1108で選択した他の分散エージェントに対し、取得できなかったコンテンツのアドレスを送信する。このとき、分散エージェント150a自身がコンテンツを取得できなかったことを併せて送信する。
コンテンツの取得に失敗した分散エージェントのリストは、各分散エージェントが備える記憶手段に一時的に格納される。
他の分散エージェントがさらに他の分散エージェントを選択する際(ステップS1108に相当)は、そのリストを参照し、リストに記録されていない分散エージェントを選択する。
即ち、対象コンテンツの取得に失敗した分散エージェントは、選択の対象から外され、それ以外の分散エージェントの中で、コンテンツサーバ120との間のネットワーク距離が最も近いものが選択されることになる。
本実施の形態2における「選択済みエージェントリスト」は、上述のリストがこれに相当する。
再取得依頼部158は、取得できなかったコンテンツのアドレスを全てクローリング端末110に送信する。
クローリング端末110の再取得依頼部118は、そのコンテンツを受信して保存するとともに、取得中リスト112に記録された該当アドレスを消去する。
また、本実施の形態2に係るエージェント装置150a、150bにおいて、「依頼部」は、再取得依頼部158がこれに相当する。
実施の形態2では、クローリング端末110が分散エージェントにコンテンツの再取得を依頼するときや、分散エージェント150aが他の分散エージェントにコンテンツの再取得を依頼するときには、コンテンツサーバ120との間のネットワーク距離が最も近い分散エージェントを選択することとした。
本発明の実施の形態3では、分散エージェントを選択する別の手法を説明する。
コンテンツの再取得を依頼する際には、コンテンツサーバ120との接続に成功した確率が最も高い分散エージェントを選択するようにする。
このようにすることで、コンテンツの再取得成功確立が上がるものと見込まれるので、効率の良いコンテンツ収集を行うことができる。
Claims (21)
- ネットワーク上のコンテンツを収集するクローリング装置がクローリングを行う方法であって、
コンテンツのリストを格納する記憶手段を設け、
コンテンツ提供元のサーバとの間の接続確立を要求する要求ステップと、
そのサーバとの間の接続を確立する確立ステップと、
そのサーバが提供するコンテンツを収集する収集ステップと、
を有し、
前記要求ステップにおいて接続確立を要求する際に、
ネットワーク帯域が枯渇した際には前記サーバとの間の接続を優先的に切断してよい旨の通知を当該要求に含めておき、
前記収集ステップの実行途中に、
その通知に基づき前記サーバとの間の接続が切断された場合は、
前記リストに当該コンテンツの場所を表す情報を記録しておき、
後にそのリストを参照して、当該コンテンツについて再度前記各ステップを実行する
ことを特徴とするクローリング方法。 - ネットワーク上のコンテンツを収集する1ないし複数のエージェントを設け、
前記リストに記録されたコンテンツの収集を前記エージェントのうちの1つに依頼する依頼ステップと、
前記リストからそのコンテンツに関する記録を削除するステップと、
前記エージェントがそのコンテンツの収集を行った結果を受信する依頼結果受信ステップと、
を有し、
前記依頼結果受信ステップにおいて、
前記エージェントがコンテンツを収集しなかった旨を受信した際には、
前記リストにそのコンテンツの場所を表す情報を再記録する
ことを特徴とする請求項1に記載のクローリング方法。 - 前記依頼ステップでは、
前記サーバとの間のネットワーク距離が最も近いエージェントにコンテンツ収集を依頼する
ことを特徴とする請求項2に記載のクローリング方法。 - 前記エージェントと前記サーバとの接続成功率を前記記憶手段に格納しておき、
前記依頼ステップでは、
前記サーバとの接続成功率が最も高いエージェントにコンテンツ収集を依頼する
ことを特徴とする請求項2に記載のクローリング方法。 - ネットワーク上のコンテンツを収集するエージェント装置がクローリングを行う方法であって、
コンテンツの収集依頼を受信する依頼受信ステップと、
コンテンツ提供元のサーバとの間の接続確立を要求する要求ステップと、
そのサーバとの間の接続を確立する確立ステップと、
そのサーバが提供するコンテンツを収集する収集ステップと、
を有し、
前記要求ステップにおいて接続確立を要求する際に、
ネットワーク帯域が枯渇した際には前記サーバとの間の接続を優先的に切断してよい旨の通知を当該要求に含めておき、
前記収集ステップの実行途中に、
前記通知に基づき前記サーバとの間の接続が切断された場合は、
他のエージェント装置に対しそのコンテンツの収集を依頼する依頼ステップを実行する
ことを特徴とするクローリング方法。 - コンテンツの収集に失敗した前記エージェント装置のリスト(以下「選択済みエージェントリスト」)を格納する記憶手段を設け、
前記依頼ステップにおいて、
前記選択済みエージェントリストを参照し、その選択済みエージェントリストに含まれていないエージェント装置にコンテンツの収集を依頼する
ことを特徴とする請求項5に記載のクローリング方法。 - 前記依頼ステップでは、
前記選択済みエージェントリストに含まれておらず、
かつ、
前記サーバとの間のネットワーク距離が最も近いエージェント装置にコンテンツ収集を依頼する
ことを特徴とする請求項6に記載のクローリング方法。 - 前記エージェント装置と前記サーバとの接続成功率を前記記憶手段に格納しておき、
前記依頼ステップでは、
前記選択済みエージェントリストに含まれておらず、
かつ、
前記サーバとの接続成功率が最も高いエージェント装置にコンテンツ収集を依頼する
ことを特徴とする請求項6に記載のクローリング方法。 - 全ての前記エージェント装置がコンテンツの収集に失敗した際には、
前記収集依頼の送信元にその旨を通知する
ことを特徴とする請求項5ないし請求項8のいずれかに記載のクローリング方法。 - 請求項1ないし請求項4のいずれかに記載のクローリング方法をコンピュータに実行させることを特徴とするクローリングプログラム。
- 請求項5ないし請求項9のいずれかに記載のクローリング方法をコンピュータに実行させることを特徴とするクローリングプログラム。
- ネットワーク上のコンテンツを収集するクローリング装置であって、
コンテンツのリストを格納する記憶手段と、
コンテンツ提供元のサーバとの間の接続確立を要求する要求部と、
そのサーバとの間の接続を確立する確立部と、
そのサーバが提供するコンテンツを収集する収集部と、
を備え、
前記要求部は、
接続確立を要求する際に、
ネットワーク帯域が枯渇した際には前記サーバとの間の接続を優先的に切断してよい旨の通知を当該要求に含めておき、
前記収集部は、
コンテンツを収集している途中に、
その通知に基づき前記サーバとの間の接続が切断された場合は、
前記リストに当該コンテンツの場所を表す情報を記録しておき、
前記各部は、
後にそのリストを参照して、当該コンテンツについて再度前記各部の処理を実行する
ことを特徴とするクローリング装置。 - ネットワーク上のコンテンツを収集するエージェントのうちの1つに対し、前記リストに記録されたコンテンツの収集を依頼する依頼部と、
前記リストからそのコンテンツに関する記録を削除する削除部と、
前記エージェントがそのコンテンツの収集を行った結果を受信する依頼結果受信部と、
を備え、
前記依頼結果受信部は、
前記エージェントがコンテンツを収集しなかった旨を受信した際には、
前記リストにそのコンテンツの場所を表す情報を再記録する
ことを特徴とする請求項12に記載のクローリング装置。 - 前記依頼部は、
前記サーバとの間のネットワーク距離が最も近いエージェントにコンテンツ収集を依頼する
ことを特徴とする請求項13に記載のクローリング装置。 - 前記記憶手段は、
前記エージェントと前記サーバとの接続成功率を格納しており、
前記依頼部は、
前記サーバとの接続成功率が最も高いエージェントにコンテンツ収集を依頼する
ことを特徴とする請求項13に記載のクローリング装置。 - ネットワーク上のコンテンツを収集するエージェント装置であって、
コンテンツの収集依頼を受信する依頼受信部と、
コンテンツ提供元のサーバとの間の接続確立を要求する要求部と、
そのサーバとの間の接続を確立する確立部と、
そのサーバが提供するコンテンツを収集する収集部と、
他のエージェント装置にコンテンツの収集を依頼する依頼部と、
を備え、
前記要求部は、
接続確立を要求する際に、
ネットワーク帯域が枯渇した際には前記サーバとの間の接続を優先的に切断してよい旨の通知を当該要求に含めておき、
前記収集部がコンテンツを収集している途中に、
前記通知に基づき前記サーバとの間の接続が切断された場合は、
前記依頼部は、
他のエージェント装置に対しそのコンテンツの収集を依頼する
ことを特徴とするエージェント装置。 - コンテンツの収集に失敗した前記エージェント装置のリスト(以下「選択済みエージェントリスト」)を格納する記憶手段を備え、
前記依頼部は、
前記選択済みエージェントリストを参照し、その選択済みエージェントリストに含まれていないエージェント装置にコンテンツの収集を依頼する
ことを特徴とする請求項16に記載のエージェント装置。 - 前記依頼部は、
前記選択済みエージェントリストに含まれておらず、
かつ、
前記サーバとの間のネットワーク距離が最も近いエージェント装置にコンテンツ収集を依頼する
ことを特徴とする請求項17に記載のエージェント装置。 - 前記記憶手段は、
前記エージェント装置と前記サーバとの接続成功率を格納しており、
前記依頼部は、
前記選択済みエージェントリストに含まれておらず、
かつ、
前記サーバとの接続成功率が最も高いエージェント装置にコンテンツ収集を依頼する
ことを特徴とする請求項17に記載のエージェント装置。 - 前記依頼部は、
ネットワーク上に存在する全てのエージェント装置がコンテンツの収集に失敗した際には、
前記収集依頼の送信元にその旨を通知する
ことを特徴とする請求項16ないし請求項19のいずれかに記載のエージェント装置。 - 請求項12ないし請求項15のいずれかに記載のクローリング装置と、
請求項16ないし請求項20のいずれかに記載のエージェント装置と、
コンテンツを提供するコンテンツサーバと、
を有することを特徴とするネットワークシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007149079A JP4867799B2 (ja) | 2007-06-05 | 2007-06-05 | クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム |
US12/155,430 US7877479B2 (en) | 2007-06-05 | 2008-06-04 | Bandwidth control system and method capable of reducing traffic congestion on content servers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007149079A JP4867799B2 (ja) | 2007-06-05 | 2007-06-05 | クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008306259A JP2008306259A (ja) | 2008-12-18 |
JP4867799B2 true JP4867799B2 (ja) | 2012-02-01 |
Family
ID=40095788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007149079A Expired - Fee Related JP4867799B2 (ja) | 2007-06-05 | 2007-06-05 | クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7877479B2 (ja) |
JP (1) | JP4867799B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595847B2 (en) * | 2008-05-16 | 2013-11-26 | Yellowpages.Com Llc | Systems and methods to control web scraping |
US9143618B2 (en) * | 2008-12-29 | 2015-09-22 | Shoretel, Inc. | Distributed audio conferencing architecture with optimum resource utilization and seamless scalability |
US9207983B2 (en) * | 2011-11-09 | 2015-12-08 | Infosys Limited | Methods for adapting application services based on current server usage and devices thereof |
WO2013118108A1 (en) * | 2012-02-09 | 2013-08-15 | Varonis Systems, Ltd. | A method and apparatus for secure enterprise collaboration |
US20130283097A1 (en) * | 2012-04-23 | 2013-10-24 | Yahoo! Inc. | Dynamic network task distribution |
US9413748B2 (en) * | 2013-03-15 | 2016-08-09 | Cisco Technology, Inc. | Content service on demand |
CN105281964B (zh) * | 2014-06-10 | 2019-09-17 | 南京中兴新软件有限责任公司 | 高并发下读写请求处理方法和适配层服务器 |
CN111522654A (zh) * | 2020-03-18 | 2020-08-11 | 大箴(杭州)科技有限公司 | 分布式爬虫的调度处理方法、装置及设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3394394B2 (ja) * | 1996-09-06 | 2003-04-07 | 日本電気株式会社 | ネットワーク接続品質制御方式 |
US6356622B1 (en) * | 1997-05-02 | 2002-03-12 | Paradyne Corporation | System and apparatus for enhancing a network link |
JPH10336197A (ja) * | 1997-06-02 | 1998-12-18 | Mitsubishi Electric Corp | Atm交換システム |
US6857025B1 (en) * | 2000-04-05 | 2005-02-15 | International Business Machines Corporation | Highly scalable system and method of regulating internet traffic to server farm to support (min,max) bandwidth usage-based service level agreements |
US6941380B2 (en) * | 2000-12-28 | 2005-09-06 | Nortel Networks Limited | Bandwidth allocation in ethernet networks |
JP2002300643A (ja) * | 2001-03-29 | 2002-10-11 | Ntt Comware Corp | 通話品質保証型携帯電話システム |
US7155502B1 (en) * | 2002-06-17 | 2006-12-26 | Packeteer, Inc. | Methods, apparatuses and systems facilitating distribution of updated traffic identification functionality to bandwidth management devices |
US7685296B2 (en) * | 2003-09-25 | 2010-03-23 | Microsoft Corporation | Systems and methods for client-based web crawling |
JP4606333B2 (ja) * | 2005-09-20 | 2011-01-05 | 富士通株式会社 | ルーティング制御方法 |
JP2008300908A (ja) * | 2007-05-29 | 2008-12-11 | Technical Research & Development Institute Ministry Of Defence | 衛星通信システム、通信統制局、統合ゲートウェイ装置及びそれらに用いる優先制御方法 |
-
2007
- 2007-06-05 JP JP2007149079A patent/JP4867799B2/ja not_active Expired - Fee Related
-
2008
- 2008-06-04 US US12/155,430 patent/US7877479B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20080304411A1 (en) | 2008-12-11 |
JP2008306259A (ja) | 2008-12-18 |
US7877479B2 (en) | 2011-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4867799B2 (ja) | クローリング方法、そのプログラムおよび装置、エージェント装置、ネットワークシステム | |
US9729675B2 (en) | Enhancement of upload and/or download performance based on client and/or server feedback information | |
CN107025234B (zh) | 一种信息推送方法及缓存服务器 | |
US9602613B2 (en) | Method and system for accelerating browsing sessions | |
EP2466856A1 (en) | Service realizing method and service system | |
US8984164B2 (en) | Methods for reducing latency in network connections and systems thereof | |
US8341285B2 (en) | Method and system for transferring files | |
US20030051042A1 (en) | Load balancing method and system for allocation of service requests on a network | |
US20150127837A1 (en) | Relay apparatus and data transfer method | |
WO2012034414A1 (zh) | 一种处理p2p业务的方法及*** | |
WO2017054578A1 (zh) | 一种报文转发方法、业务链代理装置及代理设备 | |
CN103973764A (zh) | 网络服务器装置及其控制方法 | |
CN101459650A (zh) | 业务路由方法、业务路由器、客户端设备及业务网络*** | |
US9397932B2 (en) | Systems and methods for routing network information | |
JP2007035053A (ja) | 異なる端末器間のセッション保持方法 | |
JP7131357B2 (ja) | 通信装置、通信方法、および通信プログラム | |
JP2000122912A (ja) | 資源収集方法及び資源収集装置 | |
JP2010113491A (ja) | ウェブ検索システム、ウェブ検索方法、およびウェブ検索プログラム | |
JP2001125821A (ja) | データ通信方法およびサーバ装置 | |
JP2007006366A (ja) | 通信制御システム | |
GB2507161A (en) | Enhancement of upload and/or download performance based on client and/or server feedback information | |
KR20040001336A (ko) | 인터넷에서 개인간 파일 공유기술을 이용한 푸쉬 방식컨텐츠 전달 시스템 및 그 방법 | |
CN112543191B (zh) | 一种负载均衡方法及装置 | |
JP4275029B2 (ja) | コンテキストによるネットワークシステムおよびその構築方法、プログラムおよび記録媒体 | |
JP2005122358A (ja) | ウェブコンテンツ配信システム、ウェブコンテンツ配信プログラム及びプロクシサーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100412 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110719 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110914 |
|
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: 20111018 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111031 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141125 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |