説明

デバイスのピン負荷を制御するライブネスピンプロトコル

ネットワークは、接続された1つのデバイス及び接続された1つのクライアントを含む。
デバイスは、複数のピンメッセージを受信する1つのレシーバ、受信した複数のピンメッセージをカウントする1つのカウンタ、及びカウント値に応じたピン負荷値を含む1つの応答メッセージを送信する1つのトランスミッタを含む。クライアントは、遅延時間を測定する1つのタイマ、前回のピンメッセージをデバイスに送信してから遅延時間が経過した後にデバイスに1つのピンメッセージを送信する1つのトランスミッタ、応答メッセージを受信する1つのレシーバ、及びデバイスのピン負荷に応じて遅延時間を調整する1つのコントローラを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2003年3月1日に出願された米国仮出願番号60/467294及び2003年7月23日に出願された米国仮出願番号60/489860の利益を主張するものである。
【背景技術】
【0002】
ネットワークは、多数の異なるベンダからの複数のスタンドアロンのデバイスと複数のパーソナルコンピュータ(PC)との間に接続性を提供する。1つのネットワークは、(デスクトップPC、プリンタ、及びスキャナのような)生産性の領域、(テレビ及びオーディオセットのような)娯楽の領域、(照明及びサーモスタット管理のような)ホームコントロール、及び(ラップトップコンピュータ、ユニバーサルリモートコントロール、移動電話、及び携帯情報端末のような)モバイル領域を含む数多くのデバイスを含む。これらのデバイスは、デバイスの動的な構成及び一過性の到達可能性を持ったネットワークを生み出すべく、取り外し可能にネットワークに接続される。そのようなネットワークの1つは、UPnP(UPnP Implementers Corporationの証明マーク)ネットワークである。
【発明の開示】
【発明が解決しようとする課題】
【0003】
ネットワーク管理者への要求を削減する又は除去すべく、ネットワークに追加される複数のデバイスは"プラグアンドプレイ"であるかもしれない。異なるネットワークの間におけるデバイスのシームレスなローミングがあり得る。デバイスの数は、1つのネットワークにおいて少数個から何千個の範囲にわたる。全て又は一部のネットワークは無線かもしれないし、マルチキャストのユーザデータグラムプロトコル(UDP)パケットのサイズに厳しい上限を負わせる低い最大パケットサイズを持つかもしれない。無線ネットワークは、低い信頼性、低い帯域幅、及び頻繁なトポロジの変化を持つかもしれない。デバイスは、限られた処理及びメモリ性能を持つかもしれない。
【0004】
ネットワークは、2つの論理的要素、複数のクライアント及び複数のデバイスを含み得る。複数のデバイスは、複数のクライアントに対してサーバの役割を果たす。PCのような1つの物理的なデバイスは、複合的な論理的要素を務める。このように、1つの物理的なデバイスは、同時にクライアント及びデバイスになることができる。1つのクライアントは、ネットワーク上にある複数のデバイスを発見して、それらが提供しているサービスを見つけ出すかもしれない。クライアントは、必要なときにそれらのサービスを使用し得る。UPnP(登録商標)ネットワークでは、クライアントは"コントロールポイント"と呼ばれる。
【発明を実施するための最良の形態】
【0005】
図1に示すように、ライブネスピンプロトコルは、複数のクライアント20及び複数のデバイス30を含む、UPnP(UPnP Implementers Corporationの証明マーク)のようなネットワーク10に対して定義されている。ライブネスピンプロトコルは、それぞれのデバイスにおけるプロトコルのオーバヘッドをコントロールしている間、どのデバイス30が到達可能であるかをクライアント20が決定することを可能にする。クライアント20がデバイス30の特定のサブセットをチェックすることを望んだ場合、チェックされるそれぞれのデバイスに対してライブネスピンプロトコルのセッションを開始する。クライアント20は、自由にそのサブセットを変え得る。クライアントは、ライブネスピンプロトコルを使用することを強制されるわけではない。典型的な実施例では、デバイスのサブセットは空であってもよい。
【0006】
クライアントは、ユニキャストのユーザデータグラムプロトコル(UDP)を用いて送信されるLPINGメッセージを送信することによって、デバイスの存在をチェックし得る。デバイスは、UDPユニキャストパケットによるLREPLYメッセージで応答し得る。クライアントがタイムアウトより前に応答を受信しなかった場合、クライアントはLPINGメッセージを何度か、例えば3回、再送信してよい。デバイスが、LPINGメッセージ、又は使用された場合にはその再送信に対して、ある時間長さ内でLREPLYメッセージで応答しない場合には、クライアントはそのデバイスが到達不可能であると判断し得る。マルチキャスト通信でなくユニキャストの使用は、より大規模なネットワークにおいて、ネットワーク及びデバイスの負荷を減らし得る。リソースが制限されたデバイスにおいて高いダイナミクスを維持するためには、接続をセットアップ及び維持するのにより多くの時間及びリソースを要するTCPよりも、UDPが好まれるだろう。
【0007】
以下は、バッカス‐ナウア記法(BNF)でのLPING及びLREPLYメッセージの典型的な定義である。ダブルクォートの中の語は終端記号である。他の単語は、非終端記号である。
【表1】

【0008】
エクステンションは任意である。メッセージの送信者はエクステンションを含むことを要求されていない。メッセージの受信者は、メッセージに含まれるどんなエクステンションも無視し得る。
【0009】
LPING及びLREPLYメッセージは、以下の情報を含むことができる。
【表2】

【0010】
多数のクライアントがデバイスの活性をチェックしている場合、ピン負荷はデバイスにとって大きくなりすぎるだろう。デバイスに負荷をかけすぎることを避けるべく、ピン負荷を制限するためのメカニズムが、ライブネスピンプロトコルによって提供される。LREPLYメッセージは、デバイスによって扱われているピンメッセージの数を示すピン負荷値を含む。一実施例においては、ピン負荷値は、デバイスによって受信されている、単位時間あたりのLPINGメッセージの数、例えば1秒あたりのメッセージの数である、PINGLOADであってよい。他の実施例においては、ピン負荷値は、それぞれのLPINGメッセージを受信する毎に増加させられるカウンタの値であるPINGCOUNTであってよい。
【0011】
デバイスがクライアントからLPINGメッセージを受信したとき、ピンを制御するメカニズムを提供すべく、デバイスは、内部カウンタ、例えばPINGCOUNTを、PINGINCREASEのような一定の量の分量ずつ増加させる。デバイスのPINGLOADは、2つの連続するピンカウント、例えばPINGCOUNT及びLASTPINGCOUNTの間の差であって、秒で表現され得るその2つのカウントの間の時間、例えばPERIODで除された差として算出される。
【数1】

【0012】
内部カウンタは制限されたサイズを持ち、また、ピンカウントがその内部カウンタによって表現され得る最大の数を超えたときには、ラップアラウンドされ得ることが理解されるだろう。2つの連続するピンカウントの差は、カウンタがラップアラウンドしたことを認識し、そのカウンタがラップアラウンドしないほど十分大きかったかのように差の値を生む方法で算出され得る。いくつかの受信したLPINGメッセージを包含する期間の使用、PINGLOADに対する移動平均の算出、又は固定された期間でのPINGLOADの算出のように、PINGLOADを算出する他の方法を使用することもできる。
【0013】
一実施形態では、デバイスは、PINGLOADのようなデバイスのピン負荷を算出してよく、LPINGメッセージを送信したクライアントに対して、デバイスのピン負荷の値をLREPLY応答メッセージで返してよい。他の実施例においては、デバイスは、LPINGメッセージを送信したクライアントに対して、PINGCOUNTの現在の値をLREPLY応答メッセージで返してよい。この実施例におけるデバイスの典型的な動作は、以下の仮想コードによって記述され得る。
【表3】

【0014】
クライアントは、デバイスから受信した前回のPINGCOUNT値を、例えばLASTPINGCOUNTとして保持し、ピン負荷値PINGCOUNTと前回受信したピン負荷値LASTPINGCOUNTとの差を用いて、デバイスのピン負荷を算出してよい。さらに、クライアントは、デバイスに送信した連続するLPINGの間隔を、PERIODとして計時してよい。これらの値を用いて、クライアントは、LREPLYメッセージを受信したときに、デバイスのピン負荷値PINGLOAD値を計算してよい。
【数2】

【0015】
デバイスのPINGLOADを制限すべく、クライアントには、ランダム化された小さな値をさらに含むあるDELAYを、2つの連続するLPINGメッセージの間に、少なくとも持つことが要求される。このDELAYの値は、一組のルールによって規定され得る。クライアントは、LPINGメッセージを送信するためにそのDELAYより長く待つことができる。このように、DELAYはPERIODに対する下限となり得る。クライアントがデバイスのPINGLOADがある閾値、例えばHIGHTHRESHOLDより高いことを検出したとき、実効的なPINGLOADを下げるべく、当該DELAYを増加させてよい。クライアントが、PINGLOADがある閾値、例えばLOWTHRESHOLDより小さくなったことを検出したとき、実効的なPINGLOADを上げるべく、当該DELAYを低下させてよい。これは、以下の典型的な適応ルールによって取り込むことができる。
【表4】

【0016】
パラメータHIGHTHRESHOLD及びLOWTHRESHOLDは、単位時間あたりの複数のピン、例えば1秒間あたりの複数のピンで表現される固定された定数であってよい。当該定数は、それらがデバイスにおいて許容できる負荷に導くよう定義されてよい。HIGHTHRESHOLD及びLOWTHRESHOLDの間の差は、当該DELAYが速やかにHITHRESHOLDとLOWTHRESHOLDとの間に安定化すべく十分大きく設定され得る。典型的な実施例において、ルールR1における定数2でのDELAYの増加、及びルールR2における定数2/3でのDELAYの低下が使用された。この典型的な実施例におけるLOWTHRESHOLD/HIGHTHRESHOLDの比は、DELAYが速やかにHIGHTHRESHOLDとLOWTHRESHOLDとの間の値に達するよう、2/3より小さかった。これらの値の選択は、シミュレーション結果に基づいてよい。
【0017】
図2は、異なる閾値の具体的な値を持つ典型的な実施例を示す。デバイス30は、PINGINCREASE値100を持つ。クライアントCP1 20は、デバイス30に1秒毎に1度ピンしている。現在のPINGLOADは高い閾値100と同じである。クライアントCP1 20はLPING200を送信する。他のクライアントはデバイス30にピンしていないので、デバイス30はクライアントCP1に送信した前回のLREPLYより1PINGINCREASEだけ大きいX+100のPINGCOUNT値を含むLREPLY202を送信する。CP2 22が同じデバイスにピンを開始すると、デバイス30は、CP2からLPING204を受信した後にPINGCOUNTを増やして、PINGCOUNT値X+200を含むLREPLY206をCP2に送信する。クライアントCP1 20は、その次のLPING208を、直前のLREPLY202の約1秒後のDELAY時間214で送信する。デバイス30は、CP1からのLPING208を受信した後にPINGCOUNTを増加して、PINGCOUNT値X+300を含むLREPLY210をCP1に送信する。CP1は、割り込んできたCP2からのピンが、CP1の見る後続のPINGCOUNTに、CP2がピンを開始する前の100ではなく200だけ増加をもたらしたので、高い閾値が越えられた旨を検出する。CP1は、式212で示されるように、PINGLOADを200と算出する。その結果、CP1は、連続するデバイスのピン間のDELAY216を、約2秒にまで倍増する。
【0018】
同様にして、クライアントCP2がデバイスをピンすることを停止した場合、PINGLOADは減少する。CP1は、CP2がピンしていたときの200ではなく100だけの、後続するPINGCOUNTの増加を知るだろう。PINGLOADが低い閾値より小さくなったとき、ルールR2が適用されてCP1はそのDELAYを低下させることができる。
【0019】
動的な環境では、1つのデバイスに関与している複数のクライアントの組はめまぐるしく変わる。ルールR1及びR2が、変化した状況に自動的にDELAYを適合させているときに、クライアントの数の突然の減少は、デバイスの利用不能の適時な検出を保証するには低すぎるPINGLOADに導き得る。残りのクライアントが再びピンして、それらのピン周波数を増加することができるのに気付くまでには長い時間を要する。この作用を制限すべく、最大のDELAYがMAXDELAYと呼ばれるファクタによって制限され得る。ルールR1の適用は以下になり得る。
【表5】

【0020】
同様に、新たなクライアントの突然の到来は、高い閾値を超えるPINGLOADを一時的にもたらす。この作用を制限すべく、最小のDELAY、MINDELAYが導入され得る。ルールR2の適用は以下になり得る。
【表6】

【0021】
MAXDELAY及びMINDELAYは共に定数であってよく、秒単位で表現されてよい。
【0022】
デバイスは、デバイスによって受信されたピン毎のPINGCOUNTを増加させる変数PINGINCREASEの値を静的又は動的に選択することによって、それらのPINGLOADを調整する。そのプロトコルが安定化したとき、デバイスが提供するLPINGメッセージの秒あたりの最大数は以下になる。
【数3】

【0023】
図2に示される典型的な実施例では、HIGHTHRESHOLDが100に等しかったので、100のPINGINCREASEは、秒あたりわずか1つのLPINGを受信するという結果になった。より高性能なデバイスは、より低いPINGINCREASE値を選択することができる。例えば、1のPINGINCREASEでは、安定した状況においては秒あたり100個までのライブネスピンを受信しただろう。PINGINCREASEの変更は、ネゴシエーション又はさらなるオペレーションを要することなく、ネットワーク及びデバイスにおける負荷を制限し得る。
【0024】
ライブネスピンプロトコルは、1つのデバイスのPINGLOADがMAXPINGPERSECを超えないことを保証する。デバイスは、2×MAXPINGPERSECパケット/秒を超えて送信及び受信する必要はないだろう。このルールに対する例外として、動的な環境における自己回復を保証すべく、クライアントの数がMAXDELAY×MAXPINGPERSECを超えて増大しても、クライアントはMAXDELAY秒毎に1度ピンすることを許容されていてよい。#Cクライアント及び#Dデバイスがあるとすると、ライブネスピンプロトコルに関係したメッセージの数は以下になるだろう。
【数4】

【0025】
ライブネスピンプロトコルは、一のクライアントからの連続するピンの間の時間を増加させることによって、デバイスに対するPINGメッセージのオーバーヘッドを制限し得る。それは、クライアントがネットワークからのデバイスの消失を検出するのに要する時間長さを増加させるかもしれない。プロクシ−バイ・プロトコルは、ネットワークからのデバイスの消失をより速やかにクライアントに通知すべく使用され得る。プロクシ−バイ・プロトコルは、クライアント間に限って行われる。多数のクライアントが同じデバイスの活性をチェックしていると、そのクライアントは、(PINGLOAD制御によって)連続するLPINGメッセージ間の長いDELAYを持つことになるだろう。デバイスが到達不可能になったことをクライアントができるだけ速く発見することを保証すべく、デバイスが消失したことを検出した最初のクライアントが、プロクシ−バイ・プロトコルによって他のクライアントに通知する。
【0026】
クライアントCPは、LPINGメッセージを送信することによってデバイスの存在をチェックし得る。デバイスはクライアントCPにLREPLYメッセージで応答し得る。クライアントがタイムアウトより前に応答を受信しなかった場合、LPINGメッセージを何回か再送信する。デバイスがLPINGメッセージ又は使用された場合にはその再送信に、ある時間長さ内で応答しなかった場合、そのクライアントはそのデバイスが到達不可能と判断して、プロクシ−バイ・プロトコルが実行される。
【0027】
クライアントが、デバイスが到達不可能になったと決定する度に、そのクライアントはプロクシ−バイ・メッセージを送信することによって他のクライアントに知らせる。プロクシ−バイ・メッセージは、デバイスのアドレス及びプロクシ−バイ・メッセージを生成するクライアントによって受信されたLASTPINGCOUNTを含む。このLASTPINGCOUNT情報は、他のクライアントが重複するプロクシ−バイ・メッセージを破棄することを可能にする。
【0028】
アドレス情報は、ゼロメッセージオーバヘッドの動的なメンバーシップメカニズムを提供すべく、LREPLYメッセージに乗っているクライアントの間で交換され得る。アドレスは、IPアドレス及びUDPポートを含んでよい。この情報交換を促進すべく、それぞれのデバイスは、LPINGを送信した最後のいくつかのクライアントに対するアドレス情報を維持し、このアドレス情報をこのLREPLYに含めて返信してよい。一実施例において、それぞれのデバイスは、LPINGを送信した最後の2つのクライアントに対するアドレス情報を維持してよい。このLREPLYメッセージは以下の情報を含んでよい。
【表7】

【0029】
最後の2つのクライアントを1つのLREPLYの中に含む実施例におけるデバイスの典型的な動作は、以下の仮想コードによって記述される。
【表8】

【0030】
クライアントは、プロクシ−バイ・プロトコルにおいて他のいずれのクライアントが同じデバイスをチェックしているかを動的に決定すべく、この情報を用いることができる。これは、グループの複数のメンバ間における直接的な通信なしに、かつ付加的なメッセージなしに、発生し得る。
【0031】
クライアントは、同じデバイスをチェックしている他の既知の全てのクライアントに、マルチキャスト及びユニキャストメッセージの組み合わせを用いてプロクシ−バイ・メッセージを送信し得る。ローカルリンクに少なくとも1つのクライアントが存在する場合、プロクシ−バイ・メッセージはローカルリンク上のマルチキャストとなる。リンク外の全てのクライアントは、ユニキャストメッセージによって届けられる。
【0032】
プロクシ−バイ・メッセージを受信すると、クライアントは、プロクシ−バイ・メッセージが複製である(すなわち、類似のメッセージが既に受信されている)か否か又はそのデバイスがまだ到達可能か否かを、そのデバイスが到達不可能であると決定する前にチェックしてよい。そのプロクシ−バイ・メッセージが複製ではなく、かつ、そのデバイスが到達可能でなければ、そのデバイスはプロクシ−バイ・メッセージを伝送する。これは、メッセージが順序が乱れて現れる、動的なルーティング・ネットワークを、重複又は古くなったメッセージが伝搬することを保護し、かつ悪意のあるプロクシ−バイ・メッセージに備えて詐称攻撃から保護し得る。
【表9】

【0033】
図3は、典型的な実施例における、デバイス30が到達不可能になった場合のメッセージのフローを示す。クライアントCP1 20は、1つのLPINGメッセージ300を送信する。CP1は、予め定められた時間302の期間内にLREPLYを受信しない。CP1は、1回以上LPING304を再送する。CP1はLREPLYを受信しなかった場合、PROXYBYTEメッセージ306をCP2 22に送信する。クライアントCP2は、その後LPINGメッセージ308をデバイス30に送信してよい。CP2は、LREPLYを受信しない場合、PROXYBYTEメッセージ310を他のクライアントに伝送することによって、プロクシ−バイを伝搬させる。
【0034】
クライアントCP1は、LREPLYメッセージを受信する度に、ある数、例えば2個の、直前のクライアントCP2及びCP3のアドレスを受信する。クライアントCP1による連続するLPINGの後、ピン周波数の差によって、クライアントCP1がより多数のクライアントの組{CP2、...、CPn}を受信することがあり得る。この効果は、プロクシ−バイ・プロトコルの信頼性を向上させ得るが、帯域幅及びプロトコルの性能要件を増加させるかもしれない。この組{CP2、...、CPn}のサイズを制限すべく、CP1は古いクライアントを無視することが許容され得る。CP1は、時刻TにおいてCPiについての情報を受信した場合に、CP1はそのCPiについての情報を少なくともT+MAXDELAYまで保持しなければならない。CPiについての情報が古くなると消去される。これは、1つのクライアントは、少なくとも2つの他のクライアントによって、これらのクライアントがネットワークを離れていない限り、常時知られていることを保証する。さらに、プロクシ−バイ・メッセージはマルチキャストであり得るので、ローカルリンク、小規模にブリッジされた複数のネットワークにおいては、全てのクライアントは同時に通知され得る。プロクシ−バイ・メッセージの伝搬パターンは、拡散効果と呼び得る。高い確率で、フォワーディンググラフはlog(#clients)の深さを持ち、たとえインターネットをまたいでも、速い伝搬を可能にし得る。それぞれのライブネスピンの後、クライアントの間の伝送接続は、関連するクライアントの最新のセットを反映すべく、自動的に更新される。したがって、プロクシ−バイ・メッセージは全てのクライアントに到達することになることが可能となる。
【0035】
ライブネスピンプロトコルは、プロクシ−バイ・プロトコルと一緒に又はプロクシ−バイ・プロトコルなしで使用されることが理解されるだろう。また、ライブネスピンプロトコルなしのプロクシ−バイ・プロトコルも理解されるだろう。PINGLOAD又はPINGCOUNT値とクライアントアドレスとを同じLREPLYメッセージに配置することによって、双方は共に有利に利用され得る。他の実施形例においては、PINGLOAD又はPINGCOUNT値とクライアントアドレスとは、異なるメッセージで送信されてよい。ライブネスピンプロトコル及びプロクシ−バイ・プロトコルは、UPnP(登録商標)ネットワークの場面で記載されたが、これらのプロトコルは、他の種類の複数のネットワークで使用され得る。
【0036】
いくつかの典型的な実施例が記載され、複数の添付図面の中で説明されたが、そのような複数の実施例はこの広範な発明の単なる実例であって、この広範な発明を限定するものではないことが理解されるべきである。また、様々な他の複数の変形が通常の当業者に想到され得るので、この発明は説明及び記載された特定の複数の構成及び複数の取合せに限定されるべきものではないことが理解されるべきである。
【図面の簡単な説明】
【0037】
【図1】複数のクライアント及び複数のデバイスを含むネットワークのブロック図である。
【図2】複数のクライアント及び複数のデバイスとの間の複数のピンメッセージ及び複数の応答メッセージの対話を示す図である。
【図3】複数のプロクシ−バイ・メッセージの伝搬を示す図である。

【特許請求の範囲】
【請求項1】
1つのネットワークに接続されるデバイスであって、
前記ネットワークに接続された複数のクライアントからピンメッセージを受信するレシーバと、
前記レシーバに接続されたカウンタであって、前記レシーバが前記複数のクライアントから受信した前記ピンメッセージのそれぞれに対してカウント値を増加させる前記カウンタと、
前記レシーバに接続されたトランスミッタであって、前記カウント値に応じたピン負荷値を含む1つの応答メッセージを送信する前記トランスミッタと
を備えるデバイス。
【請求項2】
前記応答メッセージはユニキャストのユーザデータグラムプロトコル(UDP)メッセージである
請求項1に記載のデバイス。
【請求項3】
前記カウンタは、所望のデバイスのピン負荷に反比例する増分ずつ前記カウント値を増加させる
請求項1に記載のデバイス。
【請求項4】
前記カウンタは、前記デバイスによって変えることができる増分ずつ前記カウント値を増加させる
請求項1に記載のデバイス。
【請求項5】
前記ピン負荷の値は前記カウント値である
請求項1に記載のデバイス。
【請求項6】
前記複数のクライアントのうちの、ピンメッセージが最後に受信された1つのクライアントのアドレスを記憶するメモリ
をさらに備え、
前記応答メッセージは前記アドレスをさらに含む
請求項1に記載のデバイス。
【請求項7】
1つのネットワークに接続されたクライアントであって、
遅延時間を計測するタイマと、
前記タイマに接続されたトランスミッタであって、前記ネットワークに接続されたデバイスに、前記トランスミッタが前のピンメッセージを前記デバイスに送信してから前記遅延時間が経過した旨を前記タイマが示した後に、ピンメッセージを送信するトランスミッタと、
デバイスのピン負荷に応じたピン負荷値を含む応答メッセージを、前記デバイスから受信するレシーバと、
前記レシーバ及び前記タイマに接続され、前記デバイスのピン負荷に応じて前記遅延時間を調整するコントローラと
を備えるクライアント。
【請求項8】
前に受信したピン負荷値を記憶するメモリ
をさらに備え、
前記ピン負荷値は、前記デバイスが受信したそれぞれのピンメッセージに対して前記デバイスが増加させたカウント値であり、前記コントローラは、前記ピン負荷値及び前記前に受信したピン負荷値との差に応じて、前記遅延時間を調整する
請求項7に記載のクライアント。
【請求項9】
前記コントローラは、前記ピン負荷値及び前記前に受信したピン負荷値を含む複数の応答メッセージに対応するピンメッセージの間の時間間隔にさらに応答して、前記遅延時間を調整する
請求項8に記載のクライアント。
【請求項10】
前記トランスミッタはさらに、前記レシーバが予め定められた時間内に前記デバイスから前記応答メッセージを受信しない場合に、前記デバイスのアドレス及び前記前に受信したピン負荷値を含むプロクシ−バイ・メッセージを、前記ネットワークに接続された第2クライアントに送信する
請求項8に記載のクライアント。
【請求項11】
前記コントローラは、予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する
請求項7に記載のクライアント。
【請求項12】
前記コントローラは、予め定められた最大の遅延時間以下になるよう前記遅延時間を調整する
請求項7に記載のクライアント。
【請求項13】
前記コントローラは、予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する
請求項12に記載のクライアント。
【請求項14】
前記コントローラは、前記デバイスのピン負荷が低い閾値を下回った場合に、前記遅延時間に第1の予め定められた値を乗じ、前記デバイスのピン負荷が第2閾値より上である場合に、前記遅延時間に第2の予め定められた値を乗じることによって、前記遅延時間を調整する
請求項7に記載のクライアント。
【請求項15】
デバイスのピン負荷を制御する方法であって、
前記ネットワークに接続された複数のクライアントからピンメッセージを受信する段階と、
前記複数のクライアントから受信した前記ピンメッセージのそれぞれに対してカウント値を増加させる段階と、
前記カウント値に応じたピン負荷値を含む応答メッセージを送信する段階と
を備える方法。
【請求項16】
前記応答メッセージはユニキャストのユーザデータグラムプロトコル(UDP)メッセージである
請求項15に記載の方法。
【請求項17】
前記カウント値は、所望のデバイスのピン負荷に反比例する増分ずつ増加させられる
請求項15に記載の方法。
【請求項18】
前記ピン負荷の値は前記カウント値である
請求項15に記載の方法。
【請求項19】
前記複数のクライアントのうちの、ピンメッセージが最後に受信された1つのクライアントのアドレスを記憶する段階
をさらに備え、
前記応答メッセージは前記アドレスをさらに含む
請求項15に記載の方法。
【請求項20】
デバイスのピン負荷を制御する方法であって、
ネットワークに接続されたデバイスに、前のピンメッセージを前記デバイスに送信してから遅延時間が経過した後にピンメッセージを送信する段階と、
デバイスのピン負荷に応じたピン負荷値を含む応答メッセージを、前記デバイスから受信する段階と、
前記デバイスのピン負荷に応じて前記遅延時間を調整する段階と
を備える方法。
【請求項21】
前に受信したピン負荷値を記憶する段階
をさらに備え、
前記ピン負荷値は、前記デバイスが受信したピンメッセージのそれぞれに対して前記デバイスが増加させたカウント値であり、遅延時間の調整は、前記ピン負荷値と前記前に受信したピン負荷値との差にさらに応答する
をさらに備える請求項20に記載の方法。
【請求項22】
遅延時間を調整する段階は、前記ピン負荷値及び前記前に受信したピン負荷値を含む応答メッセージに対応するピンメッセージの間の時間間隔にさら応答する
請求項21に記載の方法。
【請求項23】
予め定められた時間内に前記デバイスから前記応答メッセージを受信しない場合に、前記デバイスのアドレス及び前記前に受信したピン負荷値を含むプロクシ−バイ・メッセージを、前記ネットワークに接続された第2クライアントに送信する段階
をさらに備える請求項21に記載の方法。
【請求項24】
予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する段階
をさらに備える請求項20に記載の方法。
【請求項25】
予め定められた最大の遅延時間以下になるよう前記遅延時間を調整する段階
をさらに備える請求項20に記載の方法。
【請求項26】
予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する段階
をさらに備える請求項25に記載の方法。
【請求項27】
前記遅延時間を調整する段階は、
前記デバイスのピン負荷が低い閾値を下回った場合に、前記遅延時間に第1の予め定められた値を乗じ、前記デバイスのピン負荷が第2閾値より上である場合に、前記遅延時間に第2の予め定められた値を乗じる段階
を含む
請求項20に記載の方法。
【請求項28】
デバイスによって実行された時、前記デバイスに操作を行わせる命令を備える機械可読メディアであって、前記操作は、
ネットワークに接続されたデバイスに、前のピンメッセージを前記デバイスに送信してから遅延時間が経過した後にピンメッセージを送信する段階と、
デバイスのピン負荷に応じたピン負荷値を含む応答メッセージを、前記デバイスから受信する段階と、
前記デバイスのピン負荷に応じて前記遅延時間を調整する段階と
を含む機械可読メディア。
【請求項29】
前記操作は、
前に受信したピン負荷値を記憶する段階
をさらに備え、
前記ピン負荷値は、前記デバイスが受信したピンメッセージのそれぞれに対して前記デバイスが増加させたカウント値であり、遅延時間の調整は、前記ピン負荷値及び前記前に受信したピン負荷値との差にさらに応答する
請求項28に記載の機械可読メディア。
【請求項30】
遅延時間を調整する段階は、前記ピン負荷値及び前記前に受信したピン負荷値を含む応答メッセージに対応するピンメッセージの間の時間間隔にさらに応答する
請求項29に記載の機械可読メディア。
【請求項31】
前記操作は、
予め定められた時間内に前記デバイスから前記応答メッセージを受信しない場合に、前記デバイスのアドレス及び前記前に受信したピン負荷値を含むプロクシ−バイ・メッセージを、前記ネットワークに接続された第2クライアントに送信する段階
をさらに含む
請求項28に記載の機械可読メディア。
【請求項32】
前記操作は、
予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する段階
をさらに含む
請求項28に記載の機械可読メディア。
【請求項33】
前記操作は、
予め定められた最大の遅延時間以下になるよう前記遅延時間を調整する段階
をさらに含む請求項28に記載の機械可読メディア。
【請求項34】
前記操作は、
予め定められた最小の遅延時間以上になるよう前記遅延時間を調整する段階
をさらに含む請求項33に記載の機械可読メディア。
【請求項35】
遅延時間の調整は、前記デバイスのピン負荷が低い閾値を下回った場合に、前記遅延時間に第1の予め定められた値を乗じ、前記デバイスのピン負荷が第2閾値より上である場合に、前記遅延時間に第2の予め定められた値を乗じる段階
を含む
請求項28に記載の機械可読メディア。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公表番号】特表2006−528871(P2006−528871A)
【公表日】平成18年12月21日(2006.12.21)
【国際特許分類】
【出願番号】特願2006−521104(P2006−521104)
【出願日】平成16年7月14日(2004.7.14)
【国際出願番号】PCT/US2004/022352
【国際公開番号】WO2005/011230
【国際公開日】平成17年2月3日(2005.2.3)
【出願人】(591003943)インテル・コーポレーション (1,101)
【出願人】(504202999)コーニンクリク・フィリップス・エレクトロニクス・ナムローゼ・フエンノートシャップ (1)
【Fターム(参考)】