IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 沖電気工業株式会社の特許一覧

<>
  • 特開-中継装置 図1
  • 特開-中継装置 図2
  • 特開-中継装置 図3
  • 特開-中継装置 図4
  • 特開-中継装置 図5
  • 特開-中継装置 図6
  • 特開-中継装置 図7
  • 特開-中継装置 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024121051
(43)【公開日】2024-09-06
(54)【発明の名称】中継装置
(51)【国際特許分類】
   H04L 45/30 20220101AFI20240830BHJP
   H04L 61/255 20220101ALI20240830BHJP
【FI】
H04L45/30
H04L61/255
【審査請求】未請求
【請求項の数】2
【出願形態】OL
(21)【出願番号】P 2023027917
(22)【出願日】2023-02-27
(71)【出願人】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】110001461
【氏名又は名称】弁理士法人きさ特許商標事務所
(72)【発明者】
【氏名】東條 臣行
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030JA11
5K030LB05
(57)【要約】
【課題】通信コネクション管理に関する演算処理の負荷を軽減した中継装置を得る。
【解決手段】転送処理を行うスローパス転送処理部と、スローパスのエントリ情報およびタイムアウト値を記憶する第1の記憶部と、スローパスのエントリ情報を管理する第1の管理部と、スローパス転送処理部よりも速い転送処理を行うファストパス転送処理部と、ファストパスのエントリ情報およびタイムアウト値を記憶する第2の記憶部と、ファストパスのエントリ情報を管理する第2の管理部とを備え、第1の管理部は、スローパスのエントリ情報のタイマ値が満了すると、タイマ値が満了したコネクションに対応する、ファストパスのエントリ情報のタイマ値とスローパスのタイムアウト値とファストパスのタイムアウト値とに基づいて、スローパスのエントリ情報のタイマ値を更新する。
【選択図】図1
【特許請求の範囲】
【請求項1】
第1の通信網と第2の通信網の間の通信を中継する中継装置であって、
前記第1の通信網と前記第2の通信網の間の通信の転送処理を行うスローパス転送処理部と、
前記スローパス転送処理部が処理対象とする通信の、コネクション情報とタイマ値とが対応づけられたエントリ情報であるスローパスエントリ情報と、スローパス転送のタイムアウト値とを記憶する第1の記憶部と、
前記スローパスエントリ情報を管理する第1の管理部と、
前記スローパス転送処理部よりも速い速度で、前記第1の通信網と前記第2の通信網の間の通信の転送処理を行うファストパス転送処理部と、
前記ファストパス転送処理部が処理対象とする通信の、コネクション情報とタイマ値とが対応づけられたエントリ情報であるファストパスエントリ情報と、ファストパス転送のタイムアウト値とを記憶する第2の記憶部と、
前記ファストパスエントリ情報を管理する第2の管理部と、
を備え、
前記第1の管理部は、
前記スローパスエントリ情報の前記タイマ値が満了すると、前記タイマ値が満了したコネクション情報に対応する、前記ファストパスエントリ情報の前記タイマ値と前記スローパス転送のタイムアウト値と前記ファストパス転送のタイムアウト値とに基づいて、前記スローパスエントリ情報の前記タイマ値を更新する、
中継装置。
【請求項2】
前記ファストパスエントリ情報の前記タイマ値をFTcとし、前記スローパス転送のタイムアウト値をSPOとし、前記ファストパス転送のタイムアウト値をFPOとし、前記スローパスエントリ情報の前記タイマ値の暫定更新値をSTnとすると、
前記第1の管理部は、
前記暫定更新値STnを、STn=SPO-(FPO-FTc)の式を用いて算出し、
前記暫定更新値STnが0以下である場合、前記タイマ値が満了したコネクション情報に対応する前記スローパスエントリ情報および前記ファストパスエントリ情報を削除し、
前記暫定更新値STnが前記タイムアウト値SPO以下である場合、前記スローパスエントリ情報の前記タイマ値を前記暫定更新値STnに更新し、
前記暫定更新値が前記タイムアウト値SPOよりも大きい場合、前記スローパスエントリ情報の前記タイマ値を前記タイムアウト値SPOに更新する、
請求項1に記載の中継装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2つの通信網間の通信を中継する中継装置に関する。
【背景技術】
【0002】
従来、暗号化キーの変更によるパケットの破棄を回避しフィルタ処理機能として、SPI(Stateful Packet Inspection)と称される機能を備えた中継装置が知られている。SPI機能を備えた中継装置は、IP(Internet Protocol)層よりも、上位の通信コネクションの状態を管理および監視し、パケット転送の許可および不許可を制御する。SPIは、パケットの通過可否を動的に判断する機能の1つである。
【0003】
SPIの機能について、LAN(Local Area Network)とWAN(Wide Area Network)との間の通信を中継する中継装置の場合で具体的に説明する。中継装置は、LAN側のパソコンなどの通信機器からWAN側へのパケット通信に対応して、WAN側のポートを開き、パケット転送を開始する。その後、中継装置は、LAN側の通信機器にてWAN側からデータの受け取りが終わる場合、または、最後の通信からのタイマ値が内部に設定されたSPIタイムアウト値を超えた場合、自動的にWAN側のポートを閉じる。中継装置のWAN側のポートが閉じられたとき、LAN側の通信機器によって外部へのアクセスが行われていなければ、ポートが全てフィルタリングされ、外部からLANへの不正なアクセスを防ぐことができる。
【0004】
SPIでは、パケットの送受信の度に、通信コネクションを識別し、該当する通信コネクションの状態およびSPIタイマの情報を更新して、各パケットの転送可否を判断するため、全ての通信コネクションを管理する必要がある。
【0005】
一方、パケットのファストパス転送機能を有する中継装置として、パケット転送をハードウェア転送処理することで、ファストパス転送を可能にしたゲートウェイ装置が提案されている(例えば、特許文献1参照)。
【0006】
特許文献1に開示されたゲートウェイ装置は、スローパスエントリデータへの新規エントリ登録時に、受信したパケットがハードウェア転送対象である場合に、ファストパスエントリデータに新規エントリを登録する。それ以降、ファストパスエントリデータに登録されたパケットについては、ハードウェアによって高速転送される。このような構成によって、ハードウェアによる転送処理を実現している。以下では、スローパスエントリデータをスローパス転送用の通信コネクションテーブルと称し、ファストパスエントリデータをファストパス転送用の通信コネクションテーブルと称する。
【0007】
ファストパス転送機能を有する中継装置において、SPIを実現する場合、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを管理する必要がある。具体的には、中継装置は、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとの間で、同一のコネクションの状態およびSPIタイマ値を同期しておく必要がある。SPIタイマ値が同期されていないと、SPIタイマ値が満了していない状態で、パケットが転送されずに、パケットロスが発生してしまうおそれがある。また、SPIタイマ値が同期されていないと、SPIタイマが満了している状態で、パケットがフィルタされずに、セキュリティが確保されなくなってしまうおそれがある。
【0008】
この問題に対する対策として、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを1パケット毎に同期する方法が考えられる。しかし、この対策は、CPU(Central Processing Unit)に大きな演算負荷を生じさせてしまう。そのため、従来の中継装置には、上記の2つのテーブルを1パケット毎に同期するのではなく、一定の周期で同期するものがある。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特許第6447138号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、従来の中継装置において、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを一定の周期で同期させても、CPUの演算処理の負荷が高くなってしまうおそれがある。具体的には、通信コネクション数が多い場合、全ての通信コネクションについて同期すると、一時的にCPUの演算処理の負荷が高くなってしまうという問題がある。
【0011】
本発明は、上記のような課題を解決するためになされたもので、通信コネクション管理に関する演算処理の負荷を軽減した中継装置を得るものである。
【課題を解決するための手段】
【0012】
本発明に係る中継装置は、第1の通信網と第2の通信網の間の通信を中継する中継装置であって、前記第1の通信網と前記第2の通信網の間の通信の転送処理を行うスローパス転送処理部と、前記スローパス転送処理部が処理対象とする通信の、コネクション情報とタイマ値とが対応づけられたエントリ情報であるスローパスエントリ情報と、スローパス転送のタイムアウト値とを記憶する第1の記憶部と、前記スローパスエントリ情報を管理する第1の管理部と、前記スローパス転送処理部よりも速い速度で、前記第1の通信網と前記第2の通信網の間の通信の転送処理を行うファストパス転送処理部と、前記ファストパス転送処理部が処理対象とする通信の、コネクション情報とタイマ値とが対応づけられたエントリ情報であるファストパスエントリ情報と、ファストパス転送のタイムアウト値とを記憶する第2の記憶部と、前記ファストパスエントリ情報を管理する第2の管理部と、を備え、前記第1の管理部は、前記スローパスエントリ情報の前記タイマ値が満了すると、前記タイマ値が満了したコネクション情報に対応する、前記ファストパスエントリ情報の前記タイマ値と前記スローパス転送のタイムアウト値と前記ファストパス転送のタイムアウト値とに基づいて、前記スローパスエントリ情報の前記タイマ値を更新するものである。
【発明の効果】
【0013】
本発明によれば、スローパス転送用の通信コネクションのタイマ値が満了したタイミングで、通信コネクションのあるエントリのみについて管理情報を同期する処理が行われる。そのため、通信コネクションが多いと、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを一定の周期で同期させる場合に比べて、演算処理の負荷を低減することができる。
【図面の簡単な説明】
【0014】
図1】実施の形態1に係る中継装置の一構成例を示すブロック図である。
図2】第1の記憶部13が記憶するスローパス転送用SPIタイムアウト値の設定値の一例を示すテーブルである。
図3】第2の記憶部23が記憶するファストパス転送用SPIタイムアウト値の設定値の一例を示す図である。
図4】通信コネクションテーブルで管理される通信コネクション毎のエントリ情報の一例を示す図である。
図5】実施の形態1に係る中継装置によるスローパス転送の動作手順を示すフロー図である。
図6】実施の形態1に係る中継装置によるSPIタイマ値の監視処理の動作手順を示すフロー図である。
図7】実施の形態1に係る中継装置によるSPIタイマ値の監視処理の動作手順を示すフロー図である。
図8】実施の形態1に係る中継装置による、UDP片方向通信時のSPIタイムアウト値の管理の動作を示すシーケンス図である。
【発明を実施するための形態】
【0015】
本発明は、ファストパス転送機能を有するパケット中継装置において、通信コネクションを効率的に管理する中継装置に関するものである。特に、本発明の中継装置は、管理しなければならない通信コネクション数が多い通信装置に適用すると好適なものである。以下に、本発明の中継装置がパケット通信を中継する装置の場合について、実施の形態を説明する。
【0016】
実施の形態1.
本実施の形態1の中継装置の構成を説明する。図1は、実施の形態1に係る中継装置の一構成例を示すブロック図である。中継装置1は、第1の通信網であるWAN4と第2の通信網であるLAN5との間に接続される。WAN4は、例えば、インターネットである。LAN5には、ユーザが使用するPC(Personal Computer)8が接続される。中継装置1は、スローパス転送部2と、ファストパス転送部3とを有する。
【0017】
スローパス転送部2は、スローパス転送処理部11と、第1の管理部12と、第1の記憶部13とを有する。ファストパス転送部3は、ファストパス転送処理部21と、第2の管理部22と、第2の記憶部23とを有する。スローパス転送処理部11およびファストパス転送処理部21は、WANポート9を介して、WAN4側のWANホスト6と接続される。スローパス転送処理部11およびファストパス転送処理部21は、LANポート10を介して、LAN5側のLANホスト7と接続される。WANホスト6およびLANホスト7は、例えば、ルータ等の通信機器である。
【0018】
スローパス転送処理部11は、WAN4とLAN5との間で送受信されるパケットによる通信の転送処理を行う。ファストパス転送処理部21は、スローパス転送処理部11よりも速い速度で、WAN4とLAN5との間の通信の転送処理を行う。
【0019】
第1の記憶部13は、スローパス転送の通信コネクションを管理するための情報を記憶する。具体的には、第1の記憶部13は、スローパス転送用のSPIタイムアウト値および通信コネクションテーブルを管理する。通信コネクションテーブルには、スローパス転送処理部11によって転送処理される通信のエントリ情報であるスローパスエントリ情報がエントリ毎に登録される。
【0020】
第2の記憶部23は、ファストパス転送の通信コネクションを管理するための情報を記憶する。具体的には、第2の記憶部23は、ファストパス転送用のSPIタイムアウト値および通信コネクションテーブルを管理する。通信コネクションテーブルには、ファストパス転送処理部21によって転送処理される通信のエントリ情報であるファストパスエントリ情報がエントリ毎に登録される。
【0021】
図2は、第1の記憶部13が記憶するスローパス転送用SPIタイムアウト値の設定値の一例を示すテーブルである。図3は、第2の記憶部23が記憶するファストパス転送用SPIタイムアウト値の設定値の一例を示す図である。
【0022】
図2および図3に示すように、TCPおよびUDP等の通信プロトコル毎にSPIタイムアウト値が設定される。例えば、ファストパス転送対象のパケットについて、図3は、UDP UNREPLIEDタイムアウト値、UDP ASSUREDタイムアウト値、およびTCP ESTABLISHEDタイムアウト値が設定できることを示す。UDP UNREPLIEDタイムアウト値は、基本的なUDPの片方向通信のタイムアウト値である。UDP ASSUREDタイムアウト値は、基本的なUDPの双方向通信のタイムアウト値である。TCP ESTABLISHEDタイムアウト値は、TCPの双方向通信のタイムアウト値である。
【0023】
本実施の形態1においては、スローパス転送用SPIタイムアウト値が図2に示すように設定され、ファストパス転送用SPIタイムアウト値が図3に示すように設定される場合で説明する。本実施の形態1においては、図3に示すように、ファストパス転送用SPIタイムアウト値を、通信プロトコルの種類によらず全て300秒に設定している。
【0024】
図4は、通信コネクションテーブルで管理される通信コネクション毎のエントリ情報の一例を示す図である。図4は、スローパスエントリ情報の場合を示す。ファストパスエントリ情報は、図4に示す内容と同様であるため、図に示すことを省略する。
【0025】
エントリ情報は、通信コネクションのエントリ毎に作成される。エントリ情報は、コネクション情報とSPIタイマ値とが対応づけられて記録される。コネクション情報は、通信コネクションのエントリを識別および管理する情報である。コネクション情報、例えば、図4に示される、レイヤー3のプロトコル、送信元IPアドレスおよび送信元ポート番号などの情報である。SPIタイマ値は、SPIタイムアウト値が満了するまでの残りの時間を示す。
【0026】
新規にスローパスエントリ情報が作成されるとき、SPIタイマ値は、図2に示したSPIタイムアウト値に第1の管理部12によって設定される。スローパスエントリ情報のSPIタイマ値は、時間経過に伴って、第1の管理部12によって、順次、書き換えられる。パケット転送の更新時に、パケットがスローパス転送されると、スローパスエントリ情報のSPIタイマ値は、対応するスローパス転送用のSPIタイムアウト値で、第1の管理部12によってリセットされる。
【0027】
新規にファストパスエントリ情報が作成されるとき、SPIタイマ値は、図3に示したSPIタイムアウト値に第2の管理部22によって設定される。ファストパスエントリ情報のSPIタイマ値は、時間経過に伴って、第2の管理部22によって、順次、書き換えられる。パケット転送時の更新時に、パケットがファストパス転送されると、ファストパスエントリ情報のSPIタイマ値は、対応するファストパス転送用のSPIタイムアウト値で第2の管理部22によってリセットされる。パケット転送がないまま、SPIタイムアウト値の時間が経過すると、SPIタイマ値が満了する。
【0028】
第1の管理部12は、上記のように第1の記憶部13が記憶する情報を更新して、スローパス転送の通信コネクションを管理する。第2の管理部22は、上記のように第2の記憶部23が記憶する情報を更新して、ファストパス転送の通信コネクションを管理する。第1の管理部12および第2の管理部22は、第1の記憶部13および第2の記憶部23が記憶する情報を相互に参照、書き込みおよび書き換えを行う。
【0029】
従来、スローパス転送用のSPIタイムアウト値とファストパス転送用のSPIタイムアウト値とを同じ値に設定し、スローパス転送用の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを一定の周期で同期することが行われていた。
【0030】
本実施の形態1の中継装置1においては、スローパスエントリ情報のSPIタイマ値に、各パケットの転送可否の判断基準となるように、ユーザによって設定値が設定される。ファストパス転送用のSPIタイムアウト値は、スローパス転送用のSPIタイムアウト値以上となるように設定される。第1の管理部12は、ファストパス転送用のSPIタイムアウト設定値とファストパス転送用のエントリの通信コネクションの残りの時間であるSPIタイマ値との差分を基に、該当の通信コネクションのパケット転送の無通信の許容時間を求める。
【0031】
スローパスエントリ情報のSPIタイマ値が満了するとき、第1の管理部12がスローパスエントリ情報のSPIタイマ値を更新することで、パケット転送の通信時間を更新する具体例を説明する。
【0032】
スローパス転送用のSPIタイムアウト値をSPOとし、ファストパス転送用のSPIタイムアウト値をFPOとする。ファストパスエントリ情報のSPIタイマ値をFTcとする。スローパスエントリ情報のSPIタイマ値をSTcとし、スローパスエントリ情報のSPIタイマ値の暫定更新値をSTnとする。この場合、第1の管理部12は、暫定更新値STnを、式(1)を用いて算出する。
暫定更新値STn=SPO-(FPO-FTc) ・・・(1)
【0033】
暫定更新値STnが0以下である場合、第1の管理部12は、該当するエントリ情報を第1の記憶部13および第2の記憶部23から削除する。暫定更新値STnがSPIタイムアウト値SPO以下である場合、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcを暫定更新値STnに更新する。暫定更新値がSPIタイムアウト値SPOよりも大きい場合、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcをSPIタイムアウト値SPOに更新する。
【0034】
ここで、スローパス転送部2およびファストパス転送部3のハードウェアの構成例を説明する。ファストパス転送部3は、ASIC(Application Specific Integrated Circuit)等の専用回路で構成される。例えば、ファストパス転送処理部21および第2の管理部22のそれぞれはASICで構成され、第2の記憶部23はフラッシュメモリ等のメモリで構成される。スローパス転送部2は、プログラムを記憶するメモリと、プログラムにしたがって処理を実行するCPUとを有する構成である。
【0035】
次に、本実施の形態1の中継装置1の動作を説明する。はじめに、中継装置1がエントリ情報を登録する動作について説明する。図5は、実施の形態1に係る中継装置によるスローパス転送の動作手順を示すフロー図である。
【0036】
ステップS1において、中継装置1がパケットを受信すると、第1の管理部12は、受信したパケットに該当する通信コネクションがあるか否かを判定する。ステップS1の判定の結果、受信したパケットの通信コネクションのエントリが登録されていない場合(ステップS1:Noの場合)、第1の管理部12は、通信コネクションのエントリ情報として、スローパスエントリ情報を新規に第1の記憶部13に登録する(ステップS2)。
【0037】
ステップS3において、第2の管理部22は、新規に登録されたエントリがファストパス転送の対象パケットか否かを判定する。ステップS3の判定の結果、新規に登録されたエントリがファストパス転送の対象パケットでない場合(ステップS3:Noの場合)、スローパス転送処理部11は、パケットを転送処理する(ステップS5)。
【0038】
ステップS3の判定の結果、新規に登録されたエントリがファストパス転送の対象パケットである場合(ステップS3:Yesの場合)、第2の管理部22は、通信コネクションのエントリ情報として、ファストパスエントリ情報を新規に第2の記憶部23に登録する(ステップS4)。一方、ステップS1の判定の結果、受信したパケットに該当する通信コネクションがある場合(ステップS1:Yesの場合)、第2の管理部22は、通信コネクションのファストパスエントリ情報のSPIタイマ値を更新する(ステップS6)。ステップS4およびS6の後、ファストパス転送処理部21は、パケットを転送処理する(ステップS5)。
【0039】
ファストパス転送用の通信コネクションのエントリが登録される契機は、スローパス転送のパケット転送処理において、パケットを受信し、該当するパケットの通信コネクションがなく、新規の通信コネクションと判定されたときである。
【0040】
次に、中継装置1がSPIタイマ値を監視する動作について説明する。図6および図7は、実施の形態1に係る中継装置によるSPIタイマ値の監視処理の動作手順を示すフロー図である。中継装置1は、通信コネクションの全エントリ毎に、ステップS12~SS23の処理を実行する(ステップS11およびS24)。
【0041】
ステップS12において、中継装置1がパケットを受信すると、第1の管理部12は、受信したパケットに該当するスローパスエントリ情報のSPIタイマ値を参照し、SPIタイムアウト値が満了しているか否かを判定する。ステップS12の判定の結果、スローパスエントリ情報のSPIタイマ値STcがSPIタイムアウト値SPOを満了している場合、第1の管理部12は、ファストパスエントリ情報に該当するエントリがあるか否かを判定する(ステップS13)。ファストパスエントリ情報に該当するエントリがない場合、該当の通信コネクションのスローパスエントリ情報を削除する(ステップS14)。
【0042】
一方、ステップS13の判定の結果、ファストパスエントリ情報に該当するエントリがある場合、第1の管理部12は、第1の記憶部13の情報を参照し、該当するプロトコルおよび状態のSPIタイムアウト値SPOを第1の記憶部13から取得する(ステップS15)。続いて、第1の管理部12は、第2の記憶部23の情報を参照し、該当するプロトコルおよび状態のSPIタイムアウト値FPOを第2の記憶部23から取得する(ステップS16)。さらに、第1の管理部12は、該当するファストパス転送コネクションのSPIタイマ値FTcを第2の記憶部23から取得する(ステップS17)。
【0043】
ステップS18において、第1の管理部12は、該当するエントリのスローパスエントリ情報のSPIタイマ値の暫定更新値をSTnとすると、式(1)を用いて、暫定更新値STnを計算する。ステップS19において、第1の管理部12は、暫定更新値STnが0以下であるか否かを判定する。ステップS19の判定の結果、暫定更新値STnが0以下である場合、第1の管理部12は、該当するエントリ情報を第1の記憶部13および第2の記憶部23から削除する(ステップS20)。
【0044】
一方、ステップS19の判定の結果、暫定更新値STnが0より大きい場合、第1の管理部12は、暫定更新値STnがSPIタイムアウト値SPO以下であるか否かを判定する(ステップS21)。ステップS21の判定の結果、暫定更新値STnがSPIタイムアウト値SPO以下である場合、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcを暫定更新値STnに更新する(ステップS22)。ステップS21の判定の結果、暫定更新値がSPIタイムアウト値SPOよりも大きい場合、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcをSPIタイムアウト値SPOに更新する(ステップS23)。ステップS20、S22およびS23の処理の後、中継装置1は、ステップS24の処理に進む。
【0045】
ステップS24において、中継装置1は、1つのエントリについて、スローパスエントリ情報のSPIタイマ値の監視処理が終了すると、ステップS12の処理に戻る。一方、中継装置1は、全てのエントリについて、スローパスエントリ情報のSPIタイマ値の監視処理が終了すると、1秒間待機した後(ステップS25)、ステップS11の処理に戻る。なお、ステップS25における待機時間は、1秒に限らない。
【0046】
次に、SPIタイマ値の監視処理の具体例を説明する。図8は、実施の形態1に係る中継装置による、UDP片方向通信時のSPIタイムアウト値の管理の動作を示すシーケンス図である。図8は、図5図7に示した動作フローにおいて、UDPパケットの片方向通信のパケットを転送した場合のSPIタイムアウト値の管理の動作手順を示す。
【0047】
図8において、スローパス転送用のエントリ情報のSPIタイマ値を実線枠で示し、ファストパス転送用のエントリ情報のSPIタイマ値を破線枠で示している。それぞれの枠内に記載された数値の単位は[秒]である。中継装置1には、ローパス転送用のUDPのUNREPLIED(片方向)のSPIタイムアウト値SPOに60秒が設定され、ファストパス転送用のUDPのUNREPLIED(片方向)のSPIタイムアウト値FPOに300秒が設定されている。
【0048】
LANホスト7からWANホスト6へ、UDPの初回パケットPk1が送信される。中継装置1は、パケットPk1を受信すると、初回パケットPk1をスローパス転送で処理する。中継装置1は、パケットPk1をスローパス転送する際、スローパスエントリ情報を新規に作成する。その際、SPIタイマ値には、SPIタイムアウト値SPOの60秒が設定される。
【0049】
UDPのパケットPk1はファストパス転送対象のパケットになるため、中継装置1は、ファストパスエントリ情報も新規作成する。その際、SPIタイマ値に、SPIタイムアウト値FPOの300秒が設定される。それ以降のパケットPk2(1)~Pk2(3)については、ファストパスエントリ情報が存在するので、中継装置1は、ファストパス転送で処理する。ファストパスエントリ情報のSPIタイマ値は、中継装置1がパケットPk2(1)~Pk2(3)のそれぞれを受信する毎に、300秒にリセットされる。
【0050】
その後、中継装置1がパケットPk1を受信してから60秒が経過すると、スローパスエントリ情報のSPIタイマ値が満了する。第1の管理部12は、スローパスエントリ情報のSPIタイマ値が満了したことを検知すると、SPIタイマ値が満了したエントリのファストパスエントリ情報が有るか確認する。ファストパスエントリ情報が残っているので、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcを更新すべきかどうかを確認するため、式(1)を用いて、暫定更新値STnを算出する。
【0051】
図8からファストパスエントリ情報のSPIタイマ値Ftcは280秒である。そのため、暫定更新値STnは、STn=SPO-(FPO-FTc)=60秒-(300秒-280秒)=40秒となる。暫定更新値STnが、スローパス転送用のSPIタイムアウト値SPO=60秒以下の40秒であるため、第1の管理部12は、スローパスエントリ情報のSPIタイマ値STcを40秒に更新する。
【0052】
その後、中継装置1が最後に受信したパケットPk2(3)の転送処理から50秒経過したとき、LANホスト7からWANホスト6へUDPのパケットPk3が送信される。中継装置1は、パケットPk3をファストパス転送で処理し、ファストパスエントリ情報のSPIタイマ値を300秒にリセットする。その後、スローパスエントリ情報の更新されたSPIタイマ値の40秒が経過すると、スローパスエントリ情報のSPIタイマ値が満了する。中継装置1は、SPIタイマ値が満了したエントリに対して、上述のようにして、ファストパスエントリ情報があることを確認する。そして、第1の管理部12は、式(1)に基づいて、図8に示すように、スローパスエントリ情報のSPIタイマ値を50秒に更新する。
【0053】
その後、中継装置1は、上述の判定およびリセット等の処理を繰り返す。第1の管理部12は、スローパスエントリ情報のSPIタイマ値が満了したエントリがあると、式(1)に基づいてSPIタイマ値の更新の判定を行う。暫定更新値STnが0以下となる場合、第1の管理部12は、該当のスローパスエントリ情報およびファストパスエントリ情報を第1の記憶部13および第2の記憶部23から削除する。このようにして、スローパスエントリ情報のSPIタイマ値STcが順次更新され、無通信の時間が長くなったエントリが管理対象から外される。図8に示すパケットPk4のパケットの転送処理から60秒以降に、中継装置1は、WANホスト6からLANホスト7へのUDPのパケットPk5を受信すると、外部からの不正なアクセスと判断し、フィルタ処理する。
【0054】
上述したように、中継装置1は、スローパス転送の通信コネクションのSPIタイマ値が満了したとき、スローパス転送用のSPIタイムアウト値と、ファストパス転送用のSPIタイムアウト値と、ファストパス転送の通信コネクションの残りの時間であるSPIタイマ値に基づいて、スローパス転送の通信コネクションのSPIタイマ値が更新される。このようにして、パケット転送の無通信の許容時間が更新される。
【0055】
なお、本実施の形態1においては、通信コネクション情報の管理方法がSPIに適用される場合で説明したが、本実施の形態1の通信コネクション情報の管理方法が適用される対象はSPIの場合に限らない。
【0056】
本実施の形態1の中継装置1は、WAN4およびLAN5の間の通信の転送処理を行うスローパス転送処理部11と、第1の記憶部13と、第1の管理部12と、スローパス転送処理部11よりも速い転送処理を行うファストパス転送処理部21と、第2の記憶部23と、第2の管理部22とを有する。第1の記憶部13は、スローパス転送処理部11が処理対象とする通信のスローパスエントリ情報とスローパス転送のタイムアウト値とを記憶する。スローパスエントリ情報は、スローパス転送処理対象の通信に関するコネクション情報とタイマ値とが対応づけられたエントリ情報である。第1の管理部12は、スローパスエントリ情報を管理する。第2の記憶部23は、ファストパス転送処理部が処理対象とする通信のファストパスエントリ情報とファストパス転送のタイムアウト値とを記憶する。ファストパスエントリ情報は、ファストパス転送処理対象の通信に関するコネクション情報とタイマ値とが対応づけられたエントリ情報である。第2の管理部22は、ファストパスエントリ情報を管理する。第1の管理部12は、スローパスエントリ情報のタイマ値が満了すると、タイマ値が満了したコネクション情報に対応する、ファストパスエントリ情報のタイマ値とスローパス転送のタイムアウト値とファストパス転送のタイムアウト値とに基づいて、スローパスエントリ情報のタイマ値を更新する。
【0057】
従来の中継装置は、一定の周期で、スローパス側の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルの全ての通信コネクションエントリの状態およびSPIタイマ値を更新する。これに対して、本実施の形態1においては、スローパス転送用の通信コネクションのSPIタイマ値が満了したタイミングで、通信コネクションのあるエントリのみについて管理情報を同期する処理が行われる。そのため、通信コネクションが多いと、スローパス側の通信コネクションテーブルとファストパス転送用の通信コネクションテーブルとを一定の周期で同期させる場合に比べて、CPUの演算処理の負荷を低減することができる。
【0058】
また、従来の中継装置は、テーブルの同期の周期が一定なので、SPIタイマ値を正確に管理できずに、SPIタイマ値が満了している状態で、外部からの不正なアクセスがフィルタされずに、セキュリティを確保されないおそれがある。これに対して、本実施の形態1においては、スローパス転送用の通信コネクションのSPIタイマ値が満了したタイミングで、まだ通信が行われているか否かが判定され、無通信と判定されると、エントリ情報が削除される。そのため、セキュリティの高いSPIを実現することができる。
【0059】
(利用形態の説明)
本実施の形態1においては、UDPのUNREPLIED(片方向)通信の場合で説明したが、UDP ASSURED(双方向)通信の場合にも適用することができる。UDP ASSURED(双方向)通信の場合、SPIタイマ値が満了し、暫定更新値を求める際、スローパス転送用のSPIタイムアウト値としてUDP ASSUREDタイムアウト設定値を参照し、ファストパス転送用のSPIタイムアウト値としてUDP ASSUREDタイムアウト設定値を参照すればよい。
【0060】
また、本実施の形態1において、通信プロトコルがUDPの場合を例として説明したが、プロトコルの種別は限定されない。本実施の形態1は、通信プロトコルがTCPであってもよく、UDPおよびTCP以外の他のプロトコルにも適用できる。
【符号の説明】
【0061】
1 中継装置
2 スローパス転送部
3 ファストパス転送部
4 WAN
5 LAN
6 WANホスト
7 LANホスト
8 PC
9 WANポート
10 LANポート
11 スローパス転送処理部
12 第1の管理部
13 第1の記憶部
21 ファストパス転送処理部
22 第2の管理部
23 第2の記憶部
図1
図2
図3
図4
図5
図6
図7
図8