フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、前記受信パケットからフローの終端を確認するための情報を抽出する終端判定用情報抽出部と、前記抽出された情報に基づいて、フローの終端を確認した場合、当該フローに対応する処理規則を削除するフロー終端確認部と、を備えるパケット転送装置。さらに、前記処理規則記憶部に記憶された処理規則のタイムアウト判定を行うタイムアウト判定部を備え、前記フロー終端確認部は、前記終端判定用情報抽出部にて抽出された情報に基づいて、前記タイムアウト判定部にタイムアウト判定を開始させ、前記タイムアウト判定部にてタイムアウトと判定された処理規則を削除する請求項1記載のパケット転送装置。さらに、受信パケットを記憶するパケット記憶部を備え、前記終端判定用情報抽出部は、前記パケット記憶部から、受信パケットが属するフローと、該フローと逆方向のフローとにそれぞれ対応する処理規則を特定するための情報を抽出し、前記フロー終端確認部に、前記双方向の処理規則の削除を判定させる請求項1または2のパケット転送装置。前記フロー終端確認部は、前記終端判定用情報抽出部にて抽出されたTCPTransmissionControlProtocolのFINフラグ、RSTフラグまたはSYNフラグのいずれか一つ以上を用いて、フローの終端を判定する請求項1から3いずれか一のパケット転送装置。請求項1から4いずれか一のパケット転送装置と、前記パケット転送装置に処理規則を設定する制御装置と、を含む通信システム。フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、を備えたパケット転送装置が、前記受信パケットからフローの終端を確認するための情報を抽出するステップと、前記抽出した情報に基づいて、フローの終端を確認した場合、前記処理規則記憶部から、当該フローに対応する処理規則を削除するステップと、を含む処理規則の更新方法。前記パケット転送装置は、前記フローの終端を確認するための情報に基づいて、タイムアウト判定を開始し、タイムアウトと判定した処理規則を削除する請求項6の処理規則の更新方法。前記パケット転送装置は、受信パケットと前記処理規則に従って修正された後の受信パケットから、受信パケットが属するフローと、該フローと逆方向のフローとにそれぞれ対応する処理規則を特定するための情報を抽出し、前記双方向の処理規則の削除を判定する請求項6または7の処理規則の更新方法。TCPTransmissionControlProtocolのFINフラグ、RSTフラグまたはSYNフラグのいずれか一つ以上を用いて、フローの終端を判定する請求項6から8いずれか一の処理規則の更新方法。フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、を備えたパケット転送装置を構成するコンピュータに、前記受信パケットからフローの終端を確認するための情報を抽出する処理と、前記抽出された情報に基づいて、フローの終端を確認した場合、前記処理規則記憶部から、当該フローに対応する処理規則を削除する処理と、を実行させるプログラム。以下の分析は、本発明者によってなされたものである。上記非特許文献1、2では、通信の開始時にコントローラからフローエントリ以下、非特許文献1、2のフローエントリと同等のパケット転送装置が受信パケットの処理を決定する際に参照する情報を処理規則という。を設定し、別途設定する有効期限図19の存続時間に示す期間、該当するパケットを受信しなかったときに、該当エントリを削除することが記載されている非特許文献2の24頁Idle_TimeoutとHard_Timeout参照。。そのため、非特許文献1、2のフローテーブルには、すでに通信終了となった処理規則が、有効期限を経過するまで残ってしまい、処理規則の記憶領域を圧迫するという問題点がある。また、この通信終了となった処理規則は、パケット転送装置における受信パケットに適合する処理規則の検索効率を低下させる一因ともなっている。さらに、このように残った処理規則が多数残存することにより処理規則の記憶領域に不足が生じた場合、必要数の処理規則を何らかのルールで削除していく必要が出てくる。例えば、最近に設定された処理規則を残し、古い処理規則を削除するというルールを採用した場合、通信終了となっているにも拘らず新しい処理規則が残され、通信終了となっていない有効な処理規則が削除されるといった状況も生じうる。本発明は、上記した事情に鑑みてなされたものであって、上記した処理規則の削除を的確に行うことのできるパケット転送装置、通信システム、処理規則の更新方法およびプログラムを提供することにある。本発明の第1の視点によれば、フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、前記受信パケットからフローの終端を確認するための情報を抽出する終端判定用情報抽出部と、前記抽出された情報に基づいて、フローの終端を確認した場合、当該フローに対応する処理規則を削除するフロー終端確認部と、を備えるパケット転送装置が提供される。本発明の第2の視点によれば、上記したパケット転送装置と、前記パケット転送装置に処理規則を設定する制御装置と、を含む通信システムが提供される。本発明の第3の視点によれば、フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、を備えたパケット転送装置が、前記受信パケットからフローの終端を確認するための情報を抽出するステップと、前記抽出された情報に基づいて、フローの終端を確認した場合、前記処理規則記憶部から、当該フローに対応する処理規則を削除するステップと、を含む処理規則の更新方法が提供される。本方法は、処理規則記憶部とパケット処理部とを備えるパケット転送装置という、特定の機械に結びつけられている。本発明の第4の視点によれば、フロー単位で処理内容を定義した処理規則を記憶する処理規則記憶部と、前記処理規則の中から受信パケットに適合する処理規則を用いて受信パケットの処理を行うパケット処理部と、を備えたパケット転送装置を構成するコンピュータに、前記受信パケットからフローの終端を確認するための情報を抽出する処理と、前記抽出された情報に基づいて、フローの終端を確認した場合、前記処理規則記憶部から、当該フローに対応する処理規則を削除する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。本発明によれば、パケット転送装置の処理規則記憶部から、有効期限が満了していない処理規則であっても、通信終了となり必要の無くなった処理規則を削除させることが可能になる。その理由は、受信パケットからフローの終端通信の終了を判別するための情報を抽出し、フローの終端通信の終了を判別する機能を追加したことにある。はじめに、本発明の概要を説明する。以下、この概要に付記した図面参照符号は、専ら理解を助けるための例示であり、図示の態様に限定することを意図するものではない。図1に示すように、本発明に係るパケット転送装置1は、受信パケットに適用する処理規則を記憶する処理規則記憶部11と、処理規則記憶部から受信パケットに適合する処理規則を読み出して転送処理等を行うパケット処理部12と、受信パケットからフローの終端を確認するための情報を抽出する終端判定用情報抽出部13と、前記抽出された情報に基づいて、フローの終端を確認した場合、当該フローに対応する処理規則を削除するフロー終端確認部14と、を備えて構成される。フローの終端の検知の方法としては、次のような種々の方法が挙げられる。例えば、プロトコルの終了メッセージをチェックする方法が挙げられる。例えば、TCPTransmissionControlProtocolでは、FINフラグのチェックにより、通信の終了、すなわち、通信を利用したフローの終了を検知することができる。実際には、FINフラグ後のフローの逆方向送信元、送信先が逆のフローでACKパケットの通信が発生するため、FINパケット後の逆方向フローのACKフラグを検知したら終了と判断することができる。更には、TCPは双方向通信のため、逆方向フローとセットにして、終了を検知したら当該逆方向のフローに対応する処理規則も不要になったと判断することができる。また、SYNパケットの受信から所定時間経過してタイムアウトとなったときや、RSTパケットの受信を契機として通信の終了を判定することもできる。これらは、後に具体例として詳述する。フロー終了の検知の方法のもう一例として、SCTPStreamControlTransmissionProtocolのDATAチャンクにおけるE-bitで判断する方法が挙げられる。更に、フロー終了の検知の方法のもう一例として、HTTPHypertextTransferProtocolでの例が挙げられる。HTTPヘッダのConnection属性がCloseを検知し、対応するHTTPのメッセージ分が送信確認できたとき、一連のフローの終了と判断できる。更に、フロー終了の検知の方法のもう一例として、IPInternetProtocolでの例が挙げられる。パケット列ごとに1フローと前提がつけられている環境下では、IPのMFMoreFragmentsフラグにより、パケットの終端が判断できるので、フローの終了と判断することができる。いずれの場合も、終端判定用情報抽出部13にて該当する情報を抽出し、フロー終端確認部14に送ることで、不要な処理規則であるか否かを判定し、不要な処理規則を削除することが可能になる。以上により、通信終了となった処理規則のその有効期限を待たずに削除されるため、処理規則記憶部の記憶領域に余裕を生じさせるとともに、処理規則の検索の効率化が達成される。また、必要な処理規則を削除してしまう事態も発生しにくくなるため、これら処理規則の再設定のために生じていたトラヒックや負荷も低減される。更には、QoS保証などのため、処理規則の更新制御を行う場合においても、不必要な処理規則をその対象から外すことが可能になる。本発明において以下の形態が可能である。[形態1]前記第1の視点に記載のパケット転送装置のとおり。[形態2]前記パケット転送装置は、さらに、前記処理規則記憶部に記憶された処理規則のタイムアウト判定を行うタイムアウト判定部を備え、前記フロー終端確認部は、前記終端判定用情報抽出部にて抽出された情報に基づいて、前記タイムアウト判定部にタイムアウト判定を開始させ、前記タイムアウト判定部にてタイムアウトと判定された処理規則を削除することが好ましい。[形態3]前記パケット転送装置は、さらに、受信パケットを記憶するパケット記憶部を備え、前記終端判定用情報抽出部に、前記パケット記憶部から、受信パケットが属するフローと、該フローと逆方向のフローとにそれぞれ対応する処理規則を特定するための情報を抽出し、前記フロー終端確認部に、前記双方向の処理規則の削除を判定させることができる。[形態4]前記フロー終端確認部は、前記終端判定用情報抽出部にて抽出されたTCPTransmissionControlProtocolのFINフラグ、RSTフラグまたはSYNフラグのいずれか一つ以上を用いて、フローの終端を判定するようにすることができる。[形態5]前記第2の視点に記載の通信システムのとおり。[形態6]前記第3の視点に記載の処理規則の更新方法のとおり。[形態7]前記処理規則の更新方法において、前記パケット転送装置は、前記フローの終端を確認するための情報に基づいて、タイムアウト判定を開始し、タイムアウトと判定した処理規則を削除することが好ましい。[形態8]前記処理規則の更新方法において、前記パケット転送装置は、受信パケットと前記処理規則に従って修正された後の受信パケットから、受信パケットが属するフローと、該フローと逆方向のフローとにそれぞれ対応する処理規則を特定するための情報を抽出し、前記双方向の処理規則の削除を判定することが好ましい。[形態9]前記処理規則の更新方法において、フローの終端は、TCPTransmissionControlProtocolのFINフラグ、RSTフラグまたはSYNフラグのいずれか一つ以上を用いて判定することができる。[形態10]前記第4の視点に記載のプログラムのとおり。なお、上記第2、第4の視点に記載の通信システムおよびプログラムは、形態1の通信システムと同様に、形態2~形態4の内容に展開することが可能である。[第1の実施形態]続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。はじめに、用語の定義をしておく。フローとは特定の送信元から送信先への通信のことを指す。すなわち、フローは、伝送されているパケットの集合、もしくは、その伝送自体のことを意味する。また、送信元、送信先は、物理的、論理的な1つの宛先を意味するとは限らない。すなわち、特定のサブネットから、別のサブネットへの通信をまとめて、それを1つのフローと捉えても良い。このことから、フローは、より詳細なフローの集合となることもある。例えば、非特許文献1、2のオープンフローのように、宛先アドレスや送信元アドレス等の一部をワイルドカードで記述して、複数のフローを一つにまとめたフローエントリがこれに相当する。図2は、本発明の第1の実施形態の構成を示すブロック図である。図2を参照すると、本実施形態のパケット転送装置C1は、パケット受信部C10と、パケット記憶部C11と、パケット処理用情報抽出部C12と、処理規則記憶部C13と、処理規則検索部C14と、パケット処理部C15と、パケット送信部C16と、終端判定用情報抽出部C17と、フロー終端確認部C18とを備える。パケット受信部C10は、他のノードによって送信されたパケットを受信し、パケット記憶部C11へ受信したパケットを一旦格納する。また、パケット受信部C10は、進入ポート受信ポートID情報などの受信状況情報も同時に記憶することもできるものとする。前記受信パケットを格納すると、パケット受信部C10は、パケット処理用情報抽出部C12と、終端判定用パケット情報抽出部C17に対し、パケットを受信したことを通知する。パケット記憶部C11は、パケット受信部C10が受信したパケットが、パケット送信部C16によって送信されるまでの間、該パケットを一時的に格納する。パケット処理用情報抽出部C12は、パケット受信部C10からパケットを受信したとの通知をトリガとして、パケット記憶部C11から、当該パケットに対して適用すべき処理内容を決定するために、受信パケットのヘッダフィールドの情報や、受信状況情報上記進入ポート受信ポートID情報等を抽出する。パケット処理用情報抽出部C12は、抽出したパケット情報を処理規則検索部C14に出力する。ここで、パケット処理用情報抽出部C12が受信パケットに対して適用すべき処理内容を決定するために抽出する情報としては、非特許文献1、2のオープンフロースイッチと同様のものを用いることができる。例えば、進入ポート受信ポートID情報、Ethernet登録商標の送信元アドレス、宛先アドレス、上位プロトコルタイプと、IEEE802.1Q準拠のVLANVirtualLANのTCITagControlInformationのVIDVLAN-ID、PCPPriorityCodePointと、IPInternetProctocolの送信元アドレス、宛先アドレス、上位プロトコルタイプと、TCPTransmissionControlProtocolもしくはUDPUserDatagramProtocolの送信元ポート、宛先ポートを挙げることができる。このうち、パケット転送装置の進入ポート受信ポートID情報は受信状況情報から得ることができ、その他は、受信パケットのヘッダフィールドやパケット内部の上位プロトコルヘッダなどから得ることができる。処理規則記憶部C13は、受信パケットに対して適用する処理内容をフロー単位で定めた処理規則を記憶する。その構成は、図18、図19に示した非特許文献1、2のフローテーブルと同等の内容とすることができ、受信パケットと照合しフローを判別するためのヘッダフィールドと、統計情報カウンタと、処理内容アクションとを対応付けたエントリとすることができる。例えば、図19のヘッダフィールドは、パケット転送装置の進入ポートと、Ethernet登録商標の送信元アドレス、宛先アドレス、上位プロトコルタイプと、IEEE802.1Q準拠のVLANのVID、プライオリティPCP;プライオリティコードポイント、IPの送信元アドレス、宛先アドレス、上位プロトコルタイプ、TCPもしくはUDPの送信元ポート、宛先ポートから構成される。これらのヘッダフィールドの内容に適合するパケットを受信した場合に、アクションフィールドに定められた処理内容が行われることになる。ただし、ヘッダフィールドの任意の情報ビットについてワイルドカードを使用することもできるものとする。また、図19のカウンタフィールドには、受信パケット数、受信バイト数、ルールの存続時間が保持され、該パケットが属するフローに関する統計情報として使用される。また、図19のアクションとしては、パケットを転送するためのForward、パケットを廃棄するためのDrop、パケットの情報を変更するためのModify-Fieldが存在し、任意個のアクションを登録することができる図21の一覧参照。ただし、非特許文献2の場合、アクションフィールドが空欄のときDropとなる。。Modify-Filedアクションとしては、VLANのIDやプライオリティの設定変更、VLANヘッダの除去、Ethernet登録商標やIPの送信元/宛先アドレスの変更、TCP/UDPの送信元/宛先ポートの変更などが用意されているその他、IPのToSTypeofServiceフィールドの変更等。さらに本実施形態では、処理規則記憶部C13は、各処理規則毎に、後記するフロー終端確認部C18がフロー終端の判定に用いる内部状態情報フィールドが設けられているものとする図9のFIN、逆FIN、timeout参照、図15のSYN、timeout参照。処理規則検索部C14は、パケット処理用情報抽出部C12から渡された情報に基づいて、受信パケットに対して適用すべきアクション処理内容を決定し、パケット処理部C15に出力する。より具体的には、処理規則検索部C14は、処理規則記憶部C13から、パケット処理用情報抽出部C12から渡された受信パケットから抽出した情報に適合する処理規則を探索し、パケット処理部C15に出力する。ここで、受信パケットに適合する処理規則が存在した場合、処理規則検索部C14は、処理規則のアクションフィールドに定められたアクション処理内容を抽出し、パケット処理部C15に出力する。一方、受信パケットに適合する処理規則が見つからなかった場合、処理規則検索部C14は、所定の制御装置コントローラ;図18参照に対し、受信パケットまたは受信パケットから抽出した情報を送信して、処理規則の作成送信を要求する。所定の制御装置コントローラ;図18参照から処理規則を受信すると、処理規則検索部C14は、当該受信した処理規則を、処理規則記憶部C13へ登録する。その後、処理規則検索部C14は、当該処理規則のアクション処理内容を抽出し、パケット処理部C15に出力する。図20に示したフローテーブルの最初の処理規則によると、パケット転送装置の物理ポート1番に192.168.0./24のネットワークから入ってきたプロトコルタイプが0x0006TCPの宛先192.168.1./24のネットワーク、TCPポート80番宛てのパケットを適用対象として、当該パケットのIPの送信元アドレスを192.168.1/24に変更して、転送装置の物理ポート2番から送信するアクション処理内容が実行される。同様に、図20の2番目の処理規則によると、HTTPポート以外へのパケットを適用対象として、当該パケットのIPの送信元アドレスを192.168.1/24に変更して、転送装置の物理ポート3番から送信するアクション処理内容が実行される。パケット処理部C15は、処理規則検索部C14から出力されたアクション処理内容に従い、パケット記憶部C11に格納されている受信パケットを処理する。例えば、パケットを転送するためのForwardアクションを受け取った場合、パケット処理部C15は、パケット送信部C16に対してパケットの送信を要求する。また、パケット処理部C15は、処理規則検索部C14から出力されたアクション処理内容のほか、通信に関する基本処理等も必要に応じて適宜行う。例えば、図20の1番目の処理規則の場合、アクション処理内容としては、送信元IPアドレスを192.168.1.1に変更した後、パケット送信となる。この際に、パケット処理部C15が、上記に加え、通信に関する基本処理としてIPなどの基本処理であるIPヘッダのTTLTimeToLiveフィールド、チェックサムフィールド等の書き換えなどを適宜行う。また、TTLの値が0などになった場合のパケット送信終了の判定なども通信に関する基本処理となる。パケット送信部C16は、パケット処理部C15からパケット送信を要求されると、パケット処理部C15から指示されたポートから、パケット記憶部C11から読み出したパケットを送信する。更に、パケット送信部C16は、終端判定用情報抽出部C17に対してパケットを送信したことを通知する。終端判定用情報抽出部C17は、パケット受信部C10からパケットを受信したとの通知をトリガとして、パケット記憶部C11から、フローの終端判定に必要な情報として、パケット内の特定の情報を抽出する。また、終端判定用情報抽出部C17は、パケット処理用情報抽出部C12と同様に、該パケットからさらに、当該パケットに対して適用すべき処理内容を決定するために、受信パケットのヘッダフィールドの情報や、受信状況情報上記進入ポート受信ポートID情報等を抽出する。また、終端判定用情報抽出部C17は、パケット内の特定の情報がフロー終端判定に必要な情報であると判定したときに、パケット送信部C16からパケットを送信したとの通知をトリガとして、当該パケットに対して適用すべき処理内容を決定するための情報受信パケットのヘッダフィールドの情報や受信状況情報進入ポート等と、フロー終端判定に必要と判定した情報と、をフロー終端確認部C18に出力する。なお、図2の例では、パケット処理用情報抽出部C12と終端判定用情報抽出部C17を別途に設けているが、同一条件で同一の情報を抽出することがあるので、統合することも可能である。また、終端判定用情報抽出部C17における、受信パケットに対して適用すべき処理内容を決定するための情報の抽出は、パケット内の特定の情報がフローの終端判定に必要な情報であると判定した場合にのみ行うようにすることもできる。フロー終端確認部C18は、終端判定用情報抽出部C17から渡された情報に基づいて、フローの終端である最後のパケット送信が行われたかどうかを判定する。最後のパケット送信が行われたと判断したときは、処理規則記憶部C13から、送信パケットが属するフローに対応する処理規則を削除する。また、フロー終端確認部C18は、この判定のため、必要に応じて、処理規則記憶部C13に記憶された処理規則の内部状態情報フィールドを参照または更新する。上記フロー終端確認部C18が参照または更新する内部状態情報フィールドとしては、例えば、終了判定のステージ情報判定段階情報や、ステージ変更後判定段階変更後の経過時間情報等が挙げられる図9のFIN、逆FIN、timeout参照、図15のSYN、timeout参照。なお、図2に示したパケット転送装置C1の各部処理手段は、パケット転送装置C1を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。続いて、図3のフローチャートを参照して、本実施形態のパケット転送装置C1におけるパケット受信から送信までの動作を詳細に説明する。図3を参照すると、まず、パケットを受信するとステップS101、パケット受信部C10は、受信したパケットをパケット記憶部C11へ格納するステップS102。次に、パケット受信部C10は、パケット処理用情報抽出部C12及び終端判定用情報抽出部C17に対し、パケットを受信したことを通知する。これにより、2つの処理が同時に動作することになるステップS102後の分岐。第1の処理は、受信したパケットに対し処理を施すための処理であるステップS103~S110。パケット処理用情報抽出部C12は、パケット受信部C10からパケットを受信したとの通知を受けると、パケット記憶部C11から、当該パケットに対して適用すべき処理内容を決定するための情報を抽出し、処理規則検索部C14へ渡すステップS103。次に、前記抽出された情報を受け取った処理規則検索部C14は、処理規則記憶部C13から、前記抽出された情報に適合する処理規則を検索するステップS104。ここで、前記抽出された情報に適合する処理規則が見つかった場合、処理規則検索部C14は、当該処理規則に定められたアクション処理内容を抽出し、パケット処理部C15へ渡すステップS105。一方、前記抽出された情報に適合する処理規則が見つからなった場合、処理規則検索部C14は、所定の制御装置コントローラ;図18参照に対し、受信パケットまたは受信パケットから抽出した情報を送信して、処理規則の作成送信を要求するステップS106。所定の制御装置コントローラ;図18参照から処理規則を受信すると、処理規則検索部C14は、当該受信した処理規則を、処理規則記憶部C13へ登録するとともに、当該処理規則のアクション処理内容を抽出し、パケット処理部C15に出力するステップS107。次に、アクション処理内容を受け取ったパケット処理部C15は、パケット記憶部C11に格納されたパケットに対し、アクション処理内容に従って処理を行うステップS108。例えば、パケットの各フィールドの修正や、先述した通信に関する基本処理などが適宜行われる。次に、パケット処理部C15は、アクション処理内容にパケット転送が含まれるか否かや、TTLなどの情報に基づき、当該パケットを送信すべきか判断するステップS109。パケットを送信すべきであると判断した場合、パケット処理部C15は、パケット送信部C16に対してパケットの送信を指示する。最後に、パケット送信部C16は、該パケットをパケット記憶部C11から読み出し、アクション処理内容にて指示されたポートから送信するステップS110。更に、パケット送信部C16は、終端判定用情報抽出部C17に対してパケットを送信したことを通知する。第2の処理は、フロー終端判定を行って、処理規則記憶部C13から不必要となる処理規則を削除するための処理であるステップS111~S116。はじめに、パケット受信部C10からパケットを受信したことを示す通知を受け取ると、終端判定用情報抽出部C17は、パケット記憶部C11から、フローの終端判定に必要な情報として、パケット内の特定の情報を抽出する。また、終端判定用情報抽出部C17は、ステップS103と同様に、該パケットからさらに、当該パケットに対して適用すべき処理内容を決定するための情報を抽出するステップS111。前記抽出したパケット内の特定の情報がフローの終了判定に必要な情報でない場合、当該パケットに関するフロー終端判定は終了するステップS112のNo。一方、前記抽出したパケット内の特定の情報が終了判定に必要な情報である場合ステップS112のYes、終端判定用情報抽出部C17は、パケット送信部C16から該パケットを送信したとの通知を受信するまで待機する。パケット送信部C16から該パケットを送信したとの通知を受け取ると、終端判定用情報抽出部C17は、フロー終端確認部C18に対し、フローの終了判定に必要な情報と、当該パケットに対して適用すべき処理内容を決定するための情報を出力する。次に、フロー終端確認部C18は、終端判定用情報抽出部C17から渡された情報から、フローの終端であるかどうかを判定するステップS113。フローの終端でないと判定した場合ステップS114のNo、フロー終端確認部C18は、その判定内容に従い、処理規則記憶部C13の処理規則内の内部状態を適宜更新するステップS115。一方、前記判定の結果、フローの終端であると判定した場合ステップS114のYes、フロー終端確認部C18は、処理規則記憶部C13から当該フロー終端を確認した処理規則を削除するステップS116。以上のように本実施形態によれば、受信パケットが属するフローが終了したかどうかを判定して、いち早く処理規則記憶部C13から不必要となる処理規則を削除することができる。これにより、処理規則記憶部C13の記憶可能な処理規則数が圧迫されてしまう事態を回避することが可能となる。これにより、必要な処理規則が処理規則記憶部C13の記憶可能な処理規則数を超えてしまうことに起因する、所定の制御装置コントローラ;図18参照に対する処理規則の設定要求や、処理規則の更新回数を減らすこともできる。また、QoS保証のため、処理規則記憶部C13の更新動作を行うような場合において、不必要な処理規則をその対象から外すことが可能となる。[第2の実施形態]続いて、上記第1の実施形態に変更を加えた本発明の第2の実施形態について図面を参照して詳細に説明する。図4は、本発明の第2の実施形態の構成を表わしたブロック図である。図2と比較すると、本発明の第2の実施形態のパケット転送装置C1aは、第1の実施形態の構成に、タイムアウト判定部C19を追加した構成となっている。以下、先に説明した第1の実施形態との相違点に焦点を当てて説明する。タイムアウト判定部C19は、処理規則記憶部C13の特定のフィールドを監視して、タイムアウトかどうかを判定し、終了判定の契機にするかどうかを決定する。タイムアウト判定部C19は、まず、処理規則記憶部C13の特定のフィールドを監視して、タイムアウトかどうかを判定する。タイムアウトの監視方法としては、特定のフィールドの値と現在時刻を比較する絶対値評価方法と、カウントアップ/カウントダウン制御される特定のフィールドの値を、一定の値タイムアウト判定しきい値を上回る、もしくは、下回るかで判定する相対値評価方法のどちらの方法で実現しても良い。タイムアウト判定部C19は、タイムアウトと判定したときに、タイムアウトが発生した旨とフローを特定する情報をフロー終端確認部C18へ渡す。処理規則記憶部C13aは、上記した第1の実施形態の機能に加え、タイムアウト判定部C19が前記タイムアウト判定を行うための特定のフィールドを更新する機能を有している。フロー終端確認部C18は、上記した第1の実施形態の機能に加え、タイムアウト判定部C19からタイムアウトが発生した旨の通知を受け取ると、該フローに対する終了の判定を行う。終了と判定した場合、フロー終端確認部C18は、処理規則記憶部C13から、該フローに対応する処理規則を削除する。なお、前記タイムアウトを契機とする処理規則の削除判定は、他の処理と独立して行うものとしてもよいが、終端判定用情報抽出部C17からフローの終了判定に必要な情報を渡されたときに、連携して行うようにしてもよい。また逆に、前記タイムアウトが発生した旨の通知を受け取ったときに、終端判定用情報抽出部C17からのフローの終了判定に必要な情報による判定と、タイムアウト判定とを連携して行うようにしてもよい。以上のように、本発明の第2の実施形態によれば、タイムアウトによるフロー終端判定が加わるため、処理規則記憶部C13aから、一定期間使用されていない処理規則をより積極的に削減することが可能となる。なお、処理規則記憶部C13a、フロー終端確認部C18、タイムアウト判定部C19は、図4に示すように独立して設けてもよいが、別途設定した有効期限に示す期間、該当するパケットを受信しなかったときに、該当エントリを削除する非特許文献1、2と同等の仕組みにて実現することもできる。[第3の実施形態]続いて、上記第1の実施形態に変更を加えた本発明の第3の実施形態について図面を参照して詳細に説明する。図5は、本発明の第3の実施形態の構成を表わしたブロック図である。図2と比較すると、パケット処理部C15aと終端判定用情報抽出部C17aが変わり、これらの間でのやり取りを示す両矢線が追加されている。その他は第1の実施形態と同様であるので、以下、変更部分にのみ焦点を当てて説明する。パケット処理部C15aは、パケット送信処理する場合、まず、終端判定用情報抽出部C17aへ、パケット送信準備完了を通知してから、パケット送信部C16へパケットの送信を要求する。終端判定用情報抽出部C17aは、上記第1の実施形態で説明した動作に加えて、パケット処理部C15aからパケット送信準備完了通知を受信した場合も、パケット記憶部C11から、フローの終端判定に必要な情報として、パケット内の特定の情報を抽出する。そして、終端判定用情報抽出部C17aは、前記パケット内の特定の情報がフロー終端判定に必要な情報であると判定したときに、当該パケットに対して適用すべき処理内容を決定するための情報受信パケットのヘッダフィールドの情報や受信状況情報進入ポート等と、フロー終端判定に必要と判定した情報と、をフロー終端確認部C18に出力する。即ち、本実施形態では、パケット受信時のみならず、パケット送信時にもフロー終端判定を行ない、不要な処理規則を削除することが可能になる。これにより、第1の実施形態よりも、より積極的に処理規則を削減することが可能になる。続いて、上記した各実施形態の各特徴を組み合わせて、TCPTransmissionControlProtocolのフラグを利用してフローの終端判定を行う具体例1~3を説明する。[具体例1]図6は、TCPのコネクションの状態遷移を示す図である。図6の上段のCLOSEDがTCP通信が終了している状態を示し、これにつながる箇所が、TCP通信の終了前の状態である。上記CLOSEDに、一番長く辿りつかないケースは、双方のFINが流れてから約2MSLMSL:MaximumSegmentLifetime最大セグメント寿命を待機したときである。そのため、双方向のFINを確認してから、この2MSL時間だけ待機したら、基本的には通信終了と判断できる。パケット落ちなどで状態が順調に遷移しない場合例えば、CLOSING後のACK送信が到着しない場合も、この2MSL時間後すぐに、再送パケットが転送されるはずであるので、最大でも2MSLにマージンを加えた2MSLα時間に新たなFINパケットが届かないかどうかでTCP通信の終了を判断できる。以下、本発明に係るパケット転送装置C1が、図7に示したネットワーク構成のコンピュータクライアントD10と、サーバD20間のTCP通信を中継する場合を考える。図7の例では、コンピュータD10は、192.168.0./24のネットワークに属し、192.168.0.10で設定されている。また、サーバD20は、192.168.1./24のネットワークに属し、192.168.1.10で設定されている。制御装置コントローラD1は、パケット転送装置C1と、非特許文献1、2に記載のオープンフローコントローラと同様に専用のチャネルで接続されており、2つのネットワーク間の接続を管理している。以下の説明では、制御装置コントローラD1は、他ネットワークからの接続は、それぞれのネットワークの1番192.168.1.1からの通信のように見せかけるようパケット転送装置C1を制御するものとする図19の処理規則のアクション参照。また、本具体例では、FINパケットの監視を行うため、終端判定用情報抽出部C17が監視するフィールドはプロトコルスタックを監視して、TCPであることを確認できるフィールドと、TCPヘッダのFINフラグとなる。図8は、FINフラグを用いてフローの終端を判定する処理を説明するためのフローチャートである。図3のフローチャートのステップS111~S116にタイムアウト判定を加えて、より細分化したものである。以下、図3、図6、図8および図9~図13を参照して動作を説明する。なお、実際にはTCP/IP通信の前にARPAddressResolutionProtocol通信が行われ、処理規則設定はその段階で行われる可能性があるが、今回は説明を簡単にするために省略し、TCP/IPレベルでの通信で説明する。まず、コンピュータD10から、サーバD20宛へ通信を開始する。このとき、最初の通信確立のためのパケットSYNがパケット転送装置C1に進入する図6のSYN送信によるアクティブオープンの開始。パケット受信部C10は、この最初のパケットを受信し、パケット記憶部C11に格納する図3のステップS101~S102。パケット受信部C10は、パケット処理用情報抽出部C12と、終端判定用情報抽出部C17へ、パケットを受信したことを通知する。パケット処理用情報抽出部C12は、パケット記憶部C11を参照して、処理規則を検索するのに必要となるIPの送信元/宛先などの情報を抽出する図3のステップS103。以下、図3のステップS103乃至ステップS110側の一連の処理が開始される。一方、終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのFINフラグを監視するが、FINフラグは設定されていないため、終端判定の対象としない。そのため、図3のステップS111乃至ステップS116側のフロー終端判定処理は行われない。次に、受信パケットに対応する処理規則の検索が行われる。パケット処理用情報抽出部C12は、抽出した情報進入ポートが1、送信元アドレスが192.168.0.10、宛先が192.168.1.10、プロトコルがTCPタイプが0x0006を処理規則検索部C14に渡す。処理規則検索部C14は、処理規則記憶部C13を参照して、前記パケットに適合する処理規則が存在しないので、制御装置コントローラD1へ問い合わせる図3のステップS104、ステップS106。制御装置コントローラD1は、送信元IPの修正と、指定した転送ポートからの転送を処理内容とする処理規則を作成し、パケット転送装置C1へ送信する。処理規則検索部C14は、制御装置コントローラD1から受信した処理規則を新規エントリとして処理規則記憶部C13へ登録する図3のステップS107。この段階で、図9に示すように、処理規則記憶部C13に新しい処理規則が追加される。次に、パケットの転送処理に入る。処理規則検索部C14は、検索した処理規則をパケット処理部C15に送信する。パケット処理部C15は、前記送信された処理規則に従って、IPアドレスの置き換え、TTLなどの削減などのパケットの修正を実行する図3のステップS108。ここで、TTLは終了しないとし、パケットを送信すると判定されたとすると図3のステップS109のYes、パケット処理部C15は、パケット転送装置C1のポート2から受信パケットを送信するようパケット送信部C16に指示する。ここで、第3の実施形態と同等の構成の場合、前記指示は、終端判定用情報抽出部C17にも送られるが、上記理由により終了判定の対象パケットと判定されないため、処理規則の削除が行われることはない。パケット送信部C16は、前記に従い、ポート2からパケットを送信する。以上の処理により、最初のパケットの送信が行われる。次に、サーバD20からのコンピュータD10との通信確立のための応答SYN/ACKパケットがパケット転送装置C1に進入したものとする図6のSYN/ACK送信。上記コンピュータD10から、サーバD20宛へ通信確立のときと同様に、処理規則記憶部C13の参照が行われるが前記応答パケットに適合する処理規則は存在しないため、制御装置コントローラD1へ問い合わせが行われ、逆方向のフローに適用する処理規則を定めた新しい処理規則が追加される図3のステップS104、ステップS106、ステップS107。この段階で、図10に示すように、処理規則記憶部C13に新しい処理規則が追加される。次に、コンピュータD10から、サーバD20宛へ通信確立のための最後の応答ACKパケットが送信されるが図6のACK送信、この時点ではすでに、処理規則記憶部C13にコンピュータD10から、サーバD20宛のフローに適合する処理規則が登録されているため、処理規則検索部C14は、処理規則記憶部C13から該当する処理規則に規定されている処理内容アクションを抽出することになるステップS105。以降、上記と同様に、コンピュータD10とサーバD20間で送受信されるパケットの修正と中継が行われる図6のESTABLISHED状態。その後、通信を終えるとき、コンピュータD10から、サーバD20宛へ通信終了のためのFINパケットを送信する図6のFIN送信によるアクティブクローズの開始。このFINパケットがパケット転送装置C1に進入する。FINパケットの転送処理は上記ACKパケット以降と同様であるため、省略する。以下、図3のステップS111~S116について図8を用いて詳細に説明する。パケット受信部C10からパケットを受信したとの通知を受けた終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのFINフラグを監視し、FINフラグを発見する図8のステップS201。ここでは、FINフラグが設定されているため、フロー終端判定に必要な情報であると判断し、削除する処理規則を特定するための情報進入ポートが1、送信元アドレスが192.168.0.10、宛先が192.168.1.10、プロトコルがTCPタイプが0x0006を抽出し、パケットの送信まで待機する。終端判定用情報抽出部C17は、パケット送信部C16からパケットを送信したとの通知を受け取ると、さらに、パケット記憶部C11から、削除する処理規則を特定するための情報を抽出する。ここで抽出される削除する処理規則を特定するための情報は、IPアドレスが置き換えられているので、送信元アドレスが192.168.1.1、宛先が192.168.1.10、プロトコルがTCPタイプが0x0006となる。この情報は逆フローのマーキングに使用される。終端判定用情報抽出部C17は、FINパケットを受信したとの通知とともに、これらの情報をフロー終端確認部C18へ通知する図8のステップS202。終端判定用情報抽出部C17から、上記した情報を受け取ったフロー終端確認部C18は、パケットヘッダの所定位置にFINフラグが設定されているか否かをチェックするステップS203。ここまでが、図3のステップS111~S114の処理に相当する。ここでは、FINパケットが送信されているため、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、FINパケット受信のフラグをマークする図8のS204~S205。この処理は、図3のステップS115の内部状態更新処理に相当する。次に、フロー終端確認部C18は、当該処理規則について、正方向逆方向のFINがマークされているかをチェックするが、この時点では、まだ正方向しかマークされていないため、次の処理へ移る図8のS206のNo。次に、逆方向のマーキングに移る。フロー終端確認部C18は、前記削除対象の処理規則を特定する情報に対応する処理規則を抽出し送信元と宛先を逆転してマッチングする、逆方向のFINパケット受信のフラグをマークする図8のステップS207~S208。この段階で、図11に示すように、処理規則記憶部C13の該当処理規則のFINフラグ、逆FINフラグが立てられる。この時点においても、該当処理規則の正方向逆方向のFINフラグの双方がマークされていないので、直ちに処理規則の削除を行うのではなく、次のパケットの受信を待機することになる図8のステップS209のYes。次に、サーバD20から、コンピュータD10のFINパケットに対するACK応答が上記通常のパケットと同様に転送された後図6のパッシブクローズの開始、サーバD20は、コンピュータD10に対しFINパケットを送信する。このFINパケットがパケット転送装置C1へと進入すると、上記アクティブクローズの開始の場合と同様に、ステップS111~S116のフロー終端判定処理が開始される。パケット受信部C10からパケットを受信したとの通知を受けた終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのFINフラグを監視し、FINパケットを発見する図8のステップS201。ここでは、FINフラグが設定されているため、フロー終端判定に必要な情報であると判断し、削除する処理規則を特定するための情報進入ポートが2、送信元アドレスが192.168.1.10、宛先が192.168.1.1、プロトコルがTCPタイプが0x0006を抽出し、パケットの送信まで待機する。終端判定用情報抽出部C17は、パケット送信部C16からパケットを送信したとの通知を受け取ると、さらに、パケット記憶部C11から、修正された処理規則を特定するための情報を抽出する。ここで抽出される修正された処理規則を特定するための情報は、IPアドレスが置き換えられているので、送信元アドレスが192.168.1.10、宛先が192.168.0.10、プロトコルがTCPタイプが0x0006となる。この情報は、逆フローのマーキングに使用される。終端判定用情報抽出部C17は、FINパケットを受信したとの通知とともに、これらの情報をフロー終端確認部C18へ通知する図8のステップS202。終端判定用情報抽出部C17から、上記した情報を受け取ったフロー終端確認部C18は、パケットヘッダの所定位置にFINフラグが設定されているか否かをチェックする図8のステップS203。ここまでが、図3のステップS111~S114の処理に相当する。ここでは、FINパケットが送信されているため、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則図11の進入ポート2の処理規則を抽出し、FINパケット受信のフラグをマークする図8のS204~S205。この処理は、図3のステップS115の内部状態更新処理に相当する。次に、フロー終端確認部C18は、当該処理規則について、正方向逆方向のFINフラグがマークされているかをチェックする。ここでは、正方向逆方向のFINフラグがマークされていることを確認できるため、フロー終端確認部C18は、当該処理規則図12の進入ポート2からの処理規則の最終タイムアウト時間として、2MSLαを設定する図8のステップS210。なお、αは判定が過度に厳しくならないように定めた所定のマージンである。次に、逆方向のマーキングに移る。フロー終端確認部C18は、前記削除対象の処理規則を特定する情報に対応する処理規則を抽出し送信元と宛先を逆転してマッチングする、逆方向のFINパケット受信のフラグをマークする図8のステップS207~S208。上記の結果、正方向逆方向のFINフラグがマークされていることを確認できるため、フロー終端確認部C18は、当該処理規則図12の進入ポート1からの処理規則のタイムアウト時間として、2MSLαを設定する図8のステップS210。この段階で、図12に示すように、処理規則記憶部C13の該当処理規則のタイムアウト時間2MSLが設定される。これらのタイムアウト値の設定により、タイムアウト判定部C19の監視対象となり、タイムアウト監視が開始される図8のステップS211~212。このタイムアウト監視は、タイマ値を更新し、タイムアウト値と比較することとしても良いし、また、タイムアウト値の方を更新し、所定のしきい値と比較する方法のいずれの方法を採用してもよい。上記タイムアウト判定の間に、最後のACKが送受信されるはずであるが、もし、最後のACKが送受信されずに、FINパケットの再送が行われた場合、上記図8のステップS202以下の処理に従い、再度タイムアウト値の設定処理が行われ、新たなタイムアウト値に更新される。最終的にタイムアウトと判定されたとき図8のステップS211のYes、タイムアウト判定部C19は、フロー終端確認部C18に対しタイムアウトと判定した旨を通知する。これに対応して、フロー終端確認部C18は、処理規則記憶部C13から、対応する処理規則を削除する図3のステップS116、図8のステップS213。この段階で、図13に示すように、処理規則記憶部C13から、該当処理規則が削除される。なお、図8のステップS211~212のタイムアウトの監視は、当該処理規則についてのタイムアウト判定が継続されるという意味であり、その間に別のFINパケットを受信すれば、当該FINパケットについて、別途ステップS201以下の終了判定フローに従い処理が行われる。以上のように、FINフラグを用いて、フローの終了を確実に検出して、無駄となった処理規則を処理規則記憶部から削除することができる。[具体例2]再度、図6のTCPのコネクションの状態遷移図を参照すると、FINフラグによる状態遷移を通らずに、図6上段のCLOSEDにつながる箇所として、SYNフラグをマークしたSYNパケットを送信した場合のSYN_SENTからセッションがクローズされた場合、もしくは、タイムアウトが生じた場合がある。この場合、パケット転送装置は、クローズを監視することはできないが、タイムアウトは次の方法で確認できる。本具体例では、このタイムアウトをもってフローの終了判定を行うものである。本具体例では、SYNパケットが流れたフローに対する逆方向のフロー図6のSYN_RCVDからSYN_SENTに、SYN/ACKパケットが流れない状態が所定時間継続したことをもってタイムアウトと判定する。図14は、SYNフラグを用いてフローの終端を判定する処理を説明するためのフローチャートである。基本的な動作は、上記した具体例1と同等であるため、以下相違点に焦点を当てて説明する。図14を参照すると、パケット受信部C10からパケットを受信したとの通知を受けた終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのSYNフラグを監視し、SYNパケットを発見する図14のステップS301。ここでは、SYNフラグが設定されているため、フロー終端判定に必要な情報であると判断し、削除する処理規則を特定するための情報進入ポートが2、送信元アドレスが192.168.1.10、宛先が192.168.1.1、プロトコルがTCPタイプが0x0006を抽出し、パケットの送信まで待機する。終端判定用情報抽出部C17は、パケット送信部C16からパケットを送信したとの通知を受け取ると、さらに、パケット記憶部C11から、修正された処理規則を特定するための情報を抽出する。ここで抽出される処理規則を特定するための情報は、IPアドレスが置き換えられているので、送信元アドレスが192.168.1.10、宛先が192.168.0.10、プロトコルがTCPタイプが0x0006となる。この情報は、逆フローのマーキングに使用される。終端判定用情報抽出部C17は、SYNパケットを受信したとの通知とともに、これらの情報をフロー終端確認部C18へ通知する図14のステップS302。終端判定用情報抽出部C17から、上記した情報を受け取ったフロー終端確認部C18は、パケットヘッダの所定位置にSYNフラグが設定されており、かつ、ACKフラグがマークされていないかどうかをチェックする図14のステップS303。ここまでが、図3のステップS111~S114の処理に相当する。SYNパケットであることが確認できた場合、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、SYNパケット受信のフラグをマークする図14のS304~S305。この処理は、図3のステップS115の内部状態更新処理に相当する。その後、フロー終端確認部C18は、処理規則記憶部C13に、SYN/ACKパケットの受信タイムアウト時間を設定し、タイムアウト判定部C19にタイムアウト判定処理を開始させる図14のステップS306。この段階で、図15に示すように、処理規則記憶部C13の該当処理規則のタイムアウト時間2MSLが設定される。一方、ステップS303において、SYNパケットでないと判定した場合、フロー終端確認部C18は、SYN/ACKパケットかどうか、すなわち、SYNフラグ、ACKフラグが両方ともマークされているかどうかをチェックする図14のステップS307。SYN/ACKパケットであることが確認できた場合、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、SYNパケット受信のフラグのマークを削除する図14のステップS308~S309。その後、フロー終端確認部C18は、処理規則記憶部C13からタイムアウト時間も削除する。これにより、タイムアウト判定部C19による該処理規則をタイムアウト判定処理は解除される図14のステップS310。一方、図14のステップS306にて、タイムアウト判定処理が開始された後、最終的にタイムアウトと判定されたとき図14のステップS311のYes、タイムアウト判定部C19は、フロー終端確認部C18に対しタイムアウトと判定した旨を通知する。これに対応して、フロー終端確認部C18は、処理規則記憶部C13から、対応する処理規則を削除する図3のステップS116、図14のステップS314。上記タイムアウト判定処理は、タイムアウト判定処理が解除されるまで継続される図14のステップS312のNo。以上のように、SYNフラグを用いても、フローの終了を確実に検出して、無駄となった処理規則を処理規則記憶部から削除することができる。[具体例3]続いて、TCPのRSTリセットフラグを用いてフローの終了判定を行う第3の具体例について説明する。再度、図6のTCPのコネクションの状態遷移図を参照すると、通信確立待機状態のSYN_RCVDから通信待機状態のLISTEN状態に戻る遷移があることが分かる。TCPのRSTリセットフラグは、コネクションを開放し、通信をやり直すという意味を持つ。つまり、このRSTフラグが立てられたRSTパケットは、通信を無効化する意味を持つので、これを検出してフローの終了判定を行うことができる。図16は、RSTフラグを用いてフローの終端を判定する処理を説明するための第1のフローチャートである。基本的な動作は、上記した具体例1と同等であるため、以下相違点に焦点を当てて説明する。図16を参照すると、パケット受信部C10からパケットを受信したとの通知を受けた終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのRSTフラグを監視し、RSTパケットを発見する図16のステップS401。ここでは、RSTフラグが設定されているため、フロー終端判定に必要な情報であると判断し、削除する処理規則を特定するための情報進入ポートが2、送信元アドレスが192.168.1.10、宛先が192.168.1.1、プロトコルがTCPタイプが0x0006を抽出し、パケットの送信まで待機する。終端判定用情報抽出部C17は、パケット送信部C16からパケットを送信したとの通知を受け取ると、RSTパケットを受信したとの通知とともに、これらの情報をフロー終端確認部C18へ通知する図16のステップS402。終端判定用情報抽出部C17から、上記した情報を受け取ったフロー終端確認部C18は、パケットヘッダの所定位置にRSTフラグが設定されているかどうかをチェックする図16のステップS403。ここまでが、図3のステップS111~S114の処理に相当する。RSTパケットであることが確認できた場合、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、削除する図16のS404~S405。以上のように、RSTフラグを用いても、フローの終了を確実に検出して、無駄となった処理規則を処理規則記憶部から削除することができる。このRSTフラグは、通信の無効化を意味するので、逆方向のフローに対しても、削除することが可能である。図17は、RSTフラグを用いてフローの終端を判定し、逆方向の処理規則も削除する場合のフローチャートである。基本的な動作は、上記した具体例1と同等であるため、以下相違点に焦点を当てて説明する。図17を参照すると、パケット受信部C10からパケットを受信したとの通知を受けた終端判定用情報抽出部C17は、パケット記憶部C11を参照して、TCPのRSTフラグを監視し、RSTパケットを発見する図17のステップS501。ここでは、RSTフラグが設定されているため、フロー終端判定に必要な情報であると判断し、削除する処理規則を特定するための情報進入ポートが2、送信元アドレスが192.168.1.10、宛先が192.168.1.1、プロトコルがTCPタイプが0x0006を抽出し、パケットの送信まで待機する。終端判定用情報抽出部C17は、パケット送信部C16からパケットを送信したとの通知を受け取ると、パケット記憶部C11から、修正された処理規則を特定する情報を抽出する。ここで抽出される処理規則を特定するための情報は、IPアドレスが置き換えられているので、送信元アドレスが192.168.1.10、宛先が192.168.0.10、プロトコルがTCPタイプが0x0006となる。この情報は、逆フローの処理規則の削除に使用される。終端判定用情報抽出部C17は、RSTパケットを受信したとの通知とともに、これらの情報をフロー終端確認部C18へ通知する図17のステップS502。終端判定用情報抽出部C17から、上記した情報を受け取ったフロー終端確認部C18は、パケットヘッダの所定位置にRSTフラグが設定されているかどうかをチェックする図17のステップS503。RSTパケットであることが確認できた場合、フロー終端確認部C18は、前記削除対象の処理規則を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、削除する図17のS504~S505。さらに、フロー終端確認部C18は、前記修正された処理規則逆方向のフローに相当を特定するための情報をキーとして、処理規則記憶部C13から処理規則を抽出し、削除する図17のS506~S507。以上のように、RSTパケットを用いて、正逆双方向のフローに対応する処理規則を処理規則記憶部から削除することができる。以上、本発明の好適な実施形態びその具体例を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形置換調整を加えることができる。例えば、本発明の具体例は、TCPの特定のフラグを監視するものであり、並列して同一のパケット転送装置に実行させることができる。例えば、上記したフロー終了の要因となるパケットの検出後の処理を、上記図8、図14、図16図17に分岐させることにより、実現することが可能である。本発明の具体例では、TCPを中心に示したが、終端情報の情報フィールドが観測可能なすべてのコネクション型プロトコルに適用することが可能である。例えば、SCTPStreamControlTransmissionProtocolのDATAチャンクにおけるE-bitでフローの終了を判断することができる。また例えば、HTTPHypertextTransferProtocolヘッダのConnection属性がCloseであることを検知し、対応するHTTPのメッセージ分が送信確認できたときに、フローの終了を判断することができる。また例えば、IPInternetProtocolパケット列ごとに1フローと前提がつけられている環境下では、IPのMFMoreFragmentsフラグにより、パケットの終端が判断できるので、フローの終了と判断することができる。なお、上記の非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示請求の範囲を含むの枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。