(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-02-18
(45)【発行日】2022-03-01
(54)【発明の名称】第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法および対応するデバイス
(51)【国際特許分類】
H04L 12/28 20060101AFI20220221BHJP
H04L 12/46 20060101ALI20220221BHJP
【FI】
H04L12/28 200Z
H04L12/28 100S
H04L12/46 E
【外国語出願】
(21)【出願番号】P 2017201868
(22)【出願日】2017-10-18
【審査請求日】2020-10-14
(32)【優先日】2016-10-24
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】518341334
【氏名又は名称】インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】オノ,ステフアン
(72)【発明者】
【氏名】ルギロン,ヴアレリー
【審査官】中川 幸洋
(56)【参考文献】
【文献】特開2005-064570(JP,A)
【文献】特開2012-227610(JP,A)
【文献】特開2014-183481(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/28
H04L 12/46
(57)【特許請求の範囲】
【請求項1】
第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法であって、前記第1のタイプのネットワークは、前記顧客構内機器と通信する少なくとも1つのネットワーク装置を含み、前記方法は、
前記顧客構内機器および前記少なくとも1つのネットワーク装置から受信された能力情報に基づいて、前記デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
前記定義されたルーティング・ルールを前記顧客構内機器または前記少なくとも1つのネットワーク装置で実施するコマンドを送信することと、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、前記顧客構内機器または前記少なくとも1つのネットワーク装置を特定する、前記方法。
【請求項2】
前記ルーティング・ルールは、前記デバイスで、ルーティング・アプリケーションによって自動的に、または、前記ルーティング・アプリケーションに関連付けられた管理インタフェースを通じたユーザのアクションによって定義される、請求項1に記載の方法。
【請求項3】
前記ルーティング・ルールは、対象サービスのタイプおよび/または利用可能な帯域幅に従って、前記ルーティング・アプリケーションによって自動的に定義される、請求項2に記載の方法。
【請求項4】
前記コマンドは、前記顧客構内機器で動作するアプリケーション・プログラミング・インタフェース・サービスを利用してルーティング・サーバによって実施される、請求項1~3のいずれか1項に記載の方法。
【請求項5】
ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、前記ルーティング・ルールが実施される期間とを少なくとも含む、請求項1~4のいずれか1項に記載の方法。
【請求項6】
前記デバイスは、
前記ルーティング・アプリケーションを実行する、請求項
2~5のいずれか1項に記載の方法。
【請求項7】
前記顧客構内機器および前記ネットワーク装置の各々は、前記第1のタイプのネットワーク上で前記デバイスに能力情報を公開するように構成されたゲートウェイ・アプリケーションを動作させる、請求項1~
6のいずれか1項に記載の方法。
【請求項8】
第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスであって、
前記顧客構内機器および前記少なくとも1つのネットワーク装置から能力情報を受信するように構成された通信インタフェースと、
前記受信された能力情報に基づいて、前記デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義するルーティング・アプリケーションと、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、前記顧客構内機器または前記少なくとも1つのネットワーク装置を特定し、
前記通信インタフェースは、前記定義されたルーティング・ルールを前記顧客構内機器または前記少なくとも1つのネットワーク装置で実施するコマンドを送信するようにさらに構成されている、前記デバイス。
【請求項9】
前記ルーティング・ルールは、前記デバイスで、ルーティング・アプリケーションによって自動的に、または、前記ルーティング・アプリケーションに関連付けられた管理インタフェースを通じたユーザのアクションによって定義される、請求項
8に記載のデバイス。
【請求項10】
前記ルーティング・ルールは、対象サービスのタイプおよび/または利用可能な帯域幅に従って、前記ルーティング・アプリケーションによって自動的に定義される、請求項
9に記載のデバイス。
【請求項11】
ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、前記ルーティング・ルールが実施される期間とを少なくとも含む、請求項
8~
10のいずれか1項に記載のデバイス。
【請求項12】
ゲートウェイ機能を備え、前記第1のタイプのネットワーク上で能力情報を公開するように構成されたゲートウェイ・アプリケーションをさらに動作させる、請求項
8~
11のいずれか1項に記載のデバイスを含むネットワーク装置。
【請求項13】
非一時的コンピュータ可読媒体に記憶され、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法を実施するプロセッサによって実行可能なプログラム・コード命令を含むコンピュータ・プログラム・プロダクトであって、前記第1のタイプのネットワークは、前記顧客構内機器と通信する少なくとも1つのネットワーク装置を含み、前記方法は、
前記顧客構内機器および前記少なくとも1つのネットワーク装置から受信された能力情報に基づいて、前記デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
前記顧客構内機器または前記少なくとも1つのネットワーク装置で前記定義されたルーティング・ルールを実施するコマンドを送信することと、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、前記顧客構内機器または前記少なくとも1つのネットワーク装置を特定する、前記コンピュータ・プログラム・プロダクト。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概ねネットワーク管理に関し、より具体的には、ルーティング・アルゴリズムに関する。
【背景技術】
【0002】
この節は、読者に対し、様々な技術的な態様を紹介することを意図している。これらの技術的な態様は、以下に説明する、さらに/または、以下の請求項に記載する本願の開示の様々な態様に関連するであろう。この説明が本開示の様々な態様をより良好に理解しやすくするための背景情報を読者に対して提供するのに役立つと確信する。したがって、それぞれの記載は、この点に鑑みて読まれるべきものであり、先行技術を自認するものではないことを理解すべきである。
【0003】
住宅用ホーム・ネットワークにおけるコネクテッド・コンシューマ電子(CE:Consumer Electronics)デバイスの数は、近年劇的に増加しており、2013年には、コネクテッド・デバイスの数は、1世帯当たり平均で約7台存在していた。これらのコネクテッド・デバイスの中には、モバイルUMTS(または3G)またはLTE(または4G)インターネット・アクセスを有するものがあり、ときには、無制限のデータ・プランを用いている場合もある。ユーザは、自宅に到着すると、多くの場合、自己のモバイル・デバイスをホーム・ゲートウェイに配置された無線アクセス・ポイントに接続し、このゲートウェイによって提供される(DSL、ケーブル、またはファイバ接続を通じた)インターネット・アクセスを使用して、自己のモバイル・アクセスの残余容量を使用しないようにする。数人が自己の携帯電話を有する世帯では、特に、LTEモバイル接続を有する場合に、大量の帯域幅が未使用となることがある。
【0004】
そこで、種々のデバイスによって提供される幾つかのインターネット・アクセスを通じたパケットの分配を管理するルーティング・アルゴリズムを提供する必要がある。
【発明の概要】
【0005】
本開示は、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法に関する。第1のタイプのネットワークは、顧客構内機器と通信する少なくとも1つのネットワーク装置を含み、
上記方法は、
顧客構内機器および少なくとも1つのネットワーク装置から受信された能力情報に基づいて、デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
顧客構内機器または少なくとも1つのネットワーク装置で、定義されたルーティング・ルールを実施するコマンドを送信することと、を含み、
ルーティング・ルールは、パケットを第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、顧客構内機器または少なくとも1つのネットワーク装置を特定する。
【0006】
したがって、上述した方法によって、ルーティング・ルールを第1のタイプのネットワークのデバイスおよびネットワーク装置によって分散して定義することができる。
【0007】
一態様においては、ルーティング・ルールを、デバイスで、ルーティング・アプリケーションによって自動的に、または、ルーティング・アプリケーションに関連付けられた管理インタフェースを通じたユーザのアクションによって定義することができる。
【0008】
一態様においては、ルーティング・ルールを、対象サービスのタイプおよび/または利用可能な帯域幅に従って、ルーティング・アプリケーションによって自動的に定義することができる。
【0009】
上記態様において、ルーティング・ルールを定期的に決定することができる(たとえば、関連する期間の終了前など)。
【0010】
一態様においては、コマンドを、顧客構内機器で動作するアプリケーション・プログラミング・インタフェース・サービスを利用してルーティング・サーバによって実施することができる。
【0011】
一態様においては、ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、ルーティング・ルールが実施される期間とを少なくとも含み得る。
【0012】
一態様においては、デバイスは、ルーティング・アプリケーションを動作させることができる。
【0013】
一態様においては、少なくとも1つのネットワーク装置は、顧客構内機器と通信するデバイス機能と、第1のタイプのネットワークから第2のタイプのネットワークにパケットを転送するゲートウェイ機能とを含み得る。
【0014】
一態様においては、少なくとも1つのネットワーク装置は、ルーティング・アプリケーションを動作させることができる。
【0015】
一態様においては、ネットワーク装置からローカル・ゲートウェイ機能にパケットを転送するためにルーティング・ルールがネットワーク装置のルーティング・アプリケーションで定義されると、ルーティング・ルールをネットワーク装置で実施することができる。
【0016】
一態様においては、ルーティング・アプリケーションをネットワーク装置のデバイス機能によって動作させることができる。
【0017】
一態様においては、顧客構内機器およびネットワーク装置の各々は、第1のタイプのネットワーク上で、デバイスに能力情報を公開するように構成されたゲートウェイ・アプリケーションを動作させることができる。
【0018】
一態様においては、ゲートウェイ・アプリケーションを、ネットワーク装置のゲートウェイ機能によって動作させることができる。
【0019】
一態様においては、第1のタイプのネットワークをローカル・エリア・ネットワークとすることができ、第2のタイプのネットワークをアクセス・ネットワークとすることができる。
【0020】
一態様においては、能力情報には、以下の情報のうちの1つまたは幾つかを含めることができる。
・ライブリネス
・利用可能な帯域幅
・所与のサービスに対して利用可能な現在の帯域幅
・レイテンシ尺度
・ゲートウェイ・サービス
・デバイス・タイプ
・現在のネットワーク・インジケータ
【0021】
一態様においては、少なくとも1つのネットワーク装置のデバイス機能は、第1のタイプのネットワークのデバイスとして動作することができる。
【0022】
さらに、本開示は、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスに関する。第1のタイプのネットワークは、顧客構内機器と通信する少なくとも1つのネットワーク装置を含む。
上記デバイスは、少なくとも1つのメモリと、
顧客構内機器および少なくとも1つのネットワーク装置から受信された能力情報に基づいて、デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
顧客構内機器または少なくとも1つのネットワーク装置で、定義されたルーティング・ルールを実施するコマンドを送信することと、
を行うように構成された少なくとも1つの処理回路とを含む。
ルーティング・ルールは、パケットを第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、顧客構内機器または少なくとも1つのネットワーク装置を特定する、
【0023】
さらに、本開示は、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスにも関する。第1のタイプのネットワークは、顧客構内機器と信号通信する少なくとも1つのネットワーク装置を含む。
上記デバイスは、
顧客構内機器および少なくとも1つのネットワーク装置から能力情報を受信するように構成された通信インタフェースと、
受信された能力情報に基づいて、デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義するルーティング・アプリケーションと、を含み、ルーティング・ルールは、パケットを第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、顧客構内機器または少なくとも1つのネットワーク装置を特定する。
通信インタフェースは、定義されたルーティング・ルールを顧客構内機器または少なくとも1つのネットワーク装置で実施するコマンドを送信するようにさらに構成されている。
【0024】
一態様においては、ルーティング・ルールを、このデバイスで、ルーティング・アプリケーションによって自動的に、または、ルーティング・アプリケーションに関連付けられた管理インタフェースを通じたユーザのアクションによって定義することができる。
【0025】
一態様においては、ルーティング・ルールを、対象サービスのタイプおよび/または利用可能な帯域幅に従って、ルーティング・アプリケーションによって自動的に定義することができる。
【0026】
一態様においては、ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、ルーティング・ルールが実施される期間とを少なくとも含み得る。
【0027】
本開示は、さらに、ゲートウェイ機能を備えた上述したデバイスを含み、第1のタイプのネットワーク上で、能力情報を公開するように構成されたゲートウェイ・アプリケーションをさらに動作させる、ネットワーク装置に関する。
【0028】
加えて、本開示は、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法を実行するためにコンピュータによって実行可能な命令のプログラムを現実的に実装した、コンピュータ読み取り可能な非一時的プログラム・ストレージ装置にも関する。第1のタイプのネットワークは、顧客構内機器と通信する少なくとも1つのネットワーク装置を含み、上記方法は、
顧客構内機器および少なくとも1つのネットワーク装置から受信された能力情報に基づいて、デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
顧客構内機器または少なくとも1つのネットワーク装置で、定義されたルーティング・ルールを実施するコマンドを送信することと、を含み、
ルーティング・ルールは、パケットを第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、顧客構内機器または少なくとも1つのネットワーク装置を特定する。
【0029】
本開示は、さらに、非一時的コンピュータ可読媒体に記憶されたコンピュータ・プログラム・プロダクトに関する。コンピュータ・プログラム・プロダクトは、第1のタイプのネットワークの顧客構内機器に接続されるように構成されたデバイスで実施される方法を実施するプロセッサによって実行されるプログラム・コード命令を含み、第1のタイプのネットワークは、顧客構内機器と通信する少なくとも1つのネットワーク装置を含む。上記方法は、
顧客構内機器および少なくとも1つのネットワーク装置から受信された能力情報に基づいて、デバイスのパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義することと、
顧客構内機器または少なくとも1つのネットワーク装置で、定義されたルーティング・ルールを実施するコマンドを送信することと、を含み、
ルーティング・ルールは、パケットを第1のタイプのネットワークと第2のタイプのネットワークとの間で転送するために、顧客構内機器または少なくとも1つのネットワーク装置を特定する。
【0030】
本開示による方法は、プログラム可能な装置上でソフトウェアにおいて実施することができる。本開示に従った方法をハードウェアまたはソフトウェアのみで実施することもできるし、ハードウェアおよびソフトウェアを組み合わせて実施することもできる。
【0031】
本開示の要素によって実施される処理の中には、コンピュータによって実施されるものがある。したがって、このような要素は、完全にハードウェアの実施形態で実施することも、(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)完全にソフトウェアの実施形態で実施することも、ソフトウェアおよびハードウェアの態様を組み合わせた実施形態で実施することもでき、これらは、全て、本明細書において、一般的に、「回路」、「モジュール」、または、「システム」と称することがある。さらに、このような要素は、任意の有体物としての媒体であって、内部にコンピュータが使用可能なプログラム・コードが実装された表現を有する媒体において実施されるコンピュータ・プログラム・プロダクトの形態をとることができる。
【0032】
本開示の要素は、ソフトウェアにおいて実施することができるため、本開示は、任意の適切な担持媒体上でプログラム可能な装置に提供されるコンピュータ読み取り可能コードとして実施することができる。有体物としての担持媒体には、フロッピー・ディスク、CD-ROM、ハードディスク・ドライブ、磁気テープ装置、または、ソリッドステート・メモリ装置などが含まれる。
【0033】
本開示は、したがって、コンピュータに上述した方法を実行可能にさせるコンピュータ実行可能な命令を含むコンピュータ可読プログラムを提供する。
【0034】
開示した態様と範囲が合致した特定の態様について以下に記載する。なお、これらの態様は、読者に対して開示が取りうる特定の形態の概要を簡略に提供するために与えられたものにすぎず、これらの態様は、本開示の範囲を限定するように意図されたものではないことが理解できよう。実際、本開示は、以下に記載していない様々な態様を包含することがある。
【0035】
本開示は、添付図面を参照して、限定を意図しない以下の実施形態および実施例より良好に理解され、例示されるであろう。
【図面の簡単な説明】
【0036】
【
図1】本原理の幾つかの実施形態を実施するホーム・ネットワークの例示的なネットワーク・アーキテクチャの概略図である。
【
図2】本原理に従った、
図1のホーム・ネットワークの各デバイス/装置/顧客構内機器のハードウェア構成の例を示す図である。
【
図3】本原理に従った、ネットワーク装置で動作するゲートウェイ・アプリケーションの管理インタフェースの例を描いた図である。
【
図4】本原理に従ったデバイスで動作するルーティング・アプリケーションの管理インタフェースの例を描いた図である。
【
図5】本原理に従った幾つかの実施形態によって使用される例示的な方法のフローチャートである。
【発明を実施するための形態】
【0037】
可能な箇所では、同一の部分、または同様の部分を参照するために、各図面にわたって同一の参照符号を使用する。
【0038】
以下の説明は、本開示の原理を例示している。したがって、当業者であれば、本明細書中で明示的に記載されていなくとも、本開示の原理を実施することができる様々な構成を企図でき、これらが本開示の範囲に含まれることが理解できよう。
【0039】
本明細書に記載された全ての例および条件付の文言は、本願の原理を読者が理解するのを助けるための教示目的のものであり、発明者によって寄与された概念は、技術を発展させるものであり、このような具体的に記載された例や条件に限定されるように解釈されるべきではない。
【0040】
また、本明細書における原理、態様、および、本願の実施の形態についての全ての記載、さらに、その特定の例は、構造的、機能的な均等物の双方を包含するように意図したものである。さらに、このような均等物は、現在公知の均等物だけでなく、将来において開発される均等物、即ち、構造に係らず、同一の機能を実行するように開発された全ての要素を包含するように意図されている。
【0041】
したがって、例えば、当業者であれば、本明細書において与えられたブロック図は、本願の原理を実施する回路を例示する概念図であることが理解できよう。同様に、フローチャート、フロー図、状態遷移図、擬似コードなどは、いずれも様々な処理を表すし、これらの処理は、実質的にコンピュータによって読み取り可能な媒体において表現することができ、コンピュータまたはプロセッサにより実行され、このようなコンピュータまたはプロセッサがはっきりと図示されているかどうかに係るものではないことが理解できよう。
【0042】
各図面において示される様々な要素の機能は、専用のハードウェアの使用により提供されてもよく、適切なソフトウェアと関連付けてソフトウェアを実行することが可能なハードウェアの使用によって提供されてもよい。機能がプロセッサによって提供される場合にも、単一の専用プロセッサによって提供されてもよく、単一の共有プロセッサによって提供されてもよく、複数の別個のプロセッサによって提供されてもよく、幾つかのプロセッサが共有されていてもよい。さらに、用語「プロセッサ」または「コントローラ」を明示的に使用した場合であっても、ソフトウェアを実行することが可能なハードウェアのみを意味するように解釈されるべきではなく、限定するものではないが、ディジタル信号プロセッサ(DSP:digital signal processor)・ハードウェア、ソフトウェアを格納する読み出し専用メモリ(ROM:read‐only memory)、ランダム・アクセス・メモリ(RAM:random access memory)、および不揮発性の記憶装置を黙示的に含み得る。
【0043】
請求の範囲において、特定の機能を実行するための手段および/またはモジュールとして表現されたいずれの要素も、この機能をどのような方法で実行するものも包含するように意図している。例えば、a)機能を実行する回路要素を組み合わせたもの、または、b)形態に関わらず、ソフトウェア、つまり、ファームウェア、マイクロコード等を含み、機能を実施するためにソフトウェアを実行する適当な回路と組み合わせたものも包含する。このような請求の範囲によって定義される本開示は、請求項に記載された様々な手段によって提供される機能が請求の範囲の要件として、組み合わせられ、まとめられている事実に基づいたものである。したがって、このような機能を提供することが可能な手段はどのようなものであっても、本願において示されているものと均等であるとみなされる。
【0044】
さらに、本開示の図および説明は、本開示を明確に理解するために必要な例示的な要素に簡略化されており、その一方で、簡略化のために、通常のディジタル・マルチメディア・コンテンツ配信方法、デバイス、およびシステムにおいて存在する多くの他の要素は省略されていることが理解できよう。しかしながら、このような要素は、本技術分野において公知であるため、本明細書中において、このような要素の詳細な説明は行わない。本明細書中の開示は、当業者によって公知なこのような変形および改変の全てを包含する。
【0045】
図1は、本願の原理の幾つかの実施形態を実施するためのローカル・エリア・ネットワーク(またはLAN)100(ホーム・ネットワークまたはビジネス・ネットワークなど)の例示的なネットワーク・アーキテクチャの例を示す模式図である。
【0046】
図1に示されているように、LAN100は、顧客構内機器(またはCPE)110と、1つまたは幾つかのデバイス120(
図1には、2つのデバイスが示されている)と、1つまたは幾つかのネットワーク装置130(
図1には、2つのネットワーク装置が示されている)と、を含む。デバイス120およびネットワーク装置130は、有線接続(例えば、イーサーネット・ケーブル)または無線接続(例えば、WiFi接続)を用いてCPE110に接続されている。
【0047】
図1の例においては、本願の原理を実施するために、CPE110は、
(以下に説明するルーティング・アプリケーション・プログラミング・インタフェース(またはAPI)サービスを利用して)デバイス120から受信されたコマンド(ルーティング・ルール)をスイッチ113に対する対応する1組のスイッチング・ルールに変換するように構成されたルーティング・サーバ111と、
ホーム・ネットワーク100に属するデバイス120および/またはネットワーク装置130に対して所定の期間IPアドレスを提供するように構成されたDHCPサービス112と、
転送ルールに従って、ホーム・ネットワーク100の或るインタフェース(例えば、デバイス120またはネットワーク装置130のインタフェース)から(ブロードバンド・アクセス・ネットワーク・リンクに関連付けられた)別のインタフェースにパケットを転送するように構成されたスイッチ113と、を含む。スイッチ113は、入来するパケットに対して適用されるマッチング/アクション・ルールに対応して(マッチングは、パケット・ヘッダのビットの配列と転送決定のアクションである)、(ルーティング・サーバ111から受信された)スイッチング・ルールを一組の転送ルールに変換するように構成されている。これらの転送ルールを、転送テーブルとしてスイッチ113内部に記憶させることができる。進行中のヘッダ・パケットが転送ルールのマッチング条件とマッチすると、スイッチ113は、テーブル・エントリの関連する転送決定を適用し、これは、特定のアドレス(例えば、ゲートウェイ機能132のアドレス)またはポート(例えば、CPE116のローカル・ゲートウェイ機能を提供するサーバのポート)に転送されることがある。
さらに、CPE110は、
ルーティング・アプリケーション・プログラミング・インタフェース(またはAPI)サービス114と、
後述するゲートウェイ・アプリケーション115と、
アクセス・ネットワーク118を通じてデータ・パケットをLAN100からワイド・エリア・ネットワーク200(またはWAN)(例えば、インターネット)に転送する、またはその逆を行うゲートウェイ機能116と、
WAN200との関連でのアクセス・ネットワーク118に対するインタフェース117と、を含む。
【0048】
さらに、
図1の例において、本原理を実施するために、各デバイス120は、デバイス機能121およびルーティング・アプリケーション122を含み得る。特に、デバイス機能121は、対応するデバイスの挙動を表し、このデバイス機能121は、任意のゲートウェイ機能を通じてインターネットにトラフィックを送信するための基礎となるネットワーク100を利用する全てのデバイス・アプリケーションを含み得る。デバイス・アプリケーションは、例えば、ウェブ・ブラウザ、ビデオ・ストリーミング・アプリケーション、およびデバイス機能(全てのウインドウズ/iOS/Androidアプリケーション)の組)とすることができる。デバイス120は、例えば、ポータブル・メディア・デバイス、タブレットまたはラップトップ、TVセット、セットトップ・ボックス、ゲーム・デバイスなどとすることができる。
【0049】
図1の例に示されているように、各ネットワーク装置には、デバイス機能131、ゲートウェイ機能132、ルーティング・アプリケーション133、ゲートウェイ・アプリケーション134、ルーティングAPIサービス135、およびWAN200に接続されたアクセス・ネットワークに対するインタフェース136を含めることができる。変形例においては、ネットワーク装置130は、ルーティングAPIサービスを備えていないことがある。ネットワーク装置130は、LAN100からWAN200にパケットを転送する、または、WAN200からLAN100にパケットを転送するためのゲートウェイ機能132を有するデバイス120である。
【0050】
なお、ネットワーク装置130は、WAN200に対するアクセスを提供する、追加的なゲートウェイ機能132を有するデバイス120に対応する。
【0051】
例えば、ネットワーク装置は、(Edge、3G、または4G接続のような)ブロードバンド・アクセス接続を備えたスマートフォン、タブレット、またはラップトップとすることができる。説明を分かりやすくするために、CPE110、デバイス120、およびネットワーク装置130の要素および/または機能の中には、
図1の例から意図的に省略されているものがある。
【0052】
ハードウェア構成の一例を描いている
図2に示されているように、各々のCPE110、デバイス120、およびネットワーク装置130は、それぞれ、バス204を通じて互いに接続された、(1つまたは複数のプロセッサを含む)中央演算装置(CPU)201、メモリ202および1つまたは幾つかのインタフェース203を含み得る。CPU201は、様々なデータを処理するように構成され、さらに、各々のCPE110、デバイス120、およびネットワーク装置130のそれぞれの様々な機能およびコンポーネントを制御するように構成される。メモリ202は、コンピュータ・プログラム・プロダクツおよびソフトウェアを含む、複数の異なるファイルおよび情報を処理および記憶するための、RAMなどの一時的なメモリ、および、ROM、ハードディスク・ドライブ、またはフラッシュ・メモリなどの非一時的なメモリの双方を含むことがある。
図1に示されている上述した機能および/またはアプリケーションは、メモリ202に記憶されたコンピュータ読み取り可能プログラムによって実施することができる。インタフェース203は、有線接続または無線接続を通じて、LAN100を介して、各々のCPE/デバイス/装置110,120および130との通信を行うために使用される。インタフェース203は、さらに、ユーザ入力および/または出力要素(例えば、タッチ・パネル、ディスプレイ画面、キーボード、リモコンなど)を含み得る。
【0053】
一実施形態においては、CPE110またはネットワーク装置130のゲートウェイ・アプリケーション115,134は、ユーザが対応するゲートウェイ機能116,132を制御、構成設定できるようにする。ゲートウェイ・アプリケーションは、CPE110またはネットワーク装置130のユーザによって開始することができる。変形例においては、ゲートウェイ・アプリケーションは、CPEまたはネットワーク装置の電源が投入されたときに起動することができる。
【0054】
例えば、ネットワーク装置130のユーザ(または所有者)は、自己のネットワーク装置130に関連付けられたアクセス・ネットワーク137を共有したいと自己が望むかどうかを決定することができる。さらに、ユーザは、CPE110のスイッチ113を介することなく、自己のネットワーク装置130に関連付けられたアクセス・ネットワーク137を通じてローカル・インターネットのトラフィックが常に流れるように決定することができる。そうでない場合には、インターネット・トラフィックは、LAN100の任意のデバイス/ネットワーク装置のようなインターネットのトラフィックを管理するスイッチ113に流れることがある。その場合、スイッチ113は、CPE110に関連付けられたアクセス・ネットワーク118などの別のアクセス・ネットワークにトラフィックを転送することを決定することができる。
【0055】
なお、ネットワーク装置130のルーティングAPIサービス135は、対応するゲートウェイ機能132を使用してローカル・インターネット・トラフィックを処理するために、(対象のルーティングAPIサービス135を含む)上記ネットワーク装置のゲートウェイ・アプリケーション134からコマンドを受信するように構成されているのみである。変形例または補完例においては、ローカル・インターネット・トラフィックのルーティングに関するこのようなコマンドは、ゲートウェイ・アプリケーション134からではなく、対象のネットワーク装置130のルーティング・アプリケーション133から来ることがある。
【0056】
図3は、ゲートウェイ・アプリケーション134の管理インタフェース300を、限定することなく、例示している例を示す図である。対応するネットワーク装置130のユーザは、専用のボタン301を動かすことによって、ネットワーク装置130のゲートウェイ機能132を起動することができる。さらに、別のボタン302を使用して、ユーザは、自己のネットワーク装置130のローカル・インターネット・トラフィックがCPE110のスイッチ113を経由するかどうかを決定することができる。変形例においては、ゲートウェイ機能を、対応するデバイス機能から関連するネットワーク・アクセス137への(または関連するネットワーク・アクセス137から対応するデバイス機能への)ローカル・トラフィックの自動的なパージングおよび転送を、ローカル・トラフィックがCPE110のスイッチ113にリダイレクトされることなく、行うように構成することができる。
【0057】
これに加えて、全てのゲートウェイ・アプリケーション115,134は、(起動されると)、通信チャネルを通じて、自己の能力(capabilities,capacities)情報をLAN100上で公開することができる。デバイス120のルーティング・アプリケーション122およびLAN100のネットワーク装置130は、例えば、それぞれの能力情報を受信するために、例えば、ゲートウェイ・アプリケーション115および134によって公開される情報をサブスクライブすることができる。一実施形態においては、公開/サブスクライブ処理を、アプリケーション・レイヤー(例えば、http)で実施することができ、(Redis Pub/Subパラダイムを実施する)Redisプロトコルに基づくもの、または(AndroidまたはiOSのような)オペレーティング・システムからの通知サービスに基づくものとすることができる。別の実施形態においては、公開/サブスクライブ処理は、ネットワーク・レイヤで実施することができ、サービス・ディスカバリ・プロトコル(例えば、シンプル・サービス・ディスカバリ・プロトコルまたはSSDP、または、Apple社によって提案されているmDNSを用いたDNSサービス・ディスカバリ)に依存することができる。
【0058】
また、能力情報は、以下の内容を含み得る。
・ゲートウェイ機能のライブネス;
・対応するアクセス・ネットワーク118、137上で利用可能な帯域幅;CPE110およびネットワーク装置130は、利用可能な帯域幅をパッシブに、またはダイナミックにチェックすることができる。
・(ゲーミング、映像、音声などの)所与のサービスに対して利用可能な現在の帯域幅;
・平均の帯域幅イベントの表示(例えば、受信品質の不良による帯域幅の低下);
・ローカル・ネットワーク装置、または別のネットワーク装置に対して予約された帯域幅;これは、他のデバイスにとって全体の帯域幅の部分のみが利用可能であることを意味する。これにより、例えば、ローカル・デバイスが自己の帯域幅に輻輳を生じることなく、他のデバイスと帯域幅を共有できるようにする。
・モバイルの限定されたデータ・プレーンを超えない、他のルーティング・アプリケーションに知らせるべき、モバイル・データ・プレーン上で使用される、または、利用可能な残りのデータ;
・レイテンシ・メトリック;
・ゲートウェイ・ステータス;
・装置タイプ(例えば、DSL、3G、4Gなど);
・装置の識別オペレータ名;
・トラフィックに起因して他のルーティングに知らせるべきデータ・プレーン警告;
・モバイルの限定されたデータ・プレーンの閾値に到達したこと(例えば、10Gbs/月間データ・プレーンの80%);
・CPEまたはネットワーク装置によって実施されるオペレーティング・システム;
・(例えば、「Edge」、「3G」、または「4G」受信の品質を表すインジケータに対応する)現在のネットワーク・インジケータ;
・現在接続されているデバイス/ネットワーク装置、または、新たに接続されたデバイス/ネットワーク装置のリスト
【0059】
デフォルトでは、(デバイス機能131を有する)所与のデバイス120またはネットワーク装置130に対し、CPE110のスイッチ113をこの所与のデバイス/ネットワーク装置から入来するパケットを、WAN200にアクセスするためのCPE110のアクセス・ネットワーク・インタフェース117にルーティングするように構成することができる。その場合、CPE110のゲートウェイ機能116は、デフォルト・ゲートウェイとみなされる。
【0060】
デバイス120またはネットワーク装置130のユーザは、インターネット200に接続するための代替的なアクセス・ゲートウェイを選択するために、関連付けられたルーティング・アプリケーション122,133を開始することができる。変形例においては、ルーティング・アプリケーション122,133を、デバイス/装置に電源が投入されたときに、起動することができる。
【0061】
サブスクリプションの後、デバイス120およびネットワーク装置130のルーティング・アプリケーションは、ゲートウェイ機能116,132が動作しており、対応するゲートウェイ・アプリケーション115,133が起動しているときに、CPE110およびネットワーク・アプリケーション130の様々なゲートウェイ・アプリケーション115、134から能力情報を受信することができる。
【0062】
一実施形態においては、ゲートウェイ・アプリケーション115,134によって公開された、受信された能力情報に基づいて、ルーティング・アプリケーション122,133は、1つまたは幾つかのルーティング・ルールを自動的に規定してLAN100とWAN200との間の対応するデバイス120またはネットワーク装置130のデータ・パケット(例えば、インターネット・トラフィック)をルーティングすることができる。ルーティング・アプリケーションによるルーティング・ルールの定義は、例えば、デフォルトのゲートウェイ機能(例えば、CPE110のゲートウェイ機能116)に障害が発生した場合には、第1の代替的なゲートウェイ機能118,137に自動的にルーティングすることによって、デフォルト・ゲートウェイ・フェイルオーバー・モードに依存させることができる。第1の代替的なゲートウェイ機能118,137の決定には、例えば、「Edge」、「3G」、「4G」接続の受信品質を考慮することによって、)帯域幅の推定を考慮することができる。補完例または変形例においては、ルーティング・アプリケーション122,133は、対象のサービスを考慮することができる。例えば、適切なレイテンシを必要とするゲーミング・サービスおよびビデオ・コーリングは、ネットワーク装置130の(「Edge」、「3G」、「4G」接続などの)モバイル接続が存在する場合、または、このようなモバイル接続がLAN100内で利用可能になると、(例えば、新たなネットワーク装置130がLAN100に取り付けられたばかりのとき)、そのモバイル接続に関連付けられることがある。新たなモバイル接続が利用可能となると、ルーティング・ルールは、1つの定義されたゲートウェイ機能(例えば、デフォルト・ゲートウェイ)からこの新たなモバイル接続を提供するネットワーク装置130のゲートウェイ機能に切り換えできるようにする。ビデオ・サービスに対しては、ルーティング・アプリケーション122,133は、例えば、特に、データ・プレーン警告を考慮することによって、残りのデータ・プレーンが所与の敷値(例えば、割り当てられたデータ・プレーンの50%)を超えないというリミットを有するCPE110のゲートウェイ機能に関わるルーティング・ルールを確立することができる。さらなる変形例または補完例においては、ルーティング・アプリケーション122,133は、LAN100のゲートウェイ機能116および132のうち、最良の利用可能な帯域幅を提供するゲートウェイ機能に従って、ルーティング・ルールを定義することができる。なお、1つのデバイスからのルーティング・ルールは、トラフィックのタイプ(例えば、4Gに対するビデオ・トラフィック、DSLに対するHTTPトラフィック)に依存して幾つかのゲートウェイ機能に関わることがある。
【0063】
別の実施形態においては、所与の装置/ネットワーク装置のルーティング・アプリケーションは、LAN100の他のデバイスおよびネットワーク装置のルーティング・ルールを考慮することができる。例えば、第1のデバイス120がパケットを所与のゲートウェイ機能(例えば、DSL)にルーティングするルーティング・ルールを定義しているとき、さらに、同一の所与のゲートウェイ機能(DSL)を使用したルーティング・ルールを有するLAN100に新たなデバイス120,130が出現したとき、第1のデバイス120のルーティング・アプリケーションは、これに応じて、(例えば、LAN100の別のゲートウェイ機能を選択することによって、)自己のルーティング・ルールを変更することを決定できる。
【0064】
別の実施形態においては、ルーティング・ルールを、(デバイス/装置の画面上で表示されるユーザ・インタフェースなどの)管理インタフェース400から、デバイス120/ネットワーク装置130のユーザによって定義することができる。この場合、ユーザは、自分でゲートウェイ機能の性能を評価することができる。
【0065】
どのようなタイプの定義であっても(自動的に行われるものでも、または手動で行われるものでも)、優先度を各ルーティング・ルールに関連付けることができ、この優先度は、ルーティング・サーバ111によって考慮、処理される。
【0066】
図4の例において示されているように、管理インタフェース400は、ユーザに対し、例えば、インタフェース400上に表示されるゲートウェイの能力に基づいて、所望のゲートウェイ機能116を選択可能である旨の情報(分かりやすくするために、幾つかのゲートウェイの能力のみが
図4に示されている)を提供することができる。(
図4に示されていない)補完的な例、または、改変例においては、対象のサービス(例えば、ビデオ、ゲーミング、ビデオ・コーリング)のタイプに依存して、幾らかのルーティング・ルールを予め定義することができる。例えば、4Gゲートウェイ機能を、ゲーミング・サービスまたは音声サービスのデータ・パケットを転送するように予め定義することができ、その一方で、ストリーミング・サービスは、DSLゲートウェイ機能を使用して既に関連付けられていることがある。別の補完的な例または変形例においては、ユーザは、利用可能なゲートウェイ機能(例えば、DSL/ファイバ/ケーブル、第1の携帯電話、第2の携帯電話など)の好ましい順序のリストを選択することができる。したがって、
図4を参照すると、所望のゲートウェイ機能に関連付けられたボックス401にチェックマークを付ける代わりに、ユーザは、ゲートウェイ機能の対応するボックス401をドラッグすることによってゲートウェイ機能の所望の順序のリストを構築することができる。その場合、対応するルーティング・アプリケーション122,133は、構築されたゲートウェイ機能の所望の順序を考慮することによって、さらにルーティング・ルールを定義することができる。
【0067】
一実施形態においては、定義のタイプに関わらず(自動的に行われるものであっても、手動で行われるものであっても)、ルーティング・アプリケーション122,132によって、(例えば、ルールの有効性に対応する期間に基づいて)ルーティング・ルールを定期的に定義することができる。これによって、期間の終了後、スイッチ113は、当初の状態に確実に復帰する。このため、ルーティング・サーバ111は、各々の新たなルーティング・ルールに対し、最大の期間を設定することができ、ルーティング・アプリケーションがこの期間が経過する前にルーティング・ルールを更新できるようにする。例えば、最大の期間を、(例えば、GETリクエストを介して)ルーティング・サーバ111のルーティングAPIサービス114を通じて各デバイスのルーティング・アプリケーションによってリクエストすることができる。手動で入力が行われると、ルーティング・アプリケーションは、所定の期間が終了する前に(バックグラウンドで)自動的にルーティング・ルールを更新することができる。新たなルーティング・ルールを送信する前にルーティング・ルールを削除することを回避するために、マッチ・ヘッドが同一である場合に、新たなルーティング・ルールで自動的に古いルールを置き換えることもできる。
【0068】
デバイス120またはネットワーク装置130のルーティング・アプリケーションによって、ルーティング・ルールが自動的または手動で定義されている場合、ルーティング・アプリケーション122,133は、APIサービス114を通じてCPE110のルーティング・サーバ111に対してAPIリクエスト(またはコマンド)を送信することができる。ルーティング・サーバ111は、セマンティック(例えば、誤ったリクエスト)チェックおよび整合性チェック(すなわち、ルールが他に存在しているルールに対して適用できるかどうか)を含め、リクエストの整合性をチェックする。ルールに整合性が存在する場合、ルーティング・サーバ111は、APIリクエストをスイッチ113のためのスイッチング・ルールに変換することによって、スイッチ113で定義されたルーティング・ルールを実施し、スイッチ113は、さらに受信したスイッチングを転送ルールに変換する。APIリクエストを、HTTPプロトコル特性を使用したREST(Representational State Transfer)アーキテクチャに依存させることができる。例えば、ルーティング・アプリケーション122によって送信されるAPIリクエストは、少なくとも送信元デバイス/装置(例えば、そのMACアドレスおよび/またはIPアドレス)、選択されたゲートウェイ機能(例えば、CPE110またはネットワーク装置130のMACアドレスおよび/またはIPアドレス)、およびルーティング・ルールが実施されている期間(例えば、http:/server/set-simple-rule-by-ip-device/{IPdevice}/{IP gateway}/{time period})を含む、タプルとすることができる
【0069】
ルーティングAPIサービス114によってAPIリクエストが受信されると、CPE110のルーティング・サーバ111は、選択されたゲートウェイ機能に対して入来するトラフィックをルーティングするために、スイッチ113でルーティング・ルールを実施することができる。同様に、選択されたゲートウェイ機能から入来するパケットを対応するデバイス/ネットワーク装置に仕向けるために、逆のパス上で、別のルールを作成することができる。
【0070】
一実施形態においては、ルーティング・サーバ111は、スイッチ113でポリシーおよびルーティング・ルールを実施するための、iproute2(ipルール、ipルート)、iptables、およびコネクション・トラッキング機能のようなlinuxネットフィルタをベースとするツールを利用することができる。デフォルトでは、ルーティング・サーバ111は、起動時にファイアウォールおよび基本的なルーティング・ポリシーを確実に実行できるように一組のnetfilterルールを用いて構成済みとすることができる。ルーティング・アプリケーション122から入来する新たなルーティング・リクエストを受信すると、ルーティング・サーバ111は、入来するパケットがipルールと整合し、ipルール内で、選択されたゲートウェイに対するipルールを作成するように、新たな組の特定のipルールおよびipテーブルを作成し、デバイス/ネットワーク装置から入来するパケットをマーキングすることができる。ipsetは、各ipルールに対してタイムアウト値を設定し、新たなタイムアウトでルールを更新することができる高機能netfilterツールである。ルーティング・サーバは、スイッチ113の転送テーブルの配置を行うために、ハイレベル・ルーティング・アプリケーション・ルールを一組の整合したnetfilterのルールに変換することができる。別の実施形態においては、スイッチを、Openflowルール(スイッチング・ルール)実施するために、Openflowプロトコルに従って、ルーティング・サーバからOpenflowルール(スイッチング・ルール)を受信するように構成されたOpenflowスイッチとすることができる。
【0071】
ルーティング・サーバ111は、新たなルールを実施する前に、全体的なルールの整合性をチェックすることができる。例えば、従前のルーティング・ルールが存在する場合には、ルーティング・サーバ111は、従前のルールを除去することによってルーティング・ルールを更新することができる。さらに、実施されるルーティング・ルールは、良好に記述さる、デバイス120またはネットワーク装置130がLAN100ともはや接続されていないときに、除去されるとよい。選択されたゲートウェイ機能116,132が到達不能となった場合(例えば、ゲートウェイ・サービス・オフ・メッセージが送信される、予期せずに利用不可能となるなど)、ルーティング・アプリケーション122,133は、デフォルトのゲートウェイ機能(例えば、CPE110のゲートウェイ機能)を使用した新たなルーティング・ルールを設定するために、ゲートウェイ機能にpingを送信して接続性をチェックし、応答が無ければ、ルーティングAPIサービス114を通じて自動的に「Remove&Update」APIリクエストをルーティング・サーバ111に送信することができる。対応するデバイス/ネットワーク装置のユーザには、管理インタフェース400を通じてルーティング・ルールのこの変更が通知される。
【0072】
別の実施形態においては、デバイス120およびネットワーク装置130の一方をマスタ・デバイスとみなすことができる。他方のデバイス/ネットワーク装置はスレーブ・デバイスである。マスタ・デバイスを、スレーブ・デバイスからのルーティング・ルールを受信し、CPE110にコマンドを送信し、自己のルーティング・ルールおよびスレーブ・デバイスから受信されたルーティング・ルールを実施するように構成することができる。その実施形態においては、マスタ・デバイスは、スレーブ・デバイスによって定義されたルーティング・ルールを変更し、このような変更をスレーブ・デバイスに知らせることができる。
【0073】
図5は、デバイス120またはネットワーク装置130でルーティング・ルールを定義する方法500が提供される実施形態を例示するフローチャートである。
【0074】
ステップ501において、ユーザのアクションにより手動で、または、デバイス/装置の電源が投入されたときに自動的に、デバイス120またはネットワーク装置130に記憶されたルーティング・アプリケーション122,133を起動することができる。
【0075】
ステップ502において、ルーティング・アプリケーション122,133が起動されると、このルーティング・アプリケーション122,133は、CPE110およびネットワーク装置130のゲートウェイ・アプリケーション115,134によって公開される能力情報のサブスクリプションを行うことができる。
【0076】
このようなサブスクリプションによって、デバイス/装置がLAN100のゲートウェイ機能の能力情報を受信することが可能となる。ステップ503において、ユーザは、受信された能力情報に基づいて、考慮されているデバイス/装置に関連付けられたルーティング・データ・パケットに対するルーティング・ルールを定義することができる。変形例においては、ルーティング・ルールを上述したように自動的に定義することができる。ゲートウェイ機能の好ましい順序リストもまた、ユーザによって構築することができる。この順序リストは、ルーティング・アプリケーション122,123によってさらに処理される。
【0077】
ステップ504において、ルーティング・ルールが手動で、または自動的に定義されると、ルーティング・アプリケーション122,133は、1つまたは幾つかのコマンドをCPE110のルーティングAPIサービス114に送信することができる。
【0078】
次に、コマンドは、ステップ503で定義されたルーティング・ルールを実施するために、CPE110のルーティングAPIサービス114によって実行することができる。本原理により、例えば、世帯の構成員に対する全体的なサービス品質(QoE)を向上させるために、家庭におけるインターネットに対する全体的なアクセス・リンクの管理を企図することができる。以下の家庭での使用例は、適切なルーティング・ルールの定義を用いた本原理に従って、幾つかの想定可能な実施形態を例示するものである。
ホーム・ネットワークにおいて父親のデバイスおよび息子のデバイスが接続されており、これらのデバイスからの2つのインターネット・アクセス・リンクが利用可能である場合には、息子のデバイスのトラフィックは、モバイル・インターネット・アクセスに流れて父親のブロードバンドの全帯域幅を使用することができる。
ゲーミングのために息子のデバイスが使用され、その一方でストリーミングのために父親のデバイスが使用される場合には、息子のデバイスのトラフィックは、より低いレイテンシを有するインターネット・アクセス・リンクのうちの1つに流れることができ、その一方で父親のデバイスのトラフィックは、より高い帯域幅を提供する利用可能なインターネット・アクセス・リンクのうちの別のアクセス・リンクに流れることができる。
ストリーミング・トラフィックのために使用されるUMTSモバイル・フォンをLTEモバイル・フォンのアクセス・リンクにリダイレクトすることができ、その逆、すなわち、LTEモバイル・ウェブ・トラフィックをUMTSモバイル・アクセス・リンクにリダイレクトすることができる。
【0079】
図面において、例示されたブロックまたはモジュールが機能的なモジュールに対応することがあることを理解できるであろう。機能的なモジュールは、区別可能な物理的なユニットに対応することもあるし、対応しないこともある。例えば、複数のこのようなモジュールは、独自のコンポーネントまたは回路において関連付けられることもあれば、ソフトウェア機能に対応することもある。さらに、モジュールは、別個の物理的なエンティティ、またはソフトウェア機能から構成される可能性もある。
【0080】
本明細書、請求項、および図面における開示は、独立して、または、適切に組み合わせて提供されることがある。各特徴事項は、適宜、ハードウェア、ソフウェア、または、ハードウェアおよびソフトウェアを組み合わせて実施されることがある。
【0081】
本明細書において、「一実施形態」または「実施形態」と言及されている場合、これは、実施形態との関連で説明されている特定の特徴事項、構造、または特性が開示の少なくとも1つの実施態様に含まれる場合があることを意味する。明細書中の様々な箇所に存在する「一実施形態において」という表現は、必ずしも、全てが同一の実施形態について言及するものではなく、別個の実施形態または代替的な実施形態が必ずしも相互に他の実施形態に対して排他的となるものではない。
【0082】
請求の範囲に存在する参照符号は、例示的な目的のみのものであり、請求の範囲に対して限定的な影響を及ぼすものではない。
【0083】
本開示の特定の実施形態のみを本明細書中で説明したが、当業者であれば、本開示の他の改変例、変形例、想定例が存在することが理解できるであろう。したがって、このような改変例、変形例、想定例は、本開示の精神および範囲内に包含されるものと考えられ、本明細書中で開示され、且つ/または例示される本開示の一部を構成するものとみなされる。
【0084】
図面内のフローチャートおよび/またはブロック図は、本開示の様々な実施形態のシステム、方法、およびコンピュータ・プログラム・プロダクトの想定可能な実施態様の構成、動作、および機能を例示している。この点に関し、フローチャートまたはブロック図内の各ブロックは、特定の論理機能を実施するための実行可能な1つ以上の命令を含む、モジュール、セグメント、またはコードの部分を表すことがある。なお、代替的な実施態様の中には、ブロックで示された機能の順序が図中に示されたものとは異なることがある。例えば、連続して示されている2つのブロックが、関連する機能に依存して、実際には、実質的に同時に実行されることもあれば、ブロックが、場合によっては、逆の順番で実行されることもあり、ブロックが、代替的な順序で実行されることもある。なお、ブロック図および/またはフローチャートにおける各ブロック、さらに、ブロック図および/またはフローチャートにおけるブロックの組み合わせは、特定の機能、動作を行う特定用途ハードウェアに基づくシステム、または、特定用途ハードウェアおよびコンピュータ命令の組み合わせによって実施することができる。明示的に記載されていないものの、本明細書
中の実施形態を任意に組み合わせて実施することもできるし、部分的に組み合わせて実施することもできる。
なお、上述の実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限定されない。
(付記1)
第1のタイプのネットワーク(100)の顧客構内機器(110)に接続されるように構成されたデバイス(120)で実施される方法であって、前記第1のタイプのネットワーク(100)は、前記顧客構内機器(110)と通信する少なくとも1つのネットワーク装置(130)を含み、前記方法は、
前記顧客構内機器(110)および前記少なくとも1つのネットワーク装置(130)から受信された能力情報に基づいて、前記デバイス(120)のパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義すること(503)と、
前記定義されたルーティング・ルールを前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)で実施するコマンドを送信すること(504)と、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワーク(100)と第2のタイプのネットワーク(200)との間で転送するために、前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)を特定する、方法。
(付記2)
前記ルーティング・ルールは、前記デバイス(120)で、ルーティング・アプリケーション(122,133)によって自動的に、または、前記ルーティング・アプリケーションに関連付けられた管理インタフェース(400)を通じたユーザのアクションによって定義される、付記1に記載の方法。
(付記3)
前記ルーティング・ルールは、対象サービスのタイプおよび/または利用可能な帯域幅に従って、前記ルーティング・アプリケーション(122,123)によって自動的に定義される、付記2に記載の方法。
(付記4)
前記コマンドは、前記顧客構内機器(110)で動作するアプリケーション・プログラミング・インタフェース・サービス(114)を利用してルーティング・サーバ(111)によって実施される、付記1~3のいずれかに記載の方法。
(付記5)
ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、前記ルーティング・ルールが実施される期間とを少なくとも含む、付記1~4のいずれかに記載の方法。
(付記6)
前記デバイス(120)は、ルーティング・アプリケーション(122)を実行する、付記1~5のいずれかに記載の方法。
(付記7)
前記ネットワーク装置(130)は、ルーティング・アプリケーション(133)を実行する、付記1~6のいずれかに記載の方法。
(付記8)
前記顧客構内機器(110)および前記ネットワーク装置(130)の各々は、前記第1のタイプのネットワーク(100)上で前記デバイス(120)に能力情報を公開するように構成されたゲートウェイ・アプリケーション(134)を動作させる、付記1~7のいずれかに記載の方法。
(付記9)
第1のタイプのネットワーク(100)の顧客構内機器(110)に接続されるように構成されたデバイス(120)であって、
前記顧客構内機器(110)および前記少なくとも1つのネットワーク装置(130)から能力情報を受信するように構成された通信インタフェース(203)と、
前記受信された能力情報に基づいて、前記デバイス(120)のパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義するルーティング・アプリケーション(122)と、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワーク(100)と第2のタイプのネットワーク(200)との間で転送するために、前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)を特定し、
前記通信インタフェース(203)は、前記定義されたルーティング・ルールを前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)で実施するコマンドを送信するようにさらに構成されている、デバイス(120)。
(付記10)
前記ルーティング・ルールは、前記デバイス(120)で、ルーティング・アプリケーション(122)によって自動的に、または、前記ルーティング・アプリケーション(122)に関連付けられた管理インタフェース(400)を通じたユーザのアクションによって定義される、付記9に記載のデバイス。
(付記11)
前記ルーティング・ルールは、対象サービスのタイプおよび/または利用可能な帯域幅に従って、前記ルーティング・アプリケーション(122)によって自動的に定義される、付記10に記載のデバイス。
(付記12)
ルーティング・ルールを実施する各コマンドは、送信元アドレスと、送信先アドレスと、前記ルーティング・ルールが実施される期間とを少なくとも含む、付記9~11のいずれかに記載のデバイス。
(付記13)
ゲートウェイ機能(116)を備え、前記第1のタイプのネットワーク(100)上で能力情報を公開するように構成されたゲートウェイ・アプリケーション(134)をさらに動作させる、付記9~12のいずれかに記載のデバイスを含むネットワーク装置。
(付記14)
非一時的コンピュータ可読媒体に記憶され、第1のタイプのネットワーク(100)の顧客構内機器(110)に接続されるように構成されたデバイス(120)で実施される方法(500)を実施するプロセッサによって実行可能なプログラム・コード命令を含むコンピュータ・プログラム・プロダクトであって、前記第1のタイプのネットワーク(100)は、前記顧客構内機器(110)と通信する少なくとも1つのネットワーク装置(130)を含み、前記方法は、
前記顧客構内機器(110)および前記少なくとも1つのネットワーク装置(130)から受信された能力情報に基づいて、前記デバイス(120)のパケットをルーティングする1つまたは幾つかのルーティング・ルールを定義すること(503)と、
前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)で前記定義されたルーティング・ルールを実施するコマンドを送信すること(504)と、を含み、
前記ルーティング・ルールは、パケットを前記第1のタイプのネットワーク(100)と第2のタイプのネットワーク(200)との間で転送するために、前記顧客構内機器(110)または前記少なくとも1つのネットワーク装置(130)を特定する、前記コンピュータ・プログラム・プロダクト。