JP6291261B2 - Communication apparatus, control method, and program - Google Patents
Communication apparatus, control method, and program Download PDFInfo
- Publication number
- JP6291261B2 JP6291261B2 JP2014007269A JP2014007269A JP6291261B2 JP 6291261 B2 JP6291261 B2 JP 6291261B2 JP 2014007269 A JP2014007269 A JP 2014007269A JP 2014007269 A JP2014007269 A JP 2014007269A JP 6291261 B2 JP6291261 B2 JP 6291261B2
- Authority
- JP
- Japan
- Prior art keywords
- tcp
- identifier
- memory
- timer
- socket
- 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.)
- Expired - Fee Related
Links
Images
Description
本発明は通信装置、制御方法及びプログラムに関する。 The present invention relates to a communication device, a control method, and a program.
近年、汎用コンピュータ(PC)のみならず、コンピュータ組込機器においてもネットワークプロトコル処理を高速に実行することが要求される。しかし、ソフトウェア処理によるギガビットイーサネット(登録商標)の充分な処理速度は、コンピュータ組込機器が搭載するプロセッサの能力を遥かに超える。そこで、TOE(TCP/IP Offload Engine)といったプロトコル処理に特化した補助的デバイスを付加して、プロセッサに頼らず、広帯域なネットワーク通信を実現することが一般化している。 In recent years, not only general-purpose computers (PCs) but also computer embedded devices are required to execute network protocol processing at high speed. However, the sufficient processing speed of Gigabit Ethernet (registered trademark) by software processing far exceeds the capacity of the processor installed in the computer embedded device. Therefore, it is common to add a supplementary device specialized for protocol processing such as TOE (TCP / IP Offload Engine) to realize broadband network communication without depending on the processor.
一方で、TOEなどのプロトコル処理装置では、複数の通信装置との通信又は1つの通信相手との間の複数のコネクションによる通信を同時に実現するために、パケットを一時的に蓄積するための大容量のメモリリソースが用意されることとなる。これらのリソースは、プロトコル処理装置が同時に通信可能な最大数の通信を行っているか、通信が行われていない又は僅かな通信のみが行われているかによらず、すべてのリソースに電力を供給するため、消費電力面で効率的ではない。 On the other hand, a protocol processing device such as the TOE has a large capacity for temporarily storing packets in order to simultaneously realize communication with a plurality of communication devices or a plurality of connections with one communication partner. Memory resources will be prepared. These resources supply power to all resources regardless of whether the protocol processor is performing the maximum number of communications that can be communicated simultaneously, or if there is no communication or only a small amount of communication. Therefore, it is not efficient in terms of power consumption.
これに対して、特許文献1は、受信したパケットを一時的に蓄積するパケットバッファの有効バッファ数を受信したパケット量に応じて制御し、トラフィックが少ない時は一部のパケットバッファの電源供給を停止して消費電力を低減する手法を提案している。 In contrast, Patent Document 1 controls the effective number of packet buffers that temporarily store received packets according to the amount of received packets, and supplies power to some packet buffers when traffic is low. A method to stop and reduce power consumption is proposed.
TOEでは、パケットを一時的に蓄積するメモリリソースだけでなく、プロトコル処理の高速化を図るため、さまざまなハードウェア(HW)リソース及びオンチップメモリリソースが用いられる。これらのリソースは、同時通信可能な最大数に対応する数だけ保持されるべきであるものが多く、パケットを蓄積するためのメモリリソースと同様に、少量の通信の際においてもHW全体に電源が供給されることにより、多くの電力を消費してしまう。 In the TOE, not only memory resources for temporarily storing packets, but also various hardware (HW) resources and on-chip memory resources are used for speeding up protocol processing. Many of these resources should be retained corresponding to the maximum number that can be communicated at the same time. Similarly to memory resources for accumulating packets, the entire HW can be powered even in a small amount of communication. A large amount of power is consumed by being supplied.
特許文献1に示す方法は、メモリリソースの制御のみを対象としており、TOEのような、様々のHWリソース及びオンチップメモリを必要とする構成では、すべての電源を制御することができないという課題があった。また、特許文献1に記載の手法は、受信したパケットの量により予測的に電源の供給を行うものであり、実際の通信で要求されるリソースの電源を細かく制御できないという課題もあった。 The method shown in Patent Document 1 is intended only for control of memory resources, and in a configuration that requires various HW resources and on-chip memory such as TOE, there is a problem that not all power sources can be controlled. there were. In addition, the technique described in Patent Document 1 supplies power in a predictive manner according to the amount of received packets, and there is a problem that the power of resources required in actual communication cannot be finely controlled.
本発明は上記課題に鑑みなされたものであり、実際の通信の状況に応じた、通信処理のためのリソースの細かい電源供給及び停止制御を行うことを目的とする。 The present invention has been made in view of the above problems, and an object thereof is to perform detailed power supply and stop control of resources for communication processing in accordance with actual communication conditions.
上記目的を達成するため、本発明による通信装置は、TCPプロトコルの処理のために用いられ、複数のTCPソケットの各々に対応する複数のタイマと、TCPプロトコルの処理のために用いられ、前記複数のTCPソケットの各々に対応する複数のメモリと、前記複数のTCPソケットの各々を示す識別子と、当該各識別子が示すTCPソケットにおけるTCPプロトコル処理に用いる前記タイマおよび前記メモリと、を対応させて管理する管理手段と、新たなTCPソケットを利用したTCP通信が開始された場合、当該新たなTCPソケットに、前記新たなTCPソケットを示す第1の識別子を割り当てる割当手段と、前記割当手段により前記第1の識別子が割り当てられた場合、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して開始する開始手段と、前記第1の識別子に対応するTCPソケットが解放された場合に、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して停止する停止手段と、を有する。
In order to achieve the above object, a communication apparatus according to the present invention is used for TCP protocol processing, and is used for TCP protocol processing, a plurality of timers corresponding to each of a plurality of TCP sockets, A plurality of memories corresponding to each of the TCP sockets, an identifier indicating each of the plurality of TCP sockets, and the timer and the memory used for TCP protocol processing in the TCP socket indicated by each identifier are managed in association with each other And when the TCP communication using the new TCP socket is started , the assigning means for assigning a first identifier indicating the new TCP socket to the new TCP socket, and the assigning means 1 is assigned to the first identifier managed by the management means. Start means for collectively starting power supply and clock supply to the corresponding timer and the memory, and the TCP managed by the management means when the TCP socket corresponding to the first identifier is released Stop means for collectively stopping power supply and clock supply to the timer and the memory corresponding to one identifier .
本発明によれば、実際の通信の状況に応じた、通信処理のためのリソースの細かい電源供給及び停止制御を行うことができる。 According to the present invention, it is possible to perform detailed power supply and stop control of resources for communication processing according to actual communication conditions.
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
(通信装置の構成)
図1を用いて、本実施形態に係る通信装置の構成例について説明する。図1の通信装置において、主プロセッサ101は、システムバス102を介して、後述する各構成に接続されている。なお、システムバス102は、英国ARM社が提唱するAMBA 3.0 AXI(Advanced eXtensible Interface)仕様に代表されるクロスバースイッチ構造のオンチップバスである。システムバス102は、通信装置に要求される送受信データの並行転送動作が可能である。なお、主プロセッサ101は、通信装置全体の制御を実行するコンピュータである。
(Configuration of communication device)
A configuration example of the communication apparatus according to the present embodiment will be described with reference to FIG. In the communication apparatus of FIG. 1, the
割込制御部106は、各構成やTOEサブシステム105からの割込イベントを主プロセッサ101に伝達する。タイマ107は、ソフトウェアなどによって起動され、時間計測やタイムアウトイベントを発生させる。汎用入出力(IO)インタフェース114に接続された入力キー115は、通信装置の動作モードの設定や、IPアドレスに代表される各種通信パラメータの入力を受け付けるための機能部である。表示制御部108に接続された表示部109は、通信装置の状態、アプリケーションの状態、設定内容などを表示する。主DMA制御部112は、通信装置内のダイレクトメモリアクセス(DMA)を制御するコントローラ(DMAC)である。
The
二次記憶制御部110に接続されたハードディスク(HD)装置111は、通信装置の機能を実現するソフトウェアとその関連データ、各サブシステムのサブプロセッサが実行するファームウェアとその関連データなどを格納する。HD装置111は、さらに、通信装置の動作履歴や通信履歴などの履歴情報を格納する。なお、通信装置の機能を実現するソフトウェアには、オペレーティングシステム(OS)、通信装置の各機能を実現するアプリケーションソフトウェア、アプリケーションプロトコル、関連ハードウェアを制御するためのデバイスドライバなどが含まれる。
The hard disk (HD)
メモリ制御部117に接続されたFlashメモリ118は、書き換え可能な不揮発性メモリであり、SRAM119は、書き換え可能な揮発性メモリである。Flashメモリ118及びSRAM119の少なくともいずれかに、通信装置の起動時に動作するブートプログラム、通信装置の初期状態の設定に使用されるパラメータなどが格納される。Flashメモリ118及びSRAM119の少なくともいずれかは、さらに、通信装置の起動時に各構成(ハードウェア)を制御するためのデバイスドライバ、各構成の起動時の設定パラメータなどを格納する。主プロセッサ101は、Flashメモリ118及びSRAM119の少なくともいずれかに格納されたブートプログラムを実行する。
The
主メモリ制御部103に接続された主メモリ104は、例えば、主プロセッサ101のワークメモリとして機能する。例えば、主プロセッサ101は、通信装置の各ハードウエアとサブシステムとを初期化した後、HD装置111に格納されているソフトウェアを主メモリ104にロードしてOSを起動する。また、主プロセッサ101は、サブシステムの初期化時にTOEサブシステム105に内蔵されているサブプロセッサA〜E(201〜205)が実行する各ファームウエアを主メモリ104上に展開して、各サブプロセッサを起動する。各サブプロセッサ201〜205は主メモリ104上に展開された各ファームウエアを、各サブプロセッサに内蔵する命令キャッシュメモリにロードして、ファームウエアプログラムを実行する。主メモリ104は複数のブロックに分割されており、主メモリ制御部103は、このブロックごとに電源の供給とその停止とを指示することができる。
The
TOEサブシステム105は、通信装置が有線ネットワーク120に接続するための機能部である。TOEサブシステム105の詳細については後述する。無線LANサブシステム113は、通信装置がIEEE802.11a/b/g/n規格に準拠する無線LANネットワークに接続するための機能部である。汎用バスインタフェース116は、通信装置をUSBやIEEE1394などのシリアルバスに接続する。
The
(TOEサブシステムの構成)
続いて、図2を用いて、本実施形態に係るTOEサブシステム105の構成例について詳細に説明する。
(Configuration of TOE subsystem)
Next, a configuration example of the
バスブリッジ206は、TOEサブシステム105の内部バスであるサブシステムバス208とシステムバス102とを接続する。なお、サブシステムバス208は、例えばクロスバースイッチ接続である。TOEサブシステム105は、5つのサブプロセッサ201〜205を有し、これらのサブプロセッサによるマルチプロセッサ処理により、主システムからTCP/IPプロトコル処理をオフロードし、このプロトコル処理を高速に実行する。共有メモリ215は、サブプロセッサ201〜205間の通信と情報共有のためのメモリである。通信タイマ216は、TCP/IPプロトコル処理に必要な時間計測およびタイムアウトイベントを発生させる。
The
図3を用いて、本実施形態に係るTOEサブシステム105のサブプロセッサ201〜205の役割について説明する。TCP/IPプロトコル処理は、アプリケーション層301、ソケットAPI302、トランスポート層(TCP/UDP層)303、インターネット層(IP層)304、MACドライバ305、MAC層306、PHY層307の階層構造を有する。ここで、TOEサブシステム105は、図3の310で示される部分を処理する機能を有する。すなわち、TOEサブシステム105は、TCP/UDP層303、IP層304、MACドライバ305の(処理)機能と、ソケットAPI302の一部の機能とを有する。なお、TCP/UDP層303はTCPプロトコルとUDPプロトコルとを処理し、IP層304はIPプロトコルを処理する。また、MACドライバ305はMAC層306との間で通信データと通信情報を交換する機能であり、ソケットAPI302はアプリケーション通信のAPIである。TOEサブシステム105は、これら機能を各サブプロセッサに分散して処理を行う。
The role of the
例えば、ソケットAPI302の一部の処理をサブプロセッサ201に割り当てる。そして、TCPプロトコルとUDPプロトコルとの処理のうち受信動作315に関する処理をサブプロセッサ202に割り当て、送信動作316に関する処理をサブプロセッサ203に割り当てる。さらに、MACドライバ305とIPプロトコルとの処理のうち、受信動作315に関する処理をサブプロセッサ204に割り当て、送信動作316に関する処理をサブプロセッサ205に割り当てる。このように処理を分散することにより、一連のプロトコル処理を3つのパイプラインステージ311〜313に分割し、パイプライン動作を行うことが可能となる。また、送信動作316と受信動作315とを分けることで、それぞれの機能を担当するサブプロセッサ同士を並列的に動作させることが可能となる。
For example, a part of the processing of the
本実施形態では、各サブプロセッサ間の処理データの伝達と制御情報の共有は共有メモリ215を介して行われる。例えば、TCPは転送データの到達保証を行う観点から、受信側から送信側に対して、確認応答と称する到達確認情報をコネクション間で伝達する。この確認応答を行うには、サブプロセッサ202とサブプロセッサ203との間で確認応答の伝達(314)がされることとなる。TOEサブシステム105では、このようなTCPの制御情報の伝達を、共有メモリ215を介して行う。なお、サブプロセッサ間における到達確認情報の伝達と制御情報の共有は主メモリ104を用いて行ってもよい。なお、TOEサブシステム105では、TCP処理に必要となる制御情報は、後述のTCBコントローラ218を用いて共有する。
In this embodiment, transmission of processing data and sharing of control information between the sub-processors is performed via the shared
TOEサブシステム105は、有線ネットワーク120に接続するためのハードウェアとしてPHY214とMAC(Media Access Controller)213とを備える。PHY214は、OSI参照モデルの物理層(第1層)のプロトコル処理と電気信号を扱う。MAC213は、OSI参照モデルのデータリンク層(第2層)の下位副層に相当するMAC層のプロトコルを処理する。
The
図2に戻り、データパス制御部212は、受信パケットデータと送信パケットデータとを、例えば、主メモリ104または共有メモリ215とMAC213との間でDMA転送する機能を有する。データパス制御部212は、転送処理中にパケットデータのチェックサム演算を行う。検索装置207は、連想メモリを有し、プロトコル処理の様々な管理情報の格納と検索処理を行う。
Returning to FIG. 2, the data path control
TOEサブシステム105は、さらに、TCPによる通信処理のための制御情報を格納するためのメモリをコントロールするTCBコントローラ218を有する。また、TOEサブシステム105は、さらに、IPのリアセンブル処理において受信したパケット(フラグメント)の情報を管理するビットマップコントローラ219と、同時のプロトコル処理数を管理するIDマネージャ217とを有する。なお、IDマネージャ217は、同時に並行して存在するリアセンブルされるデータの数とTCPソケット数との少なくともいずれかを、処理の単位として識別子(ID)によって管理する。また、IDマネージャ217は、電源制御部220を有し、通信プロトコルの処理のために用いられ、個別に電源供給とその停止とを制御可能な複数のブロックをそれぞれが有するハードウェアリソースに対して、各ブロックの電源供給及び停止の制御を行う。
The
なお、TOEサブシステム105は、暗号通信プロトコル処理を実行する。暗号通信プロトコルは、例えば、IPsec(Security Architecture for Internet Protocol)である。なお、暗号通信プロトコルは、例えば、SSL(Secure Socket Layer)、TLS(Transport Layer Security)であってもよい。これらの暗号通信プロトコル処理のため、TOEサブシステム105は、鍵管理部209、乱数発生器210、暗号器211を有する。鍵管理部209は、暗号通信プロトコル処理のために生成した暗号鍵、乱数、素数を機密に保持する。乱数発生器210は、暗号処理に必要となる乱数値を生成する。暗号器211は、例えばAES(Advanced Encryption Standard)暗号器である。また、暗号器211は、さらに、認証やディジタル署名などに使われるSHA−1(Secure Hash Algorithm 1)、RFC2121として標準化されているMD5(Message Digest 5)などのハッシュ関数器を含む。
The
TOEサブシステム105は、TCPソケットごとの、通信タイマ216、TCBコントローラ218の管理するメモリ領域、検索装置207の検索エントリ、主メモリ104のソケットバッファといったリソースを用意する。各リソースは、同時にコネクションの確立が可能なTCPソケットの最大数分に対応する、電源の供給及び停止制御が可能な複数のブロックを有する。そして、各ブロックは、IDマネージャ217で管理するTCPソケットの識別子(ID)に関連付けて管理される。すなわち、IDごとに、各ブロックに対する電源の供給及びその停止を制御することが可能な構成となっている。電源制御部220は、IDに対応するTCPソケットによる通信の開始または終了に応じて、IDに対応する、1つ以上のリソースのそれぞれのブロックに対して、一括して電源の供給または電源の供給の停止を実行するような制御を行う。
The
また、TOEサブシステム105は、1つのデータにリアセンブルされるフラグメントの集合ごとに、通信タイマ216、ビットマップコントローラ219、検索装置207の検索エントリ、主メモリ104のIPリアセンブルバッファ等のリソースを用意する。各リソースは、同時にIPリアセンブル処理が可能なフラグメントの集合の最大数分に対応する、電源の供給及び停止制御が可能な複数のブロックを有する。そして、各ブロックは、IDマネージャ217で管理するリアセンブルされるデータの識別子(ID)に関連づけて管理される。すなわち、IDごとに、各ブロックに対する電源の供給及びその停止を制御することが可能な構成となっている。電源制御部220は、IDに対応する1つのリアセンブルされるデータのフラグメントの集合の通信の開始または終了に応じて、各リソースのIDに対応するブロックに対して、一括して電源の供給、または電源の供給の停止を実行するような制御を行う。
Further, the
なお、主メモリ104の電源制御についてはIDマネージャ217内の電源制御部220からの指示により主メモリ制御部103で行う。各ハードウェア(HW)リソースと電源制御部220とは、電源制御ポート221で接続されており、IDマネージャ217からの指示により、電源制御部220は電源制御ポートを介して各HWリソースの電源制御を行う。
Note that power control of the
本実施形態では、1つ以上のリソースのそれぞれについての複数のブロックのうちの1つが1つのIDに対応付けられ、1つのIDに対応する通信の開始及び終了に応じて、対応するブロックに対して電源の供給及びその停止をするように制御されるとした。しかしながら、このような構成でなくてもよい。すなわち、1つのブロックは複数のIDに対応付けられていてもよい。なお、1つのブロックに複数のIDが対応付けられている場合は、1つのブロックに対応する複数のIDの少なくとも1つについての通信が開始された場合に、そのブロックへの電源供給が実行されるように制御が行われる。また、この場合、そのブロックに対応する複数のIDの全てについての通信が終了したことに応じて、このブロックへの電源供給が停止されるように制御が行われる。 In this embodiment, one of a plurality of blocks for each of one or more resources is associated with one ID, and corresponding to the corresponding block according to the start and end of communication corresponding to one ID. The power supply is controlled to be supplied and stopped. However, such a configuration is not necessary. That is, one block may be associated with a plurality of IDs. When a plurality of IDs are associated with one block, power supply to the block is performed when communication is started for at least one of the plurality of IDs corresponding to the one block. Control is performed as follows. In this case, control is performed so that power supply to this block is stopped in response to the end of communication for all of the plurality of IDs corresponding to that block.
また、電源の供給及びその停止を制御するのに代えて、クロックの供給とその停止が実行されるように制御が行われてもよい。また、本実施形態では、プロトコル処理の種別として、TCPソケットにおけるプロトコル処理およびIPフラグメントパケットのリアセンブル処理が用いられる場合について説明するが、UDP処理等の他のプロトコル処理の種別が用いられてもよい。 Further, instead of controlling the supply of power and its stop, control may be performed so that the supply and stop of the clock are executed. In this embodiment, the case where protocol processing in a TCP socket and IP fragment packet reassembly processing are used is described as the type of protocol processing. However, other types of protocol processing such as UDP processing may be used. Good.
(TCPソケット作成処理)
続いて、サブプロセッサ202またはサブプロセッサ203において実行される、本実施形態に係るTCPソケット作成処理の流れについて、図4及び図5を用いて説明する。この処理は、例えば、電源制御に対応する通信プロトコルの処理の単位が、1つのTCPソケットによる通信に関するものである場合の処理である。なお、以下では、サブプロセッサ202またはサブプロセッサ203を、単に「サブプロセッサ」と総称する。
(TCP socket creation processing)
Next, the flow of TCP socket creation processing according to the present embodiment, which is executed by the
まず、図4のS401において、サブプロセッサは、IDマネージャ217にTCPソケットの識別子(TCPソケットID)の取得を要求し、IDマネージャ217からTCPソケットIDを受け取る。このときの、IDマネージャ217におけるTCPソケットID取得の処理の流れについて、図5を用いて詳細に説明する。
First, in S401 of FIG. 4, the sub processor requests the
S501において、IDマネージャ217は、現在のTCPソケットIDカウンタが最大値に達しているかを調べる。すなわち、IDマネージャ217は、現在使用しているTCPソケットの数が、同時に取り扱える最大値に既に達しているかを判定する。そして、IDマネージャ217は、TPCソケットの最大値に達していた場合はエラーを出力して(S513)、処理を終了し、最大値に達していなかった場合は、処理をS502へ進める。
In step S501, the
S502では、IDマネージャ217は、自らが保持しているTCPソケットID値から(任意の)ID値を1つ選択する。すなわち、S502で、新たに作成されるTCPソケットへのIDの割当処理が実行される。TCPソケットID値は、FIFOを利用してID値を格納し、又はビットマップを用いて保持するなど、ID値を保持できる所定の方法で保持される。なお、IDマネージャ217は、同時に取り扱うことができるTCPソケットの最大値の数の分だけ、ID値を保持していてもよいし、それより多くのID値を保持していてもよい。
In S502, the
続いて、IDマネージャ217は、TCPソケットIDに対応するTCPタイマのブロックに電源が供給されているかを判定し(S503)、ブロックに電源が供給されていない場合は処理をS504へ進め、供給されている場合は処理をS505へ進める。ここで、「ブロック」は電源の供給を管理する単位であり、1つのブロックに対して個別に電源供給とその停止とを制御することができる。なお、ブロックは単一のIDに対応付けられていてもよいし、複数のIDに対応付けられていてもよい。S504では、IDマネージャ217は、TCPソケットIDに対応するTCPタイマのブロックに対する電源供給を通信タイマ216に指示し、処理をS505へ移す。
Subsequently, the
S505では、IDマネージャ217は、TCPソケットIDに対応する検索装置207のTCPソケット検索テーブルのエントリブロックに電源が供給されているかを調べる。そして、処理は、ブロックに電源が供給されていない場合はS506へ進み、供給されている場合はS507へ進む。S506では、IDマネージャ217は、TCPソケットIDに対応するTCPソケット検索テーブルの検索エントリのブロックに対する電源供給を検索装置207に指示し、処理をS507へ進める。
In S505, the
S507では、IDマネージャ217は、TCPソケットIDに対応するTCBコントローラ218が管理しているメモリ領域のブロックに電源が供給されているかを調べる。そして、処理は、ブロックに電源が供給されていない場合はS508へ進み、供給されている場合はS509へ進む。S508では、IDマネージャ217は、TCPソケットIDに対応するTCBコントローラ管理のメモリ領域のメモリブロックに対する電源供給をTCBコントローラ218に指示し、処理をS509へ進める。
In S507, the
S509では、IDマネージャ217は、TCPソケットIDに対応するTCPソケットバッファ領域の主メモリブロックに電源が供給されているか調べる。そして、処理は、主メモリブロックに電源が供給されている場合はS511へ進み、供給されていない場合はS510へ進む。S510では、IDマネージャ217は、TCPソケットIDに対応する主メモリ104のTCPソケットバッファ領域の主メモリブロックに対する電源供給を主メモリ制御部103に指示し、処理をS511へ進める。
In step S509, the
S511では、IDマネージャ217は、S502で選択した(割当処理により割り当てられた)ID値を出力し、S512でTCPソケットIDの使用数を管理するカウンタをインクリメントして、処理を終了する。
In S511, the
なお、本実施形態では、上述の手順で電源の供給指示を行ったが、各ハードウェアリソースに対して電源の供給ができればどのような手順で行ってもよい。例えば、S503〜S504の処理とS505〜S506の順序は逆にされてもよいし、その他の処理についても順序が変更されてもよい。また、上述の各ブロックのうちの1つ以上について常に電源が供給されている場合は、そのブロックについて電源が供給されているかの判定及び電源供給指示の処理は省略されてもよい。 In the present embodiment, the power supply instruction is performed according to the above-described procedure. However, any procedure may be used as long as power can be supplied to each hardware resource. For example, the order of S503 to S504 and the order of S505 to S506 may be reversed, and the order of other processes may be changed. In addition, when power is constantly supplied to one or more of the above-described blocks, the determination of whether power is supplied to the block and the processing of the power supply instruction may be omitted.
図4に戻ると、上述のようにして、TCPソケットIDが、IDマネージャ217からサブプロセッサへ受け渡される(S401)と、サブプロセッサは、S402において、S401で取得した結果を調べる。そして、ID値が取得できずエラーが出力されていた場合は、サブプロセッサは、ソケット作成失敗を出力して(S408)、処理を終了する。一方、ID値が取得できた場合は、処理はS403へ進む。
Returning to FIG. 4, as described above, when the TCP socket ID is transferred from the
S403では、サブプロセッサは、取得したID値に対応したTCBコントローラ管理のメモリ領域をロードする指示をTCBコントローラ218に行う。そして、S404において、サブプロセッサは、TCBコントローラ218にTCPコネクションの情報を書き込み、ソケット情報の初期化を行う。続いて、サブプロセッサは、取得したTCPソケットIDに対応した通信タイマ216のTCPタイマを設定して起動する(S405)。そして、サブプロセッサは、取得したTCPソケットIDに対応した検索装置207のTCPソケット検索テーブルの検索エントリにTCPソケット検索情報を登録し(S406)、ソケット作成成功を出力して(S407)、処理を終了する。なお、これらのステップの順序等は変更されてもよい。
In step S403, the sub processor instructs the
(TCPソケットID初期化処理)
続いて、図6を用いて、主プロセッサ101によるTCPソケットID初期化処理の流れについて説明する。なお、本実施形態では主プロセッサがTCPソケットID初期化処理を行うが、TOE内のサブプロセッサがこの処理を実行してもよい。なお、この処理は、例えば、通信装置の電源が投入された際に実行され、この処理の後に、上述の図4及び図5の処理が実行される。
(TCP socket ID initialization process)
Next, the flow of TCP socket ID initialization processing by the
主プロセッサ101は、S601において、TCPソケットIDの最大値をIDマネージャ217に設定する。この設定値はシステムごとに決定するTCPソケットの最大同時コネクション数である。その後、主プロセッサ101は、TCPソケットID値の最大数分のソケットバッファ領域を主メモリ104上に確保する(S602)。この領域は、主メモリ制御部103の制御により電源制御が可能な領域に確保される。なお、本実施形態では、主メモリ上にソケットバッファを確保する場合について説明しているが、バッファごとに電源制御可能なメモリ領域であれば、他のメモリ上にソケットバッファが確保されてもよい。
In step S <b> 601, the
続いて、主プロセッサ101は、S602で確保したソケットバッファの位置情報をIDマネージャ217に設定する(S603)。IDマネージャ217は、この設定情報に基づいて、TCPソケットによる通信の開始または終了時(すなわち、TCPソケットIDが取得され、開放された際)の電源制御の指示を行う。主プロセッサ101は、その後、TCBコントローラ用のメモリ領域をTCBコントローラ218に設定する(S604)。TCBコントローラ218は、この設定情報に基づいて、サブプロセッサの指示により、TCPソケットIDに対応したメモリ領域のロード又はアンロードを行う。そして、主プロセッサ101は、TCPソケット検索用の検索テーブルの、検索装置207に対する設定を行う(S605)。その後、主プロセッサ101は、IDマネージャ217に対して、TCPソケットIDに関連づけられたハードウェアリソースの電源制御を開始すべき旨を示す指示を行い(S606)、処理を終了する。なお、上述の各ステップは、順序が変更されてもよいし、一部のステップが削除されてもよい。
Subsequently, the
(TCPソケット解放処理)
続いて、サブプロセッサ202またはサブプロセッサ203において実行される、本実施形態に係るTCPソケット解放処理の流れについて、図7及び図8を用いて説明する。なお、以下では、サブプロセッサ202またはサブプロセッサ203を、単に「サブプロセッサ」と総称する。
(TCP socket release processing)
Subsequently, the flow of the TCP socket release process according to the present embodiment, which is executed in the
まず、あるTCPソケットによる通信が終了した場合、サブプロセッサは、図7のS701において、検索装置207のTCPソケットID値に対応した領域のエントリを削除する。そして、サブプロセッサは、TCBコントローラ218のTCPソケットID値に対応したTCPソケット情報をクリアし(S702)、TCPソケットID値に対応したTCPタイマを停止する(S703)。サブプロセッサは、さらに、S704において、TCPソケットID値をIDマネージャ217に返却して、処理を終了する。
First, when communication using a certain TCP socket is completed, the sub processor deletes the entry in the area corresponding to the TCP socket ID value of the
ここで、図8を用いて、S704においてTCPソケットID値が返却された場合の、IDマネージャ217が実行するTCPソケットID返却処理について説明する。IDマネージャ217は、S801において、返却されたID値を、保持しているTCPソケットID値に追加する。すなわち、IDマネージャ217は、返却されたID値を、その後に新規に開始されるTCPソケットによる通信に対して割り当てるための候補に追加して保持しておく。
Here, the TCP socket ID return process executed by the
そして、IDマネージャ217は、返却されたID値に対応する各ハードウェアリソースのブロックについて、電源供給の停止を指示する。具体的には、S802においてID値に対応するTCPタイマの電源停止が通信タイマ216に対して指示され、S803において、ID値に対応するTCPソケット検索テーブルのエントリの電源停止が検索装置207に対して指示される。また、S804において、ID値に対応するTCBコントローラ用のメモリ領域の電源停止がTCBコントローラに指示され、S805において、ID値に対応する主メモリ104上のソケットバッファ領域の電源停止が主メモリ制御部103に指示される。そして、IDマネージャ217は、S806において、TCPソケットIDの使用数を管理するカウンタをデクリメントして、処理を終了する。なお、上述の各ステップについても、例えば電源停止の指示の順序が変更されてもよいし、一部のステップが削除されてもよい。
Then, the
(IPリアセンブル開始処理)
続いて、サブプロセッサ204において実行される、本実施形態に係る新規のIPリアセンブルの開始処理について、図9及び図10を用いて説明する。この処理は、例えば、電源制御に対応する通信プロトコルの処理の単位が、1つのデータにリアセンブルされるフラグメントの集合の通信に関するものである場合の処理である。
(IP reassembly start processing)
Next, a new IP reassembly start process according to the present embodiment, which is executed by the
まず、図9のS901において、サブプロセッサ204は、IDマネージャ217にIPリアセンブルIDの取得を要求し、IDマネージャ217からIPリアセンブルIDを受け取る。このときの、IDマネージャ217におけるIPリアセンブルID取得の処理の流れについて、図10を用いて詳細に説明する。
First, in S901 of FIG. 9, the
S1001において、IDマネージャ217は、現在のIPリアセンブルカウンタが最大値に達しているかを調べる。すなわち、IDマネージャ217は、現在並行して実行中のIPリアセンブルの数が、同時に取り扱える最大値に既に達しているかを判定する。そして、IDマネージャ217は、同時のIPリアセンブルの数が最大値に達していた場合はエラーを出力して(S1013)、処理を終了し、最大値に達していなかった場合は処理をS1002へ進める。
In step S1001, the
S1002では、IDマネージャ217は、自らが保持しているIPリアセンブルID値から(任意の)ID値を1つ選択する。すなわち、S1002で、新たに実行されるIPリアセンブルに対してIDの割当処理が実行される。IPリアセンブルID値は、TCPソケットID値と同様に、FIFOを利用してID値を格納し、又はビットマップを用いて保持するなど、ID値を保持できる所定の方法で保持される。
In S1002, the
続いて、IDマネージャ217は、IPリアセンブルIDに対応するIPリアセンブルタイマのブロックに電源が供給されているかを判定する(S1003)。この判定の結果、処理は、ブロックに電源が供給されていない場合はS1004へ進み、供給されている場合はS1005へ進む。なお、ここでの「ブロック」も、上述のように、電源の供給を管理する単位であり、1つのブロックに対して個別に電源供給とその停止とを制御することができる。また、ブロックは単一のIDに対応付けられていてもよいし、複数のIDに対応付けられていてもよい点についても、上述の説明と同様である。S1004では、IDマネージャ217は、IPリアセンブルIDに対応するIPリアセンブルタイマのブロックの電源供給を通信タイマ216に対して指示し、処理をS1005へ移す。
Subsequently, the
S1005では、IDマネージャ217は、IPリアセンブルIDに対応する検索装置207のIPリアセンブル検索テーブルのエントリブロックに電源が供給されているかを調べる。そして、処理は、電源が供給されていない場合はS1006へ進み、供給されている場合はS1007へ進む。S1006では、IDマネージャ217は、IPリアセンブルIDに対応するIPリアセンブル検索テーブルの検索エントリブロックの電源供給を検索装置207に対して指示し、処理をS1007へ進める。
In step S1005, the
S1007では、IDマネージャ217は、IPリアセンブルIDに対応するビットマップコントローラ219のビットマップテーブルのブロックに電源が供給されているかを調べる。処理は、電源が供給されていない場合はS1008へ進み、供給されている場合はS1009へ進む。S1008では、IDマネージャ217は、IPリアセンブルIDに対応するビットマップテーブルに対する電源供給を、ビットマップコントローラ219に指示し、処理をS1009へ進める。
In step S1007, the
S1009では、IDマネージャ217は、IPリアセンブルIDに対応するIPリアセンブルバッファ領域の主メモリブロックに電源が供給されているかを調べる。処理は、主メモリブロックに電源が供給されている場合はS1011へ進み、供給されていない場合はS1010へ進む。S1010では、IDマネージャ217は、IPリアセンブルIDに対応する主メモリ104のIPリアセンブルバッファ領域に対する電源供給を主メモリ制御部103に指示し、処理をS1011へ進める。
In step S1009, the
S1011では、IDマネージャ217は、S1002で選択した(割当処理により割り当てられた)ID値を出力し、S1012でIPリアセンブルIDの使用数を管理するカウンタをインクリメントして、処理を終了する。
In S1011, the
なお、本実施形態では、上述の手順で電源の供給指示を行ったが、各ハードウェアリソースに対して電源の供給ができればどのような手順で行ってもよい。例えば、S1003〜S1004の処理とS1005〜S1006の順序は逆にされてもよいし、その他の処理についても順序が変更されてもよい。また、上述の各ブロックのうちの1つ以上について常に電源が供給されている場合は、そのブロックについて電源が供給されているかの判定及び電源供給指示の処理は省略されてもよい。 In the present embodiment, the power supply instruction is performed according to the above-described procedure. However, any procedure may be used as long as power can be supplied to each hardware resource. For example, the order of S1003 to S1004 and the order of S1005 to S1006 may be reversed, and the order of other processes may be changed. In addition, when power is constantly supplied to one or more of the above-described blocks, the determination of whether power is supplied to the block and the processing of the power supply instruction may be omitted.
図9に戻ると、上述のようにして、IPリアセンブルIDが、IDマネージャ217からサブプロセッサ204へ受け渡される(S901)と、サブプロセッサ204は、S902において、S901で取得した結果を調べる。そして、ID値が取得できずエラーが出力されていた場合は、サブプロセッサ204は、IPリアセンブルリソース獲得失敗を出力して(S908)、処理を終了する。一方、ID値が取得できた場合は、処理はS903へ進む。
Returning to FIG. 9, as described above, when the IP reassembly ID is transferred from the
S903では、サブプロセッサ204は、取得したID値に対応したビットマップコントローラのビットマップテーブルに、受信したフラグメントパケットの受信位置を示す情報を記録する。そして、S904において、サブプロセッサ204は、取得したIPリアセンブルID値に対応した主メモリ104のIPリアセンブルバッファへ、フラグメントパケットデータを転送する。続いて、S905において、サブプロセッサ204は、取得したIPリアセンブルID値に対応した通信タイマ216のIPリアセンブルタイマを設定し、起動する。そして、サブプロセッサ204は、S906において、取得したIPリアセンブルIDに対応した検索装置207のIPリアセンブル検索テーブルの検索エントリに、IPリアセンブル検索情報を登録する。その後、サブプロセッサ204は、S907においてIPリアセンブルリソース獲得成功を出力して、処理を終了する。なお、これらのステップの順序等は変更されてもよい。
In step S903, the
(IPリアセンブルID初期化処理)
続いて、図11を用いて、主プロセッサ101によるIPリアセンブルID初期化処理の流れについて説明する。なお、本実施形態では主プロセッサ101がIPリアセンブルID初期化処理を行うが、TOE内のサブプロセッサがこの処理を実行してもよい。なお、この処理は、例えば、通信装置の電源が投入された際に実行され、この処理の後に、上述の図9及び図10の処理が実行される。
(IP reassembly ID initialization process)
Next, the flow of IP reassembly ID initialization processing by the
主プロセッサ101は、S1101において、IPリアセンブルIDの最大値をIDマネージャ217に設定する。この設定値は、システムごとに決定する同時に実行可能なIPリアセンブルの処理の最大数である。その後、主プロセッサ101は、IPリアセンブルID値の最大数分のIPリアセンブルバッファ領域を主メモリ104上に確保する(S1102)。この領域は主メモリ制御部103の制御により電源制御が可能な領域に確保する。なお、本実施形態では主メモリ上にIPリアセンブルバッファを確保する場合について説明しているが、バッファごとに電源制御可能なメモリ領域であれば、他のメモリ上にIPリアセンブルバッファが確保されてもよい。
In S1101, the
続いて、主プロセッサ101は、S1102で確保したIPリアセンブルバッファの位置情報をIDマネージャ217に設定する(S1103)。この設定情報に基づいて、1つのデータにリアセンブルされるフラグメントの集合の通信の開始または終了時(すなわち、IPリアセンブルIDが取得され、開放された際)の、電源制御の指示を行う。主プロセッサ101は、その後、IPリアセンブル情報検索用の検索テーブルを検索装置207に対して設定する(S1104)。そして、主プロセッサ101は、IDマネージャ217に対して、IPリアセンブルIDに関連づけられたハードウェアリソースの電源制御を開始する旨を示す指示を行い(S1105)、処理を終了する。なお、上述の各ステップは、順序が変更されてもよいし、一部のステップが削除されてもよい。
Subsequently, the
(IPリアセンブルリソース解放処理)
続いて、サブプロセッサ204において実行される、本実施形態に係るIPリアセンブルリソース解放処理の流れについて、図12及び図13を用いて説明する。
(IP reassembly resource release processing)
Next, the flow of IP reassembly resource release processing according to the present embodiment, which is executed in the
まず、1つのデータにリアセンブルされるフラグメントの集合についての通信が終了した場合、サブプロセッサ204は、図12のS1201において、検索装置207のIPリアセンブルID値に対応した領域のエントリを削除する。そして、サブプロセッサ204は、ビットマップコントローラ219のIPリアセンブルID値に対応したビットマップテーブルをクリアし(S1202)、IPリアセンブルID値に対応したIPリアセンブルタイマを停止する(S1203)。サブプロセッサ204は、さらに、S1204において、IPリアセンブルID値をIDマネージャ217に返却して、処理を終了する。
First, when communication about a set of fragments reassembled into one data is completed, the sub-processor 204 deletes an entry in an area corresponding to the IP reassembly ID value of the
ここで、図13を用いて、S1204においてIPリアセンブルID値が返却された場合の、IDマネージャ217が実行するIPリアセンブルID返却処理について説明する。IDマネージャ217は、S1301において、返却されたID値を、保持しているIPリアセンブルID値に追加する。すなわち、IDマネージャ217は、返却されたID値を、その後に新規に開始されるIPリアセンブルに関する通信に対して割り当てるための候補に追加して保持しておく。
Here, the IP reassembly ID return process executed by the
そして、IDマネージャ217は、返却されたIPリアセンブルID値に対応する各ハードウェアリソースのブロックについて、電源供給の停止を指示する。具体的には、S1302では、ID値に対応するIPリアセンブルタイマの電源停止が通信タイマ216に指示され、S1303では、ID値に対応するIPリアセンブル検索テーブルのエントリの電源停止が検索装置207に指示される。また、ID値に対応するビットマップテーブルの電源停止がビットマップコントローラ219に指示され(S1304)、ID値に対応する主メモリ104上のIPリアセンブルバッファ領域の電源停止が主メモリ制御部103に指示される(S1305)。そして、IDマネージャ217は、S1306において、IPリアセンブルIDの使用数を管理するカウンタをデクリメントして、処理を終了する。なお、上述の各ステップについても、例えば電源停止の指示の順序が変更されてもよいし、一部のステップが削除されてもよい。
Then, the
このように、本実施形態の通信装置は、TCPソケット及びIPリアセンブル処理をIDで管理するIDマネージャを有し、それぞれの通信プロトコルの処理に対して、管理されている複数のIDのうちの1つのIDを割り当て、又は解放する。また、本実施形態の通信装置では、各(ハードウェア)リソースを細かいブロックごとに電源制御可能な構成として、IDマネージャは、これらのブロックごとに1つ以上のIDを対応付けて記憶しておく。そして、IDマネージャは、IDの割当と開放とに応じて、1つ以上のリソースについて、そのIDに対応するブロックに対して電源供給またはその停止、若しくはクロックの供給またはその停止を行うように、制御を行う。これにより、実際に通信処理を行っているTCPソケットの数、IPリアセンブルの数に応じて、ハードウェアリソースのブロック単位での詳細な電源制御を行うことが可能となる。さらに、このような構成により、同時に実行可能な通信処理の最大数を維持しながら、記憶装置及びハードウェアを、通信状況に応じて部分的に電源遮断することが可能となるため、通信状態に応じて消費電力を削減することが可能となる。またIDマネージャが一括で電源の制御を行うため、個別にハードウェアリソースの電源制御を行うことが不要となり、個別に電源制御を行うことにより、処理負荷が高まることを防止することが可能となる。 As described above, the communication apparatus according to the present embodiment includes an ID manager that manages the TCP socket and the IP reassembly process using IDs, and each of the communication protocol processes includes a plurality of IDs that are managed. Assign or release one ID. In the communication apparatus according to the present embodiment, each (hardware) resource is configured so that power can be controlled for each fine block, and the ID manager stores one or more IDs in association with each block. . And, according to the allocation and release of ID, the ID manager supplies power to or stops the block corresponding to the ID, or supplies or stops the clock for one or more resources. Take control. As a result, it becomes possible to perform detailed power supply control in units of hardware resources in accordance with the number of TCP sockets and the number of IP reassembles that are actually performing communication processing. Furthermore, such a configuration allows the storage device and hardware to be partially shut down according to the communication status while maintaining the maximum number of communication processes that can be executed simultaneously. Accordingly, power consumption can be reduced. In addition, since the ID manager controls the power supply in a lump, it is not necessary to individually control the power supply of the hardware resources, and it becomes possible to prevent an increase in processing load by performing the power supply control individually. .
<<その他の実施形態>>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
<< Other Embodiments >>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.
Claims (5)
TCPプロトコルの処理のために用いられ、前記複数のTCPソケットの各々に対応する複数のメモリと、
前記複数のTCPソケットの各々を示す識別子と、当該各識別子が示すTCPソケットにおけるTCPプロトコル処理に用いる前記タイマおよび前記メモリと、を対応させて管理する管理手段と、
新たなTCPソケットを利用したTCP通信が開始された場合、当該新たなTCPソケットに、前記新たなTCPソケットを示す第1の識別子を割り当てる割当手段と、
前記割当手段により前記第1の識別子が割り当てられた場合、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して開始する開始手段と、
前記第1の識別子に対応するTCPソケットが解放された場合に、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して停止する停止手段と、
を有することを特徴とする通信装置。 A plurality of timers used for TCP protocol processing and corresponding to each of a plurality of TCP sockets;
A plurality of memories used for TCP protocol processing and corresponding to each of the plurality of TCP sockets;
Management means for managing the identifier indicating each of the plurality of TCP sockets, and the timer and the memory used for TCP protocol processing in the TCP socket indicated by each identifier,
When TCP communication using a new TCP socket is started , an assigning unit that assigns a first identifier indicating the new TCP socket to the new TCP socket ;
Start means for collectively starting power supply and clock supply to the timer and the memory corresponding to the first identifier managed by the management means when the assignment means assigns the first identifier. When,
When a TCP socket corresponding to the first identifier is released, power supply and clock supply to the timer and the memory corresponding to the first identifier managed by the management unit are collectively stopped. Stop means;
A communication apparatus comprising:
前記停止手段は、前記複数の識別子に対応するTCPソケットの全てが解放された場合に、前記管理手段により管理された前記複数の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して停止することを特徴とする請求項1に記載の通信装置。 It said management means, for one of the timer or the memory, and manages in association with the identifier of the multiple,
The stopping means supplies power and clocks to the timer and the memory corresponding to the plurality of identifiers managed by the management means when all the TCP sockets corresponding to the plurality of identifiers are released. the communication apparatus according to claim 1, wherein the benzalkonium stops collectively.
新たなTCPソケットを利用したTCP通信が開始された場合、当該新たなTCPソケットに、前記新たなTCPソケットを示す第1の識別子を割り当てる割当工程と、
前記割当工程において前記第1の識別子が割り当てられた場合、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して開始する開始工程と、
前記第1の識別子に対応するTCPソケットが解放された場合に、前記管理手段により管理された前記第1の識別子に対応する前記タイマおよび前記メモリへの電力供給およびクロック供給を一括して停止する停止工程と、
を有することを特徴とする制御方法。 Used for processing the TCP protocol, a plurality of timers corresponding to each of the plurality of TCP sockets are used for processing the TCP protocol, a plurality of memories corresponding to each of the plurality of TCP sockets, the A control method for a communication apparatus, comprising: an identifier indicating each of a plurality of TCP sockets; and a management unit that manages the timer and the memory used for TCP protocol processing in the TCP socket indicated by each identifier in association with each other. And
An allocation step of assigning a first identifier indicating the new TCP socket to the new TCP socket when TCP communication using the new TCP socket is started ;
A starting step of collectively starting power supply and clock supply to the timer and the memory corresponding to the first identifier managed by the management means when the first identifier is assigned in the assigning step; When,
When a TCP socket corresponding to the first identifier is released, power supply and clock supply to the timer and the memory corresponding to the first identifier managed by the management unit are collectively stopped. A stopping process;
A control method characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014007269A JP6291261B2 (en) | 2014-01-17 | 2014-01-17 | Communication apparatus, control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014007269A JP6291261B2 (en) | 2014-01-17 | 2014-01-17 | Communication apparatus, control method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015136071A JP2015136071A (en) | 2015-07-27 |
JP6291261B2 true JP6291261B2 (en) | 2018-03-14 |
Family
ID=53767658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014007269A Expired - Fee Related JP6291261B2 (en) | 2014-01-17 | 2014-01-17 | Communication apparatus, control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6291261B2 (en) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5156332B2 (en) * | 2007-10-30 | 2013-03-06 | アラクサラネットワークス株式会社 | Packet transfer device |
JP5094482B2 (en) * | 2008-03-07 | 2012-12-12 | キヤノン株式会社 | Processing apparatus and processing method thereof |
JP5451498B2 (en) * | 2009-07-17 | 2014-03-26 | キヤノン株式会社 | Information processing apparatus, information processing apparatus control method, and program |
-
2014
- 2014-01-17 JP JP2014007269A patent/JP6291261B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015136071A (en) | 2015-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI781248B (en) | Programmable data storage device and programmable network data storage system | |
US10949546B2 (en) | Security devices, electronic devices and methods of operating electronic devices | |
US8413153B2 (en) | Methods and systems for sharing common job information | |
JP2019525313A (en) | Virtualization manager secure boot process | |
JP2019525306A (en) | Memory allocation techniques in partially offloaded virtualization managers | |
US9092365B2 (en) | Splitting direct memory access windows | |
US9736011B2 (en) | Server including switch circuitry | |
JP2019525312A (en) | Reducing performance fluctuations using an opportunistic hypervisor | |
US20150121060A1 (en) | Methods for configurable hardware logic device reloading and devices thereof | |
US20220166666A1 (en) | Data plane operation in a packet processing device | |
US11477102B2 (en) | Upgrading user space networking stacks without disruptions to network traffic | |
CN109388953A (en) | Safety equipment, electronic equipment and the method for operating electronic equipment | |
US9104600B2 (en) | Merging direct memory access windows | |
JP5686204B2 (en) | Server apparatus, information processing system, server apparatus address management method, and server apparatus address management program | |
JP5028339B2 (en) | Communication apparatus and control method | |
US9558149B2 (en) | Dual system | |
JP6291261B2 (en) | Communication apparatus, control method, and program | |
JP5967967B2 (en) | Information processing apparatus and control method thereof | |
US8533209B2 (en) | Search apparatus, control method for search apparatus, and program | |
US8751692B2 (en) | Data transfer apparatus, data transfer method, and storage medium | |
US9270530B1 (en) | Managing imaging of multiple computing devices | |
US20190286348A1 (en) | Storage device, control method, and control program | |
JP2007183708A (en) | Server device, server accommodation method and server accommodation program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171226 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180112 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180209 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6291261 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |