本発明は、より有効な終端点間のQoS管理を行うため、QoSの管理機能を端末に移すようにしている。移動端末は、その送信レートを管理したり、さらには取得する要求の数を制御することによって受信レートを管理したりするなどのQoSの管理能力を備えており、本発明は、移動端末のユーザとサービスプロバイダとの間のサービスレベル協定に直接基づいて、すべての端末を監視する中央サーバ(セントラルサーバ)を有している。セントラルサーバは、ユーザのホームネットワークに存在する。このホームネットワークは、ユーザがサービスに加入しているネットワークである。また、端末は、報告及び監視を行うQoS制御モジュールを有している。このQoSコントローラも、どの値が変更されるべきなのかを端末に告げる実施データを受信した場合でも、動作変更に反応することが可能であり、その後は、QoSコントローラは新しい値の閾値及びその範囲内で動作を行う。
以下、通信ネットワークに基づいて、端末をパケットのQoSサービスコントロールに順応させるための装置及び方法が開示される。本発明の理解を助けるため、次の定義を使用する。
「WLAN」は、ワイヤレスローカルエリアネットワークを示す。これは、無線技術を通じて、移動端末に対してLANサービスを提供するために、任意の数のデバイスを含むものである。
「3Gネットワーク」は、第3世代の公衆アクセスネットワークを示す。例えば、3GPP(非特許文献4)又は3GPP2(非特許文献5)によって定義されるシステムである。
「移動端末(Mobile Terminal:MT)」は、無線技術を通じて、WLANやその他のネットワークによって提供されるサービスへのアクセスに使用されるデバイスを示す。
「ホームネットワーク」は、移動端末の相互接続のシナリオにおいて、移動端末が最初に属しているネットワークを示す。
「移動先ネットワーク」は、移動端末が接続するネットワークを示す。このネットワークは、移動端末にアクセスサービスを提供するものである。
「ネットワークエレメント」は、情報処理を行うネットワークで機能するあらゆるデバイスを示す。
「ルールエンジン」は、下記のルールサーバによって設定され、下記のルールインタプリタによってローカルに特有のコマンドに解釈されるルールを実行するネットワークエレメントを示す。
「ルールインタプリタ」は、下記のルールサーバによって与えられるルールを読み込み、適切なパラメータを用いてローカルの技術に特有のコマンドに解釈して、そのコマンドを実行するルールエンジンに対して供給するネットワークエレメントを示す。
「ルールサーバ」は、ルールインタプリタやルールエンジンに対して、要求を受けた場合又は要求を受けずに、適切なルールのセットを送信するネットワークエレメントを示す。
「エアインタフェース」は、移動端末がWLANにアクセスするためのあらゆる無線アクセス技術を示す。
「ストリーム」は、所定の属性が共通であり、ネットワークで転送されるパケットの集まりである。
「トラフィック」は、ネットワークで転送されるストリームの集まりである。
「フロー」は、データパスや、ストリームを伝送するときに使用されるデータパスに必要なネットワークリソースを示す。
「QoS」は、データストリーム又はトラフィックのサービス品質(Quality of Service)を示す用語である。
「メッセージ」は、相互接続を制御するために、ネットワークエレメント間で交換される情報を示す。
「動作シーケンス」は、相互接続の制御に関して、任意のネットワークエレメント間で任意の順序で交わされる一連のメッセージ交換を示す。
「上位レイヤ」は、あるエンティティから渡されたパケットを処理する、当該エンティティの上部に位置するあらゆるエンティティを示す。
「SLA」は、サービスレベルの協定(Service Level Agreement:サービスレベルアグリメント)を示す。
「ユーザSLA」は、サービスプロバイダとユーザとの間のサービスレベルアグリメントを示す。
「ネットワークSLA」は、サービスプロバイダと別のサービスプロバイダとの間のサービスレベルアグリメントを示す。
「AAA」は、移動端末へのサービス提供に関する認証(Authentication)、許可(Authorization)、課金(Accounting)を示す。
以下の説明では、本発明を完全に理解できるよう、具体的な数、時間、構造、プロトコルの名前、その他のパラメータが使用されるが、このような具体的な詳述がなくても、本発明の実施が可能なことは当業者にとって明白である。また、各事例では、本発明を不明瞭なものとしないよう、よく知られた構成要素やモジュールがブロック図で示される。
図1は、本発明の実施の形態における端末ベースの制御で終端点間のQoSを実現する構成を示す模式図である。ここでは、システムアーキテクチャとして、3Gネットワークなどが用いられているが、同様のアーキテクチャや制御方式を有する他のネットワークにも適用可能であることは、当業者にとって明白である。
各移動端末(以下、単に端末とも呼ぶ)11には、端末のQoSコントローラモジュール11Aがインストールされている。この端末QoSコントローラモジュール11Aは、トラフィック調整、動作監視、パケットの再スケジューリングなどのQoS管理を実行する能力を有している。アクセスポイント12は、移動先ネットワーク13への端末の接続点である。移動先ネットワーク13は、端末へのアクセスサービスを提供するネットワークであり、1つ又は複数の中継ネットワーク17を介して端末のホームネットワーク16と接続している。中継ネットワーク17は、例えば、IPバックボーンやATMネットワークなどを始めとして、どのようなタイプのものでもよい。
また、ポリシーアテンダント14は、各移動先ネットワーク13に存在している。このポリシーアテンダント14は、移動先ネットワーク13のルールエンジンとして機能し、移動先ネットワーク13におけるQoS制御を実施するために、ポリシーコントロールフレームワークによって取得されるルールを実行する。また、ポリシーアテンダント14は、移動先ネットワーク13におけるローカルポリシーに基づいて、接続許可の制御を行う。
SLAマネージャ15は、ホームネットワーク16に存在する特別なサーバであり、このネットワークに加入するあらゆるユーザのSLAに関する情報を有するSLAデータベース18を含むメインデータベースにアクセスを行う。また、SLAデータベース18は、例えば、位置やサービス利用情報などの各ユーザのサービスステータスを含んでいる。3Gネットワークでは、このようなデータベースの一例として、HSS6サーバ(非特許文献6)が挙げられる。また、SLAマネージャ15は、ホームネットワーク16における処理サーバとして機能し、ユーザの加入プロフィールやネットワークポリシーに基づいて、サービス提供の決定を行う。この決定は、ポリシーコントロールフレームワークによって各ネットワークのポリシーアテンダント14や、本発明のシグナリング方法によって移動端末11に伝えられる。
移動端末11及びポリシーアテンダント14は、望ましいQoSでユーザにサービスを提供するために、適切に動作を行うことが可能である。また、ここで使用されるポリシーコントロール方法は、ネットワーク配置に依存する。なお、本発明では、既存のポリシーコントロールフレームワークを利用し、ポリシーコントロールフレームワークに付加的な条件を与えるものではない。また、本実施の形態では、シグナリングはIPに基づくプロトコルによって行われるが、例えば、SS7やATMなどの他の通信プロトコルによる実現が可能であることは、当業者にとって明白である。
端末はモバイルなので、異なる接続点で異なるネットワークに接続することが可能である。端末が接続するネットワークは、そのホームネットワーク16又は移動先ネットワーク13(ホームネットワーク16以外のあらゆるネットワーク)である。端末が直接ホームネットワーク16に接続する場合には、直接SLAマネージャ15に接続する信号経路が保証される。また、端末が移動先ネットワーク13に接続する場合には、端末によるすべての要求が、移動先ネットワーク13に送られる必要があり、移動先ネットワーク13はその要求をホームネットワーク16に転送する必要がある。すなわち、ホームネットワーク16と移動先ネットワーク13とによって双方向の通信が行われる。このような状況における移動端末11への信号経路を確立する方法はいくつか存在しており、それらは以下のようにして導入される。
図2は、本発明の実施の形態における端末中心のQoS制御フレームワークの詳細なアーキテクチャを示すブロック図である。なお、この図では、シグナリング及び制御に係るもののみが示され、それらに無関係なエンティティは省略されている。このアーキテクチャでは、セッション管理プロトコルが、端末のQoS報告及びフィードバック制御に利用される。例えば、セッション管理プロトコルとしては、SIPが使用可能である。なお、必要最小限の改変によって、他のセッション管理プロトコルでも動作することは、当業者にとって明白である。以下に、このアーキテクチャでの各モジュールの機能を簡潔に説明する。
端末21は、ユーザ機器であり、例えば、移動端末である。これは、図1の端末11及びQoSコントローラモジュール11Aと同等のものである。
SIPアプリケーション22は、セッション管理の基本的なプロトコルであるSIPを使用する端末21のアプリケーションである。
QoSコントローラ23は、端末21でQoSを管理するエンティティであり、パケットの再スケジューリング、パケットのキューイング、パケットの廃棄、実行されるリクエストの量の調節などの動作監視やトラフィック調整を行う。これは、図1に示されるQoSコントローラモジュール11Aの一例である。
移動先ネットワーク24は、端末21が現在接続しているネットワークである。
移動先ネットワーク24におけるSIPプロキシ25は、実際の目的地に対してSIPメッセージを転送するポイントとして機能する。
ポリシーアテンダント26は、移動先ネットワーク24のローカルな処理を管理する機能を有し、ポリシーコントロールフレームワークによって、ホームネットワーク27のSLAマネージャ28と接続する。
ホームネットワーク27は、端末21がサービスに加入するネットワークである。
SLAマネージャ28は、SLAデータベース29にアクセスして、ユーザ報告を集め、QoSの取り扱い及び実施を決定するコントローラモジュールである。
SLAデータベース29は、すべてのSLAを格納する集中データ格納手段であり、ユーザとサービスプロバイダとの間のSLAや、サービスプロバイダ間のSLAを含んでいる。さらに、例えば、その位置や要求されたサービスなどの各ユーザに関するサービスステータスをも保持している。ホームSIPプロキシ30は、ホームネットワーク27に存在するSIPプロキシである。
図3は、図2のアーキテクチャで使用される、端末が直接ホームネットワークに接続していない場合のQoSの報告及びフィードバックのためのシグナリングを示すシーケンスチャートである。端末21は、移動先ネットワーク24に接続し、ホームネットワーク27へのダイレクトIP接続を利用することはできない。ホームネットワーク27によって提供されるサービスにアクセスするため、端末21は、あるセッション管理メカニズムを使用する必要があり、この例では、SIPが図示されている。なお、他のセッション管理プロトコルでも動作可能なことは、当業者にとっては明白である。
端末21が要求先パーティ(Callee party)とのセッションを開始する場合、SIPアプリケーション22によって、対応するセッション記述プロトコルで、SDPメッセージとしても知られている“INVITE”を発行する(301:INVITE(SDP))。SDP内には、この端末にQoS制御能力があることを示すQoS制御能力タグが埋め込まれる。“INVITE”メッセージは、まず、移動先ネットワーク24のSIPプロキシ25を通る。移動先ネットワーク24のSIPプロキシ25はこのパケットを調べて、ホームネットワーク27のホームSIPプロキシ30にSIPメッセージを転送する(302:INVITE(SDP))。ホームSIPプロキシ30は、ホームネットワーク27に存在するSIPプロキシであり、さらなる処理のためにこの要求を他のエンティティに転送する前に、要求されたサービスの許可を行うSLAマネージャ28に、このサービス要求をチェックさせる(303:Check Srv Req)。なお、この情報は、SLAデータベース29に格納されている要求元のSLAの一部である。
SLAマネージャ28は、要求元のSLAを保持していない場合には、SLAデータベース29から要求元のSLAを抽出する動作を行い(304:CheckSLA)、SLAデータベース29は、SLAマネージャ28に対してサービスを許可し、要求元のSLA情報を渡す(305:SLA OK)。このとき、渡されるSLA情報は、ユーザのSLAの完全なものでなくてもよく、メッセージ(CheckSLA)でSLAマネージャ28によって示されたサービス要求に関した情報のみを含めればよい。要求元のSLAに基づいてサービスが許可された場合には、SLAマネージャ28は、セッション処理を続けるようにホームSIPプロキシ30に通知を行う(306:Srv Req OK)。一方、サービスが許可されない場合には、SLAマネージャ28は、セッション要求を拒絶して、以降の処理を中止する。
次に、サービス要求に応じて、ホームSIPプロキシ30は、さらなる処理を行うために、例えば、サービスを要求されているホームSIPプロキシなどのサービスプラットフォームに対して、SIPメッセージを転送する(307:サービスプラットフォームへのReqの転送)。この処理307でのサービスプラットフォームの処理が成功の場合には、ホームSIPプロキシ30は、SIP183メッセージを受け取る(非特許文献7、8)。端末21からのSDPメッセージにQoS制御能力タグが含まれている場合には、ホームSIPプロキシ30は、SLAマネージャ28に“Start PMSession”メッセージを発行する(308:Start PMSession)。この“Start PMSession”を受けた場合、SLAマネージャ28は、監視セッションを開始することとなる。
また、必要に応じて、SLAマネージャ28は、SLAデータベース29に格納されたユーザのSLAをアップデートする(324:SLA更新)。なお、必要に応じてSLAを更新するメカニズムと同一のものを適用することができることは、当業者にとっては明白である。また、同時に、ホームSIPプロキシ30は、QoS制御能力タグが埋め込まれたSIP183メッセージを、移動先ネットワーク24のSIPプロキシ25に中継する(309:SIP 183(SDP))。この承認メッセージ(SIP183メッセージ)のQoS制御能力タグは、端末21にQoSコントローラモジュールを開始できることを告げるものである。このメッセージを端末21に転送する前に、移動先ネットワーク24のSIPプロキシ25は、ポリシーアテンダント26と共に端末21が移動先ネットワーク24のリソースの使用を許可されるか否かをチェックする(310:Auth req(SDP))。
要求されたサービスが許可される場合には、リソースが利用可能な場合には、許可を示す情報(Authorize Token:オーソライズトークン)が、ポリシーアテンダント26から移動先ネットワーク24のSIPプロキシ25に送られる(311:Ack(Auth token))。オーソライズトークンを受信した後、移動先ネットワーク24のSIPプロキシ25は、端末21に対して、このトークンと共にSIP183メッセージを転送する(312:SIP 183(SDP, Auth Token))。端末21は、このメッセージを受け取った場合には、QoSコントローラ23にこのセッションに関する情報を通知して、QoSコントローラ23の動作が開始される(313:Start QoS Controller)。
ポリシーアテンダント26が、ローカルポリシー、又は、リソースが制限されているという理由によって、サービスを許可することができない場合には、メッセージ311には無効を示す情報が含まれることになる。この無効を示す情報を受信した場合、移動先ネットワーク24のSIPプロキシ25は、SIP183メッセージをユーザに送らず、代わりに、端末21に対して、無効を示す情報と共にSIP488エラーメッセージを送る。端末21が無効を示す情報を受け取ると、端末21は、SIPプロキシ25を介して、セッションを閉じる通るための“BYE”メッセージを開始する。なお、許可に失敗した場合のシナリオにおけるこのメッセージ交換処理は、図3では図示省略している。
端末21がSIP183メッセージを受信した後、端末21は、SIPで制御された通常のサービスセッションを開始する(314:ユーザセッション)。このサービスセッションの間、QoSコントローラ23は、サービスセッションに関するQoSレポートを作り、上記のSIP信号経路を利用して、ホームネットワーク27のSLAマネージャ28にフィードバックを行う。
QoSコントローラ23は、定期的に、サービスセッションに関するQoSレポートを、対応するSIPアプリケーション22に渡す(315:QoS Report)。これを行うため、例えば、“REPORT”というメッセージのために、新しいSIPの方法を定義することができる。SIPアプリケーション22は、“REPORT”メッセージを生成し、そのSDP属性フィールド内に、QoSコントローラ23から取得したQoSレポート情報を挿入する。また、このメッセージに関する宛先アドレスを、ホームネットワーク27のSIPプロキシ30とする。そして、SIPアプリケーション22は、このレポートメッセージを移動先ネットワーク24のSIPプロキシ25に転送し(316:Report(QoS Report))、移動先ネットワーク24のSIPプロキシ25は、メッセージ内の特定の宛先アドレス(ホームSIPプロキシ30)に転送する(317:Report(QoS Report))。なお、移動先ネットワーク24のSIPプロキシ25において、このREPORTの方法がサポートされていない場合には、SIPプロキシ25は、これを“オプション”の方法として取り扱う。
ホームSIPプロキシ30は、この方法の要求を受け取ると、埋め込まれているQoSレポート情報を抽出して、さらなる処理のために、SLAマネージャ28に転送する(318:QoS Report)。SLAマネージャ28は、このQoSレポート情報を受け取った後、ネットワークポリシーやその他の関連情報を用いて、QoS制御管理(QoS Control Management)を行う(319:QoS制御管理)。この管理では、端末21に割り当てられるQoSパラメータの調整、及び/又は、SLAデータベース29での対応するデータの更新も行われる。
例えば、“REPORT”メッセージは、以下のようになる。
/*QoSの報告を運ぶ新しいREPORTの方法*/
REPORT sip:foo.bar.com SIP/2.0
From : sip:
[email protected] /*端末のSIPアドレス*/
To : sip:
[email protected] /*ホームSIPプロキシのアドレス*/
Cseq : 1 REPORT
a = packet_sent:xxxx /*QoSパラメータ情報を運ぶ属性フィールド*/ a = packet_recv:xxxx
a = avg_bandwidth:xxxx
レポートのために含まれ得るその他のQoSパラメータとしては、QoSクラス、送信容量(送信バイト)、受信容量(受信バイト)、廃棄容量(廃棄バイト)、廃棄パケット数、平均帯域幅、最大帯域幅、廃棄インターバル、平均遅延時間、ジッタ、利用情報、送信廃棄閾値などが挙げられる。なお、QoSパラメータはさらに拡張可能であり、上記に限定されるものではない。
QoSの調整が必要な場合には、SLAマネージャ28は、端末21の識別子と共にQoS制御メッセージをホームSIPプロキシ30に送る(320:QoS Control)。このとき、ホームSIPプロキシ30は、QoS制御が目的であることを示す特別なコードを有するSIPメッセージを作成し、受け取ったQoS制御メッセージをその中に入れる。例えば、QOS_ENFORCEメッセージという、別の新しい方法を定義することができる。ホームSIPプロキシ30は、端末21の移動先ネットワーク24のSIPプロキシ25に、このQOS_ENFORCEメッセージを転送する(321:QOS_ENFORCE(QoS Control))。移動先ネットワーク24のSIPプロキシ25は、端末21のSIPアプリケーション22に、このメッセージを即座に転送する(322:QOS_ENFORCE(QoS Control))。
端末21のSIPアプリケーション22は、QoS制御を示すコードを読むと、SIP TBDメッセージから、埋め込まれたQoS制御情報を抽出して、QoSコントローラ23に、サービスセッション情報と共に、抽出されたQoS制御メッセージを送る(323:QoS Control)。そして、QoSコントローラ23は、QoS制御メッセージによって提供された指示に従って動作し、サービスセッションにとってより良いQoSを達成できるよう、端末21の動作を調整する。図12は、本発明の実施の形態における操作_ID(Action_ID)のテンプレートである。以下のように、例えば、上記の指示は“操作_ID”属性フィールドで運ばれる。“操作_ID”属性フィールドには、例えば、図12の表に列挙したものが存在する。
QOS_ENFORCE sip:home.com SIP/2.0
From : sip:
[email protected]
To : sip:
[email protected]
Cseq : 1 QOS_ENFORCE
A = action_id:xxxx /*action attribute*/
A= <Qos Parameter>:yyyy
なお、SLAマネージャ28が同一のメカニズムを使用して、要求されていないQoS制御メッセージを送ることも可能なことは、当業者にとっては明白である。例えば、ネットワーク状態が変化したり、ネットワーク処理が異なったりする場合には、SLAマネージャ28は、端末21のQoS制御パラメータを調整する必要であり、これによって、端末21にQoS制御メッセージを発信することが可能となる。
また、端末21のQoSコントローラ23は、端末21内のアプリケーションを越えて共有される。したがって、アプリケーションが動作している限り、QoSコントローラ23は有効な状態となっている。新しいセッションが、QoSコントローラ23が既に実行していることを検出した場合には、QoSコントローラ23の新しいプロセスは始まらず、すでに存在しているものを用いて、監視、報告、実施が行われる。
図4は、図1で示される端末中心のQoS制御フレームワークのための代替アーキテクチャの一例を示すブロック図である。このアーキテクチャでは、AAA(認証、許可、課金処理)フレームワークが、QoS報告及び制御の実施を確立するために利用される。この図4では、シグナリングと制御に係る要素のみが図示されている。端末41は、シグナリングのために2つの構成要素、QoSコントローラ42及びAAAスタック43を有している。 QoSコントローラ42は、図1で示されるQoSコントローラモジュール11Aであり、端末41でQoSを実施して、端末41から出力されるトラフィックを制御する。また、QoSコントローラ42は、端末41のQoS利用情報を監視して集め、端末41のホームネットワーク46内のSLAマネージャ48にフィードバックする。
また、AAAスタック43は、端末41のAAA(認証、許可、課金処理)手続きを制御するエンティティである。例えば、3Gネットワークでは、EAP-AKA(非特許文献9)を用いることが可能であり、また、IEEE802.11i(非特許文献10)WLANのシステムでは、IEEE802.1x(非特許文献11、12)に鍵の管理を行うエンティティを加えたものを用いることが可能である。AAAスタック43は、標準のネットワークで必要なものであり、したがって、本発明はネットワークに余分な要求を行うものではない。端末41は、移動先ネットワーク44に接続する。移動先ネットワーク44は、端末41からホームネットワーク46内のAAAサーバ47まで、AAAメッセージを中継するための標準のAAA設備、すなわちAAAプロキシ45を提供する。実際には、AAAプロキシ45は、他のネットワークエレメントと共存することが可能であり、例えば、IEEE802.11iシステムでは、AAAプロキシ45は、アクセスポイント内にある認証装置とすることが可能であり、これによって、端末41からのEAPパケットは、Radius/Diameterパケットにカプセル化される。ホームネットワーク46におけるSLAマネージャ48及びSLAデータベース49は、図1で定義されている構成要素15及び18と同一である。
また、図5は、本発明の実施の形態における端末中心のQoS制御を達成するために、図4で導入されているフレームワークを使用する信号シーケンスの一例を示すシーケンスチャートである。端末41が移動先ネットワーク44に接続して、あるサービスに初めてアクセスする場合、移動先ネットワーク44では、端末41のAAAスタック43が、“AAA request”をAAAプロキシ45に送る(501:AAA request(NAI))。この“AAA request”は、端末41の識別情報及びホームドメイン情報を含んでいる。例えば、3Gネットワークでは、この情報は、ネットワークアクセス識別子(NAI)の形式で存在している。NAIの内容は、例えば、“
[email protected]”などが可能である。ここで“terminal1”は識別子であり、“foo.bar.com”はホームドメイン情報である。AAAプロキシ45は、NAI内に記載されているドメイン情報を使用して、要求(AAA Request、以下、AAA要求とも呼ぶ)をユーザのホームネットワーク46のAAAサーバ47に転送する(502:AAA request(NAI))。
メッセージを受信した後、ホームネットワーク46のAAAサーバ47は、AAA要求から、ユーザ識別子とサービス情報とを抽出する。AAAサーバ47は、さらにこの要求をSLAマネージャ48に送り、SLA内のユーザの加入情報に対して、サービスが許可されるかどうかをチェックする(503:ユーザの加入情報をチェック)。もし利用が不可能ならば、SLAマネージャ48は、SLAデータベース49からユーザのSLAを抽出する(504:SLAを要求、505:SLAを取得)。一方、ユーザのSLAに基づき、要求されたサービスが許可されるならば、SLAマネージャ48は、SLAに格納されたネットワークポリシーやSLA内のその他の情報に従って、さらなるサービス構成情報を提供し(506:サービス許可段階、初期のQoSを構成)、さらに、SLAマネージャ48は、AAA要求に埋め込まれたNAIによって、端末41の能力をチェックする。端末41がQoS制御を行うことが可能ならば、疑似サービス“QoS制御”が、実際のサービスと共にデフォルトで要求される。
例えば、NAIがサービスを示すために使用される場合には、
[email protected]という形式も可能である。ここで、“@”のすぐ右の“QoS Control”は、端末41がQoS制御を行うことが可能であることを示している。なお、サービスを特定するためにAAA手続きで採用されるスキームに依存して、その他の指示情報を用いることが可能なことは、当業者にとっては明白である。
SLAマネージャ48がこの“QoS Control”疑似サービスを発見した場合には、端末41のサービス監視を開始して、QoS制御のための接続を設定するパラメータを構成する。この構成は、QoSコントローラ42のためのQoS初期パラメータの設定、QoS制御のためのホームネットワークアドレスの割当て、制御メッセージ用のトンネル構成の管理などを含んでいる。このような特別な設定が、通常のサービス構成に含まれるようにすることも可能であり、この場合には、まとめてAAAサーバ47に送られる(507:Service Auth(QoS Control Setup))。なお、必要ならば、SLAマネージャ48は、同時にSLAデータベース49に格納されたSLAの更新も行う(508:SLA更新)。そして、AAAサーバ47は、“Service Config”メッセージを作成して、その中にすべての設定を埋め込み、移動先ネットワーク44のAAAプロキシ45を介して、それを端末41のAAAスタック43に送る(509:Service Config(QoS Control Setup)、510:Service Config(QoS Control Setup))。
AAAスタック43は、“Service Config”メッセージを受け取った場合には、埋め込まれているサービス情報をすべて抽出して、それらを対応するアプリケーションに渡す。また、同様に、“QoS Control”疑似サービスの構成は、端末41のQoSコントローラ42に渡されて(511:QoS Control Setup)、QoSサービスセッションが開始される。QoSコントローラ42は、端末41でQoS制御を行うため、AAA要求に埋め込まれていた初期のQoS構成を使用する。また、QoSコントローラ42は、ホームネットワーク46のSLAマネージャ48に向かうトンネルをセットアップするために、AAA要求に埋め込まれていたトンネル構成を使用する(512:QoS制御トンネル設定)。このトンネルは、SLAコントローラ42がSLAマネージャ48に対してQoS統計量を報告するために使用され、SLAマネージャ48がQoSコントローラ42に対してQoS実行指示を送るために使用される。
このスキームでは、QoSコントローラ42は、AAAスタック43に対して、通常のアプリケーションのように動作を行う。 QoS設定やトンネル設定は、AAAスタック43にとっては明白である。したがって、たとえ、QoSコントローラ42がその設定にAAAフレームワークを使用しても、標準のAAAスタック43からの変更は全く必要としない。 すなわち、これは、どんな標準ネットワークでも、本発明が、高い適応性を有していることを示すものである。
ユーザセッションが進むと、QoSコントローラ42は、端末41で観測されたサービスを反映するQoS統計量を生成する。QoSコントローラ42は、上記のトンネル設定を使用して、この情報をSLAマネージャ48に報告する(513:QoS報告)。図9は、本発明の実施の形態における端末からSLAマネージャに送られるQoSデータを報告するための報告メッセージ(QoS報告)のフォーマットを示す図である。報告メッセージは、最初にメッセージ_IDフィールド91、続いてメッセージ長フィールド92、さらにペイロードを有している。ペイロードは、属性値ペア情報93からなり、属性には、QoSパラメータ又は情報の属性が含まれている。
QoSパラメータの例としては、QoSクラス、送信容量(送信バイト)、受信容量(受信バイト)、廃棄容量(廃棄バイト)、廃棄パケット、平均帯域幅、最大帯域幅、廃棄インターバル、平均遅延時間、ジッタ、利用情報、送信廃棄閾値などが挙げられる。なお、QoSパラメータはさらに拡張可能であり、上記に限定されるものではない。この例では、固定長の属性値のペアが使用されており、したがって、メッセージ長フィールド92だけが唯一、メッセージ全体に関して必要な情報となる。なお、可変長の属性値のペアを採用している場合には、各ペアは、属性値のペアの長さを示す付加的な長さフィールドを必要とする。
QoSコントローラ42から報告を受け取った後に、SLAマネージャ48は、何らかのQoS管理プロセスを実行して、端末41で何らかの調整が行われる必要があるか否かを決定する。また、必要ならば、SLAデータベース49内のSLAの更新を行う。端末41で何らかの変更が必要な場合には、SLAマネージャ48は、QoS制御トンネル設定512でQoS実行メッセージをQoSコントローラ42に送る(514:QoS実行制御)。図10は、本発明の実施の形態におけるSLAマネージャから端末に送られるQoS実行メッセージのフォーマットを示す図である。QoS実行メッセージは、メッセージ_IDフィールド101、メッセージ長フィールド102、操作_IDフィールド103、QoSパラメータフィールド(属性値ペア情報)104を有している。QoS実行メッセージには、あらかじめ定義されたメッセージテンプレートのセットが存在する。上述の報告メッセージのフォーマットと同様に、QoSパラメータフィールド104は、0個、1個、又は、複数個のQoSデータフィールドであり得る。操作_IDフィールド103及び対応する操作の一例は、図12に示されているものと同様である。
QoS制御トンネル設定512でトンネルがいったん設定されれば、SLAマネージャ48とQoSコントローラ42にとって、そのトンネルは利用可能なものとなる。2つのノードが互いに、同一のサブネットに存在するように通信を行う。SLAマネージャ48のアドレスと対応するポートナンバーとが、“QoS制御”サービスの設定時間中に(QoS制御設定511のときに)、QoSコントローラ42に送信されるようにすることも可能である。端末41のアドレスは、サービス許可段階506の間に、SLAマネージャ48によって割り当てられて、常に利用可能である。
QoS制御のための終端点間の通信では、SLAマネージャ48は、例えば、ポート“ss”のIPアドレス“xxxx”のように、端末41のアドレス及びあらかじめ定められたポートナンバーのみを記す必要があり、一方、端末41のQoSコントローラ42は、例えば、ポート“pp”のIPアドレス“yyyy”のように、SLAマネージャ48のアドレス及びサービス許可段階506で取得したポートナンバーのみを記す必要がある。中継のルートは、トンネルチャンネル内で扱われる。なお、本発明では、絶対的なアドレスを使用する代わりに、どのようなアドレス方法にも適用可能なことは、当業者にとっては明白である。
トンネルチャンネルは、端末41ごとに設定される必要があり、通常は、移動先ネットワーク44におけるサービスで最初に要求される。すなわち、端末41ごとに、疑似サービス“QoS制御”が1つだけ存在する。SLAマネージャ48は、チャンネルの中止を決めることができる。例えば、端末がもはや移動先ネットワーク44に接続していない場合や、サービスセッションがもはや存在しない場合には、SLAマネージャ48は、制御ノード(例えば、GGSN)での設定を削除するために、AAAサーバ47にシグナリングを行うことができる。
また、SLAマネージャ48は、求められていないQoS実行制御メッセージ514をQoSコントローラ42に送ることも可能である。また、システム全体は、報告及び実行/更新の概念に基づいて動作する。図1に示すポリシーアテンダント14及びQoSコントローラ11Aの両方は、SLAマネージャ15に報告を行いながら動作する必要がある。QoSコントローラ11Aは、端末11で観測される状態に関して報告を行い、一方、ポリシーアテンダント14は、ネットワークの状態と条件をSLAマネージャ15に報告する。報告は、定期的又は要請された場合に行われ得る。SLAマネージャ15は、ポリシーアテンダント14又はQoSコントローラ11Aの一方からの報告に基づく調整の必要性を判断した場合に、QoS実行メッセージを発行する。なお、必要に応じて、SLAマネージャ15がポリシーフレームワーク(不図示)をさらに使用して、同時にネットワークを調整できることは、当業者にとっては明白である。
先に説明した2つのシグナリングは、終端点間のQoS制御を達成するため、端末11からホームネットワーク16又はその逆の方向にQoSデータを渡す経路を設定する必要があるシグナリングのメカニズムである。
端末11はいったんSLAマネージャ15からQoS実行指示を受信すると、端末11のQoSコントローラ11Aは、このQoS実行指示に応じて、現在の状態をQoS実行指示されたものに置き換える。図6は、本発明の実施の形態におけるQoSコントローラのQoS監視の一例を示す図である。これは、ハイレベルメッセージシーケンス(非特許文献13)を使用してモデル化されている。端末11のQoSコントローラ11Aが起動すると、あるプリセットの初期値又は初期構成状態から取得される初期値が構成される(601:初期構成の設定)。これらの値は、動作データの監視を行うために使用される異なるQoSメトリックを含んでいる。端末11のQoSコントローラ11Aは起動すると、動作を開始して、利用データの収集及び監視を行う。さらに、収集したデータをフィードバックし、周知のフォーマットに詰めて、統合を行っているセントラルサーバに送る報告を行う(602:動作データの監視及び報告)。この場合、セントラルサーバは、例えば、SLAマネージャ15である。動作の監視の間、セントラルサーバは動作データとその閾値との比較を行い、違反が起こる(603:閾値違反が起こる)と、この違反を処理するために必要な修正を実行する(604:違反の処理)。
ここで行われる修正動作は、伝送帯域幅が閾値を超えている場合には、送信パケットの遅延、パケットの完全な廃棄及び/又はパケットの再スケジューリング、あるいは、セッションの完全な終了である。したがって、このようにして、伝送帯域幅を制御することが可能となる。パケットを受ける場合には、入力パケットの要求を最小化して、受信帯域幅を制御し、さらに、すべての入力パケットの帯域幅要求を抑えることができる。また、ネットワークの状態が変化する場合には、ポリシーサーバ(セントラルサーバ)は、SLAマネージャ15にこれらの変化を通知する。そして、SLAマネージャ15はポリシーの変更に関する決定を行う。これは、更新後の新しい閾値でQoSを管理するため、ポリシーサーバのルールエンジンの更新、及び/又は、影響を受ける端末11のQoSコントローラの構成の更新を含むものである。影響を受ける端末11の構成の更新では、上記の影響を受ける端末11に対して、実行データが渡される。上記の影響を受ける端末11は、実行データを受信して(605:実行データの受信)、このデータの要求に基づいて、必要な更新又は変更を行う(606:要求された動作を行う)。そして、監視処理が、更新後の新たな値に基づいて再開される。
図7は、本発明の実施の形態におけるSLAマネージャが監視しているセッションをモデル化した図である。動作監視セッションが開始した場合、SLAマネージャ15は監視のために、SLAデータベース18から必要なSLA情報と現在のルールを読み込む(701:ルールの読み込み)。SLAマネージャ15は、定期的に、端末11とポリシーサーバのステータスに関する報告を受け取る(702:ネットワーク及び端末の監視)。なお、例えば、SLAマネージャ15に積極的に送信したり、SLAマネージャ15からの要求に応えたりすることによって、SLAマネージャ15が非周期的な方法で報告を受け取ることも可能である。ステータスはSLA情報と比較される。もし、警告又は違反が検出された場合(703:違反の検出)には、SLAマネージャ15は、違反の性質とネットワーク及び端末11の両方の状態に依存して、行うべき操作を決定する(704:輻輳回避処理、新しいルールの実行)。例えば、SLAマネージャ15は、新しいルールを実行したり実行データを決めたりして、周知のフォーマットにその情報を詰めて、新しいルールでポリシーサーバを更新する実行メカニズムを行うか、又は、端末11に対して、その構成を変更するよう要求する。
また、図11は本発明の実施の形態における端末のQoSコントローラのためのアーキテクチャを示す図である。このQoSコントローラ 1101は、次に示すサブコンポーネントを有している。監視モジュール1103は、計測モジュール1102を有し、動作監視データを収集して、さらに、閾値違反を確認する。また、実行モジュール1107は、トラフィック整理を行う分類装置1104、マーカ1105、パケット遅延/パケット廃棄装置1106を有している。また、通信モジュール1110は、計測モジュール1102からのすべての動作監視データを集めて格納する利用情報及びトラフィックプロフィール1108と、SLAマネージャと通信を行う報告モジュール1109を有している。なお、この通信モジュール1110は、実行データを受信しているときには、修正を実行するために実行モジュールとしても機能する。
データパケット1112は、端末から出力される前に、その優先順位に従って分類装置1104によって分類される必要がある。各アプリケーションには、事前に定義された優先順位があり、分類装置1104による分類後、データパケット1112は、マーカ1105に送られて、“in_profile”、“out_profile”のようにマークされる。計測モジュール1102は、利用情報及びトラフィックプロフィール1108に対してチェックを行い、端末の現在の状態をマーカ1105に通知する。そして、マーカ1105は、現在の状態に従って“in_profile”、“out_profile”のようにパケットをマークする。
このマークプロセスの後に、パケット遅延/パケット廃棄装置1106は、パケットの発信を遅らせるか、又は、パケット全体を廃棄するかを決定する。さらに、パケット遅延/パケット廃棄装置1106は、パケットの遅延又は廃棄に関わらず、計測モジュール1102を通じて現在の端末をチェックする。“out_profile”がマークされているパケットは、“in_profile”がマークされているパケットよりも高い確率で廃棄処理される。出力データパケット1113は実際に出力されるパケットである。報告モジュール1109は、定期的にSLAマネージャ1111に報告を行い、SLAマネージャ1111は、報告モジュール1109を通じて端末にQoS実行メッセージを送り返す。何らかの実行動作が要求された場合には、QoS実行メッセージが、関連する実行モジュール1107で実行される。
また、図8は、本発明の実施の形態におけるQoSコントローラがQoS監視及びトラフィック制御を行う方法を示す図である。輻輳が起こると、SLAマネージャ1111は、端末のQoSコントローラ1101にQoS実行データを渡して、動作を変更させる。この例では、データパケットは分類装置1104によって4つの異なった優先順位A、B、C、Dに分類される。Aは最も高い優先度、Dは最も低い優先度を示している。また、端末に割り当てられる伝送帯域幅が、修正を実行する決定因子として使用される。さらに、修正を実行するために、その他のパラメータを決定因子に用いることも可能である。
QoSコントローラ1101が、その帯域幅を下げるよう指示するQoS実行データを受け取る場合には、QoSコントローラ1101は、現在の値から、受信した新しい値に変更して、新しい保証値を設定する(801:実行データの受信、新しい保証値の設定)。また、輻輳が起こる場合に関しては、SLAマネージャ1111は、割り当てられた伝送帯域幅を低い優先順位の端末と同一のレベルまで落とし、その影響が出る端末に対して、必要な情報を含む実行データを送る。端末は、この実行データを受信すると、更新を行う前の値と実行データとの比較を行う。また、“total allocated bandwidth”(総割当帯域幅)の測定データに関しては、新しい値が既存の値以下の場合には、修正を実行する。
この例では、タイプAに分類されるパケットに対して、最高の優先度が与えられるが、もし、タイプAのアプリケーションに関して、総帯域幅の保証値が、要求されている帯域幅を十分サポートできない場合(802:クラスAの帯域幅>新しい保証値)には、現在行っているクラスAのセッションを終了する (803:クラスAのセッションを終了)。一方、総帯域幅の保証値が、要求されている帯域幅をサポートできる場合には、タイプAのパケットに要求通りの帯域幅がすべて与えられることとなる(804:クラスAのパケットに完全な帯域幅を割り当てる)。タイプAのパケットに対してすべて割当てを行った後、残りの帯域幅をタイプB、C、Dに、例えば、7:2:1の比率で割り当てる(805:クラスBに残りの帯域幅の70%を割り当てる、806:クラスCに残りの帯域幅の20%、クラスDに残りの帯域幅の10%を割り当てる)。なお、クラスB、C、Dでは、送信レート、パケット廃棄、パケット送信の遅延などによって、帯域幅の調節が行われる。このようにして割り当てられた帯域幅やクラスなど数に従って、異なったクラスごとにパケットがキューイングされ、また、各タイプの閾値が計算される(807:新しく割り当てられた帯域幅に従って、閾値を再設定)。また、閾値に達するかどうかに従って、パケットには“in_profile”、“out_profile”がマークされる。例えば、ビデオエンコーダアプリケーションの場合に、帯域幅の利用がタイプB用の閾値を超えるなら、QoSコントローラがビデオエンコーダに接続して、もっと低いビットレートでエンコードを行うよう指示することも可能である。
また、上述のアプリケーションへのインタフェースが全く存在せず、接続できない場合には、QoSコントローラは、閾値に適合するように選択的にパケットを廃棄すると決定することも可能である。入力パケットは“out_profile”として選択的にマークされて、“out_profile”でマークされたパケットが、まず最初に廃棄される。タイプC及びDに関しては、タイプCのパケットが、タイプDのパケットより頻繁にキューイングされ、タイプDのパケットは、割り当てられた比率に基づいて最後にキューイングされる。なお、上記の比率は、あくまでも一例であり、異なるクラスに帯域幅を割り当てることによって、あらゆる比率が可能となる。また、分類のタイプは、いかなる分類数でも可能であり、タイプA、B、C、Dに制限されるものではない。さらに、QoSコントローラは、例えば、RED(非特許文献14)やRIO(非特許文献15)などの、他のスケジューリング手段やキューイングのメカニズムQoSコントローラがスケジューリングの他の手段を使用することができる。