JP6979913B2 - 情報処理装置、情報処理方法、及びプログラム - Google Patents
情報処理装置、情報処理方法、及びプログラム Download PDFInfo
- Publication number
- JP6979913B2 JP6979913B2 JP2018063613A JP2018063613A JP6979913B2 JP 6979913 B2 JP6979913 B2 JP 6979913B2 JP 2018063613 A JP2018063613 A JP 2018063613A JP 2018063613 A JP2018063613 A JP 2018063613A JP 6979913 B2 JP6979913 B2 JP 6979913B2
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- network interface
- processing unit
- processing
- interface card
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Description
特許文献2には、複数の入力ポートおよび複数の出力ポートに関連付けられ、関連付けられた出力ポートでリンク状態変化を検出し、出力ポートでのリンク状態変化を、出力ポートを介して、1つ以上の入力ポートに通知できるネットワーキング装置が開示されている。
特許文献3には、送信側では、映像データにタイムスタンプを付加したデータを送信し、受信側では、受信データに付加されているタイムスタンプに無線通信でかかる時間よりも長い時間を加算し、加算されたタイムスタンプの比較を行うタイムスタンプチェック部0819にタイムスタンプ値にかかわらずデータを廃棄する機能を持たせ、データ伝送開始を検出した時間から、設定された時間だけ、タイムスタンプチェック部0819に対してデータ廃棄を指示するデータ廃棄制御部0826を新たに設けた映像伝送システムが開示されている。
特許文献4には、パケット受信ドライバが、ネットワークインタフェースによるパケットの受信をループ処理によって待機し、ループ処理の合間において、ネットワークインタフェース105及びパケット受信ドライバのうちの少なくともいずれか一方の死活状態を示す情報を死活情報記憶部117rに書き込み、監視装置の監視部114は、死活情報記憶部を参照して、ネットワークインタフェース及びパケット受信ドライバのうちの少なくともいずれか一方の死活状態を監視する監視方法が開示されている。
図1は、ネットワーク装置10を含むネットワーク通信システム1のハードウェア構成を例示する図である。
図1に例示するように、ネットワーク通信システム1は、複数のネットワーク装置10と、これらを接続するネットワークスイッチ20とを含む。
ネットワーク装置10は、ネットワークに接続して使用されるネットワーク機器である。ネットワーク装置10は、本発明に係る情報処理装置の一例である。本例のネットワーク装置は、LANケーブル及びネットワークスイッチ20を介してLANに接続しており、帯域制御機能及びファイアウォール機能などを有すると共に、他のネットワーク装置10と二重化して冗長構成によって耐障害性を高めている。具体的には、稼働中のネットワーク装置10A(Active)と、待機中のネットワーク装置10B(Standby)との間で生存監視パケットが送受信され、既定時間生存監視パケットが送受信されない場合に、待機中のネットワーク装置10Bが稼働状態となり、役割を引き継ぐ。
このような構成において、LANポートのリンクアップ/リンクダウンに関わらず、ネットワーク装置10の間で、生存監視パケット(ハートビートパケット)やLLC(Logical Link Control)パケットなどが送受信されている。
図2に例示するように、ネットワーク装置10は、CPU100、メモリ102、複数のスロット104、サウスブリッジ106、ハードディスクドライブ108、コンパクトフラッシュ(登録商標)変換アダプタ110、DVDドライブ112、及び、LANカード120を有する。
CPU100は、中央処理装置である。本例のCPU100は、複数のコアからなるマルチコアプロセッサである。
メモリ102は、例えば、半導体メモリであり、CPU100に接続され、主記憶装置として機能する。
スロット104は、拡張スロットであり、例えば、LANカード120などが挿入される。本例のスロット104には、LANカード120が挿入されており、本例のLANカード120には、PCIスイッチを介して複数のインタフェース(#0〜#3)が設けられている。
サウスブリッジ106は、例えば、SATAバスなどを接続するICチップである。本例では、サウスブリッジ106には、ハードディスクドライブ108、コンパクトフラッシュ(登録商標)変換アダプタ110、及び、DVDドライブ112が接続されている。
このとき、DPDKの送信処理(データプレーンコア処理部400)は、ポートのリンクアップ/リンクダウン状態を意識せずに、到着した送信データを送信キューに繋ぐ。換言すると、DPDKの送信処理(データプレーンコア処理部400)は、リンクダウンが発生したとしても、送信キューに送信データを準備し続けるよう構成されている。
図3に例示するように、ネットワーク装置10は、LANドライバの機能ブロックとして、制御プレーンコア処理部300と、データプレーンコア処理部400とを有する。
制御プレーンコア処理部300は、LANカード120などの制御処理を行う。本例の制御プレーンコア処理部300は、上位エンジン処理部320、LANドライバ共通部340、及びLANドライバ360を有する。上位エンジン処理部320は、上位層からの指示に応じて、制御に必要なデータを、LANドライバ共通部340及びLANドライバ360を介して、LANカード120に出力する。
図4(A)に例示するように、制御プレーンコアのLANドライバ360は、リンクダウン検出部362、送信処理置換部364、及びフラッシュ処理部366を有する。
リンクダウン検出部362は、LANカード120のリンクダウンを検出する。本例のリンクダウン検出部362は、割り当てられたLANカード120のLANコントローラからの通知に基づいて、LANカード120のリンクダウン又はリンクアップを検出する。
フラッシュ処理部366は、さらに、データプレーンコア処理部400のLANドライバ460に、送信キューを解放させてもよい。
送信処理部462は、ループ処理の一部として、LANカード120で送信する送信データを準備する。より具体的には、送信処理部462は、送信キューに送信データを蓄積し、蓄積された送信データをLANカード120に転送して送信させる。すなわち、送信処理部462は、LANカード120のドライバの一部として、データプレーン開発キットに即したパケット送信処理を実行する。
ここで、ループ処理とは、複数種類の定型処理が順次繰り返し実行される処理である。すなわち、ループ処理とは、同種の処理が循環して繰り返されるものである。例えば、ループ処理には、定型処理の他に、非定型な処理が含まれてもよい。
図5に例示するように、CPU100の複数のコア(#0〜#N)のうち、一つが制御プレーンコアとして割り当て、残りのN個のコアがデータプレーンコアとして割り当てられている。それぞれのデータプレーンコアが、ループ処理によってパケット送受信処理を実行している。
つまり、それぞれのデータプレーンコアでは、LANカード120のインタフェース毎に送信キュー及び受信キューを用意しており、送受信処理を無限ループで実行することで、高速なパケット処理を実現している。この高速パケット処理では、送信処理と受信処理を延々ループして実行している。仮に、ループ処理の中に、リンク状態を確認する処理を挿入すると、全体の処理速度が低下してしまう。
そこで、各データプレーンコアのLANドライバ460は、図6に示すように、制御プレーンコアのLANドライバ360の制御に応じて、ループ処理の一部として、送信処理部462による送信処理、又は、送信ドロップ処理部464を選択的に実行し、ループ処理の速度低下を抑制する。
そこで、リンクダウンしたLANカード120に割り当てられたデータプレーンコアのLANドライバ460は、送信処理を送信ドロップ処理に置換して、送信キューのためのコンピュータリソースの新規割当てを行わないようにする。
図7に例示するように、ステップ100(S100)において、いずれかのLANカード120のLANコントローラが、リンクダウンを検知するまで待機し(S100:No)、リンクダウンを検知すると(S100:Yes)、S105の処理に移行する。
ステップ115(S115)において、制御プレーンコア処理部300のLANドライバ360のリンクダウン検出部362は、LANカード120からの割込み通知に基づいて、リンクダウンを検出する。
データプレーンコア処理部400のLANドライバ460は、送信処理置換部364からの指示に応じて、送信処理部462による送信処理を、送信ドロップ処理部464による送信ドロップ処理に置換する。
LANカード120は、フラッシュ処理部366からの指示に応じて、通信を停止した後で、通信を開始し、FIFO内の送信パケットをフラッシュする。
図8に例示するように、ステップ200(S200)において、いずれかのLANカード120のLANコントローラが、リンクアップを検知するまで待機し(S200:No)、リンクアップを検知すると(S200:Yes)、S205の処理に移行する。
ステップ215(S215)において、制御プレーンコア処理部300のLANドライバ360のリンクダウン検出部362は、LANカード120からの割込み通知に基づいて、リンクアップを検出する。
データプレーンコア処理部400のLANドライバ460は、送信処理置換部364からの指示に応じて、送信ドロップ処理部464による送信ドロップ処理を、送信処理部462による送信処理に置換する。
また、本ネットワーク装置10は、リンクダウンが発生した場合に、対応するLANカード120のFIFOをフラッシュさせて、時機を逸したデータ送信を抑制する。
10…ネットワーク装置
100…CPU
102…メモリ
104…スロット
120…LANカード
300…制御プレーンコア処理部
360…LANドライバ
362…リンクダウン検出部
364…送信処理置換部
366…フラッシュ処理部
400…データプレーンコア処理部
460…LANドライバ
462…送信処理部
464…送信ドロップ処理部
Claims (8)
- 複数のネットワークインタフェースカードと、
前記ネットワークインタフェースカードで送信する送信データを準備する複数の送信処理部と、
前記ネットワークインタフェースカードのいずれかにリンクダウンが検知された場合に、リンクダウンが検知されたネットワークインタフェースカードで送信する送信データの準備を、前記送信処理部に停止させる制御部と
を有し、
前記送信処理部は、ループ処理によって、送信データを送信キューに蓄積し、
前記制御部は、リンクダウンしているネットワークインタフェースカードに割り当てられた前記送信処理部のみに対して、前記ループ処理の一部を、送信失敗となる送信処理に置き換えて、送信データの準備を停止させる
情報処理装置。 - 複数の前記送信処理部は、共用されるコンピュータリソースを用いて、送信データの準備を行い、
リンクダウンしているネットワークインタフェースカードに割り当てられた前記送信処理部は、共用されるコンピュータリソースの新規割当てを要求しない
請求項1に記載の情報処理装置。 - 複数の前記送信処理部は、共用される記録領域を用いて、送信データを蓄積するための送信キューを構成し、
リンクダウンしているネットワークインタフェースカードに割り当てられた前記送信処理部は、送信キューのために、共用される記録領域の新規割当てを要求しない
請求項2に記載の情報処理装置。 - 複数のネットワークインタフェースカードと、
前記ネットワークインタフェースカードで送信する送信データを準備する複数の送信処理部と、
前記ネットワークインタフェースカードのいずれかにリンクダウンが検知された場合に、リンクダウンが検知されたネットワークインタフェースカードで送信する送信データの準備を、前記送信処理部に停止させる制御部と
を有し、
前記送信処理部は、ループ処理によって、送信データを送信キューに蓄積し、
前記制御部は、前記送信処理部に、前記ループ処理の一部を、送信失敗となる送信処理に置き換えて、送信データの準備を停止させ、
リンクダウンが検知されたネットワークインタフェースカードのみに対して、蓄積されている送信データをフラッシュさせるフラッシュ処理部
をさらに有する情報処理装置。 - 前記フラッシュ処理部は、リンクダウンが検知された場合に、リンクダウンが検知されたネットワークインタフェースカードに対して、通信停止を指示し、その後に、通信開始を指示する
請求項4に記載の情報処理装置。 - 前記送信処理部は、前記ネットワークインタフェースカードのドライバの一部であり、前記ネットワークインタフェースカードのリンク状態を監視することなく、ループ処理で送信データを送信キューに蓄積し、
前記制御部は、前記ネットワークインタフェースカードで検知されたリンクダウンに基づいて、前記送信処理部に、ループ処理の内容を置換させる
請求項1に記載の情報処理装置。 - 複数の送信処理部が、複数のネットワークインタフェースカードそれぞれに関して、それぞれの前記ネットワークインタフェースカードで送信する送信データを準備する送信準備ステップと、
前記ネットワークインタフェースカードのいずれかにリンクダウンが検知された場合に、リンクダウンが検知されたネットワークインタフェースカードで送信する送信データの準備を停止させる停止ステップと
を有し、
前記送信処理部は、ループ処理によって、送信データを送信キューに蓄積し、
前記停止ステップにおいて、リンクダウンしているネットワークインタフェースカードに割り当てられた前記送信処理部のみに対して、前記ループ処理の一部を、送信失敗となる送信処理に置き換えて、送信データの準備を停止させる
情報処理方法。 - 複数の送信処理部が、複数のネットワークインタフェースカードそれぞれに関して、それぞれの前記ネットワークインタフェースカードで送信する送信データを準備する送信準備ステップと、
前記ネットワークインタフェースカードのいずれかにリンクダウンが検知された場合に、リンクダウンが検知されたネットワークインタフェースカードで送信する送信データの準備を停止させる停止ステップと
をコンピュータに実行させ、
前記送信処理部は、ループ処理によって、送信データを送信キューに蓄積し、
前記停止ステップにおいて、リンクダウンしているネットワークインタフェースカードに割り当てられた前記送信処理部のみに対して、前記ループ処理の一部を、送信失敗となる送信処理に置き換えて、送信データの準備を停止させる
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018063613A JP6979913B2 (ja) | 2018-03-29 | 2018-03-29 | 情報処理装置、情報処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018063613A JP6979913B2 (ja) | 2018-03-29 | 2018-03-29 | 情報処理装置、情報処理方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019176366A JP2019176366A (ja) | 2019-10-10 |
JP6979913B2 true JP6979913B2 (ja) | 2021-12-15 |
Family
ID=68169022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018063613A Active JP6979913B2 (ja) | 2018-03-29 | 2018-03-29 | 情報処理装置、情報処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6979913B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037786B (zh) * | 2022-08-09 | 2022-11-01 | 北京航天驭星科技有限公司 | 提高数据传输效率的方法及相关设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW488135B (en) * | 2000-03-31 | 2002-05-21 | Ibm | Method and system for controlling flows in sub-pipes of computer networks |
JP2007088949A (ja) * | 2005-09-22 | 2007-04-05 | Fujitsu Ltd | 情報処理装置、通信負荷分散方法および通信負荷分散プログラム |
JP2011041176A (ja) * | 2009-08-18 | 2011-02-24 | Hitachi Kokusai Electric Inc | 無線通信システム |
JP6195316B2 (ja) * | 2015-08-28 | 2017-09-13 | 株式会社Pfu | 情報処理装置、情報処理方法、及びプログラム |
JP6195209B2 (ja) * | 2015-08-28 | 2017-09-13 | 株式会社Pfu | 情報処理装置、情報処理方法、及びプログラム |
-
2018
- 2018-03-29 JP JP2018063613A patent/JP6979913B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019176366A (ja) | 2019-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10986171B2 (en) | Method for unified communication of server, baseboard management controller, and server | |
US9477632B2 (en) | Access proxy for accessing peripheral component interconnect express endpoint device, PCIe exchanger and computer system | |
US10924433B2 (en) | Mirror packet control method and mirror packet control device | |
US9600380B2 (en) | Failure recovery system and method of creating the failure recovery system | |
US9430266B2 (en) | Activating a subphysical driver on failure of hypervisor for operating an I/O device shared by hypervisor and guest OS and virtual computer system | |
US9872205B2 (en) | Method and system for sideband communication architecture for supporting manageability over wireless LAN (WLAN) | |
WO2016121728A1 (ja) | ネットワーク機能仮想化管理およびオーケストレーション装置とシステムと管理方法とプログラム | |
US20110320706A1 (en) | Storage apparatus and method for controlling the same | |
WO2016165304A1 (zh) | 一种实例节点管理的方法及管理设备 | |
JP5710017B2 (ja) | 電気通信ネットワークにおけるセル回復のための方法およびシステム | |
US8560878B2 (en) | System and method for failure detection by a storage expander preceding an expander experiencing a failure | |
JP2006072591A (ja) | 仮想計算機制御方法 | |
EP1942608A1 (en) | Network interface control program and network interface controller | |
EP2757478A1 (en) | Node device, communication system, and method for switching virtual switch | |
US20110209148A1 (en) | Information processing device, virtual machine connection method, program, and recording medium | |
JP2006195821A (ja) | 情報処理システムの制御方法、情報処理システム、ダイレクトメモリアクセス制御装置、プログラム | |
JP5262145B2 (ja) | クラスタシステムおよび情報処理方法 | |
JP2007183738A (ja) | 情報処理装置および方法、並びにプログラム | |
JP6979913B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
WO2016135919A1 (ja) | ストレージ装置 | |
JP2008283608A (ja) | 冗長化された通信経路を切り替える計算機、プログラム及び方法 | |
WO2015139327A1 (zh) | 失效切换方法、装置和系统 | |
JP2013214809A (ja) | 情報処理装置、演算装置、及び情報処理装置の制御方法 | |
JP6195316B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP7304250B2 (ja) | 情報処理装置、情報処理方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210730 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210928 |
|
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: 20211115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211116 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6979913 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |