JP2004515179A - 分散されたネットワークアクセスシステムのためのプログラム可能なアクセス装置 - Google Patents
分散されたネットワークアクセスシステムのためのプログラム可能なアクセス装置 Download PDFInfo
- Publication number
- JP2004515179A JP2004515179A JP2002546944A JP2002546944A JP2004515179A JP 2004515179 A JP2004515179 A JP 2004515179A JP 2002546944 A JP2002546944 A JP 2002546944A JP 2002546944 A JP2002546944 A JP 2002546944A JP 2004515179 A JP2004515179 A JP 2004515179A
- Authority
- JP
- Japan
- Prior art keywords
- access device
- message
- pad
- programmable access
- packets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5022—Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5045—Making service definitions prior to deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/508—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
- H04L41/5087—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to voice services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Selective Calling Equipment (AREA)
- Computer And Data Communications (AREA)
Abstract
ネットワークアクセスシステムにおいて使用されるプログラム可能なアクセス装置は、パケットがネットワークと通信するための第一および第二ネットワークインターフェイスと、第一および第二ネットワークインターフェイス間で通信されるパケットの経路を選択するために使用する転送テーブルと、パケットヘッダーフィルタとを含む。パケットヘッダーフィルタは、ポリシーに基づくサービスが実行される、第一および第二ネットワークインターフェイスの一方で受信したメッセージを特定し、特定されたメッセージをメッセージインターフェイスを介して処理のために外部プロセッサに渡す。好ましい実施例において、パケットヘッダーフィルタは、レイヤ3よりも高いプロトコルレイヤに関連するプロトコル情報に基づいてサービス処理のためのパケットのフィルタ処理が可能である。好ましい実施例においては、プログラム可能なアクセス装置は、セッション活性レベルのようなイベントを外部プロセッサに報告する使用モニタ、プログラムされたトラフィックパラメータを参照してパケットを取り締まるポリサおよびサービスクラスの複数の質をサポートするために発信パケットの送信を予定するスケジューラを含んでもよい。
Description
【0001】
【発明の背景】
【0002】
【技術分野】
この発明は一般に通信ネットワークに関し、特に、IPを中心にした通信ネットワークに関する。より特定的には、この発明は分散され、分離されたルーティング(routing)、信号送信、サービス制御、フィルタ処理、ポリシー制御およびIP転送からの他の機能を有するネットワークアクセスシステムを有するIPに基づく通信ネットワークに関する。
【0003】
【関連技術の説明】
インターネットは、起点と1またはそれ以上の目的地の間でデータパケットが通信するために、全てがTCP/IP(Transport Control Protocol/Internet Protocol)の組を用いている、異質な通信ネットワーク、関連するゲートウエイ、ブリッジおよびルータの世界的規模の収集物であると一般に定義される。当業者によく知られているように、TCP/IPプロトコルの組は国際標準化機関の開放型システム間結合(ISO/OSI)の参照モデルのレイヤ3および4(ネットワーク層およびトランスポートレイヤ層)に対応する。OSI参照レベルは通信プロトコルを明確にするための便利なフレームワークを提供している。ISO/OSI参照モデルはさらに、ネットワークおよびトランスポート層の下に物理層およびリンク層(それぞれレイヤ1および2)を、またネットワークおよびトランスポート層の上にセッション層、プレゼンテーション層およびアプリケーション層(それぞれレイヤ5から7)を含む。
【0004】
図1Aは顧客がインターネットにアクセスすることができる、インターネットサービスプロバイダ(ISP)ネットワーク10の都市レベルの一覧を例示する。左手側から始まって、多くの顧客のローカルエリアネットワーク(LAN)14が各種の都市アクセスネットワーク16を介してISPネットワーク10にインターフェイスされている。都市規模のアクセスネットワーク16は多数のリングを有する任意の多くのネットワーク技術を採用している。例えば、時分割多重方式(TDM)、非同時転送モード(ATM)およびイーサネットである。さらに、大きな都市規模のエリアにおいて典型的であるが、都市規模のアクセスネットワーク16には多数のリングを有する多数の階層のレベルがあり、多数のリングは各顧客を集合サイトおよび多数の最も低いレベルの集合サイトに接続して、高いレベルの集合サイトに供給する。典型的には、都市エリアにおいて集合ルータ12が配置された集合サイトはほんの少数かもしれない。図1Aはただひとつのそのような集合サイト17を示している。LAN14からのすべてのトラフィックはこれらの集合ネットワークを介してこの集合サイト17へ逆送され、この集合サイト17では、集合ルータ12が取り締まり、マーク付けおよび許可制御のようなポリシー主導処理を適用している。集合ルータはそれからトラフィックを別の顧客LAN14に戻すかまたはあるより遠い目的地へ向けてコア20を通って送信するためにコアルータ18に経路を選択する。
【0005】
図1Aに示すように、ルータデザインにおける最新技術がだいたいにおいてネットワークデザインに影響を与える。というのは、ルータは高価であり、高度に集合したトラフィックフロー状態で動作されなければならないからである。そのようなネットワークの設計における主な考慮は、ルーティングプロトコルが効率的に拡張するようにルータの数を最小にする点に払われる。これは、ルーティング、データベース格納およびポリシーの執行等の多くの機能がこれらのルータに集中されることを意味する。
【0006】
先行技術において、ルータの構造は一般に融通がきかず、独自性が強いものであった。結局基本的なパケットルーティングに加えてサービスプロバイダが提供できるデータサービスの範囲はルータ供給メーカによって提供された制御ソフトウエアによって限定される。加えて、ルータのパケット処理能力はもともとインストールされた処理ハードウエアによって一般に限定され、ルータ全体を交換することなく拡張または拡大されることはなかった。従来のルータの融通のきかなさおよび独自性の強さがこの発明によって手当てされる多くの問題を提起している。
【0007】
第一に、ルータは伝統的にすべてのメッセージタイプのためにすべてのサービスを提供する単一のコントローラを有しているため、エッジルータコントローラは非常に複雑になる傾向があり、現存のサービスに対して新しいサービスを加えたり修正したりすることが困難でかつ高価である。その結果、新しいルータに基づくサービスを市場に出すまでの時間が長くかかり、かつサービスプロバイダの要求に応答する供給メーカに依存して、メーカの独自性の強いルータ構造内で新しいサービスを実行するのが常であった。
【0008】
第二に、従来の融通のきかないルータ構造は拡張性が十分でなく、サービスプロバイダに対して重要な問題を提起していた。特に、インターネットトラフィックの驚異的な成長に照らして重要な問題を提起していた。その結果、配備されたルータの処理能力は増加するトラフィックに対応して容易に拡張できない。代わりに、サービスプロバイダは増加するトラフィックの要求に合わせるために追加のルータを購入したり、ルータを交換しなければならなかった。
【0009】
第三に、従来の融通の利かないルータ設計は柔軟性および拡張性に限界があった。例えば、この発明はインターネットトラフィックの急速な成長にかんがみて、IPベースのサービスに対してアクセス能力をダイナミックに提供し、改造しおよび/またはアクセス能力を再割り当てすることが望ましいと認識する。アクセス能力は必然的に限定され、追加のアクセス能力を提供することはネットワークの大きなコスト要素であるため、インテリジェントな許可制御ポリシーの執行および質を変えたサービスの提供は利用可能なアクセス能力の効率のよい使用のためにはきわめて重要である。しかしながら、従来のエッジルータはポリシー制御を執行しながらトラフィック形式の幅広い種類の分類ができず、能力に対するダイナミックな要求に答えることもできず、この機能性は現在採用されている融通のきかないエッジルータ内に組み込むことが困難である。従って、この発明は商品化されたハードウエアの下で、上記および追加のポリシー制御、ネットワークモニタ、診断およびセキュリテイサービスを提供し、一方でこれらのサービスを個々の顧客およびサービスプロバイダのニーズに合うように調整することを許容することが望ましいということを認識する。
【0010】
第四に、ルータ構造およびサービスの独自性の強さのために、もしサービスプロバイダが通信ネットワークにおいて複数の供給メーカからルータを配備すると、異なるルータ供給者によって実行される独自性の強いサービスは必ずしも相互間で動作しない。その結果、サービスプロバイダは一つの供給者からルータおよびスイッチを購入することができず、サービス制御ソフトウエアを他の供給者から購入する。さらに、サービスプロバイダは既存のベースネットワーク能力を利用して付加価値データサービスを提供するために大規模なプロバイダに対してその通信ネットワークを提供できない。
【0011】
先行技術における、上記および追加の欠点にかんがみて、この発明は従来の融通のきかないルータ構造の限界に対処しかつ克服する新しいネットワークアクセスを導入することが望ましいということを認識する。
【0012】
【発明の要約】
この発明はプログラム可能なアクセス装置を含む分散されたネットワークアクセスシステム構造を導入する。
【0013】
プログラム可能なアクセス装置はパケットがネットワークと通信するための第一および第二のネットワークインターフェイスと、第一および第二のネットワークインターフェイス間で通信されるパケットのルーティングに使用する転送テーブルとパケットヘッダーフィルタとを含む。パケットヘッダーフィルタは規格に基づいたサービスが実行される第一および第二ネットワークインターフェイスの一つで受け取ったメッセージを特定し、特定されたメッセージをメッセージインターフェイスを介して処理のために外部プロセッサに渡す。好ましい実施例では、パケットヘッダーフィルタはレイヤ(layer)3よりも高いプロトコルレイヤに関連するプロトコル情報に基づいてサービス処理のためのパケットをフィルタ処理することができる。好ましい実施例では、プログラム可能なアクセス装置は、セッション活動レベルのようなイベントを外部プロセッサに報告する使用モニタと、プログラムされたトラフィックパラメータを参照することによってパケットを取り締まるポリサ(policer)と、サービスクラスの複数の質をサポートするために、発信パケットの送信を予定するスケジューラとを含んでもよい。
【0014】
プログラム可能なアクセス装置に加えて、分散されたネットワークアクセスシステム構造は、好ましくは外部プロセッサとアクセスルータとを含む。このように、この発明によれば、従来の融通のきかない、独自性の強いエッジルータは3つの論理モジュール、すなわちプログラム可能なアクセス装置、外部プロセッサおよびアクセスルータの間で、(追加の機能性に加えて)従来のエッジルータの機能性を割り当てる、分散されたネットワークアクセスシステムと置き換えられる。この発明の好ましい実施例によれば、アクセスネットワークの入出力ポート間のパケットの基本的なルーティングはアクセスルータのよって実行される。しかしながら、転送および、マーク付け(marking)、取り締まり(policing)、モニタ(monitoring)、シェイピング(shaping)およびフィルタ処理(filtering)のような一般のトラフィック調整機能は、プログラム可能なアクセス装置において実行され、メッセージ解釈、信号送信、許可制御およびポリシー実施のようなサービス機能は外部プロセッサにおいて実行される。以下に詳細を示すように、この機能性の分散は、改良された拡張性、柔軟性、拡大性、相互操作性、セキュリテイおよびサービス提供を含む多くの利点を結果としてもたらす。
【0015】
この発明の追加の目的、特徴、利点は以下の詳細な記載から明らかになるであろう。
【0016】
【好ましい実施例の詳細な説明】
発明の特徴であると考えられる新規な特徴は添付のクレームにおいて述べられる。しかしながら、発明自身、および使用の好ましいモード、さらなる目的およびその利点は、添付された図面と共に読まれたとき例示的な実施例の以下の詳細な記述を参照して最もよく理解されるであろう。
【0017】
分散されたネットワークアクセスシステム構造
図面を再び参照して、特に図2を参照して、この発明に従う分散されたネットワークアクセスシステム31を有する通信ネットワーク30の一部の高レベルのブロック図が示されている。例示されているように、通信ネットワーク30はアクセスライン34によって(顧客ルータ32によってその一つが表わされる)多くの顧客の装置に接続されてもよい。図1にあるように、アクセスライン34は、イーサネット、SONET、ATMおよびフレームリレー(frame relay)のような一般に使用される転送ネットワークの多くの任意のものを使用してもよく、例示されていない集合体ハードウエアをさらに含んでもよい。
【0018】
従来のネットワークと同様に、通信ネットワーク30は1またはそれ以上のコアルータ36に接続された1またはそれ以上のコア通信リンク38(例えばトランクリンク)を含む。しかしながら、図1に例示されているような従来の通信ネットワークと対照的に、顧客ルータ32は融通のきかない、独自性の強いエッジルータを介して通信ネットワーク30にインターフェイスを介して接続していない。代わりに、顧客ルータ32のような顧客装置は、プログラム可能なアクセス装置(PAD)40、外部プロセッサ42およびアクセスルータ44からなる、3つの論理モジュール間で(追加の機能性のみならず)、従来のエッジルータの機能を分散するネットワークアクセスシステム31を介し、通信ネットワーク30にインターフェイスを介して接続されている。この発明の好ましい実施例によれば、アクセスネットワークの入出力ポート間のパケットの基本的なルーティングは外部ゲートウエイプロトコル(Exterior Gateway Protocol)(EGP)および内部ゲートウエイプロトコル(Interior Gateway Protocol)(IGP)ルーティングテーブル52および54によって決定され、転送テーブル50を参照することによってアクセスルータ44によって実行される。しかしながら、転送および、マーク付け、取り締まり、モニタ、シェイピングおよびフィルタ処理のような一般的トラフィック調整機能は、PAD40によって実行され、メッセージ解釈、信号送信、許可制御および取り締まり実施のようなサービス機能は外部プロセッサ42によって実行される。この機能の分散が与えられると、着信および発信パケットは、PAD40、アクセスルータ44およびコアルータ36(および、ATMまたはMPLSスイッチ60のような選択的に追加されるアクセスネットワークのスイッチ)を介してコア通信リンク38と顧客ルータ32との間で典型的に通信が行われる。しかしながら、もし、PAD40のフィルタ処理機能が追加のサービスを要求しているパケットの流れを検出したとき、PAD40は適切なメッセージをメッセージ報告およびコントロールインターフェイス(Message Reporting, and Control Interface)(MCRI)58を介してサービス処理のために、外部プロセッサ42に送り、これはPAD40と外部プロセッサ42上でアプリケーションプログラミングインターフェイス(Application Programming Interface)(API)を介してアクセスされうる。アクセスルータ44、PAD40および外部プロセッサ42間の分散機能性はこのようにして、サービスプロバイダ(または第三者)に、PAD40の転送動作やアクセスルータ44のルーティング動作または機能性に影響を与えることなく、既存のサービスを拡張および修正し、新しいサービスを創造し、または外部プロセッサ42により大きな処理能力を加える自由を提供する。
【0019】
PAD40および外部プロセッサ42のための所望の機能性を実行するために、サービスプロバイダ(または顧客または第三者)は1またはそれ以上のポリシーサーバ48(またポリシー決定点(PDP)として呼ばれる)のポリシーデータベース46内にポリシー規則を定義することができる。ポリシーサーバ48はそれからポリシーデータベース46内に格納されたポリシー規則を参照して、PAD40および外部プロセッサ42の機能性および動作を制御するポリシー決定を行う。ポリシーサーバ48は外部プロセッサ42および/またはPAD40のためのポリシー決定および関連した設定パラメータをサービスポリシーインターフェイス(Service Policy Interface)(SPI)56を介して外部プロセッサ42に連絡する。サービスポリシーインターフェイス(SPI)56は例えばポリシーサーバ48および外部プロセッサ42上のAPIを介してアクセスされうる。SPI56を介した通信は共通オープンポリシーサービス(Common Open Policy Service)(COPS)およびライトウエイトディレクトリアクセスプロトコル(Lightweight Directory Access Protocol)(LDAP)を含む多くのポリシー問い合わせプロトコルの任意のものを使用できる。これらはそれぞれインターネットエンジニアリングタスクフォース(Internet Engineering Task Force)(IETF)RFCs2748および2251によって定義されており、ここに参照により引用する。外部プロセッサ42はもしあれば、PAD40のための設定パラメータをMCRI58を介してPAD40に伝達する。
【0020】
以下にさらに述べるように、ネットワークアクセスシステム31は、サービスプロバイダ(または第三者であっても)に、機能性をサポートするためにサービスコントローラを開発し、外部プロセッサ42にサービスコントローラをインストールすることによって外部プロセッサ42に追加の機能性を持たせることを許可する。追加の機能性はNMS(Network Management System)(ネットワーク管理システム)72を使用してネットワークアクセスシステム31で実行されうる。ネットワーク管理システムははOSS(Operation and Support System)(オペレーションおよびサポートシステム)とも呼ばれる。NMS72はインターフェイス73−77を介してネットワークアクセスシステム31の要素の各々をモニタし、制御し、アラームを報告しかつ設定する(例えばIPアドレスを割り当てる)。NMS72は、例えば、外部プロセッサ42におけるサービスコントローラからのメッセージに応答して、適切な顧客に対するサービスコストを割り当てる、請求書作成および経理装置を好ましくは含む。
【0021】
図2にさらに例示するように、この発明のネットワークアクセスシステム31は、ネットワークスイッチの配置および実行において柔軟性を許容する。例えば、ATMまたはMPLS(Multi−Protocol Label Switching)(マルチプロトコルラベルスイッチング)ネットワークは、1またはそれ以上のPAD40をATMまたはMPLSスイッチ60を介して、アクセスルータ44のポートに接続するために使用され、それによってアクセスルータ44とは別に機能ブロック62および64の信号送信および取り締まりの実行が許容される。しかしながら、もしアクセスルータ44によって信号送信が実行されたなら、スイッチ60は除去されうる。スイッチ60はアクセスルータ44とコアルータ36集合スイッチとの間に代案として置かれうる。さらに、アクセスルータ44は大きなPAD40を制御するルーティングソフトウエアを実行する外部プロセッサ42によって実現されてもよい。
【0022】
プログラム可能なアクセスデバイス(PAD)
図3を参照して、この発明に従うPAD40の模範的な実施例を含む論理要素のハイレベルブロック図が例示されている。上記したように、PAD40はプログラム可能なアクセス装置であって、マーキング、取り締まり、モニタリング、および受信および発信パケットのシェイピング(shaping)の任意の所望の組み合わせを実行する、他のトラフィック調整機能モジュールと共に、要求された転送およびパケット分類機能を含む。典型的な実施例においては、PAD40は例示されたモジュールの機能性を提供するために協同するソフトウエアと従来のルータの組み合わせとして実行される。(図3において、点線の例示は選択的な機能モジュールを示すために使用される)。
【0023】
一般的に言って、PAD40の機能モジュールは着信(例えば顧客ルータ32から)および発信(例えば顧客ルータ32へ)トラフィック経路において論理的に配置される。着信経路は、パケットヘッダーフィルタ80と、マーカー/ポリサ82とモニタ84と、転送テーブル86および出力バッファおよびスケジューラ88を含む。出力経路は同様にパケットヘッダーフィルタ90と、転送テーブル86と、モニタ92と、マーカー/シェイパ(marker/shaper)94と、出力バッファおよびスケジューラ96とを含む。これらの機能モジュールのすべての機能はMCRI58を介して外部プロセッサ42によって独立して設定されるかまたはプログラムされうる。
【0024】
PAD40の外部インターフェイスで顧客ルータ34から受け取った着信パケットは、パケットヘッダーフィルタ80によってまず処理される。パケットヘッダーフィルタ80はソース(source)アドレス(SA)、目的地(Destination)アドレス(DA)、サービスのタイプ(TOS)、ディフサーブコードポイント(Diffserv Codepoint)(DSCP)、ソースポイント(SP)、目的地ポート(DP)、のプロトコルタイプの任意の一つまたは組み合わせを使用して、各種メッセージタイプとパケットの他のフィールド(例えば、SYN、ACK、RSTおよびFIN TCPフラグのようなレイヤ4およびより高いフィールド)とを区別する。パケットヘッダーフィルタ80はパケットの他のフィールドにおいてフィルタ処理するように設定される。重要なことは、レイヤ3情報でフィルタ処理するのに加えて、パケットヘッダーフィルタ80はより高いレイヤ(すなわちレイヤ4−7)メッセージタイプ、または特定のフィールドであるかを特定する能力を有し、これらのメッセージを設定されたフィルタパラメータに基づいて外部プロセッサ42から/へ転送する。このように、そのフィルタ設定および着信パケットのフィールドに基づいて、パケットヘッダーフィルタ80はパケットをメッセージインターフェイス100を介して外部プロセッサ42へ、または特定のマーカー/ポリサ82へ導く。メッセージインターフェイス100は外部プロセッサ42によって特定されたパケットをパケットヘッダーフィルタ80および90のいずれかに注入してもよいということに注意のこと。
【0025】
パケットヘッダーフィルタ80からのパケットの流れの受信に応答して、マーカー/ポリサ82は、パケットの流れが制御インターフェイス104によって確立されたトラフィックパラメータに適合しているかどうかを決定するために、1またはそれ以上のトークンまたはもれやすいパケットアルゴリスムを適用することによってパケットの流れを取り締まる。取り締まり機能の結果、マーカー/ポリサ82は適合しないパケットを捨て、適合しないパケットにマークを付け(例えばより高いまたはより低い優先度で持って)、および/またはその設定に応じて、不適合なパケットをカウントしてもよい。マーク付けが要求されるならば、マーカー/ポリサ82は、特定のパケットの流れのために制御インターフェイス104によって設定されたように、IPパケットヘッダ、および/または3ビットMPLS実験フィールドおよび/または20ビットMPLSラベルフィールドおよび/または他のフィールドの区別されたサービス(Diffserve)/TOSバイトにビットを設定してもよい。
【0026】
着信経路内において、異なる機能を有する1またはそれ以上のモニタ84が選択的に含まれてもよい。例えば、これらのモニタ84は、異なるレイヤ2、レイヤ3、レイヤ4およびより高いレイヤのトラフィックタイプ(例えばサービスレベルアグリーメント(Service Level Agreement)(SLA)をモニタするために)のための、統計を追跡する使用モニタを組んでもよい。モニタ84は報告インターフェイス102およびMCRI58を介して外部プロセッサ42にメモリダンプや他の関連した情報をセーブおよび報告することによって、標準に適合することを実証しかつコードデバッグおよび障害診断を援助する障害/トラブルシューティング/デバッキングモニタをまた含んでもよい。報告メッセージを調整するために、しきい値および他の基準を報告イベントを実施するために設定してもよい。モニタ84によって送られる報告メッセージは特定の規格に対して使用情報を要約し、高い優先度を有するトラフィックの流れの発生を報告し、帯域外トラフィックの大きな量に対して外部プロセッサ42に警告を発し、モニタされた流れの不活性を報告等をしてもよい。
【0027】
パケットヘッダーフィルタ80(および選択的にマーカー/ポリサ82およびモニタ84)によって処理された後、着信パケットは転送テーブル86によって処理される。転送テーブル86は各転送経路のための入力を維持し、各転送経路は、DA、SA、TOS、PT、SP、DP、着信ポートおよび、PAD40がアクセスネットワークを介してアクセスルータ44へパケットを転送する、対応する出力ポートのような、パケットフロー属性によって表わされる。これらの転送テーブル入力を利用して、転送テーブル86はパケットを適切な出力ポートに転送し、パケットを出力バッファおよびスケジューラ88に渡す。
【0028】
出力バッファおよびスケジューラ88は、通信ネットワーク30を介して送信する準備のできたパケットをバッファし、そのようなパケットの送信を予定する。出力バッファおよびスケジューラ88内でのバッファは単一のバッファまたは好ましくは複数のバッファを含むことができ、複数のQoS(Quality of Service)クラス、または各個々のフローに対するQoSさえもサポートするよう好ましくは設定される。例えば、バッファスペースの割合または固定された量は、トラフィックの一般的クラスまたはDA、SA、TOS、PT、SPおよび/またはDPによって分類される特定のトラフィックの流れの役に立つ待ち行列に割り当てられる。その後、パケットスケジューラは加重されたラウンドロビン(round robin)および/または他のアルゴリスムを、異なるトラフィックフローを多重化した複数の待ち行列に適応する。バッファリングおよびスケジューリング機構の組み合わせはパケットをPAD40を介して送信するために、待ち行列の遅れの上で限度を設けることができ、このようにして、選択されたトラフィックフローに対してQoSジッターパラメータのための境界値を保証する。バッファおよびスケジューラ88は、通信を最適化するために、CBQ(Class−Based Queuing)(クラスに基づく待ち行列)、WFQ(Weighted Fair Queuing)(加重された公平行列)、WRR(Weighted Round Robin)(加重されたラウンドロビン)または他のリンクを共有するアルゴリスムを適用することができる。
【0029】
PAD40を介した発信経路は、マーカー/ポリサ82の代わりにマーカー/シェイパ94を含む点を除いて、着信経路と似ている。当業者にとって理解されるように、マーカー/シェイパ94は、発信パケットフローの遅延、ジッタおよび紛失を制御するために、出力バッファおよびスケジューラ96内で個々のフローのための異なるQoSクラスに役立つ各種待ち行列のために、不適合なパケットを廃棄し、適切な出力バッファへのマークされたパケットを送信し、または単に不適合なパケットを数える。
【0030】
この発明に従うPAD40はトラフィック管理およびポリシー制御を行うためにネットワークにおいて多くの位置に配置される。例えば、PAD40は顧客装置を局地的に配置された外部プロセッサ42によって制御されるプロバイダのネットワークに接続する、顧客アクセスネットワーク(例えば、ファイバ、xDSL、ケーブルモデム、WAP(無線アクセスプロトコル)など)に配置されうる。代わりに、PAD40は顧客のサイトと専用回線、FR、ATM、MPLSまたはイーサネットアクセスネットワークで接続されたサービスプロバイダのポイントオブプレゼンス(POP)に配置されうる。この発明に従うPAD40はプロバイダのPOPまたは顧客のサイトにあるサーバファーム(server farm)に対面してPAD40に配置されうる。そのようなPAD40の分散されたネットワークがアクセスルータ44にパケットを転送する方法は制御インターフェイス104を用いて外部プロセッサ42によって転送テーブル86に設定される。
【0031】
外部プロセッサ
図4を参照して、この発明に従う外部プロセッサ42の好ましい実施例を含む論理要素がハイレベルなブロック図で例示されている。外部プロセッサ42はソフトウエアおよびハードウエアの両方またはその一方を用いて実現され、ハードウエアは汎用のコンピュータハードウエアまたは特定目的のハードウエアを含みうる。PAD40をハードウエア上で実行する外部プロセッサ42のソフトウエアのみでの実施も可能ではあるが、外部プロセッサ42は、追加のおよび/またはより高い性能の外部プロセッサハードウエアによって容易に拡張される外部プロセッサ42によって実行されるサービス処理を許容するためにスタンドアロンのハードウエアで好ましくは実施される。PAD40によって実行される転送機能からの外部プロセッサ42を分離したため、PAD40の転送性能を悪化させることなく、アクセストラフィックパターンに応答して外部プロセッサ42内でリソース(resource)の処理をダイナミックに割り当てることが可能となる。さらに、図4に示すように、PAD40から分離して外部プロセッサ42を実行することによって、外部プロセッサ42は複数のPAD40aおよび40bに役立つか、代わりに、複数の外部プロセッサ42が単一のPAD40に役立つようになった。単一のPAD40を複数の外部プロセッサ42と関連付けることにより、障害時の許容範囲が向上する。
【0032】
好ましい実施例において、外部プロセッサ42はまず3つの処理のタイプを実行する。これは、ポリシーサービスの実行、アクセスネットワーク接続のセットアップおよびテアダウン(tear down)のための信号送信、および1またはそれ以上の関連したPAD40の設定である。これらの異なる処理機能を調整するために外部プロセッサ42は1またはそれ以上のサービスコントローラ120を含む。サービスコントローラ120は、それぞれがそれぞれのサービスのタイプに応じてこれら3つの機能を好ましくは制御する。例えば、サービスコントローラ120は会議呼び出しサービスコントローラ(Conference Call Service Controller)(CCSC)、イーコマースサービスコントローラ(E−Commerce Service Controller)(ECSC)、IP電話サービスコントローラ(IP Telephony Service Controller)(IPTELSC)、リザーブド帯域幅サービスコントローラ(Reserved Bandwidth Service Controller)(RBSC)、マルチキャストサービスコントローラ(Multicast Service Controller)(MSC)の任意のものおよびすべてを含んでもよい。そのようなサービスに特有の制御は専用のサービスコントローラと共に、または各々がサービス特有のAPIをサポートする一般のコントローラと共に実行されうる。各サービスコントローラは、PAD40と共に活性化されたセッションのすべてを記録するセッションテーブルを好ましくは維持する。
【0033】
図4にさらに示すように、外部プロセッサ42は各関連したPAD40に対して、それぞれのPADコントローラ124を含む。サービスコントローラ120の指示の下で、コントロールインターフェイス104によって理解されるコマンドまたはスクリプトを実行することによって各PADコントローラ124は転送テーブル86、パケットヘッダーフィルタ80および90、マーカー/ポリサ82、マーカー/シェイパ94、モニタ84および92、関連したPAD40のスケジューラ88および96を設定する。外部プロセッサ42はまた各関連したPAD40のためのそれぞれのメッセージプロセッサ122を含む。メッセージプロセッサ122は、各々が関連したPAD40のメッセージインターフェイス100へおよびそこからメッセージを通信する。PAD40からのメッセージを受けると、これは通常は顧客ルータ32から受けたメッセージであるが、メッセージプロセッサ122はメッセージを解析し、(サービスのタイプによって決定されるように)適切なサービスコントローラにその内容を知らせる。図4に示されているように、所与の時間において、必ずしもすべてのPAD40がすべてのサービスのタイプを処理するよう構成されていない。このように、特定のサービスコントローラ120はすべてのPAD40よりも少ないメッセージを通信してもよい。
【0034】
点線で例示したように、外部プロセッサ42は、選択的なモニタ84または92および報告インターフェイス102を含む、各PAD(例えばPAD40a)のための報告プロセッサ126をさらに含んでもよい。報告プロセッサ126は対応するPADの報告インターフェイス102から報告メッセージを受け取り、適切な報告メッセージを1またはそれ以上のサービスコントローラ120に転送する。報告プロセッサ126は、報告メッセージの受け入れ可能なタイプ、報告メッセージの内容、報告イベントなどを特定するために、PAD40の報告インターフェイス102を設定できる。
【0035】
報告プロセッサ126からの報告メッセージまたはメッセージプロセッサ122からの別のメッセージタイプを受けると、サービスコントローラ120はメッセージを1またはそれ以上のポリシー問い合わせに変換し、ポリシー問い合わせをSPI56を介してポリシーサーバ48に送信する。例えば、SPI56がCOPSを採用するなら、サービスコントローラ120はRSVPおよびSIPメッセージをCOPS(RSVP)およびCOPS(SIP)メッセージにそれぞれ変換する。サービスコントローラ120は、インターフェイス121を介して追加のサービスを得るために、別のサービスコントローラ120に渡してもよい。
【0036】
ポリシーサーバ48からポリシー決定の受け取りに応答して、サービスコントローラ120は1またはそれ以上のパケットをメッセージプロセッサ122を介してトラフィックフローに注入し、PADコントローラ124を介してPAD40を構成するか、または信号送信コントローラ128aおよび128bを介して通信ネットワーク30の内部または外部で信号送信を制御してもよい。信号送信コントローラ128はネットワークを介してバーチャルコネクション(Virtual Connection)(VC)またはラベルスイッチパス(Label switched Path)(LSP)をセットアップまたは取り外すために信号送信プロトコルを(例えばRSVP、ラベル分散プロトコル(Label Distribution Protocol)(LDP)、専用線ネットワーク−ネットワークインターフェイス(Private Network−Network Interface)(PNNI)、フレームリレーまたはATMユーザネットワークインターフェイス(User Network Interface)(UNI)など)をサポートする。信号送信コントローラ128によってセットアップされたVCまたはLSPは特定されたQoSを有してよい。
【0037】
SPI56を介してサービスコントローラ120とポリシーサーバ48との間で通信されるメッセージの数を減らすために、サービスコントローラ120の各々は、それぞれのポリシーキャッシュ130内に頻繁に使用されるポリシー規則を好ましくはキャッシュする。従って、もし着信メッセージから生じるポリシー問い合わせのためのポリシー情報が既にキャッシュされていれば、サービスコントローラ120は問い合わせをポリシーサーバ48に先立って送信し、そのポリシーキャッシュ130内にキャッシュされたポリシー規則を参照することによってポリシー決定を行うことができる。加えて、サービスコントローラ120が新しいサービス要求についてポリシーサーバ48に問い合わせたとき、サービスコントローラ120はポリシーサーバ48に対して、ポリシーデータベース46からそのポリシーキャッシュ130にすべての関連したポリシー情報をダンプするよう要求してもよい。しかしながら、ポリシー問い合わせの数とキャッシュリフレッシュの頻度と各リフレッシュ時のポリシーサーバ48からダウンロードされたポリシー情報の量との間には、取引が成立する。目的は、SIPコールのような、集中的なポリシー問い合わせを要求するIPサービスのためのポリシーをキャッシュし、一方で、ライフタイムにおいて、ただ一つのポリシー問い合わせのみを一般に発生するような別のセッション(例えばTCPセッション)のためのポリシーの検査のキャッシングを避けることである。
【0038】
ネットワークアクセスシステムインターフェイス
上記したように、この発明のネットワークアクセスシステムは、少なくとも2つのインターフェイスをサポートをする。SPI56およびMCRI58である。これらのインターフェイスの各々は、以下に述べるように順に検査される。
【0039】
以下の表1に要約されているように、SPI56は好ましくは外部プロセッサ42のサービスコントローラ120からポリシーサーバ48へ送信される少なくとも一つのメッセージ、すなわち、ポリシー要求に関する問い合わせの少なくとも一つのメッセージタイプを好ましくはサポートする。そのようなポリシー問い合わせは、ポリシーサーバ48が要求しているサービスコントローラ120のポリシーキャッシュ130に対して問い合わせに対するポリシー規則をダンプするように要求するよう設定されうるフラグを好ましくは含む。
【0040】
SPI56はポリシーサーバ48からサービスコントローラ120へ送信される少なくとも5つのメッセージタイプを好ましくはサポートする。ポリシーサーバ48からサービスコントローラ120へSPI56を介して送信されたメッセージタイプは、表1にまた要約されているが、取引承認および拒否メッセージ、設定パラメータを特定するメッセージ、ポリシーキャッシュ130内にキャッシュされるべきポリシー情報を含むメッセージを含む。加えて、ポリシーサーバ48は、PAD40におけるセッションレベルパラメータに対して設定したことを指示するメッセージを外部プロセッサ42に送信できる。当業者によって理解されるように、一つの重要なセッションレベルパラメータはパケットが活性化されたセッションにおいて受けられてから経過した時間を数得る不活性化タイマであり、特定された量の時間が経過したとき、セッションは活性されていないため終了されるべきであるという旨の信号出力する。
【0041】
【表1】
SPI56上でのポリシーサーバ48と外部プロセッサ42との間の通信は応答型(solicited)でもよいし任意型(unsolicited)でもよい。任意型のモードにおける動作においては、ポリシーサーバ48は外部プロセッサ42およびPAD40のためにポリシー要求がないとき外部プロセッサ42に対し、設定パラメータを送信する。代わりに、応答型通信モードにおいては、ポリシーサーバ48はポリシー決定および設定パラメータをポリシー要求に応答して送信する。図2に示すように、ポリシー要求は外部プロセッサ42によって送信されてもよいし、SPI56はオープンポリシー問い合わせプロトコルを好ましくは採用するため、第3者(例えば顧客のポリシーサーバ)によって送信されうる。いずれの場合においても、ポリシーサーバ48はSPI56を介してポリシー要求を受ける。ポリシー要求は要求されたサービスを典型的には固定し、サービスのパラメータが与えられると、要求されたサービスが提供されるかどうかを示す応答を要求する(例えば要求者の同一性、要求されたサービスのタイプおよび量など)、そしてもしそうであれば、サービスのための適当な設定を送信される。ポリシー要求の受信に応答して、ポリシーサーバ48はポリシー要求において提供されたパラメータが与えられると、適切なポリシー規則にアクセスするためにポリシーデータベース46に問い合わせる。ポリシーサーバ48はそれからアクセスされたポリシー規則および使用情報を使用したポリシー要求のためのポリシー決定を行う。例えば、ポリシーサーバ48は、使用されている、残っている予約された帯域幅の量(使用情報)を、要求されたサービスを提供するために必要な帯域幅の量とを比較することによって、特定の顧客(ポリシー規則)によって予約された帯域幅を追跡し、新しいサービスの要求を承認または拒否してもよい。ポリシーサーバ48はそれから、「承認」、「拒否」でありうる、結果となるポリシー決定および/または外部プロセッサ42およびPAD40のためのセッションレベルパラメータの設定を外部プロセッサ42にSPI56を介して提供する。
【0042】
MCRIインターフェイス58に戻って、以下に示す表3はPAD40によって外部プロセッサ42に送信されるメッセージのタイプを要約する。示されているように、これらのメッセージタイプはメッセージインターフェイス100、報告インターフェイス102および制御インターフェイス104のどれがメッセージのソースであるかを参照することによって都合よく分類されうる。
【0043】
上記したように、PADのメッセージインターフェイス100はパケットヘッダーフィルタ80および90によって捕獲されたメッセージを外部プロセッサ42のメッセージプロセッサ122に渡す。メッセージプロセッサ122に渡されたメッセージは、レイヤ4−7メッセージタイプおよびフィールドのような他のパケットフィールドに加えて、SA、DA、PT、SP、DPおよび/またはTCPフラグ(例えばSYN、ACK、RST、FINなど)のような他のパケットフィールドに基づいて受信および発信パケットフローがフィルタ処理される。
【0044】
制御インターフェイス104は、制御コマンドメッセージの受信に応答して、制御応答メッセージをPADコントローラ124に送信する。コマンドがうまく完了したら(例えばモニタ84の設定がうまく更新されたなら)、制御インターフェイス104はPADコントローラ124にコマンド確認応答を返す。しかしながら、もしコマンドが不適切な構文のために完了できなかったり、要求されたリソースが利用できない等のときは、制御インターフェイス104はPADコントローラ124にコマンド障害を示すコマンド障害を通知する。
【0045】
PAD40の報告インターフェイス102は報告メッセージを外部プロセッサ42の報告プロセッサ126に送信する。表IIにまとめられた報告メッセージはモニタされたセッションについての情報を提供するメッセージ、PAD40と外部プロセッサ42のサービスコントローラ120との間の通信に関係したメッセージおよびモニタ84および92によって収集された統計を含むメッセージを含む。TCPおよびSIPのようなあるプロトコルに対して、PAD40は各活性化されたセッションに対する状態機械(state machine)を実行する。もしTCP状態機械が、特定の活性化されたTCPセッションが確立された再送信しきい値を超える多数の再送信を有しているときは、報告インターフェイス102はTCP再送信しきい値が超えたということを外部プロセッサ42のメッセージプロセッサ122に通知するメッセージを送信し、このように、TCPセッションが故障したことを示す。報告プロセッサ126は、TCPおよびSIPのようなあるIPプロトコルセッションにおいて不活性タイマが満了したような、他のセッションの故障を同様に報告する。信頼性を確実にするための、関連する状態機械を有さない他のデータフロー(例えばUDPセッション)に対しては、PAD40の報告インターフェイス102は、活性化がセッションにおいて検出されたとき「活性化検出」報告メッセージを送信する。
【0046】
表2によって表されるこの発明の好ましい実施例においては、PAD40と外部プロセッサ42との間の接続は各PAD40および関連する外部プロセッサ42との間で定期的に交換されるキープアライブ(keepalive)メッセージによって示される。PAD40からキープアライブメッセージがなくなると、PAD40と外部プロセッサ42との間の接続の故障および/またはPAD40自体の故障を示す。そのようなキープアライブメッセージは報告インターフェイス102と報告プロセッサ126との間で好ましくは送信される。しかしながら、もし報告インターフェイスが実行されなかったときは、キープアライブメッセージは代わりにメッセージインターフェイス100によって提供されうる。
【0047】
外部プロセッサ42内のサービスコントローラ120はまた故障するかまたは異なるサービスに動的に再割当てされる(例えば負荷バランスのために)。複数のサービスコントローラ120をサポートしている外部プロセッサ42の故障またはサービスコントローラ120間のサービス責任が再配分されたときは、セッションに対する責任が転送される新しいサービスコントローラ120が古いサービスコントローラ120の活性化されたセッションのすべてに関する状態情報を受信しなければならない。従って、PAD40を好ましい外部プロセッサ42に割り当てるいわゆる切り替えが生じたとき、PAD40は活性化されたセッションに対する状態情報を状態同期メッセージにおいて外部プロセッサ120の報告プロセッサ126に好ましくは報告する。このように、新しいサービスコントローラ120にセッション状態情報を提供する責任をPAD40に持たせることによって、サービスコントローラ120aおよび120bから同期セッション状態に維持するための責任を有利に軽減し、これが通常の動作において、サービスコントローラの性能を低下させるメッセージの集中した処理になる。設計のこの局面がハードウエア、ソフトウエアおよびネットワークの故障に対する故障許容量範囲を達成する。
【0048】
表2は選択的なモニタ84および92によって実行されるモニタによって始められる2つの模範的な報告メッセージを最終的にリスト化する。まず、報告インターフェイス102は各顧客ごとに一般的な使用統計を提供できる。外部プロセッサ42のサービスコントローラ120はSLAに対する適合性を測定するための統計情報を使用し、興味のある、あるイベントを検出する。第2に、報告インターフェイス102は顧客のあらかじめ定められたトラフィックしきい値が超えたということを報告メッセージ内で特に示す。外部プロセッサ42のサービスコントローラ120は追加のリソースを顧客のトラフィックに割り当てるためにこの情報を使用することができる(例えば、SLAに対する適合性を確実にするために)または顧客への請求書発行において調整がされなければならないということを請求書作成サーバ72に通知することができる(例えばもし請求書作成が使用に基づいて行われるならば)。もちろん、追加の報告メッセージもまたポリシーできる。
【0049】
【表2】
表3を参照して、MCRI58を介してメッセージプロセッサ122から、PADコントローラ124および外部プロセッサ42の報告プロセッサ126からPAD42へ送信されるメッセージのタイプが要約されている。表3に示されたインターフェイスの実施例のおいては、メッセージプロセッサ122はメッセージインターフェイス100に対して少なくとも2つのメッセージのタイプを送信できる。まず、メッセージプロセッサ122はメッセージインターフェイス100に対して着信または発信パケットフローのいずれかに注入される1またはそれ以上のパケットを送信してもよい。第二に、メッセージプロセッサ122は、メッセージインターフェイス100がSA、DA、PT、SP、DPなどのような各種のパケットフィールドの内容に基づいてメッセージプロセッサ122に特定のメッセージを送信する、または、送信するのを妨げるよう動作するよう、メッセージインターフェイス100内のパケットフィールドフラグを設定またはリセットすることを示すメッセージをメッセージインターフェイス100に送信してもよい。
【0050】
表3に示されているように、MCRI58を介してインターフェイス104を制御するためのPADコントローラ124から送信された制御メッセージは、多数の設定メッセージを含み、この設定メッセージはPADコントローラ124が制御インターフェイス104を介して任意のフィルタ処理、マーキング、取り締まり、モニタ、バッファ、スケジューリング、シェイピングおよびPAD40の機能モジュール80−96を転送するといった任意のものを設定することを可能にする。特に、出力バッファおよびスケジューラ88および96は、多くのバッファ、トラフィッククラスあたりのバッファのサイズまたはトラフィックフローの多くを割り当てる、または、CBQ、WFQ、WRRまたは他のバッファスケジューリングアルゴリスムを実行するよう設定されうる。PADコントローラ124は、静的または適応性のあるシェイピングアルゴリスムを採用するために、マーカー/シェイパ94を設定することができ、トラフィッククラスベースごとまたはトラフィックフローごとにシェイピングを実行するためにマーカー/シェイパ94を設定することができる。PADコントローラ124は、サービスコントローラ120がデータフローをATMSVCまたはMPLSLSPと関連づけうるように、サービスコントローラ120による要求に応答して転送テーブル86をさらに設定することができる。
【0051】
機能モジュール80−96を設定するために使用される一般の制御メッセージに加えて、MCRI58はPAD40の機能モジュールの特定の特徴を設定するために使用される各種の制御メッセージをサポートする。例えば、パケットヘッダーフィルタ80および90はデータフローに対するソース経路を許容するかまたは否定するために、または特定のソースアドレスを有するパケットのみを許容するために、権限のないソースからのマルチキャストパケットを落とすよう設定されうる。加えて、PADコントローラ124は信号送信コントローラ128を使用して、サービスコントローラ122によって設定されたSVCおよびLSP経路を有する転送テーブル86を更新できる。報告インターフェイス102はイベントに対応した報告フラグを設定またはリセットすることによって、選択されたイベントの報告を可能または不能にするための「報告フラグ設定」制御メッセージを介して設定される。PAD40はMCRIコントロールメッセージを介してTCP再送信通知しきい値、不活性タイマ、活性タイマおよび上記したトラフィックしきい値を設定するよう特定される。最後に、PAD40と出力バッファとスケジューラ88、96の処理リソースは、帯域幅、待ち行列および処理時間スライス(slice)のようなリソースを動的に割り当てるために、MCRI58および制御インターフェイス104を介して、顧客インターフェイス、パケットフロー、クラスまたはマルチキャストグループに送信された「割り当てリソース」制御メッセージによって設定されうる。
【0052】
外部プロセッサ42の報告プロセッサ126からPAD40へ送信される報告メッセージは、報告インターフェイス102付きのキープアライブメッセージの交換に一般的には限られる。キープアライブメッセージの連続した交換はPAD40に、関連したサービスコントローラ120が動作中であるということを知らせる。もしPAD40がサービスコントローラ120からキープアライブメッセージを受け取れなかったら、PAD40は、以下にさらに述べるように、サービスを第二のサービスコントローラ120へ切り替え始める。
【0053】
【表3】
故障許容範囲
サービスコントローラが故障のときにサービスの中断を防ぐために、各サービスは、通常サービスを提供する一次サービスコントローラと、もし一次サービスコントローラが故障またはPADと一次サービスコントローラとの間の接続が失われたときには、サービスを提供することができる二次サービスコントローラと、の両方によって好ましくはサポートされる。この発明の好ましい実施例においては、一次および二次サービスコントローラはアクセスネットワークを介して、種々に接続された別の外部プロセッサ42に存在する。一次サービスコントローラとの通信の障害を検出したことに応答して、PAD40は二次サービスコントローラへの切り替えを実行する。
【0054】
図5Aを参照して、この発明に従う、故障した一次サービスコントローラから二次サービスコントローラへのサービスの提供を置き換える模範的なネットワークアクセスシステムの信号を示す、時間−空間ダイアグラムが描かれている。図5Aにおいて、例示のために、サービスコントローラ120aは一次サービスコントローラで、サービスコントローラ120bは二次サービスコントローラである。
【0055】
通常の動作の間、PAD40は関連した外部プロセッサ42のサービスコントローラ120aおよび120bと情報を交換するために信頼性のある通信プロトコル(例えばTCP)を採用している。上で述べたように、キープアライブメッセージはTCPセッションの活性化が続くように、外部プロセッサ42とPAD40との間で定期的に交換される。PAD40がキープアライブメッセージのタイムアウトを検出すると、これは一次サービスプロセッサ120aへの接続が失われたことを意味するが、図5Aに示されているように、PAD40は、二次サービスコントローラ120bへ同期セグメント(SYN)をPAD40が送信することによって、二次サービスコントローラ120bとTCPセッションを設立するよう試みる。もしPAD40が二次サービスコントローラ120bとの接続に失敗したら(例えば、二次サービスコントローラ120bからSYN ACKを受け取らなければ)、一次サービスコントローラ120aとの通信が回復するまで、PAD40は新しいセッションを受け入れるのを停止し、その状態および全ての現在活性中のセッションに対するサービスを維持する。
【0056】
しかしながら、もしPAD40が二次サービスコントローラ120bとTCPセッションをうまく確立したときは(例えば、SYN ACK、およびACKの返信を受けることによって示されるように)、PAD40は、各活性化されたセッションに対する状態機械を維持し、故障した一次サービスコントローラ120aによって制御された活性化されたセッションのすべてに対する状態情報を二次サービスコントローラ120bにアップロードする。二次サービスコントローラ120bによる状態情報の受信がACKメッセージによって確認されると、PAD40はキープアライブメッセージの対応を二次サービスコントローラ120bと開始する。このように、サービスは単一のサービスコントローラ120の故障によって中断されず、サービスコントローラ120aおよび120b間の同期も必要とされない。
【0057】
もし非復帰行動が望まれるのであれば、PAD40と二次サービスコントローラ120b間の通信が続き、一次サービスコントローラ120aに戻らない。しかしながら、もし可能であれば、分散されたPADのサービスコントローラ処理の負荷バランスを維持するために、通信は一次サービスコントローラ120aに戻るほうが現在のところ好ましい。
【0058】
図5Bを参照して、一次サービスコントローラの回復に続いて、二次サービスコントローラから一次サービスコントローラへの切り替えの間の、プログラム可能なアクセス装置と外部プロセッサ間の模範的な信号送信を示した時間−空間図が描かれている。復帰処理はTCPセッションを再確立するために、一次サービスコントローラ120aがSYNセグメントをPAD40に送信することによって始まる。PAD40は一次サービスコントローラ120aがACKによって確認する、SYN ACKを有するSYNの受信に応答する。TCPセッションが開始されると、PAD40は活性化されたセッションの状態を一次サービスコントローラ120aにアップロードし、サービスコントローラ120aはACKでセッション状態の受信を確認する。
【0059】
セッション状態がうまく一次サービスコントローラ120aに復帰された後、PAD40は二次サービスコントローラ120bに、一次サービスコントローラ120aが「シャットダウンのための準備」メッセージを介して回復したということを通知する。PAD40はそれからFIN(すなわち終了)およびACKのハンドシェイクの対を介して二次サービスコントローラ120bとのTCPセッションを閉じる。この対の前半はPAD40によって開始され、後半は二次サービスコントローラ120bによって開始される。TCP接続が閉じられた後、二次サービスコントローラ120bは一次サービスコントローラ120aに転送されたセッションにすべての状態情報を削除する。PAD40はその後一次サービスコントローラ120aとのキープアライブ交換を開始する。
【0060】
都市における実施
図1Bを参照して、この発明に従う分散されたネットワークアクセスシステムを含むインターネットサービスプロバイダ(ISP)ネットワークの模範的な都市における実施が示される。図1Bは図2に示すような、論理(例えばネットワーク)接続というよりは、要素の物理的な相互接続を例示する。
【0061】
左手側から始まって、顧客LAN14は都市アクセスネットワーク16’の中で最も低いレベルのアクセスネットワーク(例えばTDM、ATM、またはイーサネット)かまたは直接PAD40に相互接続する。示されているように、PAD40は集合ネットワーク階層においてより高いレベルに位置してもよい。エンジニアリング経済および/または性能を考慮することによって、PAD40の位置が決定する。例えば、トラフィックの最小量の集計または低速アクセスリンクへのアクセスの必要性によってPAD40の位置がそれぞれより高いまたはより低いアクセスネットワークレベルに移動されてもよい。
【0062】
上で議論したように、PAD40はポリシーの強制を行い、それによって集合ルータ(すなわちアクセスルータ44)からある作業負荷を軽減する。ポリシーの決定は集合ルータからまた除去され、代わりに、冗長な外部プロセッサ42およびPDP46に位置される。ほとんどの実施において、外部プロセッサ42は各都市領域に分散された方法で典型的には配置され、一方、PDP46は地域ベースでよりまばらに配置される。集合ルータから作業負荷のいくらかを軽減した結果、アクセスルータ44は、アクセスルータがより単純ではあるが、必須の基本的なインターネットルーティングの仕事を処理するよう最適化されるため、より大きなトラフィック能力を処理するよう拡張されうる。ISPネットワークの能力は、PAD40、外部プロセッサ42およびPDP46が最新技術のエッジルータの機能だけでなく、融通のきかないルータデザインにおいて現在は入手できないような多くの機能をも実行するため、また拡大される。
【0063】
この発明の局面をさらに例示するために、各種の動作シナリオのためのネットワークアクセスシステムの信号送信およびメッセージ作成の例を一般的な空間ー時間図を参照して以下に述べる。例は、ネットワークレベル信号送信、接続優先およびコネクションレス転送プロトコル、アプリケーションレベル通信およびポリシーベースのマルチキャストサービス管理の模範的な実施例を例示する。
【0064】
ネットワークレベル信号送信の例
図6を参照して、リソースリザベーションプロトコル(RSVP)の使用を介したサービス予約を得るために使用される模範的なネットワークレベル信号送信を示す時間−空間図を例示する。例示された例においては、顧客のアプリケーションがRSVPPATHメッセージをPAD40に送ることによって予約処理を開始する。例えば、顧客のアプリケーションは特定の時間における特定の帯域幅の経路を要求してもよい。図6に示すように、PAD40のパケットヘッダーフィルタ80は、RSVPプロトコルタイプ(すなわちPT=46)に基づいてRSVP PATHメッセージを捕獲し、それを外部プロセッサ40内の適切なサービスコントローラ120(この例においては、予約された帯域幅サービスコントローラ(RBSC)と呼ばれる)に転送する。
【0065】
経路メッセージの受信に応答して、RBSC120は予約サービスがこの顧客に認められているかどうかを判定するため、SPI56(この場合にはCOPSを実行するとみなされる)を介してポリシーサーバ48に適切なポリシー問い合わせを送信する。ポリシーサーバ48がこの顧客に対して予約サービスを認めるポリシーの決定をRBSC120に戻すと、RBSC120はRSVPPATHメッセージをPAD40に戻す。PAD40はPATHメッセージの下流(down stream)をネットワークの出口点へ送信する。
【0066】
もしネットワークのずっと離れた端部のレシーバが予約を認めたときは、レシーバは、PAD40に予約(RESV)メッセージを送信することによって応答し、PAD40は、RESVメッセージをRBSC120に送る。RESVメッセージに応答して、RBSC120は、RESVメッセージによって特定された帯域幅の要求がこの顧客に認められているかどうかを確認するために、別のポリシー問い合わせをポリシーサーバ48に行う。この2番目の問い合わせに応答して、各顧客に対して割り当てられた帯域幅を追跡するポリシーサーバ48が現在割り当てられている帯域幅に要求された帯域幅を加えたものがこの顧客のための最大の認められた帯域幅よりも小さいかどうかを判定する。もしそうであれば、ポリシーサーバ48は承認を示すポリシー決定と共にRBSC120に通知する。RBSC120はそれから1またはそれ以上の信号コントローラ128を使用してRVCまたはLSPを設立するために適切なATMまたはMPLS信号送信を開始する。RBSC120がネットワークから要求された経路の確認を受信した後、RBSC120は確立されたSVCまたはLSPを介して顧客のフローにパケットを送信するために、PAD40のパケットヘッダーフィルタ80および転送テーブル86を設定する。加えて、RBSC120はRESVメッセージをメッセージインターフェイス100を用いてPAD40の戻す。メッセージインターフェイス100はRESVメッセージの上流(upstream)を顧客アプリケーションに送信する。RBSC120はCONFIRMメッセージの下流をSVCまたはLSPを設立するために使用されるハンドシェイクを完成するためにPAD40を介してレシーバに送信する。
【0067】
コネクション型の送信の例
図7A−7Gを参照して、この発明に従うネットワークアクセスシステムによる接続優先の転送プロトコルの処理を例示する各種TCPイベントの時間−空間図とTCP状態機械が描かれている。まず図7Aを参照して、PAD40上でのTCPセッションのために維持された状態機械の好ましい実施例が描かれている。示されているように、TCP状態機械140は2つの状態を含む。活性化されたTCPセッションが存在しないアイドルステート142と活性化されたTCPセッションが存在する活性化状態144である。状態機械140の動作は、(1)同期セグメント(SYN)に応答したTCPセッションの開始、(2)終了(FIN)メッセージに応答したTCPセッションの終了、(3)時間切れによるTCPセッションの終了および(4)リセット(RST)メッセージに応答したTCPセッションの終了を含む、4つのTCP処理の間にTCPセッション状態を維持する。図7Aにおいて、これらの動作の各々に関連したメッセージは、対応する凡例(例えば、TCPセッション開始のための「1.x」、FINメッセージに応答してTCPセッションを終了する「2.x」、等)によって特定され、ある英字指定(例えば「1.a」は「1.b」の前など)によってさらに時間の順序付けが行われる。
【0068】
例示されているように、TCPセッションの開始は状態機械140がアイドル状態142にあり、PAD40がSYNセグメントを受け取ったときに始まる。参照番号150で例示されているように、パケットヘッダーフィルタ80は顧客から受け取った最初のSYNメッセージを捕獲し、それをTCPサービスを処理するよう指定された外部プロセッサ42内のサービスコントローラ120に渡す。SYNメッセージの受け取りに応答して、サービスコントローラ120はこの顧客に対するTCPセッションに関してポリシーサーバ48に問い合わせを行う。サービスコントローラ120がTCPセッションの承認を示す決定を受け取ると、サービスコントローラ120はSYNセグメントを参照番号152で示されているようにPAD40に戻す。サービスコントローラ120からのSYNメッセージの受け取りに応答して、状態機械140は状態をアイドル状態142から活性化状態144に変更する。PAD40はSYNセグメントを目的地アドレスによって特定されたレシーバに転送し、参照番号154で示されているように、レシーバからSYN、ACKセグメントを受信する。送信者は、参照番号156で示されているように、ACKメッセージで応答することによってTCPセッションを開始するのに必要な3方向のハンドシェイクを完了する。PAD40はハンドシェイクの成功を表すACKメッセージを参照番号158で示すようにサービスコントローラ120に渡す。ACKメッセージの受信よってTCPセッションが開始されたことをサービスコントローラ120に通知し、サービスコントローラ120はその活性化セッションテーブルにTCPセッションを加える。サービスコントローラ120はそれからPAD40内でこのTCPセッションの不活性タイマおよび他のパラメータを設定し、参照番号158で示されているように、ACKメッセージをPAD40に戻す。その後、データは参照番号159で示されているように、活性化されたTCPセッションを介して顧客とレシーバとの間で送信される。
【0069】
活性化されたTCPセッションを終了するために、顧客またはレシーバのいずれかがPAD40にFINメッセージを送信することができる。FINメッセージの受信に応答して、PAD40は参照番号160で示すように、TCP状態機械140をアイドル状態にリセットする。PAD40は参照番号162で示すようにFINメッセージをサービスコントローラ120に渡す。FINメッセージはサービスコントローラ120に、TCP接続が不活性であることを知らせ、サービスコントローラ120にその活性セッションテーブルからTCPセッションを削除させる。例示されているように、PAD40はFINメッセージをその目的地(すなわち顧客またはレシーバ)へ転送する。これはACKメッセージとFINメッセージ共に応答する。ソースはそれからACKメッセージ166と共に最後のFINメッセージを応答する。最後のACKメッセージの受信に応答して、PAD40はTCPセッションのための状態機械140を削除する。
【0070】
図7Aにさらに例示されているように、PAD40はTCPセッションの不活性タイマが終了したとき活性化されたTCPセッションを終了する。活性化されたTCPセッション用の不活性タイマ満了に応答して、参照番号170で例示されているように、PAD40は状態機械140を活性化状態144からアイドル状態142に移行する。PAD40は、タイムアウトエラーをサービスコントローラ120に報告する。タイムアウトエラーメッセージ受信に応答して、サービスコントローラ120は活性セッションテーブルからTCPセッションを削除し、TCPセッションに関連した、不活性タイマおよび他の設定情報を除去するために、PAD40の設定を更新する。PAD40はそれからTCPセッションのための状態機械140を削除する。
【0071】
PAD40はいずれかの当事者からTCP接続のリセット(RST)メッセージの受信に応答して活性化TCPセッションを終了する。RSTメッセージの受信に応答して、参照番号180で示されているように、PAD40は状態機械140を活性化状態144からアイドル状態142に遷移させる。PAD40はまた参照番号182で示されているように、RSTメッセージをサービスコントローラ120に渡す。RSTメッセージの受信に応答して、サービスコントローラ120は、参照番号182で示されているように、RSTおよびTCPセッションの削除の成功の受信の確認応答をするためにRSTメッセージをPAD40に戻す。PAD40はそれからTCPセッションの状態機械140を削除し、RSTメッセージをTCPセッションの他の当事者に転送する。
【0072】
PAD40およびサービスコントローラ120の効率的な動作を促進するために、それらの間のメッセージの量を最小にすることが望ましい。従って、もしTCPセッションの開始が要求されたら、PAD40はサービスコントローラ120に最後のACKメッセージを転送するだけである。加えて、PAD40はセッションにおいて受け取った第一SYN、FINセグメントをサービスコントローラ120に渡すだけである。このようにして、PAD40とサービスコントローラ120の機能がたとえ分散されているとしても、過度のメッセージは避けられる。
【0073】
好ましい実施例において、PAD40はサービスコントローラ120が付加価値のあるサービスを設定するTCPセッションのための活性化された状態情報を単に維持する必要がある。言い換えると、PAD40はTCPセッションに対する最善の努力のための状態情報を維持しない。これはTCP状態情報を維持するためにPAD40に要求されるメモリサイズを大幅に減らす(例えば、パケットヘッダーフィルタ80および90ならびにモニタ84および92の状態情報)。また、多数の活性化したTCPセッションがありうるため、表3で与えられたTCPセッションメッセージの削除によって、サービスコントローラ120は、TCPセッション状態メモリが一杯になったときにどのTCPセッションが付加価値のあるサービスを受けるのかということを決定することができる。
【0074】
図7Bに例示されているように、PAD40はTCP状態メモリが一杯であるというメッセージ186を、TCP状態メモリフルイベント184の検出に応答して、報告インターフェイス102を介してサービスコントローラ120に送信する。状態メモリフルイベント184はパケットヘッダーフィルタ状態変数のためのストレージまたはモニタ状態変数のためのストレージのいずれかの枯渇によって生じる。TCP状態メモリフルメッセージ186に応答して、サービスコントローラ120はPAD40のTCP状態メモリ状態を記録する。
【0075】
顧客ルータ32がSYNメッセージ188を送信することによって別の付加価値のあるTCPセッションを開始したとき、参照番号190で示すように、PAD40はメッセージインターフェイス100を介してSYNメッセージをサービスコントローラ120に渡す。SYNメッセージの受信に応答して、サービスコントローラ120はPAD40のTCP状態メモリ現状をチェックする。TCP現状状態メモリが一杯であるため、サービスコントローラ120は、何らかのあらかじめインストールされたポリシーに基づいて既存の付加価値のあるTCPセッションに新しいTCPセッションを上書きすることを許容するか否かを決定する。例えば、サービスコントローラ120は各付加価値のあるサービスに優先度を割り当て、より低い優先度のTCPセッションにより高い優先度のセッションを上書きすることを許容するようにしてもよい。代わりに、または追加して、サービスコントローラ120は、最も長い不活性期間を有するTCPセッションに新しいTCPセッションを上書きするよう許可してもよい。
【0076】
もし新しいTCPセッションを任意の既存のTCPセッションに上書きすることが許可されないときは、サービスコントローラ120はSYNメッセージを無視する。その結果、PAD40は新しいTCPセッションのための状態情報をインストールせず、PAD40は新しいTCPセッションに対して最善努力のサービスを提供する。しかしながら、もしサービスコントローラ120が、新しいTCPセッションが別のTCPセッションに上書きできると決定すると、サービスコントローラ120はコントロールインターフェイス102を介してPAD40に対してDelete(削除)TCPセッションメッセージを送信する。PAD40は参照番号194によって示されているように、そのTCP状態メモリから既存のTCPセッションを削除することによって応答する。参照番号150−159で図7Aに例示されている処理はそれから、PAD40の状態メモリに新しいTCPセッションをインストールするため実行される。
【0077】
図7Aに描かれている模範的なTCP状態機械が与えられたとして、図7C−7Gを参照してTCP信号送信のいくつかの例を以下に述べる。まず図7Cを参照して、この発明に従うネットワークアクセスシステムを介したTCPセッションを確立するために使用される模範的な信号送信が示される。
【0078】
例示されているように、TCPセッションを開始するために、顧客のアプリケーションはまず、アプリケーションが特定のポートおよびIPアドレス(例えば、ウエブページにアクセスするとき)でサーバに対する接続の開始を希望するということをプロトコルスタック(protocol stack)に知らせる開始コマンドを発行する。顧客サイトのTCPエージェント(agent)はそれから最初のシーケンス番号(この例では800)を選択し、選択されたシーケンス番号を有する同期セグメント(SYN)を送信する。SYNセグメントが到着すると、PAD40のパケットヘッダーフィルタ80は、特定された目的地IPアドレスおよびポート番号(PT=6、ポート=80)に基づいて、SYNセグメントが必須のイーコマースTCPセッションの開始を意図している、ということを検出する。従って、パケットヘッダーフィルタ80はSYNセグメントをイーコマースサービスコントローラ(ECSC)120に渡す。ECSC120は、たとえば、LDAP要求を使用してポリシーサーバ48に問い合わせることによってSYNセグメントに応答する。
【0079】
例えば、LDAP APPROVEメッセージを介してTCPセッションの承認を示すポリシーサーバ48に応答して、ECSC120はPAD40にSYNセグメントを戻す。PAD40がECSC120からSYNセグメントを受け取ると、PAD40は新しいTCP状態機械を発生し、それを活性状態144に設定する。PAD40はそれからSYNセグメントにおいて特定されたサーバにSYNセグメントの下流を送信する。
【0080】
SYNセグメントがサーバで受信されると、サーバのTCPエージェントは最初のシーケンス番号(この場合400)を取り、選択された開始シーケンス番号およびACKを含むSYNセグメントをPAD40に送信する。ACKメッセージは、顧客によって送信された最初のデータバイトは801という番号であるべきであると特定する。サーバによって送信されたSYNおよびACKメッセージはPAD40によって顧客アプリケーションに転送をされるが、これらのメッセージはECSC120には転送される必要がないということに注意のこと。
【0081】
顧客のTCPエージェントがSYN/ACKメッセージを受け取ったとき、サーバによって送信された最初のデータバイトは401という番号であるべきであるということを意味する、ACKメッセージ401をTCPエージェントが戻す。このACKメッセージは、3方向のハンドシェイクが成功し、TCPセッションが開始されたということをECSC120に通知するために、PAD40によってECSC120に渡される。ECSC120はそれからTCPセッションをその活性セッションテーブルに加え、TCP再送信の許可された番号および適切な不活性タイマ設定をPAD40に設定する。ECSC120はこのTCPセッションに属しているパケットを高い優先度であるとマークするためにマーカー/ポリサ82を設定してもよい。ECSC120はACKセグメントをPAD40に戻す。PAD40はTCPセッションが開始されたということをレシーバに知らせるために、ACKセグメントを目的地サーバに送信する。ひとたび顧客のTCPエージェントがクライアントアプリケーションに、TCP接続が開始されたということを知らせると、クライアントとサーバはTCPセッションにおいてデータの交換を始めることができる。
【0082】
図7Dを参照して、この発明に従うTCP接続を終了するための模範的なネットワークアクセスシステムの信号送信を例示した時間−空間図が示されている。図7Dに示された例においては、TCP接続の両側がTCPセッションの切断を始めることができるが、サーバアプリケーションが接続を終了するために、そのTCPエージェントに指示することによって、TCPセッションの終了を開始する。従って、サーバのTCPエージェントは、それ以上データを送信しないということをクライアントアプリケーションに知らせる、FINセグメントを送信する。FINセグメントの受信に応答して、PAD40はアイドル状態142に接続するためにTCP状態機械をリセットし、FINセグメントをECSC120に渡す。ECSC120はその活性化セッションテーブルからTCPセッションを削除し、このTCPセッションのためのパケットをマーキングするのを止め、セッションの不活性タイマおよび再送信設定を除去するようPAD40を設定することによって応答する。PAD40はまたFINセグメントをクライアントに転送する。クライアントはPAD40によってサーバに対して渡されるACKと共にFINセグメントの受信を確認する。クライアントアプリケーションはそれからそのTCPエージェントに対してセッションを終了するよう命令する。クライアントのTCPエージェントはそれゆえPAD40を介してサーバのTCPエージェントに対してFINメッセージを送信する。サーバのTCPエージェントはクライアントのFINメッセージに対して、TCPセッションを閉じるための3方向のハンドシェイクがうまくといったということをPAD40に示すACKで応答する。PAD40は従って、TCPセッションのための状態機械を削除し、ACKメッセージを顧客に転送する。一方、サーバのTCPエージェントはサーバアプリケーションに接続が終了したことを通知する。
【0083】
次に図7Eを参照して、権限のないTCPセッションのための要求に応答してこの発明に従う模範的なネットワークアクセスシステムの信号送信を示す時間−空間図が例示されている。図7Eと図7Cとを比較してわかるように、処理はポリシーサーバ48がECSC120にTCPセッションを拒絶するLDAPポリシー決定を戻す点まで同じである。ポリシーサーバ48は例えば、ネットワークが要求されたセッションをサポートするための十分なリソースが無いとか、クライアントが要求された高い優先度のイーコマースサービスを予約していないためといった理由でTCPセッションを拒絶してもよい。TCPセッションの拒絶に引き続いて、ECSC120はPAD40にリセット(RST)セグメントを発行し、PAD40はクライアントのTCPエージェントにRSTセグメントの上流を送信する。クライアントのTCPエージェントがRSTセグメントを受けると、顧客のTCPエージェントはセッションを終了する。PAD40はECSC120からSYNセグメントを受信しないため、PAD40はTCPセッションのための状態機械を生成しないということに注意のこと。
【0084】
図7Fを参照して、過度のTCP再送信が検出されたときの、模範的なネットワークアクセスシステムの信号送信を示す時間−空間図を例示する。わかるように、TCPセッションは図7Dに例示されているように、適切な切断を通じて通常は終了する。しかしながら、ネットワークまたはサーバ故障の場合はTCPセッションはホストにおけるタイムアウトとなり、通常の切断は生じない。従って、TCPセッションが切断されたときに、何らかの機構がECSC120およびPAD40を更新するために実行されねばならない。
【0085】
図7Fにおいて示されている例においては、顧客とサーバの間の経路はネットワークリンクまたはノードの故障によって中断される。この故障はTCPエージェントおよびクライアントに再送信のしきい値の数になるまでデータの再送信を行わせる。クライアントのTCPエージェントは、それからTCP接続を中断する。続いて、PAD40におけるTCPセッションのための不活性タイマが満了する。不活性タイマの満了に応答して、PAD40はTCPセッションの状態機械をアイドル状態142に更新し、TCPセッションタイムアウトエラーをECSC120に報告する。ECSC120はその活性化セッションテーブルからTCPセッションを削除することによってタイムアウトエラーの報告に応答し、PAD40に対してTCPセッションに対するパケットのマーク付けを停止し、このTCPセッションのための設定を削除するよう指示する。PAD40はそれからTCPセッションのための状態機械を削除する。
【0086】
次に図7Gを参照して、TCPセッションの参加者がTCPセッションに対して急な終了を要求したときの模範的なネットワークアクセスシステムの信号送信を例示する時間−空間図を示す。例示されているように、アプリケーションは、この場合はアプリケーションはサーバアプリケーションであるが、リセット(RST)セグメントを送信することによって突然の終了を知らせる。アプリケーションは、例えば、アプリケーションが接続を中断したいと望んだためとか、TCPエージェントが解決できない重大な通信障害を検出したといった多くの理由で突然の終了を送り出しうる。RSTセグメントの受信に応答して、PAD40はそのセッションのためのTCP状態機械140をアイドル状態142にリセットし、RSTセグメントをECSC120に渡す。RSTセグメントの受信に応答して、ECSC120はその活性化セッションテーブルからTCPセッションを削除し、PAD40をこのTCPセッションのためのパケットに対して、マーキングするのを止めるよう設定する。PAD40はそれからセッションのためにTCP状態機械140を削除し、クライアントに対してRSTセグメントを送信する。クライアントはそれからRSTセグメントの受信に応答してTCPセッションを終了する。
【0087】
UDP報告機能を用いたコネクションレス転送例
図8A−図8Cを参照して、コネクションレス転送プロトコルのためのネットワークアクセスシステム信号送信の3つの例を例示する。各例において、アンリライアブルデータグラムプロトコル(UNRELIABLE DATAGRAM PROTOCOL)(UDP)が採用されている。
【0088】
図8Aをまず参照して、IPテレフォニー(telephony)セッションの音声データの転送としてUDPが使用されているネットワークアクセスシステム信号送信の時間−空間図を示す。図8Aに例示された例においては、顧客は自分のIPテレフォニー(IPTEL)呼び出しのための保証されたサービスを注文するが、クライアントはIPTEL呼び出しのための保証されたサービスを予約するためにRSVPの使用をサポートしていない。それにもかかわらず、顧客は以下に記すように、メッセージの交換を介してIPTEL呼び出しのための保証されたサービスを得ることができる。
【0089】
処理は、顧客が顧客サイトにおいてIPTEL呼び出しを行うクライアントアプリケーションを実行したときに開始する。クライアントアプリケーションはそれから音声データ送信のために割り当てられた利用可能な予備のポートから使用されていないUDPポートを得る。クライアントのアプリケーションはそれからUDPパケットによってカプセル化された音声データを最善努力のトラフィックとしてネットワークを介して送信を開始する。PAD40は音声ポート範囲内でUDP(すなわちプロトコルタイプ(PT)=17)パケットの流れを検出するよう設定され、UDPの流れを検出し、それを外部プロセッサ42内のIP電話サービスコントローラ(IPTELSC)120に報告する。IPTELSC120はポリシーサーバ48に対してSPI56を介したポリシー決定を問い合わせる。SPI56はこの例においてはCOPSを採用している。ポリシーデータベース46を参照することによって、ポリシーサーバ48は顧客が自分のIPTEL呼び出しに対して保証されたサービスを要求していることを判断し、IPTELSC120にSA、DA、PT=17、SPおよびDPによってポリシーされているように、このIPTELセッションのために保証されたサービスを提供するようIPTELSC120に指示するポリシー決定を戻す。
【0090】
IPTELSC120は従って、そのセッションのための不活性タイマを有するようPAD40を設定し、PAD40に対してこのIPTELセッションの発生の報告を停止するよう指示する。IPTELSC120はまた、顧客のクライアントアプリケーションがそうすることができないため、IPTEL呼び出しに対して予約された帯域幅の経路の設定を開始する。予約された帯域幅の経路を設定するために、IPTELSC120はRSVP PATH MESSAGEをPAD40に送信する。PAD40はPATH MESSAGEの下流をレシーバに送信する。予約された帯域幅の量と共に予約の承認を指示するために、レシーバはRESVメッセージをPAD40に送信し、PAD40はRESVメッセージをIPTELSC120に転送する。それから特定された帯域幅の予約が承認されるか否かが判断される。もしIPTELSC120が以前のポリシーサーバ48の問い合わせに続く十分なポリシー情報をキャッシュしているのであれば、IPTELSC120は帯域幅に関してポリシーサーバ48に問い合わせる必要はない。しかしながら、もし不十分なポリシー情報をIPTELSC120のポリシーキャッシュ130に格納(cache)しているときは、ポリシーサーバ48は特定された帯域幅が予約可能かどうかを再び問い合わせる。もし特定された帯域幅がこの顧客によって予約できるのであれば、IPTELSC120はIPTELセッションのためにSVCまたはLSPのいずれかを設定するように信号送信コントローラ128を介して信号送信を開始する。ATMコアのために両方向のSVCが設定される。代わりに、MPLSコアのために二つの単向性のLSPが設定される。このUDPセッションに対するQoSを提供する別の方法はPAD40内のマーカー82に対してIPヘッダ内の差別化されたサービス(DiffServ)を修正するよう指示することを含む。ひとたびIPTELSC120がQoS経路が確立されたということを示すメッセージをネットワークから確認するか接続を受けると、IPTELSC120はUDPパケットのフローをQoS経路に関連づけるためにPAD40を更新する。加えて、IPTELSC120は、PAD40に対して確認メッセージを渡すことによって、QoS経路が設定され、予約されたということを確認する。PAD40は確認メッセージをレシーバに渡す。その後、UDPパケットにカプセル化された音声データは顧客のアプリケーションからQoS経路を介してレシーバに送信される。
【0091】
図8Bに示すように、ポリシーサーバ48の問い合わせによって、IPTEL呼び出しに対するQoS要求を顧客が有していないということを示すポリシー決定が得られたときは、IPTELSC120は、PAD40がIPTEL呼び出しを再び報告しないようPAD40を設定する。加えて、IPTELSC120は、不活性タイマが満了したときには呼び出し報告の禁止が削除されるように、IPTEL呼び出しに対する不活性タイマを設定する。どのQoS経路も承認されていないため、UDPパケットによってカプセル化された音声データは最善の努力をトラフィックとしてネットワーク上で送信される。
【0092】
図8Cを参照して、UDPセッション不活性タイマの満了に応答してQoSをテアダウン(teardown)するために使用されるネットワークアクセスシステムの信号送信を例示する時間−空間ダイアグラムが示されている。UDPセッション不活性タイマは、図8Cに例示されている例においては、ネットワークリンクまたはノードの故障を含む、多くの理由によって満了するが、タイムアウトイベントは顧客サイトにおいて、呼び出しを終え、音声トラフィックの送信を停止する顧客アプリケーションによって引き起こされる。その後、UDPセッション不活性タイマが満了したとき、PAD40はタイムアウトイベントを検出し、それをIPTELSC120に報告する。IPTELSC120はIPTEL呼び出しに対してSVCまたはLSPを解放する(release)ための適切な信号送信を開始することによって応答し、解放はIPTELSC120へのメッセージによって確認される。IPTELSC120はIPTEL呼び出しに対してQoS経路を明確にテアダウンするためにパスティア(pathtear)メッセージを実行する。このメッセージはネットワークを介してPAD40から渡され、パスティアメッセージはQoS経路にそってインストールされたRSVP状態を除去する。IPTELSC120はそれからその活性化セッションテーブルからIPTEL呼び出しを削除し、PAD40をIPTEL呼び出し用のすべての設定されたパラメータを削除する。
【0093】
SIP信号送信を用いたアプリケーションレベルの例
次に図9A−9Eを参照して、この発明に従うネットワークアクセスシステムにおけるアプリケーションレベルSIP信号送信を示す、時間−空間図の多くを例示する。まず図9Aを参照して、SIP呼び出しの確立の例が示されている。例示された例においては、顧客サイトの呼び出し側は、例えば、マルチメディア会議呼び出しに参加するために呼ばれる側を招待するためにネットワークで呼ばれる側にSIP INVITEを発行する。PAD40がSIPに割り当てられたUDPまたはTCPポート範囲によって招待要求を検出したとき、PAD40はINVITE要求を会議呼び出しサービスコントローラ(CCSC)120に渡す。CCSC120はそれから要求された能力が顧客に対して承認されるかどうかに関してポリシーサーバ48(例えばLDAP要求を使用して)問い合わせる。重要なことは、CCSC120とポリシーサーバ48との間で交換されるメッセージの数を減らすために、CCSC120はポリシーサーバ48がCCSC120のポリシーキャッシュ130内のSIP要求に対するポリシー検査をダンプ(dump)することを要求するための問い合わせにおいてフラグを好ましくは設定する。このようにして、CCSC120はその後キャッシュされたポリシーを参照することによってポリシーの決定を行うことができ、ポリシーサーバ48の不必要な問い合せを避けることができる。
【0094】
ポリシーサーバ48がSIPセッションを承認したと仮定して、ポリシーサーバ48はCCSC120にSIPセッションの承認を指示するポリシー決定を送信し、CCSC120のポリシーキャッシュ130にSIP呼び出しのためのポリシー規則をダンプする。SIPセッションの承認を受信すると、CCSC120はPAD40にINVITEメッセージを戻す。PAD40はINVITE要求を呼ばれる側へ転送する。
【0095】
INVITE要求に応答して、呼ばれる側はPAD40にSIP200OKメッセージを戻し、それによって特定されたSIP能力の変更のない呼び出しの承認応答を示す。SIP能力における変更がないために、PAD40は呼び出し側に直接SIP200OKメッセージを転送し、CCSC120にはメッセージを渡さない。呼び出し側はそれからACK要求を介してSIP200OKメッセージの受け入れを応答する。これによってPAD40はCCSC120にSIPセッションの確立の成功を知らせる。CCSC120はそれからSIP呼び出しの最終能力セットを承認するために、そのポリシーキャッシュ130に問い合わせる。CCSC120はその活性化セッションテーブルにSIPセッションを加え、SIP呼び出しを容易にするために、PAD40に不活性タイマと他のパラメータを設定する。CCSC120はそれからPAD40にACK要求を戻し、PAD40は順にSIP呼び出し確立を達成するために呼ばれる側ACKを送信する。
【0096】
よりよい性能を得るために、PAD40からCCSC120へおよびCCSC120からポリシーサーバ48へ渡されるメッセージを最小にするのが好ましい。上で議論したように、CCSC120でポリシー規則をキャッシュすることによって、要求されるポリシー問い合わせの数を大幅に減らすことができる。PAD40からCCSC120へ渡されるメッセージはPAD40にあるSIP状態機械の実行を介して減らすのが好ましい。ここで、PAD40は、SIPセッションの能力の組を確立、終了または変更するだけのためにCCSC120にSIPメッセージを渡す。
【0097】
図9Bを参照してSIP呼び出し終了のための模範的なネットワークアクセスシステム信号送信を例示する、時間−空間図が示されている。多数当事者のSIP会議呼び出しにおいては、各当事者は呼び出しから自分自身を脱落させることだけができ、呼び出しは最後の当事者が呼び出しから去った後で終了する。一方、図9Bに例示されているような2当事者のSIP呼び出しにおいては、呼ばれる側または呼び出し側が呼び出しを終了することができる。図9Bに示されているように、顧客サイトの呼び出し側がPAD40がCCSC120に渡すBYE要求を送信することによって呼び出しの終了を開始する。CCSC120はBYE要求に対して、その活性セッションテーブルからSIPセッションを削除することによっておよびポリシーキャッシュ130からSIPセッションに関連するポリシー規則を取り除くことによって応答する。CCSC120はそれからPAD40が、SIP呼び出しからCCSC120へ、続くSIPメッセージを渡さないよう、また、SIP呼び出しに対する全設定を削除するようPAD40を設定する。CCSC120はまたBYE要求を呼ばれる側に転送するPAD40にBYE要求を送信する。BYE要求の受信に応答して、呼ばれる側はSIP200OKメッセージを送信することによってSIP呼び出しの終了に応答する。PAD40はSIP200OKメッセージをCCSC120に渡すことなく呼び出し側に転送する。
【0098】
図9Cを参照して、許可された期間を超えたSIP呼び出しを終了するための模範的なネットワークアクセスシステムの信号送信を示す時間−空間を例示する。示された例においては、SIP呼び出しの終了はCCSC120が、SIP呼び出しがセッションの終了タイマによってポリシーされた許可された期間を超えたということを検出することによって開始される。呼ばれる側は、それから呼び出しを終了するためにBYE要求を発行する。BYE要求の受信に応答して、PAD40はBYE要求をCCSC120に渡す。これによって、CCSC120はその活性化セッションテーブルからSIPセッションを削除し、そのポリシーキャッシュ130から関連したポリシーを除去する。CCSC120はそれからPAD40を、PAD40がSIP呼び出しにおいて、続くSIPメッセージをCCSC120に渡さないよう設定すると共に、PAD40にSIP呼び出しに対するすべての設定を削除するよう命令する。CCSC120はそれからBYE要求をPAD40に発行する。PAD40はBYE要求を呼び出し側および呼ばれる側の両方に転送する。呼び出し側および呼ばれる側はそれからSIP200OKメッセージを介してSIPセッションの終了に応答する。
【0099】
図9Dはどの当事者も呼び出し要求の終了をしないで、そのかわりに両当事者が単にSIPセッションを単に終了する、第3の呼び出し終了例を例示する。SIPセッションにおける活性がないときは、SIP呼び出しのためのPAD40における不活性タイマは終了する。PAD40はそれからCCSC120にタイムアウトを報告する。CCSC120はその活性セッションテーブルからSPIセッションを削除し、そのポリシーキャッシュ130から関連したポリシーを除去する。CCSC120はそれからPAD40に対してSIP呼び出しのためのすべての設定を削除するよう命令する。
【0100】
次に図9Eを参照して、呼び出し側と呼ばれる側との間のSIP呼び出し能力要求の交渉における模範的なネットワークアクセスシステム信号送信を示す時間−空間図を例示する。図9Aに関して上で述べたように、SIP呼び出しはSIP INVITE要求を発行する顧客サイトで顧客アプリケーションによって開始される。このINVITE要求はPAD40によって捕獲され、CCSC120に渡される。CCSC120はポリシーサーバ48に問い合わせを行う。ポリシーサーバ48はSIP呼び出しの承認およびこのSIPセッション(ポリシー要求において要求されたように)に対するポリシー規則のダウンロードで応答する。CCSC120はそれからINVITE要求を、呼ばれる側へ転送するPAD40に戻す。
【0101】
しかしながら、図9Aに例示された例と対照的に、呼ばれる側はSIP呼び出しを確認するSIP200OKメッセージで応答を行わない。代わりに、呼ばれる側はSIP606NOT ACCEPTABLEメッセージと共に応答する。このメッセージは、要求された呼び出し帯域幅は呼ばれる側のアクセスリンクによってサポートされうるものよりも高くかつ、単に56Kbps接続が可能であるということを示す。INVITE要求によって要求されるように、呼ばれる側の応答は、例えば、単にPCM(パルスコードモジュレーション)または線形予測複合化(LPC)オーディオがサポートされうる(その優先順で)メディア符号化の組を表示する。SIP606NOT ACCEPTABLEメッセージの受信に応答して、PAD40はCCSC120にメッセージを渡す。CCSC120は局所的なポリシーキャッシュ130に問い合わせ、新しい可能性の組を承認する。CCSC120はそれからSIP606NOT ACCEPTABLEメッセージをPAD40に戻し、PAD40はそのメッセージを呼び出し側へ渡す。
【0102】
呼び出し側がSIP606NOT ACCEPTABLE応答を受け取ると、呼び出し側は呼び出し能力要求を調整し、56Kbps帯域幅、LPCオーディオ符号化および満了タイマ120分を特定する別のINVITE要求を発行する。前と同様に、新しいINVITE要求はPAD40によってCCSC120に渡される。CCSC120はそれからその局地的なポリシーキャッシュ130に問い合わせ、リソースの利用可能性に応じて呼び出し期間として100分を限定する。CCSC120はそれからPAD40に対して満了タイマに100分を設定したINVITE要求を戻し、PAD40はINVITE要求を呼ばれる側に送信する。
【0103】
この第2INVITE要求の受信に応答して、呼ばれる側は呼び出し期間として100分を含むすべての呼び出し要求をサポートできるということを決定する。従って、呼ばれる側は満了タイマとして100分が設定されたSIP200OKメッセージで応答する。SIPOK応答の受信に応答して、PAD40は応答をCCSC120に送信し、CCSC120はそのポリシーキャッシュ130を参照してSIPOK応答に搬送されているSIP可能セットをチェックしてそれを承認する。CCSC120はそれからPAD40にSIPOK応答を送信し、PAD40はSIPOK応答を呼び出し側に転送する。呼び出し側がSIPOK応答を受信すると、呼び出し側はその満了タイマを100分に修正してACK要求を介してSIPOKを応答する。PAD40はACK応答をCCSC120に渡し、CCSC120はACK応答に搬送された最終のSIP能力セットを承認する。この承認に引き続いて、CCSC120はPAD40に不活性タイマおよびSIP呼び出しを容易にするための他のパラメータを設定する。CCSC120はまたPAD40にACKメッセージを戻し、PAD40はACKメッセージを呼ばれる側に転送する。呼ばれる側によって、ACK応答が受信されたら、SIP呼び出しは成功裏に確立される。
【0104】
IPマルチキャストの例
現状のネットワークにおいて実施されているように、IPマルチキャスト、すなわち、パケットを2またはそれ以上のレシーバに配送するために通信の「オープングループ」モデルを採用している。この開放グループモデルによれば、ソースはパケットを送信するマルチキャストのアドレスを単に知る必要があるが、マルチキャストセッションに参加している「グループ」の構成員を知る必要はなく、自分たちがマルチキャストパケットを送信しているマルチキャストグループに属している構成員を知る必要もない。さらに、マルチキャストグループメンバーが任意にマルチキャストグループに参加または撤退できるということを意味する、グループメンバーが、登録し、同期しまたは交渉する必要がある中央グループ管理団体はない。
【0105】
マルチキャスト通信の現状のオープングループモデルはマルチキャスト通信の管理またはマルチキャスト通信の制御を許容していないが、マルチキャストグループ構成員の管理および制御は送信者および受信者の両方にとって重要である。送信者にとっては、権限のあるソースのみがパケットをマルチキャストグループに送信できるということが重要である。例えば、コンテンツプロバイダはマルチキャストグループに対する唯一のデータソースとしての独占性を保護したいとしばしば望み、権限のないソースによる洪水によるサービス拒否の攻撃を避けたいと望む。マルチキャストグループにおいてレシーバの組に対しても同様にソースによって権限を与えられた当事者に対するパケットの受信が制限されるように制御することも同様に重要である。例として、ソースはビデオ配信およびビデオ会議マルチキャストパケットを受信することのできるレシーバを制限することを望む。従来のIPマルチキャストオープングループモデルの問題点は上記した通りであるが、この発明のネットワークアクセスシステムの構成(architecture)は図10A−10Hに例示されているようにポリシーに基づくマルチキャストサービス管理を実行する。
【0106】
図10A−10Bをまず参照して、この発明に従う新しいマルチキャストグループの登録を管理するための模範的なネットワークアクセスシステム信号送信を示す時間−空間図が表示される。図10Aに示すように、顧客サイトのホストはPAD40を介してアクセスルータ44にインターネットグループマルチキャストプロトコル(Internet Group Multicast Protocol)(IGMP)ジョイングループレポートメッセージ(Join−Group Report Message)を送ることによってマルチキャストグループ(新しいマルチキャストグループであってもよい)に参加を希望する信号を送る。プロトコルタイプ(PT=2)を検査することによって、IGMPメッセージを捕獲するよう設定されたPAD40のパケットヘッダーフィルタ80はジョイントグループレポートメッセージを外部プロセッサ42のマルチキャストサービスコントローラ(MSC)120に転送する。ジョイントグループレポートメッセージの受信に応答して、MSC120はSPI56を介してポリシーサーバ48に問い合わせる。SPI56はこの場合はLDAPを採用している。ポリシーサーバ48はホストのIPアドレスがマルチキャストグループのための資格のある構成員リストに属しているかどうかを判定するためにポリシーデータベース46を調査することによって問い合わせに応答する。
【0107】
図10Bに示すように、もしポリシーサーバ48が、ホストがマルチキャストグループに参加する資格を有さないと判定したときは、ポリシーサーバ48はジョイングループリクエスト(Join−Group request)を拒否するポリシーをMSC120に戻す。MSC120は、権限を有しないホストが、アクセスルータ44内で新しいマルチキャストグループを登録するのを防ぐジョイングループメッセージを落とすことによって要求の拒否に応答する。MSC120は不正な試みを検出したり、サービスアタックを拒否するイベントログに権限のない試みを書き込んでもよい。
【0108】
代わりに、図10Aに示すように、もしポリシーサーバ48が特定されたマルチキャストグループに参加するホストの要求を認めたときは、ポリシーサーバ48はMSC120に承認を示すポリシー決定を送信する。MSC120はPAD40にジョイングループレポートメッセージを戻す。PAD40はそれからアクセスルータ44にジョイングループレポートメッセージを転送する。もしホストがネットワーク上でのマルチキャストグループの最初の構成員であれば、アクセスルータ44はジョイングループレポートメッセージにおいて報告されたマルチキャストグループをホストが帰属するネットワーク上のマルチキャストグループ構成員のリストに追加する。
【0109】
図10Bおよび図10Cを参照して、マルチキャストグループの構成員を決定しようと努めているホスト構成員の問い合わせを使用した模範的なネットワークアクセスシステム信号送信を例示する時間−空間図を例示する。図10Cに示す例においては、PAD40はアクセスルータ44からネットワークにおいて発生したIGMPホスト構成員問い合わせメッセージを受信する。パケットヘッダーフィルタ80はそのポート番号に基づいてこのIGMPメッセージを捕獲し、ホスト構成員問い合わせメッセージ(Host Membership Query message)を外部プロセッサ42のMSC120に渡す。MSC120はそれからホスト構成員問い合わせメッセージのソースアドレスが権限を有するアクセスルータ44であるかどうかを確認するためにSPI56(この例ではLDAPを採用している)を介してポリシーサーバ48に問い合わせる。
【0110】
図10Bに示すように、もしポリシーサーバ48がポリシーデータベース46を参照して、ホスト構成員問い合わせメッセージが特定されないまたは権限を有さないソースからのものであると判定したときは、ポリシーサーバ48はホスト構成員問い合わせを拒否するポリシー決定をMSC120に戻す。問い合わせの拒否に応答して、MSC120はホスト構成員問い合わせメッセージを落とし、権限のないホスト構成員問い合わせメッセージの洪水によってネットワークに向けられたサービス拒絶を示してもよい、イベントログに警告メッセージを書き込む。
【0111】
他方、もしポリシーサーバ48がホスト構成員問い合わせを承認し、図10Cに示すようにMSC120にそのように指示したときは、ホスト構成員問い合わせはPAD40に戻され、PAD40はホスト構成員問い合わせを顧客サイトのホストに転送する。このように、この発明のネットワークアクセスシステムはホスト構成員問い合わせのポリシーに基づいた管理をサポートしている。
【0112】
図10E−図10Fを参照して、ネットワークに対してマルチキャストパケットの送信を管理するために使用された模範的なネットワークアクセスシステム信号送信の時間−空間図が例示されている。図10E、10Fの両方に示されている例では、顧客サイトのホストは特定のマルチキャストグループにアドレスされたIPマルチキャストパケットを送信する。PAD40が最初のマルチキャストパケットを受信したとき、パケットヘッダーフィルタ80は、そのマルチキャストアドレスを有するパケットが以前受信されたかどうかを決定するための確認をした後でパケットを捕獲する。PAD40はそれから第一マルチキャストパケットを外部プロセッサ42のMSC120に渡す。MSC120は、マルチキャストパケットのソースアドレスがマルチキャストパケットを特定されたマルチキャストグループに送信することを承認されているかをうかを判定するためにSPI56(これはこの場合LDAPを採用している)を介してポリシーサーバ48に問い合わせる。
【0113】
図10Fに示すように、マルチキャストパケットの送信を拒否するポリシー決定の受信に応答して(例えば、マルチキャストパケットを送信するソースは特定されていないかまたは権限を与えられていないために)、MSC120はソースとマルチキャストアドレスのこの組み合わせのためのマルチキャストパケットを落とすようPAD40を設定し、ネットワーク上で特定のソースのマルチキャストパケットの洪水によってサービスの拒絶を示してもよい警告メッセージをイベントログに書き込む。代わりに、もしMSC120がポリシーサーバ48から図10Eに示すようにマルチキャストパケットを承認するというポリシー決定を受信すれば、MSC120はPAD40をアクセスルータ44に対してソースとマルチキャストアドレスのこの組み合わせのためのマルチキャストパケットを直接転送し、最初のマルチキャストパケットをPAD40に戻すよう設定する。PAD40はそれから最初のマルチキャストパケットをアクセスルータ44に転送し、流れの中のすべての続くマルチキャストパケットをMSC120に渡すことなく直接アクセスルータ44に転送する。このように、この発明のネットワークアクセスシステムは承認されたマルチキャストパケットの入来を許容し、権限を有さないパケットの入来を妨げるポリシーベースの決定を利用している。
【0114】
図10G−図10Hを参照して、ネットワークからマルチキャストパケットの受信を管理するために使用された模範的なネットワークアクセスシステムの信号送信の時間−空間図を例示する。図10Gおよび図10Hに示された例においては、アクセスルータ44はネットワークからIPマルチキャストパケットを受信し、それらをPAD40に転送する。最初のマルチキャストパケットの受信に応答して、PAD40のパケットヘッダーフィルタ90はそのマルチキャストアドレスを有するパケットが以前受信されたかどうかを判定した後でマルチキャストパケットを捕獲する。パケットヘッダーフィルタ90はそれから外部プロセッサ42にあるMSC120に最初のマルチキャストパケットを渡す。外部プロセッサ42はマルチキャストアドレスのソースアドレスが特定されたマルチキャストグループへマルチキャストパケットを送信してもよいと承認されているかどうかを判定するためにポリシーサーバ48に問い合わせる。
【0115】
図10Hに示すように、もしポリシーサーバ48が例えば、マルチキャストパケットのソースが特定されていないかまたは権限を有していないという理由で、マルチキャストパケットの受信は権限を有していないと判定したとき、ポリシーサーバ48はMSC120にマルチキャストパケットの受信を拒否するポリシー決定を送信する。マルチキャストパケットの受信の拒否に応答して、MSC120はPAD40をソースおよびマルチキャストアドレスのこの組み合わせに対してマルチキャストパケットを落とすよう設定し、特定のソースアドレスからの権限を有しないマルチキャストパケットが顧客サイトにおいてサブネットワークをあふれさせるような試みを行っているということを示してもよいイベントログに警告メッセージを書き込む。その結果、ソースとマルチキャストアドレスの同じ組み合わせを含む、続くマルチキャストパケットはPAD40によって落とされる。
【0116】
図10Gに示すように、代わりに、もしポリシーサーバ48がマルチキャストパケットの受信を承認すれば、MSC120はソースとマルチキャストのアドレスの同じ組み合わせを含む、続くパケットを顧客サイトに直接転送するようPAD40を設定する。MSC120は最初のマルチキャストパケットをPAD40に戻し、PAD40は最初のマルチキャストパケットおよび続くマルチキャストパケットを顧客サイトに転送する。図10Hに例示するように、流れの中の、続くマルチキャストパケットはPAD40によってMSC120に渡すことなく直接顧客サイトに転送される。
【0117】
結論
述べてきたように、この発明は分散されたネットワークアクセスシステム構成を導入する。この発明の分散されたネットワークアクセスシステム構成は従来の融通のきかないエッジルータを、少なくともフィルタ処理および転送機能を含むプログラム可能なアクセス装置と、PADのポリシーに基づく制御を実行する1またはそれ以上のサービスが特定されたサービスコントローラおよび基本的なルーティングを行うアクセスルータと置き換える。この分散された構成は従来の融通のきかないルータ構成に対して、拡張性、柔軟性、拡大性、相互操作性、セキュリティ、サービス提供性を含む多くの利点を有している。
【0118】
この発明のネットワークアクセスシステム構成は3つの論理モード間の機能性の分散のおかげで従来の融通性のないルータと比べて優れた拡張性を達成している。3つの論理モードは、プログラム可能なアクセス装置、サービスコントローラを提供する外部プロセッサおよびアクセスルータである。特に、プログラム可能なアクセス装置と外部プロセッサによって実行される機能性からアクセスルータによって実行されるルーティングを分離することによって、サービス要求および顧客要求に従って、外部プロセッサモジュールとプログラム可能なアクセス装置とを単に加えることによってアクセスルータに過負荷を与えることなく付加的なトラフィックおよびサービスを処理できる。加えて、インターネットトラフィックパターンは地域的に集中されたものからグローバルに分散されたものまで変化を続けており、地域的なルーティングから離れたネットワークアクセスポイントでのサービスおよびポリシー制御を適応する能力のおかげで、離れた目的地に向かうトラフィックの転送のためのより拡張性のあるデザインを提供できる。
【0119】
この発明の分散されたネットワークアクセスシステム構成はまた改良された柔軟性を提供する。このような柔軟性はプログラム可能なアクセス装置の機能モジュールのサービス制御およびプログラム性を支配するポリシーをサービスプロバイダおよび/または顧客が実行する能力の自然の成り行きである。例えば、プログラム可能なアクセス装置のパケットヘッダーフィルタは、TCP、SIPおよびIGMPのような高い層のプロトコル情報とSA、DA、TOS/DSCP、PT、SPおよびDPの任意の組み合わせに基づくパケットフローとを区別するよう設定されうる。加えて、プログラム可能なアクセス装置のモニタは外部プロセッサのサービスコントローラによって、SA、DA、TOS/DSCP、PT、SP、DPまたは他のフィールドの任意の組み合わせに対する統計を収集しかつ収集された統計に基づいてイベント(例えば、過度のTCP再送信およびRTP/UDP不活性)を報告するよう外部プロセッサのサービスコントローラによってプログラムされうる。そのようなモニタのひとつの特別に有益な応用は、活性化されたSLAがネットワークを通して維持されることを確実にするために異なるレイヤ2、レイヤ3、レイヤ4およびより高いレイヤのトラフィックタイプに対する統計を追跡することである。ネットワークにおける動的SLAを提供するためのこのポリシーに基づくアプローチはSLAに対する現在のTDM(時分割多重化)よりもより柔軟性のある解決方法である。
【0120】
拡張性の利点は部分的には、外部プロセッサにおけるサービスコントローラによって提供されるサービスに特定された制御によって生じる。そのようなサービスに特定された制御は専用化されたサービスコントローラかまたは各々がサービスに特定されたAPIをサポートする汎用コントローラのいずれかで実行されうる。選択された実施例にかかわらず、新しいサービスが単に新しいサービスコントローラを加えるかまたは既存のサービスコントローラを単に修正するだけで導入しうる。新しいサービスの追加はプログラム可能なアクセス装置、アクセスルータまたは他のサービスコントローラに対して何の変更も要求しない。このように、他のサービスはサービスの向上時に妨げられない。さらに、サービスコントローラはプログラム可能なアクセス装置およびアクセスルータと独立しているため、新しいサービスの発展および既存のサービスの改善は独自性の強いハードウエアの供給メーカに依存しない。このことは、サービスの開発および改善のための時間とコストを大幅に減少させる。
【0121】
この発明の拡張性はプログラム可能なアクセス装置において実行されてもよい追加のモニタ機能にまた起因する。これは例えば、メモリダンプおよび他の関連した情報をサービスコントローラにセーブし、報告することによって標準に適合しているかどうかを検証し、コードをデバッグしおよび故障診断を手助けする等を含む。そのような能力は従来のスイッチまたはルータに一体化されず、外部ネットワークモニタ装置を追加することによってのみ通常は達成される。この発明によって提供される向上した使用モニタはサービスプロバイダがネットワークリソース(すなわち能力)を動的に、一方でSLAに適合した状態で販売することを可能にする。これはネットワークの使用を改良するだけでなく、ネットワーク管理費用を減らすトラフィックエンジニアリングを自動化する。
【0122】
上記したように、この発明の分散されたネットワークアクセスシステムはプログラム可能なアクセス装置、サービスコントロールを提供する外部プロセッサおよびアクセスルータ間でネットワークアクセス機能を分散する。これらの異なる要素は明確に定義されたインターフェイスを介して通信するため、相互運用性は同じ供給メーカによって開発されるすべてのハードウエアまたはソフトウエア要素に依存しない。
【0123】
この発明はサービスの窃盗およびネットワークに対する攻撃に対するセキュリティを向上させている。例えば、プログラム可能なアクセス装置の転送機能はより低い安全環境に置く一方で、外部プロセッサは、安全な環境に維持されてもよい。加えて、安全ソフトウエアおよび/またはハードウエアは、容易に外部プロセッサに一体化される。その結果、(他の権限のない通信と同様に)、そのマスタ外部プロセッサ以外のIPアドレスからのプログラム可能なアクセス装置を設定したセッションはネットワークに渡されることなく、プログラム可能なアクセス装置のパケットヘッダーフィルタによって拒絶される。
【0124】
この発明はまた向上したサービスを提供できる。プログラム可能なアクセス装置がネットワークを、転送およびアプリケーションレベルをメッセージを遮断し、それによって、アプリケーションとユーザの特定を可能とするため、この発明のネットワークシステムはユーザアプリケーションのデータフローに対して適切な優先権の確立または望ましい帯域幅の提供が可能になる。例えば、RSVPおよびLANサブネット帯域幅マネージャ(SBM)を採用することによって、顧客のアプリケーションは保証された帯域幅および局地的および広い領域におけるネットワークにおいて端末相互間で優先権を提供される。重要なことは、利用可能なネットワーク能力に基づいて顧客のアプリケーションに対して帯域幅の予約、許可制御の実行およびトラフィックの流れを優先させることを可能にするポリシーは、サービスプロバイダだけでなく、顧客によってでも決定されうる。このように、顧客のアプリケーションは、動的にサービスを提供し、アプリケーションに保証されたサービスの質を提供するためにサービスプロバイダネットワークのリソースと相互作用できる。ポリシー制御によって実施されるこのネットワークに基づいた提供は、時間のかかるまたエラーの多いOSS(オペレーションおよびサポートシステム)の提供に取って代わり、それによってIPを中心とした顧客アプリケーションのためのネットワーク提供に対する集中とコストを削減する。
【0125】
上記利点があるとしても、この発明の分散されたネットワークアクセスシステム構成はコスト的に効率のよいネットワークソリューションを提供できる。現在のところ、サービスプロバイダに対する傾向はより「インテリジェント」でありそれゆえより高価な装置を自分たちのネットワークデザインの端部に設置することが推し進められている。しかしながら、このデザインは顧客に対してインテリジェントでそれゆえ高価なCPE(顧客施設装置)を購入することを要求する。一方、この発明の分散されたネットワークアクセスシステム構成は比較的安価なPADをサポートし、このPADは顧客が不当な出費なしでサービスの配送を提供できるための十分なインテリジェンスを購入することを可能にする。
【0126】
発明が好ましい実施例を参照して示しまた述べられたが、当業者にとって発明の精神および範囲から離れることなくその中で形式および詳細において各種の変更がされることが理解される。例えば、この発明の局面はこの発明の機能に向けられたソフトウエアを実行するコンピュータシステムに関して述べられたが、この発明は代わりにデータ処理システムと共に使用されるプログラムプロダクトとして実行されてもよい。この発明の機能をポリシーしたプログラムは各種の信号を担持する媒体を介してデータ処理システムに配送されうる。そのような媒体は、特に限定はないが、再書き込みのできない記録媒体(例えばCD−ROM)、再書き込み可能な記録媒体(例えばフロッピーディスクまたはハードディスクドライブ)、およびデジタルおよびアナログネットワークのような通信媒体を含む。それゆえ、そのような信号を担持した媒体は、この発明の機能に向けられたコンピュータ読み取り可能な命令を搬送または符号化したとき、この発明の代わりの実施例に相当するということを理解すべきである。
【図面の簡単な説明】
【図1A】集合体とコアルータを含む、先行技術のインターネットサービスプロバイダネットワークの都市図である。
【図1B】この発明に従うインターネットサービスプロバイダネットワークの都市図である。
【図2】この発明に従う通信ネットワークの例示的な実施例を示す図である。
【図3】この発明に従うプログラム可能なアクセス装置(PAD)の模範的な実施例のより詳細なブロック図である。
【図4】この発明に従う外部プロセッサの模範的な実施例のより詳細なブロック図である。
【図5A】一次サービスコントローラの故障による、二次サービスコントローラへの切り替え時のプログラム可能なアクセス装置と外部プロセッサとの間の模範的な信号送信を例示する図である。
【図5B】一次サービスコントローラの回復後の、二次サービスコントローラから一次サービスコントローラへの切り替え時のプログラム可能なアクセス装置と外部プロセッサとの間の模範的な信号送信を示す図である。
【図6】リソース予約プロトコル(RSVP)を使用したサービス予約をサポートするための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7A】TCPセッション中の模範的なプログラム可能なアクセス装置の動作を例示する状態機械図である。
【図7B】TCP状態メモリが満杯の場合の模範的なプログラム可能なアクセス装置および関連したサービスコントローラの動作を例示する図である。
【図7C】TCPセッション確立時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7D】TCPセッションの切断時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7E】TCPセッションのための承認された要求に応答して、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図7F】TCPセッションタイムアウト時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7G】TCPセッションが突発的に終了したときの、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8A】向上したサービスの質(QoS)経路を有するUDP(ユーザデータグラムプロトコル)セッションを確立するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8B】UDPセッションにおけるパケットが向上されたQoSよりも最善努力型の搬送を受信した場合の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8C】タイムアウトしたUDPセッションをテアダウンするための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9A】セッション開始プロトコル(SIP)呼び出しを確立するときの、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図9B】SIP呼び出し終了時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9C】ネットワークによってタイムアウトが検出した後でSIP呼び出しを終了するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9D】プログラム可能なアクセス装置によるタイムアウトの検出後のSIP呼び出しを終了するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9E】SIP呼び出し交渉時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図10A】マルチキャストグループの登録を認めるための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10B】マルチキャストグループの登録をするための権限を有さない試みに応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10C】承認されたマルチキャストグループ構成員の問い合わせに応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10D】権限を有さないマルチキャストグループ構成員からの問い合わせに応答した、この発明に従うネットワークアクセスシステムのおける模範的な信号送信を例示する図である。
【図10E】ネットワークの外部から承認されたマルチキャストパケットの受信に応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10F】ネットワークの外部から権限を有さないマルチキャストパケットの受信に応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図10G】ネットワークからの承認されたマルチキャストパケットの受信に応答したこの発明に従うネットワークアクセスシステムおける模範的な信号送信を示す図である。
【図10H】ネットワークから受信した権限を有さないマルチキャストパケットを処理するための、この発明に従うネットワークアクセスシステムおける模範的な信号送信を例示する図である。
【発明の背景】
【0002】
【技術分野】
この発明は一般に通信ネットワークに関し、特に、IPを中心にした通信ネットワークに関する。より特定的には、この発明は分散され、分離されたルーティング(routing)、信号送信、サービス制御、フィルタ処理、ポリシー制御およびIP転送からの他の機能を有するネットワークアクセスシステムを有するIPに基づく通信ネットワークに関する。
【0003】
【関連技術の説明】
インターネットは、起点と1またはそれ以上の目的地の間でデータパケットが通信するために、全てがTCP/IP(Transport Control Protocol/Internet Protocol)の組を用いている、異質な通信ネットワーク、関連するゲートウエイ、ブリッジおよびルータの世界的規模の収集物であると一般に定義される。当業者によく知られているように、TCP/IPプロトコルの組は国際標準化機関の開放型システム間結合(ISO/OSI)の参照モデルのレイヤ3および4(ネットワーク層およびトランスポートレイヤ層)に対応する。OSI参照レベルは通信プロトコルを明確にするための便利なフレームワークを提供している。ISO/OSI参照モデルはさらに、ネットワークおよびトランスポート層の下に物理層およびリンク層(それぞれレイヤ1および2)を、またネットワークおよびトランスポート層の上にセッション層、プレゼンテーション層およびアプリケーション層(それぞれレイヤ5から7)を含む。
【0004】
図1Aは顧客がインターネットにアクセスすることができる、インターネットサービスプロバイダ(ISP)ネットワーク10の都市レベルの一覧を例示する。左手側から始まって、多くの顧客のローカルエリアネットワーク(LAN)14が各種の都市アクセスネットワーク16を介してISPネットワーク10にインターフェイスされている。都市規模のアクセスネットワーク16は多数のリングを有する任意の多くのネットワーク技術を採用している。例えば、時分割多重方式(TDM)、非同時転送モード(ATM)およびイーサネットである。さらに、大きな都市規模のエリアにおいて典型的であるが、都市規模のアクセスネットワーク16には多数のリングを有する多数の階層のレベルがあり、多数のリングは各顧客を集合サイトおよび多数の最も低いレベルの集合サイトに接続して、高いレベルの集合サイトに供給する。典型的には、都市エリアにおいて集合ルータ12が配置された集合サイトはほんの少数かもしれない。図1Aはただひとつのそのような集合サイト17を示している。LAN14からのすべてのトラフィックはこれらの集合ネットワークを介してこの集合サイト17へ逆送され、この集合サイト17では、集合ルータ12が取り締まり、マーク付けおよび許可制御のようなポリシー主導処理を適用している。集合ルータはそれからトラフィックを別の顧客LAN14に戻すかまたはあるより遠い目的地へ向けてコア20を通って送信するためにコアルータ18に経路を選択する。
【0005】
図1Aに示すように、ルータデザインにおける最新技術がだいたいにおいてネットワークデザインに影響を与える。というのは、ルータは高価であり、高度に集合したトラフィックフロー状態で動作されなければならないからである。そのようなネットワークの設計における主な考慮は、ルーティングプロトコルが効率的に拡張するようにルータの数を最小にする点に払われる。これは、ルーティング、データベース格納およびポリシーの執行等の多くの機能がこれらのルータに集中されることを意味する。
【0006】
先行技術において、ルータの構造は一般に融通がきかず、独自性が強いものであった。結局基本的なパケットルーティングに加えてサービスプロバイダが提供できるデータサービスの範囲はルータ供給メーカによって提供された制御ソフトウエアによって限定される。加えて、ルータのパケット処理能力はもともとインストールされた処理ハードウエアによって一般に限定され、ルータ全体を交換することなく拡張または拡大されることはなかった。従来のルータの融通のきかなさおよび独自性の強さがこの発明によって手当てされる多くの問題を提起している。
【0007】
第一に、ルータは伝統的にすべてのメッセージタイプのためにすべてのサービスを提供する単一のコントローラを有しているため、エッジルータコントローラは非常に複雑になる傾向があり、現存のサービスに対して新しいサービスを加えたり修正したりすることが困難でかつ高価である。その結果、新しいルータに基づくサービスを市場に出すまでの時間が長くかかり、かつサービスプロバイダの要求に応答する供給メーカに依存して、メーカの独自性の強いルータ構造内で新しいサービスを実行するのが常であった。
【0008】
第二に、従来の融通のきかないルータ構造は拡張性が十分でなく、サービスプロバイダに対して重要な問題を提起していた。特に、インターネットトラフィックの驚異的な成長に照らして重要な問題を提起していた。その結果、配備されたルータの処理能力は増加するトラフィックに対応して容易に拡張できない。代わりに、サービスプロバイダは増加するトラフィックの要求に合わせるために追加のルータを購入したり、ルータを交換しなければならなかった。
【0009】
第三に、従来の融通の利かないルータ設計は柔軟性および拡張性に限界があった。例えば、この発明はインターネットトラフィックの急速な成長にかんがみて、IPベースのサービスに対してアクセス能力をダイナミックに提供し、改造しおよび/またはアクセス能力を再割り当てすることが望ましいと認識する。アクセス能力は必然的に限定され、追加のアクセス能力を提供することはネットワークの大きなコスト要素であるため、インテリジェントな許可制御ポリシーの執行および質を変えたサービスの提供は利用可能なアクセス能力の効率のよい使用のためにはきわめて重要である。しかしながら、従来のエッジルータはポリシー制御を執行しながらトラフィック形式の幅広い種類の分類ができず、能力に対するダイナミックな要求に答えることもできず、この機能性は現在採用されている融通のきかないエッジルータ内に組み込むことが困難である。従って、この発明は商品化されたハードウエアの下で、上記および追加のポリシー制御、ネットワークモニタ、診断およびセキュリテイサービスを提供し、一方でこれらのサービスを個々の顧客およびサービスプロバイダのニーズに合うように調整することを許容することが望ましいということを認識する。
【0010】
第四に、ルータ構造およびサービスの独自性の強さのために、もしサービスプロバイダが通信ネットワークにおいて複数の供給メーカからルータを配備すると、異なるルータ供給者によって実行される独自性の強いサービスは必ずしも相互間で動作しない。その結果、サービスプロバイダは一つの供給者からルータおよびスイッチを購入することができず、サービス制御ソフトウエアを他の供給者から購入する。さらに、サービスプロバイダは既存のベースネットワーク能力を利用して付加価値データサービスを提供するために大規模なプロバイダに対してその通信ネットワークを提供できない。
【0011】
先行技術における、上記および追加の欠点にかんがみて、この発明は従来の融通のきかないルータ構造の限界に対処しかつ克服する新しいネットワークアクセスを導入することが望ましいということを認識する。
【0012】
【発明の要約】
この発明はプログラム可能なアクセス装置を含む分散されたネットワークアクセスシステム構造を導入する。
【0013】
プログラム可能なアクセス装置はパケットがネットワークと通信するための第一および第二のネットワークインターフェイスと、第一および第二のネットワークインターフェイス間で通信されるパケットのルーティングに使用する転送テーブルとパケットヘッダーフィルタとを含む。パケットヘッダーフィルタは規格に基づいたサービスが実行される第一および第二ネットワークインターフェイスの一つで受け取ったメッセージを特定し、特定されたメッセージをメッセージインターフェイスを介して処理のために外部プロセッサに渡す。好ましい実施例では、パケットヘッダーフィルタはレイヤ(layer)3よりも高いプロトコルレイヤに関連するプロトコル情報に基づいてサービス処理のためのパケットをフィルタ処理することができる。好ましい実施例では、プログラム可能なアクセス装置は、セッション活動レベルのようなイベントを外部プロセッサに報告する使用モニタと、プログラムされたトラフィックパラメータを参照することによってパケットを取り締まるポリサ(policer)と、サービスクラスの複数の質をサポートするために、発信パケットの送信を予定するスケジューラとを含んでもよい。
【0014】
プログラム可能なアクセス装置に加えて、分散されたネットワークアクセスシステム構造は、好ましくは外部プロセッサとアクセスルータとを含む。このように、この発明によれば、従来の融通のきかない、独自性の強いエッジルータは3つの論理モジュール、すなわちプログラム可能なアクセス装置、外部プロセッサおよびアクセスルータの間で、(追加の機能性に加えて)従来のエッジルータの機能性を割り当てる、分散されたネットワークアクセスシステムと置き換えられる。この発明の好ましい実施例によれば、アクセスネットワークの入出力ポート間のパケットの基本的なルーティングはアクセスルータのよって実行される。しかしながら、転送および、マーク付け(marking)、取り締まり(policing)、モニタ(monitoring)、シェイピング(shaping)およびフィルタ処理(filtering)のような一般のトラフィック調整機能は、プログラム可能なアクセス装置において実行され、メッセージ解釈、信号送信、許可制御およびポリシー実施のようなサービス機能は外部プロセッサにおいて実行される。以下に詳細を示すように、この機能性の分散は、改良された拡張性、柔軟性、拡大性、相互操作性、セキュリテイおよびサービス提供を含む多くの利点を結果としてもたらす。
【0015】
この発明の追加の目的、特徴、利点は以下の詳細な記載から明らかになるであろう。
【0016】
【好ましい実施例の詳細な説明】
発明の特徴であると考えられる新規な特徴は添付のクレームにおいて述べられる。しかしながら、発明自身、および使用の好ましいモード、さらなる目的およびその利点は、添付された図面と共に読まれたとき例示的な実施例の以下の詳細な記述を参照して最もよく理解されるであろう。
【0017】
分散されたネットワークアクセスシステム構造
図面を再び参照して、特に図2を参照して、この発明に従う分散されたネットワークアクセスシステム31を有する通信ネットワーク30の一部の高レベルのブロック図が示されている。例示されているように、通信ネットワーク30はアクセスライン34によって(顧客ルータ32によってその一つが表わされる)多くの顧客の装置に接続されてもよい。図1にあるように、アクセスライン34は、イーサネット、SONET、ATMおよびフレームリレー(frame relay)のような一般に使用される転送ネットワークの多くの任意のものを使用してもよく、例示されていない集合体ハードウエアをさらに含んでもよい。
【0018】
従来のネットワークと同様に、通信ネットワーク30は1またはそれ以上のコアルータ36に接続された1またはそれ以上のコア通信リンク38(例えばトランクリンク)を含む。しかしながら、図1に例示されているような従来の通信ネットワークと対照的に、顧客ルータ32は融通のきかない、独自性の強いエッジルータを介して通信ネットワーク30にインターフェイスを介して接続していない。代わりに、顧客ルータ32のような顧客装置は、プログラム可能なアクセス装置(PAD)40、外部プロセッサ42およびアクセスルータ44からなる、3つの論理モジュール間で(追加の機能性のみならず)、従来のエッジルータの機能を分散するネットワークアクセスシステム31を介し、通信ネットワーク30にインターフェイスを介して接続されている。この発明の好ましい実施例によれば、アクセスネットワークの入出力ポート間のパケットの基本的なルーティングは外部ゲートウエイプロトコル(Exterior Gateway Protocol)(EGP)および内部ゲートウエイプロトコル(Interior Gateway Protocol)(IGP)ルーティングテーブル52および54によって決定され、転送テーブル50を参照することによってアクセスルータ44によって実行される。しかしながら、転送および、マーク付け、取り締まり、モニタ、シェイピングおよびフィルタ処理のような一般的トラフィック調整機能は、PAD40によって実行され、メッセージ解釈、信号送信、許可制御および取り締まり実施のようなサービス機能は外部プロセッサ42によって実行される。この機能の分散が与えられると、着信および発信パケットは、PAD40、アクセスルータ44およびコアルータ36(および、ATMまたはMPLSスイッチ60のような選択的に追加されるアクセスネットワークのスイッチ)を介してコア通信リンク38と顧客ルータ32との間で典型的に通信が行われる。しかしながら、もし、PAD40のフィルタ処理機能が追加のサービスを要求しているパケットの流れを検出したとき、PAD40は適切なメッセージをメッセージ報告およびコントロールインターフェイス(Message Reporting, and Control Interface)(MCRI)58を介してサービス処理のために、外部プロセッサ42に送り、これはPAD40と外部プロセッサ42上でアプリケーションプログラミングインターフェイス(Application Programming Interface)(API)を介してアクセスされうる。アクセスルータ44、PAD40および外部プロセッサ42間の分散機能性はこのようにして、サービスプロバイダ(または第三者)に、PAD40の転送動作やアクセスルータ44のルーティング動作または機能性に影響を与えることなく、既存のサービスを拡張および修正し、新しいサービスを創造し、または外部プロセッサ42により大きな処理能力を加える自由を提供する。
【0019】
PAD40および外部プロセッサ42のための所望の機能性を実行するために、サービスプロバイダ(または顧客または第三者)は1またはそれ以上のポリシーサーバ48(またポリシー決定点(PDP)として呼ばれる)のポリシーデータベース46内にポリシー規則を定義することができる。ポリシーサーバ48はそれからポリシーデータベース46内に格納されたポリシー規則を参照して、PAD40および外部プロセッサ42の機能性および動作を制御するポリシー決定を行う。ポリシーサーバ48は外部プロセッサ42および/またはPAD40のためのポリシー決定および関連した設定パラメータをサービスポリシーインターフェイス(Service Policy Interface)(SPI)56を介して外部プロセッサ42に連絡する。サービスポリシーインターフェイス(SPI)56は例えばポリシーサーバ48および外部プロセッサ42上のAPIを介してアクセスされうる。SPI56を介した通信は共通オープンポリシーサービス(Common Open Policy Service)(COPS)およびライトウエイトディレクトリアクセスプロトコル(Lightweight Directory Access Protocol)(LDAP)を含む多くのポリシー問い合わせプロトコルの任意のものを使用できる。これらはそれぞれインターネットエンジニアリングタスクフォース(Internet Engineering Task Force)(IETF)RFCs2748および2251によって定義されており、ここに参照により引用する。外部プロセッサ42はもしあれば、PAD40のための設定パラメータをMCRI58を介してPAD40に伝達する。
【0020】
以下にさらに述べるように、ネットワークアクセスシステム31は、サービスプロバイダ(または第三者であっても)に、機能性をサポートするためにサービスコントローラを開発し、外部プロセッサ42にサービスコントローラをインストールすることによって外部プロセッサ42に追加の機能性を持たせることを許可する。追加の機能性はNMS(Network Management System)(ネットワーク管理システム)72を使用してネットワークアクセスシステム31で実行されうる。ネットワーク管理システムははOSS(Operation and Support System)(オペレーションおよびサポートシステム)とも呼ばれる。NMS72はインターフェイス73−77を介してネットワークアクセスシステム31の要素の各々をモニタし、制御し、アラームを報告しかつ設定する(例えばIPアドレスを割り当てる)。NMS72は、例えば、外部プロセッサ42におけるサービスコントローラからのメッセージに応答して、適切な顧客に対するサービスコストを割り当てる、請求書作成および経理装置を好ましくは含む。
【0021】
図2にさらに例示するように、この発明のネットワークアクセスシステム31は、ネットワークスイッチの配置および実行において柔軟性を許容する。例えば、ATMまたはMPLS(Multi−Protocol Label Switching)(マルチプロトコルラベルスイッチング)ネットワークは、1またはそれ以上のPAD40をATMまたはMPLSスイッチ60を介して、アクセスルータ44のポートに接続するために使用され、それによってアクセスルータ44とは別に機能ブロック62および64の信号送信および取り締まりの実行が許容される。しかしながら、もしアクセスルータ44によって信号送信が実行されたなら、スイッチ60は除去されうる。スイッチ60はアクセスルータ44とコアルータ36集合スイッチとの間に代案として置かれうる。さらに、アクセスルータ44は大きなPAD40を制御するルーティングソフトウエアを実行する外部プロセッサ42によって実現されてもよい。
【0022】
プログラム可能なアクセスデバイス(PAD)
図3を参照して、この発明に従うPAD40の模範的な実施例を含む論理要素のハイレベルブロック図が例示されている。上記したように、PAD40はプログラム可能なアクセス装置であって、マーキング、取り締まり、モニタリング、および受信および発信パケットのシェイピング(shaping)の任意の所望の組み合わせを実行する、他のトラフィック調整機能モジュールと共に、要求された転送およびパケット分類機能を含む。典型的な実施例においては、PAD40は例示されたモジュールの機能性を提供するために協同するソフトウエアと従来のルータの組み合わせとして実行される。(図3において、点線の例示は選択的な機能モジュールを示すために使用される)。
【0023】
一般的に言って、PAD40の機能モジュールは着信(例えば顧客ルータ32から)および発信(例えば顧客ルータ32へ)トラフィック経路において論理的に配置される。着信経路は、パケットヘッダーフィルタ80と、マーカー/ポリサ82とモニタ84と、転送テーブル86および出力バッファおよびスケジューラ88を含む。出力経路は同様にパケットヘッダーフィルタ90と、転送テーブル86と、モニタ92と、マーカー/シェイパ(marker/shaper)94と、出力バッファおよびスケジューラ96とを含む。これらの機能モジュールのすべての機能はMCRI58を介して外部プロセッサ42によって独立して設定されるかまたはプログラムされうる。
【0024】
PAD40の外部インターフェイスで顧客ルータ34から受け取った着信パケットは、パケットヘッダーフィルタ80によってまず処理される。パケットヘッダーフィルタ80はソース(source)アドレス(SA)、目的地(Destination)アドレス(DA)、サービスのタイプ(TOS)、ディフサーブコードポイント(Diffserv Codepoint)(DSCP)、ソースポイント(SP)、目的地ポート(DP)、のプロトコルタイプの任意の一つまたは組み合わせを使用して、各種メッセージタイプとパケットの他のフィールド(例えば、SYN、ACK、RSTおよびFIN TCPフラグのようなレイヤ4およびより高いフィールド)とを区別する。パケットヘッダーフィルタ80はパケットの他のフィールドにおいてフィルタ処理するように設定される。重要なことは、レイヤ3情報でフィルタ処理するのに加えて、パケットヘッダーフィルタ80はより高いレイヤ(すなわちレイヤ4−7)メッセージタイプ、または特定のフィールドであるかを特定する能力を有し、これらのメッセージを設定されたフィルタパラメータに基づいて外部プロセッサ42から/へ転送する。このように、そのフィルタ設定および着信パケットのフィールドに基づいて、パケットヘッダーフィルタ80はパケットをメッセージインターフェイス100を介して外部プロセッサ42へ、または特定のマーカー/ポリサ82へ導く。メッセージインターフェイス100は外部プロセッサ42によって特定されたパケットをパケットヘッダーフィルタ80および90のいずれかに注入してもよいということに注意のこと。
【0025】
パケットヘッダーフィルタ80からのパケットの流れの受信に応答して、マーカー/ポリサ82は、パケットの流れが制御インターフェイス104によって確立されたトラフィックパラメータに適合しているかどうかを決定するために、1またはそれ以上のトークンまたはもれやすいパケットアルゴリスムを適用することによってパケットの流れを取り締まる。取り締まり機能の結果、マーカー/ポリサ82は適合しないパケットを捨て、適合しないパケットにマークを付け(例えばより高いまたはより低い優先度で持って)、および/またはその設定に応じて、不適合なパケットをカウントしてもよい。マーク付けが要求されるならば、マーカー/ポリサ82は、特定のパケットの流れのために制御インターフェイス104によって設定されたように、IPパケットヘッダ、および/または3ビットMPLS実験フィールドおよび/または20ビットMPLSラベルフィールドおよび/または他のフィールドの区別されたサービス(Diffserve)/TOSバイトにビットを設定してもよい。
【0026】
着信経路内において、異なる機能を有する1またはそれ以上のモニタ84が選択的に含まれてもよい。例えば、これらのモニタ84は、異なるレイヤ2、レイヤ3、レイヤ4およびより高いレイヤのトラフィックタイプ(例えばサービスレベルアグリーメント(Service Level Agreement)(SLA)をモニタするために)のための、統計を追跡する使用モニタを組んでもよい。モニタ84は報告インターフェイス102およびMCRI58を介して外部プロセッサ42にメモリダンプや他の関連した情報をセーブおよび報告することによって、標準に適合することを実証しかつコードデバッグおよび障害診断を援助する障害/トラブルシューティング/デバッキングモニタをまた含んでもよい。報告メッセージを調整するために、しきい値および他の基準を報告イベントを実施するために設定してもよい。モニタ84によって送られる報告メッセージは特定の規格に対して使用情報を要約し、高い優先度を有するトラフィックの流れの発生を報告し、帯域外トラフィックの大きな量に対して外部プロセッサ42に警告を発し、モニタされた流れの不活性を報告等をしてもよい。
【0027】
パケットヘッダーフィルタ80(および選択的にマーカー/ポリサ82およびモニタ84)によって処理された後、着信パケットは転送テーブル86によって処理される。転送テーブル86は各転送経路のための入力を維持し、各転送経路は、DA、SA、TOS、PT、SP、DP、着信ポートおよび、PAD40がアクセスネットワークを介してアクセスルータ44へパケットを転送する、対応する出力ポートのような、パケットフロー属性によって表わされる。これらの転送テーブル入力を利用して、転送テーブル86はパケットを適切な出力ポートに転送し、パケットを出力バッファおよびスケジューラ88に渡す。
【0028】
出力バッファおよびスケジューラ88は、通信ネットワーク30を介して送信する準備のできたパケットをバッファし、そのようなパケットの送信を予定する。出力バッファおよびスケジューラ88内でのバッファは単一のバッファまたは好ましくは複数のバッファを含むことができ、複数のQoS(Quality of Service)クラス、または各個々のフローに対するQoSさえもサポートするよう好ましくは設定される。例えば、バッファスペースの割合または固定された量は、トラフィックの一般的クラスまたはDA、SA、TOS、PT、SPおよび/またはDPによって分類される特定のトラフィックの流れの役に立つ待ち行列に割り当てられる。その後、パケットスケジューラは加重されたラウンドロビン(round robin)および/または他のアルゴリスムを、異なるトラフィックフローを多重化した複数の待ち行列に適応する。バッファリングおよびスケジューリング機構の組み合わせはパケットをPAD40を介して送信するために、待ち行列の遅れの上で限度を設けることができ、このようにして、選択されたトラフィックフローに対してQoSジッターパラメータのための境界値を保証する。バッファおよびスケジューラ88は、通信を最適化するために、CBQ(Class−Based Queuing)(クラスに基づく待ち行列)、WFQ(Weighted Fair Queuing)(加重された公平行列)、WRR(Weighted Round Robin)(加重されたラウンドロビン)または他のリンクを共有するアルゴリスムを適用することができる。
【0029】
PAD40を介した発信経路は、マーカー/ポリサ82の代わりにマーカー/シェイパ94を含む点を除いて、着信経路と似ている。当業者にとって理解されるように、マーカー/シェイパ94は、発信パケットフローの遅延、ジッタおよび紛失を制御するために、出力バッファおよびスケジューラ96内で個々のフローのための異なるQoSクラスに役立つ各種待ち行列のために、不適合なパケットを廃棄し、適切な出力バッファへのマークされたパケットを送信し、または単に不適合なパケットを数える。
【0030】
この発明に従うPAD40はトラフィック管理およびポリシー制御を行うためにネットワークにおいて多くの位置に配置される。例えば、PAD40は顧客装置を局地的に配置された外部プロセッサ42によって制御されるプロバイダのネットワークに接続する、顧客アクセスネットワーク(例えば、ファイバ、xDSL、ケーブルモデム、WAP(無線アクセスプロトコル)など)に配置されうる。代わりに、PAD40は顧客のサイトと専用回線、FR、ATM、MPLSまたはイーサネットアクセスネットワークで接続されたサービスプロバイダのポイントオブプレゼンス(POP)に配置されうる。この発明に従うPAD40はプロバイダのPOPまたは顧客のサイトにあるサーバファーム(server farm)に対面してPAD40に配置されうる。そのようなPAD40の分散されたネットワークがアクセスルータ44にパケットを転送する方法は制御インターフェイス104を用いて外部プロセッサ42によって転送テーブル86に設定される。
【0031】
外部プロセッサ
図4を参照して、この発明に従う外部プロセッサ42の好ましい実施例を含む論理要素がハイレベルなブロック図で例示されている。外部プロセッサ42はソフトウエアおよびハードウエアの両方またはその一方を用いて実現され、ハードウエアは汎用のコンピュータハードウエアまたは特定目的のハードウエアを含みうる。PAD40をハードウエア上で実行する外部プロセッサ42のソフトウエアのみでの実施も可能ではあるが、外部プロセッサ42は、追加のおよび/またはより高い性能の外部プロセッサハードウエアによって容易に拡張される外部プロセッサ42によって実行されるサービス処理を許容するためにスタンドアロンのハードウエアで好ましくは実施される。PAD40によって実行される転送機能からの外部プロセッサ42を分離したため、PAD40の転送性能を悪化させることなく、アクセストラフィックパターンに応答して外部プロセッサ42内でリソース(resource)の処理をダイナミックに割り当てることが可能となる。さらに、図4に示すように、PAD40から分離して外部プロセッサ42を実行することによって、外部プロセッサ42は複数のPAD40aおよび40bに役立つか、代わりに、複数の外部プロセッサ42が単一のPAD40に役立つようになった。単一のPAD40を複数の外部プロセッサ42と関連付けることにより、障害時の許容範囲が向上する。
【0032】
好ましい実施例において、外部プロセッサ42はまず3つの処理のタイプを実行する。これは、ポリシーサービスの実行、アクセスネットワーク接続のセットアップおよびテアダウン(tear down)のための信号送信、および1またはそれ以上の関連したPAD40の設定である。これらの異なる処理機能を調整するために外部プロセッサ42は1またはそれ以上のサービスコントローラ120を含む。サービスコントローラ120は、それぞれがそれぞれのサービスのタイプに応じてこれら3つの機能を好ましくは制御する。例えば、サービスコントローラ120は会議呼び出しサービスコントローラ(Conference Call Service Controller)(CCSC)、イーコマースサービスコントローラ(E−Commerce Service Controller)(ECSC)、IP電話サービスコントローラ(IP Telephony Service Controller)(IPTELSC)、リザーブド帯域幅サービスコントローラ(Reserved Bandwidth Service Controller)(RBSC)、マルチキャストサービスコントローラ(Multicast Service Controller)(MSC)の任意のものおよびすべてを含んでもよい。そのようなサービスに特有の制御は専用のサービスコントローラと共に、または各々がサービス特有のAPIをサポートする一般のコントローラと共に実行されうる。各サービスコントローラは、PAD40と共に活性化されたセッションのすべてを記録するセッションテーブルを好ましくは維持する。
【0033】
図4にさらに示すように、外部プロセッサ42は各関連したPAD40に対して、それぞれのPADコントローラ124を含む。サービスコントローラ120の指示の下で、コントロールインターフェイス104によって理解されるコマンドまたはスクリプトを実行することによって各PADコントローラ124は転送テーブル86、パケットヘッダーフィルタ80および90、マーカー/ポリサ82、マーカー/シェイパ94、モニタ84および92、関連したPAD40のスケジューラ88および96を設定する。外部プロセッサ42はまた各関連したPAD40のためのそれぞれのメッセージプロセッサ122を含む。メッセージプロセッサ122は、各々が関連したPAD40のメッセージインターフェイス100へおよびそこからメッセージを通信する。PAD40からのメッセージを受けると、これは通常は顧客ルータ32から受けたメッセージであるが、メッセージプロセッサ122はメッセージを解析し、(サービスのタイプによって決定されるように)適切なサービスコントローラにその内容を知らせる。図4に示されているように、所与の時間において、必ずしもすべてのPAD40がすべてのサービスのタイプを処理するよう構成されていない。このように、特定のサービスコントローラ120はすべてのPAD40よりも少ないメッセージを通信してもよい。
【0034】
点線で例示したように、外部プロセッサ42は、選択的なモニタ84または92および報告インターフェイス102を含む、各PAD(例えばPAD40a)のための報告プロセッサ126をさらに含んでもよい。報告プロセッサ126は対応するPADの報告インターフェイス102から報告メッセージを受け取り、適切な報告メッセージを1またはそれ以上のサービスコントローラ120に転送する。報告プロセッサ126は、報告メッセージの受け入れ可能なタイプ、報告メッセージの内容、報告イベントなどを特定するために、PAD40の報告インターフェイス102を設定できる。
【0035】
報告プロセッサ126からの報告メッセージまたはメッセージプロセッサ122からの別のメッセージタイプを受けると、サービスコントローラ120はメッセージを1またはそれ以上のポリシー問い合わせに変換し、ポリシー問い合わせをSPI56を介してポリシーサーバ48に送信する。例えば、SPI56がCOPSを採用するなら、サービスコントローラ120はRSVPおよびSIPメッセージをCOPS(RSVP)およびCOPS(SIP)メッセージにそれぞれ変換する。サービスコントローラ120は、インターフェイス121を介して追加のサービスを得るために、別のサービスコントローラ120に渡してもよい。
【0036】
ポリシーサーバ48からポリシー決定の受け取りに応答して、サービスコントローラ120は1またはそれ以上のパケットをメッセージプロセッサ122を介してトラフィックフローに注入し、PADコントローラ124を介してPAD40を構成するか、または信号送信コントローラ128aおよび128bを介して通信ネットワーク30の内部または外部で信号送信を制御してもよい。信号送信コントローラ128はネットワークを介してバーチャルコネクション(Virtual Connection)(VC)またはラベルスイッチパス(Label switched Path)(LSP)をセットアップまたは取り外すために信号送信プロトコルを(例えばRSVP、ラベル分散プロトコル(Label Distribution Protocol)(LDP)、専用線ネットワーク−ネットワークインターフェイス(Private Network−Network Interface)(PNNI)、フレームリレーまたはATMユーザネットワークインターフェイス(User Network Interface)(UNI)など)をサポートする。信号送信コントローラ128によってセットアップされたVCまたはLSPは特定されたQoSを有してよい。
【0037】
SPI56を介してサービスコントローラ120とポリシーサーバ48との間で通信されるメッセージの数を減らすために、サービスコントローラ120の各々は、それぞれのポリシーキャッシュ130内に頻繁に使用されるポリシー規則を好ましくはキャッシュする。従って、もし着信メッセージから生じるポリシー問い合わせのためのポリシー情報が既にキャッシュされていれば、サービスコントローラ120は問い合わせをポリシーサーバ48に先立って送信し、そのポリシーキャッシュ130内にキャッシュされたポリシー規則を参照することによってポリシー決定を行うことができる。加えて、サービスコントローラ120が新しいサービス要求についてポリシーサーバ48に問い合わせたとき、サービスコントローラ120はポリシーサーバ48に対して、ポリシーデータベース46からそのポリシーキャッシュ130にすべての関連したポリシー情報をダンプするよう要求してもよい。しかしながら、ポリシー問い合わせの数とキャッシュリフレッシュの頻度と各リフレッシュ時のポリシーサーバ48からダウンロードされたポリシー情報の量との間には、取引が成立する。目的は、SIPコールのような、集中的なポリシー問い合わせを要求するIPサービスのためのポリシーをキャッシュし、一方で、ライフタイムにおいて、ただ一つのポリシー問い合わせのみを一般に発生するような別のセッション(例えばTCPセッション)のためのポリシーの検査のキャッシングを避けることである。
【0038】
ネットワークアクセスシステムインターフェイス
上記したように、この発明のネットワークアクセスシステムは、少なくとも2つのインターフェイスをサポートをする。SPI56およびMCRI58である。これらのインターフェイスの各々は、以下に述べるように順に検査される。
【0039】
以下の表1に要約されているように、SPI56は好ましくは外部プロセッサ42のサービスコントローラ120からポリシーサーバ48へ送信される少なくとも一つのメッセージ、すなわち、ポリシー要求に関する問い合わせの少なくとも一つのメッセージタイプを好ましくはサポートする。そのようなポリシー問い合わせは、ポリシーサーバ48が要求しているサービスコントローラ120のポリシーキャッシュ130に対して問い合わせに対するポリシー規則をダンプするように要求するよう設定されうるフラグを好ましくは含む。
【0040】
SPI56はポリシーサーバ48からサービスコントローラ120へ送信される少なくとも5つのメッセージタイプを好ましくはサポートする。ポリシーサーバ48からサービスコントローラ120へSPI56を介して送信されたメッセージタイプは、表1にまた要約されているが、取引承認および拒否メッセージ、設定パラメータを特定するメッセージ、ポリシーキャッシュ130内にキャッシュされるべきポリシー情報を含むメッセージを含む。加えて、ポリシーサーバ48は、PAD40におけるセッションレベルパラメータに対して設定したことを指示するメッセージを外部プロセッサ42に送信できる。当業者によって理解されるように、一つの重要なセッションレベルパラメータはパケットが活性化されたセッションにおいて受けられてから経過した時間を数得る不活性化タイマであり、特定された量の時間が経過したとき、セッションは活性されていないため終了されるべきであるという旨の信号出力する。
【0041】
【表1】
SPI56上でのポリシーサーバ48と外部プロセッサ42との間の通信は応答型(solicited)でもよいし任意型(unsolicited)でもよい。任意型のモードにおける動作においては、ポリシーサーバ48は外部プロセッサ42およびPAD40のためにポリシー要求がないとき外部プロセッサ42に対し、設定パラメータを送信する。代わりに、応答型通信モードにおいては、ポリシーサーバ48はポリシー決定および設定パラメータをポリシー要求に応答して送信する。図2に示すように、ポリシー要求は外部プロセッサ42によって送信されてもよいし、SPI56はオープンポリシー問い合わせプロトコルを好ましくは採用するため、第3者(例えば顧客のポリシーサーバ)によって送信されうる。いずれの場合においても、ポリシーサーバ48はSPI56を介してポリシー要求を受ける。ポリシー要求は要求されたサービスを典型的には固定し、サービスのパラメータが与えられると、要求されたサービスが提供されるかどうかを示す応答を要求する(例えば要求者の同一性、要求されたサービスのタイプおよび量など)、そしてもしそうであれば、サービスのための適当な設定を送信される。ポリシー要求の受信に応答して、ポリシーサーバ48はポリシー要求において提供されたパラメータが与えられると、適切なポリシー規則にアクセスするためにポリシーデータベース46に問い合わせる。ポリシーサーバ48はそれからアクセスされたポリシー規則および使用情報を使用したポリシー要求のためのポリシー決定を行う。例えば、ポリシーサーバ48は、使用されている、残っている予約された帯域幅の量(使用情報)を、要求されたサービスを提供するために必要な帯域幅の量とを比較することによって、特定の顧客(ポリシー規則)によって予約された帯域幅を追跡し、新しいサービスの要求を承認または拒否してもよい。ポリシーサーバ48はそれから、「承認」、「拒否」でありうる、結果となるポリシー決定および/または外部プロセッサ42およびPAD40のためのセッションレベルパラメータの設定を外部プロセッサ42にSPI56を介して提供する。
【0042】
MCRIインターフェイス58に戻って、以下に示す表3はPAD40によって外部プロセッサ42に送信されるメッセージのタイプを要約する。示されているように、これらのメッセージタイプはメッセージインターフェイス100、報告インターフェイス102および制御インターフェイス104のどれがメッセージのソースであるかを参照することによって都合よく分類されうる。
【0043】
上記したように、PADのメッセージインターフェイス100はパケットヘッダーフィルタ80および90によって捕獲されたメッセージを外部プロセッサ42のメッセージプロセッサ122に渡す。メッセージプロセッサ122に渡されたメッセージは、レイヤ4−7メッセージタイプおよびフィールドのような他のパケットフィールドに加えて、SA、DA、PT、SP、DPおよび/またはTCPフラグ(例えばSYN、ACK、RST、FINなど)のような他のパケットフィールドに基づいて受信および発信パケットフローがフィルタ処理される。
【0044】
制御インターフェイス104は、制御コマンドメッセージの受信に応答して、制御応答メッセージをPADコントローラ124に送信する。コマンドがうまく完了したら(例えばモニタ84の設定がうまく更新されたなら)、制御インターフェイス104はPADコントローラ124にコマンド確認応答を返す。しかしながら、もしコマンドが不適切な構文のために完了できなかったり、要求されたリソースが利用できない等のときは、制御インターフェイス104はPADコントローラ124にコマンド障害を示すコマンド障害を通知する。
【0045】
PAD40の報告インターフェイス102は報告メッセージを外部プロセッサ42の報告プロセッサ126に送信する。表IIにまとめられた報告メッセージはモニタされたセッションについての情報を提供するメッセージ、PAD40と外部プロセッサ42のサービスコントローラ120との間の通信に関係したメッセージおよびモニタ84および92によって収集された統計を含むメッセージを含む。TCPおよびSIPのようなあるプロトコルに対して、PAD40は各活性化されたセッションに対する状態機械(state machine)を実行する。もしTCP状態機械が、特定の活性化されたTCPセッションが確立された再送信しきい値を超える多数の再送信を有しているときは、報告インターフェイス102はTCP再送信しきい値が超えたということを外部プロセッサ42のメッセージプロセッサ122に通知するメッセージを送信し、このように、TCPセッションが故障したことを示す。報告プロセッサ126は、TCPおよびSIPのようなあるIPプロトコルセッションにおいて不活性タイマが満了したような、他のセッションの故障を同様に報告する。信頼性を確実にするための、関連する状態機械を有さない他のデータフロー(例えばUDPセッション)に対しては、PAD40の報告インターフェイス102は、活性化がセッションにおいて検出されたとき「活性化検出」報告メッセージを送信する。
【0046】
表2によって表されるこの発明の好ましい実施例においては、PAD40と外部プロセッサ42との間の接続は各PAD40および関連する外部プロセッサ42との間で定期的に交換されるキープアライブ(keepalive)メッセージによって示される。PAD40からキープアライブメッセージがなくなると、PAD40と外部プロセッサ42との間の接続の故障および/またはPAD40自体の故障を示す。そのようなキープアライブメッセージは報告インターフェイス102と報告プロセッサ126との間で好ましくは送信される。しかしながら、もし報告インターフェイスが実行されなかったときは、キープアライブメッセージは代わりにメッセージインターフェイス100によって提供されうる。
【0047】
外部プロセッサ42内のサービスコントローラ120はまた故障するかまたは異なるサービスに動的に再割当てされる(例えば負荷バランスのために)。複数のサービスコントローラ120をサポートしている外部プロセッサ42の故障またはサービスコントローラ120間のサービス責任が再配分されたときは、セッションに対する責任が転送される新しいサービスコントローラ120が古いサービスコントローラ120の活性化されたセッションのすべてに関する状態情報を受信しなければならない。従って、PAD40を好ましい外部プロセッサ42に割り当てるいわゆる切り替えが生じたとき、PAD40は活性化されたセッションに対する状態情報を状態同期メッセージにおいて外部プロセッサ120の報告プロセッサ126に好ましくは報告する。このように、新しいサービスコントローラ120にセッション状態情報を提供する責任をPAD40に持たせることによって、サービスコントローラ120aおよび120bから同期セッション状態に維持するための責任を有利に軽減し、これが通常の動作において、サービスコントローラの性能を低下させるメッセージの集中した処理になる。設計のこの局面がハードウエア、ソフトウエアおよびネットワークの故障に対する故障許容量範囲を達成する。
【0048】
表2は選択的なモニタ84および92によって実行されるモニタによって始められる2つの模範的な報告メッセージを最終的にリスト化する。まず、報告インターフェイス102は各顧客ごとに一般的な使用統計を提供できる。外部プロセッサ42のサービスコントローラ120はSLAに対する適合性を測定するための統計情報を使用し、興味のある、あるイベントを検出する。第2に、報告インターフェイス102は顧客のあらかじめ定められたトラフィックしきい値が超えたということを報告メッセージ内で特に示す。外部プロセッサ42のサービスコントローラ120は追加のリソースを顧客のトラフィックに割り当てるためにこの情報を使用することができる(例えば、SLAに対する適合性を確実にするために)または顧客への請求書発行において調整がされなければならないということを請求書作成サーバ72に通知することができる(例えばもし請求書作成が使用に基づいて行われるならば)。もちろん、追加の報告メッセージもまたポリシーできる。
【0049】
【表2】
表3を参照して、MCRI58を介してメッセージプロセッサ122から、PADコントローラ124および外部プロセッサ42の報告プロセッサ126からPAD42へ送信されるメッセージのタイプが要約されている。表3に示されたインターフェイスの実施例のおいては、メッセージプロセッサ122はメッセージインターフェイス100に対して少なくとも2つのメッセージのタイプを送信できる。まず、メッセージプロセッサ122はメッセージインターフェイス100に対して着信または発信パケットフローのいずれかに注入される1またはそれ以上のパケットを送信してもよい。第二に、メッセージプロセッサ122は、メッセージインターフェイス100がSA、DA、PT、SP、DPなどのような各種のパケットフィールドの内容に基づいてメッセージプロセッサ122に特定のメッセージを送信する、または、送信するのを妨げるよう動作するよう、メッセージインターフェイス100内のパケットフィールドフラグを設定またはリセットすることを示すメッセージをメッセージインターフェイス100に送信してもよい。
【0050】
表3に示されているように、MCRI58を介してインターフェイス104を制御するためのPADコントローラ124から送信された制御メッセージは、多数の設定メッセージを含み、この設定メッセージはPADコントローラ124が制御インターフェイス104を介して任意のフィルタ処理、マーキング、取り締まり、モニタ、バッファ、スケジューリング、シェイピングおよびPAD40の機能モジュール80−96を転送するといった任意のものを設定することを可能にする。特に、出力バッファおよびスケジューラ88および96は、多くのバッファ、トラフィッククラスあたりのバッファのサイズまたはトラフィックフローの多くを割り当てる、または、CBQ、WFQ、WRRまたは他のバッファスケジューリングアルゴリスムを実行するよう設定されうる。PADコントローラ124は、静的または適応性のあるシェイピングアルゴリスムを採用するために、マーカー/シェイパ94を設定することができ、トラフィッククラスベースごとまたはトラフィックフローごとにシェイピングを実行するためにマーカー/シェイパ94を設定することができる。PADコントローラ124は、サービスコントローラ120がデータフローをATMSVCまたはMPLSLSPと関連づけうるように、サービスコントローラ120による要求に応答して転送テーブル86をさらに設定することができる。
【0051】
機能モジュール80−96を設定するために使用される一般の制御メッセージに加えて、MCRI58はPAD40の機能モジュールの特定の特徴を設定するために使用される各種の制御メッセージをサポートする。例えば、パケットヘッダーフィルタ80および90はデータフローに対するソース経路を許容するかまたは否定するために、または特定のソースアドレスを有するパケットのみを許容するために、権限のないソースからのマルチキャストパケットを落とすよう設定されうる。加えて、PADコントローラ124は信号送信コントローラ128を使用して、サービスコントローラ122によって設定されたSVCおよびLSP経路を有する転送テーブル86を更新できる。報告インターフェイス102はイベントに対応した報告フラグを設定またはリセットすることによって、選択されたイベントの報告を可能または不能にするための「報告フラグ設定」制御メッセージを介して設定される。PAD40はMCRIコントロールメッセージを介してTCP再送信通知しきい値、不活性タイマ、活性タイマおよび上記したトラフィックしきい値を設定するよう特定される。最後に、PAD40と出力バッファとスケジューラ88、96の処理リソースは、帯域幅、待ち行列および処理時間スライス(slice)のようなリソースを動的に割り当てるために、MCRI58および制御インターフェイス104を介して、顧客インターフェイス、パケットフロー、クラスまたはマルチキャストグループに送信された「割り当てリソース」制御メッセージによって設定されうる。
【0052】
外部プロセッサ42の報告プロセッサ126からPAD40へ送信される報告メッセージは、報告インターフェイス102付きのキープアライブメッセージの交換に一般的には限られる。キープアライブメッセージの連続した交換はPAD40に、関連したサービスコントローラ120が動作中であるということを知らせる。もしPAD40がサービスコントローラ120からキープアライブメッセージを受け取れなかったら、PAD40は、以下にさらに述べるように、サービスを第二のサービスコントローラ120へ切り替え始める。
【0053】
【表3】
故障許容範囲
サービスコントローラが故障のときにサービスの中断を防ぐために、各サービスは、通常サービスを提供する一次サービスコントローラと、もし一次サービスコントローラが故障またはPADと一次サービスコントローラとの間の接続が失われたときには、サービスを提供することができる二次サービスコントローラと、の両方によって好ましくはサポートされる。この発明の好ましい実施例においては、一次および二次サービスコントローラはアクセスネットワークを介して、種々に接続された別の外部プロセッサ42に存在する。一次サービスコントローラとの通信の障害を検出したことに応答して、PAD40は二次サービスコントローラへの切り替えを実行する。
【0054】
図5Aを参照して、この発明に従う、故障した一次サービスコントローラから二次サービスコントローラへのサービスの提供を置き換える模範的なネットワークアクセスシステムの信号を示す、時間−空間ダイアグラムが描かれている。図5Aにおいて、例示のために、サービスコントローラ120aは一次サービスコントローラで、サービスコントローラ120bは二次サービスコントローラである。
【0055】
通常の動作の間、PAD40は関連した外部プロセッサ42のサービスコントローラ120aおよび120bと情報を交換するために信頼性のある通信プロトコル(例えばTCP)を採用している。上で述べたように、キープアライブメッセージはTCPセッションの活性化が続くように、外部プロセッサ42とPAD40との間で定期的に交換される。PAD40がキープアライブメッセージのタイムアウトを検出すると、これは一次サービスプロセッサ120aへの接続が失われたことを意味するが、図5Aに示されているように、PAD40は、二次サービスコントローラ120bへ同期セグメント(SYN)をPAD40が送信することによって、二次サービスコントローラ120bとTCPセッションを設立するよう試みる。もしPAD40が二次サービスコントローラ120bとの接続に失敗したら(例えば、二次サービスコントローラ120bからSYN ACKを受け取らなければ)、一次サービスコントローラ120aとの通信が回復するまで、PAD40は新しいセッションを受け入れるのを停止し、その状態および全ての現在活性中のセッションに対するサービスを維持する。
【0056】
しかしながら、もしPAD40が二次サービスコントローラ120bとTCPセッションをうまく確立したときは(例えば、SYN ACK、およびACKの返信を受けることによって示されるように)、PAD40は、各活性化されたセッションに対する状態機械を維持し、故障した一次サービスコントローラ120aによって制御された活性化されたセッションのすべてに対する状態情報を二次サービスコントローラ120bにアップロードする。二次サービスコントローラ120bによる状態情報の受信がACKメッセージによって確認されると、PAD40はキープアライブメッセージの対応を二次サービスコントローラ120bと開始する。このように、サービスは単一のサービスコントローラ120の故障によって中断されず、サービスコントローラ120aおよび120b間の同期も必要とされない。
【0057】
もし非復帰行動が望まれるのであれば、PAD40と二次サービスコントローラ120b間の通信が続き、一次サービスコントローラ120aに戻らない。しかしながら、もし可能であれば、分散されたPADのサービスコントローラ処理の負荷バランスを維持するために、通信は一次サービスコントローラ120aに戻るほうが現在のところ好ましい。
【0058】
図5Bを参照して、一次サービスコントローラの回復に続いて、二次サービスコントローラから一次サービスコントローラへの切り替えの間の、プログラム可能なアクセス装置と外部プロセッサ間の模範的な信号送信を示した時間−空間図が描かれている。復帰処理はTCPセッションを再確立するために、一次サービスコントローラ120aがSYNセグメントをPAD40に送信することによって始まる。PAD40は一次サービスコントローラ120aがACKによって確認する、SYN ACKを有するSYNの受信に応答する。TCPセッションが開始されると、PAD40は活性化されたセッションの状態を一次サービスコントローラ120aにアップロードし、サービスコントローラ120aはACKでセッション状態の受信を確認する。
【0059】
セッション状態がうまく一次サービスコントローラ120aに復帰された後、PAD40は二次サービスコントローラ120bに、一次サービスコントローラ120aが「シャットダウンのための準備」メッセージを介して回復したということを通知する。PAD40はそれからFIN(すなわち終了)およびACKのハンドシェイクの対を介して二次サービスコントローラ120bとのTCPセッションを閉じる。この対の前半はPAD40によって開始され、後半は二次サービスコントローラ120bによって開始される。TCP接続が閉じられた後、二次サービスコントローラ120bは一次サービスコントローラ120aに転送されたセッションにすべての状態情報を削除する。PAD40はその後一次サービスコントローラ120aとのキープアライブ交換を開始する。
【0060】
都市における実施
図1Bを参照して、この発明に従う分散されたネットワークアクセスシステムを含むインターネットサービスプロバイダ(ISP)ネットワークの模範的な都市における実施が示される。図1Bは図2に示すような、論理(例えばネットワーク)接続というよりは、要素の物理的な相互接続を例示する。
【0061】
左手側から始まって、顧客LAN14は都市アクセスネットワーク16’の中で最も低いレベルのアクセスネットワーク(例えばTDM、ATM、またはイーサネット)かまたは直接PAD40に相互接続する。示されているように、PAD40は集合ネットワーク階層においてより高いレベルに位置してもよい。エンジニアリング経済および/または性能を考慮することによって、PAD40の位置が決定する。例えば、トラフィックの最小量の集計または低速アクセスリンクへのアクセスの必要性によってPAD40の位置がそれぞれより高いまたはより低いアクセスネットワークレベルに移動されてもよい。
【0062】
上で議論したように、PAD40はポリシーの強制を行い、それによって集合ルータ(すなわちアクセスルータ44)からある作業負荷を軽減する。ポリシーの決定は集合ルータからまた除去され、代わりに、冗長な外部プロセッサ42およびPDP46に位置される。ほとんどの実施において、外部プロセッサ42は各都市領域に分散された方法で典型的には配置され、一方、PDP46は地域ベースでよりまばらに配置される。集合ルータから作業負荷のいくらかを軽減した結果、アクセスルータ44は、アクセスルータがより単純ではあるが、必須の基本的なインターネットルーティングの仕事を処理するよう最適化されるため、より大きなトラフィック能力を処理するよう拡張されうる。ISPネットワークの能力は、PAD40、外部プロセッサ42およびPDP46が最新技術のエッジルータの機能だけでなく、融通のきかないルータデザインにおいて現在は入手できないような多くの機能をも実行するため、また拡大される。
【0063】
この発明の局面をさらに例示するために、各種の動作シナリオのためのネットワークアクセスシステムの信号送信およびメッセージ作成の例を一般的な空間ー時間図を参照して以下に述べる。例は、ネットワークレベル信号送信、接続優先およびコネクションレス転送プロトコル、アプリケーションレベル通信およびポリシーベースのマルチキャストサービス管理の模範的な実施例を例示する。
【0064】
ネットワークレベル信号送信の例
図6を参照して、リソースリザベーションプロトコル(RSVP)の使用を介したサービス予約を得るために使用される模範的なネットワークレベル信号送信を示す時間−空間図を例示する。例示された例においては、顧客のアプリケーションがRSVPPATHメッセージをPAD40に送ることによって予約処理を開始する。例えば、顧客のアプリケーションは特定の時間における特定の帯域幅の経路を要求してもよい。図6に示すように、PAD40のパケットヘッダーフィルタ80は、RSVPプロトコルタイプ(すなわちPT=46)に基づいてRSVP PATHメッセージを捕獲し、それを外部プロセッサ40内の適切なサービスコントローラ120(この例においては、予約された帯域幅サービスコントローラ(RBSC)と呼ばれる)に転送する。
【0065】
経路メッセージの受信に応答して、RBSC120は予約サービスがこの顧客に認められているかどうかを判定するため、SPI56(この場合にはCOPSを実行するとみなされる)を介してポリシーサーバ48に適切なポリシー問い合わせを送信する。ポリシーサーバ48がこの顧客に対して予約サービスを認めるポリシーの決定をRBSC120に戻すと、RBSC120はRSVPPATHメッセージをPAD40に戻す。PAD40はPATHメッセージの下流(down stream)をネットワークの出口点へ送信する。
【0066】
もしネットワークのずっと離れた端部のレシーバが予約を認めたときは、レシーバは、PAD40に予約(RESV)メッセージを送信することによって応答し、PAD40は、RESVメッセージをRBSC120に送る。RESVメッセージに応答して、RBSC120は、RESVメッセージによって特定された帯域幅の要求がこの顧客に認められているかどうかを確認するために、別のポリシー問い合わせをポリシーサーバ48に行う。この2番目の問い合わせに応答して、各顧客に対して割り当てられた帯域幅を追跡するポリシーサーバ48が現在割り当てられている帯域幅に要求された帯域幅を加えたものがこの顧客のための最大の認められた帯域幅よりも小さいかどうかを判定する。もしそうであれば、ポリシーサーバ48は承認を示すポリシー決定と共にRBSC120に通知する。RBSC120はそれから1またはそれ以上の信号コントローラ128を使用してRVCまたはLSPを設立するために適切なATMまたはMPLS信号送信を開始する。RBSC120がネットワークから要求された経路の確認を受信した後、RBSC120は確立されたSVCまたはLSPを介して顧客のフローにパケットを送信するために、PAD40のパケットヘッダーフィルタ80および転送テーブル86を設定する。加えて、RBSC120はRESVメッセージをメッセージインターフェイス100を用いてPAD40の戻す。メッセージインターフェイス100はRESVメッセージの上流(upstream)を顧客アプリケーションに送信する。RBSC120はCONFIRMメッセージの下流をSVCまたはLSPを設立するために使用されるハンドシェイクを完成するためにPAD40を介してレシーバに送信する。
【0067】
コネクション型の送信の例
図7A−7Gを参照して、この発明に従うネットワークアクセスシステムによる接続優先の転送プロトコルの処理を例示する各種TCPイベントの時間−空間図とTCP状態機械が描かれている。まず図7Aを参照して、PAD40上でのTCPセッションのために維持された状態機械の好ましい実施例が描かれている。示されているように、TCP状態機械140は2つの状態を含む。活性化されたTCPセッションが存在しないアイドルステート142と活性化されたTCPセッションが存在する活性化状態144である。状態機械140の動作は、(1)同期セグメント(SYN)に応答したTCPセッションの開始、(2)終了(FIN)メッセージに応答したTCPセッションの終了、(3)時間切れによるTCPセッションの終了および(4)リセット(RST)メッセージに応答したTCPセッションの終了を含む、4つのTCP処理の間にTCPセッション状態を維持する。図7Aにおいて、これらの動作の各々に関連したメッセージは、対応する凡例(例えば、TCPセッション開始のための「1.x」、FINメッセージに応答してTCPセッションを終了する「2.x」、等)によって特定され、ある英字指定(例えば「1.a」は「1.b」の前など)によってさらに時間の順序付けが行われる。
【0068】
例示されているように、TCPセッションの開始は状態機械140がアイドル状態142にあり、PAD40がSYNセグメントを受け取ったときに始まる。参照番号150で例示されているように、パケットヘッダーフィルタ80は顧客から受け取った最初のSYNメッセージを捕獲し、それをTCPサービスを処理するよう指定された外部プロセッサ42内のサービスコントローラ120に渡す。SYNメッセージの受け取りに応答して、サービスコントローラ120はこの顧客に対するTCPセッションに関してポリシーサーバ48に問い合わせを行う。サービスコントローラ120がTCPセッションの承認を示す決定を受け取ると、サービスコントローラ120はSYNセグメントを参照番号152で示されているようにPAD40に戻す。サービスコントローラ120からのSYNメッセージの受け取りに応答して、状態機械140は状態をアイドル状態142から活性化状態144に変更する。PAD40はSYNセグメントを目的地アドレスによって特定されたレシーバに転送し、参照番号154で示されているように、レシーバからSYN、ACKセグメントを受信する。送信者は、参照番号156で示されているように、ACKメッセージで応答することによってTCPセッションを開始するのに必要な3方向のハンドシェイクを完了する。PAD40はハンドシェイクの成功を表すACKメッセージを参照番号158で示すようにサービスコントローラ120に渡す。ACKメッセージの受信よってTCPセッションが開始されたことをサービスコントローラ120に通知し、サービスコントローラ120はその活性化セッションテーブルにTCPセッションを加える。サービスコントローラ120はそれからPAD40内でこのTCPセッションの不活性タイマおよび他のパラメータを設定し、参照番号158で示されているように、ACKメッセージをPAD40に戻す。その後、データは参照番号159で示されているように、活性化されたTCPセッションを介して顧客とレシーバとの間で送信される。
【0069】
活性化されたTCPセッションを終了するために、顧客またはレシーバのいずれかがPAD40にFINメッセージを送信することができる。FINメッセージの受信に応答して、PAD40は参照番号160で示すように、TCP状態機械140をアイドル状態にリセットする。PAD40は参照番号162で示すようにFINメッセージをサービスコントローラ120に渡す。FINメッセージはサービスコントローラ120に、TCP接続が不活性であることを知らせ、サービスコントローラ120にその活性セッションテーブルからTCPセッションを削除させる。例示されているように、PAD40はFINメッセージをその目的地(すなわち顧客またはレシーバ)へ転送する。これはACKメッセージとFINメッセージ共に応答する。ソースはそれからACKメッセージ166と共に最後のFINメッセージを応答する。最後のACKメッセージの受信に応答して、PAD40はTCPセッションのための状態機械140を削除する。
【0070】
図7Aにさらに例示されているように、PAD40はTCPセッションの不活性タイマが終了したとき活性化されたTCPセッションを終了する。活性化されたTCPセッション用の不活性タイマ満了に応答して、参照番号170で例示されているように、PAD40は状態機械140を活性化状態144からアイドル状態142に移行する。PAD40は、タイムアウトエラーをサービスコントローラ120に報告する。タイムアウトエラーメッセージ受信に応答して、サービスコントローラ120は活性セッションテーブルからTCPセッションを削除し、TCPセッションに関連した、不活性タイマおよび他の設定情報を除去するために、PAD40の設定を更新する。PAD40はそれからTCPセッションのための状態機械140を削除する。
【0071】
PAD40はいずれかの当事者からTCP接続のリセット(RST)メッセージの受信に応答して活性化TCPセッションを終了する。RSTメッセージの受信に応答して、参照番号180で示されているように、PAD40は状態機械140を活性化状態144からアイドル状態142に遷移させる。PAD40はまた参照番号182で示されているように、RSTメッセージをサービスコントローラ120に渡す。RSTメッセージの受信に応答して、サービスコントローラ120は、参照番号182で示されているように、RSTおよびTCPセッションの削除の成功の受信の確認応答をするためにRSTメッセージをPAD40に戻す。PAD40はそれからTCPセッションの状態機械140を削除し、RSTメッセージをTCPセッションの他の当事者に転送する。
【0072】
PAD40およびサービスコントローラ120の効率的な動作を促進するために、それらの間のメッセージの量を最小にすることが望ましい。従って、もしTCPセッションの開始が要求されたら、PAD40はサービスコントローラ120に最後のACKメッセージを転送するだけである。加えて、PAD40はセッションにおいて受け取った第一SYN、FINセグメントをサービスコントローラ120に渡すだけである。このようにして、PAD40とサービスコントローラ120の機能がたとえ分散されているとしても、過度のメッセージは避けられる。
【0073】
好ましい実施例において、PAD40はサービスコントローラ120が付加価値のあるサービスを設定するTCPセッションのための活性化された状態情報を単に維持する必要がある。言い換えると、PAD40はTCPセッションに対する最善の努力のための状態情報を維持しない。これはTCP状態情報を維持するためにPAD40に要求されるメモリサイズを大幅に減らす(例えば、パケットヘッダーフィルタ80および90ならびにモニタ84および92の状態情報)。また、多数の活性化したTCPセッションがありうるため、表3で与えられたTCPセッションメッセージの削除によって、サービスコントローラ120は、TCPセッション状態メモリが一杯になったときにどのTCPセッションが付加価値のあるサービスを受けるのかということを決定することができる。
【0074】
図7Bに例示されているように、PAD40はTCP状態メモリが一杯であるというメッセージ186を、TCP状態メモリフルイベント184の検出に応答して、報告インターフェイス102を介してサービスコントローラ120に送信する。状態メモリフルイベント184はパケットヘッダーフィルタ状態変数のためのストレージまたはモニタ状態変数のためのストレージのいずれかの枯渇によって生じる。TCP状態メモリフルメッセージ186に応答して、サービスコントローラ120はPAD40のTCP状態メモリ状態を記録する。
【0075】
顧客ルータ32がSYNメッセージ188を送信することによって別の付加価値のあるTCPセッションを開始したとき、参照番号190で示すように、PAD40はメッセージインターフェイス100を介してSYNメッセージをサービスコントローラ120に渡す。SYNメッセージの受信に応答して、サービスコントローラ120はPAD40のTCP状態メモリ現状をチェックする。TCP現状状態メモリが一杯であるため、サービスコントローラ120は、何らかのあらかじめインストールされたポリシーに基づいて既存の付加価値のあるTCPセッションに新しいTCPセッションを上書きすることを許容するか否かを決定する。例えば、サービスコントローラ120は各付加価値のあるサービスに優先度を割り当て、より低い優先度のTCPセッションにより高い優先度のセッションを上書きすることを許容するようにしてもよい。代わりに、または追加して、サービスコントローラ120は、最も長い不活性期間を有するTCPセッションに新しいTCPセッションを上書きするよう許可してもよい。
【0076】
もし新しいTCPセッションを任意の既存のTCPセッションに上書きすることが許可されないときは、サービスコントローラ120はSYNメッセージを無視する。その結果、PAD40は新しいTCPセッションのための状態情報をインストールせず、PAD40は新しいTCPセッションに対して最善努力のサービスを提供する。しかしながら、もしサービスコントローラ120が、新しいTCPセッションが別のTCPセッションに上書きできると決定すると、サービスコントローラ120はコントロールインターフェイス102を介してPAD40に対してDelete(削除)TCPセッションメッセージを送信する。PAD40は参照番号194によって示されているように、そのTCP状態メモリから既存のTCPセッションを削除することによって応答する。参照番号150−159で図7Aに例示されている処理はそれから、PAD40の状態メモリに新しいTCPセッションをインストールするため実行される。
【0077】
図7Aに描かれている模範的なTCP状態機械が与えられたとして、図7C−7Gを参照してTCP信号送信のいくつかの例を以下に述べる。まず図7Cを参照して、この発明に従うネットワークアクセスシステムを介したTCPセッションを確立するために使用される模範的な信号送信が示される。
【0078】
例示されているように、TCPセッションを開始するために、顧客のアプリケーションはまず、アプリケーションが特定のポートおよびIPアドレス(例えば、ウエブページにアクセスするとき)でサーバに対する接続の開始を希望するということをプロトコルスタック(protocol stack)に知らせる開始コマンドを発行する。顧客サイトのTCPエージェント(agent)はそれから最初のシーケンス番号(この例では800)を選択し、選択されたシーケンス番号を有する同期セグメント(SYN)を送信する。SYNセグメントが到着すると、PAD40のパケットヘッダーフィルタ80は、特定された目的地IPアドレスおよびポート番号(PT=6、ポート=80)に基づいて、SYNセグメントが必須のイーコマースTCPセッションの開始を意図している、ということを検出する。従って、パケットヘッダーフィルタ80はSYNセグメントをイーコマースサービスコントローラ(ECSC)120に渡す。ECSC120は、たとえば、LDAP要求を使用してポリシーサーバ48に問い合わせることによってSYNセグメントに応答する。
【0079】
例えば、LDAP APPROVEメッセージを介してTCPセッションの承認を示すポリシーサーバ48に応答して、ECSC120はPAD40にSYNセグメントを戻す。PAD40がECSC120からSYNセグメントを受け取ると、PAD40は新しいTCP状態機械を発生し、それを活性状態144に設定する。PAD40はそれからSYNセグメントにおいて特定されたサーバにSYNセグメントの下流を送信する。
【0080】
SYNセグメントがサーバで受信されると、サーバのTCPエージェントは最初のシーケンス番号(この場合400)を取り、選択された開始シーケンス番号およびACKを含むSYNセグメントをPAD40に送信する。ACKメッセージは、顧客によって送信された最初のデータバイトは801という番号であるべきであると特定する。サーバによって送信されたSYNおよびACKメッセージはPAD40によって顧客アプリケーションに転送をされるが、これらのメッセージはECSC120には転送される必要がないということに注意のこと。
【0081】
顧客のTCPエージェントがSYN/ACKメッセージを受け取ったとき、サーバによって送信された最初のデータバイトは401という番号であるべきであるということを意味する、ACKメッセージ401をTCPエージェントが戻す。このACKメッセージは、3方向のハンドシェイクが成功し、TCPセッションが開始されたということをECSC120に通知するために、PAD40によってECSC120に渡される。ECSC120はそれからTCPセッションをその活性セッションテーブルに加え、TCP再送信の許可された番号および適切な不活性タイマ設定をPAD40に設定する。ECSC120はこのTCPセッションに属しているパケットを高い優先度であるとマークするためにマーカー/ポリサ82を設定してもよい。ECSC120はACKセグメントをPAD40に戻す。PAD40はTCPセッションが開始されたということをレシーバに知らせるために、ACKセグメントを目的地サーバに送信する。ひとたび顧客のTCPエージェントがクライアントアプリケーションに、TCP接続が開始されたということを知らせると、クライアントとサーバはTCPセッションにおいてデータの交換を始めることができる。
【0082】
図7Dを参照して、この発明に従うTCP接続を終了するための模範的なネットワークアクセスシステムの信号送信を例示した時間−空間図が示されている。図7Dに示された例においては、TCP接続の両側がTCPセッションの切断を始めることができるが、サーバアプリケーションが接続を終了するために、そのTCPエージェントに指示することによって、TCPセッションの終了を開始する。従って、サーバのTCPエージェントは、それ以上データを送信しないということをクライアントアプリケーションに知らせる、FINセグメントを送信する。FINセグメントの受信に応答して、PAD40はアイドル状態142に接続するためにTCP状態機械をリセットし、FINセグメントをECSC120に渡す。ECSC120はその活性化セッションテーブルからTCPセッションを削除し、このTCPセッションのためのパケットをマーキングするのを止め、セッションの不活性タイマおよび再送信設定を除去するようPAD40を設定することによって応答する。PAD40はまたFINセグメントをクライアントに転送する。クライアントはPAD40によってサーバに対して渡されるACKと共にFINセグメントの受信を確認する。クライアントアプリケーションはそれからそのTCPエージェントに対してセッションを終了するよう命令する。クライアントのTCPエージェントはそれゆえPAD40を介してサーバのTCPエージェントに対してFINメッセージを送信する。サーバのTCPエージェントはクライアントのFINメッセージに対して、TCPセッションを閉じるための3方向のハンドシェイクがうまくといったということをPAD40に示すACKで応答する。PAD40は従って、TCPセッションのための状態機械を削除し、ACKメッセージを顧客に転送する。一方、サーバのTCPエージェントはサーバアプリケーションに接続が終了したことを通知する。
【0083】
次に図7Eを参照して、権限のないTCPセッションのための要求に応答してこの発明に従う模範的なネットワークアクセスシステムの信号送信を示す時間−空間図が例示されている。図7Eと図7Cとを比較してわかるように、処理はポリシーサーバ48がECSC120にTCPセッションを拒絶するLDAPポリシー決定を戻す点まで同じである。ポリシーサーバ48は例えば、ネットワークが要求されたセッションをサポートするための十分なリソースが無いとか、クライアントが要求された高い優先度のイーコマースサービスを予約していないためといった理由でTCPセッションを拒絶してもよい。TCPセッションの拒絶に引き続いて、ECSC120はPAD40にリセット(RST)セグメントを発行し、PAD40はクライアントのTCPエージェントにRSTセグメントの上流を送信する。クライアントのTCPエージェントがRSTセグメントを受けると、顧客のTCPエージェントはセッションを終了する。PAD40はECSC120からSYNセグメントを受信しないため、PAD40はTCPセッションのための状態機械を生成しないということに注意のこと。
【0084】
図7Fを参照して、過度のTCP再送信が検出されたときの、模範的なネットワークアクセスシステムの信号送信を示す時間−空間図を例示する。わかるように、TCPセッションは図7Dに例示されているように、適切な切断を通じて通常は終了する。しかしながら、ネットワークまたはサーバ故障の場合はTCPセッションはホストにおけるタイムアウトとなり、通常の切断は生じない。従って、TCPセッションが切断されたときに、何らかの機構がECSC120およびPAD40を更新するために実行されねばならない。
【0085】
図7Fにおいて示されている例においては、顧客とサーバの間の経路はネットワークリンクまたはノードの故障によって中断される。この故障はTCPエージェントおよびクライアントに再送信のしきい値の数になるまでデータの再送信を行わせる。クライアントのTCPエージェントは、それからTCP接続を中断する。続いて、PAD40におけるTCPセッションのための不活性タイマが満了する。不活性タイマの満了に応答して、PAD40はTCPセッションの状態機械をアイドル状態142に更新し、TCPセッションタイムアウトエラーをECSC120に報告する。ECSC120はその活性化セッションテーブルからTCPセッションを削除することによってタイムアウトエラーの報告に応答し、PAD40に対してTCPセッションに対するパケットのマーク付けを停止し、このTCPセッションのための設定を削除するよう指示する。PAD40はそれからTCPセッションのための状態機械を削除する。
【0086】
次に図7Gを参照して、TCPセッションの参加者がTCPセッションに対して急な終了を要求したときの模範的なネットワークアクセスシステムの信号送信を例示する時間−空間図を示す。例示されているように、アプリケーションは、この場合はアプリケーションはサーバアプリケーションであるが、リセット(RST)セグメントを送信することによって突然の終了を知らせる。アプリケーションは、例えば、アプリケーションが接続を中断したいと望んだためとか、TCPエージェントが解決できない重大な通信障害を検出したといった多くの理由で突然の終了を送り出しうる。RSTセグメントの受信に応答して、PAD40はそのセッションのためのTCP状態機械140をアイドル状態142にリセットし、RSTセグメントをECSC120に渡す。RSTセグメントの受信に応答して、ECSC120はその活性化セッションテーブルからTCPセッションを削除し、PAD40をこのTCPセッションのためのパケットに対して、マーキングするのを止めるよう設定する。PAD40はそれからセッションのためにTCP状態機械140を削除し、クライアントに対してRSTセグメントを送信する。クライアントはそれからRSTセグメントの受信に応答してTCPセッションを終了する。
【0087】
UDP報告機能を用いたコネクションレス転送例
図8A−図8Cを参照して、コネクションレス転送プロトコルのためのネットワークアクセスシステム信号送信の3つの例を例示する。各例において、アンリライアブルデータグラムプロトコル(UNRELIABLE DATAGRAM PROTOCOL)(UDP)が採用されている。
【0088】
図8Aをまず参照して、IPテレフォニー(telephony)セッションの音声データの転送としてUDPが使用されているネットワークアクセスシステム信号送信の時間−空間図を示す。図8Aに例示された例においては、顧客は自分のIPテレフォニー(IPTEL)呼び出しのための保証されたサービスを注文するが、クライアントはIPTEL呼び出しのための保証されたサービスを予約するためにRSVPの使用をサポートしていない。それにもかかわらず、顧客は以下に記すように、メッセージの交換を介してIPTEL呼び出しのための保証されたサービスを得ることができる。
【0089】
処理は、顧客が顧客サイトにおいてIPTEL呼び出しを行うクライアントアプリケーションを実行したときに開始する。クライアントアプリケーションはそれから音声データ送信のために割り当てられた利用可能な予備のポートから使用されていないUDPポートを得る。クライアントのアプリケーションはそれからUDPパケットによってカプセル化された音声データを最善努力のトラフィックとしてネットワークを介して送信を開始する。PAD40は音声ポート範囲内でUDP(すなわちプロトコルタイプ(PT)=17)パケットの流れを検出するよう設定され、UDPの流れを検出し、それを外部プロセッサ42内のIP電話サービスコントローラ(IPTELSC)120に報告する。IPTELSC120はポリシーサーバ48に対してSPI56を介したポリシー決定を問い合わせる。SPI56はこの例においてはCOPSを採用している。ポリシーデータベース46を参照することによって、ポリシーサーバ48は顧客が自分のIPTEL呼び出しに対して保証されたサービスを要求していることを判断し、IPTELSC120にSA、DA、PT=17、SPおよびDPによってポリシーされているように、このIPTELセッションのために保証されたサービスを提供するようIPTELSC120に指示するポリシー決定を戻す。
【0090】
IPTELSC120は従って、そのセッションのための不活性タイマを有するようPAD40を設定し、PAD40に対してこのIPTELセッションの発生の報告を停止するよう指示する。IPTELSC120はまた、顧客のクライアントアプリケーションがそうすることができないため、IPTEL呼び出しに対して予約された帯域幅の経路の設定を開始する。予約された帯域幅の経路を設定するために、IPTELSC120はRSVP PATH MESSAGEをPAD40に送信する。PAD40はPATH MESSAGEの下流をレシーバに送信する。予約された帯域幅の量と共に予約の承認を指示するために、レシーバはRESVメッセージをPAD40に送信し、PAD40はRESVメッセージをIPTELSC120に転送する。それから特定された帯域幅の予約が承認されるか否かが判断される。もしIPTELSC120が以前のポリシーサーバ48の問い合わせに続く十分なポリシー情報をキャッシュしているのであれば、IPTELSC120は帯域幅に関してポリシーサーバ48に問い合わせる必要はない。しかしながら、もし不十分なポリシー情報をIPTELSC120のポリシーキャッシュ130に格納(cache)しているときは、ポリシーサーバ48は特定された帯域幅が予約可能かどうかを再び問い合わせる。もし特定された帯域幅がこの顧客によって予約できるのであれば、IPTELSC120はIPTELセッションのためにSVCまたはLSPのいずれかを設定するように信号送信コントローラ128を介して信号送信を開始する。ATMコアのために両方向のSVCが設定される。代わりに、MPLSコアのために二つの単向性のLSPが設定される。このUDPセッションに対するQoSを提供する別の方法はPAD40内のマーカー82に対してIPヘッダ内の差別化されたサービス(DiffServ)を修正するよう指示することを含む。ひとたびIPTELSC120がQoS経路が確立されたということを示すメッセージをネットワークから確認するか接続を受けると、IPTELSC120はUDPパケットのフローをQoS経路に関連づけるためにPAD40を更新する。加えて、IPTELSC120は、PAD40に対して確認メッセージを渡すことによって、QoS経路が設定され、予約されたということを確認する。PAD40は確認メッセージをレシーバに渡す。その後、UDPパケットにカプセル化された音声データは顧客のアプリケーションからQoS経路を介してレシーバに送信される。
【0091】
図8Bに示すように、ポリシーサーバ48の問い合わせによって、IPTEL呼び出しに対するQoS要求を顧客が有していないということを示すポリシー決定が得られたときは、IPTELSC120は、PAD40がIPTEL呼び出しを再び報告しないようPAD40を設定する。加えて、IPTELSC120は、不活性タイマが満了したときには呼び出し報告の禁止が削除されるように、IPTEL呼び出しに対する不活性タイマを設定する。どのQoS経路も承認されていないため、UDPパケットによってカプセル化された音声データは最善の努力をトラフィックとしてネットワーク上で送信される。
【0092】
図8Cを参照して、UDPセッション不活性タイマの満了に応答してQoSをテアダウン(teardown)するために使用されるネットワークアクセスシステムの信号送信を例示する時間−空間ダイアグラムが示されている。UDPセッション不活性タイマは、図8Cに例示されている例においては、ネットワークリンクまたはノードの故障を含む、多くの理由によって満了するが、タイムアウトイベントは顧客サイトにおいて、呼び出しを終え、音声トラフィックの送信を停止する顧客アプリケーションによって引き起こされる。その後、UDPセッション不活性タイマが満了したとき、PAD40はタイムアウトイベントを検出し、それをIPTELSC120に報告する。IPTELSC120はIPTEL呼び出しに対してSVCまたはLSPを解放する(release)ための適切な信号送信を開始することによって応答し、解放はIPTELSC120へのメッセージによって確認される。IPTELSC120はIPTEL呼び出しに対してQoS経路を明確にテアダウンするためにパスティア(pathtear)メッセージを実行する。このメッセージはネットワークを介してPAD40から渡され、パスティアメッセージはQoS経路にそってインストールされたRSVP状態を除去する。IPTELSC120はそれからその活性化セッションテーブルからIPTEL呼び出しを削除し、PAD40をIPTEL呼び出し用のすべての設定されたパラメータを削除する。
【0093】
SIP信号送信を用いたアプリケーションレベルの例
次に図9A−9Eを参照して、この発明に従うネットワークアクセスシステムにおけるアプリケーションレベルSIP信号送信を示す、時間−空間図の多くを例示する。まず図9Aを参照して、SIP呼び出しの確立の例が示されている。例示された例においては、顧客サイトの呼び出し側は、例えば、マルチメディア会議呼び出しに参加するために呼ばれる側を招待するためにネットワークで呼ばれる側にSIP INVITEを発行する。PAD40がSIPに割り当てられたUDPまたはTCPポート範囲によって招待要求を検出したとき、PAD40はINVITE要求を会議呼び出しサービスコントローラ(CCSC)120に渡す。CCSC120はそれから要求された能力が顧客に対して承認されるかどうかに関してポリシーサーバ48(例えばLDAP要求を使用して)問い合わせる。重要なことは、CCSC120とポリシーサーバ48との間で交換されるメッセージの数を減らすために、CCSC120はポリシーサーバ48がCCSC120のポリシーキャッシュ130内のSIP要求に対するポリシー検査をダンプ(dump)することを要求するための問い合わせにおいてフラグを好ましくは設定する。このようにして、CCSC120はその後キャッシュされたポリシーを参照することによってポリシーの決定を行うことができ、ポリシーサーバ48の不必要な問い合せを避けることができる。
【0094】
ポリシーサーバ48がSIPセッションを承認したと仮定して、ポリシーサーバ48はCCSC120にSIPセッションの承認を指示するポリシー決定を送信し、CCSC120のポリシーキャッシュ130にSIP呼び出しのためのポリシー規則をダンプする。SIPセッションの承認を受信すると、CCSC120はPAD40にINVITEメッセージを戻す。PAD40はINVITE要求を呼ばれる側へ転送する。
【0095】
INVITE要求に応答して、呼ばれる側はPAD40にSIP200OKメッセージを戻し、それによって特定されたSIP能力の変更のない呼び出しの承認応答を示す。SIP能力における変更がないために、PAD40は呼び出し側に直接SIP200OKメッセージを転送し、CCSC120にはメッセージを渡さない。呼び出し側はそれからACK要求を介してSIP200OKメッセージの受け入れを応答する。これによってPAD40はCCSC120にSIPセッションの確立の成功を知らせる。CCSC120はそれからSIP呼び出しの最終能力セットを承認するために、そのポリシーキャッシュ130に問い合わせる。CCSC120はその活性化セッションテーブルにSIPセッションを加え、SIP呼び出しを容易にするために、PAD40に不活性タイマと他のパラメータを設定する。CCSC120はそれからPAD40にACK要求を戻し、PAD40は順にSIP呼び出し確立を達成するために呼ばれる側ACKを送信する。
【0096】
よりよい性能を得るために、PAD40からCCSC120へおよびCCSC120からポリシーサーバ48へ渡されるメッセージを最小にするのが好ましい。上で議論したように、CCSC120でポリシー規則をキャッシュすることによって、要求されるポリシー問い合わせの数を大幅に減らすことができる。PAD40からCCSC120へ渡されるメッセージはPAD40にあるSIP状態機械の実行を介して減らすのが好ましい。ここで、PAD40は、SIPセッションの能力の組を確立、終了または変更するだけのためにCCSC120にSIPメッセージを渡す。
【0097】
図9Bを参照してSIP呼び出し終了のための模範的なネットワークアクセスシステム信号送信を例示する、時間−空間図が示されている。多数当事者のSIP会議呼び出しにおいては、各当事者は呼び出しから自分自身を脱落させることだけができ、呼び出しは最後の当事者が呼び出しから去った後で終了する。一方、図9Bに例示されているような2当事者のSIP呼び出しにおいては、呼ばれる側または呼び出し側が呼び出しを終了することができる。図9Bに示されているように、顧客サイトの呼び出し側がPAD40がCCSC120に渡すBYE要求を送信することによって呼び出しの終了を開始する。CCSC120はBYE要求に対して、その活性セッションテーブルからSIPセッションを削除することによっておよびポリシーキャッシュ130からSIPセッションに関連するポリシー規則を取り除くことによって応答する。CCSC120はそれからPAD40が、SIP呼び出しからCCSC120へ、続くSIPメッセージを渡さないよう、また、SIP呼び出しに対する全設定を削除するようPAD40を設定する。CCSC120はまたBYE要求を呼ばれる側に転送するPAD40にBYE要求を送信する。BYE要求の受信に応答して、呼ばれる側はSIP200OKメッセージを送信することによってSIP呼び出しの終了に応答する。PAD40はSIP200OKメッセージをCCSC120に渡すことなく呼び出し側に転送する。
【0098】
図9Cを参照して、許可された期間を超えたSIP呼び出しを終了するための模範的なネットワークアクセスシステムの信号送信を示す時間−空間を例示する。示された例においては、SIP呼び出しの終了はCCSC120が、SIP呼び出しがセッションの終了タイマによってポリシーされた許可された期間を超えたということを検出することによって開始される。呼ばれる側は、それから呼び出しを終了するためにBYE要求を発行する。BYE要求の受信に応答して、PAD40はBYE要求をCCSC120に渡す。これによって、CCSC120はその活性化セッションテーブルからSIPセッションを削除し、そのポリシーキャッシュ130から関連したポリシーを除去する。CCSC120はそれからPAD40を、PAD40がSIP呼び出しにおいて、続くSIPメッセージをCCSC120に渡さないよう設定すると共に、PAD40にSIP呼び出しに対するすべての設定を削除するよう命令する。CCSC120はそれからBYE要求をPAD40に発行する。PAD40はBYE要求を呼び出し側および呼ばれる側の両方に転送する。呼び出し側および呼ばれる側はそれからSIP200OKメッセージを介してSIPセッションの終了に応答する。
【0099】
図9Dはどの当事者も呼び出し要求の終了をしないで、そのかわりに両当事者が単にSIPセッションを単に終了する、第3の呼び出し終了例を例示する。SIPセッションにおける活性がないときは、SIP呼び出しのためのPAD40における不活性タイマは終了する。PAD40はそれからCCSC120にタイムアウトを報告する。CCSC120はその活性セッションテーブルからSPIセッションを削除し、そのポリシーキャッシュ130から関連したポリシーを除去する。CCSC120はそれからPAD40に対してSIP呼び出しのためのすべての設定を削除するよう命令する。
【0100】
次に図9Eを参照して、呼び出し側と呼ばれる側との間のSIP呼び出し能力要求の交渉における模範的なネットワークアクセスシステム信号送信を示す時間−空間図を例示する。図9Aに関して上で述べたように、SIP呼び出しはSIP INVITE要求を発行する顧客サイトで顧客アプリケーションによって開始される。このINVITE要求はPAD40によって捕獲され、CCSC120に渡される。CCSC120はポリシーサーバ48に問い合わせを行う。ポリシーサーバ48はSIP呼び出しの承認およびこのSIPセッション(ポリシー要求において要求されたように)に対するポリシー規則のダウンロードで応答する。CCSC120はそれからINVITE要求を、呼ばれる側へ転送するPAD40に戻す。
【0101】
しかしながら、図9Aに例示された例と対照的に、呼ばれる側はSIP呼び出しを確認するSIP200OKメッセージで応答を行わない。代わりに、呼ばれる側はSIP606NOT ACCEPTABLEメッセージと共に応答する。このメッセージは、要求された呼び出し帯域幅は呼ばれる側のアクセスリンクによってサポートされうるものよりも高くかつ、単に56Kbps接続が可能であるということを示す。INVITE要求によって要求されるように、呼ばれる側の応答は、例えば、単にPCM(パルスコードモジュレーション)または線形予測複合化(LPC)オーディオがサポートされうる(その優先順で)メディア符号化の組を表示する。SIP606NOT ACCEPTABLEメッセージの受信に応答して、PAD40はCCSC120にメッセージを渡す。CCSC120は局所的なポリシーキャッシュ130に問い合わせ、新しい可能性の組を承認する。CCSC120はそれからSIP606NOT ACCEPTABLEメッセージをPAD40に戻し、PAD40はそのメッセージを呼び出し側へ渡す。
【0102】
呼び出し側がSIP606NOT ACCEPTABLE応答を受け取ると、呼び出し側は呼び出し能力要求を調整し、56Kbps帯域幅、LPCオーディオ符号化および満了タイマ120分を特定する別のINVITE要求を発行する。前と同様に、新しいINVITE要求はPAD40によってCCSC120に渡される。CCSC120はそれからその局地的なポリシーキャッシュ130に問い合わせ、リソースの利用可能性に応じて呼び出し期間として100分を限定する。CCSC120はそれからPAD40に対して満了タイマに100分を設定したINVITE要求を戻し、PAD40はINVITE要求を呼ばれる側に送信する。
【0103】
この第2INVITE要求の受信に応答して、呼ばれる側は呼び出し期間として100分を含むすべての呼び出し要求をサポートできるということを決定する。従って、呼ばれる側は満了タイマとして100分が設定されたSIP200OKメッセージで応答する。SIPOK応答の受信に応答して、PAD40は応答をCCSC120に送信し、CCSC120はそのポリシーキャッシュ130を参照してSIPOK応答に搬送されているSIP可能セットをチェックしてそれを承認する。CCSC120はそれからPAD40にSIPOK応答を送信し、PAD40はSIPOK応答を呼び出し側に転送する。呼び出し側がSIPOK応答を受信すると、呼び出し側はその満了タイマを100分に修正してACK要求を介してSIPOKを応答する。PAD40はACK応答をCCSC120に渡し、CCSC120はACK応答に搬送された最終のSIP能力セットを承認する。この承認に引き続いて、CCSC120はPAD40に不活性タイマおよびSIP呼び出しを容易にするための他のパラメータを設定する。CCSC120はまたPAD40にACKメッセージを戻し、PAD40はACKメッセージを呼ばれる側に転送する。呼ばれる側によって、ACK応答が受信されたら、SIP呼び出しは成功裏に確立される。
【0104】
IPマルチキャストの例
現状のネットワークにおいて実施されているように、IPマルチキャスト、すなわち、パケットを2またはそれ以上のレシーバに配送するために通信の「オープングループ」モデルを採用している。この開放グループモデルによれば、ソースはパケットを送信するマルチキャストのアドレスを単に知る必要があるが、マルチキャストセッションに参加している「グループ」の構成員を知る必要はなく、自分たちがマルチキャストパケットを送信しているマルチキャストグループに属している構成員を知る必要もない。さらに、マルチキャストグループメンバーが任意にマルチキャストグループに参加または撤退できるということを意味する、グループメンバーが、登録し、同期しまたは交渉する必要がある中央グループ管理団体はない。
【0105】
マルチキャスト通信の現状のオープングループモデルはマルチキャスト通信の管理またはマルチキャスト通信の制御を許容していないが、マルチキャストグループ構成員の管理および制御は送信者および受信者の両方にとって重要である。送信者にとっては、権限のあるソースのみがパケットをマルチキャストグループに送信できるということが重要である。例えば、コンテンツプロバイダはマルチキャストグループに対する唯一のデータソースとしての独占性を保護したいとしばしば望み、権限のないソースによる洪水によるサービス拒否の攻撃を避けたいと望む。マルチキャストグループにおいてレシーバの組に対しても同様にソースによって権限を与えられた当事者に対するパケットの受信が制限されるように制御することも同様に重要である。例として、ソースはビデオ配信およびビデオ会議マルチキャストパケットを受信することのできるレシーバを制限することを望む。従来のIPマルチキャストオープングループモデルの問題点は上記した通りであるが、この発明のネットワークアクセスシステムの構成(architecture)は図10A−10Hに例示されているようにポリシーに基づくマルチキャストサービス管理を実行する。
【0106】
図10A−10Bをまず参照して、この発明に従う新しいマルチキャストグループの登録を管理するための模範的なネットワークアクセスシステム信号送信を示す時間−空間図が表示される。図10Aに示すように、顧客サイトのホストはPAD40を介してアクセスルータ44にインターネットグループマルチキャストプロトコル(Internet Group Multicast Protocol)(IGMP)ジョイングループレポートメッセージ(Join−Group Report Message)を送ることによってマルチキャストグループ(新しいマルチキャストグループであってもよい)に参加を希望する信号を送る。プロトコルタイプ(PT=2)を検査することによって、IGMPメッセージを捕獲するよう設定されたPAD40のパケットヘッダーフィルタ80はジョイントグループレポートメッセージを外部プロセッサ42のマルチキャストサービスコントローラ(MSC)120に転送する。ジョイントグループレポートメッセージの受信に応答して、MSC120はSPI56を介してポリシーサーバ48に問い合わせる。SPI56はこの場合はLDAPを採用している。ポリシーサーバ48はホストのIPアドレスがマルチキャストグループのための資格のある構成員リストに属しているかどうかを判定するためにポリシーデータベース46を調査することによって問い合わせに応答する。
【0107】
図10Bに示すように、もしポリシーサーバ48が、ホストがマルチキャストグループに参加する資格を有さないと判定したときは、ポリシーサーバ48はジョイングループリクエスト(Join−Group request)を拒否するポリシーをMSC120に戻す。MSC120は、権限を有しないホストが、アクセスルータ44内で新しいマルチキャストグループを登録するのを防ぐジョイングループメッセージを落とすことによって要求の拒否に応答する。MSC120は不正な試みを検出したり、サービスアタックを拒否するイベントログに権限のない試みを書き込んでもよい。
【0108】
代わりに、図10Aに示すように、もしポリシーサーバ48が特定されたマルチキャストグループに参加するホストの要求を認めたときは、ポリシーサーバ48はMSC120に承認を示すポリシー決定を送信する。MSC120はPAD40にジョイングループレポートメッセージを戻す。PAD40はそれからアクセスルータ44にジョイングループレポートメッセージを転送する。もしホストがネットワーク上でのマルチキャストグループの最初の構成員であれば、アクセスルータ44はジョイングループレポートメッセージにおいて報告されたマルチキャストグループをホストが帰属するネットワーク上のマルチキャストグループ構成員のリストに追加する。
【0109】
図10Bおよび図10Cを参照して、マルチキャストグループの構成員を決定しようと努めているホスト構成員の問い合わせを使用した模範的なネットワークアクセスシステム信号送信を例示する時間−空間図を例示する。図10Cに示す例においては、PAD40はアクセスルータ44からネットワークにおいて発生したIGMPホスト構成員問い合わせメッセージを受信する。パケットヘッダーフィルタ80はそのポート番号に基づいてこのIGMPメッセージを捕獲し、ホスト構成員問い合わせメッセージ(Host Membership Query message)を外部プロセッサ42のMSC120に渡す。MSC120はそれからホスト構成員問い合わせメッセージのソースアドレスが権限を有するアクセスルータ44であるかどうかを確認するためにSPI56(この例ではLDAPを採用している)を介してポリシーサーバ48に問い合わせる。
【0110】
図10Bに示すように、もしポリシーサーバ48がポリシーデータベース46を参照して、ホスト構成員問い合わせメッセージが特定されないまたは権限を有さないソースからのものであると判定したときは、ポリシーサーバ48はホスト構成員問い合わせを拒否するポリシー決定をMSC120に戻す。問い合わせの拒否に応答して、MSC120はホスト構成員問い合わせメッセージを落とし、権限のないホスト構成員問い合わせメッセージの洪水によってネットワークに向けられたサービス拒絶を示してもよい、イベントログに警告メッセージを書き込む。
【0111】
他方、もしポリシーサーバ48がホスト構成員問い合わせを承認し、図10Cに示すようにMSC120にそのように指示したときは、ホスト構成員問い合わせはPAD40に戻され、PAD40はホスト構成員問い合わせを顧客サイトのホストに転送する。このように、この発明のネットワークアクセスシステムはホスト構成員問い合わせのポリシーに基づいた管理をサポートしている。
【0112】
図10E−図10Fを参照して、ネットワークに対してマルチキャストパケットの送信を管理するために使用された模範的なネットワークアクセスシステム信号送信の時間−空間図が例示されている。図10E、10Fの両方に示されている例では、顧客サイトのホストは特定のマルチキャストグループにアドレスされたIPマルチキャストパケットを送信する。PAD40が最初のマルチキャストパケットを受信したとき、パケットヘッダーフィルタ80は、そのマルチキャストアドレスを有するパケットが以前受信されたかどうかを決定するための確認をした後でパケットを捕獲する。PAD40はそれから第一マルチキャストパケットを外部プロセッサ42のMSC120に渡す。MSC120は、マルチキャストパケットのソースアドレスがマルチキャストパケットを特定されたマルチキャストグループに送信することを承認されているかをうかを判定するためにSPI56(これはこの場合LDAPを採用している)を介してポリシーサーバ48に問い合わせる。
【0113】
図10Fに示すように、マルチキャストパケットの送信を拒否するポリシー決定の受信に応答して(例えば、マルチキャストパケットを送信するソースは特定されていないかまたは権限を与えられていないために)、MSC120はソースとマルチキャストアドレスのこの組み合わせのためのマルチキャストパケットを落とすようPAD40を設定し、ネットワーク上で特定のソースのマルチキャストパケットの洪水によってサービスの拒絶を示してもよい警告メッセージをイベントログに書き込む。代わりに、もしMSC120がポリシーサーバ48から図10Eに示すようにマルチキャストパケットを承認するというポリシー決定を受信すれば、MSC120はPAD40をアクセスルータ44に対してソースとマルチキャストアドレスのこの組み合わせのためのマルチキャストパケットを直接転送し、最初のマルチキャストパケットをPAD40に戻すよう設定する。PAD40はそれから最初のマルチキャストパケットをアクセスルータ44に転送し、流れの中のすべての続くマルチキャストパケットをMSC120に渡すことなく直接アクセスルータ44に転送する。このように、この発明のネットワークアクセスシステムは承認されたマルチキャストパケットの入来を許容し、権限を有さないパケットの入来を妨げるポリシーベースの決定を利用している。
【0114】
図10G−図10Hを参照して、ネットワークからマルチキャストパケットの受信を管理するために使用された模範的なネットワークアクセスシステムの信号送信の時間−空間図を例示する。図10Gおよび図10Hに示された例においては、アクセスルータ44はネットワークからIPマルチキャストパケットを受信し、それらをPAD40に転送する。最初のマルチキャストパケットの受信に応答して、PAD40のパケットヘッダーフィルタ90はそのマルチキャストアドレスを有するパケットが以前受信されたかどうかを判定した後でマルチキャストパケットを捕獲する。パケットヘッダーフィルタ90はそれから外部プロセッサ42にあるMSC120に最初のマルチキャストパケットを渡す。外部プロセッサ42はマルチキャストアドレスのソースアドレスが特定されたマルチキャストグループへマルチキャストパケットを送信してもよいと承認されているかどうかを判定するためにポリシーサーバ48に問い合わせる。
【0115】
図10Hに示すように、もしポリシーサーバ48が例えば、マルチキャストパケットのソースが特定されていないかまたは権限を有していないという理由で、マルチキャストパケットの受信は権限を有していないと判定したとき、ポリシーサーバ48はMSC120にマルチキャストパケットの受信を拒否するポリシー決定を送信する。マルチキャストパケットの受信の拒否に応答して、MSC120はPAD40をソースおよびマルチキャストアドレスのこの組み合わせに対してマルチキャストパケットを落とすよう設定し、特定のソースアドレスからの権限を有しないマルチキャストパケットが顧客サイトにおいてサブネットワークをあふれさせるような試みを行っているということを示してもよいイベントログに警告メッセージを書き込む。その結果、ソースとマルチキャストアドレスの同じ組み合わせを含む、続くマルチキャストパケットはPAD40によって落とされる。
【0116】
図10Gに示すように、代わりに、もしポリシーサーバ48がマルチキャストパケットの受信を承認すれば、MSC120はソースとマルチキャストのアドレスの同じ組み合わせを含む、続くパケットを顧客サイトに直接転送するようPAD40を設定する。MSC120は最初のマルチキャストパケットをPAD40に戻し、PAD40は最初のマルチキャストパケットおよび続くマルチキャストパケットを顧客サイトに転送する。図10Hに例示するように、流れの中の、続くマルチキャストパケットはPAD40によってMSC120に渡すことなく直接顧客サイトに転送される。
【0117】
結論
述べてきたように、この発明は分散されたネットワークアクセスシステム構成を導入する。この発明の分散されたネットワークアクセスシステム構成は従来の融通のきかないエッジルータを、少なくともフィルタ処理および転送機能を含むプログラム可能なアクセス装置と、PADのポリシーに基づく制御を実行する1またはそれ以上のサービスが特定されたサービスコントローラおよび基本的なルーティングを行うアクセスルータと置き換える。この分散された構成は従来の融通のきかないルータ構成に対して、拡張性、柔軟性、拡大性、相互操作性、セキュリティ、サービス提供性を含む多くの利点を有している。
【0118】
この発明のネットワークアクセスシステム構成は3つの論理モード間の機能性の分散のおかげで従来の融通性のないルータと比べて優れた拡張性を達成している。3つの論理モードは、プログラム可能なアクセス装置、サービスコントローラを提供する外部プロセッサおよびアクセスルータである。特に、プログラム可能なアクセス装置と外部プロセッサによって実行される機能性からアクセスルータによって実行されるルーティングを分離することによって、サービス要求および顧客要求に従って、外部プロセッサモジュールとプログラム可能なアクセス装置とを単に加えることによってアクセスルータに過負荷を与えることなく付加的なトラフィックおよびサービスを処理できる。加えて、インターネットトラフィックパターンは地域的に集中されたものからグローバルに分散されたものまで変化を続けており、地域的なルーティングから離れたネットワークアクセスポイントでのサービスおよびポリシー制御を適応する能力のおかげで、離れた目的地に向かうトラフィックの転送のためのより拡張性のあるデザインを提供できる。
【0119】
この発明の分散されたネットワークアクセスシステム構成はまた改良された柔軟性を提供する。このような柔軟性はプログラム可能なアクセス装置の機能モジュールのサービス制御およびプログラム性を支配するポリシーをサービスプロバイダおよび/または顧客が実行する能力の自然の成り行きである。例えば、プログラム可能なアクセス装置のパケットヘッダーフィルタは、TCP、SIPおよびIGMPのような高い層のプロトコル情報とSA、DA、TOS/DSCP、PT、SPおよびDPの任意の組み合わせに基づくパケットフローとを区別するよう設定されうる。加えて、プログラム可能なアクセス装置のモニタは外部プロセッサのサービスコントローラによって、SA、DA、TOS/DSCP、PT、SP、DPまたは他のフィールドの任意の組み合わせに対する統計を収集しかつ収集された統計に基づいてイベント(例えば、過度のTCP再送信およびRTP/UDP不活性)を報告するよう外部プロセッサのサービスコントローラによってプログラムされうる。そのようなモニタのひとつの特別に有益な応用は、活性化されたSLAがネットワークを通して維持されることを確実にするために異なるレイヤ2、レイヤ3、レイヤ4およびより高いレイヤのトラフィックタイプに対する統計を追跡することである。ネットワークにおける動的SLAを提供するためのこのポリシーに基づくアプローチはSLAに対する現在のTDM(時分割多重化)よりもより柔軟性のある解決方法である。
【0120】
拡張性の利点は部分的には、外部プロセッサにおけるサービスコントローラによって提供されるサービスに特定された制御によって生じる。そのようなサービスに特定された制御は専用化されたサービスコントローラかまたは各々がサービスに特定されたAPIをサポートする汎用コントローラのいずれかで実行されうる。選択された実施例にかかわらず、新しいサービスが単に新しいサービスコントローラを加えるかまたは既存のサービスコントローラを単に修正するだけで導入しうる。新しいサービスの追加はプログラム可能なアクセス装置、アクセスルータまたは他のサービスコントローラに対して何の変更も要求しない。このように、他のサービスはサービスの向上時に妨げられない。さらに、サービスコントローラはプログラム可能なアクセス装置およびアクセスルータと独立しているため、新しいサービスの発展および既存のサービスの改善は独自性の強いハードウエアの供給メーカに依存しない。このことは、サービスの開発および改善のための時間とコストを大幅に減少させる。
【0121】
この発明の拡張性はプログラム可能なアクセス装置において実行されてもよい追加のモニタ機能にまた起因する。これは例えば、メモリダンプおよび他の関連した情報をサービスコントローラにセーブし、報告することによって標準に適合しているかどうかを検証し、コードをデバッグしおよび故障診断を手助けする等を含む。そのような能力は従来のスイッチまたはルータに一体化されず、外部ネットワークモニタ装置を追加することによってのみ通常は達成される。この発明によって提供される向上した使用モニタはサービスプロバイダがネットワークリソース(すなわち能力)を動的に、一方でSLAに適合した状態で販売することを可能にする。これはネットワークの使用を改良するだけでなく、ネットワーク管理費用を減らすトラフィックエンジニアリングを自動化する。
【0122】
上記したように、この発明の分散されたネットワークアクセスシステムはプログラム可能なアクセス装置、サービスコントロールを提供する外部プロセッサおよびアクセスルータ間でネットワークアクセス機能を分散する。これらの異なる要素は明確に定義されたインターフェイスを介して通信するため、相互運用性は同じ供給メーカによって開発されるすべてのハードウエアまたはソフトウエア要素に依存しない。
【0123】
この発明はサービスの窃盗およびネットワークに対する攻撃に対するセキュリティを向上させている。例えば、プログラム可能なアクセス装置の転送機能はより低い安全環境に置く一方で、外部プロセッサは、安全な環境に維持されてもよい。加えて、安全ソフトウエアおよび/またはハードウエアは、容易に外部プロセッサに一体化される。その結果、(他の権限のない通信と同様に)、そのマスタ外部プロセッサ以外のIPアドレスからのプログラム可能なアクセス装置を設定したセッションはネットワークに渡されることなく、プログラム可能なアクセス装置のパケットヘッダーフィルタによって拒絶される。
【0124】
この発明はまた向上したサービスを提供できる。プログラム可能なアクセス装置がネットワークを、転送およびアプリケーションレベルをメッセージを遮断し、それによって、アプリケーションとユーザの特定を可能とするため、この発明のネットワークシステムはユーザアプリケーションのデータフローに対して適切な優先権の確立または望ましい帯域幅の提供が可能になる。例えば、RSVPおよびLANサブネット帯域幅マネージャ(SBM)を採用することによって、顧客のアプリケーションは保証された帯域幅および局地的および広い領域におけるネットワークにおいて端末相互間で優先権を提供される。重要なことは、利用可能なネットワーク能力に基づいて顧客のアプリケーションに対して帯域幅の予約、許可制御の実行およびトラフィックの流れを優先させることを可能にするポリシーは、サービスプロバイダだけでなく、顧客によってでも決定されうる。このように、顧客のアプリケーションは、動的にサービスを提供し、アプリケーションに保証されたサービスの質を提供するためにサービスプロバイダネットワークのリソースと相互作用できる。ポリシー制御によって実施されるこのネットワークに基づいた提供は、時間のかかるまたエラーの多いOSS(オペレーションおよびサポートシステム)の提供に取って代わり、それによってIPを中心とした顧客アプリケーションのためのネットワーク提供に対する集中とコストを削減する。
【0125】
上記利点があるとしても、この発明の分散されたネットワークアクセスシステム構成はコスト的に効率のよいネットワークソリューションを提供できる。現在のところ、サービスプロバイダに対する傾向はより「インテリジェント」でありそれゆえより高価な装置を自分たちのネットワークデザインの端部に設置することが推し進められている。しかしながら、このデザインは顧客に対してインテリジェントでそれゆえ高価なCPE(顧客施設装置)を購入することを要求する。一方、この発明の分散されたネットワークアクセスシステム構成は比較的安価なPADをサポートし、このPADは顧客が不当な出費なしでサービスの配送を提供できるための十分なインテリジェンスを購入することを可能にする。
【0126】
発明が好ましい実施例を参照して示しまた述べられたが、当業者にとって発明の精神および範囲から離れることなくその中で形式および詳細において各種の変更がされることが理解される。例えば、この発明の局面はこの発明の機能に向けられたソフトウエアを実行するコンピュータシステムに関して述べられたが、この発明は代わりにデータ処理システムと共に使用されるプログラムプロダクトとして実行されてもよい。この発明の機能をポリシーしたプログラムは各種の信号を担持する媒体を介してデータ処理システムに配送されうる。そのような媒体は、特に限定はないが、再書き込みのできない記録媒体(例えばCD−ROM)、再書き込み可能な記録媒体(例えばフロッピーディスクまたはハードディスクドライブ)、およびデジタルおよびアナログネットワークのような通信媒体を含む。それゆえ、そのような信号を担持した媒体は、この発明の機能に向けられたコンピュータ読み取り可能な命令を搬送または符号化したとき、この発明の代わりの実施例に相当するということを理解すべきである。
【図面の簡単な説明】
【図1A】集合体とコアルータを含む、先行技術のインターネットサービスプロバイダネットワークの都市図である。
【図1B】この発明に従うインターネットサービスプロバイダネットワークの都市図である。
【図2】この発明に従う通信ネットワークの例示的な実施例を示す図である。
【図3】この発明に従うプログラム可能なアクセス装置(PAD)の模範的な実施例のより詳細なブロック図である。
【図4】この発明に従う外部プロセッサの模範的な実施例のより詳細なブロック図である。
【図5A】一次サービスコントローラの故障による、二次サービスコントローラへの切り替え時のプログラム可能なアクセス装置と外部プロセッサとの間の模範的な信号送信を例示する図である。
【図5B】一次サービスコントローラの回復後の、二次サービスコントローラから一次サービスコントローラへの切り替え時のプログラム可能なアクセス装置と外部プロセッサとの間の模範的な信号送信を示す図である。
【図6】リソース予約プロトコル(RSVP)を使用したサービス予約をサポートするための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7A】TCPセッション中の模範的なプログラム可能なアクセス装置の動作を例示する状態機械図である。
【図7B】TCP状態メモリが満杯の場合の模範的なプログラム可能なアクセス装置および関連したサービスコントローラの動作を例示する図である。
【図7C】TCPセッション確立時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7D】TCPセッションの切断時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7E】TCPセッションのための承認された要求に応答して、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図7F】TCPセッションタイムアウト時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図7G】TCPセッションが突発的に終了したときの、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8A】向上したサービスの質(QoS)経路を有するUDP(ユーザデータグラムプロトコル)セッションを確立するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8B】UDPセッションにおけるパケットが向上されたQoSよりも最善努力型の搬送を受信した場合の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図8C】タイムアウトしたUDPセッションをテアダウンするための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9A】セッション開始プロトコル(SIP)呼び出しを確立するときの、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図9B】SIP呼び出し終了時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9C】ネットワークによってタイムアウトが検出した後でSIP呼び出しを終了するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9D】プログラム可能なアクセス装置によるタイムアウトの検出後のSIP呼び出しを終了するための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図9E】SIP呼び出し交渉時の、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図10A】マルチキャストグループの登録を認めるための、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10B】マルチキャストグループの登録をするための権限を有さない試みに応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10C】承認されたマルチキャストグループ構成員の問い合わせに応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10D】権限を有さないマルチキャストグループ構成員からの問い合わせに応答した、この発明に従うネットワークアクセスシステムのおける模範的な信号送信を例示する図である。
【図10E】ネットワークの外部から承認されたマルチキャストパケットの受信に応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を示す図である。
【図10F】ネットワークの外部から権限を有さないマルチキャストパケットの受信に応答した、この発明に従うネットワークアクセスシステムにおける模範的な信号送信を例示する図である。
【図10G】ネットワークからの承認されたマルチキャストパケットの受信に応答したこの発明に従うネットワークアクセスシステムおける模範的な信号送信を示す図である。
【図10H】ネットワークから受信した権限を有さないマルチキャストパケットを処理するための、この発明に従うネットワークアクセスシステムおける模範的な信号送信を例示する図である。
Claims (49)
- ネットワークアクセスシステムにおいて使用されるプログラム可能なアクセス装置であって、前記プログラム可能なアクセス装置は、
パケットがネットワークと通信するための第一および第二のネットワークインターフェイスと、
パケットヘッダーフィルタおよび転送テーブルを含み、転送テーブルは第一および第二のネットワークインターフェイス間でパケットを転送するために使用され、前記パケットヘッダーフィルタはポリシー(policy)に基づいたサービスが実行される、第一および第二ネットワークインターフェイスの一つで受けられたメッセージを特定し、特定されたメッセージをメッセージインターフェイスを介して処理のために外部プロセッサへ渡す、プログラム可能なアクセス装置。 - パケットヘッダーフィルタは第一ネットワークインターフェイスから直接パケットを受け取る、請求項1に記載のプログラム可能なアクセス装置。
- パケットヘッダーフィルタは第一パケットヘッダーフィルタであって、プログラム可能なアクセス装置は、第二ネットワークインターフェイスから直接パケットを受ける第二パケットヘッダーフィルタをさらに含む、請求項2に記載のプログラム可能なアクセス装置。
- パケットヘッダーフィルタはレイヤ3よりも高いプロトコル層に関連したプロトコル情報に基づいてサービス処理のためのパケットをフィルタする、請求項1に記載のプログラム可能なアクセス装置。
- トラフィックパラメータを参照してパケットを取り締まるポリサ(policer)をさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- ポリサはトラフィックパラメータと適合しないパケットをマークするマーカーを含む、請求項5に記載のプログラム可能なアクセス装置。
- 少なくとも一つのトラフィックタイプをモニタする少なくとも一つの使用モニタをさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- 使用モニタは、超過したときに、使用モニタのための報告イベントを発生する、関連したしきい値を有する、請求項7に記載のプログラム可能なアクセス装置。
- 外部プロセッサに対して報告のイベントを通信する報告インターフェイスを含む、請求項8に記載のプログラム可能なアクセス装置。
- 関連したしきい値はセッション活性レベルしきい値を含む、請求項9に記載のプログラム可能なアクセス装置。
- 故障モニタをさらに含む、請求項7に記載のプログラム可能なアクセス装置。
- 発信パケットのための1またはそれ以上の出力バッファをさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- 1またはそれ以上の出力バッファ内において、発信パケットの送信を予定する、1またはそれ以上の出力バッファに関連したスケジューラをさらに含む、請求項12に記載のプログラム可能なアクセス装置。
- スケジューラはサービスクラスの複数の質をサポートする、請求項13に記載のプログラム可能なアクセス装置。
- 前記パケットヘッダーフィルタおよび前記転送テーブルがプログラムされる、制御インターフェイスをさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- 少なくとも一つのプログラムされたトラフィックタイプをモニタする少なくとも一つのプログラム可能なモニタをさらに含む、請求項15に記載のプログラム可能なアクセス装置。
- プログラムされたトラフィックパラメータを参照して、パケットを取り締まるポリサをさらに含む、請求項15に記載のプログラム可能なアクセス装置。
- 発信パケットのための1またはそれ以上の出力バッファと、関連したスケジューラとをさらに含み、関連したスケジューラは、発信パケットを1またはそれ以上の出力バッファから、プログラムされた方法論に従って、第二のネットワークインターフェイスを介して送信する、請求項15に記載のプログラム可能なアクセス装置。
- 特定されたメッセージはセッション開始プロトコル(SIP)メッセージである、請求項1に記載のプログラム可能なアクセス装置。
- 特定されたメッセージはインターネットグループマルチキャストプロトコル(IGMP)メッセージである、請求項1に記載のプログラム可能なアクセス装置。
- 特定されたメッセージはリソース予約プロトコル(RSVP)メッセージである、請求項1に記載のプログラム可能なアクセス装置。
- それぞれの複数のプロトコルタイプのための複数のプロトコルに特定の状態機械をさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- 前記複数のプロトコルに特定の状態機械は、転送制御プロトコル(TCP)状態機械を含み、制御コマンドに応答して、特定のTCPセッションに対して優遇措置を与える、請求項1に記載のプログラム可能なアクセス装置。
- プログラム可能なアクセス装置が活性化されたセッションを外部のプロセッサに状態情報を報告する、報告インターフェイスをさらに含む、請求項1に記載のプログラム可能なアクセス装置。
- 新しい外部サービスコントローラに対してサービスの割り当てに応答して、報告インターフェイスが活性化されたセッションに対する状態情報を報告する、請求項24に記載のプログラム可能なアクセス装置。
- ネットワークアクセスシステムのプログラム可能なアクセス装置におけるパケット処理の方法であって、前記方法は、
プログラム可能なアクセス装置の第一ネットワークインターフェイスで一連のパケットを受けるのに応答して、ポリシーに基づくサービスが実行される、メッセージを特定するためにプログラム可能なアクセス装置で一連のパケットをフィルタ処理するステップと、
特定されたメッセージをサービス処理のために外部プロセッサに渡すステップと、
特定されなかったメッセージに対して、プログラム可能なアクセス装置内の転送テーブルを参照してパケットのルーティングおよび、プログラム可能なアクセス装置の第二ネットワークインターフェイスでルーティングされたパケットを出力するステップとを含む、方法。 - 第一ネットワークインターフェイスから直接パケットヘッダーフィルタでパケットを受け取るステップをさらに含む、請求項26に記載の方法。
- パケットヘッダーフィルタは第一パケットヘッダーフィルタで、前記方法はさらに、第二ネットワークインターフェイスから直接プログラム可能なアクセス装置の第二パケットヘッダーフィルタでパケットを受け取るステップを含む、請求項27に記載の方法。
- フィルタ処理は、レイヤ3よりも高いプロトコル層に関するプロトコル情報に基づいてサービス処理のためのパケットをフィルタ処理する、請求項26に記載の方法。
- プログラム可能なアクセス装置のポリサを使用してきたトラフィックパラメータを参照してパケットを取り締まるステップをさらに含む、請求項26に記載の方法。
- 取り締まるステップは、トラフィックパラメータと適合しないパケットをマーキングするステップを含む、請求項30に記載の方法。
- プログラム可能なアクセス装置は少なくとも使用量モニタを含み、前記方法は、前記一連のパケット内の少なくとも一つのトラフィックタイプでモニタするステップをさらに含む、請求項26に記載の方法。
- 使用モニタは関連のしきい値を有し、前記方法はさらに、しきい値が越えたとき、使用モニタのための報告イベントを発生するステップをさらに含む、請求項32に記載の方法。
- 報告イベントを報告インターフェイスに介して外部プロセッサに通信するステップをさらに含む、請求項33に記載の方法。
- 報告イベントを発生するステップは、セッション活性レベルしきい値に応答して報告イベントを発生する、請求項34に記載の方法。
- 前記プログラム可能なアクセス装置で故障モニタを使用して故障をモニタするステップさらに含む、請求項32に記載の方法。
- 前記プログラム可能なアクセス装置において1またはそれ以上の出力バッファ内で発信パケットをバッファリングするステップをさらに含む、請求項26に記載の方法。
- サービスクラスの複数の質をサポートするために1またはそれ以上の出力バッファ内で発信パケットの送信のスケジューリングを行うステップをさらに含む、請求項37に記載の方法。
- 前記プログラム可能なアクセス装置の制御インターフェイスを介して前記プログラム可能なアクセス装置をプログラムするステップをさらに含む、請求項26に記載の方法。
- プログラム可能なアクセス装置は少なくとも一つのプログラム可能なモニタを含み、前記方法は、前記少なくとも一つのプログラム可能なモニタを使用した少なくとも一つのプログラム可能なトラフィックタイプをモニタするステップをさらに含む、請求項39に記載の方法。
- 前記プログラム可能なアクセス装置はポリサを含み、前記方法は、プログラムされたトラフィックパラメータを参照してパケットを取り締まるステップをさらに含む、請求項39に記載の方法。
- プログラム可能なアクセス装置は発信パケットのための1またはそれ以上の出力バッファおよび関連するスケジューラを含み、前記方法は、プログラムされた方法論に従って、第二ネットワークインターフェイスを介して1またはそれ以上の出力バッファから発信パケットを送信するステップを含む、請求項39に記載の方法。
- 特定されたメッセージはセッション開始プロトコル(SIP)メッセージである、請求項26に記載の方法。
- 特定されたメッセージはインターネットグループマルチキャストプロトコル(IGMP)メッセージである、請求項26に記載の方法。
- 特定されたメッセージはリソース予約プロトコル(RSVP)である、請求項26に記載の方法。
- 前記プログラム可能なアクセス装置内において、それぞれの複数のプロトコルタイプのための複数のプロトコルに特有の状態機械を維持するステップをさらに含む、請求項26に記載の方法。
- 前記複数のプロトコルに特有の状態機械は転送制御プロトコル(TCP)状態機械を含み、前記方法はさらに、命令に応答して前記プログラム可能なアクセス装置によって特定のTCPセッションに対して優遇措置を提供するステップをさらに含む、請求項26に記載の方法。
- 活性化されたセッションに対して状態情報をプログラム可能なアクセス装置の報告インターフェイスを介して外部のプロセッサへ報告するステップをさらに含む、請求項26に記載の方法。
- 報告するステップは、サービスを新しい外部サービスコントローラに割り当てるのに応答して活性化されたセッションに対する状態情報を報告するステップを含む、請求項48に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/723,481 US8180870B1 (en) | 2000-11-28 | 2000-11-28 | Programmable access device for a distributed network access system |
PCT/US2001/044397 WO2002044844A2 (en) | 2000-11-28 | 2001-11-28 | Programmable access device for a distributed network access system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004515179A true JP2004515179A (ja) | 2004-05-20 |
Family
ID=24906451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002546944A Withdrawn JP2004515179A (ja) | 2000-11-28 | 2001-11-28 | 分散されたネットワークアクセスシステムのためのプログラム可能なアクセス装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US8180870B1 (ja) |
EP (1) | EP1340158A4 (ja) |
JP (1) | JP2004515179A (ja) |
CN (1) | CN1488107A (ja) |
AU (1) | AU2002219893A1 (ja) |
BR (1) | BR0115503A (ja) |
CA (1) | CA2430132A1 (ja) |
MX (1) | MXPA03004671A (ja) |
WO (1) | WO2002044844A2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657628B1 (en) | 2000-11-28 | 2010-02-02 | Verizon Business Global Llc | External processor for a distributed network access system |
US7023843B2 (en) * | 2002-06-26 | 2006-04-04 | Nokia Corporation | Programmable scheduling for IP routers |
US8477605B2 (en) * | 2004-09-29 | 2013-07-02 | Rockstar Consortium Us Lp | Preventing illicit communications |
US8261337B1 (en) * | 2004-11-17 | 2012-09-04 | Juniper Networks, Inc. | Firewall security between network devices |
CN101026812B (zh) * | 2006-02-24 | 2010-04-14 | 华为技术有限公司 | 在多方通信系统中获得会话参与用户会话能力的方法 |
US7907526B2 (en) * | 2006-05-26 | 2011-03-15 | Telefonaktiebolaget L M Ericsson (Publ) | Traffic-triggered setup of label switched paths |
CN101399774B (zh) * | 2008-10-24 | 2012-07-04 | 华为技术有限公司 | 一种分组数据的处理方法和系统 |
US8804720B1 (en) * | 2010-12-22 | 2014-08-12 | Juniper Networks, Inc. | Pass-through multicast admission control signaling |
US10135732B2 (en) * | 2012-12-31 | 2018-11-20 | Juniper Networks, Inc. | Remotely updating routing tables |
US10178017B2 (en) * | 2013-12-18 | 2019-01-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and control node for handling data packets |
CN105451207B (zh) * | 2014-07-25 | 2020-10-30 | 阿尔卡特朗讯 | 基于pcc架构的业务功能链的控制方法及装置 |
US11700526B2 (en) * | 2018-06-12 | 2023-07-11 | Samsung Electronics Co., Ltd. | Method and apparatus for identifying in-call capability features |
Family Cites Families (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4228496A (en) | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor system |
US5058056A (en) | 1983-09-12 | 1991-10-15 | International Business Machines Corporation | Workstation takeover control |
US4899333A (en) | 1988-03-31 | 1990-02-06 | American Telephone And Telegraph Company At&T Bell Laboratories | Architecture of the control of a high performance packet switching distribution network |
US5027269A (en) | 1989-04-27 | 1991-06-25 | International Business Machines Corporation | Method and apparatus for providing continuous availability of applications in a computer network |
US5115432A (en) | 1989-12-12 | 1992-05-19 | At&T Bell Laboratories | Communication architecture for high speed networking |
US5251205A (en) | 1990-09-04 | 1993-10-05 | Digital Equipment Corporation | Multiple protocol routing |
FR2690260B1 (fr) | 1992-04-17 | 1997-01-03 | Bull Sa | Utilisation d'un protocole bidirectionnel de tres haut niveau pour la communication entre un systeme hypermedia et une pluralite d'editeurs. |
US5490252A (en) * | 1992-09-30 | 1996-02-06 | Bay Networks Group, Inc. | System having central processor for transmitting generic packets to another processor to be altered and transmitting altered packets back to central processor for routing |
US5592672A (en) | 1993-11-02 | 1997-01-07 | Bell Communications Research, Inc. | System for load balancing between message processors by routing all queued messages to a particular processor selected by a deterministic rule |
US5864683A (en) | 1994-10-12 | 1999-01-26 | Secure Computing Corporartion | System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights |
US5541911A (en) * | 1994-10-12 | 1996-07-30 | 3Com Corporation | Remote smart filtering communication management system |
US5737526A (en) | 1994-12-30 | 1998-04-07 | Cisco Systems | Network having at least two routers, each having conditional filter so one of two transmits given frame and each transmits different frames, providing connection to a subnetwork |
US5777549A (en) | 1995-03-29 | 1998-07-07 | Cabletron Systems, Inc. | Method and apparatus for policy-based alarm notification in a distributed network management environment |
JP3097525B2 (ja) | 1995-11-10 | 2000-10-10 | 株式会社日立製作所 | 情報フィルタリング処理を行うデータ伝送方法 |
US5742607A (en) | 1995-12-20 | 1998-04-21 | Intel Corporation | Method and apparatus for controlling two way communication via disparate physical media |
US5870561A (en) | 1996-03-15 | 1999-02-09 | Novell, Inc. | Network traffic manager server for providing policy-based recommendations to clients |
US6038309A (en) | 1996-06-13 | 2000-03-14 | Northern Telecom Limited | Apparatus and method for externally controlling processing of a service call |
US5842040A (en) * | 1996-06-18 | 1998-11-24 | Storage Technology Corporation | Policy caching method and apparatus for use in a communication device based on contents of one data unit in a subset of related data units |
US6304893B1 (en) | 1996-07-01 | 2001-10-16 | Sun Microsystems, Inc. | Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system |
US6111883A (en) | 1996-07-12 | 2000-08-29 | Hitachi, Ltd. | Repeater and network system utilizing the same |
US5832228A (en) | 1996-07-30 | 1998-11-03 | Itt Industries, Inc. | System and method for providing multi-level security in computer devices utilized with non-secure networks |
US6130889A (en) | 1996-10-02 | 2000-10-10 | International Business Machines Corporation | Determining and maintaining hop-count for switched networks |
US5835727A (en) * | 1996-12-09 | 1998-11-10 | Sun Microsystems, Inc. | Method and apparatus for controlling access to services within a computer network |
US6157648A (en) | 1997-03-06 | 2000-12-05 | Bell Atlantic Network Services, Inc. | Network session management |
US6311215B1 (en) | 1997-03-25 | 2001-10-30 | Intel Corporation | System for dynamic determination of client communications capabilities |
US6161145A (en) | 1997-05-08 | 2000-12-12 | International Business Machines Corporation | Updating server-related data at a client |
US5996021A (en) | 1997-05-20 | 1999-11-30 | At&T Corp | Internet protocol relay network for directly routing datagram from ingress router to egress router |
US6137777A (en) | 1997-05-27 | 2000-10-24 | Ukiah Software, Inc. | Control tool for bandwidth management |
US5968176A (en) | 1997-05-29 | 1999-10-19 | 3Com Corporation | Multilayer firewall system |
US6088356A (en) | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US5938736A (en) | 1997-06-30 | 1999-08-17 | Sun Microsystems, Inc. | Search engine architecture for a high performance multi-layer switch element |
US6081522A (en) | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | System and method for a multi-layer network element |
US5920566A (en) * | 1997-06-30 | 1999-07-06 | Sun Microsystems, Inc. | Routing in a multi-layer distributed network element |
US6094435A (en) | 1997-06-30 | 2000-07-25 | Sun Microsystems, Inc. | System and method for a quality of service in a multi-layer network element |
JP3372455B2 (ja) | 1997-07-03 | 2003-02-04 | 富士通株式会社 | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 |
US6233245B1 (en) | 1997-12-24 | 2001-05-15 | Nortel Networks Limited | Method and apparatus for management of bandwidth in a data communication network |
CA2226063C (en) | 1997-12-31 | 2003-10-07 | Northern Telecom Limited | A method of provisioning nodes within a communications network |
US6230271B1 (en) | 1998-01-20 | 2001-05-08 | Pilot Network Services, Inc. | Dynamic policy-based apparatus for wide-range configurable network service authentication and access control using a fixed-path hardware configuration |
US6157635A (en) | 1998-02-13 | 2000-12-05 | 3Com Corporation | Integrated remote data access and audio/visual conference gateway |
US6141686A (en) | 1998-03-13 | 2000-10-31 | Deterministic Networks, Inc. | Client-side application-classifier gathering network-traffic statistics and application and user names using extensible-service provider plugin for policy-based network control |
US6157955A (en) | 1998-06-15 | 2000-12-05 | Intel Corporation | Packet processing system including a policy engine having a classification unit |
US6452915B1 (en) * | 1998-07-10 | 2002-09-17 | Malibu Networks, Inc. | IP-flow classification in a wireless point to multi-point (PTMP) transmission system |
US6424659B2 (en) * | 1998-07-17 | 2002-07-23 | Network Equipment Technologies, Inc. | Multi-layer switching apparatus and method |
US6170009B1 (en) | 1998-07-17 | 2001-01-02 | Kallol Mandal | Controlling devices on a network through policies |
US6631414B2 (en) | 1998-08-31 | 2003-10-07 | International Business Machines Corporation | System and method for establishing virtual and physical connection paths between peer systems |
US6219706B1 (en) * | 1998-10-16 | 2001-04-17 | Cisco Technology, Inc. | Access control for networks |
US6167445A (en) * | 1998-10-26 | 2000-12-26 | Cisco Technology, Inc. | Method and apparatus for defining and implementing high-level quality of service policies in computer networks |
US6286052B1 (en) | 1998-12-04 | 2001-09-04 | Cisco Technology, Inc. | Method and apparatus for identifying network data traffic flows and for applying quality of service treatments to the flows |
US6321338B1 (en) * | 1998-11-09 | 2001-11-20 | Sri International | Network surveillance |
US6434618B1 (en) | 1998-11-12 | 2002-08-13 | Lucent Technologies Inc. | Programmable network element for packet-switched computer network |
US6487170B1 (en) | 1998-11-18 | 2002-11-26 | Nortel Networks Limited | Providing admission control and network quality of service with a distributed bandwidth broker |
US6466976B1 (en) * | 1998-12-03 | 2002-10-15 | Nortel Networks Limited | System and method for providing desired service policies to subscribers accessing the internet |
US6625150B1 (en) | 1998-12-17 | 2003-09-23 | Watchguard Technologies, Inc. | Policy engine architecture |
US6542508B1 (en) | 1998-12-17 | 2003-04-01 | Watchguard Technologies, Inc. | Policy engine using stream classifier and policy binding database to associate data packet with appropriate action processor for processing without involvement of a host processor |
US6611872B1 (en) | 1999-01-11 | 2003-08-26 | Fastforward Networks, Inc. | Performing multicast communication in computer networks by using overlay routing |
US6286035B1 (en) | 1999-02-01 | 2001-09-04 | Lucent Technologies Inc. | Validating and parsing engine for system configuration and support command messages |
AU3185600A (en) | 1999-02-26 | 2000-09-14 | Accenture Llp | A system, method and article of manufacture for an electronic commerce interfaceto the government |
AU3394000A (en) | 1999-03-05 | 2000-09-21 | At & T Corporation | System, method and apparatus for network service load and reliability management |
US6651096B1 (en) | 1999-04-20 | 2003-11-18 | Cisco Technology, Inc. | Method and apparatus for organizing, storing and evaluating access control lists |
ATE516539T1 (de) | 1999-05-10 | 2011-07-15 | Ericsson Telefon Ab L M | Verfahren und vorrichtung in einem kommunikations-netzwerk |
US8099758B2 (en) | 1999-05-12 | 2012-01-17 | Microsoft Corporation | Policy based composite file system and method |
US6532241B1 (en) | 1999-05-20 | 2003-03-11 | Cisco Technology, Inc. | Method and apparatus for determining SNA sessions using various protocols for transport based on filter criteria |
US6587466B1 (en) * | 1999-05-27 | 2003-07-01 | International Business Machines Corporation | Search tree for policy based packet classification in communication networks |
US6442547B1 (en) | 1999-06-02 | 2002-08-27 | Andersen Consulting | System, method and article of manufacture for information service management in a hybrid communication system |
JP3895888B2 (ja) | 1999-06-29 | 2007-03-22 | 株式会社日立製作所 | パケット通信方法およびノード装置 |
US6505244B1 (en) * | 1999-06-29 | 2003-01-07 | Cisco Technology Inc. | Policy engine which supports application specific plug-ins for enforcing policies in a feedback-based, adaptive data network |
US6606316B1 (en) * | 1999-07-02 | 2003-08-12 | Cisco Technology, Inc. | Gathering network statistics in a distributed network service environment |
US6539425B1 (en) * | 1999-07-07 | 2003-03-25 | Avaya Technology Corp. | Policy-enabled communications networks |
US6584508B1 (en) | 1999-07-13 | 2003-06-24 | Networks Associates Technology, Inc. | Advanced data guard having independently wrapped components |
US6941465B1 (en) | 1999-07-26 | 2005-09-06 | Microsoft Corporation | Method of enforcing a policy on a computer network |
US6598034B1 (en) * | 1999-09-21 | 2003-07-22 | Infineon Technologies North America Corp. | Rule based IP data processing |
US6680943B1 (en) * | 1999-10-01 | 2004-01-20 | Nortel Networks Limited | Establishing bi-directional communication sessions across a communications network |
US6578076B1 (en) | 1999-10-18 | 2003-06-10 | Intel Corporation | Policy-based network management system using dynamic policy generation |
US6765927B1 (en) | 1999-10-20 | 2004-07-20 | Alcatel | RSVP proxy service for communication network |
US6366577B1 (en) | 1999-11-05 | 2002-04-02 | Mci Worldcom, Inc. | Method for providing IP telephony with QoS using end-to-end RSVP signaling |
US6570884B1 (en) | 1999-11-05 | 2003-05-27 | 3Com Corporation | Receive filtering for communication interface |
US6788647B1 (en) | 1999-11-19 | 2004-09-07 | Cisco Technology, Inc. | Automatically applying bi-directional quality of service treatment to network data flows |
US6674743B1 (en) * | 1999-12-30 | 2004-01-06 | 3Com Corporation | Method and apparatus for providing policy-based services for internal applications |
US6601101B1 (en) | 2000-03-15 | 2003-07-29 | 3Com Corporation | Transparent access to network attached devices |
US7133403B1 (en) | 2000-05-05 | 2006-11-07 | Fujitsu Limited | Transport network and method |
US6775689B1 (en) | 2000-06-07 | 2004-08-10 | International Business Machines Corporation | System for restructuring selected parts of email messages prior to transmission to plurality of recipients |
US6697857B1 (en) * | 2000-06-09 | 2004-02-24 | Microsoft Corporation | Centralized deployment of IPSec policy information |
US7088720B1 (en) | 2000-08-07 | 2006-08-08 | Sbc Technology Resources, Inc. | Multiservice use of network connection capability under user-to-network interface signaling |
US6836462B1 (en) | 2000-08-30 | 2004-12-28 | Cisco Technology, Inc. | Distributed, rule based packet redirection |
US6771673B1 (en) | 2000-08-31 | 2004-08-03 | Verizon Communications Inc. | Methods and apparatus and data structures for providing access to an edge router of a network |
US6665495B1 (en) | 2000-10-27 | 2003-12-16 | Yotta Networks, Inc. | Non-blocking, scalable optical router architecture and method for routing optical traffic |
US7657628B1 (en) | 2000-11-28 | 2010-02-02 | Verizon Business Global Llc | External processor for a distributed network access system |
-
2000
- 2000-11-28 US US09/723,481 patent/US8180870B1/en active Active
-
2001
- 2001-11-28 BR BR0115503-2A patent/BR0115503A/pt not_active Application Discontinuation
- 2001-11-28 MX MXPA03004671A patent/MXPA03004671A/es unknown
- 2001-11-28 CA CA002430132A patent/CA2430132A1/en not_active Abandoned
- 2001-11-28 WO PCT/US2001/044397 patent/WO2002044844A2/en not_active Application Discontinuation
- 2001-11-28 EP EP01998879A patent/EP1340158A4/en not_active Withdrawn
- 2001-11-28 CN CNA018222706A patent/CN1488107A/zh active Pending
- 2001-11-28 JP JP2002546944A patent/JP2004515179A/ja not_active Withdrawn
- 2001-11-28 AU AU2002219893A patent/AU2002219893A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CA2430132A1 (en) | 2002-06-06 |
US8180870B1 (en) | 2012-05-15 |
EP1340158A2 (en) | 2003-09-03 |
EP1340158A4 (en) | 2004-07-14 |
AU2002219893A1 (en) | 2002-06-11 |
WO2002044844A2 (en) | 2002-06-06 |
WO2002044844A3 (en) | 2002-08-29 |
CN1488107A (zh) | 2004-04-07 |
MXPA03004671A (es) | 2004-10-14 |
BR0115503A (pt) | 2004-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7499458B2 (en) | Network access system including a programmable access device having distributed service control | |
US8296404B2 (en) | External processor for a distributed network access system | |
US8185615B1 (en) | Message, control and reporting interface for a distributed network access system | |
US20040223499A1 (en) | Communications networks with converged services | |
US20070019625A1 (en) | Methods and Apparatus for Controlling Call Admission To A Network Based On Call Peers | |
CA2632579A1 (en) | Electronic message delivery system including a network device | |
EP1232458A1 (en) | Combining internet protocols for session setup, teardown, authentication, authorization, and accounting using the differentiated services model | |
US8180870B1 (en) | Programmable access device for a distributed network access system | |
WO2007140694A1 (fr) | Procédé pour obtenir un réseau de télécommunication à protocole internet et système correspondant |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050201 |