JP2007503770A - ネットワーク・プロトコルのためのネスト化されたコンポーネント - Google Patents
ネットワーク・プロトコルのためのネスト化されたコンポーネント Download PDFInfo
- Publication number
- JP2007503770A JP2007503770A JP2006524753A JP2006524753A JP2007503770A JP 2007503770 A JP2007503770 A JP 2007503770A JP 2006524753 A JP2006524753 A JP 2006524753A JP 2006524753 A JP2006524753 A JP 2006524753A JP 2007503770 A JP2007503770 A JP 2007503770A
- Authority
- JP
- Japan
- Prior art keywords
- network
- protocol
- component
- packet
- identifier
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本発明は、ネットワークのデータを送信するために“ネットワーク・コンポーネント”を使用するためのシステムと方法を提供することを課題とする。
そのようなネットワーク・コンポーネントは、反復する情報を識別番号に取り替えることによって、ネットワークで交換されるデータを減らし、安全なデータは、粒状の詳細なレベルでネットワークに送られ、ネットワークに送られる情報を減らすことによって、ネットワーク・コンポーネントは、大量のデータ交換を要求するネットワーク情報ベースをサポートするために、リンクステート・プロトコルの使用を認める。BGP-4ルーティング・インフラストラクチャは、資源集約的なプロトコルの一例である。更に、本発明の実施例は、個々のコンポーネントが素晴らしいレベルの粒状で安全になることを可能にし、それによって、頻繁にアップデートされたデータの量を増やすことに比例する安全なネットワーク・プロトコルの提供を可能にする。
そのようなネットワーク・コンポーネントは、反復する情報を識別番号に取り替えることによって、ネットワークで交換されるデータを減らし、安全なデータは、粒状の詳細なレベルでネットワークに送られ、ネットワークに送られる情報を減らすことによって、ネットワーク・コンポーネントは、大量のデータ交換を要求するネットワーク情報ベースをサポートするために、リンクステート・プロトコルの使用を認める。BGP-4ルーティング・インフラストラクチャは、資源集約的なプロトコルの一例である。更に、本発明の実施例は、個々のコンポーネントが素晴らしいレベルの粒状で安全になることを可能にし、それによって、頻繁にアップデートされたデータの量を増やすことに比例する安全なネットワーク・プロトコルの提供を可能にする。
Description
本願は、通信ネットワークの分野に関し、特に、パケット交換ネットワークで展開されたプロトコルとアルゴリズムに関する。
インターネットのような通信ネットワークでは、情報は、パケットのフォームで送信される。パケットは、ソースから目的地へホップバイホップでそれぞれ発送されるデジタル情報のユニットを含む。パケットのルーティングは、パケットによって横断されたパスに沿った各ノード、又はルーターが、ローカル・データベースに対するこのヘッダーを比較するために、パケットのヘッダー情報を検討することを要し、ローカル・データベースを調べる際、ルーターは、適切な次のホップへパケットを転送する。ローカル・データベースは、フォワーディング情報ベース、又は、FIBと通常呼ばれ、このFIBは、テーブルとして通常組み立てられるが、代替フォーマットで例示されるかもしれない。FIBのエントリーは、パケットのための次のホップ、即ち、それぞれのパケットが適切な目的地に達するように転送される次のルーター、又はノードを決定する。フォワーディング情報ベースは、通常、集合的なデータベースからのグローバル又はネットワーク全に広がる情報に由来する。各プロトコルは、情報のタイプを表示するために集合的なデータベースを指定する。そのようなデータベースは、ネットワーク情報データベース(NIB)として、一般的にここに言及される。
インターネット・プロトコル(IP)の実装では、FIBは、集合的なデータベース、即ち、ルーティング情報データベース又はRIBと呼ばれたNIBから通常得る。ルーターの常駐RIBは、そのルーターに利用可能なルーティング情報を合併し、1以上のアルゴリズムは、エントリー、例えばルートを写像するために、FBIのそれらへのRIBで通常使用され、次には、それらの次のホップへパケットを転送するために使用される。IP RIBは、論理積で使用されるかもしれない2つのテクニック、(a)スタティック構成及び(b)ダイナミック・ルーティング・プロトコルの使用によって構築される。ダイナミックIPルーティング・プロトコルは、更に、それらが作動するインターネットの一部で拠点を置く2つのグループに細分され、外部ゲートウェイ・プロトコル、即ち、EGPは、自律管理ドメイン間でルーティング・データの普及に対して責任があり、そして、内部ゲートウェイ・プロトコル、即ち、IGPは、単一の管理ドメイン内のルーティング・データの普及に責任がある。更には、2つのタイプのIGPは、今日、広範囲で使用され、これらは、アルゴリズムの距離ベクトル・タイプを使用するものと、リンク・ステート方法を使用するものである。
各タイプのプロトコルは、通常、事前に定義されたバイト・オーダーのパケット、又はパケットに含まれていた情報のダイナミックに生成された定義への言及によるパケットの何れかをフォーマットする。データフォーマットのダイナミックな定義は、しばしばデータのフィールドのために3つのパートの定義を使用する。第1のそのようなパートは、データのタイプであり、第2のパートは、データ・フィールドの長さであり、そして、第3のパートは、パケットで伝えられた情報に対する値を含んでいる。共通ルーティング・プロトコルのうち、OSPF,ISIS及びBGPは、タイプ長さ値タプルのフォームで、フィールドのうちのいくつかを記述する。このフィールド定義は、“TLV”としばしば短縮される。TLV定義は、ダイナミックなパケット定義を考慮しているかもしれないが、追加のバイトは、それぞれのプロトコルによって送られる情報の量を増す。
リンク・ステート・アルゴリズムは、それらのリンク、関連するネットワーク・ルート、及びピアに関連した追加情報を含むローカル・ピアに関する情報をフラッドさせる。1986年に、BGPが設計された時、EGPのためにフラッドさせることができたASレベル・トラフィックの量に対する懸念は、BGPが“パス・ベクトル・アルゴリズム”と呼ばれた距離ベクトル・アルゴリズムの変形を利用する原因となった。BGP-4プロトコルは、ルーティング・ポリシーへの参照によって、距離ベクトル・メトリックに従って“ベスト・ルート”の最初の選択をするパス・ベクトル・アルゴリズムに基づく。ルーティング・ポリシーは、“ベスト・ルート”を決定するためにメトリックをセットする。
BGP-4がパス・ベクトル・プロトコルであるので、多くのBGPピア、又はBGPルートを備えた収束時間は、秒又は数十秒かかる。BGPプロトコルの情報を安全にすることは、選択されたルート及び他の全てのバックアップルートを安全にするために、実質的により多くのトラフィックを取るかもしれない。S-BGPと呼ばれたプロトコルを安全にするために使用されるBGPの変形は、700%より多くのトラフィックを、通常、必要とする。ASパスのような、BGP-4又はS-BGPの一部は、多くのパケットの中で繰り返される。従って、これらのプロトコルは、現在、相当な量の余分な情報を渡す。従って、外部ゲートウェイ・プロトコル(EGP)の必要があり、渡されて処理されるデータの量を減らすことができ、それによって、溢れている情報のためにリンク・ステート・アルゴリズムの使用を認める。
その上、ネットワーク・セキュリティーは、OSPF,ISIS,又はBGPを含めて、今日、典型的に展開したIPルーティング・プロトコルに設計されなかった。これらのプロトコルは、ソース認証をオーバーレイするのにMD5認証を利用するが、このテクニックは、参加ルーターと再攻撃による信用できない情報の挿入を防げない。従って、再攻撃を防いでいる間、効率的にデータを安全にすることができるプロトコルの追加が必要である。
本発明は、ネットワークのデータを送信するために“ネットワーク・コンポーネント”を使用するためのシステムと方法を提供する。そのようなネットワーク・コンポーネントは、以下のように設計されている:
反復する情報を識別番号に取り替えることによって、ネットワークで交換されるデータを減らす
安全なデータは、粒状の詳細なレベルでネットワークに送られる
ネットワークに送られる情報を減らすことによって、ネットワーク・コンポーネントは、大量のデータ交換を要求するネットワーク情報ベースをサポートするために、リンクステート・プロトコルの使用を認める。BGP-4ルーティング・インフラストラクチャは、資源集約的なプロトコルの一例である。更に、本発明の実施例は、個々のコンポーネントが素晴らしいレベルの粒状で安全になることを可能にし、それによって、頻繁にアップデートされたデータの量を増やすことに比例する安全なネットワーク・プロトコルの提供を可能にする。
反復する情報を識別番号に取り替えることによって、ネットワークで交換されるデータを減らす
安全なデータは、粒状の詳細なレベルでネットワークに送られる
ネットワークに送られる情報を減らすことによって、ネットワーク・コンポーネントは、大量のデータ交換を要求するネットワーク情報ベースをサポートするために、リンクステート・プロトコルの使用を認める。BGP-4ルーティング・インフラストラクチャは、資源集約的なプロトコルの一例である。更に、本発明の実施例は、個々のコンポーネントが素晴らしいレベルの粒状で安全になることを可能にし、それによって、頻繁にアップデートされたデータの量を増やすことに比例する安全なネットワーク・プロトコルの提供を可能にする。
本発明の実施例は、更に、以下のことのためにアルゴリズムを含んでいる:
ネットワーク・データ・ストリームにネットワーク・コンポーネントを用いるプロトコルを作成する。頻繁に繰り返されたネットワーク・コンポーネントをインスタンス識別番号(NC-IID)の送信に取り替える。安全な情報は、ネットワーク・コンポーネントの使用によってネットワークで送信された。ネットワーク・コンポーネント・フォーマットをダイナミックに調節する。
ネットワーク・データ・ストリームにネットワーク・コンポーネントを用いるプロトコルを作成する。頻繁に繰り返されたネットワーク・コンポーネントをインスタンス識別番号(NC-IID)の送信に取り替える。安全な情報は、ネットワーク・コンポーネントの使用によってネットワークで送信された。ネットワーク・コンポーネント・フォーマットをダイナミックに調節する。
本発明の実施例では、コンポーネントの識別番号は、可変長又は固定長の何れかである。ネットワーク・コンポーネント・インスタンス識別番号、即ち、NC-IIDと呼ばれるこれらの識別子は、ネットワークに送信される反復する特別なデータのセットを示す。本発明の実施例では、ネットワーク・コンポーネントは、サブコンポーネントのネスト化された階層から構成される。そのようないくつかの実施例では、各サブコンポーネントは、順に、それ自身のNC-IIDを割り当てられる。実施例では、ノードは、再帰的なやり方でネスト化したサブコンポーネントを処理する。本発明の実施例は、ルーティング・トラフィックやアップデート信号のようなイベントに応じてIDのサイズをダイナミックに調節するためにアルゴリズムを含む。
本発明のいくつかの実施例では、NC-IDDは、単調に増加するシーケンス番号である。ネットワーク・コンポーネントのエイジング・レートを変えながら結合されるこの特徴は、セキュリティーアルゴリズムが再攻撃を防ぐことを可能にする。そのようないくつかの実施例では、ネットワーク・コンポーネントは、1以上のセキュリティー・サブコンポーネントを持ち、ある非制限の実施例では、ネットワークを通して送信されたある情報がそのソースで再度安全になることを定期的に要求する。
本発明の実施例では、各ネットワーク・コンポーネントは、プロトコルにおける情報の特定のグループを渡して、グローバルフォーマット識別子(Global Format Identifier:NC-GFI)を割り当てられる。いくつかの実施例では、ネットワーク・コンポーネントの各クラスが情報を再送信し、情報を再度安全にし、情報を古くする(aging)ための自身の期間を持つように、ネットワーク・コンポーネントは、クラスでグループ化される。エイジング・プロセスは、シーケンス番号のラップアラウンドを含んでいる。ネットワーク・コンポーネントのクラスは、1以上のネットワーク・コンポーネントを含んでいる。
ネットワーク・コンポーネントは、ネットワーク機能の特定のタイプを実行する。そのような機能の例は、以下のタイプの1以上を含む:
セキュリティー・コンポーネント、即ち、セキュリティー情報ポリシー・コンポーネントを渡すためのネットワーク・コンポーネントの使用、即ち、ポリシー情報IPルート・コンポーネントを送信するためのコンポーネント構造の使用、即ち、IPルーティングを交換するか、又はそうでなければ、サポートするためのネットワーク・コンポーネントの使用
IP切り換えコンポーネント、例えば、MPLS切り換え情報を渡すためのコンポーネント構造の使用。
セキュリティー・コンポーネント、即ち、セキュリティー情報ポリシー・コンポーネントを渡すためのネットワーク・コンポーネントの使用、即ち、ポリシー情報IPルート・コンポーネントを送信するためのコンポーネント構造の使用、即ち、IPルーティングを交換するか、又はそうでなければ、サポートするためのネットワーク・コンポーネントの使用
IP切り換えコンポーネント、例えば、MPLS切り換え情報を渡すためのコンポーネント構造の使用。
これら及びネットワーク・コンポーネントの他の可能な機能は、当業者にとって明白である。
<序論>
本発明は、パケット交換ネットワークの通信用のデータ構造を含む“ネットワーク・コンポーネント”を紹介する。ネットワーク・コンポーネントは、再帰的な階層でネスト化され、その結果、これらのコンポーネントを処理するために使用されるアルゴリズム及びプロトコルを簡素化する。また、ネットワーク・コンポーネントの使用は、ネットワークで送信された情報を減らし、その結果、資源集約的なネットワーク・プロトコルのためのリンク・ステート・プロトコルの使用を可能にする。更に、ネットワーク・コンポーネントの再帰的で、ネスト化された構造は、情報のフローが素晴らしいレベルの粒状で安全になることを可能にし、その結果、標準の安全なプロトコルの扱いにくいオーバーヘッドを緩和する。
本発明は、パケット交換ネットワークの通信用のデータ構造を含む“ネットワーク・コンポーネント”を紹介する。ネットワーク・コンポーネントは、再帰的な階層でネスト化され、その結果、これらのコンポーネントを処理するために使用されるアルゴリズム及びプロトコルを簡素化する。また、ネットワーク・コンポーネントの使用は、ネットワークで送信された情報を減らし、その結果、資源集約的なネットワーク・プロトコルのためのリンク・ステート・プロトコルの使用を可能にする。更に、ネットワーク・コンポーネントの再帰的で、ネスト化された構造は、情報のフローが素晴らしいレベルの粒状で安全になることを可能にし、その結果、標準の安全なプロトコルの扱いにくいオーバーヘッドを緩和する。
ネットワークで送られる、反復する、及び/又は冗長なデータに代わるネットワーク・コンポーネントの使用は、図1で示される。データストリーム100は、BGP,SPF,IS-IS又はRIPを含むが、これらに限られず、標準のプロトコルのタイプにコード化される。“情報-1”102と呼ばれたストリームで反復される情報のブロックは、ネットワーク・コンポーネント104と取り替えられる。反復されるブロック102を含んでいるパケットストリーム106は、反復されるブロックの代わりのネットワークコンポーネント識別子108を含んでいる圧縮されたパケットストリームと取り替えられる。当業者に明白であるように、反復されるブロック102に対する識別子の代用は、反復されるブロック102の長さに関するログより、良い要素による圧縮を可能にする。
<ネットワークコンポーネントのフォーマット>
本発明の実施例では、所定のネットワーク・コンポーネントは、デフォルト・フォーマット、又は全ての適切なネットワーク実体へ転送されたカスタム・フォーマットにつき、示される。いくつかの実施例では、フォーマットは、プロトコル能力がピア間で取り決められる、ピア/コネクションの設立段階の間に送信される。実施例では、あるネットワーク・コンポーネントのフォーマットは、ネットワーク・コンポーネントとしてそれら自身渡され、次に、それら自身のNC-GFI及びそれら自身のNC-IIDによって定義される。そのようないくつかの実施例では、フォーマット情報の最初のそのような送信は、それぞれのフォーマット用のNC-IIDを関連づける。その後、ピア/コネクション交渉は、フォーマットと関連するNC-IIDを渡さなければならないだけである。
本発明の実施例では、所定のネットワーク・コンポーネントは、デフォルト・フォーマット、又は全ての適切なネットワーク実体へ転送されたカスタム・フォーマットにつき、示される。いくつかの実施例では、フォーマットは、プロトコル能力がピア間で取り決められる、ピア/コネクションの設立段階の間に送信される。実施例では、あるネットワーク・コンポーネントのフォーマットは、ネットワーク・コンポーネントとしてそれら自身渡され、次に、それら自身のNC-GFI及びそれら自身のNC-IIDによって定義される。そのようないくつかの実施例では、フォーマット情報の最初のそのような送信は、それぞれのフォーマット用のNC-IIDを関連づける。その後、ピア/コネクション交渉は、フォーマットと関連するNC-IIDを渡さなければならないだけである。
本発明の実施例は、特別のネットワーク・コンポーネントのフォーマットをダイナミックに再調整されることを可能にする。これらの再調整は、オペレーターによって手動で構成されるか、ネットワーク・トラフィックの検査から手動で又は自動的に行う。本発明の実施例では、再調整される特徴は、コンポーネントのクラスに関係する特定のネットワーク・コンポーネント、又は情報のシンタックスを含んでいる。非制限の例として、ネットワーク・コンポーネントのシンタックスへの変更は、ネットワークコンポーネントIDフィールド、長さフィールド、又はデータ内容フィールドのサイズ及び/又はフォーマットへの変更を含む。更に、実例となる非制限の例として、ダイナミックに改訂されるかもしれないコンポーネント・クラス情報は、再送信期間、エイジング期間、ラップ処理及び再度安全にする期間を含む。
実例となる非制限の例として、図2は、最初のフォーマット、内部フォーマット1 200から第2のフォーマット、内部フォーマット2 202に変化するIPルート・コンポーネントを示す。IPルート・ネットワーク・コンポーネントのためのグローバル・フォーマット識別子は、00-01-03-07である。図2で示されるように、フォーマット1 200とフォーマット2 202の間の違いは、ID、セキュリティー・サブコンポーネント及びNIBサブコンポーネントのために固定されたバイトを備えたフィールドを含んでいる点である。この例において、ルート・サブコンポーネントは、長さのフィールドでコード化される長さの可変コンポーネント・サイズを持つと定義される。
<ネットワーク・コンポーネントを利用してプロトコルを作成するためのアルゴリズム>
本発明の実施例は、既存のプロトコルで存在するか、新しいプロトコルのために計画されるデータ・パターンに基づいて、ネットワーク・コンポーネントの作成のためにアルゴリズムを含んでいる。本発明の実施例によってネットワーク・コンポーネントを生成するために使用されるアルゴリズムは、ここに示される。このアルゴリズムは、非制限の例として提示され、多数の変形、代替手段、及び等価物が当業者にとって明白である。
本発明の実施例は、既存のプロトコルで存在するか、新しいプロトコルのために計画されるデータ・パターンに基づいて、ネットワーク・コンポーネントの作成のためにアルゴリズムを含んでいる。本発明の実施例によってネットワーク・コンポーネントを生成するために使用されるアルゴリズムは、ここに示される。このアルゴリズムは、非制限の例として提示され、多数の変形、代替手段、及び等価物が当業者にとって明白である。
ステップA:データ・ストリームのポテンシャル・ネットワーク・コンポーネントを識別する。
(注:ネットワーク・コンポーネント・アルゴリズムは、パケット又はバイト・ストリーム内の情報のグルーピングに注目する。この情報の各グループは、最適化目的のための“メッセージ”と考えられ、また、“メッセージ”という用語は、以下の記述に従って使用される。)
(注:ネットワーク・コンポーネント・アルゴリズムは、パケット又はバイト・ストリーム内の情報のグルーピングに注目する。この情報の各グループは、最適化目的のための“メッセージ”と考えられ、また、“メッセージ”という用語は、以下の記述に従って使用される。)
各プロトコルに対し(最も外部のループ):
データ・ストリームに関する情報を備えたコンポーネント構造を初期化する。レベルを“プロトコル・レベル”に設定する。
プロトコルの各プロトコル・メッセージに対し、
(メッセージ・レベル・ループ)
nc_gfiデータ構造を作成し(以下で更に記述されるように)、ゼロに初期化する。
“メッセージ”へのレベルが付いているメッセージへのレベルを設定し、
主なコンポーネント記述にメッセージ・タイプ長さ値フィールドに関する情報を格納する。
データ・ストリームに関する情報を備えたコンポーネント構造を初期化する。レベルを“プロトコル・レベル”に設定する。
プロトコルの各プロトコル・メッセージに対し、
(メッセージ・レベル・ループ)
nc_gfiデータ構造を作成し(以下で更に記述されるように)、ゼロに初期化する。
“メッセージ”へのレベルが付いているメッセージへのレベルを設定し、
主なコンポーネント記述にメッセージ・タイプ長さ値フィールドに関する情報を格納する。
ここのレベル:0=ストリーム/プロトコル
1=メッセージ
2からn=データ構造内のコンポーネントの内部階層
タイプ・フィールド・フラグ:暗黙の/実際のフィールド、暗黙の/指定されたタイプ・フィールド値、固定又は可変
長さフィールドフラグ:暗黙の/実際のフィールド、暗黙の又は指定された値
値フィールド:暗黙/実際、暗黙の又は指定された、固定又は可変
サブ・コンポーネントid:
レベル:0=ストリーム/プロトコル
1=メッセージ
2からNは、内部階層
NC-GFIは、階層でランクを割り当てられ、その範囲内で解釈される。
しかしながら、あるNC-GFIは、“全てのプロトコル”又は“全てのメッセージ”に共通である。
1=メッセージ
2からn=データ構造内のコンポーネントの内部階層
タイプ・フィールド・フラグ:暗黙の/実際のフィールド、暗黙の/指定されたタイプ・フィールド値、固定又は可変
長さフィールドフラグ:暗黙の/実際のフィールド、暗黙の又は指定された値
値フィールド:暗黙/実際、暗黙の又は指定された、固定又は可変
サブ・コンポーネントid:
レベル:0=ストリーム/プロトコル
1=メッセージ
2からNは、内部階層
NC-GFIは、階層でランクを割り当てられ、その範囲内で解釈される。
しかしながら、あるNC-GFIは、“全てのプロトコル”又は“全てのメッセージ”に共通である。
各プロトコル・メッセージにおいて、はっきりと定義されたTLVフィールド又はどんな“暗黙の”TLVフィールドでも探索するメッセージのバイトを処理する。
プロトコルにおける任意の明示的に定義されたTLV(タイプ長さ値)フィールドの識別は、情報のタイプが指定されるかどうかを見るためにプロトコル定義の検査を伴い、そして、長さが続き、値が続く。IS-ISのようなあるプロトコルでは、仕様は、タイプ長さ値を示す。BGPのような他のプロトコルでは、属性フィールドは“タイプ・コード”、長さ、及び評価する値のセットを持つ。
暗黙のタイプ長さ値フィールドは、事前に定義されるプロトコル内に含まれたそれらのフィールドである。事前に定義されたタイプのフィールドの例は、BGP-4プロトコル仕様の取り消しルート・フィールドである。取り消しルート・フィールドは、アップデート・メッセージのBGPヘッダーに続く最初のアイテムであるため、事前に定義される。取り消しフィールド・フォーマットは、可変フィールドの接頭語のシーケンスが続く長さを含む。このフィールドのタイプは指定されるが、長さフィールドは、64バイトになるように事前に定義される。
それぞれ見つかるTLV(明示的又は暗黙)については、以下を実行する:
(TLVレベル・ループ)
現在のnc_gfi構造の最後のTLVに続いて、“非-TLV”バイトを処理する
nc_gfiデータ構造の現在のTLVに記録された最後のTLVからバイトのデータ・フォーマットを記録する。非-TLVフィールドとして、このフィールドのグループにフラグを立てる。非コンポーネント・タイプNCGFIをフィールドのグループに割り当てる。nc_gfiにこの情報を格納する。現在のnc_gfi構造のサブコンポーネント部分にIDを格納する。
構造のメッセージ・レベルであるなら、これは、最後のTLVに続いてバイトを格納する。
NC-GFIを新しいTLVフィールドに割り当てる。
現在のTLVのサブコンポーネント・フィールドにNC-GFIを保存する。
TLVのためにnc_gfiデータ構造を作成し、データ構造でTLVに関する情報を格納する。現在のサブコンポーネントgfiとして、TLVのためのNC-GFIを格納する。
(TLVレベル・ループ)
現在のnc_gfi構造の最後のTLVに続いて、“非-TLV”バイトを処理する
nc_gfiデータ構造の現在のTLVに記録された最後のTLVからバイトのデータ・フォーマットを記録する。非-TLVフィールドとして、このフィールドのグループにフラグを立てる。非コンポーネント・タイプNCGFIをフィールドのグループに割り当てる。nc_gfiにこの情報を格納する。現在のnc_gfi構造のサブコンポーネント部分にIDを格納する。
構造のメッセージ・レベルであるなら、これは、最後のTLVに続いてバイトを格納する。
NC-GFIを新しいTLVフィールドに割り当てる。
現在のTLVのサブコンポーネント・フィールドにNC-GFIを保存する。
TLVのためにnc_gfiデータ構造を作成し、データ構造でTLVに関する情報を格納する。現在のサブコンポーネントgfiとして、TLVのためのNC-GFIを格納する。
このコンポーネント値フィールド内の任意のTLVを検索する。TLVが見つけられる場合:
グローバル・ネスティング・カウントを区切り、
現在のコンポーネントのNC_GFIをスタックに格納する。
現在のカレントNC_GFI=現在のサブコンポーネントgfiをさせる
再びステップa-dを実行する。
グローバル・ネスティング・カウントを区切り、
現在のコンポーネントのNC_GFIをスタックに格納する。
現在のカレントNC_GFI=現在のサブコンポーネントgfiをさせる
再びステップa-dを実行する。
値フィールドの処理の終わりで:
“非-TLV”ネットワーク・コンポーネントとして、最後のTLVが割り当てられ、又はメッセージの始まりに続いて、TLVと関連しないバイトを格納する。
レベル>メッセージ・レベルならば、最後の格納コンポーネントのスタックをポップし、ステップa-eを実行する。
レベル=メッセージならば、このステップのアイテム3に戻る
現在のコンポーネント構造のためのサブコンポーネントの配列にコンポーネント・タイプidを記録する。
コンポーネント・タイプid番号を備えた別のnc_プロトコル構造を作成すし、
プロトコルに関する情報を記録する
値フィールド内の任意のネスト化したTLV構造を検索する。
“非-TLV”ネットワーク・コンポーネントとして、最後のTLVが割り当てられ、又はメッセージの始まりに続いて、TLVと関連しないバイトを格納する。
レベル>メッセージ・レベルならば、最後の格納コンポーネントのスタックをポップし、ステップa-eを実行する。
レベル=メッセージならば、このステップのアイテム3に戻る
現在のコンポーネント構造のためのサブコンポーネントの配列にコンポーネント・タイプidを記録する。
コンポーネント・タイプid番号を備えた別のnc_プロトコル構造を作成すし、
プロトコルに関する情報を記録する
値フィールド内の任意のネスト化したTLV構造を検索する。
ネスト化されたTLVフィールドの例は、BGP-4アップデート・パケットの取り消しフィールドで見つけることができる。BGP-4取り消しは、2つのタイプの暗黙のTLVフィールドを有する:取り消しフィールドは、長さフィールドに続き、接頭語の可変フィールドに続いて暗黙の“タイプ”を有する。接頭語のフォーマットは、接頭語フィールドに続く1バイト長フィールドである。1バイト長フィールドは、ビットで接頭語の長さを与える。接頭語フィールドは、接頭語長さフィールドの値に依存する1-4バイトである。
これは外部の暗黙のTLVフィールドである。取り消しTLVフィールドの内部で反復されたものは、接頭語を備えたTLVフィールドを示唆する。タイプは、示唆されプロトコルで渡されない“取り消し接頭語”である。接頭語及び値フィールドの長さが続く。BGPは、私たちにTLVフィールドのネスト化されたセットの例を挙げる。
より多くのメッセージ・バイトがメッセージに含まれている場合は、メッセージの残りを処理するためにステップ3に戻る。
それ以上のバイトがこのメッセージに含まれていない場合は、プロトコルによって定義された別のメッセージ・タイプがあるかどうか確かめる。無ければ、このステップを出る。あれば、ステップ3に戻る。
それ以上のバイトがこのメッセージに含まれていない場合は、プロトコルによって定義された別のメッセージ・タイプがあるかどうか確かめる。無ければ、このステップを出る。あれば、ステップ3に戻る。
ステップB:各ネットワーク・コンポーネント(TLV又は非-TLV)が交換のモードの1つで送信される回数を決定する:起動、再設定、定常状態、ネットワーク発振及び終了。
プロトコル実装が存在する場合は、各ネットワーク・コンポーネントがネットワーク・フローの一生で起こるチューンの平均数を測定するために、既存のデータ・フロー・トラフィックを評価する。ネットワーク・フローの一生は、通常、起動、定常状態、及び終了がある。あるネットワーク・フローは、ネットワーク・パス又はデバイス及びネットワーク発振の再設定に従う。
プロトコル実装が存在する場合は、各ネットワーク・コンポーネントがネットワーク・フローの一生で起こるチューンの平均数を測定するために、既存のデータ・フロー・トラフィックを評価する。ネットワーク・フローの一生は、通常、起動、定常状態、及び終了がある。あるネットワーク・フローは、ネットワーク・パス又はデバイス及びネットワーク発振の再設定に従う。
ステップC:問い合わせているユーザによって各プロトコル・アプリケーションのためのポリシー情報を記録し、次のものを含む:
プロトコル・ライフ・サイクルの異なった部分のための処理の速度。起動、定常状態、再設定、終了、及びネットワーク発振を含むプロトコル・ライフ・サイクル。
プロトコルのためのセキュリティー基準。
明示的なタイプ長さ値NC-IIDである任意のフィールドの特定の要求。
プロトコル・ライフ・サイクルの異なった部分のための処理の速度。起動、定常状態、再設定、終了、及びネットワーク発振を含むプロトコル・ライフ・サイクル。
プロトコルのためのセキュリティー基準。
明示的なタイプ長さ値NC-IIDである任意のフィールドの特定の要求。
ステップD:ネットワーク・コンポーネントが固定フォーマット・フィールド又は明示的なタイプ長さ値NC-IIDネットワーク・コンポーネント・フィールドの間で選択するために用いられる時間の数を使用する。
交換の全てのモードで頻繁に渡された情報のための固定フォーマット・コンポーネントを用いて全体的なトラフィックを最小化する。
ネットワーク変更の迅速な処理がネットワーク情報ベースの機能に重要である場合は、ネットワーク発振中に渡された情報のための固定フォーマット・コンポーネントを使用する。
交換の全てのモードで頻繁に渡された情報のための固定フォーマット・コンポーネントを用いて全体的なトラフィックを最小化する。
ネットワーク変更の迅速な処理がネットワーク情報ベースの機能に重要である場合は、ネットワーク発振中に渡された情報のための固定フォーマット・コンポーネントを使用する。
ステップE:ネットワーク・コンポーネントにコンポーネントのクラスを関連づける。各コンポーネントのクラスは、次のものを共有する:
コンポーネント情報を反復する同一の再送信時間
同一のエイジング・タイム
同一のIDラップアラウンド・メカニズム
情報を再度安全にする同一の間隔
コンポーネント情報を反復する同一の再送信時間
同一のエイジング・タイム
同一のIDラップアラウンド・メカニズム
情報を再度安全にする同一の間隔
ステップF:ネットワーク・コンポーネント及びオリジナルのプロトコルの設計に基づいたプロトコルのフォーマットを詳述するためのフォーマットを作成する。
フォーマットは、NC-GFI式別子に関してプロトコルにおけるネットワーク・コンポーネント及び非ネットワーク・コンポーネント・バイトのレイアウトについて説明する。ステップAからEで構築されたデータ構造は、フォーマット識別しを割り当てられる。オリジナルのプロトコル・フォーマット・メッセージは、ネットワーク・コンポーネントとしてコード化される。
フォーマット・ネットワーク・コンポーネントは作成され、該作成されたフォーマットは、サブコンポーネントとして関連づけられる。このネットワーク・コンポーネントは、ステップGでピア交渉メッセージに付けられる。
フォーマットは、NC-GFI式別子に関してプロトコルにおけるネットワーク・コンポーネント及び非ネットワーク・コンポーネント・バイトのレイアウトについて説明する。ステップAからEで構築されたデータ構造は、フォーマット識別しを割り当てられる。オリジナルのプロトコル・フォーマット・メッセージは、ネットワーク・コンポーネントとしてコード化される。
フォーマット・ネットワーク・コンポーネントは作成され、該作成されたフォーマットは、サブコンポーネントとして関連づけられる。このネットワーク・コンポーネントは、ステップGでピア交渉メッセージに付けられる。
ステップG:新しいフォーマット・コンポーネントを適切なプロトコルと関連させる。
IPプロトコル、ルーティング及び切り換えは、追加能力を加えるため、ピア及び拡張したピア交渉プロトコルを設立するのにグリーティング(ハロー)・メカニズムを利用する。
IGPプロトコルでは、ハロー・メッセージは予備情報と交換される。BGPでは、“ハロー”メカニズムは、“オープン”メッセージである。IS-ISでは、追加ルーター情報用の追加TLV構造がある。OSPFでは、ルーター・レベルで使用される不透明なLSAは、プロトコルが追加情報と交渉することを許容する。BGPでは、能力交渉は、BGP-4のための新しい遷移的なパス属性を許容することができる。
IPプロトコル、ルーティング及び切り換えは、追加能力を加えるため、ピア及び拡張したピア交渉プロトコルを設立するのにグリーティング(ハロー)・メカニズムを利用する。
IGPプロトコルでは、ハロー・メッセージは予備情報と交換される。BGPでは、“ハロー”メカニズムは、“オープン”メッセージである。IS-ISでは、追加ルーター情報用の追加TLV構造がある。OSPFでは、ルーター・レベルで使用される不透明なLSAは、プロトコルが追加情報と交渉することを許容する。BGPでは、能力交渉は、BGP-4のための新しい遷移的なパス属性を許容することができる。
<ネットワーク・コンポーネントを処理するためのアルゴリズム>
本発明の実施例では、ピアは、ネットワーク・コンポーネントを全体として交換するか、コンポーネントのための識別子、即ち、NC-IIDのみを転送する。本発明の実施例は、以下で詳しく述べるように、一方のタイプのストリームが処理されるのを可能にする。
本発明の実施例では、ピアは、ネットワーク・コンポーネントを全体として交換するか、コンポーネントのための識別子、即ち、NC-IIDのみを転送する。本発明の実施例は、以下で詳しく述べるように、一方のタイプのストリームが処理されるのを可能にする。
いくつかの実施例では、以下のパラメータの1以上が各ネットワーク・コンポーネントのために保有される:
現在のコンポーネントID
エイジング・タイム
IDラップアラウンド・タイム
IDラップカウント情報(初期化又は起動時に受信可能な第1NC-IIDを含む)
前回、完全コンポーネントID情報を受け取った。
全情報再送信のカウント
エラー情報のアレイ
現在のコンポーネントID
エイジング・タイム
IDラップアラウンド・タイム
IDラップカウント情報(初期化又は起動時に受信可能な第1NC-IIDを含む)
前回、完全コンポーネントID情報を受け取った。
全情報再送信のカウント
エラー情報のアレイ
これらのパラメータの重要性を更に詳しく述べると、コンポーネントIDの年齢は、最後の情報の再送信からの時間です。コンポーネンのID値は、シーケンス番号ラップまで、単調に増加する。ラップ・カウントは、ラップの数のカウントである。ラップ・カウント・タイムアウトは、最大ラップ・カウント数のための期間を意味する。
ネットワーク・コンポーネントを処理するためのそのような1つのアルゴリズムの非制限の例は、以下に示される:
ネットワーク・コンポーネントを受け取る際、現在のネットワーク・コンポーネントのNC-IIDが、現在のNC-HD値又は付加される値であることを確認する。NC-IDDが許容値を超過する場合、ネットワーク・プロトコルのセキュリティー部分に“範囲EDの外”のフラグを立て、ネットワーク・コンポーネントの処理を終了する。
当初受け取られたコンポーネントからの所要時間が、このコンポーネントのためのエイジング・タイムを超過するかどうか決定し、NC-IDDがオリジナルのID値である場合は、更に決定する。
コンポーネントがエイジング・タイムを超過し、それがラップアラウンド・リミットの前に現在のIDを使用している場合、プロトコルのセキュリティー部分に“オーバーエイジ”IDのフラグを立てて、ネットワーク・コンポーネントの処理を終了する。
そうでなければ、処理し続ける。
そうでなければ、処理し続ける。
NC-IIDフラグを参照することによって、コンポーネントが全体として送られたかどうか、又はコンポーネントのIDだけが送られたかどうか、決定する
コンポーネントを全て送った場合、:
セキュリティー・サブコンポーネント、コンポーネント・データ・フォーマット及びシンタックスを有効にする。それが無効である場合は、情報をプロトコルのセキュリティー部分に渡す。
コンポーネントを有効にする。それが無効である場合は、その時、これをプロトコルのセキュリティー部分に渡す。
これが再送信でない場合は、その時、ネットワーク・コンポーネントを処理する。それが再送信である場合は、処理をスキップする。
この時にコンポーネントの“エイジング”タイムをリセットし、そして、ラップアラウンド処理をアップデートする。
コンポーネントを全て送った場合、:
セキュリティー・サブコンポーネント、コンポーネント・データ・フォーマット及びシンタックスを有効にする。それが無効である場合は、情報をプロトコルのセキュリティー部分に渡す。
コンポーネントを有効にする。それが無効である場合は、その時、これをプロトコルのセキュリティー部分に渡す。
これが再送信でない場合は、その時、ネットワーク・コンポーネントを処理する。それが再送信である場合は、処理をスキップする。
この時にコンポーネントの“エイジング”タイムをリセットし、そして、ラップアラウンド処理をアップデートする。
b.NC-IIDのみが送られた場合、
現在のIDであり、エイジ・タイム内にあるコンポーネントIDを有効にする。
コンポーネントの“エイジング”タイムをリフレッシュし、ラップアラウンド処理をアップデートする。
プロセス情報をプロトコル情報にリンクする。
現在のIDであり、エイジ・タイム内にあるコンポーネントIDを有効にする。
コンポーネントの“エイジング”タイムをリフレッシュし、ラップアラウンド処理をアップデートする。
プロセス情報をプロトコル情報にリンクする。
<ネットワーク・コンポーネントの安全>
本発明の実施例では、ネスト化されたネットワーク・コンポーネントは、最低のサブコンポーネント・レベルから最高レベルまで、再帰的に安全にされる。いくつかの実施例では、各ネットワーク・コンポーネントは、以下の1以上を包含することによってセキュリティーをサポートする:
各ネットワーク・コンポーネントは、安全なサブコンポーネントを有する
IDは、再攻撃防止のためのシーケンス番号を形成する
1コンポーネントあたりの再送信レート
1コンポーネントあたりのエイジング・アウト・タイム
1コンポーネントあたりのラップアラウンド・カウント及びラップ・タイムアウト
情報を再度安全にするのに必要とする期間
情報を安全にする方法
本発明の実施例では、ネスト化されたネットワーク・コンポーネントは、最低のサブコンポーネント・レベルから最高レベルまで、再帰的に安全にされる。いくつかの実施例では、各ネットワーク・コンポーネントは、以下の1以上を包含することによってセキュリティーをサポートする:
各ネットワーク・コンポーネントは、安全なサブコンポーネントを有する
IDは、再攻撃防止のためのシーケンス番号を形成する
1コンポーネントあたりの再送信レート
1コンポーネントあたりのエイジング・アウト・タイム
1コンポーネントあたりのラップアラウンド・カウント及びラップ・タイムアウト
情報を再度安全にするのに必要とする期間
情報を安全にする方法
いくつかの実施例では、1以上のネットワーク・コンポーネントは、例えば、非限定的な例として知られるタイムアウトのような一般のパラメータを共有するクラスの一部を包含する。
ネットワーク・コンポーネントを安全にするプロセスを示すため、アルゴリズムは、以下に提示される。多くの変更、及び/又は、変化は、これらの当業者にとって明白になる:
以下でコンポーネント(再帰的である)の各サブコンポーネントを有効にする:
範囲、エイジ、及びラップ・カウントのためのサブコンポーネントNC-IIDを有効にしている。
サブコンポーネントを安全にする方法への言及によってサブコンポーネントのサブサブコンポーネントを安全にする
サブコンポーネントの定期的な再送信が、次のコンポーネント再送信タイムの前にあるかどうか決定する。そうだとすれば、サブコンポーネントの再送信を計画する
サブコンポーネントのセキュリティーが次のコンポーネントの再度安全にする期間の前にあるかどうか決定する。そうだとすれば、コンポーネントを再度安全にすることを計画する。
範囲、エイジ、及びラップ・カウントのためのサブコンポーネントNC-IIDを有効にしている。
サブコンポーネントを安全にする方法への言及によってサブコンポーネントのサブサブコンポーネントを安全にする
サブコンポーネントの定期的な再送信が、次のコンポーネント再送信タイムの前にあるかどうか決定する。そうだとすれば、サブコンポーネントの再送信を計画する
サブコンポーネントのセキュリティーが次のコンポーネントの再度安全にする期間の前にあるかどうか決定する。そうだとすれば、コンポーネントを再度安全にすることを計画する。
ネットワーク・コンポーネントのセキュリティーを有効にする
有効なエイジ及び正確なラップ・カウントで、単調に増加するコンポーネントとしてNCを有効にする。
コンポーネントが全て送信される場合は、コンポーネントが有効で安全かどうか決めるために安全なサブコンポーネントを使用する。コンポーネントが安全でない場合は、その時、プロトコルへこの指示を送る。コンポーネントが安全なら、それから処理のためのプロトコルにこのコンポーネントを手渡す。
もし、コンポーネントIDだけが渡され、IDの再度安全にするタイム・リミット又は再送信リミットを超過したなら、そのとき、コンポーネントの適切な再送信をプロトコルを通して要求する。
もしコンポーネントIDだけが渡され、IDが再度安全になること、又は再送信をすることを要求しないなら、そのとき、この安全になったIDのために処理された情報にプロトコル処理を指示する。
有効なエイジ及び正確なラップ・カウントで、単調に増加するコンポーネントとしてNCを有効にする。
コンポーネントが全て送信される場合は、コンポーネントが有効で安全かどうか決めるために安全なサブコンポーネントを使用する。コンポーネントが安全でない場合は、その時、プロトコルへこの指示を送る。コンポーネントが安全なら、それから処理のためのプロトコルにこのコンポーネントを手渡す。
もし、コンポーネントIDだけが渡され、IDの再度安全にするタイム・リミット又は再送信リミットを超過したなら、そのとき、コンポーネントの適切な再送信をプロトコルを通して要求する。
もしコンポーネントIDだけが渡され、IDが再度安全になること、又は再送信をすることを要求しないなら、そのとき、この安全になったIDのために処理された情報にプロトコル処理を指示する。
<ダイナミックに調整可能なネットワーク・コンポーネント>
実施例では、ネットワーク・コンポーネントは、複数のフォーマット-idと関係し、ネットワーク・コンポーネントのための代替バイト・フォーマットを意味している。そのようないくつかの実施例では、そのフォーマットを備えたデータの特別のセットの最初の送信は、NC-IIDに関係し、ID及び情報のセットを含んでいる。NC-IIDは、3つのフォーマットのうちの1つを利用できる:固定フォーマット、可変長フォーマット、又はGFI可変フォーマット。
実施例では、ネットワーク・コンポーネントは、複数のフォーマット-idと関係し、ネットワーク・コンポーネントのための代替バイト・フォーマットを意味している。そのようないくつかの実施例では、そのフォーマットを備えたデータの特別のセットの最初の送信は、NC-IIDに関係し、ID及び情報のセットを含んでいる。NC-IIDは、3つのフォーマットのうちの1つを利用できる:固定フォーマット、可変長フォーマット、又はGFI可変フォーマット。
本発明の非制限の実施例では、固定バイトNC-IID送信は、データを備えた送信又は単なるNC-IIDかどうかを示すためにIDフィールドの第1ビットを使用する。可変長IDは、IDが最初の送信かどうかを示すために第1長さバイトの最初のビットを使用する。コンポーネントの可変長は、後に続いたIDの長さを含んでいる。GFI可変フォーマットは、GFI,フォーマット-id,IDの長さ,IDを含む。IDフィールドの長さの最初のビットは、データ又は単なるIDを備えた送信を指定する。
フォーマット構造のためのネットワーク・コンポーネントは、グローバルな事前に定義された構造を使用することもできる。グローバルな事前に定義されたフォーマット構造は、これらのレベルのサポートがある:
グローバルなコンポーネント[レベル0](ポリシー,セキュリティー,NIB)
ネットワークタイプに基づく機能[レベル1](IP,SNA,ノベル(登録商標),マイクロソフト(登録商標))
ノード機能[レベル2](フォワーディング,スイッチング,ルーティング,ディレクトリ)
ネットワーク・プロトコルのクラスに共通のコンポーネント[レベル3]
プロトコルのためのコンポーネント[レベル4]
プロトコル・メッセージのためのコンポーネント[レベル5]
グローバルなコンポーネント[レベル0](ポリシー,セキュリティー,NIB)
ネットワークタイプに基づく機能[レベル1](IP,SNA,ノベル(登録商標),マイクロソフト(登録商標))
ノード機能[レベル2](フォワーディング,スイッチング,ルーティング,ディレクトリ)
ネットワーク・プロトコルのクラスに共通のコンポーネント[レベル3]
プロトコルのためのコンポーネント[レベル4]
プロトコル・メッセージのためのコンポーネント[レベル5]
図3で示されるように、本発明の実施例では、グローバルなフォーマット・コンポーネントは、3つのサブコンポーネント、ポリシー300、セキュリティー302、及びネットワーク情報ベース304を含む。グローバルなポリシー・サブコンポーネントは、ポリシー・ドメインで定義されたポリシーのタイプのためのサブコンポーネントを含む。グローバルなポリシーのためのサブコンポーネントは、以下のものを1以上含む:
ピア情報
セキュリティー確認コンポーネント
セキュリティー委任コンポーネント
ルート・インフォメーション・コンポーネント
ルート配信コンポーネント
ダイナミックなルート配信コンポーネント
要約コンポーネント
拡張コンポーネント、及び
ポリシー配信コンポーネント。
ピア情報
セキュリティー確認コンポーネント
セキュリティー委任コンポーネント
ルート・インフォメーション・コンポーネント
ルート配信コンポーネント
ダイナミックなルート配信コンポーネント
要約コンポーネント
拡張コンポーネント、及び
ポリシー配信コンポーネント。
セキュリティー・フォーマット・コンポーネントは、グローバルなセキュリティー情報をカバーする。ネットワーク情報ベース・フォーマット・コンポーネントは、情報のタイプが渡されたことを示す。
ネットワーク・コンポーネントのフォーマット情報(NC-GFIに基づいた)は、以下のものを含む:
フォーマットされているNC-GFI
個々のNC-GFIフィールドの長さ
NC-GFI(フォーマット-idによる)に関係したフォーマット
フォーマット-idによって追加/置換/削除するフォーマットのリスト
追加フォーマット
置換フォーマット
フォーマットされているNC-GFI
個々のNC-GFIフィールドの長さ
NC-GFI(フォーマット-idによる)に関係したフォーマット
フォーマット-idによって追加/置換/削除するフォーマットのリスト
追加フォーマット
置換フォーマット
各フォーマットは、フォーマットが有効である間の時間範囲を加えたバイトのフォーマットを含む。
時間範囲は以下のものを含む:
このフォーマットが送られるのを始める時間
このフォーマットが送られるのを止める時間
このフォーマットが受け取られた時間
このフォーマットが受け取られるのを止める時間
時間範囲は以下のものを含む:
このフォーマットが送られるのを始める時間
このフォーマットが送られるのを止める時間
このフォーマットが受け取られた時間
このフォーマットが受け取られるのを止める時間
グローバルなGFIデータは、非同期にアップデートされたフォーマットを可能にする。
<分類されたプロトコルへのネットワーク・コンポーネントのアプリケーション>
本発明の実施例は、ネットワーク・クラスのレベルでグローバルなコンポーネントから構成されるIPルート・コンポーネントを含む。IPルート・コンポーネントは、スタティック・ルート、IGP(RIP,RIPng,OSPF(v2/v3),ISIS)、及びEGP(BGP,EGP)、マルチキャスト・ルーティング(DVMRP,PIM(SM,DM,SSM)及びMSDP)を含む共通のIPルーティング情報を支持する。実施例は、更に、ネットワーク・クラスのレベルでグローバルなコンポーネントから構成されるIP切り換えコンポーネントを含む。IP切り換えコンポーネントは、MPLSを切り換えること、及びMPLSスタティック・ルートとMPLSプロトコルのためのフォワーディング状態を支持する。ポリシー・コンポーネントは、ネットワーク・プロトコルの全てのクラス全体でポリシーを支持しているグローバルなレベル・コンポーネントである。
本発明の実施例は、ネットワーク・クラスのレベルでグローバルなコンポーネントから構成されるIPルート・コンポーネントを含む。IPルート・コンポーネントは、スタティック・ルート、IGP(RIP,RIPng,OSPF(v2/v3),ISIS)、及びEGP(BGP,EGP)、マルチキャスト・ルーティング(DVMRP,PIM(SM,DM,SSM)及びMSDP)を含む共通のIPルーティング情報を支持する。実施例は、更に、ネットワーク・クラスのレベルでグローバルなコンポーネントから構成されるIP切り換えコンポーネントを含む。IP切り換えコンポーネントは、MPLSを切り換えること、及びMPLSスタティック・ルートとMPLSプロトコルのためのフォワーディング状態を支持する。ポリシー・コンポーネントは、ネットワーク・プロトコルの全てのクラス全体でポリシーを支持しているグローバルなレベル・コンポーネントである。
<結論>
以上より、発明の特定の実施例が図の目的のためにここに記述されたが、種々の変更が本発明の精神及び範囲から逸れないようになされる。従って、追加された請求項を除いて、本発明は制限されない。
以上より、発明の特定の実施例が図の目的のためにここに記述されたが、種々の変更が本発明の精神及び範囲から逸れないようになされる。従って、追加された請求項を除いて、本発明は制限されない。
Claims (82)
- 階層に配置された複数のサブコンポーネントを含み、ネットワーク・プロトコルに従ってエンコード化されたメッセージを有効にする方法であって、
プロトコルを通して通信するために作用するネットワークにおけるノードでメッセージを受け取り、
複数のサブコンポーネントの各サブコンポーネントを再帰的に有効にし、再帰的に有効にされる各サブコンポーネントは、
多くの各サブコンポーネントのためのエイジング・リミットを決定し、
多くの各サブコンポーネントのための連続する識別子を決定し、
サブコンポーネントのためのラップアラウンド・カウントを決定し、そして、
複数のサブコンポーネントのそれぞれのために、連続する識別子をサブコンポーネントのためのラップ・カウントと現在の時間に対するエイジング・リミットと比較することを更に含むことを含む方法。 - 複数のサブコンポーネントのサブコンポーネントのために、現在のタイムがエイジング・リミットを超過する場合、及び連続する識別子がラップ・カウントよりも少ない場合、エイジ・リミットを超過するとしてサブコンポーネントにフラグを立てることを更に含む請求項1の方法。
- サブコンポーネントにフラグを立てることで、ネットワーク・プロトコルのセキュリティー・デーモンへフラグを立てることを示すのを更に含む請求項2の方法。
- サブコンポーネントが再送信されたかどうかを決定することを更に含む請求項1の方法。
- ネットワーク・プロトコルは、ルーティング・プロトコルである請求項1の方法。
- ルーティング・プロトコルは、外部ゲートウェイ・プロトコル(EGP)である請求項5の方法。
- EGPは、パス・ベクトル・プロトコルである請求項6の方法。
- パス・ベクトル・プロトコルは、境界ゲートウェイ・プロトコルのバージョンである請求項7の方法。
- ルーティング・プロトコルは、リンク・ステート・プロトコルである請求項5の方法。
- リンク・ステート・プロトコルは、オープン・ショーテスト・パス・ファースト(OSPF)である請求項9の方法。
- リンク・ステート・プロトコルは、IS-ISである請求項9の方法。
- 情報のブロックがプロトコルにコード化され、インターネットワークを通して送信され、インターネットワークの最初のノードでネットワーク・コンポーネントを処理する方法であって、
インターネットワークを通して、第2ノードから第1ノードにネットワーク・コンポーネントを送信し、
ネットワーク・コンポーネントの識別子を決定し、
識別子を有効にし、識別子のための範囲、識別子のためのラップ・カウント、及び識別子のためのエイジ・リミットを決定することを更に含む識別子を有効にし、
ネットワーク・コンポーネントが(1)第2ノードによって第1ノードへ全て送られ、及び、(2)第2ノードによる識別子から第1ノードへ送られるうちの正確に1つであったかどうか決定することを含んでいる方法。 - ネットワーク・コンポーネントが全部転送された場合、ネットワーク・コンポーネントの1以上のサブコンポーネントを再帰的に有効にすることを更に含む請求項12の方法。
- 1以上のサブコンポーネントを再帰的に有効にすることは、複数のサブコンポーネントのそれぞれのためにフォーマットを有効にすることを更に含む請求項13の方法。
- 1以上のサブコンポーネントを再帰的に有効にすることは、複数のサブコンポーネントのそれぞれのためにシンタックスを有効にすることを更に含む請求項14の方法。
- シンタックスは、ネットワーク・プロトコルによって少なくとも部分的に指定される請求項15の方法。
- 複数のサブコンポーネントからのサブコンポーネントが無効である場合、ネットワーク・プロトコルのセキュリティー・デーモンへサブコンポーネントの無効を示すことを更に含む請求項15の方法。
- ネットワークコンポーネントが再送信されたかどうかを決定することを更に含む請求項14の方法。
- 1以上のサブコンポーネントを再帰的に有効にすることで、ネットワーク・コンポーネントのためのエイジング・タイムをリセットすることを更に含む請求項15の方法。
- 1以上のサブコンポーネントを再帰的に有効にすることで、連続的な識別子のラップ・アラウンド処理をアップデートすることを更に含む請求項16の方法。
- サブコンポーネントのためのラップ・アラウンド・リミットを法として、連続的な識別子は、単調に増加する請求項12の方法。
- ネットワーク・プロトコルは、EGPである請求項13の方法。
- EGPは、パス・ベクトル・プロトコルである請求項22の方法。
- パス・ベクトル・プロトコルは、BGPのバージョンである請求項23の方法。
- ネットワーク・プロトコルは、リンク・ステート・プロトコルである請求項13の方法。
- リンク・ステート・プロトコルは、OSPFである請求項13の方法。
- リンク・ステート・プロトコルは、IS-ISである請求項13の方法。
- 通信プロトコルを通してインターネットワークで送信され、共通のメッセージを意味し、インターネットワークに常駐するネットワーク・コンポーネントであって、
再帰的な階層に配置された複数のサブコンポーネントと、
各サブコンポーネントのためであるように、複数のサブコンポーネントの各サブコンポーネントのための識別子であって、ラップ・アラウンド・リミットが識別子の最大の可能な値を示すラップ・アラウンド・リミット法として各サブコンポーネントの各送信のために、単調に増加する識別子と、
複数のサブコンポーネントのそれぞれのサブコンポーネントのための送信期間であって、それぞれのサブコンポーネントが複数のサブコンポーネントからの1以上の親サブコンポーネントの送信期間より短いか、同等に送信され、インターネットワークでサブコンポーネントを再変換するための間隔を設定している送信期間と、
複数のサブコンポーネントのそれぞれの識別子とラップ・アラウンド・リミットへの言及によって複数のサブコンポーネントを確認するために働くインターネットワークの1以上のノードであって、1以上のノードは、再送信と同時に複数のサブコンポーネントのそれぞれの識別子を増加させるために働く1以上のノードと含んでいるネットワーク・コンポーネント。 - 現在のタイムがエイジング・リミットを超過するか等しい場合に、1以上のノードが識別子をリセットするのに作用するのようなエイジング・リミットを更に含む請求項28のネットワーク・コンポーネント。
- 通信プロトコルは、EGPである請求項28のネットワーク・コンポーネント。
- EGPは、パス・ベクトル・プロトコルである請求項30のネットワーク・コンポーネント。
- パス・ベクトル・プロトコルは、BGPである請求項31のネットワーク・コンポーネント。
- 通信プロトコルは、リンク・ステート・プロトコルである請求項29のネットワーク・コンポーネント。
- リンク・ステート・プロトコルは、OSPFである請求項33のネットワーク・コンポーネント。
- リンク・ステート・プロトコルは、IS-ISである請求項34のネットワーク・コンポーネント。
- 1以上のノードは、複数のネットワーク・コンポーネントのそれぞれについて、エイジング・メトリックをリセットするために作用している請求項29のネットワーク・コンポーネント。
- インターネットワークで送信されるパケットであって、
再帰的な階層で配置されるパケットの複数のコンポーネント・ブロックと、
再帰的な階層で第1ネットワーク・コンポーネントのランクを示している第1フィールドと、第1コンポーネントのための固有のグローバル識別子を含む第2フィールドとを含む再帰的な階層の第1コンポーネント・ブロックと、
第1データ・パターンよりかなり短いように、第1ネットワーク・コンポーネントは、以前インターネットワークを横断した最初のデータ・パターンの代わりになる第1ネットワーク・コンポーネントとを含むパケット。 - 第1データ・パターンは、インターネットワーク・プロトコルでメッセージをコード化する請求項37のパケット。
- インターネットワーク・プロトコルは、リンク・ステート・プロトコルである請求項38のパケット。
- リンク・ステート・プロトコルは、IS-ISである請求項39のパケット。
- リンク・ステート・プロトコルは、ショーテスト・パス・ファースト・プロトコルである請求項39のパケット。
- リンク・ステート・プロトコルは、オープン・ショーテスト・パス・ファースト・プロトコルである請求項41のパケット。
- インターネットワーク・プロトコルは、パス・ベクトル・プロトコルである請求項38のパケット。
- インターネットワーク・プロトコルは、距離ベクトル・プロトコルである請求項38のパケット。
- 第1データ・パターンは、インターネットワークで通信されたパケット・ヘッダーで頻出する一連のパラメータをコード化する請求項37のパケット。
- 再帰的な階層の第2コンポーネント、第1コンポーネントに埋め込まれた第2コンポーネント、事前にインターネットワークを横断した第2データ・パターンの代わりになる第2コンポーネントを更に含む請求項37のパケット。
- 再帰的な階層の第2ネットワーク・コンポーネントのランクを示す第3フィールド、第2コンポーネントのための固有のグローバル識別子を含む第4フィールドを更に含む請求項46のパケット。
- 第2ネットワーク・コンポーネントのランクは、第1ネットワーク・コンポーネントのランクより低い請求項47のパケット。
- パケットが複数のコンポーネントを含み、該複数のコンポーネントのそれぞれは、パケット情報のブロックを含む、パケットをインターネットワークで送信する方法であって
パケットを受け取るインターネットワークの第1ピアと、
複数のコンポーネントの第1コンポーネントを特定し、第1ピアがデフォルト・フォーマットを解読するために作用するように、そこで、第1コンポーネントは、デフォルト・フォーマットでコード化され、デフォルト・フォーマットのためのグローバル・フォーマット識別子が第1コンポーネントに埋め込まれているデフォルト・フォーマットのためにグローバル・フォーマット識別子を特定することを更に含むデフォルト・フォーマットを特定し、
デフォルト・フォーマットへの言及によって第1ピアで第1コンポーネントを処理し;
第2フォーマットが第1ピアに事前に格納されなかった第1コンポーネントよってコード化される第2フォーマットを決定し、
複数のコンポーネントからの第2コンポーネント、再帰的に第1コンポーネントに埋め込まれる第2コンポーネント、インターネットワークでしばしば反復されるネットワーク情報のブロックを圧縮している第2コンポーネントを特定し、第2フォーマットのためのグローバル・フォーマット識別子が第2コンポーネントに埋め込まれる第2フォーマットのために、グローバル・フォーマット識別子を特定することを更に含む第2コンポーネントを特定し、
第2フォーマットへの言及によって第1ピアで第2コンポーネントを減圧することを含む方法。 - 第1及び第2ピアは、別々の自律システムに位置している請求項49の方法。
- 第1及び第2ピアは、外部ゲートウェイ・プロトコルを通して通信している請求項50の方法。
- 第1及び第2ピアは、外部ゲートウェイ・プロトコルを通して通信している請求項50の方法。
- 第1及び第2ピアは、単一の自律システムにある請求項49の方法。
- 第1及び第2ピアは、内部ゲートウェイ・プロトコルを通して通信している請求項53の方法。
- 第1及び第2ピアは、距離ベクトル・プロトコルを通して通信している請求項49の方法。
- 第1及び第2ピアは、リンク・ステート・プロトコルを通して通信している請求項49の方法。
- 第1及び第2ピアは、RIP,OSPF,ISISで構成されるグループのうちの1つ上で通信している請求項49の方法。
- 第2ネットワーク・コンポーネントのために固有の識別子を割り当てることを更に含む請求項49の方法。
- 固有の識別子は、単調に増加している請求項58の方法。
- インターネットワークの後の送信での第2ネットワーク・コンポーネントの代わりに第2ネットワーク・コンポーネントの固有の識別子を用いることを更に含む請求項59の方法。
- 第2ネットワーク・コンポーネントの識別子は、著しく短い第2ネットワーク・コンポーネント自体である請求項60の方法。
- ネットワーク情報のブロックは、インターネットワークを通してパケットヘッダーで頻繁に送信されたパラメータを含む請求項49の方法。
- ネットワーク情報を送信する方法であって、
ネットワークを横断するパケットの範囲内でしばしば反復されるネットワーク・データのパターンを特定し、
ネットワーク・データのパケットの代わりになるパケット・コンポーネントを生成し、 パケット・コンポーネントのために固有の、単調に増加する識別子を生成することを含むパケット・コンポーネントを生成し、
インターネットワークでパケットに埋め込まれた、ネットワーク・データのパターンの代わりになるパケット・コンポーネントを送信し、
パケット・コンポーネントに換えて、その後、ネットワーク・データのパターンの代わりになる、パケット・コンポーネントよりもかなり短い固有の識別子だけを送信する方法。 - ネットワークは、ローカル・エリア・ネットワークである請求項63の方法。
- ネットワークは、自律システムである請求項63の方法。
- ネットワークは、インターネットワークである請求項63の方法。
- ネットワーク・データのパターンは、ルーティング情報を含む請求項63の方法。
- ルーティング情報は、ルーティング・プロトコルにパラメータを含む請求項67の方法。
- ルーティング・プロトコルは、リンク・ステート・プロトコルである請求項68の方法。
- ルーティング・プロトコルは、距離ベクトル・プロトコルである請求項68の方法。
- ルーティング・プロトコルは、パス・ベクトル・プロトコルである請求項68の方法
- ネットワーク・データのパターンは、ネットワーク・セキュリティー・アプリケーションからの情報を含む請求項63の方法。
- ネットワーク・セキュリティー・アプリケーションは、ファィアウォールである請求項72の方法。
- ネットワーク・セキュリティー・アプリケーションは、仮想私設網(VPN)アプリケーションである請求項72の方法。
- VPNアプリケーションは、IPSecアプリケーションである請求項38の方法。
- ネットワーク・セキュリティー・アプリケーションは、セキュア・ソケット・レイヤー・アプリケーションである請求項72の方法。
- ネットワーク・データのパターンは、ネットワーク監視アプリケーションからの情報を含む請求項63の方法。
- ネットワーク監視アプリケーションは、簡易ネットワーク監視プロトコルに基づいている請求項77の方法。
- ネットワーク・データのパターンは、通信プロトコルでコード化された情報を含む請求項63の方法。
- 通信プロトコルは、簡易オブジェクト・アクセス・プロトコルである請求項79の方法。
- 通信プロトコルは、共通オブジェクト・リクエスト・ブローカー・アプリケーションである請求項79の方法。
- ネットワーク・データのパターンは、XMLでコード化された請求項63の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/648,146 US20050047406A1 (en) | 2003-08-25 | 2003-08-25 | Nested components for network protocols |
PCT/US2004/027117 WO2005022310A2 (en) | 2003-08-25 | 2004-08-19 | Nested components for network protocols |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007503770A true JP2007503770A (ja) | 2007-02-22 |
Family
ID=34216679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006524753A Withdrawn JP2007503770A (ja) | 2003-08-25 | 2004-08-19 | ネットワーク・プロトコルのためのネスト化されたコンポーネント |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050047406A1 (ja) |
EP (1) | EP1665643A2 (ja) |
JP (1) | JP2007503770A (ja) |
KR (1) | KR20070005907A (ja) |
WO (1) | WO2005022310A2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016005282A (ja) * | 2014-06-19 | 2016-01-12 | エックスプライアント, インコーポレイテッド | パケットの固有の識別子を用いて、パケットの構造を特定する方法およびその装置 |
US10397113B2 (en) | 2014-06-19 | 2019-08-27 | Cavium, Llc | Method of identifying internal destinations of network packets and an apparatus thereof |
US10560399B2 (en) | 2014-06-19 | 2020-02-11 | Cavium, Llc | Method of dynamically renumbering ports and an apparatus thereof |
US10616380B2 (en) | 2014-06-19 | 2020-04-07 | Cavium, Llc | Method of handling large protocol layers for configurable extraction of layer information and an apparatus thereof |
US10785169B2 (en) | 2013-12-30 | 2020-09-22 | Marvell Asia Pte, Ltd. | Protocol independent programmable switch (PIPS) for software defined data center networks |
US11050859B2 (en) | 2014-06-19 | 2021-06-29 | Marvell Asia Pte, Ltd. | Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050094566A1 (en) * | 2003-10-14 | 2005-05-05 | Susan Hares | Systems and methods for combining and extending routing protocols |
ATE349838T1 (de) * | 2003-11-19 | 2007-01-15 | Sony Deutschland Gmbh | Kommunikationssubsystemgesteuerte informationsverteilung |
US7633874B1 (en) * | 2004-04-28 | 2009-12-15 | Cisco Technology, Inc. | Soft notification messaging for a routing protocol |
US7768995B2 (en) * | 2006-08-01 | 2010-08-03 | Cisco Technology, Inc. | Techniques for one-way synchronization of routing information among intermediate nodes |
US7773634B1 (en) * | 2007-12-06 | 2010-08-10 | Sprint Communications Company L.P. | Algorithms for constructing sets of frequently occurring strings |
US20140215011A1 (en) * | 2013-01-25 | 2014-07-31 | General Instrument Corporation | Message exchange via generic tlv generator and parser |
CN109684879B (zh) * | 2018-12-21 | 2023-08-18 | 北京计算机技术及应用研究所 | 一种国产化软硬件设备的通用监控方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6633544B1 (en) * | 1998-06-24 | 2003-10-14 | At&T Corp. | Efficient precomputation of quality-of-service routes |
US6697361B2 (en) * | 1998-09-15 | 2004-02-24 | Nortel Networks Limited | Method and apparatus for stream aggregation in a multiprotocol label switching network environment |
US6738376B1 (en) * | 2000-04-07 | 2004-05-18 | International Business Machines Corporation | Method and system for managing multicast traffic |
US6820134B1 (en) * | 2000-12-28 | 2004-11-16 | Cisco Technology, Inc. | Optimizing flooding of information in link-state routing protocol |
JP3875112B2 (ja) * | 2002-01-25 | 2007-01-31 | 株式会社山武 | Pid選択機能を備えた調節計 |
US6801545B2 (en) * | 2002-02-04 | 2004-10-05 | Fujitsu Network Communications, Inc. | Container transport for packets in connection oriented protocols |
-
2003
- 2003-08-25 US US10/648,146 patent/US20050047406A1/en not_active Abandoned
-
2004
- 2004-08-19 JP JP2006524753A patent/JP2007503770A/ja not_active Withdrawn
- 2004-08-19 WO PCT/US2004/027117 patent/WO2005022310A2/en active Application Filing
- 2004-08-19 KR KR1020067003901A patent/KR20070005907A/ko not_active Application Discontinuation
- 2004-08-19 EP EP04781739A patent/EP1665643A2/en not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10785169B2 (en) | 2013-12-30 | 2020-09-22 | Marvell Asia Pte, Ltd. | Protocol independent programmable switch (PIPS) for software defined data center networks |
US11824796B2 (en) | 2013-12-30 | 2023-11-21 | Marvell Asia Pte, Ltd. | Protocol independent programmable switch (PIPS) for software defined data center networks |
JP2016005282A (ja) * | 2014-06-19 | 2016-01-12 | エックスプライアント, インコーポレイテッド | パケットの固有の識別子を用いて、パケットの構造を特定する方法およびその装置 |
US10397113B2 (en) | 2014-06-19 | 2019-08-27 | Cavium, Llc | Method of identifying internal destinations of network packets and an apparatus thereof |
US10560399B2 (en) | 2014-06-19 | 2020-02-11 | Cavium, Llc | Method of dynamically renumbering ports and an apparatus thereof |
US10616380B2 (en) | 2014-06-19 | 2020-04-07 | Cavium, Llc | Method of handling large protocol layers for configurable extraction of layer information and an apparatus thereof |
US11050859B2 (en) | 2014-06-19 | 2021-06-29 | Marvell Asia Pte, Ltd. | Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof |
US11799989B2 (en) | 2014-06-19 | 2023-10-24 | Marvell Asia Pte, Ltd. | Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof |
Also Published As
Publication number | Publication date |
---|---|
WO2005022310A3 (en) | 2006-02-16 |
EP1665643A2 (en) | 2006-06-07 |
WO2005022310A2 (en) | 2005-03-10 |
KR20070005907A (ko) | 2007-01-10 |
US20050047406A1 (en) | 2005-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9667550B2 (en) | Advertising traffic engineering information with the border gateway protocol for traffic engineered path computation | |
US7995593B2 (en) | System and method for retrieving computed paths from a path computation element using encrypted objects | |
US7558276B2 (en) | System and method for retrieving computed paths from a path computation element using a path key | |
US7742459B2 (en) | Method for distributing aggregate route information | |
US8825898B2 (en) | Technique for optimized routing of data streams on an IP backbone in a computer network | |
US7814227B2 (en) | Computation of a shortest inter-domain TE-LSP across a set of autonomous systems | |
US7684351B2 (en) | Inter-domain optimization trigger in PCE-based environment | |
CN107770073B (zh) | 一种信息同步的方法,装置及系统 | |
EP1836599A2 (en) | Propagation of routing information in rsvp-te for inter-domain te-lsps | |
JP2007503770A (ja) | ネットワーク・プロトコルのためのネスト化されたコンポーネント | |
US11671517B2 (en) | Compressed data transmissions in networks implementing interior gateway protocol | |
WO2019236221A1 (en) | Preferred path route graphs in a network | |
US11502940B2 (en) | Explicit backups and fast re-route mechanisms for preferred path routes in a network | |
CA2385844A1 (en) | Label switched routing system and method | |
US20240007397A1 (en) | Supporting stateful explicit paths | |
Eckert et al. | Preferred path routing (ppr) graphs-beyond signaling of paths to networks | |
WO2024082617A1 (zh) | 转发表索引的通告方法、节点及存储介质 | |
Onursal et al. | Enhanced Security for Network Communication With Proposed IS-IS Protocol | |
Kaur et al. | BANANAS: A Connectionless Framework for Explicit, Multipath Routing in the Internet |
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: 20071106 |