説明

パケット中継装置及びパケット中継制御方法

【課題】複数のネットワークデバイスに対するパケットの中継制御を行う場合に、単一のCPUインタフェースのみでパケットの送受信を可能とするパケット中継装置を得る。
【解決手段】パケットの送受信を行う複数のネットワークデバイスと、単一のCPUインタフェースと、RAMと、CPUとを備え、RAM150は、受信パケットが転送されるパケットバッファ部とメモリプール識別子書込部の組を一単位とした複数の書込領域とを有し、CPUインタフェース113は、送信元のネットワークデバイスを識別し、送信元ネットワークデバイスに対応するデバイス識別子を書き込む機能と、受信パケットをパケットバッファ部に転送する機能を有し、CPU120は、ネットワークデバイスに対してCPUインタフェース113を介してパケットの受信処理及び送信処理を行うドライバ手段121と、パケットの転送先を検索するネットワークスタック123を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IPネットワーク上のルータ技術に関し、特に、インターネット接続において、OSI参照モデルが物理層及びデータリンク層として規定するネットワークデバイスでパケットの送受信を行うに際してのパケット中継装置及びパケット中継制御方法に関する。
【背景技術】
【0002】
ルータは、異なるネットワーク間を相互に接続するための中継機器として用いられるものであり、パケットに付与された宛先IPアドレスを識別し検索テーブルにしたがって転送するルーティング処理が行われるが、その高速化を図るため例えば特許文献1や特許文献2に示されるような種々の検索制御方法が提案されている。
【特許文献1】特開2000−174805号公報
【特許文献2】特開平11−341076号公報
【0003】
OSI参照モデルがネットワーク層以上のレイヤとして規定する領域(以下、ネットワークスタックと総称)においてルーティング検索制御に関する処理を行う場合、パケットの通過・廃棄の可否を設定されたフィルタリング情報に基づいて単に判定する処理と異なり、検出したパケットの転送先を検索する処理が発生するため、中央演算処理装置(CPU)で制御する必要がある。そのため、ネットワークデバイスとCPUとの間に、DMA転送経路として使用するインタフェース(以下、CPUインタフェース)を備えてパケットの送受信が行われていた。
【0004】
従来のパケット中継装置においては、ネットワークスタックでの処理は、ネットワークデバイスを区別してパケットを送受信するため、CPUインタフェースはネットワークデバイス毎に独立したものが使用されていた。
【0005】
この場合、ネットワークスタックは、送信前のパケットを一時的に蓄積する受信バッファがネットワークデバイス毎に独立な領域に確保されることを前提としている。そのため、受信バッファの領域確保及び返却は、受信したネットワークデバイスに対応するメモリプールに対して行われていた。
【発明の開示】
【発明が解決しようとする課題】
【0006】
IPネットワーク上においてパケットの中継を行う場合、複数のネットワークデバイスが必要となる。この場合に、ネットワークデバイス毎に独立のCPUインタフェースを用いると、ネットワークデバイス数の増加に伴って受信バッファやメモリプールが増加し、ネットワークの構築コストが増大するという問題点があった。
【0007】
本発明は上記実情に鑑みて提案されたもので、複数のネットワークデバイスに対するパケットの中継制御を行うに際して、複数のネットワークデバイスに対して単一のCPUインタフェースのみでパケットの送受信を可能とするパケット中継装置及びパケット中継制御方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するため本発明は、パケットの送受信を行う複数のネットワークデバイスと、単一のCPUインタフェースと、CPUと、前記CPUインタフェース及び前記CPUとの間で情報の送受信を行うRAMとを備えたパケット中継装置であって、次の構成を含むことを特徴としている。
前記RAMは、受信パケット毎に受信元情報が書き込まれる複数の受信ディスクリプタ領域と、送信パケット毎に送信先情報が書き込まれる複数の送信ディスクリプタ領域と、受信パケットが転送されるパケットバッファ部とメモリプール識別子書込部の組を一単位とした複数の書込領域とを有する。
前記CPUインタフェースは、送信元のネットワークデバイスを識別し、受信パケット毎に前記受信ディスクリプタ領域に送信元ネットワークデバイスに対応するデバイス識別子を書き込む機能と、前記受信パケットを前記パケットバッファ部に転送する機能を有する。
前記CPUは、ソフトウェアで動作し前記複数のネットワークデバイスに対して前記CPUインタフェースを介して前記パケットの受信処理及び送信処理を行うドライバ手段と、 前記パケットの転送先を検索するネットワークスタックを備えている。
そして、前記ドライバ手段は、前記CPUインタフェースがパケットを格納するための領域を前記書込領域に確保し、前記CPUインタフェースにより受信パケットが転送された前記パケットバッファ部に対応する前記メモリプール識別子書込部に、前記受信ディスクリプタ領域に書き込まれたデバイス識別子に応じた値を書き込む処理を行う。
【0009】
本発明方法は、複数のネットワークデバイス相互間においてパケットの送受信を行う際のパケット中継制御方法であって、次の各手順を含むことを特徴としている。
前記ネットワークデバイスで受信したパケットの内、CPUで処理が必要なパケットのみを単一のCPUインタフェースを介してCPUへ転送する手順。
前記CPUインタフェースにより、送信元のネットワークデバイスを識別し、受信パケット毎に送信元ネットワークデバイスに対応するデバイス識別子をRAMに書き込む手順。
前記CPUインタフェースにより、受信パケットをRAMにおける書込領域のパケットバッファ部に転送する手順。
CPU上のソフトウェアで動作するドライバ手段により前記CPUインタフェースからRAMの書込領域のパケットバッファ部に転送されたパケットに対して前記デバイス識別子に応じたメモリプール識別子をRAMにおける書込領域のメモリプール識別子書込部に付与する手順。
CPU上のソフトウェアで動作するネットワークスタックにより、前記ドライバ手段からの指示を受けてパケットの転送先を検索する手順。
前記ドライバ手段により前記パケットバッファ部からパケットを呼び出し、前記ネットワークスタックで指示された宛先IPアドレスに送信する手順。
【発明の効果】
【0010】
本発明によれば、ソフトウェアで動作しネットワークデバイスに対してCPUインタフェースを介してパケットの受信処理及び送信処理を行うに際して、送信元ネットワークデバイスを識別可能なドライバ手段を備えることで、従来ネットワークデバイス毎に必要だったCPUインタフェースを単一化し、ネットワークの構築コストを削減することができる。
【発明を実施するための最良の形態】
【0011】
以下、本発明の実施形態の一例について、図面を参照して説明する。
図1は、本発明が適用されるIPボタン電話装置100の主要部の構成を示したブロック図であり、ここでは、本発明の説明に不要な構成は図示が省略されている。
【0012】
このIPボタン電話装置100は、外線としてアナログ回線、ナンバーディスプレイ契約回線、網番号ダイヤルイン回線、アナログ専用線、デジタル専用線およびISDN回線などのレガシー(従来型・旧型)外線のみならず、IP専用回線、VoIP回線、NGN (next generation network:次世代ネットワーク)回線を利用できる。また、内線端末として一般アナログ端末、ISDN端末、ホテルフォンおよびFAXなどのレガシー端末のみならず、デジタルボタン電話機やIP電話機などのIP端末を収容し、各外線と各内線端末との間の通信を制御する。
【0013】
IPボタン電話装置100において、主制御ユニットCCU (Central Control Unit)1は、システム全体を制御する。TDM制御ユニットTCCU2は、各レガシー端末とIP網との間および各レガシー外線とIP端末との間で時分割多重化通信(TDM)を制御する。カスタマエッジユニットCEU (Customer Edge Unite)3は、音声データと制御データとを多重化してIP通信を行う高速ブロードバンドルータとしての機能を備える。音声変換ユニットVCU (Voice Conversion Unit)4は、音声データを高ビットレートの高音質データまたは低ビットレートの標準音質データに変換する。
【0014】
前記TCCU2には、ファックス端末81、ホテルフォン端末82、デジタルボタン電話機83、単体電話機84などのレガシー端末、および一般外線、ISDNネット回線、デジタル専用線、アナログ専用線などのレガシー外線が、各種の専用インタフェースおよびTDM通信用のTDMバス5を介して接続されている。前記TDMバス5は、制御データを送受信するDチャネルおよび音声信号を送受信するBチャネルを備える。
【0015】
前記CCU1とTCCU2とは音声用LAN8および制御用LAN9の2本のLANで接続されている。CCU1とCEU3およびVCU4とは制御用LANで接続されている。前記CCU1には更に、保守用LAN10を介して保守用コンピュータ95が接続されると共に、IP内線LAN6を介してHUB7が接続されている。前記HUB7には、専用インタフェースを介してIP電話機91や音声会議装置92が接続され、無線アクセスポイント(AP)にはIPコードレスフォン93が収容され、さらにソフトフォン94のアプリケーションが実装されたコンピュータが接続されている。
【0016】
前記CCU1は、CPU11、DDR メモリ(RAM)12、フラッシュメモリ13、パケット転送の制御に特化した専用チップ14、挿抜自在のコンパクトフラッシュ(登録商標)(CF)メモリ15およびレイヤ2(L2)スイッチ16を主要な構成としている。
前記TCCU2は、CPU21、DDR メモリ22、フラッシュメモリ23、ファイ(PHY)24、前記Bチャネルを制御するハイウエイスイッチ25、前記Dチャネルを制御するDch制御信号通信チップ26およびDSP(Digital Signal Processor)27を主要な構成としている。前記PHY24は、Ethernet(登録商標)(図示せず)の物理層を制御するLSIである。
【0017】
前記CEU3は、CPU31、DDRメモリ32、フラッシュメモリ33、パケット転送の制御に特化した専用チップ34およびL2スイッチ35を主要な構成としている。VCU4は、CPU41、DDRメモリ42、フラッシュメモリ43、L2スイッチ44およびDSP45を主要な構成としている。DSP45は、音声情報を高品質から標準音質への変換、若しくはその逆の変換を行う。
【0018】
このように、本実施形態ではCCU1、TCCU2、CEU3およびVCU4のそれぞれにCPU11,21,31,41を分散配置することで負荷分散を実現すると共に、CCU1およびCEU3には更に、パケット転送に特化した専用チップ14,34を搭載することでCPUにおけるパケット転送の処理を軽減し、更なる負荷分散を実現している。
【0019】
このような構成において、レガシー端末(例えば、単体電話機84)がNGN経由で発着信した場合、レガシー端末とTCCU2との間ではPCM変換された音声信号がTDMバス5上で時分割多重化通信により送受信される。TCCU2とCCU1との間にはIPセッションが確立され、このIPセッションにおいて音声信号のデータパケットが交換される。CEU3では前記L2スイッチ35によりNGNが選択されており、CCU1およびCEU3は、それぞれの専用チップ14,34を利用してパケットを交換する。
【0020】
また、IP端末がレガシー外線(例えば、ISDNネット)経由で発着信した場合は、TDMバス5,TCCU2,CCU1およびHUB7を介してデータが送受信される。さらに、IP端末がNGN経由で発着信した場合は、CEU3,CCU1およびHUB7を介してデータが送受信される。
【0021】
本発明のパケット中継装置は、図1におけるCCU1又はCEU3内に適用されるものであり、その詳細な構成について、図2〜図6を参照しながら説明する。CEU3は回線数が多数である場合にCCU1に加えて接続されるものであり、IPボタン電話装置100がCCU1のみで構成される場合には本発明のパケット中継装置はCCU1内に、IPボタン電話装置100がCCU1及びCEU3で構成され場合には本発明のパケット中継装置はCCU1及びCEU3内に適用される。
【0022】
図2に、二つのネットワークデバイスを有する場合のパケット中継制御装置110の機能構成を示す。
本発明のパケット中継装置110は、パケットの送受信を行うWAN側のネットワークデバイス111及びLAN側のネットワークデバイス112と、単一のCPUインタフェース113と、パケットの送受信処理を行うドライバ手段121を備えることでパケットの中継制御を行うCPU120と、CPUインタフェース113及びCPU120との間でそれぞれ情報の送受信が行われるRAM150を備えて構成されている。
【0023】
図1との対応では、パケット中継装置110のネットワークデバイス111,112及びCPUインタフェース113が、CCU1内の専用チップ14及びCEU3内の専用チップ34で実現されるものである。
【0024】
RAM150は、受信パケット毎に受信元情報が書き込まれる複数の受信ディスクリプタ領域200と、送信パケット毎に送信先情報が書き込まれる複数の送信ディスクリプタ領域300と、受信パケットが転送されるパケットバッファ部とメモリプール識別子書込部の組を一単位とした複数の領域がそれぞれ形成された書込領域151,152,153を有して構成されている。
書込領域は、CPUインタフェース113を介して送信前の受信パケットが一時的に蓄積されるパケット書込領域151と、ドライバ手段121によりネットワークデバイスのLAN側・WAN側を識別してCPUインタフェース113がパケットを書き込むために確保されるメモリプール領域152(LAN側),メモリプール領域153(WAN側)を有し、各領域には書込可能な領域が複数形成されている。
【0025】
パケットの送受信を行うためのWAN側のネットワークデバイス111,LAN側のネットワークデバイス112は、図1においては接続線102,103,104に接続されている。すなわち、WAN側のネットワークデバイス111がCEU3の接続線103及びCCU1の接続線104に、LAN側のネットワークデバイス112がCEU3の接続線104及びCCU1の接続線102(6)に接続することで、HUB7に接続されるLAN側及びIP網に接続されるWAN側に対してパケットを送受信可能なように構成されている。
【0026】
CPUインタフェース113は、複数(本例では2個)のネットワークデバイスで受信した受信パケットのパケット情報としてのデバイス識別子、バッファポインタ(物理アドレス:パケット書込領域151における任意のパケットバッファ部の領域を指すアドレス)、パケットサイズをRAM150内の受信ディスクリプタ200に書き込む処理、及び、RAM150内のパケット書込領域151に送信前の受信パケットをDMA転送する処理を行うものである。
デバイス識別子は、LAN側又はWAN側のどちらのネットワークデバイス111,112で受信したかを識別するための情報である。
【0027】
RAM150内における受信ディスクリプタ領域は、図3に示すように、#1〜#nのn個の領域200が形成され、受信パケット毎の情報であるデバイス識別子201、バッファポインタ(物理アドレス:パケット書込領域151における任意のパケットバッファ部の領域を指すアドレス)202、パケットサイズ203がそれぞれ記憶できるようになっている。また、#n+1番目の受信パケットの情報の記憶については、#1の領域から順次書き換えるようになっている。
同様にRAM150内における送信ディスクリプタ領域は、図4に示すように、#1〜#nのn個の領域300が形成され、送信パケット毎の情報であるデバイス識別子301、バッファポインタ(物理アドレス:パケット書込領域151における任意のパケットバッファ部の領域を指すアドレス)302、パケットサイズ303がそれぞれ記憶できるようになっている。また、#n+1番目の送信パケットの情報の記憶については、#1の領域から順次書き換えるようになっている。
受信ディスクリプタ領域200及び送信ディスクリプタ領域300については、パケットの送受信開始前に、ドライバ手段121により予め連続する領域に複数個分まとめて確保されている。
【0028】
パケット書込領域151は、パケットを受信する度に、ドライバ手段121がメモリプール領域152(LAN側)又はメモリプール153(WAN側)から動的に獲得した領域を、新たな受信パケット格納領域として割り当てる。メモリプール領域152(LAN側),メモリプール153(WAN側)は、ネットワークデバイス111,112毎に独立した領域として形成される。
【0029】
CPU120には、パケットの受信処理及び送信処理を行うドライバ手段121と、ネットワークスタック123とを備え、それぞれソフトウェアで動作処理が行われるように構成されている。
ドライバ手段121は、ネットワークデバイス111,112に対してパケットの受信処理及び送信処理を行うものであり、受信処理としては、受信パケットが格納されたパケット書込領域151のメモリプール識別子書込部に対してデバイス識別子に応じたメモリプール識別子を書き込む処理、及び、デバイス識別子に応じたメモリプール領域152(LAN側)又はメモリプール153(WAN側)から動的に獲得した領域をパケット書込領域151として割り当てる処理、及び、ネットワークスタック123への受信通知が行われる。
メモリプール識別子は、パケット書込領域151の領域返却時に、返却先となるメモリプール領域、すなわち、受信ネットワークデバイスに対応するメモリプール領域152(LAN側),メモリプール153(WAN側)を判別する目的で使用するものである。
【0030】
ドライバ手段121の送信処理としては、ネットワークスタック123から通知されたインタフェースのパケット情報であるデバイス識別子、バッファポインタ(物理アドレス:パケット書込領域151における任意のパケットバッファ部の領域を指すアドレス)、パケットサイズをRAM150内の送信ディスクリプタ領域300に書き込む処理、及び、CPUインタフェース113に送信パケットの送信許可を通知する処理、及び、送信済みのパケットが格納されたパケット書込領域151をメモリプール識別子に応じたメモリプール領域152,153に返却する処理を行うものである。
【0031】
ネットワークスタック123は、パケットの転送先の検索処理を行うものであり、パケットのIPヘッダ等に付与されている宛先IPアドレスに一致する経路を経路テーブルから探索するルーティング制御を行うことで、受信パケットの当該経路が示すネットワークデバイスへの転送、又は、経路が見つからない場合は受信パケットの廃棄が行われる。
【0032】
上記構成のパケット中継装置によるパケット中継制御方法について、図2及び図5・図6のフローチャート図を参照しながら説明する。
図5は、パケットを受信した場合の一連の処理内容を示したものである。
WAN側又はLAN側のネットワークデバイス111,112がパケットを受信すると、例えば転送先が不明である等、CPU120での処理が必要なパケットであるか否かを判断し、処理が必要である場合にはCPUインタフェース113に対して、パケットを受信したこと、及び、LAN側又はWAN側のどちらのネットワークデバイス111,112で受信したかを識別するための情報であるデバイス識別子を通知する。
CPU120での処理が必要ないパケットに対しては、直接LAN側又はWAN側のネットワークデバイス111,112から送信処理が行われる。
【0033】
CPUインタフェース113は、前記したネットワークデバイス111,112からのデバイス識別子の通知にしたがって、RAM150内において受信パケット毎に割り当てられた受信ディスクリプタ領域200にデバイス識別子201、バッファポインタ202及びパケットサイズ203を書き込む(ステップ401)。
受信ディスクリプタ領域は、パケットの送受信開始前に、予めドライバ手段121が連続領域に複数個分まとめて確保している。
【0034】
ここで、上記のデバイス識別子を書き込むRAM150内の受信ディスクリプタ領域200は、一つ前の受信時に使用した受信ディスクリプタの後方に隣接する受信ディスクリプタを使用する。なお、図3の受信ディスクリプタの構成模式図に示すように、一つ前の受信時に使用した受信ディスクリプタ領域200が連続領域の末尾(#n)に位置する場合は、先頭(#1)の受信ディスクリプタ領域200に書き込まれた識別子を#(n+1)に対応するものに書き換えて使用する。
【0035】
CPUインタフェース113は、予めドライバ手段121がRAM150の受信ディスクリプタ領域200に書き込んだバッファポインタ(物理アドレス)に該当するパケット書込領域151のパケットバッファ部へ受信パケットをDMA転送する(ステップ402)。
転送先となるパケット書込領域151内の領域は、領域サイズが固定値(パケットサイズの最大値よりも大きい値)であり、パケット受信前に予めドライバ手段121が確保した領域である。
【0036】
次に、CPUインタフェース113は、割込み信号を生成して、パケットを受信したことをドライバ手段121の受信処理に対して通知する(ステップ403)。
【0037】
ドライバ手段121は、CPUインタフェース113が書き込んだパケット書込領域151のパケットバッファ部に対応するメモリプール識別子書込部内において、バッファポインタに書かれた物理アドレスの前方に位置する領域に、デバイス識別子に応じたメモリプール識別子を書き込む(ステップ404)。
【0038】
次に、ドライバ手段121は、ネットワークスタック123に対して、受信したネットワークデバイス111,112に対応するインタフェース情報(デバイス識別子)と、受信パケットの先頭物理アドレス(バッファポインタ)を通知する(ステップ405)。
次に、ネットワークスタック123は、通知された情報を参照して受信処理を行う(ステップ406)。
【0039】
最後に、ドライバ手段121は、RAM150内の受信ディスクリプタ200のデバイス識別子201を参照し、デバイス識別子に対応するメモリプール領域(LAN側)152またはメモリプール(WAN側)153から、新たなパケットバッファ部及びメモリプール識別子書込部を、CPUインタフェース113がパケットを書き込むための領域として確保し、そのパケットバッファ部の先頭アドレスを受信ディスクリプタに書き込む(ステップ407)。
確保された領域は、以降のパケット受信時に、CPUインタフェース113がバッファポインタ宛に転送する場合に使用される領域となる。
【0040】
図6は、パケットを送信する場合の一連の処理内容を示したものである。
パケットを送信する場合、ネットワークスタック123はドライバ手段121の送信処理に対して、送信パケットのバッファポインタ(先頭物理アドレス)およびパケットサイズと、送信するネットワークデバイス111又はネットワークデバイス112に対応するインタフェース情報を通知する。
【0041】
ドライバ手段121は、通知されたインタフェース情報に対応するデバイス識別子301と、送信パケットのバッファポインタ(先頭物理アドレス)302と、パケットサイズ303とを送信パケット毎の送信ディスクリプタ領域300に書き込む(ステップ501)。
ここで、送信ディスクリプタ領域300は、パケットの送受信開始前に、予めドライバ手段121が連続領域に複数個分まとめて確保する。上記のデバイス識別子を書き込む送信ディスクリプタは、一つ前の送信時に使用した送信ディスクリプタの後方に隣接する送信ディスクリプタである。なお、図4の送信ディスクリプタの構成模式図に示すように、一つ前の送信時に使用した送信ディスクリプタ領域300が連続領域の末尾(#n)に位置する場合は、先頭(#1)の送信ディスクリプタ領域300に書き込まれた識別子を#(n+1)に対応するものに書き換えて使用する。
【0042】
次に、ドライバ手段121はCPUインタフェース113に対して、パケットの送信を指示する(ステップ502)。
【0043】
CPUインタフェース113は、送信ディスクリプタ300を参照し、デバイス識別子により指定されたネットワークデバイスに対して、バッファポインタが指すアドレス以降に記録された送信パケットをDMA転送する(ステップ503)。
DMA転送が完了すると、CPUインタフェース113は、割込み信号を生成して、パケットを送信したことをドライバ手段121の送信処理に対して通知する(ステップ504)。
【0044】
ドライバ手段121は、送信パケットが格納されたパケット書込領域151を、メモリプール識別子によって指定されたメモリプール領域152,153に返却する(ステップ505)。
【0045】
上述したパケット中継装置及びパケット中継制御方法によれば、ネットワークデバイス111,112に対してCPUインタフェース113を介してパケットの受信処理及び送信処理をソフトウェア上で行うドライバ手段121を備えることで、従来ネットワークデバイス毎に必要だったCPUインタフェース113を単一化し、ネットワークの構築コストを削減することができる。
【図面の簡単な説明】
【0046】
【図1】本発明が適用されるIPボタン電話装置のブロック図である。
【図2】本発明のパケット中継装置の実施形態の一例を示す構成ブロック図である。
【図3】パケット中継装置における受信ディスクリプタの構成と受信パケットとの関係を示す模式図である。
【図4】パケット中継装置における送信ディスクリプタの構成と送信パケットとの関係を示す模式図である。
【図5】パケット中継装置におけるパケット受信の一連の処理を示すフローチャート図である。
【図6】パケット中継装置におけるパケット送信の一連の処理を示すフローチャート図である。
【符号の説明】
【0047】
1…CCU、 3…CEU、 6…IP内線LAN、 14,34…専用チップ、 100…IPボタン電話装置、 110…パケット中継装置、 111…WAN側のネットワークデバイス、 112…LAN側のネットワークデバイス、 113…CPUインタフェース、 120…CPU、 121…ドライバ手段、 123…ネットワークスタック、 150…RAM、 151…パケット書込領域(書込領域)、 152…(LAN側の)メモリプール領域(書込領域)、 153…(WAN側の)メモリプール領域(書込領域)、 200…受信ディスクリプタ、 201…デバイス識別子、 202…バッファポインタ、 300…送信ディスクリプタ、 301…デバイス識別子、 302…バッファポインタ。

【特許請求の範囲】
【請求項1】
パケットの送受信を行う複数のネットワークデバイスと、単一のCPUインタフェースと、CPUと、前記CPUインタフェース及び前記CPUとの間で情報の送受信を行うRAMとを備えたパケット中継装置であって、
前記RAMは、受信パケット毎に受信元情報が書き込まれる複数の受信ディスクリプタ領域と、送信パケット毎に送信先情報が書き込まれる複数の送信ディスクリプタ領域と、受信パケットが転送されるパケットバッファ部とメモリプール識別子書込部の組を一単位とした複数の書込領域とを有し、
前記CPUインタフェースは、送信元のネットワークデバイスを識別し、受信パケット毎に前記受信ディスクリプタ領域に送信元ネットワークデバイスに対応するデバイス識別子を書き込む機能と、前記受信パケットを前記パケットバッファ部に転送する機能を有し、
前記CPUは、
ソフトウェアで動作し前記複数のネットワークデバイスに対して前記CPUインタフェースを介して前記パケットの受信処理及び送信処理を行うドライバ手段と、
前記パケットの転送先を検索するネットワークスタックを具備し、
前記ドライバ手段は、前記CPUインタフェースがパケットを格納するための領域を前記書込領域に確保し、前記CPUインタフェースにより受信パケットが転送された前記パケットバッファ部に対応する前記メモリプール識別子書込部に、前記受信ディスクリプタ領域に書き込まれたデバイス識別子に応じた値を書き込む処理を行う
ことを特徴とするパケット中継装置。
【請求項2】
複数のネットワークデバイス相互間においてパケットの送受信を行う際のパケット中継制御方法であって、
前記ネットワークデバイスで受信したパケットの内、CPUで処理が必要なパケットのみを単一のCPUインタフェースを介してCPUへ転送する手順と、
前記CPUインタフェースにより、送信元のネットワークデバイスを識別し、受信パケット毎に送信元ネットワークデバイスに対応するデバイス識別子をRAMに書き込む手順と、
前記CPUインタフェースにより、受信パケットをRAMにおける書込領域のパケットバッファ部に転送する手順と、
CPU上のソフトウェアで動作するドライバ手段により前記CPUインタフェースからRAMの書込領域のパケットバッファ部に転送されたパケットに対して前記デバイス識別子に応じたメモリプール識別子をRAMにおける書込領域のメモリプール識別子書込部に付与する手順と、
CPU上のソフトウェアで動作するネットワークスタックにより、前記ドライバ手段からの指示を受けてパケットの転送先を検索する手順と、
前記ドライバ手段により前記パケットバッファ部からパケットを呼び出し、前記ネットワークスタックで指示された宛先IPアドレスに送信する手順と、
を具備することを特徴とするパケット中継制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−109737(P2010−109737A)
【公開日】平成22年5月13日(2010.5.13)
【国際特許分類】
【出願番号】特願2008−280127(P2008−280127)
【出願日】平成20年10月30日(2008.10.30)
【出願人】(000000181)岩崎通信機株式会社 (133)
【出願人】(399040405)東日本電信電話株式会社 (286)
【出願人】(399041158)西日本電信電話株式会社 (215)
【Fターム(参考)】