JP2009501496A - ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有 - Google Patents

ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有 Download PDF

Info

Publication number
JP2009501496A
JP2009501496A JP2008521402A JP2008521402A JP2009501496A JP 2009501496 A JP2009501496 A JP 2009501496A JP 2008521402 A JP2008521402 A JP 2008521402A JP 2008521402 A JP2008521402 A JP 2008521402A JP 2009501496 A JP2009501496 A JP 2009501496A
Authority
JP
Japan
Prior art keywords
local network
bandwidth consumption
data transfer
shared gateway
gateway
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.)
Granted
Application number
JP2008521402A
Other languages
English (en)
Other versions
JP2009501496A5 (ja
JP4801154B2 (ja
Inventor
マグダレナ ヘスター アンナ
ハーダー バーバラ
フランシス レウス エドワード
カオ カンチェン
アハメド ダラ マハムード
ゾーラン マイク
エス.ロバーツ ジェフリー
マハンカリ ナラヤナ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009501496A publication Critical patent/JP2009501496A/ja
Publication of JP2009501496A5 publication Critical patent/JP2009501496A5/ja
Application granted granted Critical
Publication of JP4801154B2 publication Critical patent/JP4801154B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

例示的な実施形態では、ローカルネットワーククライアントは共有ゲートウェイに関する情報にアクセスして、実際の帯域幅消費量を決定することができる。クライアントは、このような共有ゲートウェイの総容量を取得することもできる。クライアント自体の帯域幅消費に関する自らの認識を使用して、他のローカルネットワーククライアントの共有ゲートウェイの使用量を決定することができる。こうしたすべての情報、すなわち共有ゲートウェイの総容量、共有ゲートウェイの実際の使用量、およびローカルネットワーク内の他のクライアントによる使用量を使用して、クライアントは、バックグラウンドファイルの転送を調整またはスロットルすることによって、共有ゲートウェイを介する実際のデータ転送を使用可能な総容量の合理的なパーセンテージ内に維持することができる。つまり、クライアントは、共有ゲートウェイを介する使用量に基づいてクライアント自体のバックグラウンド転送システムのデータ転送を調整することによって、他のローカルネットワークコンピューティングマシンの共有ゲートウェイの使用を優先することになる。

Description

本発明は、ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有に関する。
コンピュータ化されたシステムは、人のタスクを行う能力に対して多くの利点を提供する。実際に、コンピュータシステムの情報を処理する能力は、私たちが生活し、仕事をする仕方を変容してきた。現在では一般的にコンピュータシステムは、コンピュータシステムが出現する前は手動で行われていたタスク(たとえば、ワードプロセシング、スケジューリング、データベース管理など)のホストを実行している。ごく最近では、複数のコンピューティングシステムが相互に接続されることによってコンピュータネットワークが構成され、コンピュータシステムはこうしたネットワークを介して電子的に通信し、データを共有することができる。結果として、コンピュータシステムで実行される多くのタスク(たとえば、電子メールのアクセス、Webブラウジング、マルチメディアコンテンツのダウンロードなど)には、コンピュータネットワーク(たとえばインターネット)を経由した1つまたは複数の他のシステムとの電子通信が含まれる。
多くの場合、コンピュータネットワーク上の電子通信には、サーバーコンピューティングシステム(本明細書では「サーバー」または「サービス」と呼ぶ)のサービス(たとえば、電子メール、Webサービスアカウント、アップデートアカウントなど)へのアクセス要求するクライアントコンピュータシステム(本明細書では「クライアント」または「コンピューティングデバイス」と呼ぶ)が含まれる。たとえば、今日、何百万台ものパーソナルコンピュータ(PC:personal computer)がインターネットに接続されており、さまざまなサーバーと通信している。このようなクライアントの多くは、リモートサーバーからインターネットを介して新しいソフトウェアまたはアップデートされたソフトウェアのダウンロードを要求することによりこうしたソフトウェアを入手している。
新しいソフトウェアおよびアップデートされたソフトウェアなどのデータをリモートネットワーク(たとえばインターネット)経由でPCにダウンロード/アップロードする従来の方法は、PCのユーザーがリモートネットワークを介してコンテンツにアクセス(たとえばインターネットをブラウズ)する機能に干渉する。処理速度が向上したことにより、ユーザーのブラウジングまたはデータ取得の体験上で大きなボトルネックとなるのはリモートネットワークへの帯域幅である。たとえば、一般的なダウンロード/アップロードの転送により、ネットワーク内のクライアントシステムからサーバーまでの間で最も低速のポイントが飽和することになる。低速のネットワークノードがインターネットゲートウェイデバイス(IGD:Internet Gateway Device)である場合に、このマシンとIGDを共有するその他のマシンの両方から発生する他のすべてのトラフィックは、こうしたマシンによるネットワークの利用を厳しく制限することによって影響を受ける。さらに、ダウンロード/アップロードが何らかの理由で中断された場合は(たとえば、リモートネットワークの接続が失われた場合)、ファイルの転送を最初から再開する必要があり、このようにして多くのネットワークリソースが無駄になることがある。他の従来のダウンロード/アップロードソフトウェアでは、ユーザーが送信を指定した時刻にスケジュールできるが、それでもこうしたスケジューリングによってユーザーはこれらの期間にわたって他のネットワークアクティビティに従事する機能を制限されることになる。
ソフトウェアなどのデータの転送によってユーザーはリモートネットワーク上の他のデータへのアクセス機能を制限されるが、今日のコンピュータシステムがますます普及し続ける状況においてこうしたソフトウェアやその他のコンテンツのダウンロード/アップロードは非常に重要である。たとえば、ソフトウェアアップデートの提供は、問題を修正し、PCのパフォーマンスを向上するため、PCユーザーにとって有益である。さらに、ソフトウェアベンダーにとっては製品サポートに関する電話の件数が減少し、したがって、アップデートを提供しない場合にベンダーがこうした電話の対応に割り当てる可能性のあるリソースが大幅に削減されるという効果がある。
リモートネットワークリンクを経由したデータのダウンロード/アップロードへの需要が高いことから、ソフトウェアアップデートなどのデータを転送する場合に他のリモートネットワークアクティビティへの妨害を軽減する試みがなされている。たとえば、最近システムはリモートネットワーク帯域幅の利用レベルが比較的低い期間(「リモートネットワークのアイドル期間」と呼ばれることもある)を決定するように構成されている。こうしたシステムでは、ローカルネットワークインターフェイス(たとえばネットワークカード)を使用して利用レベルのしきい値を計算することにより、帯域幅消費レベルの推定値を監視する。こうして計算されたしきい値を下回る場合は、クライアントおよびサーバー間のデータ転送は他のリモートネットワークアクティビティと干渉する可能性が低い。したがって、使用量のレベルがこのようなしきい値を下回る場合に、クライアントは定期的にサーバーに接続し、ソフトウェアまたはアップデートの小部分をダウンロードする。ソフトウェアプログラム、使用可能なアップデート、またはその他のデータのすべての部分が適切なデバイスに転送されるまで、このプロセスを継続することができる。換言すると、優先順位の低いデータのダウンロード/アップロードはリモートネットワークのアイドル期間に「バックグラウンド(background)」プロセスでリモートネットワークリンクを介して転送することができる。
こうしたバックグラウンドデータ転送システムには、他のネットワークアクティビティとの干渉を排除するという大きな効果があるが、このようなモデルにはいくつかの欠点もある。たとえば、前述のように、バックグラウンド転送システムによって実施されるスロットリング技術はローカルネットワークインターフェイス(たとえばネットワークカード)から取得されるネットワークトラフィックの測定値を利用して実効的な使用可能帯域幅を制御し、推定する。このアプローチは多くのネットワークトポロジにおいて妥当であるが、一部の構成ではこの技術を使用して取得できる情報はバックグラウンド転送システムが正確なスロットリングを行うために十分ではない。
このように問題のあるネットワークトポロジの例として、ローカルネットワーク上のコンピュータは適度に高速のネットワークリンク(たとえば100 Mbpsのネットワークハブおよびネットワークカード)を使用して相互に接続されているが、インターネット接続を提供するデバイス(たとえばデジタル加入者回線(DSL:Digital Subscriber Line)のモデム)ははるかに低速で動作する典型的なホームネットワークがある。このような場合に、DSLボックスは「ゲートウェイデバイス」の役割を果たし、実際にローカルネットワークと外部のネットワークまたはリモートネットワーク(たとえばインターネット)とのデータ転送を実現できる最高速度の上限を定めるネットワークのセグメントである。したがって、ネットワークトラフィックの測定がローカルネットワークインターフェイスレベルで実行された場合は、低速のゲートウェイデバイスに代表される「ボトルネック」を検出できない。さらに、ローカルネットワークに接続されたシステムによるゲートウェイデバイスでの全体的な帯域幅消費は、システムごとの孤立したネットワークインターフェイスからは測定できない。
上で指摘したバックグラウンド転送サービスの不備や欠点は、本発明の例示的な実施形態によって克服される。この要約では、後述の発明の詳細な説明でさらに説明するいくつかの概念を簡略化した形で紹介するために提供されることに留意されたい。しかし、この要約は、請求対象の重要な特徴または必須の特徴を特定するものではなく、また、請求対象の範囲を決定するために使用するものでもない。
1つの実施形態では、ローカルネットワークとリモートネットワークの間の共有ゲートウェイについて、他のローカルネットワークコンピューティングマシンの使用を優先することによって、共有ゲートウェイを介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定するための方法、システム、およびコンピュータプログラムプロダクトが提供される。本実施形態では、共有ゲートウェイを介してデータを転送するための総帯域幅容量が決定される。共有ゲートウェイは複数のローカルネットワーククライアンをリモートネットワークの1つまたは複数のコンピューティングシステムにリンクし、複数のローカルネットワーククライアントの少なくとも1つは、共有ゲートウェイを介した実際の帯域幅消費が事前に指定されたしきい値を下回る期間にデータファイルを転送するように構成されたバックグラウンドデータ転送モジュールを含む。さらに、共有ゲートウェイを介したデータ転送の実際の帯域幅消費に関する統計情報が受信される。また、バックグラウンドデータ転送モジュールを含む少なくとも1つのローカルネットワーククライアントに対応するデータ転送に関して、バックグラウンドデータ転送による帯域幅消費の量が決定される。その後で、共有ゲートウェイデバイスを介したデータ転送の総帯域幅容量と実際の帯域幅消費とが比較される。この比較に基づいて、バックグラウンドデータ転送による帯域幅消費の量をスロットルすることによって、複数のローカルネットワーククライアントの共有ゲートウェイを介した他のアクティビティへの干渉が軽減される。
本発明のその他の特徴と利点については、この後の説明で示すが、一部はこの説明から明らかとなるか、本発明の実施によって理解できよう。本発明の特徴と利点は、添付の特許請求の範囲に特に指定した手段および組合せによって実現でき、達成できる。本発明のこれらの特徴およびその他の特徴は、以下の説明と添付の特許請求の範囲からさらに完全に明らかになるか、本明細書の以下に示す本発明の実施によって理解できよう。
本発明の前述およびその他の利点と特徴を実現することができる態様を説明するために、以上に簡単に説明した本発明のより詳しい説明を、添付の図面に示す特定の実施形態を参照して記述することにする。これらの図面が本発明の代表的な実施形態を示すにすぎず、それゆえ本発明の範囲を限定するものとは見なされないことを認識した上で、本発明について添付の図面を使用しながらより具体的に詳細に記述し、説明することにする。
本発明は、共有ゲートウェイデバイスを介してバックグラウンドファイルまたはバックグラウンドデータを転送するための実効的な使用可能帯域幅を推定するための方法、システム、およびコンピュータプログラムプロダクトに及ぶ。本発明の実施形態は、以下で詳説するように、さまざまなコンピュータハードウェアまたはモジュールを含む専用コンピュータまたは汎用コンピュータを備えることができる。
前述のように、転送または受信システムのローカルネットワークインターフェイス(たとえばネットワークカード)で容量を決定し、帯域幅を測定するのはローカルなソリューションであり、共有ローカルネットワーク環境で実際の使用可能な帯域幅を誤って表現している。たとえば、システムが大容量のインターフェイスカード(たとえば10〜100 Mbps)と56kモデムによるインターネットへの限定されたリンクを有する場合に、転送速度は実際の56kモデムでなくネットワークインターフェイスカードで使用可能な帯域幅容量から導出される。複数のシステムが接続のポイントを共有する場合は、1つのシステムのローカルネットワークインターフェイスカードの容量と導出された使用可能帯域幅は、共有する接続ポイントを経由して送信または受信された他のシステムの累計トラフィックを計上していない。こうした不正確なスロットリングレート(throttling rates)によってボトルネックが発生し、リモートネットワークまたはインターネットの接続ポイントが飽和する可能性がある。
1つの例示的な実施形態により、以上で指摘したバックグラウンドファイル転送モデルの不備に対する1つのソリューションは、各ローカルネットワーククライアントがローカルネットワークの外部へのデータ転送についてその瞬間の帯域幅消費に関する情報を共有できるようにすることである。この情報には、バックグラウンドデータ転送の情報とフォアグラウンド帯域幅消費の両方を含めることができる。ローカルネットワークのクライアント間で共有されるゲートウェイデバイスの総容量に関する知識を使用して、各クライアントはゲートウェイを介した実際の帯域幅消費を決定し、これを共有ゲートウェイの容量と比較し、そしてしきい値に基づいて(以下で詳説するように)そのバックグラウンドデータ転送速度を適切に調整またはスロットルすることができる。
前述の例示的な実施形態は、現在のバックグラウンド転送サービスモデルの不備を克服するための1つのモデルを提供するが、このソリューションにもいくつかの不備や欠点がある。たとえば、ローカルネットワークの各クライアントはその情報をその他のローカルネットワークのコンピューティングデバイスと共有するように構成されるか、またはそうした能力を有するべきである。たとえ1台のコンピューティングデバイスがこのような能力を有していないだけでも、共有ゲートウェイを介したネットワークトラフィックを正確に表すことはほとんど不可能である。さらに、各コンピューティングデバイスの帯域幅消費に関する情報を共有すると、ローカルネットワークの各コンピュータ間で帯域幅消費に関する情報を共有する必要があるので、ローカルネットワーク上の負荷は増大する。
前述の欠点により、他の例示的な実施形態では、帯域幅の測定をローカルリンクとリモートネットワーク(たとえばインターネット)への接続との間にある共有ゲートウェイデバイスの外部に移動することによって、バックグラウンド転送サービスのスロットリング精度を向上するためのソリューションを提供する。こうした共有ゲートウェイデバイスは、インターネット接続共有ソフトウェアが動作するコンピュータ、ネットワークアドレス変換(NAT:Network Addressing Translation)ボックス、またはモデム、DSL回線、ケーブルモデム、T1回線などを共有するより高度なゲートウェイデバイスなどのデバイスを含むことができる。複数のシステムが、バイトカウンタサポートのゲートウェイデバイスを通して1つの接続ポイントを共有するので、バックグラウンド転送サービスは、どれだけの使用可能帯域幅をバックグラウンド転送サービスまたはバックグラウンドファイル転送に使用できるかを計算するときに、システムの累積的なインバウンドトラフィックおよびアウトバウンドトラフィックを考慮できる。
換言すると、ローカルネットワーククライアントは共有ゲートウェイから情報にアクセスし、共有ゲートウェイを介する実際の帯域幅消費の量を決定することができる。また、クライアントは、以下でより詳細に説明するさまざまな手段を通じて、このような共有ゲートウェイの総容量を取得することもできる。クライアントは、クライアント自体の共有ゲートウェイに入るまたは出るデータ転送の帯域幅消費に関する自らの知識を使用して、他のクライアントによる共有ゲートウェイの使用量を決定できる。こうしたすべての情報、すなわち共有ゲートウェイの総容量、共有ゲートウェイの実際の使用量、およびローカルネットワーク内の他のクライアントまたはコンピューティングデバイスによる使用量を用いて、自身のバックグラウンドファイルの転送を調整またはスロットルすることによって、共有ゲートウェイを介する実際のデータ転送を使用可能な総容量の合理的なまたは望ましいパーセンテージの範囲内に維持することができる。つまり、クライアントは、クライアント自体のバックグラウンド転送システムのデータ転送を調整することによって、他のローカルネットワークコンピューティングマシンによる共有ゲートウェイの使用を優先させることになる。
本発明のさまざまな実施形態についてさらに詳しく説明する前に、本発明の原理を実装するために使用できる適切なコンピューティングアーキテクチャについて図3に関連して説明する。以下の説明では、本発明の実施形態について、他の指定がない限り、1台または複数台のコンピュータによって実行される動作(acts)またはオペレーションのシンボリック表現を参照して説明する。したがって、こうした動作およびオペレーション(ときにコンピュータで実行されると称される)には、構造化された形式のデータを表現する電子信号についてコンピュータのプロセシングユニットによる操作が含まれることは理解されるであろう。この操作は、データを変形したりコンピュータのメモリシステム内の場所に保持したりして、この分野の当業者に周知の方法でコンピュータのオペレーションが再設定されたり変更されたりする。データが保持されるデータ構造は、データのフォーマットによって定義される特定のプロパティを有するメモリの物理的な場所である。しかし、本発明の原理について前述のコンテキストで説明されているが、これは限定を意味するものではなく、以下で説明するさまざまな動作およびオペレーションをハードウェアでも実施できることを当業者は理解するであろう。
図面に戻ると、同様の参照番号は同様の要素を示しており、適切なコンピューティング環境内で本発明の原理が実装されるものとして示されている。以下の説明は、本発明の図示された実施形態に基づいており、本明細書で明示的に説明しない代替の実施形態に関して本発明を限定するものと理解してはならない。
図3は、こうしたデバイスに使用できる例示的なコンピュータアーキテクチャを示す概略図である。説明のために、図示されたアーキテクチャは適切な環境の1つの例にすぎず、本発明の使用または機能の範囲に関するいかなる限定を示すものでもない。また、本コンピューティングシステムは、図3に示すコンポーネントの1つまたは組合せに関して依存性も要件もないものとする。
本発明の原理は、他のさまざまな汎用または専用のコンピューティング環境または通信環境または構成でも動作可能である。本発明で使用するのに適した周知のコンピューティングシステム、環境、および構成の例には、モバイル電話、ポケットコンピュータ、パーソナルコンピュータ、サーバー、マルチプロセッサシステム、マイクロプロセッサベースのシステム、ミニコンピュータ、メインフレームコンピュータ、および前述の任意のシステムまたはデバイスを含む分散コンピューティング環境などが含まれるが、これらに限定はされない。
その最も基本的な構成において、コンピューティングシステム300は一般に少なくとも1つのプロセシングユニット302とメモリ304を含む。メモリ304は揮発性(RAMなど)、不揮発性(ROMまたはフラッシュメモリなど)、あるいはその両方の組合せのいずれでもよい。この最も基本的な構成は、図1に破線306で示されている。この説明および請求項において、「コンピューティングシステム」はある機能を行うソフトウェア、ファームウェア、またはマイクロコードを実行できる任意のハードウェアコンポーネントまたはハードウェアコンポーネントの組合せとして定義される。コンピューティングシステムは、分散されて分散機能を実現することもできる。
ストレージメディアデバイスは、その他の特徴および機能を有していてもよい。たとえば、こうしたデバイスにはPCMCIAカード、磁気ディスクや光ディスク、および磁気テープが含まれるが、それらに限定されない追加のストレージ(リムーバブルおよび非リムーバブル)を含むことができる。こうした追加のストレージは、図3ではリムーバブルストレージ308および非リムーバブルストレージ310として示されている。コンピュータストレージメディアには、コンピュータ可読の命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を格納する任意の方法または技術で実装された、揮発性と不揮発性、およびリムーバブルと非リムーバブルのメディアが含まれる。メモリ304、リムーバブルストレージ308、非リムーバブルストレージ310は、いずれもコンピュータストレージメディアの例である。コンピュータストレージメディアには、RAM、ROM、EEPROM、フラッシュメモリなどのメモリ技術、CD−ROM、デジタル多用途ディスク(DVD:digital versatile disk)などの光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージなどの磁気ストレージデバイス、または必要な情報を格納でき、コンピューティングシステムからアクセスできる他の任意のメディアが含まれるが、これらに限定はされない。
本明細書で使用する限り、「モジュール」または「コンポーネント」という用語は、コンピューティングシステム上で実行されるソフトウェアオブジェクトまたはルーチンを表すことができる。本明細書で説明するさまざまなコンポーネント、モジュール、エンジン、およびサービスは、コンピューティングシステム上で実行されるオブジェクトまたはプロセスとして(たとえば個別のスレッドとして)実装することができる。本明細書で説明されているシステムおよび方法はソフトウェアとして実装されるのが好ましいが、ソフトウェアおよびハードウェアによる実装またはハードウェアによる実装も可能であり、想定されている。この説明において、「コンピューティングエンティティ」は本明細書ですでに定義した任意のコンピューティングシステムでも、コンピューティングシステム上で動作する任意のモジュールまたはモジュールの組合せでもよい。
さらに、コンピューティングシステム300は、ホストが他のシステムおよびデバイス(たとえばネットワーク320)と通信できるようにする通信チャネル312を収容してもよい。通信チャネル312は通信メディアの例である。通信メディアは、一般に搬送波やその他の搬送メカニズムのような変調データ信号にコンピュータ可読の命令、データ構造、プログラムモジュール、またはその他のデータなどを具体化し、任意の情報伝達メディアを含む。限定ではなく、例として、通信メディアには、有線ネットワークや直接ワイヤ接続などの有線メディア、音、ラジオ、RF、赤外線などの無線メディアが含まれる。コンピュータ可読メディアという用語は、本明細書で使用する限り、ストレージメディアと通信メディアの両方を含む。
コンピューティングシステム300は、さらにキーボード、マウス、ペン、音声入力コンポーネント、タッチ入力デバイスなどの入力コンポーネント314を有してもよい。出力コンポーネント316には、スクリーンディスプレイ、スピーカー、プリンタなど、およびこれらを駆動するレンダリングモジュール(「アダプタ」とも呼ばれる)が含まれる。コンピューティングシステム300は、パワーサプライ318を有する。すべてのこのようなコンポーネントは当業者には周知であり、本明細書では詳しく説明する必要はない。
図1AおよびlBは、例示的な実施態様によるバックグラウンドデータ転送モジュール135を利用する分散システム100のさまざまなトポロジーを示している。分散システム100は、図3に関連してすでに説明したコンピューティングシステム300と同様でもよいが、そうである必要はない。図1Aに示すように、分散システム100は共有ゲートウェイ120を介して接続されたローカルネットワーク125およびリモートネットワーク105の両方を含む。ローカルネットワーク125はリング構成(各クライアント140、145、150がリングの形に接続され115)で示されているが、本発明には他のトポロジーも使用できることに留意されたい。たとえば、図1Bでは、ローカルネットワーク125クライアント145、150、155、160は直列に接続されて115、ツリー状の構造を形成している。しかし、もちろん本発明はこうしたトポロジーのみに限定されず、ローカルネットワーク125およびその中のクライアント140、145、150、155、160は、任意の周知の態様で配置することができる。したがって、ローカルネットワークのクライアント140、145、150、155、160の任意の特定のトポロジーまたは構成は、本明細書では単に説明のために使用されており、本発明の範囲を限定するものでも縮小するものでもない。
ローカルネットワーク125のトポロジーまたは構成にかかわらず、リモートネットワーク105に対してローカルネットワーク125の流入または流出するデータまたはトラフィックは1つまたは複数の共有ゲートウェイ120を通過することになる。共有ゲートウェイは、一般的には異なるリモートネットワーク105への接続110の転送速度およびローカルネットワーク125内の接続115のデータフロー速度を有している。リモートネットワーク105は、ローカルネットワーク125の外部にある任意のタイプのネットワークでもよいことに留意されたい。たとえば、リモートネットワーク105は、ワイドエリアネットワーク(WAN:wide area network)、ローカルエリアネットワーク(LAN:local area network)、インターネット、仮想プライベートネットワーク(VPN:Virtual Private Network)などでもよい。バックグラウンドで動作するソフトウェアおよびソフトウェアアップデートは、前述のようにインターネットを介して発生するのが一般的であるが、本発明はいかなる特定のタイプのアプリケーションダウンロードまたはデータ転送にも限定されず、それゆえいかなる特定のタイプのリモートネットワーク105にも限定されない。したがって、特定のタイプのリモートネットワーク105またはローカルネットワーク125とリモートネットワーク105の間で実行されるバックグラウンドデータ転送のデータタイプの使用は、いずれも単に説明のために使用されており、明示的に請求されない限り、本発明の範囲を限定するものでも縮小するものでもない。
共有ゲートウェイ120を介して転送されるデータのタイプにもリモートネットワーク105のタイプにもかかわらず、例示的な実施形態は、ローカルネットワーク125の他のコンピューティングマシン(たとえば145、150)による共有ゲートウェイ120の使用を優先することにより、共有ゲートウェイ120を介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する。再び図1Aを参照すると、1つまたは複数のローカルネットワーク125のマシン140、145、150は、ローカルネットワークインターフェイス(LNI:Local Network Interface)130および/またはバックグラウンドデータモジュール135(BDTM:Background Data Transfer Module)を含むことができる。以下でさらに詳しく説明するように、共有ゲートウェイ120を介してバックグラウンドデータファイルを転送するための使用可能帯域幅を決定するにあたって、ローカルネットワークインターフェイス130またはバックグラウンドデータ転送モジュール135のいずれか1つを使用することができる。
前述のように、1つの例示的な実施形態では、ローカルネットワーク125の個々のクライアント140、145、150はそれぞれの間で(または図示されない中央のサービスを通して)共有ゲートウェイ120を介する帯域幅の利用を共有できる。さらに、共有データは共有ゲートウェイ120を介するフォアグラウンドの帯域幅消費とバックグラウンドの帯域幅消費に分割することができる。共有ゲートウェイ120の総容量がわかると、バックグラウンドデータ転送モジュール135を使用して共有ゲートウェイ120を介したバックグラウンドデータ転送をスロットルすることにより、ローカルネットワークで実行される他のリモートネットワーク105のアクティビティとの干渉を軽減する助けとなることができる。換言すると、共有ゲートウェイ120の総容量と各クライアント140、145、150のフォアグラウンド/バックグラウンドの使用量に基づいて、バックグラウンドの使用量をスロットルして、こうした使用量を他のリモートネットワーク105アクティビティと干渉しないように決定されたしきい値(たとえば、実際の総帯域幅すなわちフォアグラウンド/バックグラウンドの総使用量の5%)未満に維持できる。
共有ゲートウェイ120の総容量は、任意の数の周知の方法で決定することができることに留意されたい。たとえば、共有ゲートウェイ120の容量の定格値を使用してその総容量を推定することができる。しかし、一般的にこうした定格値は正確ではない。したがって、総容量は、共有ゲートウェイ120を介する最大トラフィック量を連続的に監視することによって共有ゲートウェイ120にわたって推定することができる。新しい最大値が測定されるたびに、こうした値を共有ゲートウェイ120の総容量の推定値として使用してもよい。もちろん、本発明では共有ゲートウェイ120の総容量を決定するためにこれ以外の方法を使用することもできる。したがって、共有ゲートウェイ120の総容量を決定するための特定の方法は、いずれも本明細書では単に説明のために使用されており、明示的に請求されない限り、本発明の範囲を限定するものでも縮小するものでもない。
他の例示的な実施形態により、さまざまなローカルネットワーク125クライアント140、145、150の帯域幅消費に関する情報を共有するのではなく、他のローカルネットワークコンピューティングマシンによる共有ゲートウェイ120の使用を優先する。図1Cを参照すると、この実施形態も前述のような同様の態様で共有ゲートウェイ120による総帯域幅容量165を決定する。さらに、前述のように、クライアント140はバックグラウンドデータ転送モジュール135を使用して、クライアント自体の共有ゲートウェイ120を介する総帯域幅消費(バックグラウンドデータ転送の帯域幅消費180を含む)を決定することができる。
しかし、上述のプロセスとは異なり、任意の特定の時点における共有ゲートウェイ120の実際の帯域幅消費に関する追加の統計情報170を生成し、クライアント140に転送できる。この情報は、共有ゲートウェイ120の総トラフィック(入出の両方)の推定値を表す。以下でより詳細に説明するように、この情報はユニバーサルプラグアンドプレイ(UPnP:Universal Plug ‘n Play)などの検出モジュールを使用して取得できる。
このすべての情報(すなわち、総帯域幅容量165、実際の帯域幅消費に関する統計情報170、クライアントの総帯域幅消費175、およびバックグラウンドデータ転送による帯域幅消費180)を使用して、バックグラウンドデータ転送モジュール135は、共有ゲートウェイ120を介したバックグラウンドデータ転送をスロットル185する。スロットリング185は、前述のデータの比較の結果に依存してバックグラウンドデータ転送の増加または減少とすることができることに留意されたい。したがって、明示的に請求されない限り、「スロットリング」という用語はバックグラウンドファイルの転送の速度の増加と減少の両方を含むように広義に解釈するものとする。
1つの実施形態では、バックグラウンドデータ転送モジュール135はクライアント自体の帯域幅消費175を実際の帯域幅消費170から差し引き、ローカルネットワーク125の他のクライアント(たとえば、145、150)のアクティビティを決定する。バックグラウンドデータ転送モジュール135は、総帯域幅容量165と他のクライアント145、150の使用量に基づいて、他のクライアント145、150を優先し、他のアクティビティ(たとえば他のクライアント145、150のアクティビティ)が総帯域幅容量165の特定のパーセンテージに維持されることを保証する。バックグラウンドデータ転送モジュール135は、残った帯域幅、すなわち共有ゲートウェイ120を介する最大ネットワーク容量の推定値から現在のネットワーク使用量を差し引いたもののみを使用するようにそのネットワーク使用量を調整185できる。このように、クライアント140は、ローカルネットワーク125の他のコンピューティングマシンの共有ゲートウェイ120の使用を優先する。
バックグラウンドデータ転送モジュール135は、他のクライアント145、150のアクティビティに関する情報を使用してバックグラウンドデータ転送をスロットル185したが、本発明には他の比較やしきい値によって決定した値も使用できることに留意されたい。たとえば、バックグラウンドデータ転送モジュール135は、総帯域幅容量に対する使用量のパーセンテージと実際の帯域幅消費170に基づいて、共有ゲートウェイ120を介するバックグラウンドデータ転送をスロットル185することができる。たとえば、バックグラウンドデータ転送モジュール135は、使用量または帯域幅消費のパーセンテージを一定の比率またはほぼ一定の比率に維持するようにバックグラウンドデータ転送をスロットル185することもできる。もちろん、共有ゲートウェイ120からのデータの他の使用量175とこうした情報の特定のクライアント140による使用量175との比較を本発明に使用できる。したがって、バックグラウンドデータ転送を決定またはスロットル185するために共有ゲートウェイ120からの情報とクライアント140からの帯域幅消費175についての特定の比較は、いずれも単に説明のために使用されており、明示的に請求されない限り、本発明の範囲を限定するものでも縮小するものでもない。
バックグラウンドデータ転送をスロットル185するために使用するしきい値や情報にかかわらず、他の例示的な実施形態では、使用可能な帯域幅は送信および受信の合計バイト数でいずれの帯域幅消費が大きいか、またはいずれの使用可能帯域幅が小さいかに基づいて、ローカルネットワークインターフェイス130または共有ゲートウェイ120のいずれかから計算することができる。たとえば、転送システムのローカルネットワークインターフェイス130カードの測定の範囲内で、共有ゲートウェイ120の帯域幅消費が小さく、使用可能帯域幅が大きい場合に、バックグラウンドデータ転送モジュールは最小の使用可能帯域幅(この場合はローカルネットワークインターフェイス130カード)の量のみを消費するように転送速度をスロットル185することができる。したがって、バックグラウンドデータ転送モジュール135は定期的に(たとえば、毎秒1回)転送速度を確認し、帯域幅消費の最大値または使用可能帯域幅の最小値に基づいて調整する必要がある。
これに代えてまたはこれと併用して、例示的な実施形態では前述のクライアントが共有する実施形態および共有ゲートウェイ120に関する情報165、170の両方を使用して、バックグラウンドデータとローカルネットワークインターフェイスの使用可能帯域幅を計算し、制御することもできる。併用する場合は、共有ゲートウェイ120から得られる情報165、170の共有した処理および利用を比較することにより、共有ゲートウェイ120を介した実際のデータ転送とローカルネットワーククライアント140、145、150による使用量のより正確な値を決定できる可能性があることに留意されたい。
前述のように、例示的な実施形態ではバックグラウンドデータ転送システムがユニバーサルプラグアンドプレイ(UPnP)を使用して共有ゲートウェイ120の統計カウンタを検出し、照会することができる。統計カウンタ(たとえば、実際の帯域幅消費に関する統計情報170または総帯域幅容量165)のプールと共有ゲートウェイ120の有無は、定期的に(たとえば毎秒1回)行うことができる。したがって、バックグラウンド転送システムは、ゲートウェイデバイスがローカルネットワーク125に追加またはローカルネットワーク125から削除されることをいつでも認識しているべきである。これで、スロットリング185に使用されるアルゴリズムは、任意の共有ゲートウェイ120(または場合によってはその他のデバイス)の追加または削除についてのUPnP通知の受領により更新されるべきである。
例示的な実施形態は、ローカルネットワーク125内に複数の共有ゲートウェイ120デバイスがある場合にも使用できることに留意されたい。このような場合には、バックグラウンド転送システムは、使用可能帯域幅が計算され、バックグラウンド転送が伝搬する同じ共有ゲートウェイ120に整合するファイルバックグラウンド転送速度を適用する必要がある。他の例示的な実施形態は、転送システムに使用可能な1つまたは複数の接続ポイントの背後に複数の共有ゲートウェイ120がある場合に、バックグラウンドデータ転送モジュール135は、システムの割り当てに従って1つの共有ゲートウェイ120の別のゲートウェイに対する所与の重みと性能を尊重すべきである。したがって、バックグラウンドデータ転送モジュール135は、デバイスにバックグラウンドデータ転送速度を、システムによって指定された適切な重みと優先順位と共に照会し、スロットル185することができる。
他の例示的な実施形態では、バックグラウンドデータ転送モジュール135は共有ゲートウェイ120および関連のリモートネットワーク105の接続とは別の接続110および接続デバイスを使用するときを認識し、それに応じてスロットリング185を計算する。たとえば、システムがセルラアダプタ(cellular adaptor)およびセルラネットワーク(cellular network)経由でリモートネットワーク105にログオンする場合に、バックグラウンドデータ転送モジュール135はシステムのローカルネットワークインターフェイス130(たとえばネットワークインターフェイスカード)に対して自動的にスロットル185し、共有ゲートウェイ120がない場合の帯域幅サイズ(たとえば、時間にわたって送信/受信されたバイト数/サーバーまでの推定時間と実際の時間を追跡することによって推定される)を推定することができる。
モバイルユーザーはその環境内の新しい場所に移動できるべきであるので、バックグラウンドデータ転送モジュール135は、別の共有ゲートウェイまたは他の転送デバイスの使用可能帯域幅に基づいて、直ちにかつ自動的にそのバックグラウンドファイル転送速度を調整できることを想定すべきである。たとえば、ラップトップが新しい場所に移動すると、UPnPを使用して共有ゲートウェイ120をアクティブに検出し、使用可能帯域幅を照会するときに新しい共有ゲートウェイ120をバックグラウンドデータ転送モジュール135に公開することができる。さらに、ラップトップが共有ゲートウェイ120のないネットワーク環境に移動した場合は、これを検知し、バックグラウンドデータ転送を中断することなく直ちにローカルネットワーク統計にフォールバックすることができる。加えて、新しい共有ゲートウェイ120がローカルネットワーク125に追加された場合に、UPnPが新しいデバイスおよび/または置換のデバイスを検出するとすぐにバックグラウンドデータ転送モジュール135に通知するべきである。
別の例示的な実施形態によれば、バックグラウンドデータ転送モジュール135を使用して、共有ゲートウェイ120を介して送信された総バイト数または受信された総バイト数が事前に指定された期間に変更されていないときを決定することができる。こうした場合において、バックグラウンドデータ転送モジュール135はカウンタが「スタック(stuck)」されていると見なすことができ、ローカルネットワークインターフェイスカード130の値のみに基づいて転送を評価することができる。または、可能な場合はローカルネットワーク125クライアント140、145、150間での共有情報を使用することもできる。
また、本発明は機能的なステップおよび/または非機能的な動作を備える方法の観点から説明することもできる。以下は、本発明を実施する上で実行できるステップおよび/または動作の説明である。通常、機能的なステップは達成される結果の観点から本発明を説明するのに対して、非機能的な動作は特定の結果を実現するためのより具体的な動作を説明する。機能的なステップおよび/または非機能的な動作は特定の順序で説明でき、請求できるが、本発明はステップおよび/または動作のいかなる特定の順序または組合せにも限定される必要はない。さらに、ステップおよび/または動作の使用は請求項の引用であり、以下に示す図2の流れ図の説明において、こうした用語(terms)の望ましい具体的な使い方を指定するために使用される。
図2は、本発明のさまざまな例示的実施形態の流れ図を示している。以下に示す図2の説明は、場合によっては図1A〜Cの対応する要素を参照している。これらの図面から特定の要素を参照できるが、こうした要素は単に説明のために使用されており、明示的に請求されない限り、本発明の範囲を限定するものでも縮小するものでもない。
より具体的に言えば、図2は他のローカルネットワークコンピューティングマシンの共有ゲートウェイの使用を優先することにより、ローカルネットワークとリモートネットワークとの間で共有ゲートウェイを介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する方法200の流れ図を示している。方法200は、共有ゲートウェイを介した他のアクティビティとの干渉を軽減するステップ230を含む。ステップ230は、共有ゲートウェイを介してデータを転送するための総帯域幅容量を決定する動作205を含む。たとえば、共有ゲートウェイ120の総帯域幅容量165は、ゲートウェイ120に割り当てられた定格値に基づいて決定することができる。あるいは、総帯域幅容量165は、共有ゲートウェイ120を介して利用される最大帯域幅の統計的な監視を通じて推定することもできる。
共有ゲートウェイ120は、複数のローカルネットワーク125クライアント140、145、150、155、160をリモートネットワーク105内の1つまたは複数のコンピューティングシステムにリンクすることに留意されたい。リモートネットワークは、インターネット、ワイドエリアネットワーク(WAN)、仮想プライベートネットワーク(VPN)、インターネットゲートウェイデバイス(IGD)経由で接続されたサブネットにサブ分割されたイントラネットとすることができる。さらに、複数のローカルネットワーククライアントの少なくとも1つ、たとえばクライアント140は、共有ゲートウェイ120を介した実際の帯域幅消費が事前に指定されたしきい値を下回る期間にデータファイルを転送するように構成されたバックグラウンドデータ転送モジュール135を含むことになる。
ステップ230は、さらに共有ゲートウェイを介したデータ転送の実際の帯域幅消費に関する統計情報を受信する動作210も含む。たとえば、クライアント140は共有ゲートウェイ120を介したデータ転送の実際の帯域幅消費に関する統計情報170を受信する。UPnPを使用して、共有ゲートウェイデバイス上のデータ転送の実際の帯域幅消費に関する統計情報170を取得することができることに留意されたい。加えて、UPnPを使用して共有ゲートウェイ120を介する最大のデータ転送速度に関するデータを取得することによって総帯域幅容量165を決定することができる。
ステップ230は、さらにバックグラウンドデータ転送の帯域幅消費の量を決定する動作215を含む。たとえば、クライアント140のバックグラウンドデータ転送モジュール135は、共有ゲートウェイを介したデータ転送のクライアント自体のバックグラウンドデータ転送の帯域幅消費180を決定することができる。
この後に、ステップ230は共有ゲートウェイを介したデータ転送の総帯域幅容量と実際の帯域幅消費を比較する動作220を含む。この比較に基づいて、ステップ230は、バックグラウンドデータ転送の帯域幅消費の量をスロットルする動作225を含む。たとえば、バックグラウンドデータ転送モジュール135は、総帯域幅容量165と実際の帯域幅消費に関する統計情報170を比較して、共有ゲートウェイ120を介するバックグラウンドデータ転送速度をスロットル185することができる。スロットリングは、比較の結果に基づいて共有ゲートウェイ120を介する帯域幅消費の増加にも減少にもなり得る。
前述のように、コンピューティングデバイス140のバックグラウンドデータ転送速度をスロットル185するさまざまな方法において、総帯域幅容量165と実際の帯域幅消費に関する統計情報170を使用することができることに留意されたい。たとえば、バックグラウンドデータ転送の帯域幅消費180は、総帯域幅容量165と比較した実際の帯域幅消費170の特定のパーセンテージでもよい。このようにして、クライアント140の共有ゲートウェイデバイス120を介した総帯域幅消費180を総帯域幅容量165および実際の帯域幅消費170と比較することにより、他のローカルネットワーククライアント145、150の共有ゲートウェイ120を介した帯域幅消費を決定することができる。
このような場合では、共有ゲートウェイデバイス120を介したバックグラウンドデータ転送速度のスロットリング185はさらにローカルネットワークの他のクライアント145、150の帯域幅消費に基づいてもよい。たとえば、バックグラウンドデータ転送の帯域幅消費のスロットリング185は、他のローカルネットワークコンピューティングデバイス145、150の共有ゲートウェイ120を介したデータ転送の帯域幅消費、共有ゲートウェイ120を介したデータ転送の総帯域幅容量、および共有ゲートウェイを介したデータ転送の実際の帯域幅消費170に対するバックグラウンドデータ転送帯域消費のパーセンテージに基づいてもよい。
別の例示的な実施形態では、ローカルネットワークの帯域幅消費は、ローカルネットワーク125内のクライアント140、145、150、155、160のローカルネットワークインターフェイス130を使用して決定することができる。決定されたローカルネットワークの帯域幅消費は、ゲートウェイ120を介した帯域幅消費と比較することができる。この比較に基づき、バックグラウンドデータ転送帯域幅消費の量をスロットル185するにあたって、決定されたローカルネットワーク帯域幅消費または共有ゲートウェイ120を介したデータ転送の実際の帯域幅消費170を使用することができる。
さらに他の実施形態では、複数のローカルネットワーククライアント140、145、150、155、160のそれぞれは、バックグラウンドデータ転送モジュール135を含む。この実施形態では、共有ゲートウェイ120を介した帯域幅消費は、複数のローカルネットワーククライアント140、145、150、155、160のそれぞれのバックグラウンドデータ転送について決定される。この決定に基づいて、複数のローカルネットワーククライアント140、145、150、155、160の1つまたは複数のバックグラウンドデータ転送は、共有ゲートウェイデバイス120の実際の帯域幅消費の量170が事前に指定されたしきい値未満に維持されるようにスロットルされる。
本発明は、その趣旨または本質的な特性を逸脱することなく他の特定の形態でも実施できる。説明した実施形態は、あらゆる側面において例示的なものにすぎず、限定的なものと見なしてはならない。それゆえ、本発明の範囲は前述の説明でなく添付の特許請求の範囲によって指示される。請求項の意味および均等の範囲内の変更はすべてその範囲に含まれるものとする。
例示的な実施態様によるバックグラウンドデータ転送モジュールを利用するローカルネットワーク構成を示す図である。 例示的な実施態様によるバックグラウンドデータ転送モジュールを利用するローカルネットワークシステムの代替のトポロジーを示す図である。 例示的な実施態様によってどのようにバックグラウンドデータ転送モジュールを利用できるかについてのより詳細な説明を示す図である。 例示的な実施形態による共有ゲートウェイを介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する方法の流れ図である。 図3は、本発明のさまざまな特徴を実装するための適切な動作環境を提供する例示的なコンピューティングシステムを示す図である。

Claims (20)

  1. 分散コンピューティングシステムにおいて、ローカルネットワークとリモートネットワークの間にある共有ゲートウェイについて、他のローカルネットワークコンピューティングマシンの使用を優先することにより、前記共有ゲートウェイを介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する方法であって、前記方法は、
    複数のローカルネットワーククライアントをリモートネットワークの1つまたは複数のコンピューティングシステムにリンクする共有ゲートウェイを介するデータ転送の総帯域幅容量を決定する動作であって、前記複数のローカルネットワーククライアントの少なくとも1つは、前記共有ゲートウェイを介した実際の帯域幅消費が事前に指定されたしきい値を下回る期間にデータファイルを転送するように構成されたバックグラウンドデータ転送モジュールを含む動作と、
    前記共有ゲートウェイを介するデータ転送の前記実際の帯域幅消費に関する統計情報を受信する動作と、
    前記バックグラウンドデータ転送モジュールを含む前記複数のローカルネットワーククライアントの前記少なくとも1つに対応するデータ転送のバックグラウンドデータ転送の帯域幅消費量を決定する動作と、
    少なくとも前記共有ゲートウェイを介したデータ転送の前記総帯域幅容量と実際の帯域幅消費を比較する動作と、
    前記比較に基づいて、バックグラウンドデータ転送の前記帯域幅消費の量をスロットルすることによって、前記複数のローカルネットワーククライアントの前記共有ゲートウェイを介する他のアクティビティとの干渉を軽減する動作と
    を備えることを特徴とする方法。
  2. 前記方法は、
    前記複数のローカルネットワーククライアントの前記少なくとも1つの前記共有ゲートウェイを介した総帯域幅消費を決定する動作と、
    前記複数のローカルネットワーククライアントの前記少なくとも1つの前記共有ゲートウェイを介した前記総帯域幅消費を前記共有ゲートウェイ介するデータ転送の前記総帯域幅容量および実際の帯域幅消費と比較することにより、前記複数のローカルネットワーククライアントの中から他のローカルネットワーククライアントの前記共有ゲートウェイを介した帯域幅消費を決定する動作であって、前記共有ゲートウェイを介した前記バックグラウンドデータ転送の帯域幅消費量をスロットルすることは前記他のローカルネットワーククライアントの帯域幅消費にさらに基づく動作と
    をさらに備えることを特徴とする請求項1に記載の方法。
  3. 前記バックグラウンドデータ転送の帯域幅消費量をスロットルすることは、前記他のローカルネットワーククライアントの前記共有ゲートウェイを介した前記帯域幅消費、前記共有ゲートウェイを介したデータ転送の前記総帯域幅容量、および前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費に対するバックグラウンドデータ転送の帯域幅消費のパーセンテージに基づいて決定されることを特徴とする請求項2に記載の方法。
  4. 前記方法は、
    前記複数のローカルネットワーククライアントの1つまたは複数の1つまたは複数のローカルネットワークインターフェイスを使用したローカルネットワーク帯域幅消費を決定する動作と、
    前記決定されたローカルネットワーク帯域幅消費を、前記共有ゲートウェイを介した前記帯域幅消費と比較する動作と、
    前記バックグラウンドデータ転送の帯域幅消費量をスロットルするにあたって、前記比較に基づき、前記決定されたローカルネットワーク帯域幅消費または前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費を使用する動作と
    をさらに備えることを特徴とする請求項1に記載の方法。
  5. UPnPを使用して、前記共有ゲートウェイ上のデータ転送の実際の帯域幅消費に関する前記統計情報を取得することを特徴とする請求項1に記載の方法。
  6. 前記複数のローカルネットワーククライアントのそれぞれはバックグラウンドデータ転送モジュールを含み、前記方法は、
    前記複数のローカルネットワーククライアントのそれぞれのバックグラウンドデータ転送について、少なくとも前記共有ゲートウェイを介した前記帯域幅消費を決定する動作と、
    前記決定に基づき、前記共有ゲートウェイの前記実際の帯域幅消費量が事前に指定されたしきい値未満に維持されるように、前記複数のローカルネットワーククライアントの1つまたは複数のバックグラウンドデータ転送をスロットルする動作と
    をさらに備えることを特徴とする請求項1に記載の方法。
  7. 分散コンピューティングシステムにおいて、ローカルネットワークとリモートネットワークの間にある共有ゲートウェイについて、他のローカルネットワークコンピューティングマシンの使用を優先することにより、前記共有ゲートウェイを介してバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する方法であって、
    少なくとも前記共有ゲートウェイの総帯域幅容量と前記共有ゲートウェイを介してデータを転送するための実際の帯域幅消費に関する統計情報との比較に基づき、複数のローカルネットワーククライアントの少なくとも1つについて決定されたバックグラウンドデータ転送の帯域幅消費量をスロットルすることによって、前記共有ゲートウェイを介する他のアクティビティとの干渉を軽減するステップであって、前記共有ゲートウェイは前記複数のローカルネットワーククライアントをリモートネットワークの1つまたは複数のコンピューティングシステムにリンクし、前記複数のローカルネットワーククライアントの前記少なくとも1つは、前記共有ゲートウェイを介した実際の帯域幅消費が事前に指定したしきい値未満である期間にデータファイルを転送するように構成されたバックグラウンドデータ転送モジュールを含むステップと
    を備えることを特徴とする方法。
  8. 前記方法は、
    前記複数のローカルネットワーククライアントの前記少なくとも1つの前記共有ゲートウェイを介する総帯域幅消費を決定する動作と、
    前記複数のローカルネットワーククライアントの前記少なくとも1つの前記共有ゲートウェイを介する前記総帯域幅消費を、前記共有ゲートウェイを介する前記総帯域幅容量および実際の帯域幅消費と比較することにより、前記複数のローカルネットワーククライアントの中から他のローカルネットワーククライアントの前記共有ゲートウェイを介した帯域幅消費を決定する動作であって、前記共有ゲートウェイを介した前記バックグラウンドデータ転送の帯域幅消費量をスロットルすることは前記他のローカルネットワーククライアントの帯域幅消費にさらに基づくステップと
    をさらに備えることを特徴とする請求項7に記載の方法。
  9. 前記バックグラウンドデータ転送の帯域幅消費量の前記スロットリングは、前記他のローカルネットワーククライアントの前記共有ゲートウェイを介した前記帯域幅消費、前記共有ゲートウェイを介したデータ転送の前記総帯域幅容量、および前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費に対するバックグラウンドデータ転送の帯域幅消費のパーセンテージに基づいて決定されることを特徴とする請求項8に記載の方法。
  10. 前記方法は、
    前記複数のローカルネットワーククライアントの1つまたは複数の1つまたは複数のローカルネットワークインターフェイスを使用してローカルネットワーク帯域幅消費を決定する動作と、
    前記決定されたローカルネットワーク帯域幅消費を、前記共有ゲートウェイを介する前記帯域幅消費と比較する動作と、
    前記バックグラウンドデータ転送の帯域幅消費量をスロットルするにあたって、前記比較に基づき、前記決定されたローカルネットワーク帯域幅消費または前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費を使用する動作と
    をさらに備えることを特徴とする請求項7に記載の方法。
  11. UPnPを使用して、前記共有ゲートウェイ上のデータ転送の実際の帯域幅消費に関する前記統計情報を取得することを特徴とする請求項7に記載の方法。
  12. 前記複数のローカルネットワーククライアントのそれぞれはバックグラウンドデータ転送モジュールを含み、前記方法は、
    少なくとも前記複数のローカルネットワーククライアントのそれぞれのバックグラウンドデータ転送の前記共有ゲートウェイを介した前記帯域幅消費を決定する動作と、
    前記決定に基づき、前記共有ゲートウェイの前記実際の帯域幅消費量が事前に指定されたしきい値未満に維持されるように、前記複数のローカルネットワーククライアントの1つまたは複数のバックグラウンドデータ転送をスロットルする動作と
    をさらに備えることを特徴とする請求項7に記載の方法。
  13. 分散コンピューティングシステムにおいて、ローカルネットワークとリモートネットワークの間にある共有ゲートウェイについて、他のローカルネットワークコンピューティングマシンの使用を優先することにより、前記共有ゲートウェイを介したバックグラウンドファイルを転送するための実効的な使用可能帯域幅を制御し、推定する方法を実施するためのコンピュータプログラムプロダクトであって、プロセッサによって実行されるとpub−subコンピューティングシステムに、
    複数のローカルネットワーククライアントをリモートネットワークの1つまたは複数のコンピューティングシステムにリンクする共有ゲートウェイを介したデータ転送の総帯域幅容量を決定することであって、前記複数のローカルネットワーククライアントの少なくとも1つは、前記共有ゲートウェイを介した実際の帯域幅消費が事前に指定されたしきい値を下回る期間にデータファイルを転送するように構成されたバックグラウンドデータ転送モジュールを含むことと、
    前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費に関する統計情報を受信することと、
    前記バックグラウンドデータ転送モジュールを含む前記複数のローカルネットワーククライアントの前記少なくとも1つに対応するデータ転送についてバックグラウンドデータ転送の帯域幅消費量を決定することと、
    少なくとも前記共有ゲートウェイを介するデータ転送の前記総帯域幅容量を実際の帯域幅消費と比較することと、
    前記比較に基づいて、バックグラウンドデータ転送の前記帯域幅消費の量をスロットルすることによって、前記複数のローカルネットワーククライアントの前記共有ゲートウェイを介した他のアクティビティとの干渉を軽減することと
    を行わせるコンピュータ実行可能命令を格納した1つまたは複数のコンピュータ可読メディアを備えたことを特徴とするコンピュータプログラムプロダクト。
  14. 前記リモートネットワークは、インターネット、ワイドエリアネットワーク、仮想プライベートネットワーク、インターネットゲートウェイデバイス経由で接続されたサブネットにサブ分割されたイントラネットの1つであることを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
  15. 前記分散コンピューティングシステムに、
    前記複数のローカルネットワーククライアントの前記少なくとも1つの前記共有ゲートウェイを介する総帯域幅消費を決定することと、
    前記複数のローカルネットワーククライアントの少なくとも1つの前記共有ゲートウェイを介する前記総帯域幅消費を、前記共有ゲートウェイを介した前記総帯域幅容量および実際の帯域幅消費と比較することにより、前記複数のローカルネットワーククライアントの中から他のローカルネットワーククライアントの前記共有ゲートウェイを介した帯域幅消費を決定することであって、前記共有ゲートウェイを介した前記バックグラウンドデータ転送の帯域幅消費量をスロットルすることは前記他のローカルネットワーククライアントの前記帯域幅消費に基づくことと
    を行わせるコンピュータ実行可能命令をさらに備えたことを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
  16. 前記バックグラウンドデータ転送の帯域幅消費量の前記スロットリングは、前記他のローカルネットワーククライアントの前記共有ゲートウェイを介した前記帯域幅消費、前記共有ゲートウェイを介したデータ転送の前記総帯域幅容量、および前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費に対するバックグラウンドデータ転送帯域幅消費のパーセンテージに基づいて決定されることを特徴とする請求項15に記載のコンピュータプログラムプロダクト。
  17. 前記分散コンピューティングシステムに、
    前記複数のローカルネットワーククライアントの1つまたは複数の1つまたは複数のローカルネットワークインターフェイスを使用してローカルネットワーク帯域幅消費を決定することと、
    前記決定されたローカルネットワーク帯域幅消費を、前記共有ゲートウェイを介した前記帯域幅消費と比較することと、
    前記バックグラウンドデータ転送の帯域幅消費の量をスロットルするにあたって、前記比較に基づき、前記決定されたローカルネットワーク帯域幅消費または前記共有ゲートウェイを介したデータ転送の前記実際の帯域幅消費を使用することと
    を行わせるコンピュータ実行可能命令をさらに備えたことを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
  18. 前記データ転送は、前記ローカルネットワークの入出の両方のデータ転送を含むことを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
  19. UPnPを使用して、前記共有ゲートウェイ上のデータ転送の前記実際の帯域幅消費に関する統計情報を取得することを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
  20. 前記複数のローカルネットワーククライアントのそれぞれはバックグラウンドデータ転送モジュールを含み、前記コンピュータプログラムプロダクトは、前記分散コンピューティングシステムに、
    少なくとも前記複数のローカルネットワーククライアントのそれぞれのバックグラウンドデータ転送の前記共有ゲートウェイを介した前記帯域幅消費を決定することと、
    前記決定に基づき、前記共有ゲートウェイの前記実際の帯域幅消費量が事前に指定されたしきい値未満に維持されるように、前記複数のローカルネットワーククライアントの1つまたは複数のバックグラウンドデータ転送をスロットルすることと
    を行わせるコンピュータ実行可能命令をさらに備えたことを特徴とする請求項13に記載のコンピュータプログラムプロダクト。
JP2008521402A 2005-07-15 2006-06-21 ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有 Expired - Fee Related JP4801154B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/182,976 US7603473B2 (en) 2005-07-15 2005-07-15 Background network bandwidth sharing behind gateway devices
US11/182,976 2005-07-15
PCT/US2006/024301 WO2007011491A2 (en) 2005-07-15 2006-06-21 Background network bandwidth sharing behind gateway devices

Publications (3)

Publication Number Publication Date
JP2009501496A true JP2009501496A (ja) 2009-01-15
JP2009501496A5 JP2009501496A5 (ja) 2009-09-24
JP4801154B2 JP4801154B2 (ja) 2011-10-26

Family

ID=37662915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008521402A Expired - Fee Related JP4801154B2 (ja) 2005-07-15 2006-06-21 ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有

Country Status (11)

Country Link
US (1) US7603473B2 (ja)
EP (1) EP1904930B1 (ja)
JP (1) JP4801154B2 (ja)
KR (1) KR101231380B1 (ja)
CN (1) CN101223513B (ja)
AU (1) AU2006270468B2 (ja)
BR (1) BRPI0613195A2 (ja)
CA (1) CA2614984A1 (ja)
MX (1) MX2008000575A (ja)
RU (1) RU2419848C2 (ja)
WO (1) WO2007011491A2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616585B1 (en) * 2006-02-28 2009-11-10 Symantec Operating Corporation Preventing network micro-congestion using send pacing based on end-to-end bandwidth
US8131673B2 (en) * 2006-12-05 2012-03-06 International Business Machines Corporation Background file sharing in a segmented peer-to-peer file sharing network
US8775562B2 (en) * 2006-12-05 2014-07-08 International Business Machines Corporation Mapping file fragments to file information and tagging in a segmented file sharing system
US8239573B2 (en) * 2006-12-15 2012-08-07 Starz Entertainment, Llc Off-peak background delivery
US8789052B2 (en) * 2007-03-28 2014-07-22 BlackBery Limited System and method for controlling processor usage according to user input
US7761902B2 (en) * 2007-05-11 2010-07-20 At&T Intellectual Property I, L.P. System and method of providing video content
US8065429B2 (en) * 2007-06-28 2011-11-22 Nokia Corporation System, apparatus and method for associating an anticipated success indication with data delivery
US8412792B2 (en) * 2007-07-31 2013-04-02 Brent Young Network file transfer and caching system
US8209728B2 (en) 2007-08-31 2012-06-26 At&T Intellectual Property I, L.P. System and method of delivering video content
US8438301B2 (en) * 2007-09-24 2013-05-07 Microsoft Corporation Automatic bit rate detection and throttling
FR2923972B1 (fr) * 2007-11-15 2010-02-26 Radiotelephone Sfr Procede et systeme de gestion de communications
US8239564B2 (en) * 2008-06-20 2012-08-07 Microsoft Corporation Dynamic throttling based on network conditions
US8516121B1 (en) * 2008-06-30 2013-08-20 Symantec Corporation Method and apparatus for optimizing computer network usage to prevent congestion
US8340099B2 (en) * 2009-07-15 2012-12-25 Microsoft Corporation Control of background data transfers
EP2468027B1 (en) * 2009-08-18 2013-07-10 Telefonaktiebolaget LM Ericsson (publ) Energy-saving mechanisms in a heterogeneous radio communication network
GB2478336A (en) * 2010-03-04 2011-09-07 Nec Corp Bandwidth control system
US9258231B2 (en) * 2010-09-08 2016-02-09 International Business Machines Corporation Bandwidth allocation management
US9088527B2 (en) * 2011-02-08 2015-07-21 Avaya Inc. Method and system for communication session bandwidth control based on actual bandwidth usage
EP2555470A1 (en) * 2011-08-03 2013-02-06 Thomson Licensing Method and device for reliable estimation of network traffic
US9509581B2 (en) * 2011-12-20 2016-11-29 Thomson Licensing Methods for monitoring data traffic in a gateway device
US9100448B2 (en) * 2012-01-20 2015-08-04 Blackberry Limited Communication device for throttling transmitted data
US9549024B2 (en) 2012-12-07 2017-01-17 Remote Media, Llc Routing and synchronization system, method, and manager
FR3011420A1 (fr) * 2013-09-30 2015-04-03 Orange Gestion amelioree des connexions reseau
US10075548B2 (en) * 2014-10-06 2018-09-11 Belkin International, Inc. Proxy device for reducing number of connections to gateway
US20160301617A1 (en) * 2015-04-10 2016-10-13 Lenovo (Singapore) Pte. Ltd. Bandwidth prioritization
CN106411607B (zh) * 2016-11-04 2019-08-20 锐捷网络股份有限公司 基于vxlan网络的流量转发控制方法及装置
CN108512686B (zh) * 2017-02-28 2023-02-21 中兴通讯股份有限公司 一种多设备数据传输方法、装置及系统
US10853057B1 (en) * 2017-03-29 2020-12-01 Amazon Technologies, Inc. Software library versioning with caching
CN108156632B (zh) * 2017-12-22 2021-11-23 奇酷互联网络科技(深圳)有限公司 控制WiFi网速的方法、装置和移动终端
CN110417888A (zh) * 2019-07-30 2019-11-05 中国工商银行股份有限公司 流量控制方法、流量控制装置和电子设备
US11792692B2 (en) * 2020-09-24 2023-10-17 Arris Enterprises Llc Personalized data throttling in a residential wireless network
WO2022115774A1 (en) * 2020-11-30 2022-06-02 Gatespeed, Inc. Systems and methods for dynamic bandwidth allocation and optimization
US11507597B2 (en) * 2021-03-31 2022-11-22 Pure Storage, Inc. Data replication to meet a recovery point objective
US12107767B2 (en) * 2022-04-07 2024-10-01 Mellanox Technologies Ltd. System and method for network rate limiting
CN116847360B (zh) * 2022-12-30 2024-04-02 曲阜师范大学 一种非实时数据传输方法、装置及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003527800A (ja) * 2000-02-16 2003-09-16 マイクロソフト コーポレイション ネットワークを介してデータを転送するためのシステム及び方法
JP2005025753A (ja) * 2003-06-30 2005-01-27 Microsoft Corp ネットワーク通信エージェントおよびトラブルシュータ

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5828837A (en) * 1996-04-15 1998-10-27 Digilog As Computer network system and method for efficient information transfer
US5751723A (en) * 1996-07-01 1998-05-12 Motorola, Inc. Method and system for overhead bandwidth recovery in a packetized network
WO2001015394A1 (en) * 1999-08-26 2001-03-01 Spinway, Inc. Bandwidth adaptive data transfer system and method
US7437428B1 (en) 2000-02-16 2008-10-14 Microsoft Corporation System and method for transferring data over a network
US6754221B1 (en) * 2001-02-15 2004-06-22 General Bandwidth Inc. System and method for selecting a compression algorithm according to an available bandwidth
US7283519B2 (en) * 2001-04-13 2007-10-16 Esn, Llc Distributed edge switching system for voice-over-packet multiservice network
WO2003047211A1 (en) * 2001-11-23 2003-06-05 Cyberscan Technology, Inc. Method and systems for large scale controlled and secure data downloading
US7486696B2 (en) * 2002-06-25 2009-02-03 Avaya, Inc. System and method for providing bandwidth management for VPNs
US7236483B2 (en) * 2002-06-28 2007-06-26 Samsung Electronics Co., Ltd. Method for controlling bandwidth in a voice over internet protocol system
EP1396962A1 (en) * 2002-08-05 2004-03-10 Sony International (Europe) GmbH Bus service interface
US7562393B2 (en) * 2002-10-21 2009-07-14 Alcatel-Lucent Usa Inc. Mobility access gateway
AU2002953479A0 (en) * 2002-12-19 2003-01-09 Canon Kabushiki Kaisha Ip rate control
KR100608590B1 (ko) * 2003-09-16 2006-08-03 삼성전자주식회사 서비스 품질에 따른 서비스 지원이 가능한 네트워크 장치,이를 이용한 네트워크 시스템 및 그 방법
US7830826B2 (en) * 2004-07-01 2010-11-09 Nokia Corporation Multicast relay for mobile devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003527800A (ja) * 2000-02-16 2003-09-16 マイクロソフト コーポレイション ネットワークを介してデータを転送するためのシステム及び方法
JP2005025753A (ja) * 2003-06-30 2005-01-27 Microsoft Corp ネットワーク通信エージェントおよびトラブルシュータ

Also Published As

Publication number Publication date
EP1904930B1 (en) 2012-09-19
RU2008101646A (ru) 2009-07-20
WO2007011491A2 (en) 2007-01-25
CN101223513A (zh) 2008-07-16
WO2007011491A3 (en) 2007-04-26
KR20080033940A (ko) 2008-04-17
AU2006270468B2 (en) 2011-03-24
MX2008000575A (es) 2008-03-18
EP1904930A2 (en) 2008-04-02
CN101223513B (zh) 2012-02-08
US20070016688A1 (en) 2007-01-18
JP4801154B2 (ja) 2011-10-26
EP1904930A4 (en) 2011-10-12
BRPI0613195A2 (pt) 2010-12-21
US7603473B2 (en) 2009-10-13
AU2006270468A1 (en) 2007-01-25
KR101231380B1 (ko) 2013-02-07
RU2419848C2 (ru) 2011-05-27
CA2614984A1 (en) 2007-01-25

Similar Documents

Publication Publication Date Title
JP4801154B2 (ja) ゲートウェイデバイスの背後でのバックグラウンドネットワーク帯域幅の共有
US10999203B2 (en) Offloading application traffic to a shared communication channel for signal optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US10771533B2 (en) Adaptive communication control device
US9237460B2 (en) Traffic control method and device
US8305911B2 (en) System and method for identifying and managing service disruptions using network and systems data
US10263876B2 (en) Adaptive service timeouts
JP2009501496A5 (ja)
US12061723B2 (en) Data importance assessment in a data sharing platform
JP5700842B2 (ja) スリープ制御装置、スリープ制御方法、及びプログラム
CN117527619A (zh) 一种网络服务质量调整方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110701

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: 20110729

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: 20110804

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140812

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

LAPS Cancellation because of no payment of annual fees