(57)【要約】本発明は、装置の通信アドレスを確立する方法に関連し、方法は、主アドレスを取得すること、主アドレスを装置の通信アドレスとして使用すること、バックアップ・アドレスを取得すること、及び、主アドレスとの衝突が生ずればバックアップ・アドレスを装置の通信アドレスとして使用することを含む。装置は、例えば、インターネット接続可能なテレビジョン受像機、携帯情報端末、又はパーソナルコンピュータである。
2006502613.tif 000002
【特許請求の範囲】
【請求項１】
装置の通信アドレスを設定する方法であって、
主アドレスを取得し、
前記主アドレスを前記装置の通信アドレスとして用い、
前記主アドレスを通信アドレスとして用いるときに衝突が生ずるか否かを監視し、
前記装置の通信アドレスとして使用される新しい主アドレスを取得することにより衝突を解決する方法であって、
前記方法は、
バックアップ・アドレスを取得し、
前記衝突を解決するときに、前記主アドレスとの衝突が生ずれば前記装置の通信アドレスとして前記バックアップ・アドレスを用いることを特徴とする、方法。
【請求項２】
前記方法は、前記装置とのオープン・コネクションを維持する、請求項１記載の方法。
【請求項３】
前記方法は、前記バックアップ・アドレスとの衝突が生ずれば、新しいバックアップ・アドレスを取得する、請求項１記載の方法。
【請求項４】
装置の通信アドレスを設定するシステムであって、
主アドレスを取得するようにされた取得手段と、
前記主アドレスを前記装置の通信アドレスとして用いるようにされた使用手段と、
前記主アドレスを通信アドレスとして用いるときに衝突が生ずるか否かを監視するようにされた監視手段と、
前記装置の通信アドレスとして使用される新しい主アドレスを取得することにより衝突を解決するようにされた解決手段とを有する、システムであって、
前記取得手段は、更に、バックアップ・アドレスを取得するようにされ、
前記解決手段は、更に、前記主アドレスとの衝突が生ずれば前記装置の通信アドレスとして前記バックアップ・アドレスを用いるようにされたことを特徴とする、システム。
【請求項５】
前記システムは、前記装置とのオープン・コネクションを維持するようにされた維持手段を有する、請求項１記載のシステム。
【請求項６】
前記取得手段は、前記バックアップ・アドレスとの衝突が生ずれば、新しいバックアップ・アドレスを取得するようにされる、請求項１記載のシステム。
【請求項７】
請求項４乃至６のうちいずれか一項記載のシステムを有するインターネット接続可能な装置。
【請求項８】
請求項１による方法を実行するよう設計されたコンピュータプログラムプロダクト。
【請求項９】
請求項８に記載のコンピュータプログラムプロダクトを有する記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置の通信アドレスを設定する方法であって、主アドレスを取得し、主アドレスを装置の通信アドレスとして用い、主アドレスを通信アドレスとして用いるときに衝突が生ずるか否かを監視し、装置の通信アドレスとして使用される新しい主アドレスを取得することにより衝突を解決する方法に関連する。
【０００２】
本発明は更に、装置の通信アドレスを設定するシステムであって、主アドレスを取得するようにされた取得手段と、主アドレスを装置の通信アドレスとして用いるようにされた使用手段と、主アドレスを通信アドレスとして用いるときに衝突が生ずるか否かを監視するようにされた監視手段と、装置の通信アドレスとして使用される新しい主アドレスを取得することにより衝突を解決するようにされた解決手段とを有するシステムに関連する。
【０００３】
本発明は更に、かかるシステムを有するインターネット接続可能な装置に関する。
【０００４】
本発明は更に、かかる方法を実行するよう設計されたコンピュータプログラムプロダクトに関する。
【０００５】
本発明は更に、かかるコンピュータプログラムプロダクトを有する記憶装置に関する。
【背景技術】
【０００６】
かかる方法及びシステムの実施例は、ホストが他のホストと通信するためにＩＰアドレスを有する必要のあるインターネット・プロトコル（ＩＰ）を実行するネットワークから一般的に知られている。このアドレスは、ホストを表わす識別子であり、従ってネットワークの範囲内では一意でなくてはならない。ホストが手動で構成される場合、全てのホストが一意のＩＰアドレスを有することを確認することはネットワーク管理者の責任である。しかしながら、全ての構成を手動で行うことは望ましくない。また、手動の構成は、ダイナミックなネットワーク構成のためには充分でない。職場でノートブック型コンピュータを用いる人は、これを仕事で用いるとともに、自宅でも使用することがある。ノートブック型コンピュータが固定のＩＰアドレスを用いる場合、このアドレスは両方のネットワークにおいて有効でなくてはならない。これは、動的ホスト構成プロトコル（Dynamic  Host  Configuration  Protocol）（非特許文献１）によって可能となる。ＤＨＣＰの概念は、ネットワーク中のホストがＩＰ構成を管理するためにサービスを提供することである。ＩＰインタフェースを構成することが必要なホストは、ＤＨＣＰサーバをプローブし、ＩＰアドレスを得るためにこれを使用する。ＤＨＣＰサーバは、提供されているＩＰアドレスが全て一意であることを確認する。ＤＨＣＰは、広く用いられており、中央集中されたサービスに基づくものである。これは、ＤＨＣＰサーバの故障は、容易には解決されえない問題を生じさせうることを意味する。
【０００７】
中央集中されたサービスに依存しないアルゴリズムは、ＩＰｖ４リンク・ローカル・アドレッシング（ＬＬＡ）に特定されている（非特許文献２参照）。ＬＬＡ仕様は、各ホストに一意のＩＰアドレスが割り当てられることを確認するようホストが協働する分散アルゴリズムを記載する。これは、以下の例で説明できる。家庭用ネットワークは、互いに通信する多数の装置を有する。外部世界への接続は、ルータ又はゲートウエイ装置を通じて確立されうる。外部世界は、インターネット、他の仮定ネットワーク、又は任意の種類のネットワークでありうる。「リンク・ローカル（link-locak）」の語は、ＬＬＡネットワーク中のトラフィックが外界から隔離されることを意味する。これを達成するために主に２つの手段がとられ、即ち、０乃至１６９，２５４／１６（最初と最後の２５６個のアドレスを除く）である予約されたＩＰ範囲を用いること、また、ＬＬＡアドレスへのＩＰパケット及びＬＬＡアドレスからのＩＰパケットは２５５の全長論理（Total  Length  Logic:  TLL）値を搬送せねばならないことである。ＩＰアドレスを取得する機構は簡単である。基本的には、試行錯誤を行うものである。ＩＰアドレスを構成しようとするホストは、ＬＬＡアドレス範囲内でランダムなアドレスを選び、選択されたアドレスがリンク・ローカル範囲内で利用可能であるかどうかを調べる。また、２つのホストが同一アドレスを使用しているという状況も起こりうる。例えば、２つのホストが同じアドレスを選び、選択されたアドレスが利用可能であるかを同時に調べている場合である。これに対処するため、衝突検出及び取り扱いアルゴリズムがある。
【非特許文献１】動的ホスト構成プロトコル（Dynamic  Host  Configuration  Protocol）、Internet  Engineering  Task  Force  for  the  Internet  Draft  Specification、インターネット＜URL:http://www.ietf.org/＞
【非特許文献２】ＩＰｖ４Link-Local  Addressing（ＬＬＡ）、Zeroconf作業部会によって仕様が定められたInternet  Engineering  Task  Force  for  the  Internet  Draft  Specification、インターネット＜URL:http://www.ietf.org/＞
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、改善された方法で衝突を取り扱う冒頭の段落による方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この目的を達成するために、本発明の方法は、バックアップ・アドレスを取得し、衝突を解決するときに、主アドレスとの衝突が生ずれば装置の通信アドレスとしてバックアップ・アドレスを用いることを特徴とする。
【００１０】
バックアップ・アドレスを用いることの利点は、衝突が生じたときに、数秒かかりうる新しいＩＰアドレスの待機及び取得の必要なしに、新しいアドレスがすぐに使用されうることである。例えば、ＬＬＡプロトコルでは、装置は、衝突の場合はその古いアドレスをすぐに捨て、新しいアドレスを取得せねばならない。８秒間に亘って新しいアドレスの利用可能性を調べねばならない。結果として、装置はこれらの秒数の間は通信できない。
【００１１】
本発明による方法の実施例を、請求項２に記載する。ＩＰアドレスから変わった装置とのオープン・コネクションを維持することにより、情報を受信するアプリケーションは情報の処理を続けうる。例えば、オーディオ又はビデオ処理アプリケーションは、かなりの中断なしにストリーミングを続けうる。
【００１２】
本発明による方法の実施例を、請求項３に記載する。新しいバックアップ・アドレスを取得することにより、このバックアップ・アドレスとの衝突が生ずる場合、バックアップ・アドレスが他の装置がこれを用いることを防止する装置によって要求されることが防止される。他の利点は、バックアップ・アドレスが使用されようとする時までには、バックアップ・アドレスが他のホストのＩＰアドレスと衝突することが防止されることが防止されることである。
【００１３】
本発明は、改善された方法で衝突を取り扱う冒頭の段落に記載のシステムを提供することを目的とする。この目的を達成するために、システムは、取得手段は、更に、バックアップ・アドレスを取得するようにされ、解決手段は、更に、主アドレスとの衝突が生ずれば装置の通信アドレスとしてバックアップ・アドレスを用いるようにされたことを特徴とする。
【００１４】
本発明によるシステムの実施例を請求項６及び７に示す。
【発明を実施するための最良の形態】
【００１５】
本発明の上述の及び他の面は、添付の図面に示し以下説明する実施例を参照することで明らかとなろう。図１は、ＩＰ構成を取り扱うためのＬＬＡプロトコルの主な段階を示す図である。これらの段階は、試行錯誤アルゴリズムに基づくものであり、ＩＰアドレスを構成しようとするホストは、ＬＬＡアドレス範囲内のランダムなアドレスを選び、選択したアドレスがリンク・ローカル範囲内で利用可能であるかどうかを調べる。２つのホストが同一のアドレスを用いているという状況が依然として生じうるため、これに対処するための衝突検出及び取り扱いアルゴリズムがある。尚、以下用いる数及び秒数は例示のためだけであって、本発明を制限することを意図したものではない。
【００１６】
ステップＳ１００において、ホストによってＬＬＡアドレス範囲内のランダムなＩＰアドレスが選択される。ＬＬＡに対しては、１６９．２５４／１６アドレス範囲が予約されている。最初と最後の２５６個のアドレスは使用されず、従って、１６９．２５４．１．０−１６９．２５４．２５４．２５５の範囲のアドレスが選択される。アドレスはランダムに選択されねばならず、乱数発生器のシード値を計算するために持続的な情報を用いることが勧められる。例として、イーサネット（登録商標）ハードウエアアドレスをシード値へハッシュ処理することについて説明する。このようにして、望ましくはプロトコルを新しく実行するたびに同一のアドレスシーケンスが発生されえ、ホストはブーストするたびに必ずしも新しいアドレスを有するとは限らないことを意味する。利点は、ネットワーク構成が、ある程度は静的であることである。
【００１７】
ステップＳ１０２において、ＩＰアドレスの利用可能性はプロービング（probing）によって調べられる。いったんホストがＩＰアドレスを選択した後は、アドレスが占有されているかどうかを調べねばならない。これはプロービングによって行われる。これは、ホストが、自分が使用したいアドレスに対するアドレス解決プロトコル（ＡＲＰ）を送信することを意味する。現在、イーサネット４（登録商標）では、プローブは、各プローブの後に２秒の遅延で送信されねばならない。プロービングは、ホストが、
・送信者のＩＰアドレスがプローブされているアドレスである任意のＡＲＰパケットであること、又は、
・宛先ＩＰアドレスがプローブしているアドレスである任意のＡＲＰパケットであり、送信者のハードウエアアドレスがホストのインタフェースのいずれのハードウエアアドレスでもないこと、
を受信すると失敗する。
【００１８】
いずれの場合も、ステップＳ１００は、異なったＩＰアドレスで再び実行されねばならない。しかしながら、アドレスを取得するための少なくとも１０回目の試行の後、１分間当たり１回の試行が許される。このようにして、ＡＲＰストームは、多くの衝突が生じ、ホストが合法なアドレスを見つけることができないという状況を回避しうる。
【００１９】
現在、イーサネット（登録商標）網でＩＰアドレスを取得するために、上述のように２秒の遅延と共に４回のプローブがなされねばならない。これは、衝突が生じない場合は、有効なＩＰアドレスを取得するために少なくとも８秒がかかることを意味する。待ち時間を減少させるために、いくつかの些細なことを行うことが出来る。即ち、
・プローブ間の遅延を短くすること、
・プローブの数を減少させること、
・上記の両方の組合せ、
である。
【００２０】
プローブ・パケットが失われる可能性、応答パケットが失われる可能性、及びプローブが短い時間内に応答される可能性は、基礎となるネットワークに大きく依存する。プロトコルを各ハードウエア種別及びネットワーク設定に対して信頼性の高いものとするために、十分なプローブが十分な遅延と共に行われねばならない。プローブ時間の短縮はまた、ＩＰアドレスが有効となる前の時間の短縮である。他の例もまた可能である。
【００２１】
ステップＳ１０４では、プロービングが成功すればＩＰアドレスが使用される。アドレスのプロービングによって衝突が生じなければ、ハードウエア・インタフェースはアドレスを使用するよう構成されうる。ここから、ホストのＩＰアドレスとの衝突があるかどうかを調べるために、入来するＡＲＰパケットを調べねばならない。送信者ＩＰアドレスがホスト自身のＩＰアドレスに等しく、送信者ハードウエア・アドレスがいずれのインタフェースのハードウエアアドレスでもない場合は、衝突が生ずる。
【００２２】
ステップ１０６において、ホストは、選択されたＩＰアドレスが使用されていることを通知する。選択されたアドレスは、以前に他のホストによって使用されていたかもしれず、すると、ネットワーク上のホストのＡＲＰキャッシュはおそらくは古いエントリを含む。これらを更新するために、２つの無償ＡＲＰが２秒間の遅延をはさんで送られねばならない。
【００２３】
ステップＳ１０８では、ホストは、そのＩＰアドレスとの衝突が生ずるかどうかを定期的に調べる。この時点で、新しいＩＰアドレスはうまく構成されており、ネットワーク上の他のホストのＡＲＰキャッシュ・エントリは更新され、ホストは衝突について待ち始める。
【００２４】
衝突が生じた場合は、２つの可能性がある。第１の可能性は、ステップＳ１１０においてＩＰアドレスを捨て、ステップＳ１００に戻ることである。第２の可能性は、ステップＳ１１２においてＩＰアドレスを守り、うまくいけばこれを維持することである。第２の可能性は、ＩＰの変化によって失われるべきでない重要なコネクションがある場合に有用である。例えば、これが生ずると、ＴＣＰ／ＩＰコネクションは失われる。アドレスを守ることは、無償ＡＲＰパケットが送信されねばならず、次にホストがステップＳ１１４において１０秒間待たねばならないことを意味する。その時間中に他の衝突が検出されれば、守りは失敗し、ＩＰアドレスはステップＳ１１０において捨てられねばならない。
【００２５】
装置は、そのＩＰアドレスを失うと、可能な限りすぐに新しいＩＰアドレスを見つけねばならない。新しいアドレスがない限り、装置は通信することが可能ではなく、これは中断したストリーム及び他の同様の問題を生じさせる。ＬＬＡでは、プロトコルの仕様によれば、装置は新しいアドレスを選び、８秒間に亘りその利用可能性を調べねばならない。アドレスを失うことは、まず新しいものを得ることなく、望ましくはアドレスがすぐに捨てられねばならないことを意味する。結果として、装置は、再び通信することが可能となる前に、少なくとも８秒間待つ必要がある。遅延問題を減少させるために、バックアップ・アドレスが使用されうる。バックアップ・アドレスが選択され、主アドレスと同時にプロービングされれば、必要となるまで記憶される。基本的には、これは、ステップＳ１０２が処理のうちの最も時間のかかる部分であることを意味し、ステップＳ１００及びＳ１０２は前もって行われる。いったん衝突が生ずると、バックアップ・アドレスは、衝突する主アドレスを直ぐに置き換えることができ、装置は新しいアドレスについてプロービングする必要なしにオンラインのままでありうる。変更されたプロトコルは、基本的には２つの並列のアルゴリズムに対して存在する。即ち、図１に示すようなＬＬＡアルゴリズムの主な段階、及び図２に示すようなバックアップ・アルゴリズムの主な段階である。
【００２６】
ステップＳ２００では、ＬＬＡアドレス範囲内のランダムＩＰアドレスがバックアップＩＰアドレスのために選択される。ステップＳ２０２では、バックアップＩＰアドレスの利用可能性がプロービングにより調べられる。次に、ステップＳ２０４においてプロービングが成功すれば、バックアップＩＰアドレスはバックアップ・アドレスとして記憶される。最後に、ステップＳ２０６では、ホストは、衝突のために新しいバックアップ・アドレスが必要とされるまで待つ。新しいバックアップＩＰアドレスが必要であれば、ステップＳ２００が実行される。
【００２７】
このアルゴリズムでは、バックアップ・アドレスは衝突検出機構によって監視されている。装置は、送信元又は宛先のいずれかとしてバックアップ・アドレスを持つＡＲＰパケットを受信すると、バックアップ・アドレスを捨て、新しいものを見つけねばならない。このようにして、バックアップ・アドレスが、使用されようとするまでには、他のいずれのホストとも衝突しないことが保証される。
【００２８】
バックアップ・アドレスを用いることの利点は、衝突が生ずると、不必要に待つことなく新しいアドレスが使用されうることである。バックアップ・アドレスは、ネットワークに通知機能が加えられれば、ステップＳ１０６において新しい主アドレスとして通知されうる。プロトコル又はアプリケーションは、オープン・コネクションを維持するために正しいアクションをとりうる。ホストがバックアップ・アドレスを見つけ、衝突の後に他の衝突が生ずる前に新しいものを見つけることができれば、安定したＩＰ接続性が可能となる。例えば、オーディオ及びビデオストリーミングは、中断なしに続きうる。
【００２９】
上述のように、装置は、送信元又は宛先のいずれかとしてバックアップ・アドレスを持つＡＲＰパケットを受信すると、アドレスは望ましくは捨てられ、他のバックアップ・アドレスが見つかる。尚、これはバックアップ・アドレスと一致するプローブ・パケットに重要でありうる。このようにして、バックアップ・アドレスが装置によって要求されることが回避される。他の装置でバックアップ・アドレスとして使用されるアドレスを取得しようとするいかなる装置も、このことについて何も通知しない。
【００３０】
以下の例は、バックアップ・アドレスを使用することによって生ずるネットワーク・トラフィックについて説明する。
【００３１】
例１．装置ＡがアドレスＸをその主アドレスとして使用しており、装置Ｂが同一のアドレスを主アドレス又はバックアップ・アドレスのいずれかとしてプロービングしようとしていると想定する。いったん装置Ｂがプローブを送信すると、ホストＡは応答し、ＢはアドレスＸが利用可能でないことに気づく。Ｂは、他のアドレスを選び、これについてプロービングを開始する。結果として、Ｂによって５つのパケットが送信され、Ａによって１つのパケットが送信され、全部で６つのパケットとなる。
【００３２】
例２．装置ＡがアドレスＸをそのバックアップ・アドレスとして使用しており、装置Ｂが同一のアドレスを主アドレス又はバックアップ・アドレスのいずれかとしてプロービングしようとしていると想定する。アドレスＸはＡによって要求されていないため、装置ＢがＸについてプロービングすれば、Ａはこれを捨て、他のアドレスを見つけようとする。装置Ｂは、Ｘを得るためにＸについてプロービングを続け、従って、結果として、Ａ及びＢの両方が少なくとも４つのプローブを送信する。また、ここでは２つのアドレスに対して２つのホストがプロービングしているため、それらのうちの一方が適切なアドレスを見つけるのに失敗するため、より多くのプローブがあるというより多くの可能性がある。
【００３３】
バックアップ・アドレスを用いて衝突から回復する利点は、これがプロトコルの実施の複雑性を非常に大きく高めることなく簡単且つ効果的であることである。これはプロトコルの仕様の変更を必要とせず、バックアップ・アドレスを使用する装置と、これを用いないホストとの間によい相互利用性がある。
【００３４】
本発明の方法の上述の実施例での順序は必須ではなく、当業者は、本発明の意図する概念から逸脱することなく、スレッド処理モデル、マルチプロセッサシステム、又はマルチプロセスを同時に使用してステップの順序を変更すること、又は、ステップを同時に実行することができる。
【００３５】
図３は、本発明によるシステムの主な部分を概略的に示す図である。システム３００は、ランダム・アクセス・メモリ３０２、ソフトウエア・バス３１０、及び中央処理装置３１２を有する。メモリ３０２は、ソフトウエア・バス３１０を介して中央処理装置３１２と通信しうる。メモリ３０２は、コンピュータ読み取り可能なコード３０４、３０６、３０８を有する。コンピュータ読み取り可能なコード３０４は、上述のようにＩＰアドレス及びバックアップＩＰアドレスについてプロービングするよう設計される。コンピュータ読み取り可能なコード３０４は更に、上述のように、衝突の場合にバックアップＩＰアドレスを捨て、新しいバックアップＩＰアドレスについてプロービングするよう設計される。コンピュータ読み取り可能なコード３０６は、プロービングされたＩＰアドレスを用いるよう設計され、これは元々プロービングされたＩＰアドレス又はバックアップＩＰアドレスのいずれかでありうる。コンピュータ読み取り可能なコード３０８は、上述のように、ホストがＩＰアドレスから切り替わった場合にオープン・コネクションを維持するよう設計される。システムは、例えばソフトウエア・システムによって説明される。しかしながら、上述の方法を実行するよう設計された専用ハードウエア又はプログラム可能なハードウエア等のハードウエアとソフトウエアの組合せも含まれる。
【００３６】
図４は、本発明によるシステムを有するインターネット接続可能な装置を概略的に示す図である。インターネット接続可能なテレビジョン受像機４０２は、本発明によるシステム４１０を有し、イーサネット（登録商標）コネクション４０８を介して携帯情報端末４０４に双方向に接続される。携帯情報端末４０４は、本発明によるシステム４１２を有し、イーサネット（登録商標）コネクション４０８を介してパーソナルコンピュータ４０６に双方向に接続される。パーソナルコンピュータ４０６は、本発明によるシステム４１４を有し、テレビジョン受像機４０２に双方向に接続される。パーソナルコンピュータ４０６は、上述のように本発明の方法を実行するよう設計されたコンピュータ読み取り可能なコード４１８をそこからダウンロードしうる。コンピュータ読み取り可能なコード４１８は、ＣＤ、ＣＤ＋ＲＷ、ＤＶＤ等の記憶装置４１６からパーソナルコンピュータ４０６によって読み出されうる。テレビジョン受像機４０２、携帯情報端末４０４、及びパーソナルコンピュータ４０６は、インターネット接続可能な装置の例である。携帯電話機のような、インターネット接続可能な他の装置もまた可能である。
【００３７】
尚、上述の実施例は、本発明を例示するものであって制限するものではなく、当業者は、添付の特許請求の範囲を逸脱することなく多くの他の実施例を設計することが可能であろう。特許請求の範囲では、括弧内に記載の参照符号は請求項を制限するものと理解されるべきではない。「有する」の語は、特許請求の範囲に記載の要素又は段階以外の要素又は段階の存在を排除するものではない。単数形で記載された要素は、かかる要素が複数個存在する場合を排除するものではない。本発明は、いくつかの別個の要素を有するハードウエアによって、また、適当にプログラムされたコンピュータによって実施されうる。いくつかの手段を列挙したシステムに関する特許請求の範囲では、これらの手段の幾つかはコンピュータ読み取り可能なソフトウエア又はハードウエアの単一のアイテムによって具現化されうる。いくつかの手段が互いに異なった従属項に記載されていることは、これらの手段の組合せが利用され得ないことを示すものではない。
【図面の簡単な説明】
【００３８】
【図１】ＬＬＡ構成アルゴリズムの主な段階を示す図である。
【図２】バックアップ・アルゴリズムの主な段階を示す図である。
【図３】本発明によるシステムの主な部分を概略的に示す図である。
【図４】本発明によるシステムを有するインターネット接続可能な装置を概略的に示す図である。
【図１】
2006502613.tif 000003
【図２】
2006502613.tif 000004
【図３】
2006502613.tif 000005
【図４】
2006502613.tif 000006
【国際調査報告】
2006502613.tif 000007