JP2010244509A

Method for host selection based on discovered nat type

Abstract

Problem to be solved.To construct a peer-to-peer network in which a plurality of clients can exchange information with each other without passing through a central server having a bandwidth limitation. A host for a peer-to-peer grid is selected based on the discovered NAT type. Each peer collects NAT profile information and shares it with other peers. Each peer receives NAT profile information for the other peer. Each peer determines which of the two or more peers should be designated as the host from the NAT profile information for that peer and the NAT profile information for the other peers. [Selection diagram] Fig. 2

JP2010244509A, drawing sheet 1
Sheet 1 of 6

Term

3 yearsto projected expiry

Projected expiry 18 September 2029, counted from filing; an application has no term until it is granted.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

19 claims: 4 independent, 15 dependent

  1. 1
    2以上のピアの中から、ピアツーピアグリッド内のサービスに対するホストとして指定するべきものを決定するための、1のピアにおける方法であって、 a)前記1のピアに対するNATプロファイル情報を集めるステップと、 b)前記1のピアに対するNATプロファイル情報を前記2以上のピアの内、1以上の他のピアと共有するステップと、 c)前記1以上の他のピアに対するNATプロファイル情報を受信するステップと、 d)前記1のピアに対するNATプロファイル情報と、前記1以上の他のピアに対するNATプロファイル情報とから、前記2以上のピアのいずれをホストとして指定するかを決定するステップとを含むことを特徴とする方法。
  2. 2
    ステップa)は、STUNサーバを用いてNATプロファイル情報を収集するステップを含むことを特徴とする請求項1に記載の方法。
  3. 3
    ステップb)は、前記1のピアと前記1以上の他のピアとの間の前もって確立されたコネクションを介して、前記1のピアに対するNATプロファイル情報を前記1以上の他のピアに中継するステップを含むことを特徴とする請求項1に記載の方法。
  4. 4
    前記前もって確立されたコネクションには、前記2以上のピアに共通するアプリケーションのためにサーバを利用することが含まれる請求項3に記載の方法。
  5. 5
    前記サーバは、ホストとして指定されたピアによって管理される前記ピアツーピアグリッドに1以上の機能をオフロードすることを特徴とする請求項4に記載の方法。
  6. 6
    前記前もって確立されたコネクションには、ホストとして動作する前記1以上の他のピアの一つが含まれることを特徴とする請求項3に記載の方法。
  7. 7
    ステップc)は、前記前もって確立されたコネクションを介して前記1以上の他のピアに対するNATプロファイル情報を受信するステップを含むことを特徴とする請求項3に記載の方法。
  8. 8
    ステップd)は、前記1のピアに対するNATプロファイル情報と、前記1以上の他のピアに対するNATプロファイル情報とにもとづいて前記2以上のピアの各々に優先度の値を割り当てるステップと、前記優先度の値にもとづいてホストを選択するステップとを含むことを特徴とする請求項1に記載の方法。
  9. 9
    前記NATプロファイル情報には、ピアの前段にあるNATのNATタイプ、そのNATがUPnP(universal plug and play)をサポートするかどうかに関する情報、そのNATに対するポート予測可能性情報、そのNATに対するポート保護情報が含まれることを特徴とする請求項8に記載の方法。
  10. 10
    前記1以上の他のピアに対するNATプロファイル情報には、ピアの前段にあるNATのNATタイプ、そのNATがUPnPをサポートするかどうかに関する情報、そのNATに対するポート予測可能性情報、そのNATに対するポート保護情報が含まれることを特徴とする請求項8に記載の方法。
  11. 11
    前記2以上のピアの内、2以上のピアが等しい優先度の値をもつ場合、ステップd)は、等しい優先度の値をもつ前記2以上の潜在的なホストのいずれをホストとして指定するべきかを決定するステップを含むことを特徴とする請求項8に記載の方法。
  12. 12
    等しい優先度の値をもつ前記2以上の潜在的なホストのいずれをホストとして指定するべきかを決定するステップは、前記2以上の潜在的なホストの各々に異なる序数が割り当てられている場合、等しい優先度の値をもつ前記2以上の潜在的なホストの内、より高い序数をもつものをホストとして指定するステップを含むことを特徴とする請求項11に記載の方法。
  13. 13
    等しい優先度の値をもつ前記2以上の潜在的なホストのいずれをホストとして指定するべきかを決定するステップは、分散調停アルゴリズムを含むことを特徴とする請求項11に記載の方法。
  14. 14
    前記1のピアがホストとして指定された場合、前記1のピアがホストとして指定された旨を前記1以上の他のピアに通知するステップと、前記1以上の他のピアが接続することを待つステップとをさらに含むことを特徴とする請求項1に記載の方法。
  15. 15
    ホストに接続されたピアの数を期待されるカウントと比較するステップと、もしホストに接続されたピアの数が期待されるカウントに等しくないなら、ホストに接続されたピアの数を前記1以上の他のピアと共有するステップとをさらに含む請求項14に記載の方法。
  16. 16
    もし前記1のピアがホストとして指定されないならば、前記1のピアをホストに接続させることを試みるステップをさらに含む請求項1に記載の方法。
  17. 17
    もし前記1のピアがホストへの接続に失敗したならば、前記1のピアがホストへの接続に失敗したことを前記2以上のピアに通知するステップをさらに含むことを特徴とする請求項16に記載の方法。
  18. 18
    コンピュータプロセッサと、 前記プロセッサに結合したコンピュータメモリと、 前記プロセッサに結合したネットワークインタフェースであって、ピアツーピアグリッドで接続された前記プロセッサと1以上の他のピアデバイスの間の通信を助けるように構成されたネットワークインタフェースと、 前記メモリに具体化されたコンピュータ読み取り可能なインストラクションセットとを含み、 前記コンピュータ読み取り可能なインストラクションは、ピアツーピアグリッドのいずれのピアデバイスを、ピアツーピアグリッド内のサービスに対するホストとして指定するかを決める方法を実装するように構成されており、 前記方法は、 a)前記1のピアに対するNATプロファイル情報を集めるステップと、 b)前記1のピアに対するNATプロファイル情報を前記2以上のピアの内、1以上の他のピアと共有するステップと、 c)前記1以上の他のピアに対するNATプロファイル情報を受信するステップと、 d)前記1のピアに対するNATプロファイル情報と、前記1以上の他のピアに対するNATプロファイル情報とから、前記2以上のピアのいずれをホストとして指定するかを決定するステップとを含むことを特徴とするピアデバイス。
  19. 19
    コンピュータ読み取り可能なインストラクションが具体化されたコンピュータ読み取り可能な記録媒体であって、 前記コンピュータ読み取り可能なインストラクションは、ピアツーピアグリッドのいずれのピアデバイスを、ピアツーピアグリッド内のサービスに対するホストとして指定するかを決める方法を実装するように構成されており、 前記方法は、 a)前記1のピアに対するNATプロファイル情報を集めるステップと、 b)前記1のピアに対するNATプロファイル情報を前記2以上のピアの内、1以上の他のピアと共有するステップと、 c)前記1以上の他のピアに対するNATプロファイル情報を受信するステップと、 d)前記1のピアに対するNATプロファイル情報と、前記1以上の他のピアに対するNATプロファイル情報とから、前記2以上のピアのいずれをホストとして指定するかを決定するステップとを含むことを特徴とする記録媒体。
Independent claims19