"第1のホストシステムと第2のホストシステムの間で、第2のホストシステムを保護するファイアウォールを介して接続を確立する方法であって、KOFノックオンフィーチャ装置によって、第1のホストシステムによって送信された第1のメッセージを受信すること、第1のメッセージが、第1のホストシステムと第2のホストシステムの間で接続を確立するための第1のタイプであると判定すること、第1のメッセージから第1のホストシステムのアドレス、および第2のホストシステムのアドレスをそれぞれ特定すること、KOF装置上に第1のホストシステムのアドレス、および第2のホストシステムのアドレスに対応する2タプルに関する状態情報が存在するかどうかを判定すること、およびKOF装置上に2タプルに関する前記状態情報が存在しない場合、第1のメッセージを第1のホストシステムに送信することを実行することを備える、方法。第2のタプルに関する第1のタイマを初期設定し、開始すること、第2のタプルに関するメッセージカウンタを初期設定し、インクリメントすること、第1のタイマが満了した場合、KOF装置上の前記状態情報を除去し、さらにKOF装置上に2タプルに関する前記状態情報が存在する場合、第1のタイマを調べること、メッセージカウンタのカウントを調べること、カウントが所定の値に達している場合、2タプルに関する第2のタイマを開始して、第1のメッセージをドロップすること、およびカウントが所定の値に達していない場合、第1のメッセージを第2のホストシステムに送信することをさらに備える、請求項1に記載の方法。KOF装置上に2タプルに関する前記状態情報が存在する場合、第2のタイマを調べること、第2のタイマが満了していない場合、第1のメッセージをドロップすること、第2のタイマが満了している場合、KOF装置上の2タプルに関するすべての前記状態情報を除去すること、第2のホストシステムによって送信された第2のメッセージを受信すること、第2のメッセージが、第1のメッセージに応答して第1のホストシステムから情報を要求するための第2のタイプであると判定すること、および第2のメッセージを第1のホストシステムに送信することをさらに備える、請求項2に記載の方法。KOF装置が、ファイアウォールの外部に、ファイアウォールと直列に位置する方法であって、第2のタイマを調べること、第2のタイマが満了していない場合、第1のメッセージをドロップすること、および第2のタイマが満了している場合、2タプルに関する5タプル状態情報を含め、KOF装置上の2タプルに関するすべての前記状態情報を除去することをさらに含み、5タプル状態情報が、2タプルに加えて、接続に関して、プロトコルタイプの指示と、第1のホストシステムの第1のポートの指示と、第2のホストシステムの第2のポートの指示とを含む、請求項2に記載の方法。第2のホストシステムに関してKOF装置上に存在する状態情報の量を特定すること、量が所定の上限を超えたことに応答して、第2のホストシステムと、各ペアにおいて異なる別のホストシステムとをそれぞれが備える2つのホストシステムペアの状態情報を組み合わせて、第2のホストシステムのアドレスと、2つのホストシステムペアの他方のホストシステムのそれぞれのアドレスに共通であるアドレスプレフィックスとを備える1つのホストシステムペアに関する状態情報にすること、前記1つのホストシステムペアに関する組み合わされたタイマを、2つのホストシステムペアのそれぞれの第1のタイマの小さい方に設定すること、および前記1つのホストシステムペアに関する組み合わされたメッセージカウンタを、2つのホストシステムペアのそれぞれのメッセージカウンタの大きい方に設定することをさらに備える、請求項1に記載の方法。第2のホストシステムによって送信された第3のメッセージを受信すること、第3のメッセージが、第1のホストシステムと第2のホストシステムの間の接続を終了させるための第3のタイプであると判定すること、および第3のタイプのメッセージを受信したことに応答して、KOFから、2タプルに関する5タプル状態情報を除去することをさらに含み、5タプル状態情報が、2タプルに加えて、接続に関して、プロトコルタイプの指示と、第1のホストシステムの第1のポートの指示と、第2のホストシステムの第2のポートの指示とを含む、請求項1に記載の方法。KOF装置がファイアウォールの一部である方法であって、第2のホストシステムによって送信された第4のメッセージを受信すること、第4のメッセージが、第1のメッセージに応答して接続を開始するための第4のタイプであると判定すること、5タプルに関して第3のタイマを開始すること、第1のホストシステムによって送信され第2のホストシステムを宛先とする通信トラフィックを受信すること、第3のタイマを調べること、ファイアウォール上に5タプルに関する状態情報が存在するかどうかを判定すること、および第3のタイマが満了していないことに応答して、さらにファイアウォール上に5タプルに関する状態情報が存在することに応答して、通信トラフィックを通過させることをさらに備える、請求項6に記載の方法。KOF装置が、ファイアウォールの外部にある中継サーバの一部である方法であって、受信するステップが、第1のホストシステムと中継サーバの間の前もって確立された第1のシグナリング接続を介して第1のメッセージを受信することを備え、さらに送信するステップが、第2のホストシステムと中継サーバの間の前もって確立されたシグナリング接続を介して第1のメッセージを第2のホストシステムに送信することを備える、請求項1に記載の方法。送信するステップが、KOF上に、第1のホストシステムのアドレス、および第2のホストシステムのアドレスに対応する2タプルエントリを作成すること、および2タプルエントリを通過状態に設定することをさらに備える、請求項1に記載の方法。第1のホストシステムに関してKOF装置上に存在する状態情報の量を特定すること、量が所定の上限を超えたことに応答して、第1のホストシステムと、各ペアにおいて異なる別のホストシステムとをそれぞれが備える2つのホストシステムペアの状態情報を組み合わせて、第2のホストシステムのアドレスと、2つのホストシステムペアの他方のホストシステムのそれぞれのアドレスに共通であるアドレスプレフィックスとを備える1つのホストシステムペアに関する状態情報にすることをさらに備える、請求項1に記載の方法。以上のことに鑑みて、FWの有益なセキュリティ機能を保持し、それと同時に、外部のホストが内部のホストに対して接続確立を開始することを許すことが望ましい。さらに、外部のホストが新たなIPアドレスに移動した場合、内部のホストを相手に確立された接続が継続するのを許すことが望ましい。本発明の実施形態は、ファイアウォールの背後のホストに対して接続を確立するための、本明細書でノックオンプロトコルKOPと呼ばれる、ホスト間シグナリングプロトコルを対象とする。本発明の一部の実施形態は、中間のファイアウォールまたはネットワークアドレストランスレータによって、FWまたはNATを介して、FWまたはNATの背後のホストに対する接続確立を可能にするのに使用されるノックオンフィーチャKOFを対象とする。本発明の一部の実施形態は、外部のホストが内部のホストを相手に接続を確立しようとする試みの頻度を制限することによって、セキュリティをもたらす。KOFがFWまたはNATに組み込まれる本発明の実施形態において、さらに、KOFがFWまたはNATと直列に実装される実施形態において、さらなるセキュリティが、有利には、対応する接続が終了された後、開かれた5タプルエントリを塞ぐことすなわち、閉じること、または削除することによってもたらされ得る。本発明の一部の実施形態において、KOFは、有利には、メッセージフラッディング攻撃において使用されるアドレススプーフィングから保護するプレフィックスベースの保護フィーチャを含む。有利には、本発明の実施形態によるKOFの通常の処理要件およびメモリ要件は、FWまたはNATの処理要件およびメモリ要件と比べて小さい。本発明の或る態様によれば、第1のホストシステムと第2のホストシステムの間で、第2のホストシステムにセキュリティ保護をもたらすファイアウォールを介して接続を確立する方法が提供される。この方法は、ノックオンフィーチャKOF装置によって:第1のホストシステムによって送られた第1のメッセージを受信するステップと、第1のメッセージが、第1のホストシステムと第2のホストシステムの間で接続を確立するための第1のタイプであると判定するステップと、第1のメッセージから第1のホストシステムのアドレス、および第2のホストシステムのアドレスをそれぞれ特定するステップと、第1のホストシステムのアドレス、および第2のホストシステムのアドレスに対応する2タプルに関してKOF装置上に状態情報が存在するかどうかを判定するステップと、KOF装置上に2タプルに関して前述した状態情報が存在しない場合、第1のホストシステムに第1のメッセージを送るステップとを実行することを備える。有利には、この方法は、第2のホストシステムに関してKOF装置上に存在する状態情報の量を特定するステップと、その量が所定の上限を超えたことに応答して、第2のホストシステムと、各ペアにおいて異なる別のホストシステムとをそれぞれが備える2つのホストシステムペアの状態情報を組み合わせて、第2のホストシステムのアドレスと、その2つのホストシステムペアの他方のホストシステムのそれぞれのアドレスに共通であるアドレスプレフィックスとを備える1つのホストシステムペアに関する状態情報にするステップとをさらに含むことが可能である。本発明の以上、およびその他の目的、特徴、および利点は、添付の図面に示される好ましい実施形態の、後述のより詳細な説明から明白となろう。これらの図面において、同様の特徴は、同様の参照符号によって表される。図1を参照すると、FW上で、既存の接続に実際に、または潜在的に関係するすべての5タプルが、2つの状態:通過状態1または阻止状態2のいずれかに関連付けられることが可能であり、ただし、関連付けられた通過機能および阻止機能は、インバウンドパケットに適用される。各5タプルは、この5タプルを有するアウトバウンドパケットが通過している際、阻止状態2から通過状態1に変化する。通過状態1は、存続期間に関連付けられる。存続期間満了の後、5タプルは、阻止状態2に戻る。通過状態1で、タイマは、対応する5タプルを保持するアウトバウンドパケットごと、またはインバウンドパケットごとにリフレッシュされることが可能である。通常のFW実施形態において、通過状態1にある5タプルだけしか、キャッシュメモリの割当てを要求しない。阻止状態2は、デフォルトの状態であり、時間に左右される情報を担持しないので、キャッシュの割当てを要求しない。以下のデータ:5タプルおよび有効期限が、通過状態にある5タプルに関してFW上に通常、保持される。図2を参照すると、FW機能が、2つの有限状態マシンFSMを通して表され得る。一方の状態マシン4は、インバウンドパケットを扱い、他方の状態マシン5は、アウトバウンドパケットを扱う。図2におけるFSM図は、状態有効期限切れによる状態遷移を省略していることに留意されたい。図3を参照すると、KOPが、ホスト間接続管理を組み立てる規約手順courtesyprocedureとしてエンドホストによって使用されなければならない。例えば、認証などのさらなる機能が、これらのメッセージに組み込まれ得る。KOPメッセージは、FW上のKOFによってインターセプトされ、評価され、さらに処理されることが可能である。何らかの条件規則セットに基づいて、インバウンドKOPメッセージが、FW上のKOFによって内部のホストまで通過させられることが可能である。KOPメッセージおよびKOF規則セットの注意深い定義により、FWを介する接続確立が、非常に強いセキュリティで保護された仕方で提供され得る。以下のセクションは、KOFが、FWのセキュリティ機能を損なわないように、どのように設計されるかの概略を述べる。KOPメッセージは、5タプルによって与えられるトランスポート接続に基づく。したがって、KOPメッセージは、対応する5タプル情報を伝送する。KOPは、以下のメッセージをサポートする:-KOPREQ:特定の5タプルを代表して接続確立を要求する。-KOPACK:KOPREQメッセージに応答して接続確立を承認する。-KOPNAK:KOPREQメッセージに応答して接続確立を拒否する。-KOPRSP:KOPREQメッセージに応答して、さらなる情報を要求する。このメッセージに対する応答は、別のKOPREQメッセージである。-KOPFIN:5タプル接続を終了する。以上の初めの4つのメッセージは、接続確立の時点に先立って、またはその時点で使用され、最後のメッセージは、接続終了時に、または接続終了の後に使用される。接続の存続期間中、ホスト上のKOPクライアントは、状態情報を全く保持しなくてもよい。5タプルとは別に、KOPメッセージは、任意の追加の情報を主に伝送することが可能である。例えば、KOPREQメッセージは、ピアホストに接続に入ることを納得させる埋め込まれた情報を、例えば、送信側のホストの認証資格証明として伝送することも可能である。KOPRSPメッセージは、ピアホストが追加の情報を要求することを許す。KOPREQ/RSPメッセージペアを使用することによって、より複雑なハンドシェークが確立され得る。KOPメッセージは、タイプ-長さ-値フォーマットを使用して、情報を保持することが可能である。KOPメッセージは、以下のトランスポートフォーマットを使用し得る:-KOPメッセージは、特定のポート番号を有するUDPを使用することが可能である。以降、特に明記しない限り、このアプローチが、KOPに関して使用される。-KOPメッセージは、それらのメッセージ独自のプロトコルタイプを伝送することが可能である。-KOPメッセージは、ICMPを使用することが可能である。-KOP情報は、IPオプションヘッダIPv4またはIP拡張ヘッダIPv6の中に埋め込まれ得る。これは、IPv6に関して特に良好なソリューションである。-KOPメッセージは、特定のトランスポートプロトコルの中で実施されることも可能である。例えば、TCPの場合、TCPオプションヘッダが、KOPメッセージにフラグを付けるのに使用されることも可能である。例えば、KOPREQメッセージは、TCPSYNメッセージ上に便乗させることが可能である。-KOP情報は、既存のシグナリングプロトコル、例えば、IKEv2IETFRFC4306の中に含められることが可能である。KOP対応のホストは、KOPメッセージを使用して、別のホストとの接続を確立すること、および終了すること、または別のホストからの接続開始要求を拒否することを目的として、KOPメッセージを作成すること、送信すること、受信すること、解釈すること、またはKOPメッセージに応答することができるホストシステムである。好ましくは、KOP対応のホストは、レガシーホストを相手に相互動作することができる。例えば、KOP対応のホストが、レガシーホストに、接続を確立するKOPREQメッセージを送信すると、応答は、全く行われない。この場合、KOP対応のホストは、数回の再送の後、単に諦めて、そのレガシーホストを相手に従来の仕方で接続を確立しようと試みることが可能である。KOPの目的は、FWやNATなどの中間ボックスを克服することであるので、接続を開始する側のホストは、KOPREQメッセージを送信することと並行して、または従来の接続確立が失敗した後に、接続を確立しようと試みることさえ可能である。KOFを有するFWだけが、KOPREQメッセージを通過させることに留意されたい。受信側のホストすなわち、KOPREQメッセージが送信されるホストがKOP対応である場合、そのホストは、接続を開始する側のホストとの接続に入ることなしに、KOPNAKメッセージ、またはKOPRSPメッセージでKOPREQメッセージに応答する機会を有する。しかし、受信側のホストが、レガシーホストであり、FWの背後にはない場合、接続は、遅延なしに開始され得る。このことは、従来のコール確立手順が、ホストのいずれかがKOP対応ではない場合に、それでも適切に機能することを意味する。KOP情報が、トラフィック接続のTPCSYNパケットと多重化されたIPオプションヘッダ、IP拡張ヘッダ、またはTCPオプションヘッダの上で伝送される場合、注意が払われなければならない。例えば、中間FW上のKOFフィーチャは、パケットのKOP部分に反応すること、すなわち、パケットを通過させることが可能である一方で、受信側のレガシーホストは、そのメッセージのKOP部分を単に破棄し、TCPSYNACKでTCPSYNパケットに応答する。このことは、FWのセキュリティ機能を基本的に無効にする。KOPACKメッセージは、KOP対応の受信側のホストが、単に主導権を握り、KOPREQメッセージに応答して接続を開始することが可能であるので、原則として不必要である。この事例に対処するのに、KOPREQメッセージの送信側は、送信側で並行して接続を開始することができる。これにより、受信側のホストによって送信された着信するトラフィックパケットを通過させる5タプルを、送信側自らのファイアウォール上に作成する。図3を参照すると、KOFが、内部のホストHiが、FWの背後の内部のネットワーク14、およびFWの反対側の外部のネットワーク16を介して外部のホストHoに通信するように接続される、それぞれのネットワークアーキテクチャ10aから10cに示される3つの仕方で提供されることが可能である。したがって、KOFは、a組込み型KOFファイアウォール12として示される第1の仕方、bに、レガシーファイアウォールであり得るFW20と直列に追加されたKOF18として示される第2の仕方、またはcに、公共のRS中継サーバ22上で提供されるKOFで示される第3の仕方で提供され得る。図4は、第1のネットワークアーキテクチャ10aによる組込み型KOFファイアウォール12の事例に関する接続確立および接続終了の例示的なコールフローを示す。また、これらのコールフローは、KOF18がFW20に直列に追加された第2のネットワークアーキテクチャ10bにも当てはまる。図4を参照すると、外部のホストHoが、内部のホストHiにKOPREQメッセージを送信すること30によって、内部のホストHiとの接続を開始しようと試みる。組込み型KOFファイアウォール12が、KOPREQメッセージを受信し、このメッセージをKOPメッセージとして認識して、このメッセージを内部のホストHiに転送する32。内部のホストHiは、KOPNAKメッセージを外部のホストHoに送信すること34によって、このKOPREQメッセージに応答することが可能である。組込み型KOFファイアウォール12が、このKOPNAKメッセージを受信し、このメッセージをKOPメッセージとして認識して、このメッセージを外部のホストHoに転送する36。このKOPNAKメッセージは、内部のホストHiが、要求された接続の確立を拒否したことを示すので、このメッセージを受信すると、外部のホストHoは、要求された接続を確立することをしない。KOPNAKの代わりに、内部のホストHiは、KOPACKメッセージを外部のホストHoに送信すること38が可能であり、そのメッセージは、内部のホストHiが、要求される接続の確立を承認したことを示す。組込み型KOFファイアウォール12が、このKOPACKメッセージを受信し、このメッセージをKOPメッセージとして認識して、このメッセージを外部のホストHoに転送する40。このKOPACKメッセージを受信すると、外部のホストHoが、要求された接続を確立することを開始する。KOPACKメッセージまたはKOPNAKメッセージを送信することの代替として、内部のホストHiが、追加の情報を要求するKOPRSPメッセージを外部のホストHoに送信すること42が可能である。組込み型KOFファイアウォール12が、このKOPRSPメッセージを外部のホストHoまで通過させる44とともに、このKOPRSPメッセージに応答して外部のホストHoが内部のホストHiに送信する46第2のKOPREQメッセージを通過させる48。第2のKOPREQメッセージを受信すると、内部のホストHiは、前に、第1のKOPREQメッセージが受信された場合と同一のオプションを有する。内部のホストHiが接続を確立しており、この接続を終了することを所望する場合、内部のホストHiは、KOPFINメッセージを外部のホストHoに、このメッセージを外部のホストHoまで通過させる52組込み型KOFファイアウォール12を介して送信すること50によって、この接続が終了されるべきことを外部のホストHoにシグナリングする。図5を参照すると、組込み型KOFファイアウォール12機能が、インバウンドトラフィックパケットに関係する5タプル60、およびインバウンドKOPREQパケットに関係する2タプル62に関連付けられることが可能である。5タプル60状態は、インバウンドトラフィックパケットが通過させられるべきか、または阻止されるべきかを決定する。2タプル62状態は、インバウンドKOPREQメッセージが通過させられるべきか、または阻止されるべきかを決定する。2タプルとは、{Hi,Ho}IPアドレスペアを指し、ただし、Hiは、内部のホストHiを表し、Hoは、外部のホストHoを表す。外部のホストHoは、外部のホストHo自らのFWの背後に存在することも可能であることに留意されたい。一般に、KOPメッセージは、通過状態にある対応する2タプルエントリが存在する場合に限って、通過させられる。そのようなエントリが存在しない場合、KOFは、そのようなエントリを作成し、そのエントリを通過状態に設定する。KOFは、阻止状態にある対応する2タプルエントリが存在する場合、KOPREQメッセージを通過させない。2タプルのこの2モードの振舞いは、以下の機能をもたらす:通過状態が、KOPREQメッセージの着信レートがクリティカルなレベルを下回っているかどうかを調べ、下回っている場合、KOPREQメッセージは、通過することを許され、下回っていない場合、阻止状態が呼び出されて、さらなるKOPREQメッセージの着信から内部のホストHiを保護する。各5タプルは、通過状態68または阻止状態66にあることが可能であるのに対して、各2タプルは、アイドル状態74、通過状態86、または阻止状態78にあることが可能である。KOFが組み込まれたFWは、5タプル阻止状態66または2タプルアイドル状態78がデフォルトの状態であり、さらにこれらの状態が時間に左右される情報を全く担持しないので、これらの状態に関するキャッシュメモリを、全く保持しない。5タプル通過状態68に関して、KOFが組み込まれたFWは、5タプル、および有効期限をキャッシュする。2タプル通過状態86に関して、KOFが組み込まれたFWは、その2タプル、有効期限タイマ、およびメッセージカウンタをキャッシュする。2タプル阻止状態78に関して、KOFが組み込まれたFWは、その2タプル、および有効期限タイマをキャッシュする。KOFが組み込まれたFW12は、内部のホストHiと外部のホストHoの間の既存の接続、または内部のホストHiによる接続確立の試みに対する5タプル通過状態68エントリを保持する72。KOFが組み込まれたFW12は、外部のホストHoが内部のホストHiとの接続を確立しようと試みる際、インバウンドKOPREQメッセージのレートを制御する2タプル通過状態エントリ{Hi,Ho}を保持する86。KOFが組み込まれたFW12は、外部のホストHoによるさらなるKOPREQメッセージの試みからそのようなメッセージが内部のホストHiによって所望されない場合に、または外部のホストHoが、外部のホストHoが内部のホストHiに送信したKOPREQメッセージの容認可能なレートを超えた場合に、内部のホストHiを保護する2タプル阻止状態78エントリを保持する。5タプル60に基づく機能は、いくつかの例外を除いて従来のFWによって提供される機能と同様である。第1に、5タプル60に基づく阻止機能は、インバウンドKOPREQメッセージには適用されない。代わりに、インバウンドKOPREQメッセージは、そのメッセージに関連付けられた2タプル62の状態の対象となる。第2に、5タプル60エントリは、アウトバウンドのKOPREQメッセージ、RSPメッセージ、またはFINメッセージが通過した際には、作成されない。従来のFW機能に加えて、5タプル60は、5タプルに対応するアウトバウンドすなわち、内部のホストHiから送信されたKOPACKメッセージが、組込み型KOPファイアウォール12を通過させられると、阻止状態66から通過状態68への遷移64を経験する。また、この遷移64は、通常のパケットすなわち、KOPメッセージを伝送していないパケットが、組込み型KOPファイアウォール12を通過されられた際にも、生じる。従来のFW機能に加えて、5タプル60は、5タプル60に対応するアウトバウンドKOPFINパケットが、組込み型KOPファイアウォール12を通過させられると、通過状態68から阻止状態66への遷移70をさらに経験する。このフィーチャは、内部のホストHiが、終了した接続に関してFW上の5タプルエントリを閉じることを許し、これにより、さもなければ、セキュリティホールつまり、セキュリティの脆弱性となる可能性があるエントリが、内部のホストHiによって閉じられることが可能であるので、内部のホストHiに相当なセキュリティをもたらす。組込み型KOPファイアウォール12は、各5タプルの通過状態68に関するタイマを含み、このタイマは、満了すると、通過状態68から阻止状態66への遷移70を生じさせる。さもなければ、5タプル60に対応するインバウンドパケットまたはアウトバウンドパケットが、組込み型KOPファイアウォール12を通過するとともに、5タプル60は、FW状態を通過状態68に保つ72。通過状態68におけるタイマに関連する機能、および通過状態68からの遷移70に関連する機能は、従来のファイアウォールの場合と同一である。すべての2タプル62は、内部のホストHiと外部のホストHoの間のKOPメッセージに含まれる{HiIPアドレス,HoIPアドレス}-ペアに基づく。KOFが組み込まれたFW12は、3つの状態:アイドル状態74、通過状態76、および阻止状態78のうちの1つに2タプル62を保つ。KOFが組み込まれたFW12は、以下のように動作する。アイドル状態74にあり、対応する内部のホストHiに対するインバウンドKOPREQメッセージが着信すると、2タプル62は、通過状態76に遷移し80、KOPREQメッセージに、組込み型KOFファイアウォール12を通過させる。通過状態76は、存続期間属性と、最大カウント属性とを有する。存続期間属性の値によって決まる、通過状態76の存続期間中、最大カウント属性の値と等しい最大限の数のKOPREQメッセージしか、この2タプルに関して転送され得ない。通過状態76の存続期間が、KOPREQメッセージのこの最大限の数に達する前に満了した場合、2タプル62は、アイドル状態74に遷移する82。通過状態76の存続期間が満了する前に、KOPREQメッセージの最大限の数に達した場合、2タプル62は、阻止状態78に遷移する84。最大限の数に達していない場合、通過状態76にある2タプル86は、2タプルのアウトバウンドKOPREQメッセージ、およびアウトバウンドKOPRSPメッセージが、組込み型KOFファイアウォール12を通過するとともに通過状態をリフレッシュする86。遷移86は、通過状態76の通過状態タイマ、および通過状態カウンタをリセットする。阻止状態78において、外部のホストHoから内部のホストHiへのさらなるインバウンドKOPメッセージは、組込み型KOFファイアウォール12によって拒否される。阻止状態78は、阻止状態78独自の存続期間属性を有し、この存続期間属性の値が、阻止状態78の存続期間を決める。阻止状態78の存続期間の満了の後、2タプル62は、アイドル状態74に遷移する88。内部のホストHiが、KOPREQメッセージを受信し、さらに内部のホストHiは、要求された接続を確立することに関心がない場合、内部のホストHiは、KOPNAKメッセージで、接続を開始する側の外部のホストHoに応答することが可能である。このKOPNAKメッセージは、KOFが組み込まれたFW12上の2タプル62に、通過状態76から阻止状態78に直接に遷移させ84、これにより、組込み型KOFファイアウォール12に、外部のホストHoから内部のホストHiに送信されるさらなるKOPREQメッセージを阻止させる。KOF状態が、通過状態76にあり、さらに対応する内部のホストHiが、対応する外部のホストHoからさらなる情報を要求するアウトバウンドKOPRSPメッセージを送信した場合、KOFが組み込まれたFW12は、2タプル62に関する通過状態タイマおよび通過状態カウンタをリセットする。KOFが組み込まれたFW12は、通過状態タイマおよび通過状態カウンタを使用して、その2タプル62に関して、対応する通過状態存続期間が満了したかどうか、または通過状態76にある間に許されるメッセージの最大限の数に達しているかどうかを判定する。このリセット能力は、外部のホストHoに、必要である可能性がある再送を含むKOPREQメッセージで、KOPRSPメッセージに応答する機会を与える。内部のホストHiによって送信されるKOPRSPメッセージおよびACKメッセージは、外部のホストHoもFWの背後に存在する場合、KOPREQメッセージの役割をすることも可能である。したがって、KOPREQ/RSPメッセージハンドシェークまたはKOPREQ/ACKメッセージハンドシェークが、両方のファイアウォール上のパスを通過できるようにする。そのようなハンドシェークは、両方のホストがファイアウォールの背後にある場合に、セキュリティで保護された仕方で接続確立を可能にする。このセットのフィーチャを用いて、KOFは、組込み型KOFファイアウォール12を介して以下の保護をもたらす:KOFは、或るタイプの制御メッセージを内部のホストHiまで通過させるようにFWを開く一方で、そのようなメッセージのインバウンドパケットフローを、通過状態76存続期間当りの最大カウントに制限する。このレート通過状態76最大カウントの値、および存続期間属性の値によって決まるが外部のホストHoによって超えられると、阻止状態78が、何らかの延長された期間にわたって、内部のホストHiをさらなるKOPREQメッセージから保護する。通過状態76存続期間属性の値は、有利には、複数のKOPREQメッセージ再送に対処することができるように数秒に設定される。したがって、阻止状態78は、KOPREQメッセージフラッディング攻撃から、内部のホストHiを保護するために、阻止状態78存続期間属性の値は、通過状態76の存続期間より長い存続期間をもたらさなければならない例えば、阻止状態78の存続期間は、数分または数時間でさえある。組込み型KOFファイアウォール12におけるKOFによってもたらされる前述の保護を向上させるのに、KOPメッセージのパケット長が、指定された最大限の長さに制限されることが可能である。合計のメッセージ長を576オクテット未満に保つことが賢明であり、このことは、パケット断片化が適用されないことを意味する。したがって、KOPメッセージを処理する前に、KOFは、そのKOPメッセージを伝送するパケットの長さを評価し、そのパケットの長さが指定された最大限の長さを超える場合、そのパケットを破棄する。KOFによって提供される保護をさらに強化するために、KOPメッセージに関して特定のTLVフォーマットが導入されることも可能である。このフォーマットは、タイプ定義および値の長さが柔軟であるが、組込み型KOFファイアウォール12およびホストが、組込み型KOFファイアウォール12およびホストがタイプ定義を認識しないKOPメッセージを破棄することを可能にすることによって、ホストにさらなる保護をもたらす。KOFは、内部のホストが、内部のホストがKOPREQメッセージを拒否した外部のホストを相手に接続を確立することを禁止しないことに留意されたい。この能力は、KOFが組み込まれたFW12が、対応するホストペアの2タプル62が阻止状態78を保持しているものの、5タプル60を通過状態68に保つことができることを意味する。この振舞いは、組込み型KOFファイアウォール12をレガシーFW機能に適合させるので、重要である。2タプル62の状態は、かなり簡単に実施され得る:アイドル状態74は、時間に左右される情報を全く保持しないので、メモリの割当てを要求しない。したがって、通過状態76にある2タプル、または阻止状態にある2タプルだけが、メモリの中に保持される。この目的で、以下のデータ構造がメモリの中に保持される:KOF通過状態:-2タプル-有効期限通過状態存続期間が満了する時刻-カウンタ最大カウント属性の値までKOPメッセージの数をカウントアップする、または最大カウント属性の値からKOPメッセージの数をカウントダウンするKOF通過状態有効期限は、前述した通過状態タイマを実施し、さらにKOF通過状態カウンタは、前述した通過状態カウンタを実施する。KOF阻止状態:-2タプル-有効期限阻止状態存続期間が満了する時刻通常の動作の下で、メモリの中に保持されるべきKOF状態の数は、ごくわずかである。しかし、この数は、メッセージフラッディング攻撃中、大幅に増大する可能性がある。そのような状況下で、次のセクションで説明されるプレフィックスベースの保護が有益である。プレフィックスベースの保護KOFが組み込まれたFW12は、それぞれの内部のホストHiに着信するKOPREQメッセージのレートを制限するが、内部のホストをKOPREQメッセージのフラッディング攻撃から保護することもしなければならない。このことは、KOF自体の過負荷につながる攻撃を含む。そのような状況下で、KOFは、KOFの機能をむしろ一時的に低下させなければならず、これにより、組込み型KOFファイアウォール12機能を従来のFWの機能に戻す。KOFは、多数のスプーフィングされたIPアドレスを発信元とし、1つの内部のホストHiに向けられたKOFREQメッセージのフラッドに対して脆弱になり得る。これは、KOFが、スプーフィングされたすべてのIPアドレスを発信元とするKOFREQメッセージのもたらされる2タプルごとに1つのエントリ62を保持し、このことが、組込み型KOFファイアウォール12が、メッセージのフラッド全体を通過させることをもたらすためである。原則として、IPアドレススプーフィングは、中間ルータによるイングレスフィルタリングを介して挫かれる。しかし、イングレスフィルタリングは、必ずしも執行されるとは限らない。さらに、攻撃者はそれでも、同一のL2ネットワーク、すなわち、1つのL3サブネットに属するIPアドレスをスプーフィングすることができる可能性がある。KOFは、前段で概説した{HiIPアドレス,HoIPアドレス}という原始2タプルを{HiIPアドレス、HoIPプレフィックス}というプレフィックスベースの形態に拡張することによって、そのようなフラッディング攻撃に対して防御することができる。このプレフィックスベースの形態において、外部のホストHoのプレフィックスに適合する、内部のホストHiに関するすべての着信するKOPREQメッセージは、同一のKOF状態を使用して同一の2タプル62によって扱われる。2タプル62の、原始形態からプレフィックスベースの形態への拡張は、IPプレフィックスに基づく阻止が、多数の友好的なホストについてもアクセスのしやすさを低減する可能性があるので、徐々に行われる必要がある。様々なアルゴリズムが、この目的で導入され得る。1つの簡単で、非常に効果的な方法は、以下のとおりである:-それぞれの内部のホストHiに関して、KOFは、通過状態76または阻止状態78にある或る最大限の数Nの2タプルだけを、これら2つの状態がメモリ割当てを要求するので、保持することが可能である。これら2つの状態のいずれかを保つ2タプルは、2タプルエントリと呼ばれる。-内部のホストHiに関する2タプルエントリの数がNに達し、さらに内部のホストHiに対する新たなインバウンドKOFREQが着信して、通過状態76にある新たな2タプルエントリの生成をもたらすと、内部のホストの2タプルエントリのうちの2つが組み合わされて、単一の2タプルエントリにされなければならない。組み合わされた2タプルエントリは、前述した2つの2タプルエントリのそれぞれ1つの2タプルにそれぞれが対応する、外部のホストHoのIPアドレスの共通部分をプレフィックスとして使用する。プレフィックスという用語は、この場合、サブネット割当ての意味で使用されていないことに留意されたい。-両方の2タプルエントリが、同一の状態通過状態76または阻止状態78を有する場合、この状態は、組み合わされた2タプルエントリに持ち越される。この状態が通過状態76である場合、組み合わされた2タプルエントリのカウンタは、前の2タプルエントリのカウンタのうちの大きい方の値に設定され、さらに組み合わされた有効期限は、前の2タプルエントリの有効期限のうちの小さい方の値に設定される。この状態が阻止状態78である場合、組み合わされた2タプルエントリの有効期限は、前の2タプルエントリの有効期限のうちの大きい方の値に設定される。-両方の2タプルエントリが、異なる状態を有する一方が、通過状態76にあり、他方が、阻止状態78にある場合、組み合わされた2タプルエントリは、阻止状態78に設定され、有効期限は、リセットされる。-組合せ手順のために使用される2タプルエントリの選択は、マージされた2タプルに関する最長のプレフィックスに基づくことが可能である。このプレフィックスが長いほど、外部のホストのIPアドレス間のトポロジ上の距離は小さくなる。この選択プロセスの計算作業は、数Nがかなり小さいように選択され得るので、かなり少ない。例:N=3:内部のホストHiは、内部のホストHiに対する新たなKOFREQが着信する際に、N=3個の2タプルエントリを既に有する:2タプルエントリ1と3が、最大の共通のプレフィックスを有するため、組み合わされ、このことが、以下をもたらす:-現時点で状態1として示される、組み合わされたKOF状態は、IPアドレスの最下位の2オクテットに関して使用されるX.Xにより、いわゆるプレフィックスベースの形態である、200.1.X.Xという外部ホストのHoIPアドレスを有する。X.Xは、外部のホストのIPアドレスの対応するオクテットに関するすべての値と合致する。さらに、組み合わされたKOF状態の通過状態カウンタメッセージカウンタは、前のKOF状態1および3の通過状態カウンタの値の大きい方である、3に設定される。新たなKOF状態の通過状態タイマ有効期限タイマは、前のKOF状態1および3の通過状態タイマの短い方である、現在3120ミリ秒に設定される。KOFは、2タプルエントリ組合せの履歴についての情報を全く保持する必要はない。状態遷移は、従来のIPアドレスベースの状態と同様にプレフィックスベースの状態に当てはまる。アイドル状態74に達すると、アイドル状態74において全くメモリが保持されないので、状態バンドル情報が、失われる。この機構は、状態バンドルをスムーズに逆転させ、さらにKOFがその通常の動作モードを緩和することを許す。前述の組合せプロセスは、内部のホストHiに関する2タプルエントリの最大限の数Nに基づく。この数は、動的に調整され得る。あるいは、Nに関する固定値が、それぞれの内部のホストHiに割り当てられる、または代替として、2タプルエントリの1つの共通のプールが、すべての内部のホストHiのために割り当てられることが可能である。このプールが一杯であり、新たな2タプルエントリが追加されることになる場合、最大の数の2タプルを有する内部のホストHiが選択され得る。このプールが、内部のホストHiの数より小さい場合、プールが一杯である一方で、すべての内部のホストHiが、複数の2タプルエントリを保持することはないことが生じ得る。これが該当する場合、同一の組合せ手順が、Hi-IPアドレスに関して適用されることが可能である。この場合、2タプルエントリは、内部のホストHiのためにプレフィックスを保持することも可能である。プレフィックスベースの保護の場合、送信元IPアドレスのプールを使用する、内部のホストHiに対するKOFREQメッセージのフラッディング攻撃は、攻撃者のサブネットに属する外部のホストHoのIPアドレスプレフィックスを有する、阻止状態78にある1つの2タプルエントリをもたらす。攻撃者からの、その内部のホストHiに対するすべてのさらなるKOPREQメッセージは、組込み型KOPファイアウォール12によって阻止される。同時に、組込み型KOPファイアウォール12は、その内部のホストHiを相手に接続を確立しようと試みる別のサブネットからの外部のホストに関して、通常どおりに動作する。そのようなフラッディング攻撃は、中間ルータのイングレスフィルタリングが、不可解な出所のパケットを破棄するので、1つのサブネットに属するIPアドレスに通常、限定されることに留意されたい。攻撃者がインターネット全体からIPアドレスをスプーフィングするという起こりそうにないことが生じた場合でさえ、プレフィックスベースの保護は、すべての着信するKOFREQメッセージを阻止することになる。この限度内で、組込み型KOFファイアウォール12は、従来のFWと同一の保護をもたらす。KOPREQメッセージフラッディング攻撃から内部のホストHiを保護することに加えて、プレフィックスベースの保護は、有利には、2タプルエントリのために必要とされるメモリの量を制限する。さらに有利には、プレフィックスベースの保護は、それぞれのホストに関して少数のKOF状態しか保持されないので、内部のホストHiに対して新たなKOPREQメッセージが着信した場合の計算作業を少なくする。レガシーファイアウォールと直列のノックオンフィーチャ図3を再び参照し、特に、第2のネットワークアーキテクチャ10bを参照すると、KOF18が、ファイアウォール20と直列に別個の機能として追加されることも可能である。このことは、UDPベースのKOPメッセージが使用される場合、実現するのが特に容易である。この場合、ファイアウォール上で対応するUDPポートが、開かれる。図6は、KOF18がファイアウォール20と直列である第2のネットワークアーキテクチャ10bのKOF18およびファイアウォール20の5タプル状態および2タプル状態、ならびに状態遷移を示す。ファイアウォール20は、この場合、従来のファイアウォール機能をもたらす5タプル100をサポートするレガシーファイアウォールである。KOF18は、組込み型KOFファイアウォール12に関して前述した2タプル62と同一の仕方で動作する2タプル102と、5タプル104とをサポートする。5タプル100は、内部のホストHiと外部のホストHoの間の接続に関連する、対応する5タプルに関する状態を保持する。FW20が、特定の5タプルが通過状態106に、もしくは阻止状態108に留まるべきか、または通過状態106から阻止状態108への遷移、もしくは阻止状態108から通過状態106への遷移を行うべきかを制御する。通過状態106にある間、通過タイマが更新され、通過タイマが満了すると、5タプル100状態は、通過状態106から阻止状態108に遷移する110。満了していない場合、FW状態は、対応する5タプルのインバウンドパケットまたはアウトバウンドパケットがファイアウォール20を通過させられる限り、通過状態に留まる112。通過状態106に留まっている際、通過状態106に関連付けられたタイマがリセットされる。阻止状態108にある間、FW状態は、対応する5タプルのアウトバウンドパケットがファイアウォール20によって通過させられると、阻止状態108から通過状態106に遷移する114。KOF18は、内部のホストHiと外部のホストHoの間のインバウンドKOPREQメッセージに関連する2タプルを保持する。ファイアウォール20は、KOPメッセージを橋渡しするので、KOF18は、KOFが組み込まれたFW12が2タプル62を操作したのと同一の仕方で、第2のネットワークアーキテクチャ10bにおいて2タプル102を操作することが可能である。この実施形態の以上の説明を簡単にするため、2タプル102のKOF18処理は、KOFが組み込まれたFW12における2タプル62と同一の仕方で実施されるものと理解される。第1のネットワークアーキテクチャ10aの組込み型のアプローチとは異なり、第2のネットワークアーキテクチャ10bのKOF18は、5タプル100を処理するFW20と直列で5タプル104を処理する。KOF18によって保持される5タプルは、内部のホストHiと外部のホストHoの間の任意の実際の、または潜在的な接続に対応する。KOF18は、5タプル104が通過状態116に、もしくは阻止状態118に留まるべきか、または通過状態116から阻止状態118への遷移、もしくは阻止状態118から通過状態116への遷移を行うべきかを制御する。KOF18は、KOPFINメッセージをサポートし、すなわち、内部のホストHiからのアウトバウンドKOPFINメッセージに基づいて、内部のホストHiに対する5タプルの着信するトラフィックパケットを阻止する。したがって、KOFの5タプル状態104が、通過状態116にあり、さらに5タプル104に対応するKOPFINメッセージが、アウトバウンド方向でKOF18を通過させられると、通過状態116にある5タプル104は、阻止状態118に遷移する120。そうではなく、KOFの5タプル状態104が、KOPFINメッセージがKOF18を通過させられる際に既に阻止状態118にある場合、KOFの5タプル状態104は、阻止状態118に留まり122、さらに5タプル阻止タイマをリセットする。阻止状態タイマが満了した場合、または5タプルに対応するアウトバウンドパケットが、内部のホストHiからKOF18を通過させられた場合、5タプル104は、阻止状態118から通過状態116に遷移する124。阻止状態タイマは、5タプル100の通過状態タイマが満了するのにかかる時間と等しい時間の後に満了する。5タプル100は、5タプル100に関して通過状態106だけを実施することによって実現され得る一方で、KOFの5タプル104は、KOFの5タプル104に関して阻止状態118だけを実施することによって実現され得る。したがって、KOFの5タプル104に関するメモリ要件は、ほぼ、FWの5タプル100のメモリ要件以下である。つまり、FWの5タプル100に関して、通過状態106にあるFW状態は、それらの状態に対応する接続の存続期間に通過状態106の存続期間を足した期間にわたってメモリを占有する。一方、KOFの5タプル104の場合、阻止状態118にあるKOFの5タプル状態は、それぞれの阻止状態タイマによって決定される阻止状態118の存続期間にわたってのみ、メモリを占有し、前述したとおり、阻止状態タイマは、FWの5タプル100通過状態106の通過タイマが満了するのにかかる時間と等しい時間の後、満了する。第2のネットワークアーキテクチャ10bの5タプル100動作とKOFの5タプル104動作の組合せは、組込み型KOFファイアウォール12における5タプル60動作と同一の機能を実現する。しかし、第2のネットワークアーキテクチャ10bの直列ソリューションは、KOFACKメッセージをサポートしない。有利には、KOFACKメッセージの効果は、通常のトラフィックパケットによって実現されることが可能である。図7、ならびにレガシーFW20をサポートする中継サーバRS22上でKOFが提供される、対応する第3のネットワークアーキテクチャ10cを参照する。RS22は、公共のインターネットにある、または公共のインターネットから少なくともアドレス指定可能であるものと仮定される。さらに、内部のホストHiは、RS22に対するシグナリング接続を有する。本明細書では、内部のホストHiは、例えば、DNSドメインネームサーバを使用して、RS22と連絡をとることができる、RS22のIPアドレス、プロトコルタイプ、およびポートを公開するものと仮定する。組込み型KOFファイアウォール12のセキュリティと同等のレベルのセキュリティをもたらすのに、第3のネットワークアーキテクチャ10cにおいて、内部のホストHiとRS22の間のシグナリング接続上のトラフィックが、完全性保護される。シグナリングトラフィックが公共のインターネットを通過し、したがって、完全性攻撃に脆弱であるので、このことが行われる。外部のHoが、RS22にKOPREQメッセージを送信する際、外部のホストHoは、そのKOPREQメッセージのペイロードの中で内部のホストHiを明示的に参照する必要がある。このことは、組込み型KOFファイアウォール12が、KOPREQメッセージのIPヘッダから内部のホストHiを推測することができる第1のネットワークアーキテクチャ10aとは異なる。同様に、外部のホストHoは、プロトコルタイプおよびポート番号についての情報をKOPREQメッセージのペイロードの中に追加することが可能である。しかし、このアプローチは、脆弱性を増大させる。つまり、内部のホストHiのIPアドレスが、ルーティング目的で使用されず、KOPREQメッセージのペイロードの中で伝送されるだけであるので、このIPアドレスは、任意の攻撃者によって変更され得る。この脆弱性を克服するのに、外部のホストHoは、RS22に送信されるKOPREQメッセージの完全性を保護しなければならない。KOPREQメッセージのこの完全性保護は、公開鍵/秘密鍵ペアまたは共有鍵を介して実現され得る。例えば、DHディフィ-ヘルマン交換を使用するセキュリティ関連付けで十分であるはずである。DH交換に基づくそのような共有鍵を破るのに、各終端との別々の接続を維持するMitM中間者システムが要求されることになる。この手順において、MitMシステムは、中間ルータによるイングレスフィルタリングの犠牲にならずに、それぞれのエンドポイントのIPアドレスをスプーフィングすることができる必要があることになる。そのようなMitMシステムが存在する場合、そのシステムは、FW20を直接に、すなわち、FW20上の既存の5タプルエントリに対するIPアドレスをスプーフィングすることによって、克服することもできることになる。したがって、RS22と外部もしくは内部のホストHo/Hiの間のKOPメッセージ交換に関してDHベースの鍵を使用することで、そうすることが、レガシーFW20と少なくとも同一のレベルの保護をもたらすので、これらの交換の完全性保護に十分であるはずである。図7を参照し、図3パートcも参照すると、RS22と外部のホストおよび内部のホストHo/Hiの間の例示的なメッセージコールフロー200が、以下のとおり生じる:-内部のホストHiとRS22が、DH交換を使用してセキュリティで保護されたシグナリング接続を確立する202。これにより、FW20上に第1の5タプルエントリを作成し、このエントリは、内部のホストHiおよびRS22に対応する。-外部のホストHoが、DH交換を使用してRS22を相手にセキュリティで保護された接続を確立する204。-外部のホストHoが、KOPREQメッセージをRS22に、このメッセージをまず完全性保護した後、送信する206。KOPREQメッセージのペイロードは、事前定義されたパラメータタイプを使用して内部のホストのHiデータを含む。このデータは、提案される接続のために使用されるべき内部のホストHiのIPアドレス、プロトコルタイプ、およびポート番号を含む。-RS22上に存在するKOFが、KOPREQメッセージを評価する。その目的で、KOFは、第1のネットワークアーキテクチャ10a、および第2のネットワークアーキテクチャ10bに関連して前述したのと同一の2タプル62動作を使用する。-内部のホストHiのIPアドレス、および外部のホストHoのIPアドレスに対応する2タプルに関するKOF状態が、阻止状態78にはない場合、RS22は、KOPREQメッセージを、シグナリングリンクを介して内部のホストHiにトンネリングする208。RS22は、前述したとおり、KOPREQメッセージに関する完全性保護を提供する。KOPREQメッセージは、外部のホストHoのIPアドレスを含む。-FW20上の第1の5タプルエントリの作成に関連して前述したとおり、メッセージが伝送されるシグナリングリンクが既に確立されているので、FW20はKOPREQメッセージを通過させる210。-内部のホストHiが、KOPREQメッセージの中の情報を使用して、外部のホストHoと直接に連絡をとる。この連絡は、内部のホスト、および外部のホストHoに対応する第2の5タプルエントリをFW20上に作成し、このエントリは、外部のホストHoが、内部のホストHiからの通信に直接に応答することを許す。-内部のホストHiが、外部のホストHoにKOPNAKメッセージを送信すること212を所望する場合、内部のホストHoは、RS22に対するシグナリング接続を使用し、外部のホストHoのIPアドレスを含め、さらにメッセージを完全性保護する。FW20が、完全性保護されたKOPNAKメッセージをRS22に転送する214。RS22が、このメッセージを検証し、このメッセージの2タプル62は阻止状態78に遷移し、さらにKOPNAKメッセージを外部のホストHoに転送する216。-内部のホストHiは、KOPREQメッセージに応答して外部のホストHoにKOPACKメッセージを送信する218オプションも有する。FW20が、KOPREQメッセージをRS22に転送する220。RS22上に組み込まれたKOFが、内部のホストHiおよび外部のホストHoの5タプルに対応するFW状態を保つ、前述したFWの5タプル60と同一である5タプルに関するエントリを保持する。5タプルのFW状態は、RS22が、KOPACKメッセージを外部のホストHoまで通過させる222と、通過状態68に設定される。5タプルのFW状態が通過状態68にある間、RS22は、外部のホストHoから内部のホストHiに、さらに内部のホストHiから外部のホストHoに任意の情報を中継する。-内部のホストHiは、KOPREQメッセージに応答して外部のホストHoにKOPRSPメッセージを送信するオプションも有する。このメッセージは、KOPACKメッセージに関して説明したのと同一の仕方で外部のHoに通信される。外部のホストHoは、KOPRSPメッセージによって要求される情報を含む、別のKOPREQメッセージでKOPRSPメッセージに応答する。第2のKOPREQメッセージは、第1のKOPREQメッセージに関して説明したのと同一の仕方で内部のホストHiに通信される。説明されるこれらの複数のKOPRSP/KOPREQメッセージ交換224が、許される。-内部のホストHiが、外部のホストHoにKOFFINメッセージを送信して226、KOPACKメッセージを介して開始された中継接続を終了させる。KOFFINメッセージは、KOPACKメッセージに関して説明したのと同一の仕方で外部のホストに中継される。KOFFINメッセージおよびKOFACKメッセージは、RS22がすべてのトラフィックデータを中継する事例において使用されることに留意されたい。図8は、図3パートaに示される実施形態による組込み型KOFファイアウォール12によって実行されるインバウンドパケットを扱う方法400を示す流れ図である。これらの流れ図は、タイマ満了による図5に示される状態遷移を含まない。図8を参照すると、方法400が、インバウンドパケットが組込み型KOFファイアウォール12に着信するのを待つ402。インバウンドパケットが着信すると、この方法は、そのパケットがKOPREQメッセージであるかどうかを判定する404。そのパケットがKOPREQメッセージではない場合、この方法は、そのパケットが、組込み型KOFファイアウォール12上に既に格納されている5タプルエントリと合致するかどうかを判定する410。合致する5タプルエントリが存在する場合、この方法は、その5タプルエントリに対応するタイマをリフレッシュし406、そのパケットを内部のホストHiまで通過させる408。その後、この方法は、別のインバウンドパケットを待つことに戻る。そうではなく、この方法が、組込み型KOFファイアウォール12上に合致する5タプルエントリが存在しないと判定した410場合、そのパケットは阻止され412、この方法は、インバウンドパケットを待つことに戻る。方法400が、そのパケットがKOPREQメッセージであると判定した場合404、次に、方法400は、組込み型KOFファイアウォール12上にそのパケットと合致する2タプルエントリが存在するかどうかを判定する414。そのような合致する2タプルエントリが存在しない場合、この方法は、そのパケットに関する2タプルエントリを作成し416、さらにそのエントリを通過状態にする。次に、この方法は、そのパケットを内部のホストHiまで通過させ418、別のインバウンドパケットを待つことに戻る。この方法が、合致する2タプルエントリが存在すると判定した414場合、この方法は、そのエントリが阻止状態にあるかどうかを判定する420。そのエントリが阻止状態にある場合、この方法は、そのパケットを阻止し422、別のインバウンドパケットを待つことに戻る。しかし、この方法が、その2タプルエントリが阻止状態にはないと判定した420場合、この方法は、そのエントリに対応する2タプルカウンタをインクリメントし、その後、カウンタがオーバーロードしたかどうかを判定する428。カウンタがオーバーロードした場合、この方法は、その2タプルエントリを阻止状態に設定し426、そのエントリに関するタイマをリセットする。次に、この方法は、そのパケットを阻止し422、別のインバウンドパケットを待つことに戻る。しかし、カウンタがオーバーロードしていない場合、この方法は、そのパケットを内部のホストHiまで通過させ430、その後、別のインバウンドパケットを待つことに戻る。図9は、図3パートaに示される実施形態による組込み型KOFファイアウォール12によって実行されるアウトバウンドパケットを扱う方法500を示す流れ図である。これらの流れ図は、タイマ満了による図5に示される状態遷移を含まない。図9を参照すると、方法500が、アウトバウンドパケットが組込み型KOFファイアウォール12に着信するのを待つ502。アウトバウンドパケットを受信すると、方法は、そのパケットがKOPメッセージであるかどうかを判定する504。そのパケットがKOPメッセージではない場合、次に、この方法は、組込み型KOFファイアウォール12上にそのパケットと合致する5タプルエントリが存在するかどうかを判定する506。そのような合致する5タプルエントリが存在する場合、この方法は、そのエントリに対応するタイマをリセットし508、さらにそのパケットを外部のホストHoに向けて通過させる510。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。そのような合致する5タプルエントリが存在しない場合、この方法は、そのパケットに対応する5タプルエントリを作成し512、さらにそのパケットを外部のホストHoに向けて通過させる510。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPメッセージであると判定した504場合、次に、この方法は、そのパケットがKOPACKメッセージであるかどうかを判定する514。KOPACKメッセージである場合、この方法は、組込み型KOFファイアウォール12上に合致する5タプルエントリが存在するかどうかを判定する516。そのような合致する5タプルエントリが存在する場合、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。そうではなく、そのような合致する5タプルエントリが存在しない場合、方法は、そのパケットに対応する5タプルエントリを作成し518、その後、そのパケットを外部のホストHoに向けて通過させる。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPACKメッセージではないと判定した514場合、次に、この方法は、そのパケットがKOPFINメッセージであるかどうかを判定する522。KOPFINメッセージである場合、この方法は、組込み型KOFファイアウォール12上に合致する5タプルエントリが存在するかどうかを判定する524。そのような合致するエントリが存在しない場合、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する5タプルエントリが存在する場合、この方法は、その5タプルエントリを削除し526、次に、そのパケットを外部のホストHoに向けて通過させる520。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPFINメッセージでないと判定した522場合、次に、この方法は、そのパケットがKOPRSPメッセージであるかどうかを判定する528。KOPRSPメッセージである場合、この方法は、組込み型KOFファイアウォール12上にそのパケットに合致する2タプルエントリが存在するかどうかを判定する530。そのような合致する2タプルエントリが存在しない場合、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する2タプルエントリが存在する場合、この方法は、そのエントリが通過状態にあるかどうかを判定する532。通過状態にある場合、この方法は、その2タプルエントリに対応するタイマおよびカウンタをリセットし534、次に、そのパケットを外部のホストHoに向けて通過させる520。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。そうではなく、この方法が、その2タプルエントリが通過状態にはないと判定した532場合、この方法は、そのパケットを外部のホストHoに向けて通過させ520、その後、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPRSPではないと判定した528場合、次に、この方法は、そのパケットがKOPNAKメッセージであるかどうかを判定する536。KOPNAKメッセージである場合、この方法は、組込み型KOFファイアウォール12上にそのパケットと合致する2タプルエントリが存在するかどうかを判定する538。そのような合致する2タプルエントリが存在しない場合、この方法は、組込み型KOFファイアウォール12上で、そのパケットに対応する2タプルエントリを作成し540、さらにそのエントリを阻止状態に設定する。次に、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する2タプルエントリが存在する場合、この方法は、そのエントリを阻止状態に設定し542、さらにそのエントリに対応するタイマをリセットする。次に、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPNAKメッセージではないと判定した536場合、この方法は、そのパケットを外部のホストHoに向けて通過させ520、別のアウトバウンドパケットを待つことに戻る。図10は、図3パートbに示される実施形態によるファイアウォール20と直列のKOF18によって実行されるインバウンドパケットを扱う方法600を示す流れ図である。これらの流れ図は、タイマ満了による図6に示される状態遷移を含まない。図10を参照すると、方法600が、インバウンドパケットがKOF18に着信するのを待つ602。インバウンドパケットが着信すると、この方法は、そのパケットがKOPREQメッセージであるかどうかを判定する604。そのパケットがKOPREQメッセージではない場合、この方法は、そのパケットをFW20まで通過させ606、別のインバウンドパケットを待つことに戻る。そのパケットがKOPREQメッセージである場合、この方法は、そのパケットがKOF18上に既に格納されている2タプルエントリと合致するかどうかを判定する608。そのような合致する2タプルエントリが存在しない場合、次に、この方法は、そのパケットに対応する2タプルエントリを作成し610、さらにそのエントリを通過状態に設定する。次に、この方法は、そのパケットをFW20まで通過させ612、別のインバウンドパケットを待つことに戻る。この方法が、合致する2タプルエントリが存在すると判定した608場合、次に、この方法は、そのエントリが阻止状態にあるかどうかを判定する614。阻止状態にある場合、この方法は、そのパケットを阻止し616、別のインバウンドパケットを待つことに戻る。この方法が、2タプルエントリが阻止状態にはないと判定した614場合、この方法は、通過状態にある、そのエントリに対応する2タプルカウンタをインクリメントし、次に、そのカウンタがオーバーロードしたかどうかを判定する622。そのカウンタがオーバーロードしている場合、この方法は、2タプルエントリを阻止状態に設定し620、さらにそのエントリに関するタイマをリセットする。次に、この方法は、そのパケットを阻止し616、別のインバウンドパケットを待つことに戻る。しかし、そのカウンタがオーバーロードしていない場合、この方法は、そのパケットをFW20まで通過させ624、その後、別のインバウンドパケットを待つことに戻る。図11は、図3パートbに示される実施形態によるファイアウォール20と直列のKOF18によって実行されるインバウンドパケットを扱う方法700を示す流れ図である。これらの流れ図は、タイマ満了による図6に示される状態遷移を含まない。図11を参照すると、方法700が、アウトバウンドパケットがKOF18に着信するのを待つ702。アウトバウンドパケットを受信すると、この方法は、そのパケットがKOPメッセージであるかどうかを判定する704。そのパケットがKOPメッセージではない場合、次に、この方法は、KOF18上にそのパケットと合致する5タプルエントリが存在するかどうかを判定する706。そのような合致する5タプルエントリが存在しない場合、この方法は、そのパケットを外部のホストHoに向けて通過させる708。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。そのような合致する5タプルエントリが存在する場合、この方法は、阻止状態にある、その5タプルエントリを削除し710、さらにそのパケットを外部のホストHoに向けて通過させる708。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPメッセージであることを判定した704場合、次に、この方法は、そのパケットがKOPFINメッセージであるかどうかを判定する712。KOPFINメッセージである場合、この方法は、KOF18上に合致する5タプルエントリが存在するかどうかを判定する714。そのような合致する5タプルエントリが存在しない場合、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する5タプルエントリが存在する場合、この方法は、そのパケットに対応する5タプルエントリを作成し716、さらにそのエントリを阻止状態に設定する。次に、この方法は、そのパケットを外部のホストHoに向けて通過させる708。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPFINメッセージではないと判定した712場合、次に、この方法は、そのパケットがKOPRSPメッセージであるかどうか判定する718。KOPRSPメッセージである場合、この方法は、KOF18上に合致する2タプルエントリが存在するかどうかを判定する720。そのような合致する2タプルエントリが存在しない場合、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する2タプルエントリが存在する場合、この方法は、そのエントリが通過状態にあるかどうかを判定する722。通過状態にある場合、この方法は、そのエントリに対応するタイマおよびカウンタをリセットし724、次に、そのパケットを外部のホストHoに向けて通過させる708。その後、この方法は、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する2タプルエントリが通過状態にはない場合、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPRSPメッセージではないと判定した718場合、次に、この方法は、そのパケットがKOPNAKメッセージであるかどうかを判定する726。KOPNAKメッセージである場合、この方法は、KOF18上にそのパケットに合致する2タプルエントリが存在するかどうかを判定する728。そのような合致する2タプルエントリが存在しない場合、この方法は、そのパケットに対応する2タプルエントリをKOF12上に作成し730、さらにそのエントリを阻止状態に設定する。次に、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。そうではなく、合致する2タプルエントリが存在する場合、この方法は、そのエントリを阻止状態に設定し732、さらにそのエントリに対応するタイマをリセットする。次に、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。この方法が、そのパケットがKOPNAKメッセージではないと判定した726場合、この方法は、そのパケットを外部のホストHoに向けて通過させ708、別のアウトバウンドパケットを待つことに戻る。ネットワークアドレストランスレータへの適用ほとんどのNATは、ネットワークアドレス変換またはネットワークアドレス/ポート変換をファイアウォール機能と組み合わせる。これらの場合、前述したのと同一のKOF方法が、適用され得る。しかし、NATにより、内部のホストHiの内部アドレスおよび内部ポート番号は、NATによって変換された内部のホストHiの公開のアドレス、および公開のポート番号とは異なる。したがって、外部のホストHoは、内部のホストHiとどのように連絡をとるべきかを知らない可能性がある。さらに、内部のホストHiは、内部のホストHiの公開のIPアドレスを知らない可能性がある。この状況は、KOPメッセージに影響するとともに、トランスポート接続の確立にも影響する。KOPメッセージが、従来のトランスポートタイプUDPまたはTCPによってサポートされる場合、ホストは、IETFRFC5389によって提案されるNATに関する接続通過ユーティリティSTUNを使用して、ホストのKOP公開IPアドレスおよびKOP公開ポート番号を見出すことが可能である。内部のホストHiは、これらのデータをDNSにおいて公開して、これらのデータが公共で利用可能であるようにすることが可能である。また、内部のホストHiは、STUN法を使用して、内部のホストHiがセットアップすることを所望するトランスポート接続に関する公開のIPアドレス、および公開のポート番号を見出すことも可能である。次に、STUN法の結果が、接続セットアップ時にKOPREQメッセージの中で遠隔のホストに転送されることが可能である。遠隔のホストもまた、NATの背後に存在する場合、遠隔のホストは、同一のSTUN法を使用し、遠隔のホスト自らの公開のIPアドレス、および公開のポート番号をKOPACKメッセージまたはKOPRSPメッセージの中で戻す。次に、内部のホストと外部のホストの両方が、トランスポートパケットを互いに転送することができ、このアクションは、それぞれNAT上で5タプルエントリを作成する。ホールパンチングとしばしば呼ばれるこの技術は、両方のホストの間でトランスポート接続が確立されることを可能にする。同一の主要な方法が、KOPメッセージが、例えば、IP拡張ヘッダIPv6またはIPオプションヘッダIPv4を介して、トランスポート接続上に多重化される際に、またはKOPメッセージがトランスポート層に埋め込まれる場合に、適用される。この方法は、ホストのDNSサーバにおいて公開され得るKOPアドレスおよびポート番号が唯一ではないという欠点を有する。この場合、RSが使用され得る。RSは、両方のホストに関してSTUNサービスを実行し両方のホストがNATの背後にある場合、さらにそれらをKOPメッセージ交換に含める。最後に、一方または両方のNATが対称型NATである場合、RSの機能が、KOPメッセージ交換からトランスポートデータのトンネリングに拡張されることが可能である。特許請求の範囲で規定される、本発明の範囲を逸脱することなく、前述した本発明の実施形態に多数の変形、変更、および適合が行われることが可能である。"