(57)【要約】  方法およびシステムが、システム内におけるデータをルーティングするために提供される。この方法は、初期固定配分パターンを決定することと、少なくとも現時点のシステム使用量と潜在的な最大システム使用量とに基づいてキューパラメータを決定することと、アプリケーション内におけるメッセージがそのメッセージの処理を待っている時間に基づいて時間パラメータを決定することと、少なくとも時間パラメータとキューパラメータとに基づいて負荷パラメータを決定することと、少なくとも負荷パラメータに基づいて配分パターンを変更することとを含む。【選択図】図１【特許請求の範囲】
【請求項１】
システム内におけるデータをルーティングするための方法であって、
初期固定配分パターンを決定することと、
少なくとも現時点のシステム使用量と潜在的な最大システム使用量とに基づいてキューパラメータを決定することと、
アプリケーション内におけるメッセージが前記メッセージが処理されるのを待っている時間に基づいて時間パラメータを決定することと、
少なくとも前記時間パラメータと前記キューパラメータとに基づいて負荷パラメータを決定することと、
少なくとも前記負荷パラメータに基づいて前記配分パターンを変更することと、
を含む方法。
【請求項２】
前記キューパラメータを決定すること、前記時間パラメータを決定すること、前記負荷パラメータを決定すること、および、前記変更することが、再帰的なものである、請求項１に記載の方法。
【請求項３】
前記変更することが、前記システムの変化に実質的にリアルタイムに応答する、請求項１に記載の方法。
【請求項４】
システム過負荷の期間中に所定の基準に合致するメッセージを無視することをさらに備える、請求項１に記載の方法。
【請求項５】
前記キューパラメータを決定することが、式：
ＬＦｑ＝ＱＵＰ／ＨＬＦＭ
を適用することを含み、
ここで、ＬＦｑは、初期キュー負荷係数であり；
ＨＬＦＭは、キューが処理することのできる最大メッセージ数の事前設定さ            れた百分率であり；
ＱＵＰは、前記キューの容量と比較した場合の前記キュー内に存在する前記            メッセージの数を表す、
請求項１に記載の方法。
【請求項６】
前記キューパラメータが、前記初期負荷係数に基づくものである、請求項５に記載の方法。
【請求項７】
前記キューパラメータを決定することが、前記初期負荷係数がある特定の範囲内に存在する場合、前記キューパラメータを前記初期キュー負荷係数に設定することを含む、請求項５に記載の方法。
【請求項８】
前記キューパラメータを決定することが、前記初期負荷係数がある特定の範囲以下である場合、前記キューパラメータを所定の値に設定することを含む、請求項５に記載の方法。
【請求項９】
前記キューパラメータを決定することが、少なくとも前記初期負荷係数がある特定の範囲を超えることに基づいて、前記キューパラメータを所定の値に設定することを含む、請求項５に記載の方法。
【請求項１０】
前記時間パラメータを決定することが、以下の式：
ＬＦｅｔ＝（ＡＴＴ−ＴＴＴ）／ＴＴＳ
を適用することを含み、
ここで、ＡＴＴは、前記アプリケーションによって計算される平均トランザクション            時間に基づいて計算され；
ＴＴＴは、所定の最小時間であり；
ＴＴＳは、前記負荷係数がトランザクション時間の増加にどのくらい速く反            応するかを定義する設定可能なパラメータである、
請求項１に記載の方法。
【請求項１１】
前記時間パラメータが、前記初期存在時間係数に基づくものである、請求項１０に記載の方法。
【請求項１２】
前記時間パラメータを決定することが、前記初期存在時間係数がある特定の範囲内に存在する場合、前記時間パラメータを前記初期存在時間係数に設定することを含む、請求項５に記載の方法。
【請求項１３】
前記時間パラメータを決定することが、前記初期存在時間係数がある特定の範囲以下である場合、前記時間パラメータを所定の値に設定することを含む、請求項５に記載の方法。
【請求項１４】
前記変更することが、少なくとも前記時間パラメータと前記キューパラメータとの組み合わせに基づくものである、請求項１に記載の方法。
【請求項１５】
前記変更することが、少なくとも前記時間パラメータと前記キューパラメータとの重み付けされた組み合わせに基づくものである、請求項１に記載の方法。
【請求項１６】
システム内におけるデータをルーティングするための方法であって、
初期配分パターンを決定することと、
キューパラメータを決定することと、
時間パラメータを決定することと、
前記時間パラメータと前記キューパラメータとの組み合わせに基づいて負荷パラメータを決定することと、
以下の式：
Ｗｄ（ｉ）＝Ｗｓ（ｉ）（１−ＬＦ（ｉ））
に基づいて前記配分パターンを変更することと、を含み、
ここで、Ｗｓ（ｉ）は、ルート内に存在する特定の宛先Ｐ（ｉ）に対する前記初期配            分パターンによって設定された重みであり；
ＬＦ（ｉ）は、前記特定の宛先に対する前記負荷パラメータであり；
Ｗｄ（ｉ）は、前記配分パターンを修正するための更新された前記重みであ            る、
方法。
【請求項１７】
前記負荷パラメータが、少なくとも前記時間パラメータと前記キューパラメータとの組み合わせに基づくものである、請求項１６に記載の方法。
【請求項１８】
前記負荷パラメータが、少なくとも前記時間パラメータと前記キューパラメータとの重み付けされた組み合わせに基づくものである、請求項１６に記載の方法。
【請求項１９】
システム過負荷の期間を決定することと、
前記期間中に、所定の基準に合致するメッセージを無視することと、
をさらに含む、請求項１６に記載の方法。
【請求項２０】
前記メッセージの配分を実質的にリアルタイムに計算するために、描画ブレゼンハムアルゴリズムによる、請求項１に記載の方法。
【請求項２１】
前記メッセージの配分を実質的にリアルタイムに計算するために、描画ブレゼンハムアルゴリズムに頼る、請求項１６に記載の方法。
【請求項２２】
前記変更することが、式：
【数１】
2010519633.tif 000005
を適用することをさらに含み、ここで、ｋはＥＳＢによってすでに受信された前記メッセージの数であり、Ｎｉはすでに前記宛先ｉに送信された前記メッセージの数であり、Ｗｉは前記宛先ｉの重みである、
請求項１に記載の方法。
【請求項２３】
前記変更することが、式：
【数２】
2010519633.tif 000006
を適用することをさらに含み、ここで、ｋはＥＳＢによってすでに受信された前記メッセージの数であり、Ｎｉはすでに前記宛先ｉに送信された前記メッセージの数であり、Ｗｉは前記宛先ｉの重みである、
請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［優先権の主張］
本出願は、２００７年２月２０日に出願された米国特許出願第１１／７０７，８７０号に対する優先権を主張するものであり、この米国特許出願第１１／７０７，８７０号は、その全体が本明細書に組み込まれる。
【０００２】
本発明は、動的負荷分散およびスロットリングメカニズムに関する。より詳細には、本発明は、リアルタイムに負荷分散アルゴリズムに影響を及ぼすターゲットアプリケーションによって報告される負荷係数に関する。
【背景技術】
【０００３】
エンタープライズサービスバス（ＥＳＢ：Ｅｎｔｅｒｐｒｉｓｅ  Ｓｅｒｖｉｃｅｓ  Ｂｕｓ）における負荷分散は、２つの特徴、すなわち、宛先とルートとを含む。ルートは、トラフィックをいくつかの宛先に配分することができる。ＥＳＢ設定は、ルートによってターゲットされた宛先に負荷分散重みを割り当てることを可能にする。例えば、所与のルートに対して、２つの宛先は、それぞれ、６と４とによって重み付けされてもよい。この重み付けに基づいて、トラフィックの６０％は第１の宛先にルーティングされ、４０％は他方の宛先にルーティングされる。この種の負荷分散は静的負荷分散と呼ばれる。そのような静的負荷分散は、根本的なシステムの要求に対応しない。
【発明の概要】
【０００４】
本発明の実施形態によれば、システム内におけるデータをルーティングするための方法が、提供される。この方法は、初期固定配分パターンを決定することと、少なくとも現時点のシステム使用量と潜在的な最大システム使用量とに基づいてキューパラメータを決定することと、アプリケーション内におけるメッセージがそのメッセージの処理を待っている時間に基づいて時間パラメータを決定することと、少なくとも時間パラメータとキューパラメータとに基づいて負荷パラメータを決定することと、少なくとも負荷パラメータに基づいて配分パターンを変更することとを含む。
【０００５】
上述の実施形態は、様々な任意選択的な特徴を有してもよい。時間パラメータを決定すること、負荷パラメータを決定すること、および、変更することは、再帰的なものであってもよい。変更することは、システムの変化に実質的にリアルタイムに応答するものであってもよい。この方法では、システム過負荷の期間中に所定の基準に合致するメッセージを無視してもよい。この方法では、メッセージの配分を実質的にリアルタイムに計算するために、描画ブレゼンハムアルゴリズムによってもよい。配分パターンを変更することは、式：
【０００６】
【数１】
2010519633.tif 000002
を適用することをさらに含んでもよく、ここで、ｋは、ＥＳＢによってすでに受信されたメッセージの数であり、Ｎｉは、すでに宛先ｉに送信されたメッセージの数であり、Ｗｉは、宛先ｉの重みである。
【０００７】
上述した特徴の中のキューパラメータを決定することは、式：
ＬＦｑ＝ＱＵＰ／ＨＬＦＭ
を適用することを含んでもよく、ここで、ＬＦｑは、初期キュー負荷係数であり、ＨＬＦＭは、キューが処理することのできる最大メッセージ数の事前設定された百分率であり、ＱＵＰは、キューの容量と比較した場合のキュー内に存在するメッセージの数を表す。キューパラメータは、初期負荷係数に基づくものであってもよい。キューパラメータを決定することは、初期負荷係数がある特定の範囲内に存在する場合、キューパラメータを初期キュー負荷係数に設定すること、初期負荷係数がある特定の範囲未満である場合、キューパラメータを所定の値に設定すること、および／または、少なくとも初期負荷係数がある特定の範囲を超えたことに基づいて、キューパラメータを所定の値に設定することを含んでもよい。
【０００８】
上述した特徴の中の時間パラメータを決定することは、式：
ＬＦｅｔ＝（ＡＴＴ−ＴＴＴ）／ＴＴＳ
を適用することを含んでもよく、ここで、ＡＴＴは、アプリケーションによって計算される平均トランザクション時間に基づいて計算され、トランザクション時間しきい値は、所定の最小時間であり、トランザクション時間スケールは、負荷係数がトランザクション時間の増加にどのくらい速く反応するかを定義する設定可能なパラメータである。時間パラメータは、初期存在時間係数に基づくものであってもよい。時間パラメータを決定することは、初期存在時間係数がある特定の範囲内に存在する場合、時間パラメータを初期存在時間係数に設定すること、および／または、初期存在時間係数がある特定の範囲未満である場合、時間パラメータを所定の値に設定することを含んでもよい。配分パターンを変更することは、少なくとも時間パラメータとキューパラメータとの組み合わせに基づくものであってもよく、あるいは、時間パラメータとキューパラメータとの重み付けされた組み合わせに基づくものであってもよい。
【０００９】
本発明のさらなる実施形態によれば、システム内におけるデータをルーティングするための方法が提供される。この方法は、初期配分パターンを決定することと、キューパラメータを決定することと、時間パラメータを決定することと、時間パラメータとキューパラメータとの組み合わせに基づいて負荷パラメータを決定することと、以下の式：
Ｗｄ（ｉ）＝Ｗｓ（ｉ）（１−ＬＦ（ｉ））
に基づいて配分パターンを変更することとを含み、ここで、Ｗｓ（ｉ）は、ルート内に存在する特定の宛先Ｐ（ｉ）に対する初期配分パターンによって設定された重みであり、ＬＦ（ｉ）は、特定の宛先に対する負荷パラメータであり、Ｗｄ（ｉ）は、配分パターンを修正するための更新された重みである。
【００１０】
上述の実施形態は、様々な任意選択的な特徴を有してもよい。負荷パラメータは、少なくとも時間パラメータとキューパラメータとの組み合わせに基づくものであってもよく、あるいは、少なくとも時間パラメータとキューパラメータとの重み付けされた組み合わせに基づくものであってもよい。この方法は、システム過負荷の期間を決定することと、この期間中に、所定の基準に合致するメッセージを無視することとをさらに含んでもよい。この方法は、メッセージの配分を実質的にリアルタイムに計算するために、描画ブレゼンハムアルゴリズムによってもよい。変更することは、式：
【００１１】
【数２】
2010519633.tif 000003
を適用することをさらに含んでもよく、ここで、ｋは、ＥＳＢによってすでに受信されたメッセージの数であり、Ｎｉは、すでに宛先ｉに送信されたメッセージの数であり、Ｗｉは、宛先ｉの重みである。
【００１２】
本発明のその他の実施形態および利点は、本開示および添付の図面を考察することによって確認され得る。
【図面の簡単な説明】
【００１３】
【図１】等しい負荷係数を備えた本発明の一実施形態の概略図である。
【図２】等しくない負荷係数を備えた本発明の実施形態の概略図である。
【図３】図２の実施形態におけるメッセージ配分を示すグラフである。
【発明を実施するための形態】
【００１４】
以下の詳細な記述において、本発明が、上記した複数の図面を参照して、本発明の特定の実施形態の非限定的な例としてさらに説明され、それらの図面を通して、類似する符号は、類似する構成要素を表す。
【００１５】
本明細書に示される詳細な説明は、ただ単に、本発明の実施形態を例示するものであり、最も役に立つと考えられ、かつ、本発明の原理および概念的態様の説明を容易に理解できると考えられるものを提供するために示される。この点において、本発明を基本的に理解するのに必要とされる以上により詳細に本発明の構造的な細部を示すことは試みられず、図面を参照した説明は、本発明のいくつかの形態が実際にどのように具体化されてもよいかを当業者に明確に理解させるものである。
【００１６】
動的負荷分散は、宛先におけるターゲットサイトの挙動に基づいて、静的負荷分散の配分を変更することを含む。ターゲットサイトおよびネットワークは、ターゲットサイトにおける負荷の変動を表す負荷係数をリアルタイムに交換する。この負荷係数は、配分重みを更新するのに使用される。好ましい実施形態の負荷分散方法は、好ましくは、エンタープライズサービスバス（ＥＳＢ）の一部として実施されるが、その他の環境にも同様に適用することができる。
【００１７】
好ましくは、負荷係数が更新されるいくらかの最小速度が、存在する。限定されるものではないが、例として、２つの負荷係数が交換される間の最小時間は、１秒に設定されてもよい。どのような適切な最小時間でも、実質的にリアルタイムに負荷係数を更新することに対応して選択されることができる。ＥＳＢが新しい負荷係数を受信しない限り、ＥＳＢは、負荷係数が変更されないままであると仮定する。
【００１８】
所与のアプリケーションの負荷係数は、ルート内に存在する対応する宛先（Ｐｉ）の静的重みＷｓ（ｉ）に影響を及ぼす。負荷係数が、０から１までの間に存在する値（または、それに対応する百分率）であると考えれば、その宛先に対する動的重みＷｄ（ｉ）は、
Ｗｄ（ｉ）＝Ｗｓ（ｉ）（１−ＬＦ（ｉ））
となる。場合によっては、ターゲットサイトは、それが負荷係数更新を送信しないほどに過負荷な状態（ＬＦ（ｉ）＝１）であるかもしれない。そのために、ＥＳＢは、その静的重みがどのような値であっても、負荷係数が減少するまでメッセージを受信することはない。メッセージが送信されなければ、ルーティングアルゴリズム全体は、動的負荷分散が使用されようがされまいが、同じままである。より効率的なブレゼンハム（Ｂｒｅｓｅｎｈａｍ）型アルゴリズムが、負荷係数が更新されるたびに負担の大きな浮動小数点演算を回避するのに使用されてもよい。
【００１９】
負荷係数は、好ましくは、アプリケーション側において、かつ、少なくとも２つの基準、すなわち、（１）処理されるのを待っているキューイングされたメッセージの数と、（２）平均存在時間とに基づいて、計算される。これらの２つの二次的係数の重みは、グローバルノード負荷係数を計算するように環境設定されてもよい。
【００２０】
第１の係数は、処理されるのを待っているメッセージの数に基づいて計算される。この計算のために、“高水位負荷係数（ｈｉｇｈ  ｌｏａｄ  ｆａｃｔｏｒ  ｗａｔｅｒｍａｒｋ）”は、ユーザまたはオペレータが定義した、キューが処理することのできる最大メッセージ数の事前設定された百分率であり、“キュー使用量百分率”は、キューの容量と比較した場合のそのキュー内に存在するメッセージ数の百分率を表す。
【００２１】
したがって、暫定キュー負荷係数は、以下のように計算される。
ＬＦｑ＝ＱＵＰ／ＨＬＦＭ
ここで、ＬＦｑは暫定キュー負荷係数；
ＱＵＰはキュー使用量百分率；
ＨＬＦＭは高水位負荷係数である。
【００２２】
ほとんどの場合、暫定キュー負荷係数は、最終的なキュー負荷係数となる。しかしながら、好ましくは、例外が、とりわけ、ＬＦｑに対する潜在的な値の上限および下限の近傍に存在する。２つのそのような例外は、以下のようなものである。
・暫定ＬＦｑが最小百分率以下であれば、最終的ＬＦｑは最小値に設定される。最小百分率の限定されるものではないがその例は１０％であり、最小値は０である。
・ＱＵＰ＝ＨＬＦであれば、ＬＦｑはその最大値に達する。その後の処理中、暫定ＬＦｑが依然として最大百分率を超えるならば、最終的ＬＦｑは、最大値に設定される（ＱＵＰ＝ＨＬＦＭのように）。最大百分率の限定されるものではないがその例は９５％であり、最大値は１である。
【００２３】
何らかの適切な値および／または百分率が、使用されてもよい。設定は、単一事象に対するものであってもよく、状態が緩和するまで反復的なものであってもよく（例えば、ＬＦｑは、それが最大百分率以下に低下するまで、最大値に維持されたままである）、あるいは、定められた数の反復に対するものであってもよい。百分率および値は、定数または変数であってもよい。
【００２４】
本明細書では存在時間負荷係数と呼ばれる第２の係数が、アプリケーション内におけるメッセージを処理するためにそのメッセージによって消費される時間を表す。この第２の係数は、好ましくは、メッセージが処理されるたびに、以下の式に基づいて更新される。
【００２５】
ＬＦｅｔ＝（ＡＴＴ−ＴＴＴ）／ＴＴＳ
ここで、ＬＦｅｔは、存在時間係数；
平均トランザクション時間（ＡＴＴ）は、アプリケーションによって計算さ    れる平均（好ましくは、２秒の積算期間における）トランザクション時間（メッセー    ジクエリーの受信からメッセージに対する応答までの時間）；
トランザクション時間しきい値（ＴＴＴ）は、ユーザまたはオペレータが定    義した事前設定された最小時間；
トランザクション時間スケール（ＴＴＳ）は、負荷係数がトランザクション    時間の増加にどのくらい速く反応するかを定義する可変のパラメータである。
【００２６】
ＡＴＴがＴＴＴ以下であれば、負荷係数は最小値に設定される。この値は、好ましくは０である。
【００２７】
上述した計算に基づいて、合計負荷係数は、以下の式によって求められる。
ＬＦ＝ＷｑＬｆｑ＋ＷｅｔＬＦｅｔ
ＷｑおよびＷｅｔは、システムをカスタマイズするのを可能にするカスタマイズ可能重み（乗算係数）である。重み１を含むあらゆる重みが、適用されてもよい。
【００２８】
負荷係数は、好ましくは、処理されるメッセージごとに更新され、そして、応答メッセージを返信するときにＥＳＢに報告される。
【００２９】
ここで、図１を参照すると、ＥＳＢ１１０は、負荷分散を課された１つ以上のルーター１２０（本明細書では、まとめて“ルーター”と呼ばれる）を有する。ルーターは、１つ以上のルートを管理し、それぞれのルートは、１つ以上の宛先をハンドリングする。ルーターは、配分すべきメッセージに基づいてルートを選択し、そして、負荷分散アルゴリズム方法を適用する。
【００３０】
メッセージが、ルートへ送信されなければならないたびに、ルーター１１０は、決定変数に基づいて、第１の適格宛先へメッセージを送信する。選択された宛先のために確立されたネットワーク接続が存在しなければ、アルゴリズムは、接続された宛先をそのアルゴリズムが検出するまでループ状態のままである。宛先が依然として検出されなければ、ＥＳＢ１１０は、宛先に到達できないことを指示するエラーメッセージによって応答する。
【００３１】
ルートに関連づけられたそれぞれの宛先は、静的重みを有し、その静的重みは、環境設定によって静的に設定される。デフォルトによって、０に等しい負荷係数が、それぞれの静的重みに関連づけられる。動的重みは、静的重みに（１−負荷係数）を乗算したものである。負荷係数は、本明細書に記述される方法を用いて計算される。
【００３２】
それぞれの宛先は、宛先がメッセージを送信するのに好適であるかどうかを決定するために、決定変数に関連づけられる。この決定変数は、好ましくは、この宛先にすでに送信されたメッセージの数から、重み再割り当てに基づいた送信されるべきメッセージの理論的な数を減算したものであり、この差が負である場合に限り、メッセージは、この宛先に送信されることができる。
【００３３】
本発明による実施形態の動作の一例が、図１〜図３に示される。いずれの場合においても、ルートは一組の宛先からなり、重みは、ルートに含まれるそれぞれの宛先のトラフィックフローに影響を及ぼす。本実施形態において、ルートＲ１によって到達されるアプリケーションは、３つのノードＡ、ＢおよびＣへ配分される。そのために、ＥＳＢ側においては、ルートＲ１は、３つのアプリケーションノードに到達するための３つの宛先を含む。それぞれのノードにおいて計算された負荷係数（上述したＬＦ＝ＷｑＬｆｑ＋ＷｅｔＬＦｅｔ）は、ＥＳＢに報告され、これは、それぞれの宛先に割り当てられた重みに影響を及ぼす。この例における負荷係数は０であるので、以下のように、等しい重みＷが個々の宛先ノードに割り当てられる。
【００３４】
宛先Ａ：Ｗａ＝１０
宛先Ｂ：Ｗｂ＝１０
宛先Ｃ：Ｗｃ＝１０
【００３５】
メッセージは、上述した重みと以下の式とに基づいてノードに配分される。
【００３６】
【数３】
2010519633.tif 000004
ここで、ｋはＥＳＢによってすでに受信されたメッセージの数（概して、時間に対応
する）；
Ｎｉはすでに宛先Ｉに送信されたメッセージの数；
Ｗｉは宛先ｉの重みである。
【００３７】
式の適用は、すでに宛先Ｉに送信されたメッセージの数がこの宛先の重みに比例した理論的な値を超えないことを保証する。この場合、宛先の等しい重みは、それぞれの宛先ノードへメッセージを等しく配分すること（例えば、３３％）をもたらす。
【００３８】
ここで、図２を参照すると、ノードに関連づけられた様々なキュー内に溜まるメッセージは、様々な負荷係数の対応する変化をもたらす。図２は、ノードＡ、ＢおよびＣに対する負荷係数が０から０．５、０．７および０．９にそれぞれ増加する例を示す。これは、様々な宛先の重みを以下のように変化させる。
【００３９】
宛先Ａ：Ｗａ＝１０×（１−０．５）＝５
宛先Ｂ：Ｗｂ＝１０×（１−０．７）＝３
宛先Ｃ：Ｗｃ＝１０×（１−０．９）＝１
【００４０】
これらの重みに基づいて、５６％（５／９）のメッセージは、ノードＡに送信されなければならず、３３％（３／９）のメッセージはノードＢに送信されなければならず、そして、１１％（１／９）のメッセージはノードＣに送信されなければならない。結果として得られる配分が、図３に示される。
【００４１】
図３に示される３本の斜線は、それぞれの宛先へのメッセージの理論的フローを表す。３本の階段状屈曲線は、実際のフローを表す（それぞれの階段は、宛先に送信されるメッセージに対応する）。したがって、結果として得られる負荷分散方法は、直線と階段状屈曲線とを近似する。これは、浮動小数点数の代わりに整数によって高速計算を実行するためにブレゼンハムアルゴリズムを使用するのを可能にする。
【００４２】
上述した方法の任意選択的な特徴は、アプリケーション全体が過負荷状態であるときに低い優先順位のメッセージが無視されるスロットリングである。例えば、ルートの後方に存在するすべての宛先の負荷係数が、所定の負荷係数しきい値を超えたならば、何らかの基準（例えば、サービスタイプまたは発信者）に合致するすべてのメッセージは、廃棄される。
【００４３】
上述した例は、ただ単に、説明のために提供されたものであり、本発明を限定するものであると解釈されるべきではないことに注意されたい。本発明は特定の実施形態を参照して説明されたが、本明細書で使用された用語は限定するための用語ではなく、説明および例示するための用語であることがわかる。本発明の範囲および精神を逸脱することなく、本発明の態様における変更が、現在記載されている、及び補正される添付の「特許請求の範囲」の範囲内においてなされてもよい。本発明が、特定の手段、材料、および、実施形態を参照して本明細書で説明されたが、本発明は本明細書で開示された詳細な説明に限定されることを意図したものではなく、本発明は、添付の「特許請求の範囲」の範囲内に存在するような、機能的に等価なあらゆる構造体、方法、および、使用方法に拡張されてもよい。
【図１】
2010519633.tif 000007
【図２】
2010519633.tif 000008
【図３】
2010519633.tif 000009
【国際調査報告】
2010519633.tif 000010
2010519633.tif 000011
2010519633.tif 000012