(57)【特許請求の範囲】
【請求項１】
第１のネットワークデバイスによって実行される方法であって、
前記第１のネットワークデバイスから通信ネットワークの第２のネットワークデバイスに第１のパケットを送信することを決定することと、ここにおいて、前記第１のパケットは、元のソース媒体アクセス制御（ＭＡＣ）アドレスを含み、
前記第１のネットワークデバイスの第１のソース通信インターフェースから前記第２のネットワークデバイスの第１の宛先通信インターフェースに前記第１のパケットを送信するための第１のネットワーク経路を選択することと、
前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第１のネットワークデバイスの前記第１のソース通信インターフェースの第１のソースＭＡＣアドレスを決定することと、
前記第１のソースＭＡＣアドレスが前記元のソースＭＡＣアドレスに合致しないと決定することに応答して、前記第１のパケットにおいて前記元のソースＭＡＣアドレスを前記第１のソースＭＡＣアドレスに置き換えることと、
前記第１のソースＭＡＣアドレスを含む前記第１のパケットを、前記第１のネットワーク経路を介して送信することと、を備える方法。
【請求項２】
前記第１のパケットの第１の特性に少なくとも部分的に基づいて前記第１のパケットのために第１の種別カテゴリーを選択することと、
前記第１のネットワーク経路と前記第１の種別カテゴリーとを関連付けることと、をさらに備える、請求項１に記載の方法。
【請求項３】
前記第１のネットワークデバイスから前記第２のネットワークデバイスに第２のパケットを送信することを決定することと、
前記第２のパケットの第２の特性に少なくとも部分的に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると決定することと、
前記第２のパケットが前記第１の種別カテゴリーに関連付けられると決定したことに少なくとも部分的に基づいて、前記第１のネットワークデバイスの前記第１のソース通信インターフェースから前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに前記第２のパケットを送信するために、前記第１のネットワーク経路を選択することと、をさらに備える、請求項２に記載の方法。
【請求項４】
前記第１のパケットの前記第１の特性は、上位プロトコル層宛先アドレス、上位プロトコル層ソースアドレス、下位プロトコル層宛先アドレス、下位プロトコル層ソースアドレス、前記第１のパケットに関連する優先度、前記第１のパケットに関連するレイテンシ、パケットタイプ、前記第１のパケットを送信するために使用されるべき通信プロトコル、前記第１のパケットがそこから送信される通信ポート、前記第１のパケットが送信される際に経由する前記通信ネットワーク、および前記第１のパケットを生成したアプリケーションから成るグループのうちの少なくとも１つのメンバーを備える、請求項２に記載の方法。
【請求項５】
前記第１のソースＭＡＣアドレスを前記決定することは、
前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第１のソース通信インターフェースを選択することを備える、請求項１に記載の方法。
【請求項６】
前記第２のネットワークデバイスに関連する元の宛先ＭＡＣアドレスを前記第１のパケットから検出することと、
前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第２のネットワークデバイスの前記第１の宛先通信インターフェースの新たなＭＡＣアドレスを決定することと、
前記新たな宛先ＭＡＣアドレスが前記元の宛先ＭＡＣアドレスに合致しないと決定することに応答して、前記新たな宛先ＭＡＣアドレスを前記元の宛先ＭＡＣアドレスの上に上書きすることとをさらに備える、請求項５に記載の方法。
【請求項７】
前記第１のソースＭＡＣアドレスを前記決定することは、
前記第１のネットワークデバイスの前記第１のソース通信インターフェースに関連する複数のＭＡＣアドレスの第１を前記第１のソースＭＡＣアドレスとして選択することと、
前記第１のネットワークデバイスに関連する所定のＭＡＣアドレスを前記第１のソースＭＡＣアドレスとして選択することと、ここにおいて、前記所定のＭＡＣアドレスは、前記第１のネットワークデバイスの複数のインターフェースに関連する複数のＭＡＣアドレスのいずれとも異なり、
前記第１のネットワークデバイスに関連する複数のＭＡＣアドレス間のマッピングに少なくとも部分的に基づいて、前記第１のソースＭＡＣアドレスを選択することと、
前記第１のネットワークデバイスに関連するルーティングアルゴリズムおよび前記通信ネットワークのトポロジーに少なくとも部分的に基づいて、前記第１のネットワークデバイスに関連する前記複数のＭＡＣアドレスから前記第１のソースＭＡＣアドレスを選択することと、
のうちの１つをさらに備える、請求項１に記載の方法。
【請求項８】
前記第１の宛先通信インターフェースのための宛先ＭＡＣアドレスを決定すること、をさらに備え、ここにおいて、前記宛先ＭＡＣアドレスを前記特定することは、
前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する複数のＭＡＣアドレスの第１を前記宛先ＭＡＣアドレスとして選択することと、
前記第２のネットワークデバイスに関連する所定のＭＡＣアドレスを前記宛先ＭＡＣアドレスとして選択することと、ここにおいて、前記所定のＭＡＣアドレスは、前記第２のネットワークデバイスの複数のインターフェースに関連する複数のＭＡＣアドレスのいずれとも異なり、
前記第２のネットワークデバイスに関連する複数のＭＡＣアドレス間のマッピングに少なくとも部分的に基づいて、前記宛先ＭＡＣアドレスを選択することと、
前記第２のネットワークデバイスに関連するルーティングアルゴリズムおよび前記通信ネットワークのトポロジーに少なくとも部分的に基づいて、前記第２のネットワークデバイスに関連する前記複数のＭＡＣアドレスから前記宛先ＭＡＣアドレスを選択することと、
から成るグループのうちの少なくとも１つのメンバーを備える、請求項１に記載の方法。
【請求項９】
前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する複数のＭＡＣアドレスを発見することをさらに備え、ここにおいて、前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスを発見することは、
前記第２のネットワークデバイスから、前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスのうちの少なくとも１つの指示を備える発見告知パケットを受信することと、
前記第２のネットワークデバイスから受信した通信パケットに関連するアドレスフィールドを分析して、前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスのうちの少なくとも１つを決定することと、および
前記第２のネットワークデバイスに対し、前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスのうちの少なくとも１つの前記指示を要求することと、
前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスに少なくとも部分的に基づいて、前記第１の宛先通信インターフェースのための宛先ＭＡＣアドレスを特定することと、
から成るグループのうちの少なくとも１つのメンバーを備える、請求項１に記載の方法。
【請求項１０】
第１のソース通信インターフェースと、
プロセッサと、
命令を記憶するためのメモリと、を備える第１の通信デバイスであって、前記命令は前記プロセッサによって実行されると、前記第１の通信デバイスに、
前記第１の通信デバイスから第２の通信デバイスに第１のパケットを送信することを決定することと、ここにおいて、前記第１のパケットは、元のソース媒体アクセス制御（ＭＡＣ）アドレスを含み、
前記第１の通信デバイスの前記第１のソース通信インターフェースから前記第２の通信デバイスの第１の宛先通信インターフェースに前記第１のパケットを送信するための第１のネットワーク経路を選択することと、
前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第１の通信デバイスの前記第１のソース通信インターフェースの第１のソースＭＡＣアドレスを決定することと、
前記第１のソースＭＡＣアドレスが前記元のソースＭＡＣアドレスに合致しないと決定することに応答して、前記第１のパケットにおいて前記元のソースＭＡＣアドレスを前記第１のソースＭＡＣアドレスに置き換えることと、
前記第１のソースＭＡＣアドレスを含む前記第１のパケットを、前記第１のネットワーク経路を介して送信することと、
を行わせる、第１の通信デバイス。
【請求項１１】
前記プロセッサによって実行されると、前記命令は前記第１の通信デバイスに、
前記第１のパケットの第１の特性に少なくとも部分的に基づいて、前記第１のパケットのための第１の種別カテゴリーを選択することと、
前記第１のネットワーク経路と前記第１の種別カテゴリーとを関連付けることと、
を行わせる、請求項１０に記載の第１の通信デバイス。
【請求項１２】
前記プロセッサによって実行されると、前記命令は前記第１の通信デバイスに、
前記第１の通信デバイスから前記第２の通信デバイスに第２のパケットを送信することを決定することと、
前記第２のパケットの第２の特性に少なくとも部分的に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると決定することと、
前記第２のパケットが前記第１の種別カテゴリーに関連付けられると決定したことに少なくとも部分的に基づいて、前記第１のソース通信インターフェースから前記第１の宛先通信インターフェースに前記第２のパケットを送信するための前記第１のネットワーク経路を選択することと、
を行わせる、請求項１１に記載の第１の通信デバイス。
【請求項１３】
前記プロセッサによって実行されると、前記命令は前記第１の通信デバイスに
前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第１のソース通信インターフェースを選択することによって、前記第１のソース通信インターフェースの前記第１のソースＭＡＣアドレスを決定することを行わせる、請求項１０に記載の第１の通信デバイス。
【請求項１４】
前記第１の通信デバイスに、前記第１のソース通信インターフェースの前記第１のソースＭＡＣアドレスを決定させる前記命令は、前記第１の通信デバイスに、
前記第１の通信デバイスの前記第１のソース通信インターフェースに関連する複数のＭＡＣアドレスの第１を前記第１のソースＭＡＣアドレスとして選択することと、
前記第１の通信デバイスに関連する所定のＭＡＣアドレスを前記第１のソースＭＡＣアドレスとして選択することと、ここにおいて、前記所定のＭＡＣアドレスは、前記第１の通信デバイスの複数のインターフェースに関連する複数のＭＡＣアドレスのいずれとも異なり、を行わせる命令をさらに備える、請求項１０に記載の第１の通信デバイス。
【請求項１５】
前記命令は、前記プロセッサによって実行されると、前記第１の通信デバイスに、
前記第２のネットワークデバイスの前記第１の宛先通信インターフェースに関連する複数のＭＡＣアドレスを発見させ、ここにおいて、前記第１の通信デバイスに前記複数のＭＡＣアドレスを発見させる前記命令は、
前記第２の通信デバイスから、前記第２の通信デバイスの前記第１の宛先通信インターフェースに関連する複数のＭＡＣアドレスのうちの少なくとも１つの指示を備える発見告知パケットを受信することと、
前記第２の通信デバイスから受信した通信パケットに関連するアドレスフィールドを分析して、前記第２の通信デバイスの前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスのうちの少なくとも１つを特定することと、
前記第２の通信デバイスに対し、前記第２の通信デバイスの前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスのうちの少なくとも１つの前記指示を要求することと、
のための命令から成るグループから少なくとも１つの命令を備え、および
前記第１の宛先通信インターフェースに関連する前記複数のＭＡＣアドレスに少なくとも部分的に基づいて、前記第１の宛先通信インターフェースのための宛先ＭＡＣアドレスを決定させる、請求項１０に記載の第１の通信デバイス。
【請求項１６】
１つまたは複数のプロセッサによって実行されると、前記１つまたは複数のプロセッサに、請求項１−１１の方法のうちのいずれか１つを実行させる命令を記憶した、１つまたは複数の機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、２０１１年５月８日出願の米国仮出願第６１／４５０，４６２号および２０１１年７月２２日出願の米国特許出願第１３／１８９，２７２号の優先権の利益を主張する。
【０００２】
本発明の主題の実施形態は、一般に通信システムの分野に関し、より詳細には、ハイブリッド通信ネットワークのためのアドレス指定方式に関する。
【背景技術】
【０００３】
ハイブリッド通信ネットワーク（たとえば、ハイブリッドホームネットワーク）は一般に、単一の拡張通信ネットワークを形成するために様々なネットワーク技術を利用してデバイス間でパケットを転送するブリッジング対応デバイスを使用して相互接続された複数のネットワーキング技術（たとえば、Ｗｉ−Ｆｉ（登録商標）、ＨｏｍｅＰｌｕｇ  ＡＶ、イーサ（登録商標）ネットなど）を備える。一般に、通信機構およびプロトコルの詳細（たとえば、デバイスおよびトポロジー発見プロトコル、ブリッジングプロトコルなど）は、各ネットワーキング技術に固有のものである。ハイブリッド通信ネットワークは、ハイブリッド通信デバイスと従来型（またはレガシー）通信デバイスとを備え得る。従来型通信デバイスは一般に、単一の通信プロトコル（たとえば、インターネットプロトコル−ＩＰｖ４またはＩＰｖ６）をサポートする単一のネットワーキングインターフェースを実装する。一方、ハイブリッド通信デバイスは一般に、複数のネットワーキング技術で動作するように構成された（たとえば、各々が異なる通信技術をサポートし得る）複数の通信インターフェースを備える。
【発明の概要】
【０００４】
いくつかの実施形態では、一方法は、第１のネットワークデバイスから通信ネットワークの第２のネットワークデバイスにパケットを送信することを決定することと、第１のネットワークデバイスから第２のネットワークデバイスにパケットを送信するために、通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択することと、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定することと、第１のネットワークデバイスから第２のネットワークデバイスにパケットを送信するために選択された第１のネットワーク経路に少なくとも部分的に基づいて、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定することと、第１のネットワークデバイスに関連するソースアドレスと第２のネットワークデバイスに関連する宛先アドレスとを少なくとも含むパケットを、第１のネットワーク経路を介して第１のネットワークデバイスのソース通信インターフェースから第２のネットワークデバイスの宛先通信インターフェースに送信することとを備える。
【０００５】
いくつかの実施形態では、第１のネットワークデバイスに関連するソースアドレスは、第１のネットワークデバイスのソース通信インターフェースに関連する媒体アクセス制御（ＭＡＣ）アドレスを備え、第２のネットワークデバイスに関連する宛先アドレスは、第２のネットワークデバイスの宛先通信インターフェースに関連するＭＡＣアドレスを備える。
【０００６】
いくつかの実施形態では、本方法は、パケットの特性に基づいてパケットのために複数の種別カテゴリーから第１の種別カテゴリーを選択することと、パケットを送信するために選択された第１のネットワーク経路とパケットのために選択された第１の種別カテゴリーとを関連付けることと、パケットを送信するために選択された第１のネットワーク経路とパケットのために選択された第１の種別カテゴリーとの関連付けを記憶することとをさらに備える。
【０００７】
いくつかの実施形態では、本方法は、第１のネットワークデバイスから第２のネットワークデバイスに第２のパケットを送信することを決定することと、第２のパケットの特性に基づいて第２のパケットが第１の種別カテゴリーに関連付けられると判断することと、第２のパケットの特性に基づいて第２のパケットが第１の種別カテゴリーに関連付けられると前記判断したことに応答して、第１のネットワークデバイスのソース通信インターフェースから第２のネットワークデバイスの宛先通信インターフェースに第２のパケットを送信するために、通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択することとをさらに備える。
【０００８】
いくつかの実施形態では、パケットの特性は、上位プロトコル層宛先アドレス、上位プロトコル層ソースアドレス、下位プロトコル層宛先アドレス、下位プロトコル層ソースアドレス、パケットに関連する優先度、パケットに関連するレイテンシ、パケットタイプ、パケットが送信される際に準拠する通信プロトコル、パケットがそこから送信される通信ポート、パケットが送信される際に経由する通信ネットワーク、およびパケットを生成したアプリケーションのうちの少なくとも１つを備える。
【０００９】
いくつかの実施形態では、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを前記特定することは、第１のネットワークデバイスの複数の通信インターフェースからソース通信インターフェースを選択することと、パケットを送信するために選択された第１のネットワーク経路に関連する第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを特定することとを備え、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを前記特定することは、第２のネットワークデバイスの複数の通信インターフェースから宛先通信インターフェースを選択することと、パケットを送信するために選択された第１のネットワーク経路に関連する第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスを特定することとを備える。
【００１０】
いくつかの実施形態では、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを前記特定することは、パケットを送信するために選択された第１のネットワークデバイスに関連する元のソースアドレスをパケットから検出することと、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致するかどうかを判断することと、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致しないと判断したことに応答して、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを元のソースアドレスの上に上書きすることと、パケットの送信のために第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを利用することとをさらに備える。
【００１１】
いくつかの実施形態では、第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスを前記特定することは、パケットを送信するために第１のネットワークデバイスによって選択された第２のネットワークデバイスに関連する元の宛先アドレスをパケットから検出することと、第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスに元の宛先アドレスが合致するかどうかを判断することと、第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスに元の宛先アドレスが合致しないと判断したことに応答して、第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスを元の宛先アドレスの上に上書きすることと、パケットの送信のために第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスを利用することとをさらに備える。
【００１２】
いくつかの実施形態では、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを前記特定することは、第１のネットワークデバイスの複数の通信インターフェースのうちの第１のインターフェースに関連する複数のアドレスの第１をソースアドレスとして選択することであって、第１のネットワークデバイスの複数のインターフェースの第１がソース通信インターフェースとは異なること、第１のネットワークデバイスに関連する所定のアドレスをソースアドレスとして選択することであって、第１のネットワークデバイスに関連する所定のアドレスが、第１のネットワークデバイスの複数のインターフェースに関連する複数のアドレスのいずれとも異なること、第１のネットワークデバイスに関連する複数のアドレスから、複数のアドレスと第１のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいてソースアドレスを選択すること、ならびに第１のネットワークデバイスに関連する複数のアドレスから、第１のネットワークデバイスに関連するルーティングアルゴリズムおよび通信ネットワークのトポロジーに少なくとも部分的に基づいてソースアドレスを選択することのうちの１つをさらに備える。
【００１３】
いくつかの実施形態では、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを前記特定することは、第２のネットワークデバイスの複数の通信インターフェースのうちの第１のインターフェースに関連する複数のアドレスの第１を宛先アドレスとして選択することであって、第２のネットワークデバイスの複数のインターフェースの第１が宛先通信インターフェースとは異なること、第２のネットワークデバイスに関連する所定のアドレスを宛先アドレスとして選択することであって、第２のネットワークデバイスに関連する所定のアドレスが、第２のネットワークデバイスの複数のインターフェースに関連する複数のアドレスのいずれとも異なること、第２のネットワークデバイスに関連する複数のアドレスから、複数のアドレスと第２のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいて宛先アドレスを選択すること、第１のネットワーク経路に対応する第２のネットワークデバイスに関連する複数のアドレスのうちの１つを宛先アドレスとして選択すること、ならびに第２のネットワークデバイスに関連する複数のアドレスから、第１のネットワークデバイスに関連するルーティングアルゴリズムおよび通信ネットワークのトポロジーに少なくとも部分的に基づいて宛先アドレスを選択することのうちの１つをさらに備える。
【００１４】
いくつかの実施形態では、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを前記特定することは、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスを発見することを備え、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスを前記発見することは、第２のネットワークデバイスから、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信すること、第２のネットワークデバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つを特定すること、および第２のネットワークデバイスに対し、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を要求することのうちの少なくとも１つを備える。
【００１５】
いくつかの実施形態では、一通信デバイスは、ネットワークインターフェースと、ネットワークインターフェースに結合されたアドレス選択およびルーティングユニットとを備え、アドレス選択およびルーティングユニットは、通信デバイスから通信ネットワークの第２の通信デバイスにパケットを送信することを決定したことに応答して、通信デバイスから第２の通信デバイスにパケットを送信するために、通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択し、通信デバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定し、通信デバイスから第２の通信デバイスにパケットを送信するために選択された第１のネットワーク経路に少なくとも部分的に基づいて、第２の通信デバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定し、通信デバイスに関連するソースアドレスと第２の通信デバイスに関連する宛先アドレスとを少なくとも含むパケットを、第１のネットワーク経路を介して通信デバイスのソース通信インターフェースから第２の通信デバイスの宛先通信インターフェースに送信するように動作可能である。
【００１６】
いくつかの実施形態では、アドレス選択およびルーティングユニットは、上位プロトコル層宛先アドレス、上位プロトコル層ソースアドレス、下位プロトコル層宛先アドレス、下位プロトコル層ソースアドレス、パケットに関連する優先度、パケットに関連するレイテンシ、パケットタイプ、パケットが送信される際に準拠する通信プロトコル、パケットがそこから送信される通信ポート、パケットが送信される際に経由する通信ネットワーク、およびパケットを生成したアプリケーションのうちの少なくとも１つを備えるパケットの特性に基づいて、パケットのために複数の種別カテゴリーから第１の種別カテゴリーを選択し、パケットを送信するために選択された第１のネットワーク経路とパケットのために選択された第１の種別カテゴリーとを関連付け、パケットを送信するために選択された第１のネットワーク経路とパケットのために選択された第１の種別カテゴリーとの関連付けを記憶するようにさらに動作可能である。
【００１７】
いくつかの実施形態では、アドレス選択およびルーティングユニットは、通信デバイスから第２の通信デバイスに第２のパケットを送信することを決定し、第２のパケットの特性に基づいて第２のパケットが第１の種別カテゴリーに関連付けられると判断し、第２のパケットの特性に基づいて第２のパケットが第１の種別カテゴリーに関連付けられるとアドレス選択およびルーティングユニットが判断したことに応答して、通信デバイスのソース通信インターフェースから第２の通信デバイスの宛先通信インターフェースに第２のパケットを送信するために、通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択するようにさらに動作可能である。
【００１８】
いくつかの実施形態では、通信デバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定するように動作可能なアドレス選択およびルーティングユニットは、通信デバイスの複数の通信インターフェースからソース通信インターフェースを選択し、パケットを送信するために選択された第１のネットワーク経路に関連する通信デバイスのソース通信インターフェースに対応するソースアドレスを特定するように動作可能なアドレス選択およびルーティングユニットを備え、第２の通信デバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定するように動作可能なアドレス選択およびルーティングユニットは、第２の通信デバイスの複数の通信インターフェースから宛先通信インターフェースを選択し、パケットを送信するために選択された第１のネットワーク経路に関連する第２の通信デバイスの宛先通信インターフェースに対応する宛先アドレスを特定するように動作可能なアドレス選択およびルーティングユニットを備える。
【００１９】
いくつかの実施形態では、通信デバイスのソース通信インターフェースに対応するソースアドレスを特定するように動作可能なアドレス選択およびルーティングユニットは、パケットを送信するために選択された通信デバイスに関連する元のソースアドレスをパケットから検出し、通信デバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致するかどうかを判断し、通信デバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致しないとアドレス選択およびルーティングユニットが判断したことに応答して、通信デバイスのソース通信インターフェースに対応するソースアドレスを元のソースアドレスに上書きし、パケットの送信のために通信デバイスのソース通信インターフェースに対応するソースアドレスを利用するように動作可能なアドレス選択およびルーティングユニットをさらに備える。
【００２０】
いくつかの実施形態では、通信デバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定するように動作可能なアドレス選択およびルーティングユニットは、通信デバイスの複数の通信インターフェースのうちの第１のインターフェースに関連する複数のアドレスの第１をソースアドレスとして選択することであって、通信デバイスの複数のインターフェースの第１がソース通信インターフェースとは異なること、または通信デバイスに関連する所定のアドレスをソースアドレスとして選択することであって、通信デバイスに関連する所定のアドレスが、通信デバイスの複数のインターフェースに関連する複数のアドレスのいずれとも異なることを行うように動作可能なアドレス選択およびルーティングユニットをさらに備える。
【００２１】
いくつかの実施形態では、第２の通信デバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定するように動作可能なアドレス選択およびルーティングユニットは、第２の通信デバイスから、第２の通信デバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信するように動作可能なアドレス選択およびルーティングユニット、第２の通信デバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、第２の通信デバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つを特定するように動作可能なアドレス選択およびルーティングユニット、ならびに第２の通信デバイスに対し、第２の通信デバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を要求するように動作可能なアドレス選択およびルーティングユニットのうちの少なくとも１つを備える。
【００２２】
いくつかの実施形態では、１つまたは複数の機械可読記憶媒体は、１つまたは複数のプロセッサによって実行されると、１つまたは複数のプロセッサに動作を実行させる命令を記憶しており、動作は、第１のネットワークデバイスから通信ネットワークの第２のネットワークデバイスにパケットを送信することを決定したことに応答して、第１のネットワークデバイスから第２のネットワークデバイスにパケットを送信するために、通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択する動作と、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定する動作と、第１のネットワークデバイスから第２のネットワークデバイスにパケットを送信するために選択された第１のネットワーク経路に少なくとも部分的に基づいて、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定する動作と、第１のネットワークデバイスに関連するソースアドレスと第２のネットワークデバイスに関連する宛先アドレスとを少なくとも含むパケットを、第１のネットワーク経路を介して第１のネットワークデバイスのソース通信インターフェースから第２のネットワークデバイスの宛先通信インターフェースに送信する動作とを備える。
【００２３】
いくつかの実施形態では、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定する前記動作は、第１のネットワークデバイスの複数の通信インターフェースからソース通信インターフェースを選択することと、パケットを送信するために選択された第１のネットワーク経路に関連する第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを特定することとを備え、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定する前記動作は、第２のネットワークデバイスの複数の通信インターフェースから宛先通信インターフェースを選択することと、パケットを送信するために選択された第１のネットワーク経路に関連する第２のネットワークデバイスの宛先通信インターフェースに対応する宛先アドレスを特定することとを備える。
【００２４】
いくつかの実施形態では、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを特定する前記動作は、パケットを送信するために選択された第１のネットワークデバイスに関連する元のソースアドレスをパケットから検出することと、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致するかどうかを判断することと、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスに元のソースアドレスが合致しないと判断したことに応答して、第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを元のソースアドレスの上に上書きすることと、パケットの送信のために第１のネットワークデバイスのソース通信インターフェースに対応するソースアドレスを利用することとをさらに備える。
【００２５】
いくつかの実施形態では、第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定する前記動作は、第１のネットワークデバイスの複数の通信インターフェースのうちの第１のインターフェースに関連する複数のアドレスの第１をソースアドレスとして選択することであって、第１のネットワークデバイスの複数のインターフェースの第１がソース通信インターフェースとは異なること、第１のネットワークデバイスに関連する所定のアドレスをソースアドレスとして選択することであって、第１のネットワークデバイスに関連する所定のアドレスが、第１のネットワークデバイスの複数のインターフェースに関連する複数のアドレスのいずれとも異なること、第１のネットワークデバイスに関連する複数のアドレスから、複数のアドレスと第１のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいてソースアドレスを選択すること、ならびに第１のネットワークデバイスに関連する複数のアドレスから、第１のネットワークデバイスに関連するルーティングアルゴリズムおよび通信ネットワークのトポロジーに少なくとも部分的に基づいてソースアドレスを選択することのうちの１つをさらに備える。
【００２６】
いくつかの実施形態では、第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定する前記動作は、第２のネットワークデバイスから、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信することと、第２のネットワークデバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つを特定することと、第２のネットワークデバイスに対し、第２のネットワークデバイスの複数の通信インターフェースのうちの少なくとも１つに関連する複数のアドレスのうちの少なくとも１つの指示を要求することとを備える。
【００２７】
添付の図面を参照することによって、本実施形態はより良く理解され、多数の目的、特徴および利点が当業者に明らかになろう。
【図面の簡単な説明】
【００２８】
【図１】ハイブリッド通信ネットワークのためのアドレス指定方式の一実施形態を示す例示的なブロック図。
【図２】ハイブリッド通信ネットワークのためのアドレス指定方式の例示的な動作を示すフロー図。
【図３Ａ】ソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の複数のネットワーク経路を示す例示的な概念図。
【図３Ｂ】転送デバイスを介したソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の複数のネットワーク経路を示す例示的な概念図。
【図４】ハイブリッド通信ネットワークのためのパケット種別ベースのアドレス指定方式の例示的な動作を示すフロー図。
【図５】ハイブリッド通信ネットワークのためのアドレス指定方式を含む電子デバイスの一実施形態のブロック図。
【発明を実施するための形態】
【００２９】
以下の説明は、本発明の主題の技法を実施する例示的なシステム、方法、技法、命令シーケンス、およびコンピュータプログラム製品を含む。ただし、説明する実施形態は、これらの具体的な詳細なしに実施され得ることを理解されたい。  たとえば、いくつかの実施形態では、アドレス指定方式は、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）デバイス（たとえば、ＩＥＥＥ８０２．１１ｎ）と、電力線ネットワークデバイス（たとえば、Ｈｏｍｅｐｌｕｇ  ＡＶ）と、同軸ネットワークデバイス（ＭｏＣＡ）と、イーサネット(登録商標）デバイスとを備えるハイブリッド通信ネットワークのために実施され得るが、他の実施形態では、アドレス指定方式は、他の規格／プロトコル（たとえば、ＷｉＭＡＸ（登録商標）など）を実施する他の適切なタイプのネットワークデバイスを備え得るハイブリッド通信ネットワークにおいて実施され得る。他の場合では、説明を不明瞭にしないために、よく知られている命令インスタンス、プロトコル、構造、および技法を詳細には図示していない。
【００３０】
ハイブリッド通信ネットワークは一般に、様々なネットワーク技術および通信媒体での（様々な通信プロトコルをサポートする）通信ネットワークの相互接続として形成される。ハイブリッド通信ネットワークは一般に、様々なネットワーク技術で動作するように構成されたハイブリッドデバイスを備える。ハイブリッドデバイスは一般に、複数のネットワークインターフェースを備え、それらの各々は媒体アクセス制御アドレス（たとえば、ＭＡＣアドレス）に関連付けられる。一方で、ハイブリッドデバイスは一般に、開放型システム間相互接続（ＯＳＩ）プロトコルスタックのネットワーク層に関連する１つのアドレス（たとえば、インターネットプロトコル（ＩＰ）アドレス）を備えており、したがって、ネットワーク層アドレスとＭＡＣアドレスとの間の１対１のマッピングは存在しないことがある。同様に、宛先ハイブリッドデバイスも、複数の通信インターフェースを備え、したがって単一の宛先ＩＰアドレスに関連する複数の宛先ＭＡＣアドレスを備え得る。ＯＳＩプロトコルスタックの上位層（たとえば、アプリケーション層、ネットワーク層など）の観点からすると、複数の通信インターフェースを実装しているハイブリッドデバイスは、単一の下位の媒体アクセス制御層および単一の物理層（すなわち、単一のＭＡＣ／ＰＨＹ層）、ひいては単一のＭＡＣアドレスを有するように見えることがある。したがって、場合によっては、送信される予定のパケットのソースＭＡＣアドレスフィールドには、パケットがそこから送信される通信インターフェース（「ソース通信インターフェース」）に対応しないＭＡＣアドレスがポピュレートされ得る。同様に、送信される予定のパケットの宛先ＭＡＣアドレスフィールドには、パケットが受信される場所となる宛先ハイブリッドデバイスの通信インターフェース（「宛先通信インターフェース」）に対応しないＭＡＣアドレスがポピュレートされ得る。宛先ハイブリッドデバイスは、正しくない宛先ＭＡＣアドレスを有する、宛先通信インターフェースにおいて受信した各パケットを、フィルタ処理／処分し得る。さらに、パケットにおけるソースＭＡＣアドレスおよび宛先ＭＡＣアドレスの使用が正しくなく、整合していない場合、ハイブリッド通信ネットワークにおける従来型学習ブリッジが、整合しないパケットを落として、パフォーマンスが劣化することもある。
【００３１】
いくつかの実施形態では、アドレス管理方式がハイブリッドデバイスによって実施されて、単一の通信インターフェースおよびＩＰアドレスとＭＡＣアドレスとの間の１対１のマッピングという上位層プロトコルの観点と、ハイブリッドデバイスに関連する複数のインターフェースおよび複数のＭＡＣアドレスという現実との間の不整合に対処することができる。宛先ハイブリッドデバイスにパケットを送信することを決定したことに応答して、ソースハイブリッドデバイスは、宛先ハイブリッドデバイスにパケットをルーティングする際の好ましいネットワーク経路を（ソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の複数の利用可能なネットワーク経路から）選択することができる。ソースハイブリッドデバイスは、パケットがそこから送信されるソース通信インターフェースと、宛先ハイブリッドデバイスにおいてパケットが受信される場所となる宛先通信インターフェースとを、好ましいネットワーク経路に少なくとも部分的に基づいて識別することができる。次いでソースハイブリッドデバイスは、それぞれソース通信インターフェースおよび宛先通信インターフェースに関連する下位のソースＭＡＣアドレスおよび宛先ＭＡＣアドレスを特定することができる。ソースハイブリッドデバイスは、パケットの適切なアドレスフィールドに、ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスをポピュレートすることができ、次いでパケットを、好ましいネットワーク経路を介して宛先ハイブリッドデバイスに送信することができる。そのようなアドレス指定方式により、ソースＭＡＣアドレスとソース通信インターフェースとの間および宛先ＭＡＣアドレスと宛先通信インターフェースとの間の整合性が維持されるようにし得る。ハイブリッド通信ネットワークのためのアドレス指定方式は、複数のアプリケーションを単一の通信インターフェースに結び付けることはなく、ソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の好ましいネットワーク経路の動的な変形形態を可能にし得る。本明細書で説明するアドレス指定方式はまた、既存のＭＡＣアドレスのデバイス識別子へのマッピング／変換機構、パケットフィルタ処理技法、および従来型学習ブリッジによって実施される転送プロトコルに適合し得る。これにより、パケット落ちの確率を最小限に抑え、ハイブリッド通信ネットワークのパフォーマンスを改善することができる。
【００３２】
図１は、ハイブリッド通信ネットワークのためのアドレス指定方式の一実施形態を示す例示的なブロック図である。図１は、ハイブリッドデバイス１０２および１０４を備えるハイブリッド通信ネットワーク１００を示している。ハイブリッドデバイス１０２は、アドレス選択ユニット１０６とルーティングユニット１０８とを備える。図１に示されていないが、ハイブリッドデバイス１０４もアドレス選択ユニットとルーティングユニットとを備え得る。いくつかの実装形態では、ハイブリッドデバイス１０２および１０４は、ＯＳＩプロトコルスタックを実装し得る。いくつかの実装形態では、ＯＳＩのプロトコルスタックの上位層（たとえば、ネットワーク層、トランスポート層、およびアプリケーション層）の観点からすると、ハイブリッドデバイス１０２は単一の下位のＭＡＣ／ＰＨＹ層、ひいては、ハイブリッドデバイス１０２によって生成されるパケットにポピュレートされるたった１つのソースＭＡＣアドレスを備えるように見えることがある。しかしながら、ソースハイブリッドデバイス１０２は複数の通信インターフェースを実装するので、ソースハイブリッドデバイス１０２は、複数のソースＭＡＣアドレス（たとえば一般には、ソース通信インターフェースごとに１つのソースＭＡＣアドレス）を備え得る。同様に、宛先ハイブリッドデバイス１０４も、対応する複数の宛先通信インターフェースに関連する複数の宛先ＭＡＣアドレスを備え得る。図１の段階Ａ〜Ｆで後述するように、ソースハイブリッドデバイス１０２のアドレス選択ユニット１０６は、単一の通信インターフェースおよびアドレスの１対１のマッピングという上位層の観点と、ハイブリッドデバイス１０２に関連する複数の通信インターフェースおよび複数のＭＡＣアドレスという現実との間の不整合を、送信されるパケットが適切なソースＭＡＣアドレスおよび宛先ＭＡＣアドレスを備えるようにすることによって管理する機能を実施し得る。
【００３３】
段階Ａにおいて、ハイブリッドデバイス１０２（「ソースハイブリッドデバイス」）は、ハイブリッドデバイス１０４（「宛先ハイブリッドデバイス」）にパケットを送信することを決定する。たとえば、ルーティングユニット１０８は、宛先ハイブリッドデバイス１０４に送信されるパケットを（たとえば、アプリケーションから）受信し得る。
【００３４】
段階Ｂにおいて、ルーティングユニット１０８は、ソースハイブリッドデバイス１０２から宛先ハイブリッドデバイス１０４にパケットをルーティングする際の好ましいネットワーク経路を選択する。いくつかの実装形態では、ルーティングユニット１０８は、ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間における１つまたは複数の以前に特定されたネットワーク経路の指示を記憶し得る。かかる１つまたは複数のネットワーク経路は、ソースハイブリッドデバイス１０２および宛先ハイブリッドデバイス１０４に関連する通信インターフェースの数に基づいて特定され得る。たとえば、ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間のネットワーク経路の数は、Ｎ×Ｍであることがあり、この場合にＮはソースハイブリッドデバイス１０２に関連する通信インターフェースの数であり、Ｍは宛先ハイブリッドデバイス１０４に関連する通信インターフェースの数である。いくつかの実装形態では、ルーティングユニット１０８は、ハイブリッド通信ネットワーク１００のトポロジー、ハイブリッド通信ネットワーク１００におけるレガシーブリッジおよびハイブリッドブリッジの存在、レガシーブリッジおよびハイブリッドブリッジに関連する転送テーブル、ハイブリッド通信ネットワーク１００の様々な通信リンク上のトラフィックなどに基づいて、好ましいネットワーク経路を選択することができる。好ましいネットワーク経路が選択された後、アドレス選択ユニット１０６は、段階Ｃ〜Ｆで述べるように、ソース通信インターフェースおよび宛先通信インターフェースとパケットにおけるソースＭＡＣアドレスおよび宛先ＭＡＣアドレスとの間のそれぞれの整合性を維持する機能を実施し得る。
【００３５】
段階Ｃにおいて、アドレス選択ユニット１０６は、ソース通信インターフェースと宛先通信インターフェースとを、好ましいネットワーク経路に少なくとも部分的に基づいて識別する。好ましいネットワーク経路は一般に、ソースハイブリッドデバイス１０２がパケットを送信する際に経由するソース通信インターフェースを表す「最初のホップ（first hop）」リンクを備える。したがって、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２に関連する複数の通信インターフェースのうちの１つを、パケットを送信する際に経由するソース通信インターフェースとして選択することができる。他の実施形態では、図２でさらに述べるように、様々な他の技法を用いてソース通信インターフェースを特定することができる。好ましいネットワーク経路はまた、宛先ハイブリッドデバイス１０４がパケットを受信する際に経由する宛先通信インターフェースを表す「最後のホップ（last hop）」リンクを示し得る。したがって、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に関連する複数の通信インターフェースのうちの１つを、宛先ハイブリッドデバイス１０４がパケットを受信すると予想される場所である宛先通信インターフェースとして選択することができる。
【００３６】
段階Ｄにおいて、アドレス選択ユニット１０６は、識別されたソース通信インターフェースに対応するソースＭＡＣアドレスと、識別された宛先通信インターフェースに対応する宛先ＭＡＣアドレスとを識別する。ソース通信インターフェースおよび宛先通信インターフェース、ひいてはソースＭＡＣアドレスおよび宛先ＭＡＣアドレスは、様々な基準に従って選択され得る。一例では、ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスは、ハイブリッドデバイス１０２および１０４に関連する様々な他のタイプのアドレス（たとえば、ＩＰアドレス）間の（マッピングまたは変換としても知られる）以前に判断された関連性に基づいて選択され得る。別の例として、ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスは、ソースハイブリッドデバイス１０２において採用されたルーティングアルゴリズム、ハイブリッド通信ネットワーク１００における転送デバイス、転送デバイスのうちの１つまたは複数が従来型学習ブリッジであるかどうか、転送デバイスに関連する転送テーブル（ある場合）、および転送デバイスの他のルーティング行動に基づいて選択され得る。別の例として、従来型学習ブリッジにおいてパケットが落ちる可能性を最小限に抑えるために、従来型学習ブリッジの適切な「学習された」ポートにおいてソースＭＡＣアドレスが受信されるように、ソースＭＡＣアドレスは選択され得る。他の実施形態では、図２でさらに述べるように、様々な他の技法を用いてソースＭＡＣアドレスと宛先ＭＡＣアドレスとを特定することができる。
【００３７】
段階Ｅにおいて、アドレス選択ユニット１０６は、ソースＭＡＣアドレスをパケットのソースアドレスフィールドにポピュレートし、宛先ＭＡＣアドレスをパケットの宛先アドレスフィールドにポピュレートする。一例では、ソースハイブリッドデバイス１０２によって送信されるパケットは、宛先ＭＡＣアドレス、ソースＭＡＣアドレス、宛先ネットワークアドレス、およびソースネットワークアドレスのためのフィールドを備え得る。一実装形態では、ソースネットワークアドレスおよび宛先ネットワークアドレスは、ソースハイブリッドデバイス１０２および宛先ハイブリッドデバイス１０４によって実施されるネットワーク層プロトコルに応じて、インターネットプロトコルバージョン４（ＩＰｖ４）アドレス、ＩＰバージョン６（ＩＰｖ６）アドレス、ＡｐｐｌｅＴａｌｋアドレス、または他の適切なネットワークアドレスであり得る。ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスは、ソースハイブリッドデバイス１０２および宛先ハイブリッドデバイス１０４がそれぞれパケットを送信および受信する際の通信インターフェースを示し得る。アドレス選択ユニット１０６は、ソースＭＡＣアドレスフィールドおよび宛先ＭＡＣアドレスフィールドに、それぞれ（段階Ｄにおいて特定された）ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスをポピュレートし得る。いくつかの実装形態では、図２においてさらに述べるように、アドレス選択ユニット１０６は、パケットから（たとえば、上位プロトコル層によってソースハイブリッドデバイス１０２に関連付けられるデフォルトアドレスとして選択され得る）元のソースＭＡＣアドレスを読み取ることができ、選択されたソース通信インターフェースに対応する（段階Ｄにおいて特定された）ソースＭＡＣアドレスと元のソースＭＡＣアドレスとを比較することができる。不一致がある場合、アドレス選択ユニット１０６は、選択されたソース通信インターフェースに対応するソースＭＡＣアドレスを、パケット内のソースＭＡＣアドレスフィールドに上書きし得る。同様に、パケット内の元の宛先ＭＡＣアドレスと選択された宛先通信インターフェースに対応する（段階Ｄにおいて特定された）宛先ＭＡＣアドレスとの間に不一致がある場合、アドレス選択ユニット１０６は、選択された宛先通信インターフェースに対応する宛先ＭＡＣアドレスを、パケット内の宛先ＭＡＣアドレスフィールドに上書きし得る。加えて、いくつかの実装形態では、アドレス選択ユニット１０６は、パケットがさらに、ソースハイブリッドデバイス１０２に割り当てられたソースＩＰアドレスと、宛先ハイブリッドデバイス１０４に割り当てられた宛先ＩＰアドレスと、ソースハイブリッドデバイス１０２に割り当てられたソースデバイス識別子と、宛先ハイブリッドデバイス１０４に割り当てられた宛先デバイス識別子とを備えるようにし得る。
【００３８】
段階Ｆにおいて、ソースハイブリッドデバイス１０２は、ソースＭＡＣアドレスと宛先ＭＡＣアドレスとを備えるパケットを、好ましいネットワーク経路を介して宛先ハイブリッドデバイス１０４に送信する。
【００３９】
図２は、ハイブリッド通信ネットワークのためのアドレス指定方式の例示的な動作を示すフロー図（「フロー」）２００である。フロー２００は、ブロック２０２において開始する。
【００４０】
ブロック２０２において、ソースハイブリッドデバイスが、宛先ハイブリッドデバイスにパケットを送信することを決定する。図１の例では、ソースハイブリッドデバイス１０２のルーティングユニット１０８は、宛先ハイブリッドデバイス１０４にパケットを送信することを決定し得る。フローはブロック２０４に続く。
【００４１】
ブロック２０４において、ソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の複数の利用可能なネットワーク経路から好ましいネットワーク経路が選択される。たとえば、ルーティングユニット１０８は、ソースハイブリッドデバイス１０２から宛先ハイブリッドデバイス１０４にパケットを送信する際の好ましいネットワーク経路を選択し得る。いくつかの実装形態では、複数のネットワーク経路は、ハイブリッド通信ネットワーク１００のトポロジーおよびハイブリッド通信ネットワーク１００におけるブリッジングデバイスの転送能力の結果であり得る。ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間の利用可能なネットワーク経路の数はまた、ソースハイブリッドデバイス１０２および宛先ハイブリッドデバイス１０４に関連する通信インターフェースの数に依存し得る。  図３Ａは、ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間の複数のネットワーク経路を示す例示的な概念図である。一例では、図３Ａに示すように、ソースハイブリッドデバイス１０２は、２つの通信インターフェースＳ１  ３０４およびＳ２  ３０２を備える。宛先ハイブリッドデバイス１０４も、２つの通信インターフェースＤ１  ３０６およびＤ２  ３０８を備える。したがって、この例では、ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間に４つの可能なネットワーク経路があり得る。４つのネットワーク経路は、経路（Ｓ１、Ｄ１）３１０、経路（Ｓ１、Ｄ２）３１２、経路（Ｓ２、Ｄ１）３１４、および経路（Ｓ２、Ｄ２）３１６として表される。より一般的には、ソースハイブリッドデバイス１０２から宛先ハイブリッドデバイス１０４にパケットをルーティングするために利用可能なネットワーク経路の最小数は、Ｎ×Ｍと表されることがあり、この場合にＮはソースハイブリッドデバイス１０２に関連する通信インターフェースの数を表し、Ｍは宛先ハイブリッドデバイス１０４に関連する通信インターフェースの数を表す。
【００４２】
いくつかの実装形態では、４つのネットワーク経路３１０、３１２、３１４、および３１６のうちの１つが、送信されるパケットのタイプに応じて（たとえば、図４で述べるように、パケット種別に基づいて）、各ネットワーク経路において使用されるネットワーキング技術に基づいて、ネットワーク経路のうちのいくつかがソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４とを接続する従来型ブリッジデバイスを含むかどうかなどに基づいて、好ましいネットワーク経路として選択され得る。他の実装形態では、好ましいネットワーク経路は、ハイブリッド通信ネットワーク１００のトポロジー、ハイブリッド通信ネットワーク１００における通信リンクのリンク品質特性（たとえば、サービス品質、すなわちＱｏＳ）、ソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間の利用可能なネットワーク経路の数、ソースハイブリッドデバイスと宛先ハイブリッドデバイスとの間の転送デバイス（たとえば、ネットワーク経路のうちの１つまたは複数における従来型ブリッジデバイス）の存在、ソースハイブリッドデバイスおよび宛先ハイブリッドデバイスによってサポートされる通信プロトコル、ならびに様々な他の要素に少なくとも部分的に基づいて選択され得る。図３Ｂを参照すると、ソースハイブリッドデバイス１０２は、ハイブリッドブリッジ３５０を介して宛先ハイブリッドデバイス１０４に結合される。図３Ｂに示すように、ソースハイブリッドデバイス１０２は２つの通信インターフェース３０２および３０４を備え、宛先ハイブリッドデバイス１０４は２つの通信インターフェース３０６および３０８を備える。図３Ｂの例では、ハイブリッドブリッジ３５０は３つの通信インターフェース３５８、３６０、および３６２を備える。図３Ｂのハイブリッド通信ネットワークは、３つの通信ネットワーク、すなわち、電力線通信ネットワーク３５２、イーサネットネットワーク３５４、およびワイヤレス通信ネットワーク３５６の相互接続を備える。図３Ｂにおいて、ソースハイブリッドデバイス１０２およびハイブリッドブリッジ３５０は、それぞれインターフェース３０２および３５８を介して電力線通信ネットワーク３５２に結合される。宛先ハイブリッドデバイス１０４およびハイブリッドブリッジ３５０は、それぞれインターフェース３０６および３６０を介してイーサネットネットワーク３５４に結合される。最後に、ソースハイブリッドデバイス１０２、宛先ハイブリッドデバイス１０４およびハイブリッドブリッジ３５０は、それぞれインターフェース３０４、３０８および３６２を介してワイヤレス通信ネットワーク３５６に結合される。アドレス選択ユニット１０６は、上記の要素のうちの１つまたは複数（たとえば、ハイブリッド通信ネットワーク１００のトポロジーの知識）に基づいて、好ましいネットワーク経路を選択し得る。再び図２を参照すると、フローはブロック２０６に続く。
【００４３】
ブロック２０６において、ハイブリッドデバイスに関連するソース通信インターフェースが選択される。一実装形態では、図１で上述したように、アドレス選択ユニット１０６は、ブロック２０４において特定された好ましいネットワーク経路に少なくとも部分的に基づいて、ソース通信インターフェースを選択し得る。アドレス選択ユニット１０６はまた、通信ネットワークトポロジーの知識および好ましいネットワーク経路に少なくとも部分的に基づいて、ソースハイブリッドデバイス１０２に関連する複数の通信インターフェースからソース通信インターフェースを選択し得る。別の実装形態では、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２に関連する通信インターフェースの各々に関連するトラフィック負荷、送信されるパケットのタイプ（たとえば、ビデオパケット、オーディオパケット、など）、および様々な他のパケット特性に基づいてソース通信インターフェースを選択し得る。フローはブロック２０８に続く。
【００４４】
ブロック２０８において、好ましいネットワーク経路に少なくとも部分的に基づいて宛先通信インターフェースが選択される。たとえば、アドレス選択ユニット１０６は、ブロック２０４において特定された好ましいネットワーク経路に少なくとも部分的に基づいて、宛先通信インターフェースを選択し得る。図１に関して説明したように、アドレス選択ユニット１０６はまた、通信ネットワークトポロジーの知識および好ましいネットワーク経路に少なくとも部分的に基づいて、宛先ハイブリッドデバイス１０４に関連する複数の通信インターフェースから宛先通信インターフェースを選択し得る。フローはブロック２１０に続く。
【００４５】
ブロック２１０において、ソース通信インターフェースに対応するソースアドレスが特定される。一実装形態では、アドレス選択ユニット１０６は、ソースＭＡＣアドレスが、（ブロック２０６において選択された）ソース通信インターフェースおよび（ブロック２０４において選択された）好ましいネットワーク経路に対応するＭＡＣアドレスであると判断し得る。別の実装形態では、アドレス選択ユニット１０６は、（ブロック２０６において特定された）パケットを送信するために使用されるソース通信インターフェースにかかわらず、ソースハイブリッドデバイス１０２に関連する複数の通信インターフェースのうちの１つに割り当てられた所定のＭＡＣアドレスであるソースＭＡＣアドレスを選択することができる。別の実装形態では、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２に以前に割り当てられた所定のアドレスであって、ソースハイブリッドデバイス１０２に関連する通信インターフェースのいずれにも割り当てられていない所定のアドレスを（ソースＭＡＣアドレスとして）選択することができる。いくつかの実装形態では、選択されたソースＭＡＣアドレスが（好ましいネットワーク経路に沿って）中間の従来型学習ブリッジの適切な「学習された」ポートにおいて受信されるように、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２に関連する複数のＭＡＣアドレスからソースＭＡＣアドレスを選択し得る。他の実装形態では、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２に関連するＭＡＣアドレスを特定せず、代わりにソースハイブリッドデバイス１０２によって実施される通信プロトコルに応じて他の適切なタイプのアドレスを特定することがあることに留意されたい。フローはブロック２１２に続く。
【００４６】
ブロック２１２において、宛先通信インターフェースに対応する宛先アドレスが特定される。たとえば、アドレス選択ユニット１０６は、宛先ＭＡＣアドレスが、（ブロック２０８において選択された）宛先通信インターフェースに対応するＭＡＣアドレスであると判断し得る。一実装形態では、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に関連する（ブロック２０８において特定された）同じ宛先通信インターフェースから以前に受信した通信に基づいて、宛先ＭＡＣアドレスを特定し得る。たとえば、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４から受信した１つまたは複数のパケット内のアドレスフィールドを分析して、宛先ＭＡＣアドレスを特定することができる。代替的に、アドレス選択ユニット１０６は、様々な技法を用いて、宛先ハイブリッドデバイス１０４に関連する通信インターフェースを発見し、ひいては宛先ＭＡＣアドレスを発見することができる。一実装形態では、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に関連するＭＡＣアドレスを示す１つまたは複数の発見告知メッセージを受信し得る。別の実装形態では、アドレス選択ユニット１０６は、プロトコル交換シーケンス（たとえば、アドレス解決プロトコル（ＡＲＰ））を開始することができ、宛先ハイブリッドデバイス１０４から受信した１つまたは複数のＡＲＰ応答メッセージを調べて、宛先ハイブリッドデバイス１０４に関連するＭＡＣアドレスを特定することができる。アドレス選択ユニット１０６は、（ブロック２０８において特定された）宛先通信インターフェースおよび好ましいネットワーク経路に対応するＭＡＣアドレスを、宛先ＭＡＣアドレスとして選択し得る。他の実装形態では、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に関連するＭＡＣアドレスを特定せず、代わりにソースハイブリッドデバイス１０２によって実施される通信プロトコルに応じて他の適切なタイプのアドレスを特定することがあることに留意されたい。フローはブロック２１４に続く。
【００４７】
ブロック２１４において、元のソースアドレスおよび元の宛先アドレスが特定される。たとえば、アドレス選択ユニット１０６は、元のソースＭＡＣアドレスと元の宛先ＭＡＣアドレスとを、ブロック２０２において受信したパケットから読み取ることができる。いくつかの実装形態では、ソースＭＡＣアドレスフィールドおよび宛先ＭＡＣアドレスフィールドは、ソースハイブリッドデバイス１０２に関連する上位層プロトコルによって（たとえば、パケットを生成したアプリケーションによって、ネットワークプロトコル層によって、など）挿入された値を備え得る。他の実装形態では、ソースＭＡＣアドレスフィールドおよび宛先ＭＡＣアドレスフィールドは、値をまったく備えないことがある。言い換えれば、元のソースＭＡＣアドレスおよび元の宛先ＭＡＣアドレスは、ヌル値を備え得る。アドレス選択ユニット１０６は、ブロック２１６〜２１８においてさらに説明するように、ソースＭＡＣアドレスフィールドおよび宛先ＭＡＣアドレスフィールドにおける値が、少なくとも好ましいネットワーク経路および宛先通信インターフェースに従ったものになるように試み得る。フローはブロック２１６に続く。
【００４８】
ブロック２１６において、選択された通信インターフェースに関連するアドレスに元のアドレスが対応するかどうかが判断される。たとえば、アドレス選択ユニット１０６は、選択されたソース通信インターフェースに関連する（ブロック２１０において特定された）ソースＭＡＣアドレスに元のソースＭＡＣアドレスが合致するかどうかを判断し得る。アドレス選択ユニット１０６はまた、選択された宛先通信インターフェースに関連する（ブロック２１２において特定された）宛先ＭＡＣアドレスに元の宛先ＭＡＣアドレスが合致するかどうかを判断し得る。選択された通信インターフェースに関連するＭＡＣアドレスと元のＭＡＣアドレスとの比較において、アドレス選択ユニット１０６は、ソースハイブリッドデバイス１０２がパケットをそこから送信するソース通信インターフェースとソースＭＡＣアドレスとが整合するようにし、好ましいネットワーク経路および宛先ハイブリッドデバイス１０４がパケットを受信する場所となる宛先通信インターフェースと宛先ＭＡＣアドレスとが整合するようにし得る。元のソースアドレスと元の宛先アドレスの両方が、選択された通信インターフェースに関連する対応するアドレスに等しいと判断された場合、フローはブロック２２０に続く。そうでなければ、フローはブロック２１８に続く。
【００４９】
ブロック２１８において、ソースアドレスフィールドおよび／または宛先アドレスフィールドにはそれぞれ、選択された通信インターフェースに対応するソースアドレスおよび宛先アドレスがポピュレートされる。たとえば、選択されたソース通信インターフェースに対応するソースＭＡＣアドレスに元のソースＭＡＣアドレスが合致しないと判断したことに応答して、アドレス選択ユニット１０６は、選択されたソース通信インターフェースに対応するソースＭＡＣアドレスを、パケットのソースアドレスフィールドに上書きすることができる。同様に、選択された宛先通信インターフェースに対応する宛先ＭＡＣアドレスに元の宛先ＭＡＣアドレスが合致しないと判断したことに応答して、アドレス選択ユニット１０６は、選択された宛先通信インターフェースに対応する宛先ＭＡＣアドレスを、パケットの宛先アドレスフィールドに上書きすることができる。さらに、図１で上述したように、アドレス選択ユニット１０６はまた、ソースＩＰアドレス、宛先ＩＰアドレス、ソースデバイス識別子、および宛先デバイス識別子が、ソースハイブリッドデバイス１０２および宛先ハイブリッドデバイス１０４に割り当てられた値と整合するようにし得る。フローはブロック２２０に続く。
【００５０】
ブロック２２０において、好ましいネットワーク経路を介して宛先ハイブリッドデバイスにパケットが送信される。たとえば、ルーティングユニット１０８は、選択されたソース通信インターフェースに対応するソースＭＡＣアドレスと選択された宛先通信インターフェースに対応する宛先ＭＡＣアドレスとを備えるパケットを宛先ハイブリッドデバイス１０４に送信することができる（またはトランシーバユニットに送信させることができる）。図３Ａを参照すると、経路（Ｓ２、Ｄ２）３１６を介してパケットを送信することをソースハイブリッドデバイス１０２が決定した場合、ソースハイブリッドデバイス１０２は、パケットのアドレスフィールドに、それぞれソース通信インターフェース３０２のＭＡＣアドレスおよび宛先通信インターフェース３０６のＭＡＣアドレスをポピュレートすることができる。次に図３Ｂを参照すると、ソースハイブリッドデバイス１０２は、ソース通信インターフェース３０２から電力線通信ネットワーク３５２を介してパケットを送信することができ、ハイブリッドブリッジ３５０は、ブリッジインターフェース３５８上でパケットを受信し、ブリッジインターフェース３６０からイーサネットネットワーク３５４を介して宛先ハイブリッドデバイス１０４にパケットを転送することができる。宛先ハイブリッドデバイス１０４は、宛先通信インターフェース３０６上でパケットを受信し得る。再び図２を参照すると、ブロック２２０から、フローは終了する。
【００５１】
いくつかの実装形態では、送信されたパケットは、１つまたは複数のパケット特性に基づいて分類可能であり、対応するルート情報が記憶され得る。図４で後述するように、記憶されたルート情報を用いて、同じパケット種別に関連する後続パケットをルーティングすることができる。
【００５２】
図４は、ハイブリッド通信ネットワークのためのパケット種別ベースのアドレス指定方式の例示的な動作を示すフロー図４００である。フロー４００は、ブロック４０２において開始する。
【００５３】
ブロック４０２において、ソースハイブリッドデバイスが、宛先ハイブリッドデバイスにパケットを送信することを決定する。図１の例では、ソースハイブリッドデバイス１０２のルーティングユニット１０８は、宛先ハイブリッドデバイス１０４にパケットを送信することを決定し得る。フローはブロック４０４に続く。
【００５４】
ブロック４０４において、送信される予定のパケットに関連するパケット種別が、１つまたは複数のパケット特性に少なくとも部分的に基づいて判断される。たとえば、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に送信される予定のパケットに関連するパケット種別を判断し得る。いくつかの実装形態では、アドレス選択ユニット１０６は、（ブロック４０２において決定された）パケット内の１つまたは複数のフィールドを読み取ることができ、パケットに関連する１つまたは複数のパケット特性を判断することができる。パケット特性は、上位プロトコル層宛先アドレス（たとえば、宛先ＩＰアドレス）、上位プロトコル層ソースアドレス（たとえば、ソースＩＰアドレス）、下位プロトコル層宛先アドレス（たとえば、元の宛先ＭＡＣアドレス）、下位プロトコル層ソースアドレス（たとえば、元のソースＭＡＣアドレス）、パケットの優先度、パケットに関連する重要性／緊急性（または許容可能なレイテンシ）、パケットのタイプ（たとえば、ビデオパケット、ボイスパケット、など）などを含み得る。たとえば、特定の符号化方式を使用して符号化されたパケット（たとえば、ＭＰＥＧパケット）が、同じパケット種別に関連付けられ得る。パケット特性はまた、パケットが送信される際の通信プロトコル、パケットがそこから送信される通信ポート、およびパケットが送信される際の通信ネットワーク（たとえば、電力線ネットワーク、イーサネットネットワークなど）を示し得る。いくつかの実装形態では、パケット特性は、パケットがパケットストリームの一部であるかどうか、パケットが周期的送信の一部であるかどうかなどを示し得る。アドレス選択ユニット１０６はまた、アプリケーション「ストリーム」に従ってパケットを分類し得る。たとえば、特定のアプリケーションから受信したパケットは、同じパケット種別に関連付けられ得る。いくつかの実装形態では、図４で後述するように、パケット種別は、好ましいネットワーク経路、ソース通信インターフェースおよび宛先通信インターフェース、ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスなどを含むルーティング情報に結び付けられることがあり、パケット配信の整合性を高め、到着ジッタを最小限に抑え、順不同の配信を減らすために、後の好ましいネットワーク経路選択決定において使用され得る。フローはブロック４０６に続く。
【００５５】
ブロック４０６において、（ブロック４０４において判断された）パケット種別に関連するルーティング情報が利用可能であるかどうかが判断される。上述のように、いくつかの実装形態では、ルーティングユニット１０８は、１つまたは複数のパケット種別に関連する以前に特定されたルート情報を、パケット種別データ構造に記憶し得る。ブロック４０６において、ルーティングユニット１０８は、パケット種別データ構造にアクセスして、パケット種別および（ブロック４０２において検出された）パケットに関連する対応するルーティング情報が利用可能であるかどうかを判断することができる。パケット種別に関連するルーティング情報が利用可能であると判断された場合、フローはブロック４０８に続く。そうでなければ、フローはブロック４１０に続く。
【００５６】
ブロック４０８において、パケット種別に関連する以前に記憶されたルーティング情報にアクセスして、好ましいネットワーク経路と、ソースアドレスと、宛先アドレスとを特定する。パケット種別に関連するルーティング情報が利用可能であると判断された場合に、フロー４００はブロック４０６からブロック４０８に移動する。上述のように、アドレス選択ユニット１０６は様々なパケットに対し、１つまたは複数のパケット特性に応じて、異なるパケット種別を割り当てることができる。アドレス選択ユニット１０６はパケットに対し、それらのパケット種別に基づいて、異なる好ましいネットワーク経路を割り当てることもできる。パケット種別に関連するルーティング情報が以前に記憶されたと判断したことに応答して、アドレス選択ユニット１０６は、パケット種別に関連するルーティング情報にアクセスして、好ましいネットワーク経路と、ソース通信インターフェースと、宛先通信インターフェースと、ソースＭＡＣアドレスと、宛先ＭＡＣアドレスとを特定することができる。パケット種別に基づく以前に記憶されたルーティング情報を使用することで、パケット処理時間を最小限に抑えることができるとともに、同じ好ましいネットワーク経路に沿って（たとえば、あるアプリケーションから別のアプリケーションに）エンドツーエンドのトラフィックを送信することによって、通信の中断（たとえば、宛先ハイブリッドデバイス１０４または中間の転送デバイスにおけるパケット落ち）を防ぐことができる。フローはブロック４１４に続く。
【００５７】
ブロック４１０において、宛先ハイブリッドデバイスにパケットをルーティングするために好ましいネットワーク経路が選択され、好ましいネットワーク経路に少なくとも部分的に基づいてソースアドレスおよび宛先アドレスが特定される。パケット種別に関連するルーティング情報が利用可能ではないと判断された場合に、フロー４００はブロック４０６からブロック４１０に移動する。たとえば、ルーティングユニット１０８は、図１および図２のブロック２０４で上述した動作に従って、宛先ハイブリッドデバイス１０４にパケットをルーティングするために好ましいネットワーク経路を選択し得る。次いでアドレス選択ユニット１０６は、図１および図２のブロック２０６〜２１２で上述したように、好ましいネットワーク経路に少なくとも部分的に基づいて、ソース通信インターフェースと、宛先通信インターフェースと、ソースＭＡＣアドレスと、宛先ＭＡＣアドレスとを特定し得る。フローはブロック４１２に続く。
【００５８】
ブロック４１２において、パケット種別および対応するルーティング情報が記憶される。たとえば、アドレス選択ユニット１０６は、パケット種別と対応するルーティング情報とを記憶することができる。ルーティング情報は、好ましいネットワーク経路の指示と、ソース通信インターフェースおよび宛先通信インターフェースと、ソースＭＡＣアドレスおよび宛先ＭＡＣアドレスとを備え得る。たとえば、データタイプベースの分類方式を使用して、アドレス選択ユニット１０６は、ビデオパケットが第１の好ましいネットワーク経路を介してルーティングされるべきであること、ボイスパケットが第２の好ましいネットワーク経路を介してルーティングされるべきであること、などを示すことができる。ソースハイブリッドデバイス１０２は、パケット種別が同じであるパケットを後に検出すると、記憶されているルーティング情報に従って、パケットのアドレスフィールドにポピュレートし、パケットをルーティングすることができる。たとえば、別のビデオパケットを後に受信したことに応答して、ルーティングユニット１０８は、第１の好ましいネットワーク経路を介してビデオパケットをルーティングすることを決定し得る。フローはブロック４１４に続く。
【００５９】
ブロック４１４において、ソースアドレスと宛先アドレスとを備えるパケットが、好ましいネットワーク経路を介して宛先ハイブリッドデバイスに送信される。たとえば、ルーティングユニット１０８は、ソースＭＡＣアドレスと宛先ＭＡＣアドレスとを備えるパケットを宛先ハイブリッドデバイス１０４に送信することができる（またはトランシーバユニットに送信させることができる）。ブロック４１４から、フローは終了する。
【００６０】
図１〜図４は、実施形態の理解を助けることを意図する例であり、実施形態を限定するため、または特許請求の範囲を限定するために使用されるべきではないことを理解されたい。実施形態は、追加の動作を実行し、より少数の動作を実行し、動作を異なる順序で実行し、動作を並列に実行し、一部の動作を異なるように実行し得る。図１〜図４は、ＯＳＩプロトコルスタックを実装するハイブリッドデバイスのためのアドレス指定方式を記述しているが、実施形態はそのように限定されない。他の実装形態では、アドレス指定方式は、他の適切なプロトコルスタックアーキテクチャを採用するハイブリッドデバイスに拡大適用され得る。加えて、図１〜図４は、アドレス選択ユニット１０６が適切なソースＭＡＣアドレスおよび宛先ＭＡＣアドレスを選択することを記述しているが、実施形態はそのように限定されない。他の実施形態では、アドレス選択ユニット１０６は、ソースＭＡＣアドレスと宛先ＭＡＣアドレスとを選択しないことがあるが、ハイブリッドデバイスによって実施される通信プロトコルに応じて、またハイブリッドデバイスによって採用されるネットワークアーキテクチャに基づいて、他の適切なアドレスを選択し得る。
【００６１】
他の実施形態では、図２のブロック２１２で上述した技法の代替または追加として、アドレス選択ユニット１０６は、宛先ＭＡＣアドレスを特定するための様々な他の技法を採用し得る。いくつかの実装形態では、アドレス選択ユニット１０６は、パケットが受信される場所となる宛先通信インターフェースまたはパケットが送信される際のネットワーク経路にかかわらず、宛先ハイブリッドデバイス１０４に関連する複数の通信インターフェースのうちの１つに割り当てられた所定のＭＡＣアドレスである宛先ＭＡＣアドレスを選択することができる。別の実装形態では、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に以前に割り当てられた所定のアドレスであって、宛先ハイブリッドデバイス１０４に関連する通信インターフェースのいずれにも割り当てられていない所定のアドレスを（宛先ＭＡＣアドレスとして）選択することができる。別の実装形態では、選択された宛先ＭＡＣアドレスが（好ましいネットワーク経路に沿って）中間の従来型学習ブリッジの適切な「学習された」ポートにおいて受信されるように、アドレス選択ユニット１０６は、宛先ハイブリッドデバイス１０４に関連する複数のＭＡＣアドレスから宛先ＭＡＣアドレスを選択し得る。別の実装形態では、宛先ＭＡＣアドレスは、宛先ハイブリッドデバイス１０４に関連する様々な他のタイプのアドレス（たとえば、ＩＰアドレス）間の以前に判断された関連性に基づいて選択され得る。
【００６２】
図は、ソースハイブリッドデバイス１０２がソースハイブリッドデバイス１０２と宛先ハイブリッドデバイス１０４との間の好ましいネットワーク経路に基づいてソース通信インターフェースと宛先通信インターフェースとを選択することを記述しているが、実施形態はそのように限定されない。他の実施形態では、ソースハイブリッドデバイス１０２は、最初にソース通信インターフェースと宛先通信インターフェースとを選択することができ、選択されたソース通信インターフェースおよび宛先通信インターフェースに基づいて好ましいネットワーク経路を特定することができる。たとえば、ソースハイブリッドデバイス１０２は、パケットをルーティングするための完全なネットワーク経路における最初のリンクの選択を、ハイブリッド通信ネットワークにパケットをそこから送信するＭＡＣ／ＰＨＹインターフェースを識別することによって、またはパケット内のソースアドレスフィールドがこの選択と整合するようにすることによって、行うことができる。次いでソースハイブリッドデバイス１０２は、パケットをルーティングするための完全なネットワーク経路における最後のリンクの選択を、宛先ハイブリッドデバイス１０４においてパケットが到着すると予想される場所である宛先ＭＡＣ／ＰＨＹインターフェースを識別することによって、またはパケット内の宛先アドレスフィールドがこの選択と整合するようにすることによって、行うことができる。次いでソースハイブリッドデバイス１０２は、選択されたソース通信インターフェースおよび宛先通信インターフェースに従って好ましいネットワーク経路を選択し得る。図３Ａの例を参照すると、ソースハイブリッドデバイス１０２は、パケットがソースハイブリッドデバイス１０２の通信インターフェース３０４を介して送信されるべきであると判断し、パケットが宛先ハイブリッドデバイス１０４の通信インターフェース３０８において受信されるべきであると判断することがある。したがって、ソースハイブリッドデバイス１０２は、ネットワーク経路３１２を好ましいネットワーク経路として識別し得る。
【００６３】
図４に関して示されていないが、ハイブリッドデバイス１０２はまた、パケット種別を使用して、パケット種別およびパケットストリームの各々に関連するトラフィックの量を判断することができる。たとえば、ハイブリッドデバイス１０２は、（ブロック４０２において受信した）パケットがビデオストリームの一部であると判断することがある。ハイブリッドデバイス１０２はパケットに対し、（たとえば、上位プロトコル層宛先アドレス（たとえば、宛先ＩＰアドレス）、上位プロトコル層ソースアドレス（たとえば、ソースＩＰアドレス）、下位プロトコル層宛先アドレス（たとえば、元の宛先ＭＡＣアドレス）、下位プロトコル層ソースアドレス（たとえば、元のソースＭＡＣアドレス）、パケットに関連する優先度、パケットに関連するレイテンシ、パケットのタイプなどに基づいて）対応するパケット種別を割り当てることができ、対応する好ましいネットワーク経路を介して送信するために適切な伝送ストリーム（たとえば、ソース通信インターフェース）にパケットを割り当てることができる。ハイブリッドデバイス１０２は、伝送ストリームの各々に関連するトラフィックを分析して、伝送ストリームに関連するトラフィック負荷およびスループットを判断することができる。いくつかの実装形態では、ハイブリッドデバイス１０２は、伝送ストリームに関連するトラフィック負荷およびスループットに基づいて負荷分散動作（load balancing operations）を実行することができる。たとえば、ビデオストリームに関連する好ましいネットワーク経路が高いトラフィック負荷を有すると判断された場合、ハイブリッドデバイス１０２は負荷分散動作を実行して、ビデオパケットを複数のネットワーク経路に分けることができる。負荷分散動作を実行するとき、ハイブリッドデバイス１０２は、特定のアプリケーションによって生成されたパケットが同じパケット種別に関連付けられ、同じ好ましいネットワーク経路を介して送信されるようにして、順不同の到着、ジッタなどを最小化／回避することができる。
【００６４】
実施形態は、完全にハードウェア実施形態、完全にソフトウェア実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、または本明細書ではすべて一般に「回路」、「モジュール」もしくは「システム」と呼ばれ得るソフトウェア態様とハードウェア態様とを結合する一実施形態の形態をとることができる。さらに、本発明の主題の実施形態は、媒体にコンピュータ使用可能プログラムコードを組み込む表現の任意の有形の媒体に組み込まれるコンピュータプログラム製品の形態をとることができる。説明した実施形態は、すべての想定できる変形がここに列挙されているとは限らないので、現在記載されているかどうかにかかわらず、実施形態に従ってプロセスを実行するために、コンピュータシステム（または（１つもしくは複数の）他の電子デバイス）をプログラムするために使用され得る命令を記憶する機械可読媒体を含み得る、コンピュータプログラム製品またはソフトウェアとして提供することができる。機械可読媒体は、機械（たとえば、コンピュータ）によって読取り可能な形態（たとえば、ソフトウェア、処理アプリケーション）で情報を記憶または送信するための任意の機構を含む。機械可読媒体は、機械可読記憶媒体、または機械可読信号媒体とすることができる。機械可読記憶媒体は、たとえば、限定はしないが、磁気記憶媒体（たとえば、フロッピー（登録商標）ディスケット）、光学記憶媒体（たとえば、ＣＤ−ＲＯＭ）、光磁気記憶媒体、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラマブルメモリ（たとえば、ＥＰＲＯＭおよびＥＥＰＲＯＭ（登録商標））、フラッシュメモリ、または電子命令を記憶することに適した他のタイプの有形の媒体を含み得る。機械可読信号媒体は、コンピュータ可読プログラムコードが組み込まれた伝搬されるデータ信号、たとえば、電気信号、光信号、音響信号、または他の形式の伝搬される信号（たとえば、搬送波、赤外線信号、デジタル信号など）を含み得る。機械可読信号媒体上で実施されるプログラムコードは、限定はしないが、有線、ワイヤレス、光学ファイバーケーブル、ＲＦ、または他の通信媒体など、任意の適切な媒体を使用して送信され得る。
【００６５】
実施形態の動作を実行するためのコンピュータプログラムコードは、オブジェクト指向プログラミング言語、たとえばＪａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋など、および従来の手続き型プログラミング言語、たとえば「Ｃ」プログラミング言語または類似のプログラミング言語を含めて、１つまたは複数のプログラミング言語の任意の組合せで記述され得る。プログラムコードは、完全にユーザのコンピュータにおいて、部分的にユーザのコンピュータにおいて、スタンドアロンのソフトウェアパッケージとして、部分的にユーザのコンピュータにおいて、かつ部分的にリモートコンピュータにおいて、または完全にリモートコンピュータもしくはサーバにおいて実行し得る。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、または広域ネットワーク（ＷＡＮ）を含む、任意のタイプのネットワークを介してユーザのコンピュータに接続されてよく、または、接続が（たとえば、インターネットサービスプロバイダーを使用してインターネットを介して）外部コンピュータに行われてよい。
【００６６】
図５は、ハイブリッド通信ネットワークのためのアドレス指定方式を含む電子デバイス５００の一実施形態のブロック図である。いくつかの実装形態では、電子デバイス５００は、ラップトップコンピュータ、ネットブック、携帯電話、電力線通信デバイス、携帯情報端末（ＰＤＡ）、または（ハイブリッド通信ネットワークを形成する）複数の通信ネットワークで通信する機能を備える他の適切な電子システムのうちの１つであり得る。電子デバイス５００は、プロセッサユニット５０２（場合によっては、複数のプロセッサ、複数のコア、複数のノードを含む、かつ／またはマルチスレッドを実装する、など）を含む。電子デバイス５００は、メモリユニット５０６を含む。メモリユニット５０６は、システムメモリ（たとえば、キャッシュ、ＳＲＡＭ、ＤＲＡＭ、ゼロキャパシタＲＡＭ、ツイントランジスタＲＡＭ、ｅＤＲＡＭ、ＥＤＯ  ＲＡＭ、ＤＤＲ  ＲＡＭ、ＥＥＰＲＯＭ、ＮＲＡＭ、ＲＲＡＭ（登録商標）、ＳＯＮＯＳ、ＰＲＡＭなどのうちの１つもしくは複数）または機械可読媒体の上記のすでに記載した可能性がある実現のうちの任意の１つもしくは複数とすることができる。電子デバイス５００はまた、バス５１０（たとえば、ＰＣＩ、ＩＳＡ、ＰＣＩ−Ｅｘｐｒｅｓｓ、ＨｙｐｅｒＴｒａｎｓｐｏｒｔ（登録商標）、ＩｎｆｉｎｉＢａｎｄ（登録商標）、ＮｕＢｕｓ、ＡＨＢ、ＡＸＩなど）と、ワイヤレスネットワークインターフェース（たとえば、ＷＬＡＮインターフェース、Ｂｌｕｅｔｏｏｔｈ（登録商標）インターフェース、ＷｉＭＡＸインターフェース、ＺｉｇＢｅｅ（登録商標）インターフェース、Ｗｉｒｅｌｅｓｓ  ＵＳＢインターフェースなど）および有線ネットワークインターフェース（たとえば、電力線通信インターフェース、Ｅｔｈｅｒｎｅｔ（登録商標）インターフェースなど）のうちの少なくとも１つを含むネットワークインターフェース５０４とを含む。いくつかの実装形態では、電子デバイス５００は、各々が電子デバイス５００を異なる通信ネットワークに結合する複数のネットワークインターフェースを備え得る。たとえば、電子デバイス５００は、電子デバイス５００をそれぞれ電力線通信ネットワークおよびワイヤレスローカルエリアネットワークに結合する電力線通信インターフェースおよびＷＬＡＮインターフェースを備え得る。
【００６７】
電子デバイス５００は通信ユニット５０８も含む。通信ユニット５０８は、アドレス選択ユニット５１２とルーティングユニット５１４とを備える。図１〜図４で上述したように、通信ユニット５０８は、電子デバイス５００から宛先デバイスにパケットを送信するために複数のネットワーク経路うちの１つを選択する機能を実施する。通信ユニット５０８はまた、選択されたネットワーク経路に基づいて、パケットがそこから送信される複数のソースネットワークインターフェースのうちの１つと、宛先デバイスにおいてパケットが受信されると予想される場所である複数の宛先ネットワークインターフェースのうちの１つとを選択し得る。通信ユニット５０８は、選択されたソースネットワークインターフェースおよび選択された宛先ネットワークインターフェースにそれぞれ対応するソースＭＡＣアドレスおよび宛先ＭＡＣアドレスを識別し得る。通信ユニット５０８は、識別されたソースＭＡＣアドレスおよび宛先ＭＡＣアドレスをパケットに挿入することができ、選択されたネットワーク経路を介して宛先デバイスにパケットを送信することができる。
【００６８】
これらの機能のいずれも、ハードウェア中に、かつ／またはプロセッサユニット５０２上に、部分的に（または全体が）実装され得る。たとえば、機能は、特定用途向け集積回路、プロセッサユニット５０２に実装される論理、周辺デバイスまたはカード上のコプロセッサなどに実装され得る。さらに、実現形態は、より少ない構成要素、または図５（たとえば、ビデオカード、オーディオカード、追加のネットワークインターフェース、周辺デバイスなど）に示されていない追加の構成要素を含み得る。プロセッサユニット５０２、メモリユニット５０６、およびネットワークインターフェース５０４は、バス５１０に結合される。メモリユニット５０６は、バス５１０に結合されるものとして示されているが、プロセッサユニット５０２に結合され得る。
【００６９】
実施形態は様々な実装および利用に関して記載されているが、これらの実施形態が例示的であり、本発明の主題の範囲がそれらに限定されないことを理解されよう。一般に、本明細書で説明するハイブリッド通信ネットワークのためのアドレス指定方式は、任意のハードウェアシステムまたは複数のハードウェアシステムに一致する設備により実施され得る。多くの変形、変更、追加、および改良が可能である。
【００７０】
本明細書で単一の事例として説明する構成要素、動作、または構造のために、複数の事例が提供され得る。最後に、様々な構成要素、動作、およびデータストア間の境界はいくぶん任意であり、特定の図示する構成のコンテキストでは特定の動作が例示される。機能の他の割振りが想定されており、本発明の主題の範囲内に含まれ得る。一般に、例示的な構成における個別の構成要素として提示される構造および機能は、結合された構造または構成要素として実装され得る。同様に、単一の構成要素として提示される構造および機能は、個別の構成要素として実装され得る。これらおよび他の変形、変更、追加、および改良は、本発明の主題の範囲内に含まれ得る。
なお、以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［C１］
第１のネットワークデバイスから通信ネットワークの第２のネットワークデバイスにパケットを送信することを決定することと、
前記第１のネットワークデバイスから前記第２のネットワークデバイスに前記パケットを送信するために、前記通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択することと、
前記第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定することと、
前記第１のネットワークデバイスから前記第２のネットワークデバイスに前記パケットを送信するために選択された前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定することと、
前記第１のネットワークデバイスに関連する前記ソースアドレスと前記第２のネットワークデバイスに関連する前記宛先アドレスとを少なくとも含む前記パケットを、前記第１のネットワーク経路を介して前記第１のネットワークデバイスのソース通信インターフェースから前記第２のネットワークデバイスの宛先通信インターフェースに送信することと
を備える方法。
［C２］
前記第１のネットワークデバイスに関連する前記ソースアドレスは、前記第１のネットワークデバイスの前記ソース通信インターフェースに関連する媒体アクセス制御（ＭＡＣ）アドレスを備え、前記第２のネットワークデバイスに関連する前記宛先アドレスは、前記第２のネットワークデバイスの前記宛先通信インターフェースに関連するＭＡＣアドレスを備える、［C１］に記載の方法。
［C３］
前記パケットの特性に基づいて前記パケットのために複数の種別カテゴリーから第１の種別カテゴリーを選択することと、
前記パケットを送信するために選択された前記第１のネットワーク経路と前記パケットのために選択された前記第１の種別カテゴリーとを関連付けることと、
前記パケットを送信するために選択された前記第１のネットワーク経路と前記パケットのために選択された前記第１の種別カテゴリーとの前記関連付けを記憶することと
をさらに備える、［C１］に記載の方法。
［C４］
前記第１のネットワークデバイスから前記第２のネットワークデバイスに第２のパケットを送信することを決定することと、
前記第２のパケットの特性に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると判断することと、
前記第２のパケットの特性に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると前記判断したことに応答して、前記第１のネットワークデバイスの前記ソース通信インターフェースから前記第２のネットワークデバイスの前記宛先通信インターフェースに前記第２のパケットを送信するために、前記通信ネットワークに関連する前記複数のネットワーク経路から前記第１のネットワーク経路を選択することと
をさらに備える、［C３］に記載の方法。
［C５］
前記パケットの前記特性は、上位プロトコル層宛先アドレス、上位プロトコル層ソースアドレス、下位プロトコル層宛先アドレス、下位プロトコル層ソースアドレス、前記パケットに関連する優先度、前記パケットに関連するレイテンシ、パケットタイプ、前記パケットが送信される際に準拠する通信プロトコル、前記パケットがそこから送信される通信ポート、前記パケットが送信される際に経由する通信ネットワーク、および前記パケットを生成したアプリケーションのうちの少なくとも１つを備える、［C３］に記載の方法。
［C６］
前記第１のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを前記特定することは、
前記第１のネットワークデバイスの前記複数の通信インターフェースから前記ソース通信インターフェースを選択することと、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを特定することと
を備え、
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを前記特定することは、
前記第２のネットワークデバイスの前記複数の通信インターフェースから前記宛先通信インターフェースを選択することと、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを特定すること
とを備える、［C１］に記載の方法。
［C７］
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを前記特定することは、
前記パケットを送信するために選択された前記第１のネットワークデバイスに関連する元のソースアドレスを前記パケットから検出することと、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致するかどうかを判断することと、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致しないと判断したことに応答して、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを前記元のソースアドレスの上に上書きすることと、
前記パケットの前記送信のために前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを利用することと
をさらに備える、［C６］に記載の方法。
［C８］
前記第１のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを前記特定することは、
前記パケットを送信するために前記第１のネットワークデバイスによって選択された前記第２のネットワークデバイスに関連する元の宛先アドレスを前記パケットから検出することと、
前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスに前記元の宛先アドレスが合致するかどうかを判断することと、
前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスに前記元の宛先アドレスが合致しないと判断したことに応答して、
前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを前記元の宛先アドレスの上に上書きすることと、
前記パケットの前記送信のために前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを利用することと
をさらに備える、［C６］に記載の方法。
［C９］
前記第１のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを前記特定することは、
前記第１のネットワークデバイスの前記複数の通信インターフェースのうちの第１のインターフェースに関連する前記複数のアドレスの第１を前記ソースアドレスとして選択することであって、前記第１のネットワークデバイスの前記複数のインターフェースのうちの前記第１のインターフェースが前記ソース通信インターフェースとは異なること、
前記第１のネットワークデバイスに関連する所定のアドレスを前記ソースアドレスとして選択することであって、前記第１のネットワークデバイスに関連する前記所定のアドレスが、前記第１のネットワークデバイスの前記複数のインターフェースに関連する前記複数のアドレスのいずれとも異なること、
前記複数のアドレスと前記第１のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいて、前記第１のネットワークデバイスに関連する前記複数のアドレスから前記ソースアドレスを選択すること、ならびに
前記第１のネットワークデバイスに関連するルーティングアルゴリズムおよび前記通信ネットワークのトポロジーに少なくとも部分的に基づいて、前記第１のネットワークデバイスに関連する前記複数のアドレスから前記ソースアドレスを選択すること
のうちの１つをさらに備える、［C１］に記載の方法。
［C１０］
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを前記特定することは、
前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの第１のインターフェースに関連する前記複数のアドレスの第１を前記宛先アドレスとして選択することであって、前記第２のネットワークデバイスの前記複数のインターフェースのうちの前記第１のインターフェースが前記宛先通信インターフェースとは異なること、
前記第２のネットワークデバイスに関連する所定のアドレスを前記宛先アドレスとして選択することであって、前記第２のネットワークデバイスに関連する前記所定のアドレスが、前記第２のネットワークデバイスの前記複数のインターフェースに関連する前記複数のアドレスのいずれとも異なること、
前記複数のアドレスと前記第２のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいて、前記第２のネットワークデバイスに関連する前記複数のアドレスから前記宛先アドレスを選択すること、
前記第１のネットワーク経路に対応する前記第２のネットワークデバイスに関連する前記複数のアドレスのうちの１つを前記宛先アドレスとして選択すること、および
前記第１のネットワークデバイスに関連するルーティングアルゴリズムおよび前記通信ネットワークのトポロジーに少なくとも部分的に基づいて、前記第２のネットワークデバイスに関連する前記複数のアドレスから前記宛先アドレスを選択すること
のうちの１つをさらに備える、［C１］に記載の方法。
［C１１］
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを前記特定することは、前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスを発見することを備え、
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスを前記発見することは、
前記第２のネットワークデバイスから、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信すること、
前記第２のネットワークデバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つを特定すること、および
前記第２のネットワークデバイスに対し、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を要求すること
のうちの少なくとも１つを備える、［C１］に記載の方法。
［C１２］
ネットワークインターフェースと、
前記ネットワークインターフェースに結合されたアドレス選択およびルーティングユニットと
を備え、前記アドレス選択およびルーティングユニットは、
前記通信デバイスから通信ネットワークの第２の通信デバイスにパケットを送信することを決定したことに応答して、前記通信デバイスから前記第２の通信デバイスに前記パケットを送信するために、前記通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択し、
前記通信デバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定し、
前記通信デバイスから前記第２の通信デバイスに前記パケットを送信するために選択された前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第２の通信デバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定し、
前記通信デバイスに関連する前記ソースアドレスと前記第２の通信デバイスに関連する前記宛先アドレスとを少なくとも含む前記パケットを、前記第１のネットワーク経路を介して前記通信デバイスのソース通信インターフェースから前記第２の通信デバイスの宛先通信インターフェースに送信する
ように動作可能である、通信デバイス。
［C１３］
前記アドレス選択およびルーティングユニットは、
上位プロトコル層宛先アドレス、上位プロトコル層ソースアドレス、下位プロトコル層宛先アドレス、下位プロトコル層ソースアドレス、前記パケットに関連する優先度、前記パケットに関連するレイテンシ、パケットタイプ、前記パケットが送信される際に準拠する通信プロトコル、前記パケットがそこから送信される通信ポート、前記パケットが送信される際に経由する通信ネットワーク、および前記パケットを生成したアプリケーションのうちの少なくとも１つを備える前記パケットの特性に基づいて、前記パケットのために複数の種別カテゴリーから第１の種別カテゴリーを選択し、
前記パケットを送信するために選択された前記第１のネットワーク経路と前記パケットのために選択された前記第１の種別カテゴリーとを関連付け、
前記パケットを送信するために選択された前記第１のネットワーク経路と前記パケットのために選択された前記第１の種別カテゴリーとの前記関連付けを記憶する
ようにさらに動作可能である、［C１２］に記載の通信デバイス。
［C１４］
前記アドレス選択およびルーティングユニットは、
前記通信デバイスから前記第２の通信デバイスに第２のパケットを送信することを決定し、
前記第２のパケットの特性に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると判断し、
前記第２のパケットの特性に基づいて前記第２のパケットが前記第１の種別カテゴリーに関連付けられると前記アドレス選択およびルーティングユニットが判断したことに応答して、前記通信デバイスの前記ソース通信インターフェースから前記第２の通信デバイスの前記宛先通信インターフェースに前記第２のパケットを送信するために、前記通信ネットワークに関連する前記複数のネットワーク経路から前記第１のネットワーク経路を選択する
ようにさらに動作可能である、［C１３］に記載の通信デバイス。
［C１５］
前記通信デバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを特定するように動作可能な前記アドレス選択およびルーティングユニットは、
前記通信デバイスの前記複数の通信インターフェースから前記ソース通信インターフェースを選択し、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを特定する
ように動作可能な前記アドレス選択およびルーティングユニットを備え、
前記第２の通信デバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを特定するように動作可能な前記アドレス選択およびルーティングユニットは、
前記第２のネットワークデバイスの前記複数の通信インターフェースから前記宛先通信インターフェースを選択し、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記第２の通信デバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを特定する
ように動作可能な前記アドレス選択およびルーティングユニットを備える、［C１２］に記載の通信デバイス。
［C１６］
前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを特定するように動作可能な前記アドレス選択およびルーティングユニットは、
前記パケットを送信するために選択された前記通信デバイスに関連する元のソースアドレスを前記パケットから検出し、
前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致するかどうかを判断し、
前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致しないと前記アドレス選択およびルーティングユニットが判断したことに応答して、
前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを前記元のソースアドレスの上に上書きし、
前記パケットの前記送信のために前記通信デバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを利用する
ように動作可能な前記アドレス選択およびルーティングユニットをさらに備える、［C１５］に記載の通信デバイス。
［C１７］
前記通信デバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを特定するように動作可能な前記アドレス選択およびルーティングユニットは、
前記通信デバイスの前記複数の通信インターフェースのうちの第１のインターフェースに関連する前記複数のアドレスの第１を前記ソースアドレスとして選択することであって、前記通信デバイスの前記複数のインターフェースのうちの前記第１のインターフェースが前記ソース通信インターフェースとは異なることと、
前記通信デバイスに関連する所定のアドレスを前記ソースアドレスとして選択することあって、前記通信デバイスに関連する前記所定のアドレスが、前記通信デバイスの前記複数のインターフェースに関連する前記複数のアドレスのいずれとも異なることとを行う
ように動作可能な前記アドレス選択およびルーティングユニットをさらに備える、［C１２］に記載の通信デバイス。
［C１８］
前記第２の通信デバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを特定するように動作可能な前記アドレス選択およびルーティングユニットは、
前記第２の通信デバイスから、前記第２の通信デバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信するように動作可能な前記アドレス選択およびルーティングユニット、
前記第２の通信デバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、前記第２の通信デバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つを特定するように動作可能な前記アドレス選択およびルーティングユニット、ならびに
前記第２の通信デバイスに対し、前記第２の通信デバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を要求するように動作可能な前記アドレス選択およびルーティングユニット
のうちの少なくとも１つを備える、［C１２］に記載の通信デバイス。
［C１９］
１つまたは複数のプロセッサによって実行されると、前記１つまたは複数のプロセッサに動作を実行させる命令を記憶した、１つまたは複数の機械可読記憶媒体であって、前記動作は、
第１のネットワークデバイスから通信ネットワークの第２のネットワークデバイスにパケットを送信することを決定したことに応答して、前記第１のネットワークデバイスから前記第２のネットワークデバイスに前記パケットを送信するために、前記通信ネットワークに関連する複数のネットワーク経路から第１のネットワーク経路を選択する動作と、
前記第１のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスからソースアドレスを特定する動作と、
前記第１のネットワークデバイスから前記第２のネットワークデバイスに前記パケットを送信するために選択された前記第１のネットワーク経路に少なくとも部分的に基づいて、前記第２のネットワークデバイスの複数の通信インターフェースに関連する複数のアドレスから宛先アドレスを特定する動作と、
前記第１のネットワークデバイスに関連する前記ソースアドレスと前記第２のネットワークデバイスに関連する前記宛先アドレスとを少なくとも含む前記パケットを、前記第１のネットワーク経路を介して前記第１のネットワークデバイスのソース通信インターフェースから前記第２のネットワークデバイスの宛先通信インターフェースに送信する動作と
を備える、機械可読記憶媒体。
［C２０］
前記第１のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを特定する前記動作は、
前記第１のネットワークデバイスの前記複数の通信インターフェースから前記ソース通信インターフェースを選択することと、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを特定することと
を備え、
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを特定する前記動作は、
前記第２のネットワークデバイスの前記複数の通信インターフェースから前記宛先通信インターフェースを選択することと、
前記パケットを送信するために選択された前記第１のネットワーク経路に関連する前記第２のネットワークデバイスの前記宛先通信インターフェースに対応する前記宛先アドレスを特定することと
を備える、［C１９］に記載の機械可読記憶媒体。
［C２１］
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを特定する前記動作は、
前記パケットを送信するために選択された前記第１のネットワークデバイスに関連する元のソースアドレスを前記パケットから検出することと、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致するかどうかを判断することと、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスに前記元のソースアドレスが合致しないと判断したことに応答して、
前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを前記元のソースアドレスの上に上書きすることと、
前記パケットの前記送信のために前記第１のネットワークデバイスの前記ソース通信インターフェースに対応する前記ソースアドレスを利用することと
をさらに備える、［C２０］に記載の機械可読記憶媒体。
［C２２］
前記第１のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記ソースアドレスを特定する前記動作は、
前記第１のネットワークデバイスの前記複数の通信インターフェースのうちの第１のインターフェースに関連する前記複数のアドレスの第１を前記ソースアドレスとして選択することであって、前記第１のネットワークデバイスの前記複数のインターフェースのうちの前記第１のインターフェースが前記ソース通信インターフェースとは異なること、
前記第１のネットワークデバイスに関連する所定のアドレスを前記ソースアドレスとして選択することであって、前記第１のネットワークデバイスに関連する前記所定のアドレスが、前記第１のネットワークデバイスの前記複数のインターフェースに関連する前記複数のアドレスのいずれとも異なること、
前記複数のアドレスと前記第１のネットワークデバイスに関連する第２の複数のアドレスとの間のマッピングに少なくとも部分的に基づいて、前記第１のネットワークデバイスに関連する前記複数のアドレスから前記ソースアドレスを選択すること、ならびに
前記第１のネットワークデバイスに関連するルーティングアルゴリズムおよび前記通信ネットワークのトポロジーに少なくとも部分的に基づいて、前記第１のネットワークデバイスに関連する前記複数のアドレスから前記ソースアドレスを選択すること
のうちの１つをさらに備える、［C１９］に記載の機械可読記憶媒体。
［C２３］
前記第２のネットワークデバイスの前記複数の通信インターフェースに関連する前記複数のアドレスから前記宛先アドレスを特定する前記動作は、
前記第２のネットワークデバイスから、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を備える１つまたは複数の発見告知パケットを受信することと、
前記第２のネットワークデバイスから受信した１つまたは複数の通信パケットに関連するアドレスフィールドを分析して、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つを特定することと、
前記第２のネットワークデバイスに対し、前記第２のネットワークデバイスの前記複数の通信インターフェースのうちの少なくとも１つに関連する前記複数のアドレスのうちの少なくとも１つの指示を要求することと
を備える、［C１９］に記載のコンピュータ可読記憶媒体。
【図１】
0005774729.tif 000002
【図２】
0005774729.tif 000003
【図３Ａ】
0005774729.tif 000004
【図３Ｂ】
0005774729.tif 000005
【図４】
0005774729.tif 000006
【図５】
0005774729.tif 000007