【手続補正書】
【提出日】平成30年2月19日(2018.2.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の転送デバイスからルーティング制御デバイスへの複数の経路を検出する方法であって、
（ａ）前記複数の転送デバイスのうち、転送デバイスのポート上で、制御パケットを受信する段階と、
（ｂ）前記制御パケットを受信した前記ポートに少なくとも部分的に基づいて、前記ルーティング制御デバイスに到達させるべく、前記転送デバイスのどのポート上でデータを転送するか識別する段階と、
（ｃ）前記転送デバイスでの新規データストリームの受信に応答して、（ｂ）で識別された前記ポート上で、メッセージを前記ルーティング制御デバイスへ送信する段階であって、前記メッセージは前記ルーティング制御デバイスに対し、前記複数の転送デバイスを通る、宛先へのパスを決定することと、決定された前記パスに沿って前記新規データストリームを転送するように前記複数の転送デバイスのサブセットを構成することとを命令する、送信する段階と、
（ｄ）前記ルーティング制御デバイスの複数の構成コマンドに従って、前記新規データストリームを転送する段階と
を備える方法。
【請求項２】
前記制御パケットは、前記ルーティング制御デバイスからのものであり、
前記ポートは、前記転送デバイスのデータリンク層ポートであり、前記転送デバイスを他の転送デバイスにリンクを介して接続し、
前記制御パケットは、パケットを前記他の転送デバイスから前記ルーティング制御デバイスへとルーティングするための推定時間を示すパフォーマンスメトリックを含み、
前記識別することは、前記パフォーマンスメトリックおよび前記制御パケットを受信した前記データリンク層ポートに少なくとも部分的に基づいており、
前記識別することは、前記転送デバイス上の、ＭＡＣアドレスによって識別されるどのデータリンク層ポートが、前記ルーティング制御デバイスへ到達するべくデータを転送するかを識別する
請求項１に記載の方法。
【請求項３】
前記送信する段階（ｃ）は、前記ルーティング制御デバイスを通して、前記新規データストリームの初期パケットを転送する段階を含む、請求項１または２に記載の方法。
【請求項４】
（ｅ）段階（ａ）で前記制御パケットを受信した前記ポートと異なる、前記転送デバイスの残りのポート上で、前記制御パケットを前記転送デバイスから他の転送デバイスへと転送する段階を更に含む、請求項１から３のいずれか一項に記載の方法。
【請求項５】
（ｆ）前記転送デバイスで、前記複数の転送デバイスのうち、他の転送デバイスへとラベルを送信し、前記ラベルは、前記転送デバイスで受信されるパケットに付加されている場合に、前記転送デバイスに対し、（ｂ）で識別された前記ポート上で前記ルーティング制御デバイスへ前記パケットを転送するように指示する段階を更に含む、請求項４に記載の方法。
【請求項６】
前記制御パケットが、パケットを前記転送デバイスから前記ルーティング制御デバイスへとルーティングするためのシリアル番号および好ましくは推定時間を含み、
前記方法は、
（ｆ）前記転送デバイスが、他の制御パケットを以前に転送したかどうかを判定する段階であって、前記他の制御パケットは、前記ルーティング制御デバイスからのものであり、前記シリアル番号を有し、パケットを前記転送デバイスから前記ルーティング制御デバイスへとルーティングする他の推定時間であって、前記制御パケット内の前記推定時間より少ない推定時間を有する、判定する段階を更に含み、
前記転送デバイスが、（ｆ）において、前記他の制御パケットを以前に転送していないと判定された場合に、前記転送する段階（ｅ）の段階を行う、
請求項４または５に記載の方法。
【請求項７】
（ｅ）（ｂ）で識別された前記ポート上でメッセージを前記ルーティング制御デバイスへと送信する段階であって、前記メッセージは、前記転送デバイスと、前記複数の転送デバイスのうち、前記転送デバイスが接続されている複数の他の転送デバイスとを識別する、送信する段階
を更に含み、
前記ルーティング制御デバイスは前記メッセージを使用してネットワークのトポロジを表すデータベースを構築し、かつ、前記データベースを使用して前記パスを決定する、
請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記制御パケットは、前記ルーティング制御デバイスの識別子を含み、
（ｅ）前記転送デバイスのポート上で、他のルーティング制御デバイスの識別子を含む他の制御パケットを受信する段階と、
（ｆ）前記他の制御パケットを受信した前記ポートに少なくとも部分的に基づいて、前記転送デバイスのどのポート上でデータを転送し、前記他のルーティング制御デバイスへ到達させるか識別する段階と、
（ｇ）新規データストリームの前記転送デバイスでの受信に応答して、前記パスが前記複数の転送デバイスを通って構成されるよう命令する前記メッセージを、前記ルーティング制御デバイスおよび前記他のルーティング制御デバイスのいずれが送信するか決定する段階と
を更に含む、
請求項１から７のいずれか一項に記載の方法。
【請求項９】
ルーティング制御デバイスへの経路を検出するための転送デバイスであって、
（ｉ）前記転送デバイスのポート上で制御パケットを受信し、（ｉｉ）前記制御パケットを受信した前記ポートに少なくとも部分的に基づいて、前記ルーティング制御デバイスに到達させるべく、前記転送デバイスのどのポート上でデータを転送するか識別するように構成されたスイッチ検出モジュールと、
新規データストリームの前記転送デバイスでの受信に応答して、識別された前記ポート上で前記ルーティング制御デバイスへとメッセージを送信するように構成されたパス要求モジュールであって、前記メッセージは前記ルーティング制御デバイスに対し、（ｉ）複数の前記転送デバイスを通る、宛先へのパスを決定することと、（ｉｉ）決定された前記パスに沿って前記新規データストリームを転送するように、複数の前記転送デバイスのサブセットを構成することとを命令する、パス要求モジュールと、
前記ルーティング制御デバイスの複数の構成コマンドに従って、前記転送デバイスが前記新規データストリームを転送することを可能にするべくデータ入力された、前記転送デバイス内のルーティングテーブルと
を備える転送デバイス。
【請求項１０】
前記ポートは、前記転送デバイスのデータリンク層ポートであり、前記転送デバイスを他の転送デバイスにリンクを介して接続し、
前記制御パケットは、パケットを前記他の転送デバイスから前記ルーティング制御デバイスへとルーティングするための推定時間を示すパフォーマンスメトリックを含み、
前記識別することは、前記パフォーマンスメトリックおよび前記制御パケットを受信した前記データリンク層ポートに少なくとも部分的に基づいており、
前記識別することは、前記転送デバイス上で、ＭＡＣアドレスによって識別されるどのデータリンク層ポートが、前記ルーティング制御デバイスへ到達するべくデータを転送するかを識別する
請求項９に記載の転送デバイス。
【請求項１１】
前記パス要求モジュールは更に、前記ルーティング制御デバイスを通して前記新規データストリームの初期パケットを転送するよう構成される、請求項９または１０に記載の転送デバイス。
【請求項１２】
前記スイッチ検出モジュールは、前記制御パケットを受信した前記ポートとは異なる前記転送デバイスの残りのポート上で、前記転送デバイスから他の転送デバイスへと前記制御パケットを転送するよう構成され、任意で、
前記スイッチ検出モジュールは、前記複数の転送デバイスの中の、他の転送デバイスへとラベルを送信するよう構成され、
前記ラベルは、前記転送デバイスで受信されたパケットに付加されている場合に、前記転送デバイスに対し、前記スイッチ検出モジュールによって識別された前記ポート上で、前記ルーティング制御デバイスへ前記パケットを転送するように指示する、
請求項９から１１のいずれか一項に記載の転送デバイス。
【請求項１３】
前記制御パケットは、前記転送デバイスから前記ルーティング制御デバイスへとパケットをルーティングするためのシリアル番号および好ましくは推定時間を含み、前記転送デバイスは更に、パフォーマンスメトリックモジュールを備え、
前記パフォーマンスメトリックモジュールは、前記転送デバイスが、他の制御パケットを以前に転送したかどうか判定するよう構成され、前記他の制御パケットは、前記ルーティング制御デバイスからのものであり、前記シリアル番号を含み、前記転送デバイスから前記ルーティング制御デバイスへとパケットをルーティングする他のパフォーマンスメトリックであって、前記制御パケット内のパフォーマンスメトリックより良い他のパフォーマンスメトリックを含み、
前記パス要求モジュールが、前記他の制御パケットを以前に転送しなかったと判定した場合に、前記転送を行う、
請求項１２に記載の転送デバイス。
【請求項１４】
前記スイッチ検出モジュールは更に、
識別された前記ポート上で前記ルーティング制御デバイスへメッセージを送信するよう構成され、前記メッセージは、前記転送デバイスと、前記転送デバイスが接続されている前記複数の転送デバイスのうち複数の他の転送デバイスとを識別し、
前記ルーティング制御デバイスは、ネットワークのトポロジを表すデータベースを構築するべく前記メッセージを使用し、前記パスを決定するべく前記データベースを使用するよう構成される、
請求項１２または１３に記載の転送デバイス。
【請求項１５】
前記制御パケットは、前記ルーティング制御デバイスの識別子を含み、前記スイッチ検出モジュールは更に、
前記転送デバイスのポート上で、他のルーティング制御デバイスの識別子を含む、他の制御パケットを受信し、
前記他の制御パケットを受信した前記ポートに少なくとも部分的に基づいて、前記他のルーティング制御デバイスに到達するべく、前記転送デバイスのどのポート上でデータを転送するか識別し、
新規データストリームの前記転送デバイス上での受信に応答して、前記パスが前記複数の転送デバイスを通って構成されるように命令するメッセージを、前記ルーティング制御デバイス、および前記他のルーティング制御デバイスのいずれに送信するか決定するよう構成される
請求項１２から１４のいずれか一項に記載の転送デバイス。
【請求項１６】
複数の転送デバイスからルーティング制御デバイスへの経路を検出するための方法を少なくとも１つのマシンに実行させるプログラムであって、前記方法は、
（ａ）前記複数の転送デバイスのうち、転送デバイスのポート上で、制御パケットを受信する段階と、
（ｂ）前記制御パケットを受信した前記ポートに少なくとも部分的に基づいて、前記ルーティング制御デバイスへ到達させるべく、前記転送デバイスのどのポート上でデータを転送するか識別する段階と、
（ｃ）新規データストリームの前記転送デバイスでの受信に応答して、（ｂ）で識別された前記ポート上で、メッセージを前記ルーティング制御デバイスへ送信する段階であって、前記メッセージは前記ルーティング制御デバイスに対し、前記複数の転送デバイスを通る、宛先へのパスを決定することと、決定された前記パスに沿って前記新規データストリームを転送するように前記複数の転送デバイスのサブセットを構成することとを命令する、送信する段階と、
（ｄ）前記ルーティング制御デバイスの複数の構成コマンドに従って、前記新規データストリームを転送する段階と
を備える、プログラム。
【請求項１７】
前記ポートは、前記転送デバイスのデータリンク層ポートであり、前記転送デバイスを他の転送デバイスにリンクを介して接続し、
前記制御パケットは、パケットを前記他の転送デバイスから前記ルーティング制御デバイスへとルーティングするための推定時間を示すパフォーマンスメトリックを含み、
前記識別することは、前記制御パケットおよび前記パフォーマンスメトリックを受信した前記データリンク層ポートに少なくとも部分的に基づいており、
前記識別することは、前記転送デバイス上で、ＭＡＣアドレスによって識別されるどのデータリンク層ポートが、前記ルーティング制御デバイスへ到達するべくデータを転送するかを識別する
請求項１６に記載のプログラム。
【請求項１８】
前記送信する段階（ｃ）は、前記新規データストリームの初期パケットを前記ルーティング制御デバイスを通して転送する段階を含む、請求項１６または１７に記載のプログラム。
【請求項１９】
前記方法は、（ｅ）（ａ）で前記制御パケットが受信された前記ポートと異なる、前記転送デバイスの残りのポート上で、前記制御パケットを前記転送デバイスから他の転送デバイスへと転送する段階を更に含み、任意で、
前記方法は、
（ｆ）前記転送デバイスで、前記複数の転送デバイス中の他の転送デバイスにラベルを送信する段階を更に備え、前記ラベルは、前記転送デバイスで受信されたパケットに付加されている場合に、前記転送デバイスに対し、（ｂ）で識別された前記ポート上で、前記ルーティング制御デバイスへ前記パケットを転送するよう指示する、請求項１６から１８のいずれか一項に記載のプログラム。
【請求項２０】
前記制御パケットは、前記転送デバイスから、前記ルーティング制御デバイスへと、パケットをルーティングするためのシリアル番号および好ましくは推定時間を含み、前記方法は、
（ｆ）前記転送デバイスが、以前に転送された他の制御パケットを有するかどうか判定する段階であって、前記他の制御パケットは、前記ルーティング制御デバイスからのものであり、前記シリアル番号を有し、パケットを前記転送デバイスから前記ルーティング制御デバイスへとルーティングする他の推定時間であって、前記制御パケット内の前記推定時間より少ない推定時間を有する、判定する段階
を更に備え、
前記転送デバイスが、（ｆ）において、前記他の制御パケットを以前に転送していないと判定された場合に、前記転送する段階（ｅ）の転送段階を行う、
請求項１９に記載のプログラム。
【請求項２１】
前記方法は、（ｅ）（ｂ）で識別された前記ポート上で前記ルーティング制御デバイスへメッセージを送信する段階であって、前記メッセージは、前記転送デバイスと、前記転送デバイスが接続されている、前記複数の転送デバイスのうち複数の他の転送デバイスとを識別する段階を更に備え、
前記ルーティング制御デバイスは、ネットワークのトポロジを表すデータベースを構築するべく前記メッセージを使用し、前記パスを決定するべく前記データベースを使用する、
請求項１６から２０のいずれか一項に記載のプログラム。
【請求項２２】
前記制御パケットは、前記ルーティング制御デバイスの識別子を含み、
前記方法は、
（ｅ）前記転送デバイスのポート上で、他のルーティング制御デバイスの識別子を含む他の制御パケットを受信する段階と、
（ｆ）前記転送デバイスの受信した前記ポートに少なくとも部分的に基づいて、前記他のルーティング制御デバイスへ到達するべく、前記転送デバイスのどのポート上でデータを転送するか識別する段階と、
（ｇ）新規データストリームの前記転送デバイスでの受信に応答して、前記複数の転送デバイスを通る前記パスが構成されるように命令する前記メッセージを、前記ルーティング制御デバイス、および、前記他のルーティング制御デバイスのいずれに送信するか決定する段階と
を更に含む、請求項１６から２１のいずれか一項に記載のプログラム。
【請求項２３】
複数の転送デバイスのネットワークにおいて、少なくとも、転送デバイスのポートに接続されている、ルーティング制御デバイスであって、
前記複数の転送デバイスの前記ネットワークのトポロジを判定するよう構成されたコントローラ検出モジュールと、
前記ネットワークのトポロジを保存するよう構成されたトポロジデータベースと、
前記ルーティング制御デバイスから、前記ネットワーク内の各転送デバイスへのパスを確立し、
前記ネットワーク内の前記転送デバイスのそれぞれから前記ルーティング制御デバイスへのパスを確立し、
転送元デバイスからの接続要求を受けると、前記転送元デバイスから転送先デバイスへの接続パスを確立する
よう構成されたパス決定モジュールと、
前記接続パスが確立されている間、前記転送元デバイスから前記ルーティング制御デバイス、および、前記ルーティング制御デバイスから前記転送先デバイスまでの前記パスを通して、前記接続要求に対して少なくとも１つの初期パケットを送るよう構成されたデータ転送モジュールと
を備える、ルーティング制御デバイス。