JP2007088709A - パケット通信装置およびその処理方法 - Google Patents
パケット通信装置およびその処理方法 Download PDFInfo
- Publication number
- JP2007088709A JP2007088709A JP2005273677A JP2005273677A JP2007088709A JP 2007088709 A JP2007088709 A JP 2007088709A JP 2005273677 A JP2005273677 A JP 2005273677A JP 2005273677 A JP2005273677 A JP 2005273677A JP 2007088709 A JP2007088709 A JP 2007088709A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- buffer
- processing
- transfer
- transmission
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Bus Control (AREA)
Abstract
【課題】LANなどのネットワークシステムにおいて、パケットデータを送受信して通信することができるパケット通信装置およびその処理方法を提供。
【解決手段】パケット通信装置10は、主制御部12がデータ処理に用いる通常バッファ26と、アクセラレータ22が暗号化/復号化処理に用いる処理バッファ24とを備えて、MAC 20とアクセラレータ22とを一体化して構成し、MAC 20は、受信パケットが緊急パケットであるか否かを判定して、緊急パケットである場合には受信パケットを処理バッファ24に転送し、その他の場合にはDMA制御部18に制御されて受信パケットを通常バッファ26に転送し、さらに、MAC 20が緊急パケット転送に応じて割込みIRQ2を主制御部12に送り、主制御部12がこの割込みIRQ2に応じて処理バッファ24における緊急パケットを優先的にデータ処理する。
【選択図】図1
【解決手段】パケット通信装置10は、主制御部12がデータ処理に用いる通常バッファ26と、アクセラレータ22が暗号化/復号化処理に用いる処理バッファ24とを備えて、MAC 20とアクセラレータ22とを一体化して構成し、MAC 20は、受信パケットが緊急パケットであるか否かを判定して、緊急パケットである場合には受信パケットを処理バッファ24に転送し、その他の場合にはDMA制御部18に制御されて受信パケットを通常バッファ26に転送し、さらに、MAC 20が緊急パケット転送に応じて割込みIRQ2を主制御部12に送り、主制御部12がこの割込みIRQ2に応じて処理バッファ24における緊急パケットを優先的にデータ処理する。
【選択図】図1
Description
本発明は、LANなどのネットワークシステムにおいて、パケットデータを送受信して通信することができるパケット通信装置およびその処理方法に関するものである。
従来から、LAN(Local Area Network)などのネットワークシステムでは、パーソナルコンピュータ(Personal Computer:PC)やプリンタなどの各機器をツイストペアケーブルなどの配線で接続してデータをやり取りしている。LANの通信制御方式のうち、イーサネット(登録商標)(Ethernet)は、NIC(Network Interface Card)を用いてPCに装備された標準ネットワークとして普及している。イーサネットは、米国Xerox社およびDEC社により考案され、IEEE802.3委員会によって標準化されたLAN規格であり、今日では、通信速度100Mbpsの高速イーサネット(Fast Ethernet)や、ブロードバンド化に対応したギガビットイーサネット(Gigabit Ethernet)により高速化されている。
また、LANに用いられる従来の通信装置には、ダイレクトメモリアクセス(Direct Memory Access:DMA)コントローラ、メディアアクセスコントローラ(Media Access Controller:MAC)、暗号化/復号化アクセラレータおよびバスアービタを内部バスに接続してハードウエアで構成されるものがある。この通信装置は、パケットを通信単位とするデータ(以下、パケットと称する)を送受信バッファに格納してアプリケーションプログラムにより処理するが、DMAコントローラおよびMACによりLANおよび送受信バッファ間のパケットの転送を実現している。
この通信装置では、ディスクリプタ(descriptor)と呼ばれる構造体をあらかじめメモリに備えて、MACにこのディスクリプタの配列を渡してパケットのDMA転送を行っている。
MACは、高速イーサネットなどの高速LANから自分宛てのパケットを受信するもので、通常、パケットの最大データ量は1514バイト程度であるので、MACは、数Kバイト程度のFIFOメモリを備えて受信パケットを一時的に保持することができる。MACは、パケットを受信するとDMAコントローラに受信通知を送る。
また、DMAコントローラは、DMA転送を制御するもので、MACからの受信通知に応じて、受信ディスクリプタに基づいて、MACで受信したパケットを内部バスを介してメモリ上の受信バッファに転送する。DMAコントローラは、DMA転送の結果、受信バッファのデータ量が所定のしきい値に達すると、通信装置のCPU(Central Processing Unit)に割込み(Interrupt ReQuest:IRQ)を送る。
CPUは、DMAコントローラからの割込みIRQに応じて、受信バッファに蓄積されたパケットを、その蓄積の順にデータ処理する。
また、CPUは、このデータ処理において、パケットの暗号化/復号化処理が必要な場合、DESA(Data Encryption Standard Accelerator)などの暗号化/復号化アクセラレータに暗号化/復号化処理をさせる。DESAは、通常、ハードウエアで構成されて、64ビットまたは128ビットの暗号化/復号化処理を高速に行い、DESAにおける暗号化/復号化処理の処理条件は、CPUで実行されるアプリケーションプログラムで設定される。
たとえば、暗号化されたパケットを復号化処理する場合、このパケットを受信バッファからDESAの処理バッファに転送し、DESAが処理バッファ上でこのパケットの復号化処理を行い、さらに復号化後のパケットを受信バッファに再度転送する。
また、従来の通信装置において、パケットを送信する場合、アプリケーションプログラムによるデータ処理によって、送信するパケットは、送信バッファに格納され、DMAコントローラにより送信ディスクリプタに基づいてDMA転送され、このパケットが送信バッファからMACへ転送されて、さらにMACから高速LANに送信される。
ここで、送信するパケットの暗号化が必要であれば、このパケットを送信バッファからDESAの処理バッファに転送し、DESAが処理バッファ上でこのパケットの暗号化処理を行い、さらに暗号化後のパケットを送信バッファに再度転送する。
この通信装置では、CPUバスと制御バスが共有され、メモリおよびDESA間のCPUによる処理と、パケットのDMA転送処理とは、時分割で行われる。
ところで、特許文献1に記載のデータ転送装置では、優先順位の高いデータ転送がDMA制御回路にリクエストされたとき、DMA制御回路は、優先順位の低いデータ転送を一時中断させ、その中断時点におけるステイタスがアドレスレジスタおよび現在転送量レジスタに記憶され、DMA制御回路は、優先順位の高いデータ転送を終了したときに、アドレスレジスタおよび現在転送量レジスタに記憶されたステイタスに対応して、優先順位の低いデータ転送を再開させることができる。
しかしながら、従来のDMA転送方式では、システム全体のスループットを向上させる効果があるが、優先度が高く、緊急に処理しなければならないパケットの処理を行うことは困難である。たとえば、VoIP(Voice over Internet Protocol)によって送受信される音声データは、転送レートは低いが時間遅れが品質低下をもたらすので、緊急に処理しなければならないパケットとして知られている。
従来のDMA転送方式では、優先パケットか否かを判別することなく、送受信バッファに転送されて蓄積された順にCPUがデータ処理を行っている。このように、優先パケットのDMA転送やデータ処理を優先的に行わないので、LANの高速化およびネットワーク機器の高機能化に伴う転送データ増大によって、優先パケットの処理速度が遅れるという問題がある。
たとえば、従来の通信装置において、緊急の処理を要しない3つの通常パケットを順次受信し、2番目の通常パケットの受信後で3番目の通常パケットの受信前に、緊急の処理を要する優先パケットを受信する。このとき、DMAコントローラは、この優先パケットをMACから受信バッファにDMA転送して、2番目の通常パケットの次に蓄積する。このように、受信されたパケットは、通常パケットであるか優先パケットであるかに拘らず、DMAコントローラによって、DMA転送されて受信した順に受信バッファに蓄積される。
したがって、この通信装置に受信されたパケットは、通常パケットであるか優先パケットであるかに拘らず、CPUによって、受信バッファに蓄積された順にデータ処理され、CPUによるデータ処理はバスを時分割で使用して行われる。
また、CPUによるデータ処理で暗号化/復号化処理すべきパケットは、メモリ内の送受信バッファから、通常、複数回にわたって切り出されて、DESA内の処理バッファに転送される。その後、DESAによって暗号化/復号化処理されたパケットは、送受信バッファに再度転送する必要がある。このように、暗号化/復号化処理では、送受信バッファおよび処理バッファ間のパケット転送による負担が生じて、内部バスの使用効率の低下だけでなく、システム全体のデータ処理スループットを大きく低下することがある。
なお、パケット転送処理を行うネットワーク機器において、パケットの優先順位に応じてメモリキューを持たせる構造のハードウエアや高速なDSP処理があるが、この構造を一般的な端末に適用するにはコストが高い。
また、従来の通信装置において、緊急の処理を要する優先パケットを送信する場合、すでにDMA転送されたパケットの送信が終了するまでは、優先パケットの処理を待機する必要がある。なお、MACとDESAとの問の転送を別個のDMA転送としても、その転送はCPUが行う緊急処理を妨げることがある。また、優先パケットを送信する場合、送出間隔のゆらぎを抑えて一定間隔で送出することが重要な、リアルタイム性が要求されるデータではとくに問題になる。
また、従来から、ルータなどのネットワーク機器側での処理内容が、主な技術的課題であるが、ネットワーク機器側の高機能化を考慮すると、端末側でVoIP通信の品質(Quality of Service:QoS)を高く保つ技術が重要な課題となる。
さらに、今日では、データの暗号化などによるセキュリティ通信を行う要求が高まり、たとえば、次世代ネットワークのIPv6(Internet Plotocol Version 6)では、IPv4端末間通信では普及しなかったIPSec(IP Security)が標準として取り入れられている。
本発明はこのような従来技術の欠点を解消し、ネットワーク機器との通信において暗号化された緊急パケットの送受信に対応し、通信の品質(QoS)を高く保ちつつ、送受信する緊急パケットの処理を高速化するパケット通信装置およびその処理方法を提供することを目的とする。
本発明は上述の課題を解決するために、通常バッファに格納された送受信パケットをデータ処理する主制御手段と、外部からの受信パケットをこの通常バッファに転送し、この通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、この通常バッファおよびこのメディアアクセスコントローラ間のこれらの送受信パケットの転送を制御して、この主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、処理バッファに格納されたこれらの送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置は、このメディアアクセスコントローラおよびこのアクセラレータを一体化して構成し、このメディアアクセスコントローラは、この受信パケットがこの主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを判定する第1の判定手段を含み、その結果、緊急パケットである場合にはこの受信パケットをこの処理バッファに転送して、第1の割込みをこの主制御手段に送り、それ以外の場合にはこの受信パケットを通常パケットとしてこの通常バッファに転送し、この主制御手段は、第1の割込みに応じて、この緊急パケットである受信パケットを優先的にデータ処理することを特徴とする。
また、通常バッファに格納された送受信パケットをデータ処理する主制御手段と、外部からの受信パケットをこの通常バッファに転送し、この通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、この通常バッファおよびこのメディアアクセスコントローラ間のこれらの送受信パケットの転送を制御して、この主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、処理バッファに格納されたこれらの送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置は、このメディアアクセスコントローラおよびこのアクセラレータを一体化して構成し、この主制御手段は、この送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合にはこの送信パケットをこの処理バッファに転送し、それ以外の場合にはこの送信パケットを通常パケットとして転送し、さらに、この送信パケットを優先的にデータ処理して、優先パケット送信指令をこのメディアアクセスコントローラに送り、このメディアアクセスコントローラは、この優先パケット送信指令に応じて、この緊急パケットである送信パケットを優先的に送信することを特徴とする。
また、外部から受信された受信パケットをメディアアクセスコントローラにてこの通常バッファに転送する第1の受信パケット転送工程と、通常バッファに格納された受信パケットを主制御部にてデータ処理する第1のデータ処理工程と、この通常バッファおよびこのメディアアクセスコントローラ間のこの受信パケットの転送をダイレクトメモリアクセス制御部で制御して、この主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、処理バッファに格納されたこの受信パケットをアクセラレータで復号化処理する復号化工程とを含むパケット処理は、一体化されたこのメディアアクセスコントローラおよびこのアクセラレータを使用し、この受信パケットがこの主制御手段で緊急にデータ処理すべき緊急パケットであるか否かをこのメディアアクセスコントローラで判定して、その結果、この受信パケットが緊急パケットである場合にはこの受信パケットをこの処理バッファに転送する第2の受信パケット転送工程を含み、第1の割込みをこの主制御部に送り、それ以外の場合には第1の受信パケット転送工程によりこの受信パケットを通常パケットとしてこの通常バッファに転送する第1の判定工程と、第1の割込みに応じて、この緊急パケットである受信パケットを主制御部にて優先的にデータ処理する第2のデータ処理工程とを含むことを特徴とする。
また、通常バッファに格納された送信パケットをこの主制御部にてデータ処理する第3のデータ処理工程と、この通常バッファにおける送信パケットをこのメディアアクセスコントローラにて外部に送信する第1の送信パケット転送工程と、この通常バッファおよびこのメディアアクセスコントローラ間のこの送信パケットの転送をダイレクトメモリアクセス制御部で制御して、この主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、この処理バッファに格納されたこの送信パケットをアクセラレータで暗号化処理する暗号化工程とを含むパケット処理方法は、一体化されたこのメディアアクセスコントローラおよびこのアクセラレータを使用し、第3のデータ処理工程は、この送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定工程を含み、その結果、緊急パケットである場合にはこの送信パケットをこの処理バッファに転送する第2の送信パケット転送工程を含み、それ以外の場合には第1の送信パケット転送工程によりこの送信パケットを通常パケットとしてこの通常バッファに転送し、さらに、該方法は、この送信パケットを優先的にデータ処理して、優先パケット送信指令をこのメディアアクセスコントローラに送る第4のデータ処理工程を含み、第2の送信パケット転送工程は、このメディアアクセスコントローラにて、この優先パケット送信指令に応じて、この緊急パケットである送信パケットを優先的に送信することを特徴とする。
本発明のパケット通信装置によれば、MACにおいて受信パケットが緊急パケットか否かを判定して、緊急パケットである場合、この緊急パケットを暗号化/復号化アクセラレータで用いる処理バッファに転送し、ここで、MACが主制御部に割込みを送って、緊急パケットを優先的に処理させて、主制御部が処理バッファ上で緊急パケットをデータ処理することにより、DMA転送などのパケット転送の際に優先度に応じてパケットを処理することができる。
このパケット通信装置では、優先パケットに係るデータは、MACおよびアクセラレータ間で直接転送されるので、DMA転送ではカウントされない。また、主制御部がメモリにアクセスして受信パケットを転送する処理を簡略化して、優先パケットの通常バッファおよび処理バッファ間の双方向の転送を省略し、受信パケットを高速処理することができる。また、優先パケットを、通常バッファではなく処理バッファ上で処理するため、バスの競合を回避して、効率のよい速度で処理することができる。さらに、アクセラレータの処理バッファを利用するので便宜に暗号化/復号化処理を行うことができ、かつ資源の節約を達成することができる。
また、本発明のパケット通信装置によれば、受信パケットの優先度を参照して優先パケットか否かを判定するので、緊急処理決定の具体的な方法を実現し、また、処理バッファを複数有して、優先パケット転送とパケット処理とをバッファリングで行うことにより、優先パケットを連続して受信した場合でも効率的に処理することができ、アクセラレータおよび主制御部の処理時間に余裕を与えて負担を軽くし、パケット処理の破綻を回避することができる。
次に添付図面を参照して、本発明によるパケット通信装置の実施例を詳細に説明する。たとえば、本発明のパケット通信装置10は、図1に示すように、主制御部12とメモリ14とを内部バス16を介して接続し、ダイレクトメモリアクセス(Direct Memory Access:DMA)制御部18で制御することにより、メディアアクセスコントローラ(Media Access Controller:MAC)20にて外部からパケットを受信してメモリ14に転送し、他方、メモリ14におけるパケットをMAC 20に転送して外部に送信する。パケット通信装置10は、とくに、MAC 20を暗号化/復号化アクセラレータ22と一体化して、このアクセラレータ22にて処理バッファ24におけるパケットを暗号化および復号化処理するもので、さらに処理バッファ24を用いて緊急に処理すべきパケットを効率よく転送してデータ処理する。なお、本発明の理解に直接関係のない部分は、図示を省略し、冗長な説明を避ける。
主制御部12は、本装置全体の動作を制御および統括する機能を有してCPU(Central Processing Unit)などで構成されるもので、本実施例では、プログラムに応じてパケット送受信処理を実行し、DMA制御部18を制御することができる。
たとえば、主制御部12は、パケットの受信処理を行う場合、DMA制御部18にパケット受信開始指令を通知してDMA制御部18をパケット受信可能状態にする。また、主制御部12は、このDMA制御部18から通知される割込み要求IRQ1に応じて、メモリ14に転送された受信パケットのデータ処理を開始する。
また、主制御部12は、パケットの送信処理を行う場合、送信するパケットをデータ処理してメモリ14に格納し、また、DMA制御部18にパケット送信開始指令を通知して、DMA制御部18がメモリ14内のパケットをMAC 20に転送して送信するように制御する。
また、主制御部12は、パケット送受信処理において復号化および暗号化処理が必要であると判断した場合、暗号化/復号化アクセラレータ22に復号化および暗号化指令を通知する。このとき、主制御部12は、メモリ14の通常バッファ26におけるパケットの復号化および暗号化処理が必要であると判断した場合、そのパケットを通常バッファ26からMAC 20の処理バッファ24に転送してから、復号化および暗号化指令を通知し、復号化および暗号化処理が終了したとき、DMA制御部18を制御して、処理したパケットを処理バッファ24から通常バッファ26に再度転送させる。
また、主制御部12は、パケット受信処理時において、MAC 20から供給される優先パケット転送完了を示す割込み要求IRQ2に応じて、処理バッファ24に格納された優先パケットなどの緊急に処理すべきパケットを優先的にデータ処理する。主制御部12は、処理バッファ24上の優先パケットに対してデータ処理を行ってよく、データ処理が終了したとき、DMA制御部18を制御して、優先パケットを処理バッファ24から通常バッファ26に転送させるとよい。
また、主制御部12は、受信した優先パケットのデータ処理において、この優先パケットの暗号化ヘッダを参照して、優先パケットが暗号化されている場合、アクセラレータ22に復号化指令を通知して復号化処理をさせる。
主制御部12は、通常バッファ26における通常パケットのデータ処理中に割込み要求IRQ2を受けたとき、その処理中の通常パケットのデータ処理が終了してから、優先パケットのデータ処理を開始するとよい。また、主制御部12は、優先パケットのデータ処理が終了してから、通常バッファ26に残っている通常パケットのデータ処理に戻るとよい。
また、主制御部12は、パケット送信処理時において、送信パケットをデータ処理する際に、緊急に処理すべきパケットであるか否かを判定し、本実施例では、優先パケットであるか否かを判定する。その結果、主制御部12は、優先パケットであると判定した場合、この優先パケットを通常バッファ26から処理バッファ24に転送し、処理バッファ24上の優先パケットに対してデータ処理を行ってよい。このような優先パケットを送信するイベントは、たとえば音響機器などの周辺機器からの外部割込みが主制御部12に送られて発生する。
また、主制御部12は、送信する優先パケットのデータ処理において、この優先パケットを暗号化すべきと判定した場合、アクセラレータ22に暗号化指令を通知して暗号化処理をさせる。主制御部12は、実際には、まだパケット化されていない優先パケットを通常バッファ26から処理バッファ24に転送するので、処理バッファ24上で暗号化前の優先パケットをパケット化するとよい。
主制御部12は、送信する優先パケットのデータ処理が終了したとき、MAC 20に優先パケット送信指令を通知して優先パケットを優先的に送信させる。
メモリ14は、RAM(Random Access Memory)などの記憶部で構成されて、送受信するパケットデータを一時格納する通常バッファ26を有する。また、メモリ14は、DMA制御部18のDMA転送に用いるディスクリプタ(descriptor)などの構造体28を有してもよく、このとき、メモリ14は、受信用および送信用のディスクリプタ28を有するとよい。また、メモリ14は、主制御部12が実行するパケット送受信処理を構成するプログラムを保持してもよい。
本実施例の通常バッファ26は、緊急に処理すべき優先パケットなどの緊急パケットではなく、通常パケットを格納するものである。
内部バス16は、バス調停部30とも接続し、バス調停部30は、内部バス16のバス使用権を主制御部12やDMA制御部18などの各部間で調停する。
DMA制御部18は、主制御部12を介さずにデータ転送を直接実行するメモリ制御回路で、本実施例では、MAC 20および通常バッファ26間のパケットデータのDMA転送を制御する。
たとえば、DMA制御部18は、主制御部12から供給される受信開始指令に応じて受信可能状態となる。受信可能状態のDMA制御部18は、パケットを受信したMAC 20からパケット受信通知を受けて、この通知に応じてMAC 20にて受信したパケットをメモリ14の通常バッファ26に転送する。
本実施例のDMA制御部18は、メモリ14から送受信ディスクリプタを読み出してこのディスクリプタに基づいてMAC 20におけるパケットのDMA転送を制御する。また、DMA制御部18自身が、この送受信ディスクリプタを備えてもよい。
MAC 20は、DMA制御部18に制御されて、外部から、たとえば高速LANを介して受信した受信パケットを内部バス16を介してメモリ14の通常バッファ26に転送し、他方、内部バス16を介して通常バッファ26から転送された送信パケットを外部に送信する。MAC 20は、FIFOメモリを備えて、受信および送信パケットを一時的に保持してから、それぞれを転送および送信するとよい。また、MAC 20は、DMA制御部18から受け渡されるディスクリプタ配列に応じて通常バッファ26とのパケット転送を行ってよい。
本実施例では特に、MAC 20は、暗号化/復号化アクセラレータ22と一体化され、図1において、MAC 20は、アクセラレータ22を含むように構成されるが、アクセラレータ22とともに一つの処理回路として構成されてもよく、別個のアクセラレータ22と直接的に接続されてもよい。また、図1において、MAC 20は、アクセラレータ22による暗号化/復号化処理で用いられる処理バッファ24を含むように構成され、処理バッファ24を用いて優先パケットなどの緊急パケットを格納する。本実施例のMAC 20と暗号化/復号化アクセラレータ22とは、連帯して動作する。
本実施例のMAC 20は、受信パケットが緊急パケットであるか否かを判定し、たとえば、優先パケットであるか否かを判定する。その結果、MAC 20は、優先パケットである場合には処理バッファ24に転送し、それ以外の場合には通常バッファ26に転送する。たとえば、MAC 20は、FIFOメモリに蓄えた受信パケットのパケットヘッダを参照して、その受信パケットが優先パケットか否かを判定することができる。
たとえば、IEEE802.1Qによれば、複数のハブにわたってVLAN(Virtual LAN)を構築するために、イーサネットのフレームを拡張して、パケットは、VLAN IDを含み、すなわち、拡張した4バイト部分にVLANタグを含んでいるので、VLANタグが優先度の定義として利用され得る。本実施例のMAC 20は、VLANタグにおける「ユーザ・プライオリティ」フィールドに格納される3ビットのCoS(Class of Service)値を、パケットの優先度として参照することができる。また、IPv6によれば、パケットヘッダには16段階の数値を設定できる優先度フィールドが設けられているので、MAC 20は、この優先度を参照することができる。
MAC 20は、受信した優先パケットを転送する場合、転送先であるアクセラレータ22または処理バッファ24から応答信号を受けて、この応答信号に応じて優先パケットを処理バッファ24に転送し、その後、主制御部12に対して優先パケット受信通知を示す割込み要求IRQ2を送る。
また、MAC 20は、送信パケットが優先パケットである場合に、通常バッファ26から内部バス16を介して供給される優先パケットを処理バッファ24に転送し、主制御部12から優先パケット送信指令を受けて処理バッファ24における優先パケットを外部に送信する。
暗号化/復号化アクセラレータ22は、主制御部12から設定される共通鍵や初期ベクタなどの復号化および暗号化の処理条件に基づいて、パケットを復号化および暗号化処理するもので、ハードウエアで構成されてこれらの処理を高速に行う。このアクセラレータ22は、たとえば、DES(Data Encryption Standard)方式などの暗号化/復号化方式を使用してよい。
本実施例の暗号化/復号化アクセラレータ22は、主制御部12から通知される復号化および暗号化指令に応じて、処理バッファ24におけるパケットを復号化および暗号化処理し、復号化および暗号化処理を完了した後、主制御部12に処理完了通知IRQ3を送る。
処理バッファ24は、復号化および暗号化処理用のバッファで、本実施例では特に、優先パケットなどの緊急パケット転送のためにも使用される。
次に、本実施例におけるパケット通信装置10の動作について、パケットを受信する動作を図2のシーケンスチャートを参照しながら説明する。
本実施例のパケット通信装置10では、まず主制御部12にてパケット受信処理のプログラムが実行されて、受信開始指令が主制御部12からDMA制御部18に通知される(S102)。
DMA制御部18では、受信開始指令に応じて受信可能状態(S104)となり、MAC 20において外部からのパケット受信が可能な状態となる。
次に、受信可能状態のMAC 20では、外部から、たとえば高速LANを介して第1の通常パケットが受信される(S106)。MAC 20では、ステップS106で受信したパケットはFIFOに一時格納され、このパケットの優先度が参照されて優先パケットであるか否かが判定され、ここでは通常パケットであると判定される。第1の通常パケットの受信S106に応じて、MAC 20からパケット受信通知がDMA制御部18に通知される(S108)。
DMA制御部18では、パケット受信通知S106に応じてDMA転送が実行され、このDMA転送に従って、通常パケット転送指示がMAC 20に通知され(S110)、MAC 20にて受信された第1の通常パケットが通常バッファ26に転送される(S112)。
さらに、MAC 20では、パケット転送S112に応じた転送完了通知がDMA制御部18へと通知され(S114)、DMA制御部18では、この転送完了通知S114に応じて、受信イベントを示す割込み要求IRQ1が主制御部12に送られる。
主制御部12では、割込み要求IRQ1に応じて、受信パケットのデータ処理が実行され(S116)、たとえば、通常バッファ26から通常パケットが順次読み出されてデータ処理されて、ここでは、第1の通常パケットが読み出されてデータ処理される。このとき、第1の通常パケットが暗号化されている場合、第1の通常パケットをアクセラレータ22の処理バッファ24に転送して復号化し、復号化後のパケットをデータ処理するとよい。
本実施例のMAC 20では、第1の通常パケットのデータ処理S116の間に、第2の通常パケットが受信される(S118)。このとき、MAC 20では、第2の通常パケットの受信S118に応じて、パケット受信通知がDMA制御部18に通知され(S120)、DMA制御部18において、パケット受信通知S120に応じてDMA転送が実行されて、通常パケット転送指示がMAC 20に通知され(S122)、MAC 20にて受信された第2の通常パケットが通常バッファ26に転送される(S124)。
また、本実施例では、MAC 20において、第1の通常パケットのデータ処理S116が終了する前に、優先パケットが受信される(S126)。MAC 20では、ステップS106で受信したパケットはFIFOに一時格納され、このパケットの優先度が参照されて優先パケットであるか否かが判定され、ここでは優先パケットであると判定される。また、図示しないが、MAC 20では、優先パケットの転送が処理バッファ24に通知され、処理バッファ24からの応答信号に応じて受信された優先パケットがアクセラレータ22の処理バッファ24に転送される(S128)。
さらに、MAC 20では、優先パケット転送S128が完了すると、優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られる。
本実施例では、主制御部12において、第1の通常パケットのデータ処理S116が終了する前に、割込み要求IRQ2が送られているので、第2の通常パケットのデータ処理の前に、優先パケットが優先的にデータ処理される(S130)。
ところで、本実施例のMAC 20では、優先パケットのデータ処理S130の間に、第3の通常パケットが受信される(S132)。このとき、MAC 20では、第3の通常パケットの受信S132に応じて、パケット受信通知がDMA制御部18に通知され(S134)、DMA制御部18において、パケット受信通知S134に応じてDMA転送が実行されて、通常パケット転送指示がMAC 20に通知され(S136)、MAC 20にて受信された第3の通常パケットが通常バッファ26に転送される(S138)。
また、主制御部12による優先パケットのデータ処理S130において、優先パケットが暗号化されている場合、復号化指令が発せられてアクセラレータ22に通知される(S140)。このとき、アクセラレータ22において、処理バッファ24における優先パケットは、復号化指令S140に応じて復号化され、復号化された優先パケットは、通常バッファ26に転送される(S142)。
このとき、第3の通常パケットの転送S138と、優先パケットの転送S142とが同時に行われて、内部バス16が競合することがあるが、その場合には、DMA制御部16またはバス調停部30により制御されて、同時に流れるように通常バッファ26への転送がなされてもよい。
ところで、第3の通常パケットの転送S138と、優先パケットの転送S142の競合において、第3の通常パケットは、優先パケットよりも優先度が低いので、優先パケットの転送を優先して第3の通常パケットの転送を保留し、優先パケット転送終了後に第3の通常パケット転送を行ってもよい。ここで、優先度の低いパケット転送は、その保留時間に応じて優先度を変えてもよく、保留時間が長い場合に優先度を一時的に高くしてもよい。また、優先度に応じて転送単位を変えてもよく、優先度の高い優先パケットは大きい単位で、優先度の低い第3のパケットは小さい単位で、それぞれ転送してもよい。これらの転送競合の際の転送手法は、受信時だけでなく送信時でも行われてよい。
主制御部12では、優先パケットのデータ処理S130が終了すると、通常バッファ26に格納されている通常パケットの順にしたがって、第2の通常パケットおよび第3の通常パケットが順次データ処理される(S144およびS146)。
他方、本実施例におけるパケット通信装置10の動作について、パケットを送信する動作を図3のシーケンスチャートを参照しながら説明する。
本実施例のパケット通信装置10では、まず主制御部12にてパケット送信処理のプログラムが実行されて送信パケットのデータ処理が行われ、ここでは、第1の通常パケット、第2の通常パケットおよび第3の通常パケットのデータ処理が行われる(S202、S204およびS206)。
主制御部12では、ステップS202、S204およびS206のデータ処理において、送信パケットが優先パケットか否かが判定されるが、ここでは、いずれも通常パケットであると判定される。ステップS202、S204およびS206のデータ処理の後、主制御部12から送信開始指令がDMA制御部18に通知される(S208)。
DMA制御部18では、送信開始指令S208に応じて、転送指示がMAC 20に通知され(S210)、MAC 20では、転送指示S210に応じて、通常バッファ26から通常パケットが順次転送されて、ここでは、第1の通常パケットが転送される(S212)。
さらに、MAC 20では、S212で転送された第1の通常パケットが外部へ、たとえば高速LANを介して送信され(S214)、第1の通常パケットの送信S214に応じて、送信通知がDMA制御部18に送られる(S216)。
次に、DMA制御部18では、第1の通常パケットの送信通知S216に応じて、転送指示がMAC 20に通知され(S218)、MAC 20では、この転送指示S218に応じて、通常バッファ26から第2の通常パケットが転送され(S220)、S220で転送された第2の通常パケットが外部へ送信される(S222)。
ところで、本実施例の主制御部12では、第2の通常パケットの転送S220と、第2の通常パケットの送信S222との間において、優先度の高い送信パケットがデータ処理される(S224)。主制御部12では、ステップS224のデータ処理において、送信パケットが優先パケットか否かが判定され、ここでは優先パケットであると判定される。
また、主制御部12では、優先パケットのデータ処理S224において、優先パケットの転送指示がアクセラレータ22に送られる(S226)。アクセラレータ22では、この転送指示S226に応じて、通常バッファ26から優先パケットが処理バッファ24へと転送される(S228)。
また、優先パケットの転送S228の後、主制御部12によるデータ処理S224は、処理バッファ24上の優先パケットに対して行われ、データ処理S224において、この優先パケットが暗号化して送信する必要があると判断された場合、暗号化指令がアクセラレータ22に送られる(S230)。アクセラレータ22では、この暗号化指令S230に応じて、処理バッファ24における優先パケットが暗号化される。
さらに、主制御部12では、第2の通常パケットの送信S222の後で、第3の通常パケットの転送前に、優先パケットの送信指令がMAC 20に送られる(S232)。
本実施例ではとくに、MAC 20において、この送信指令S232に応じて、第2の通常パケットの送信S222に応じたDMA制御部18への送信通知は、送られずに待機させられて、優先パケットが優先的に送信され、ここでは、処理バッファ24から優先パケットが転送され(S234)、S234で転送された優先パケットが外部へ送信される(S236)。このように、送信ディスクリプタに第3の通常パケットが残っている状態でも、優先パケットは、優先的に送信される。
次に、MAC 20では、優先パケットの送信S236が終了してから、第2の通常パケットの送信S222に応じた送信通知がDMA制御部18へ送られる(S238)。
DMA制御部18では、第2の通常パケットの送信通知S238に応じて、転送指示がMAC 20に通知され(S240)、MAC 20では、この転送指示S240に応じて、通常バッファ26から第3の通常パケットが転送され(S242)、S242で転送された第3の通常パケットが外部へ送信される(S244)。
また、他の実施例として、パケット通信装置10は、MAC 20において複数のバッファを有する処理バッファ24を備え、これらのバッファを使用してバッファリング(buffering)することにより、主制御部12による通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理などのパケット処理と、MAC 20による優先パケットの転送とを効率よく行うことができる。
この実施例によれば、たとえば、複数の処理バッファ24のうち、一方のバッファに優先パケットが転送されて、主制御部12がこの一方のバッファ上で優先パケットのデータ処理を行っているとき、MAC 20は、新たに受信した優先パケットを他方のバッファに転送することができる。
その後、主制御部12が一方のバッファ上におけるデータ処理を終了し、かつ、MAC 20が他方のバッファ上における優先パケット転送を完了すると、主制御部12は、他方のバッファ上の新たな優先パケットのデータ処理をすぐに始めることができる。
また、この実施例において、MAC 20は、複数の処理バッファ24の使用を調停するバッファ調停部50を有し、このバッファ調停部50は、論理回路で構成されてよい。バッファ調停部50は、複数の処理バッファ24のうち、いずれの処理バッファを優先パケット転送に用いるか、またはいずれの処理バッファが優先パケット転送中であるかを示すバッファ指定部52を含んでよい。バッファ調停部50およびバッファ指定部52は、MAC 20と主制御部12が同じ処理バッファに同時にアクセスしないように排他制御を行う機能を有する。
たとえば、MAC 20は、新たに優先パケットを受信したとき、バッファ指定部52を参照して優先パケットを転送すべきバッファを判定し、その判定結果のバッファへと、優先パケットを転送する。
MAC 20は、新たに受信した優先パケットを複数の処理バッファ24のいずれかに転送して完了したときに、優先パケット転送完了通知をバッファ調停部50に通知する。
また、主制御部12は、通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理などのパケット処理を行うとき、バッファ指定部52を参照してパケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行う。
主制御部12は、複数の処理バッファ24のいずれかにおいて、通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理を行って終了したときに、パケット処理終了通知をバッファ調停部50に通知する。このとき、主制御部12は、DMA制御部18を制御して、データ処理が終了した優先パケットを処理バッファから通常バッファに転送させるとよい。
また、本実施例のバッファ調停部50は、主制御部12からパケット処理終了通知を、またはMAC 20から優先パケット転送完了通知を受けたときに、バッファ指定部52の示すバッファを変換して更新する。
この実施例のパケット通信装置10において、たとえば、MAC 20が複数の処理バッファ24として2つの処理バッファ54および56を含み、バッファ調停部50がバッファ指定部52としてバッファ指定フラグを含んでもよい。
2つの処理バッファが用いられる場合には、バッファ指定フラグ52は、1ビットのフラグでよく、処理バッファ54および56は、それぞれ、バッファ指定フラグ52の値が0および1の場合に、優先パケットを転送すべきバッファとして用いられる。また、3つ以上の処理バッファが用いられる場合には、バッファ指定フラグ52は、処理バッファの数に応じた複数ビットのフラグが用いられる。この場合には、主制御部12における負担をより低減することができる。
次に、本実施例におけるパケット通信装置10について、2つの処理バッファ54および56を用いてパケットを受信する動作を図5のフローチャートを参照しながら説明する。
本実施例のパケット通信装置10では、まず、パケット受信処理が開始するとき(S302)、2つの処理バッファ54および56は空き状態となり、1ビットのバッファ指定フラグ52の値は0となる。
次に、ステップS304に進み、MAC 20において、第1の優先パケットが受信されると、バッファ調停部50にてバッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が0であるので、優先パケットを転送すべきバッファが処理バッファ54と判定されて、MAC 20によりこのバッファ54に対して第1の優先パケットが転送される。
このようにして、第1の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られる。このとき、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を1に設定して更新する。
次に、ステップS306に進み、主制御部12において、MAC 20からの割込み要求IRQ2に応じて、転送された優先パケットの優先的なデータ処理が開始される。このとき、主制御部12では、バッファ調停部50からパケット処理を行うべきバッファが示されるが、バッファ調停部50にて、バッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が0であるので、パケット処理を行うべきバッファが第1の優先パケットが転送されている処理バッファ54と判定されて、主制御部12によりこのバッファ54に対してパケット処理が行われる。
ところで、本実施例では、第1の優先パケットがデータ処理されている間に、MAC 20において、第2の優先パケットが受信される。このとき、バッファ調停部50にてバッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が1であるので、優先パケットを転送すべきバッファが処理バッファ56と判定される。MAC 20では、このバッファ56に対して第2の優先パケットが転送される。
このように、処理バッファ54上で第1の優先パケットのデータ処理を行っている間に、処理バッファ56へ第2の優先パケットを転送することができる。また、第2の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られ、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を再度0に設定して更新する。
次に、ステップS308に進み、主制御部12では、MAC 20から割込み要求IRQ2を受けているので、第1の優先パケットのデータ処理の終了後に、バッファ指定フラグ52の値を更新せずに、第2の優先パケットの優先的なデータ処理が開始される。このとき、主制御部12において、データ処理の対象となるバッファは、バッファ調停部50にて値が0であるバッファ指定フラグ52が参照されるので、第2の優先パケットが転送されている処理バッファ56と判定されて、主制御部12によりこのバッファ56に対してパケット処理が行われる。
また、主制御部12において、第2の優先パケットのデータ処理が終了したときに、MAC 20から新たな割込み要求IRQ2を受けていないならば、パケット処理終了通知がバッファ調停部50に通知され、バッファ調停部50において、バッファ指定フラグ52の値を再度1に設定して更新する。
さらに、ステップS310に進み、MAC 20において、第3の優先パケットが受信される。このとき、バッファ調停部50にて値が1であるバッファ指定フラグ52が参照されるので、優先パケットを転送すべきバッファが処理バッファ54と判定される。MAC 20では、このバッファ54に対して第3の優先パケットが転送される。
このように、処理バッファ54への第3の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られ、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を再度0に設定して更新する。
次に、ステップS312に進み、主制御部12において、MAC 20からの割込み要求IRQ2に応じて、第3の優先パケットの優先的なデータ処理が開始される。このとき、主制御部12において、データ処理の対象となるバッファは、バッファ調停部50にて値が0であるバッファ指定フラグ52が参照されるので、第3の優先パケットが転送されている処理バッファ54と判定されて、主制御部12によりこのバッファ54に対してパケット処理が行われる。
主制御部12において、第3の優先パケットのデータ処理が終了したときに、MAC 20から新たな割込み要求IRQ2を受けていないならば、パケット処理終了通知がバッファ調停部50に通知され、バッファ調停部50において、バッファ指定フラグ52の値を再度1に設定して更新する。
また、本発明のパケット通信装置は、ネットワーク機器に適用される場合には、複数の処理バッファを備えなくても、デュアルポートメモリなどの高価なハードウエアや、循環(リング状)バッファなどの複雑なデータ構造部を組み合わせて、MAC 20および主制御部12の両方からアクセス可能な構成を実現することができる。
また、本発明のパケット通信装置は、高速LANのみならず、優先度に応じたパケットの転送および処理を行う装置を用いる、すべての有線または無線ネットワークシステムに適用することができる。
たとえば、本発明のパケット通信装置は、WEBブラウザ機能付きのVoIP端末などに適用することができる。このような端末では、通話用音声パケットを暗号化して秘話に用いる場合や、通話中にWEBブラウザを使う場合に、本発明の構成が効果的である。
このVoIP端末において、秘話のために暗号化したパケットは、遅延や揺らぎの発生が抑えられ、高音質化を実現できる。また、WEBブラウザで表示するデータを受信する間に、暗号化した音声パケットを受信する場合、WEBブラウザデータを通常パケットとして受信し、秘話のために暗号化した音声パケットを、優先パケットとして受信することができる。
また、本発明によるVoIP端末では、他の端末にWEBサービスを提供する場合に、本発明の構成が効果的である。
他の端末のWEBブラウザを用いてこのVoIP端末に通信接続し、このVoIP端末が保持するアドレス帳などの情報を参照するような機能を実現する場合、VoIP端末から他の端末に送信するためのデータを通常パケットとし、VoIP通話のためのパケットを暗号化して優先パケットとすることができる。
10 パケット通信装置
12 主制御部
14 メモリ
16 内部バス
18 DMA制御部
20 MAC
22 暗号化/復号化アクセラレータ
24 処理バッファ
26 通常バッファ
28 ディスクリプタ
30 バス調停部
12 主制御部
14 メモリ
16 内部バス
18 DMA制御部
20 MAC
22 暗号化/復号化アクセラレータ
24 処理バッファ
26 通常バッファ
28 ディスクリプタ
30 バス調停部
Claims (19)
- 通常バッファに格納された送受信パケットをデータ処理する主制御手段と、
外部からの受信パケットを前記通常バッファに転送し、前記通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送受信パケットの転送を制御して、前記主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、
処理バッファに格納された前記送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置において、
該装置は、前記メディアアクセスコントローラおよび前記アクセラレータを一体化して構成し、
前記メディアアクセスコントローラは、前記受信パケットが前記主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを判定する第1の判定手段を含み、その結果、緊急パケットである場合には前記受信パケットを前記処理バッファに転送して、第1の割込みを前記主制御手段に送り、それ以外の場合には前記受信パケットを通常パケットとして前記通常バッファに転送し、
前記主制御手段は、第1の割込みに応じて、前記緊急パケットである受信パケットを優先的にデータ処理することを特徴とするパケット通信装置。 - 請求項1に記載のパケット通信装置において、第1の判定手段は、前記受信パケットが優先パケットであるか否かをその優先度に基づいて判定することにより、前記受信パケットが前記緊急パケットであるか否かを判定することを特徴とするパケット通信装置。
- 請求項1に記載のパケット通信装置において、前記主制御手段は、前記緊急パケットである受信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット通信装置。
- 請求項1に記載のパケット通信装置において、前記主制御手段は、前記通常バッファにおける前記通常パケットのデータ処理中に第1の割込みを受けたとき、その処理中の前記通常パケットのデータ処理が終了してから、前記緊急パケットのデータ処理を開始し、該緊急パケットのデータ処理が終了してから、前記通常バッファに残っている前記通常パケットのデータ処理に戻ることを特徴とするパケット通信装置。
- 請求項1に記載のパケット通信装置において、前記処理バッファは複数のバッファを有し、
前記メディアアクセスコントローラは、前記複数のバッファを交互に使用して前記緊急パケットを連続的に転送することを特徴とするパケット通信装置。 - 請求項5に記載のパケット通信装置において、前記メディアアクセスコントローラは、前記複数のバッファのうち、いずれのバッファを緊急パケット転送に用いるかを示すバッファ指定手段と、
該バッファ指定手段を参照して前記複数のバッファの使用を調停するバッファ調停手段を含むことを特徴とするパケット通信装置。 - 請求項6に記載のパケット通信装置において、前記複数のバッファは第1のバッファおよび第2のバッファを有し、
前記バッファ指定手段は、緊急パケット転送に第1のバッファを用いる場合には0の値を第2のバッファを用いる場合には1の値を示すフラグであり、初期状態では0の値を示し、
前記メディアアクセスコントローラは、新たに緊急パケットを受信したとき、前記バッファ指定手段を参照して前記緊急パケット転送に用いるバッファを判定し、その判定結果のバッファへと、前記緊急パケットを転送し、該緊急パケットの転送を完了したときに、優先パケット転送完了通知を前記バッファ調停手段に通知し、
前記主制御手段は、緊急パケットのデータ処理などのパケット処理を行うとき、前記バッファ指定手段を参照して前記パケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行い、該パケット処理を終了したときに、パケット処理終了通知を前記バッファ調停手段に通知し、
前記バッファ調停手段は、前記主制御手段から前記パケット処理終了通知を、または前記メディアアクセスコントローラから前記優先パケット転送完了通知を受けたときに、前記バッファ指定手段の示す値を変換して更新することを特徴とするパケット通信装置。 - 請求項1に記載のパケット通信装置において、
前記主制御手段は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送し、それ以外の場合には前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送り、
前記メディアアクセスコントローラは、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット通信装置。 - 通常バッファに格納された送受信パケットをデータ処理する主制御手段と、
外部からの受信パケットを前記通常バッファに転送し、前記通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送受信パケットの転送を制御して、前記主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、
処理バッファに格納された前記送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置において、
該装置は、前記メディアアクセスコントローラおよび前記アクセラレータを一体化して構成し、
前記主制御手段は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送し、それ以外の場合には前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送り、
前記メディアアクセスコントローラは、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット通信装置。 - 請求項9に記載のパケット通信装置において、前記主制御手段は、前記緊急パケットである送信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット通信装置。
- 外部から受信された受信パケットをメディアアクセスコントローラにて前記通常バッファに転送する第1の受信パケット転送工程と、
通常バッファに格納された受信パケットを主制御部にてデータ処理する第1のデータ処理工程と、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記受信パケットの転送をダイレクトメモリアクセス制御部で制御して、前記主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、
処理バッファに格納された前記受信パケットをアクセラレータで復号化処理する復号化工程とを含むパケット処理方法において、該方法は、
一体化された前記メディアアクセスコントローラおよび前記アクセラレータを使用し、
前記受信パケットが前記主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを前記メディアアクセスコントローラで判定して、その結果、前記受信パケットが緊急パケットである場合には前記受信パケットを前記処理バッファに転送する第2の受信パケット転送工程を含み、第1の割込みを前記主制御部に送り、それ以外の場合には第1の受信パケット転送工程により前記受信パケットを通常パケットとして前記通常バッファに転送する第1の判定工程と、
第1の割込みに応じて、前記緊急パケットである受信パケットを主制御部にて優先的にデータ処理する第2のデータ処理工程とを含むことを特徴とするパケット処理方法。 - 請求項11に記載のパケット処理方法において、第1の判定工程は、前記受信パケットが優先パケットであるか否かをその優先度に基づいて判定することにより、前記受信パケットが前記緊急パケットであるか否かを判定することを特徴とするパケット処理方法。
- 請求項11に記載のパケット処理方法において、第2のデータ処理工程は、前記緊急パケットである受信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット処理方法。
- 請求項11に記載のパケット処理方法において、第2のデータ処理工程は、前記主制御部において、前記通常バッファにおける前記通常パケットのデータ処理中に第1の割込みを受けたとき、その処理中の前記通常パケットのデータ処理が終了してから、前記緊急パケットのデータ処理を開始し、該緊急パケットのデータ処理が終了してから、前記通常バッファに残っている前記通常パケットのデータ処理に戻ることを特徴とするパケット処理方法。
- 請求項11に記載のパケット処理方法において、該方法は、複数のバッファを有する前記処理バッファを使用し、
第2の受信パケット転送工程は、前記メディアアクセスコントローラにおいて、前記複数のバッファを交互に使用して前記緊急パケットを連続的に転送することを特徴とするパケット処理方法。 - 請求項15に記載のパケット処理方法において、該方法は、前記複数のバッファのうち、いずれのバッファを緊急パケット転送に用いるかを示すバッファ指定部を参照して、前記複数のバッファの使用をバッファ調停部で調停するバッファ調停工程を含むことを特徴とするパケット処理方法。
- 請求項16に記載のパケット処理方法において、該方法は、第1のバッファおよび第2のバッファを有する前記複数のバッファを使用し、
緊急パケット転送に第1のバッファを用いる場合には0の値を第2のバッファを用いる場合には1の値を示すフラグであり、初期状態では0の値を示す前記バッファ指定部を使用し、
第2の受信パケット転送工程は、前記メディアアクセスコントローラにて、新たに緊急パケットを受信したとき、前記バッファ指定部を参照して前記緊急パケット転送に用いるバッファを判定し、その判定結果のバッファへと、前記緊急パケットを転送し、該緊急パケットの転送を完了したときに、優先パケット転送完了通知を前記バッファ調停部に通知し、
第1または第2のデータ処理工程は、前記主制御部にて、緊急パケットのデータ処理などのパケット処理を行うとき、前記バッファ指定部を参照して前記パケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行い、該パケット処理を終了したときに、パケット処理終了通知を前記バッファ調停部に通知し、
前記バッファ調停工程は、前記バッファ調停部にて、前記主制御部から前記パケット処理終了通知を、または前記メディアアクセスコントローラから前記優先パケット転送完了通知を受けたときに、前記バッファ指定部の示す値を変換して更新することを特徴とするパケット処理方法。 - 通常バッファに格納された送信パケットを前記主制御部にてデータ処理する第3のデータ処理工程と、
前記通常バッファにおける送信パケットを前記メディアアクセスコントローラにて外部に送信する第1の送信パケット転送工程と、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送信パケットの転送をダイレクトメモリアクセス制御部で制御して、前記主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、
前記処理バッファに格納された前記送信パケットをアクセラレータで暗号化処理する暗号化工程とを含むパケット処理方法において、該方法は、
一体化された前記メディアアクセスコントローラおよび前記アクセラレータを使用し、
第3のデータ処理工程は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定工程を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送する第2の送信パケット転送工程を含み、それ以外の場合には第1の送信パケット転送工程により前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、該方法は、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送る第4のデータ処理工程を含み、
第2の送信パケット転送工程は、前記メディアアクセスコントローラにて、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット処理方法。 - 請求項18に記載のパケット処理方法において、第4のデータ処理工程は、前記緊急パケットである送信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005273677A JP2007088709A (ja) | 2005-09-21 | 2005-09-21 | パケット通信装置およびその処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005273677A JP2007088709A (ja) | 2005-09-21 | 2005-09-21 | パケット通信装置およびその処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007088709A true JP2007088709A (ja) | 2007-04-05 |
Family
ID=37975267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005273677A Withdrawn JP2007088709A (ja) | 2005-09-21 | 2005-09-21 | パケット通信装置およびその処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007088709A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008283450A (ja) * | 2007-05-10 | 2008-11-20 | Mitsubishi Electric Corp | 監視制御方法および通信装置 |
WO2010074455A3 (en) * | 2008-12-23 | 2010-08-19 | Samsung Electronics Co., Ltd. | Urgent packet transmission/reception apparatus and method for digital broadcast system |
JP2017147488A (ja) * | 2016-02-15 | 2017-08-24 | 日本電信電話株式会社 | パケット処理システム及びパケット処理方法 |
EP3457646A1 (en) * | 2017-09-15 | 2019-03-20 | Kabushiki Kaisha Toshiba | Notification control device, notification control method, and computer-readable medium |
JP7435055B2 (ja) | 2020-03-10 | 2024-02-21 | オムロン株式会社 | 通信装置、通信装置の制御方法、および集積回路 |
-
2005
- 2005-09-21 JP JP2005273677A patent/JP2007088709A/ja not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008283450A (ja) * | 2007-05-10 | 2008-11-20 | Mitsubishi Electric Corp | 監視制御方法および通信装置 |
WO2010074455A3 (en) * | 2008-12-23 | 2010-08-19 | Samsung Electronics Co., Ltd. | Urgent packet transmission/reception apparatus and method for digital broadcast system |
JP2017147488A (ja) * | 2016-02-15 | 2017-08-24 | 日本電信電話株式会社 | パケット処理システム及びパケット処理方法 |
EP3457646A1 (en) * | 2017-09-15 | 2019-03-20 | Kabushiki Kaisha Toshiba | Notification control device, notification control method, and computer-readable medium |
US11188399B2 (en) | 2017-09-15 | 2021-11-30 | Kabushiki Kaisha Toshiba | Determining whether to suppress an interrupt indicating completion of processing of a frame based on priority of the frame and current value information |
JP7435055B2 (ja) | 2020-03-10 | 2024-02-21 | オムロン株式会社 | 通信装置、通信装置の制御方法、および集積回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7936772B2 (en) | Enhancement of end-to-end network QoS | |
US9565035B1 (en) | Enhanced audio video bridging (AVB) methods and apparatus | |
TWI416908B (zh) | 整體交換器資源管理器及其管理方法 | |
JP2009031954A (ja) | データ処理装置およびデータ転送方法 | |
JP2009506682A (ja) | ギガビット/10ギガビット・イーサネット(登録商標)・システムにおける明示的フロー制御 | |
JP2000151664A (ja) | デ―タ伝送方法 | |
JP2013534103A (ja) | 少なくとも部分的なフレーム送信の割り込み | |
EP1825644B1 (en) | Real-time packet processing system and method | |
JP2007088709A (ja) | パケット通信装置およびその処理方法 | |
US8838782B2 (en) | Network protocol processing system and network protocol processing method | |
JP4591582B2 (ja) | ネットワークアダプタ及び通信装置 | |
JP2004128810A (ja) | 端末装置、端末装置内の優先処理方法、およびプログラム | |
KR101676353B1 (ko) | 이종 네트워크 상의 메시지 제어 방법 및 장치 | |
US9438537B2 (en) | Method for cut through forwarding data packets between electronic communication devices | |
US20150281109A1 (en) | System for en-queuing and de-queuing data packets in communication network | |
JP2000270002A (ja) | Lan中継装置 | |
JP2006115197A (ja) | 送信装置および方法、記録媒体、プログラム、並びに制御装置 | |
JP2006279188A (ja) | 優先制御を行う送信制御装置、通信制御装置、通信システム、通信ネットワーク、及び送信方法 | |
US8107371B2 (en) | Apparatus and method for providing QoS of AV streams | |
WO2010023951A1 (ja) | セキュア通信装置、セキュア通信方法及びプログラム | |
US7233598B2 (en) | System and method for speculatively issuing memory requests while maintaining a specified packet order | |
JP5094532B2 (ja) | 通信装置 | |
CN116346720A (zh) | 一种传输信息的装置和方法 | |
US20080159320A1 (en) | Layer 3 switch device and its control method | |
JP2004343449A (ja) | パケット通信端末 |
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: 20081202 |