JP2004172888A - ブロードキャストパケット送信システム - Google Patents
ブロードキャストパケット送信システム Download PDFInfo
- Publication number
- JP2004172888A JP2004172888A JP2002335570A JP2002335570A JP2004172888A JP 2004172888 A JP2004172888 A JP 2004172888A JP 2002335570 A JP2002335570 A JP 2002335570A JP 2002335570 A JP2002335570 A JP 2002335570A JP 2004172888 A JP2004172888 A JP 2004172888A
- Authority
- JP
- Japan
- Prior art keywords
- nic
- load
- packet
- network interface
- broadcast packet
- 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.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
【課題】NICの選択にNIC負荷を考慮して、同一サブネット内の最も負荷の低いNICへの送信が可能となり、特定のNICに負荷が集中することを防止する。
【解決手段】送信されるパケット11がブロードキャストパケットであるか否かを判断するブロードキャストチェック機能6aと、各NICの負荷状態を獲得するNIC負荷獲得機能7aとを備えているデバイスドライバ4が、ブロードキャストチェック機能6aがパケット11をブロードキャストパケットであると判定した場合に、NIC負荷獲得機能7aによって得られた各NIC2の負荷状態に基づいて、パケット11を送信するNIC2として最も負荷の低いものを選択し、選択された当該NIC2に対して、パケット11を送信する。
【選択図】 図1
【解決手段】送信されるパケット11がブロードキャストパケットであるか否かを判断するブロードキャストチェック機能6aと、各NICの負荷状態を獲得するNIC負荷獲得機能7aとを備えているデバイスドライバ4が、ブロードキャストチェック機能6aがパケット11をブロードキャストパケットであると判定した場合に、NIC負荷獲得機能7aによって得られた各NIC2の負荷状態に基づいて、パケット11を送信するNIC2として最も負荷の低いものを選択し、選択された当該NIC2に対して、パケット11を送信する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
この発明はブロードキャストパケット送信システムに関し、特に、同一サブネット内のブロードキャストパケット送信システムに関する。
【0002】
【従来の技術】
従来より、複数のネットワーク・インターフェース・カード(以下、NICとする。)を実装したネットワークシステムが開発されている(特許文献1参照。)。
【0003】
【特許文献1】
特開2000−183905号公報
【0004】
当該特許文献1に記載されているネットワークシステムにおいては、複数NICで複数のサブネットワークが構成されている。当該ネットワークシステムにおいては、初期時に、各デバイスドライバが、自身が管理するNICの物理アドレスであるMACアドレスと上位プロトコルから通知されたIPアドレスとを、バックアップモジュールに登録しておく。通常時においては、上位プロトコルより送信データを受信したデバイスドライバは、送信データ内のMACアドレスを使用して、自身が管理するNICに送信データを送信する。ところが、デバイスドライバが送信データを受信したときに、管理するNICが使用不可能な状態である場合、デバイスドライバは、バックアップモジュール部に送信データを渡す。バックアップモジュール部は、渡された送信データ内のMACアドレスをバックアップを行う他のNICのMACアドレスに書き換え、バックアップを行うデバイスドライバに送信データを渡す。送信データを渡されたデバイスドライバは、MACアドレスを使用して、自身が管理するNICに送信データを送信する。
【0005】
【発明が解決しようとする課題】
従来のネットワークシステムは以上のように構成されているので、送信データが送信されるNICの選択に、NIC負荷などのシステム要因を考慮することができないという問題点があった。
【0006】
また、ホスト計算機本体のCPUプロセッサは近年ますます高速化されているのに比べて、NICなどインテリIOカードに搭載されるプロセッサは依然低速のままであるので、特定のNICに負荷が集中することは、この部分がシステム全体のボトルネックとなってしまうという問題点があった。
【0007】
この発明は、かかる問題点を解決するためになされたものであり、NICの選択にNIC負荷を考慮して、特定のNICに負荷が集中することを防止するブロードキャストパケット送信システムを得ることを目的とする。
【0008】
【課題を解決するための手段】
この発明は、システム本体とは別プロセッサで動作する2以上のネットワークインターフェースカードを有するとともに、それらのネットワークインターフェースカードが同一サブネットワークに含まれるようにIPアドレスが設定されているブロードキャストパケット送信システムであって、上記ネットワークインターフェースカードのいずれか1つに送信されるパケットがブロードキャストパケットであるか否かを判断する判定手段と、各上記ネットワークインターフェースカードの負荷状態を獲得する負荷状態獲得手段と、上記判定手段が上記パケットをブロードキャストパケットであると判定した場合に、上記負荷状態獲得手段によって得られた各上記ネットワークインターフェースカードの負荷状態に基づいて、最も低い負荷の上記ネットワークインターフェースカードを、上記パケットを送信するネットワークインターフェースカードとして選択するNIC選択手段とを備えたブロードキャストパケット送信システムである。
【0009】
【発明の実施の形態】
実施の形態1.
図1は本発明の実施の形態1によるブロードキャストパケット送信方法を実行するブロードキャストパケット送信システムを構成するホスト計算機の構成を示したブロック図である。本発明のシステムは、上述の従来のシステムとは異なって、複数のNICで同一サブネットワークを構築している。図1に示すように、ホスト計算機1内には、複数のNIC2a〜2nが実装されている。それらのNIC2a〜2nは同一サブネットワークAに含まれるようにIPアドレスが設定されている。NIC2a〜2nには、F/W(ファームウエア)3a〜3nがそれぞれ搭載されている。F/W3とはNIC2を制御するために組み込まれたソフトウエアであり、NIC2は、当該F/W3に基づいて、ホスト計算機1とは別のプロセッサにより動作する。NIC2およびF/W3は、デバイスドライバ4a〜4nにより制御されている。デバイスドライバ4は、インストール処理時に、例えば、各NIC2のIPアドレスやMACアドレス等のパケット送受信に必要な情報(以下、NICI/F情報(インターフェース情報)5a〜5nと記述する。)の設定がF/W2との間に行なわれる。デバイスドライバ4は、当該NICI/F情報5の他に、ブロードキャストチェック機能6およびNIC負荷獲得機能7を有している。ブロードキャストチェック機能6a〜6nは、デバイスドライバ4が受信したパケットを解析して、それがブロードキャストであるか否かを判断するものであり、NIC負荷獲得機能7a〜7nは、各NIC2の負荷を獲得するものである。また、ホスト計算機1内には、サブネットワークAに属するNIC2の固有情報を保持するためのNIC管理テーブル8が設けられ、当該NIC管理テーブル8は、各NIC2を識別するためのID(識別子)が記憶されているID記録欄8aと、各NICI/F情報5が記憶されているI/F情報記録欄8bとを有している。さらに、ホスト計算機1内には、プロトコルドライバ9が設けられている。プロトコルドライバ9は、パケット11の受信時に、ホスト計算機1内に設けられているルーティングテーブル10を参照して、パケット11の送信先を決定する。
【0010】
図2は、図1のホスト計算機1の起動時の処理を示す流れ図であり、図3は、実施の形態1によるブロードキャストパケット送信方法を示す流れ図である。図1〜図3を参照して、実施の形態1の動作について説明する。
【0011】
まず、ホスト計算機1の初期化時の処理について、図2に示す流れ図を用いて、その動作について説明する。全てのデバイスドライバに対する処理であるステップST1001a〜ST1001b間で、ホスト計算機1にデバイスドライバ4がインストールされた場合は、NIC2とパケット送受信するための情報(NICI/F情報5)をF/W3との間に設定する(ステップST1002)とともに、当該NICI/F情報5をNIC管理テーブル8の記録欄8b欄にも設定する(ステップST1003)。
【0012】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態1によるブロードキャストパケット送信方法を図3の流れ図に従って説明する。サブネットワークAのブロードキャストパケット11がプロトコルドライバ9に送信される(ステップST1101)と、プロトコルドライバ9はルーティングテーブル10を参照(ステップST1102)して、サブネットワークAのブロードキャストパケット送信先に指定されているデバイスドライバ4に対して、同パケット11を送信する(ステップST1103)。同パケットを受信したデバイスドライバ4は、ブロードキャストパケットチェック機能5により、同パケット11がブロードキャストパケットであるか否かで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケット11を送信(ステップST1109)して終了する。ブロードキャストパケットであると判定した場合は、ステップST1105a〜ST1105b間で、NIC負荷獲得機能7により、サブネットワークAに属している全NIC2のNIC負荷を獲得(ステップ1106)し、最も低いNIC負荷のNIC2を選択(ステップST1107)し、当該選択されたNIC2のNIC管理テーブル8内のI/F情報記録欄8b欄に登録されているNICI/F情報5を使用して、デバイスドライバ4が、当該選択されたNIC2に対してパケット11を送信(ステップST1108)して終了する。
【0013】
以上のように、デバイスドライバ4のインストール時にF/W3との間に設定するNICI/F情報を、NIC管理テーブル8にも保持することで、デバイスドライバ4内で、パケット11がブロードキャストパケットか否かを判定する処理を行い、当該処理でブロードキャストと判定した場合には、各NICのNIC負荷を獲得して、最もNIC負荷が低いNIC2を選択し、当該NIC2のNIC管理テーブル8に登録されているNICI/F情報5を利用してパケット11をブロードキャストNIC以外のNIC2に送信するようにしたので、特定のNIC2の負荷が集中することを抑えることが出来るという効果が得られる。
【0014】
実施の形態2.
図4は、本発明の実施の形態2のブロードキャストパケット送信システムを示すブロック図である。図においては、図1で示した実施の形態1の構成要素と同一の構成要素には同一記号を付けている。図4において、図1と異なる点は、まず、定周期NIC負荷獲得機能12が付加されている点である。定周期NIC負荷獲得機能12は、ブロードキャストパケット送信とは非同期で動作して各NIC2の負荷を獲得して、NIC管理テーブル8の記録欄8cに獲得した負荷を記録するものである。このように、本実施の形態においては、NIC管理テーブルが、ID記録欄8aおよびI/F情報記録欄8bの他に、さらに、NIC負荷記録欄8cが設けられている。また、本実施の形態においては、この定周期NIC負荷獲得機能12が設けられたことにより、図1で示したデバイスドライバ4内のNIC負荷獲得機能7aは設けられていない。
【0015】
次に、動作について定周期NIC負荷獲得機能12の処理を示す図5の流れ図と、実施の形態2のブロードキャストパケット送信方法を示す図6の流れ図を参照しながら説明する。図6の流れ図においては前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0016】
まず、定周期NIC負荷獲得機能12の処理について、図5の流れ図でその動作について説明する。定周期NIC負荷獲得機能12が起動されると、ステップST2001a−ST2001b間で、サブネットワークAに属する全てのNIC2に対して、NIC負荷を獲得(ステップST2002)、獲得した情報をNIC管理テーブル8のNIC負荷記録欄8c欄に記録(ステップST2003)し、一定期間経過(ステップST2004)した後、再びステップST2001aから実施する。すなわち、一定周期ごとに、サブネットワークAに属する全てのNIC2のNIC負荷を獲得する。
【0017】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態2のブロードキャストパケット送信方式を図6の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップSTl102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4は、受信したパケット11がブロードキャストパケットであるかで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8の8c欄の内容を獲得(ステップST2101)し、最も低い負荷のNIC2を選択(ステツプST1107)し、当該選択したNIC2に対してデバイスドライバ4がパケットを送信(ステップSTl108)して終了する。
【0018】
以上のように、本実施の形態においては、実施の形態1と同様の効果が得られるとともに、サブネットワークAに属するNIC2の負荷を定周期に獲得する定周期NIC負荷獲得機能12を加えることで、ブロードキャストパケット送信のたびにNIC負荷を獲得する必要がなくなるため、ホスト計算機側の負荷上昇を抑えることができるという効果がある。
【0019】
実施の形態3.
図7は本発明の実施の形態3のブロードキャストパケット送信システムを示すブロック図である。図7においては、前出の実施例と同一の構成要素には同一の記号を付けている。本実施の形態と実施の形態2との構成の違いは、システム管理者15からNIC負荷予約が入力されるNIC負荷予約機能13が設けられている点である。NIC負荷予約機能13は、システム管理者15によって、NIC負荷をリザーブ(予約)するための手段で、システム管理者15によって入力された負荷は、NIC管理テーブル8に付加された予約NIC負荷記録欄8dに記録される。それ以外の構成要素は前出の時に説明したものと同様である。
【0020】
次に、操作について、NIC負荷予約機能13の処理を示す図8と、実施の形態3のブロードキャストパケット送信方法を示す図9の流れ図を参照しながら説明する。図9の流れ図においては前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0021】
まず、NIC負荷予約機能13の処理について、図8の流れ図でその動作について説明する。例えば、NIC2にマルチキャストパケット受信設定されている場合や、NIC2に設定されているIPアドレスから大量のパケットを受信することがあらかじめ予測される場合に、システム管理者15は、予約したいNICのID(識別子)と予約負荷の値とをNIC負荷予約機能13に入力(ステップST3001)する。NIC負荷予約機能13は同内容をNIC管理テーブル8の予約NIC負荷記録欄8dに記憶する(ステップST3002)。
【0022】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態3のブロードキャストパケット送信方法を図9の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップST1102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4はパケットがブロードキャストパケットであるかで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8のNIC負荷記録欄8c欄の内容(ステップST2101)と、予約NIC負荷記録欄8d欄の内容(ステップST3101)とを獲得し、その和が最も小さいNIC2を選択(ステップST3102)して、当該選択したNIC2に対してパケットをデバイスドライバ4が送信(ステップST1108)して終了する。
【0023】
以上のように、本実施の形態においては、上記の実施の形態2と同様の効果が得られるとともに、NIC負荷予約機能13を加えることで、あらかじめ負荷が上昇することが予測されるNIC2をブロードキャストパケット送信先に選択されにくくするという効果がある。
【0024】
実施の形態4.
図10は本発明の実施の形態4のブロードキャストパケット送信システムを示すブロック図である。図においては、前出の実施の形態と同一の構成要素には同一の記号を付けている。本実施の形態においては、パケット11をNIC2に送信した後に、NIC2から返信パケットを受信する場合の例について説明する。このような場合には、パケット11の送信時に、送信先のNIC2のIPアドレスやMACアドレスを返信用のアドレスとして、パケット11に付加して送信するが、本発明においては、送信先のNIC2が、NIC2の負荷状態によって変更されるので、変更された場合には、当該返信用のアドレスもそれに伴って、変更する必要がある。なお、構成において実施の形態2と異なる点は、NIC管理テーブル8に、新たな別の項目の記録欄8eおよび8fが追加されていることと、各デバイスドライバ4に、送信元アドレス変換機能14が設けられていることである。図10において、8eはID記録欄8aに対応するIPアドレスが記憶されているIPアドレス記録欄であり、8fはID記録欄8aに対応するMACアドレスが記憶されているMACアドレス記録欄である。送信元アドレス変換機能14a〜14nは、送信時に予め設定されている返信時の送信元IPアドレスおよびMACアドレスを、実際にパケット11を送信するNIC2のIPアドレスおよびMACアドレスに変換する機能である。それ以外の構成要素は前出の時に説明したものと同様である。
【0025】
次に操作についてホスト計算機起動時の処理を示す図11の流れ図と、実施の形態4のブローキャストパケット送信方法を示す図12のフロー図を参照しながら説明する。図11および図12の流れ図においては、前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0026】
まず、ホスト計算機初期化時の処理について、図11に示す流れ図でその動作について説明する。ステップST1001a−ST1001b間で、ホスト計算機1にデバイスドライバ4がインストールされた場合は、NIC2とパケット送受信するための情報(NICI/F情報5)をF/W3との間に設定する(ステップST1002)するとともに、NIC管理テーブル8のI/F情報記録欄8b欄にNICI/F情報5(ステツプST1003)を、IPアドレス記録欄8e欄にNIC2のIPアドレス(ステツプST4001)を、MACアドレス記録欄8fにNIC2のMACアドレス(ステップST4002)を登録する。
【0027】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態4のブロードキャストパケット送信方法を図12の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップST1102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4はパケットがブロードキャストパケットであるかで処理を分岐する(ステップSTll04)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8のNIC負荷記録欄8c欄の内容を獲得(ステップST2101)し、最も低い負荷のNIC2を選択(ステップST1107)する。次に、NIC管理テーブル8のIPアドレス記録欄8eおよびMACアドレス記録欄8f欄を参照することで、送信するパケット11の返信用の送信元IPアドレスおよび送信元MACアドレスを、ステップST1107で選択したNIC2のIPアドレスおよびMACアドレスに変更(ステップST4101)した後に、デバイスドライバ4は、選択したNIC2に同パケットを送信(ステップST1108)して終了する。
【0028】
以上のように、本実施の形態においては、上記の実施の形態2と同様の効果が得られるとともに、さらに、送信元アドレス変換機能14を加えることで、送信パケットに対する返信パケットも、ステップST1107で選択された実際にパケットが送信されたNIC2から受信できるという効果がある。
【0029】
【発明の効果】
この発明は、システム本体とは別プロセッサで動作する2以上のネットワークインターフェースカードを有するとともに、それらのネットワークインターフェースカードが同一サブネットワークに含まれるようにIPアドレスが設定されているブロードキャストパケット送信システムであって、上記ネットワークインターフェースカードのいずれか1つに送信されるパケットがブロードキャストパケットであるか否かを判断する判定手段と、各上記ネットワークインターフェースカードの負荷状態を獲得する負荷状態獲得手段と、上記判定手段が上記パケットをブロードキャストパケットであると判定した場合に、上記負荷状態獲得手段によって得られた各上記ネットワークインターフェースカードの負荷状態に基づいて、最も低い負荷の上記ネットワークインターフェースカードを、上記パケットを送信するネットワークインターフェースカードとして選択するNIC選択手段とを備えたブロードキャストパケット送信システムであるので、NICの選択にNIC負荷を考慮して、同一サブネット内の最も負荷の低いNICへの送信が可能となり、特定のNICに負荷が集中することを防止することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1におけるブロードキャストパケット送信システムを示すブロック図である。
【図2】本発明の実施の形態1のホスト計算機起動時の処理手順を説明する流れ図である。
【図3】本発明の実施の形態1のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図4】本発明の実施の形態2におけるブロードキャストパケット送信システムを示すブロック図である。
【図5】本発明の実施の形態2の定周期NIC負荷獲得機能の処理手順を説明する流れ図である。
【図6】本発明の実施の形態2のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図7】本発明の実施の形態3におけるブロードキャストパケット送信システムを示すブロック図である。
【図8】本発明の実施の形態3のNIC負荷予約機能の処理手順を説明する流れ図である。
【図9】本発明の実施の形態3のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図10】本発明の実施の形態4におけるブロードキャストパケット送信方式のブロック図である。
【図11】本発明の実施の形態4のホスト計算機起動時の処理手順を説明する流れ図である。
【図12】本発明の実施の形態4のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【符号の説明】
1 ホスト計算機、2 NIC、3 F/W、4 デバイスドライバ、5 NICI/F情報、6 ブロードキャストチェック機能、7 NIC負荷獲得機能、8 NIC管理テーブル、8a ID記録欄、8b NICI/F情報記録欄、8c NIC負荷記録欄、8d 予約NIC負荷記録欄、8e IPアドレス記録欄、8f MACアドレス記録欄、9 プロトコルドライバ、10 ルーティングテーブル、11 パケット、12 定周期NIC負荷獲得機能、13 NIC負荷予約機能、14 送信元アドレス変換機能、15 システム管理者。
【発明の属する技術分野】
この発明はブロードキャストパケット送信システムに関し、特に、同一サブネット内のブロードキャストパケット送信システムに関する。
【0002】
【従来の技術】
従来より、複数のネットワーク・インターフェース・カード(以下、NICとする。)を実装したネットワークシステムが開発されている(特許文献1参照。)。
【0003】
【特許文献1】
特開2000−183905号公報
【0004】
当該特許文献1に記載されているネットワークシステムにおいては、複数NICで複数のサブネットワークが構成されている。当該ネットワークシステムにおいては、初期時に、各デバイスドライバが、自身が管理するNICの物理アドレスであるMACアドレスと上位プロトコルから通知されたIPアドレスとを、バックアップモジュールに登録しておく。通常時においては、上位プロトコルより送信データを受信したデバイスドライバは、送信データ内のMACアドレスを使用して、自身が管理するNICに送信データを送信する。ところが、デバイスドライバが送信データを受信したときに、管理するNICが使用不可能な状態である場合、デバイスドライバは、バックアップモジュール部に送信データを渡す。バックアップモジュール部は、渡された送信データ内のMACアドレスをバックアップを行う他のNICのMACアドレスに書き換え、バックアップを行うデバイスドライバに送信データを渡す。送信データを渡されたデバイスドライバは、MACアドレスを使用して、自身が管理するNICに送信データを送信する。
【0005】
【発明が解決しようとする課題】
従来のネットワークシステムは以上のように構成されているので、送信データが送信されるNICの選択に、NIC負荷などのシステム要因を考慮することができないという問題点があった。
【0006】
また、ホスト計算機本体のCPUプロセッサは近年ますます高速化されているのに比べて、NICなどインテリIOカードに搭載されるプロセッサは依然低速のままであるので、特定のNICに負荷が集中することは、この部分がシステム全体のボトルネックとなってしまうという問題点があった。
【0007】
この発明は、かかる問題点を解決するためになされたものであり、NICの選択にNIC負荷を考慮して、特定のNICに負荷が集中することを防止するブロードキャストパケット送信システムを得ることを目的とする。
【0008】
【課題を解決するための手段】
この発明は、システム本体とは別プロセッサで動作する2以上のネットワークインターフェースカードを有するとともに、それらのネットワークインターフェースカードが同一サブネットワークに含まれるようにIPアドレスが設定されているブロードキャストパケット送信システムであって、上記ネットワークインターフェースカードのいずれか1つに送信されるパケットがブロードキャストパケットであるか否かを判断する判定手段と、各上記ネットワークインターフェースカードの負荷状態を獲得する負荷状態獲得手段と、上記判定手段が上記パケットをブロードキャストパケットであると判定した場合に、上記負荷状態獲得手段によって得られた各上記ネットワークインターフェースカードの負荷状態に基づいて、最も低い負荷の上記ネットワークインターフェースカードを、上記パケットを送信するネットワークインターフェースカードとして選択するNIC選択手段とを備えたブロードキャストパケット送信システムである。
【0009】
【発明の実施の形態】
実施の形態1.
図1は本発明の実施の形態1によるブロードキャストパケット送信方法を実行するブロードキャストパケット送信システムを構成するホスト計算機の構成を示したブロック図である。本発明のシステムは、上述の従来のシステムとは異なって、複数のNICで同一サブネットワークを構築している。図1に示すように、ホスト計算機1内には、複数のNIC2a〜2nが実装されている。それらのNIC2a〜2nは同一サブネットワークAに含まれるようにIPアドレスが設定されている。NIC2a〜2nには、F/W(ファームウエア)3a〜3nがそれぞれ搭載されている。F/W3とはNIC2を制御するために組み込まれたソフトウエアであり、NIC2は、当該F/W3に基づいて、ホスト計算機1とは別のプロセッサにより動作する。NIC2およびF/W3は、デバイスドライバ4a〜4nにより制御されている。デバイスドライバ4は、インストール処理時に、例えば、各NIC2のIPアドレスやMACアドレス等のパケット送受信に必要な情報(以下、NICI/F情報(インターフェース情報)5a〜5nと記述する。)の設定がF/W2との間に行なわれる。デバイスドライバ4は、当該NICI/F情報5の他に、ブロードキャストチェック機能6およびNIC負荷獲得機能7を有している。ブロードキャストチェック機能6a〜6nは、デバイスドライバ4が受信したパケットを解析して、それがブロードキャストであるか否かを判断するものであり、NIC負荷獲得機能7a〜7nは、各NIC2の負荷を獲得するものである。また、ホスト計算機1内には、サブネットワークAに属するNIC2の固有情報を保持するためのNIC管理テーブル8が設けられ、当該NIC管理テーブル8は、各NIC2を識別するためのID(識別子)が記憶されているID記録欄8aと、各NICI/F情報5が記憶されているI/F情報記録欄8bとを有している。さらに、ホスト計算機1内には、プロトコルドライバ9が設けられている。プロトコルドライバ9は、パケット11の受信時に、ホスト計算機1内に設けられているルーティングテーブル10を参照して、パケット11の送信先を決定する。
【0010】
図2は、図1のホスト計算機1の起動時の処理を示す流れ図であり、図3は、実施の形態1によるブロードキャストパケット送信方法を示す流れ図である。図1〜図3を参照して、実施の形態1の動作について説明する。
【0011】
まず、ホスト計算機1の初期化時の処理について、図2に示す流れ図を用いて、その動作について説明する。全てのデバイスドライバに対する処理であるステップST1001a〜ST1001b間で、ホスト計算機1にデバイスドライバ4がインストールされた場合は、NIC2とパケット送受信するための情報(NICI/F情報5)をF/W3との間に設定する(ステップST1002)とともに、当該NICI/F情報5をNIC管理テーブル8の記録欄8b欄にも設定する(ステップST1003)。
【0012】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態1によるブロードキャストパケット送信方法を図3の流れ図に従って説明する。サブネットワークAのブロードキャストパケット11がプロトコルドライバ9に送信される(ステップST1101)と、プロトコルドライバ9はルーティングテーブル10を参照(ステップST1102)して、サブネットワークAのブロードキャストパケット送信先に指定されているデバイスドライバ4に対して、同パケット11を送信する(ステップST1103)。同パケットを受信したデバイスドライバ4は、ブロードキャストパケットチェック機能5により、同パケット11がブロードキャストパケットであるか否かで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケット11を送信(ステップST1109)して終了する。ブロードキャストパケットであると判定した場合は、ステップST1105a〜ST1105b間で、NIC負荷獲得機能7により、サブネットワークAに属している全NIC2のNIC負荷を獲得(ステップ1106)し、最も低いNIC負荷のNIC2を選択(ステップST1107)し、当該選択されたNIC2のNIC管理テーブル8内のI/F情報記録欄8b欄に登録されているNICI/F情報5を使用して、デバイスドライバ4が、当該選択されたNIC2に対してパケット11を送信(ステップST1108)して終了する。
【0013】
以上のように、デバイスドライバ4のインストール時にF/W3との間に設定するNICI/F情報を、NIC管理テーブル8にも保持することで、デバイスドライバ4内で、パケット11がブロードキャストパケットか否かを判定する処理を行い、当該処理でブロードキャストと判定した場合には、各NICのNIC負荷を獲得して、最もNIC負荷が低いNIC2を選択し、当該NIC2のNIC管理テーブル8に登録されているNICI/F情報5を利用してパケット11をブロードキャストNIC以外のNIC2に送信するようにしたので、特定のNIC2の負荷が集中することを抑えることが出来るという効果が得られる。
【0014】
実施の形態2.
図4は、本発明の実施の形態2のブロードキャストパケット送信システムを示すブロック図である。図においては、図1で示した実施の形態1の構成要素と同一の構成要素には同一記号を付けている。図4において、図1と異なる点は、まず、定周期NIC負荷獲得機能12が付加されている点である。定周期NIC負荷獲得機能12は、ブロードキャストパケット送信とは非同期で動作して各NIC2の負荷を獲得して、NIC管理テーブル8の記録欄8cに獲得した負荷を記録するものである。このように、本実施の形態においては、NIC管理テーブルが、ID記録欄8aおよびI/F情報記録欄8bの他に、さらに、NIC負荷記録欄8cが設けられている。また、本実施の形態においては、この定周期NIC負荷獲得機能12が設けられたことにより、図1で示したデバイスドライバ4内のNIC負荷獲得機能7aは設けられていない。
【0015】
次に、動作について定周期NIC負荷獲得機能12の処理を示す図5の流れ図と、実施の形態2のブロードキャストパケット送信方法を示す図6の流れ図を参照しながら説明する。図6の流れ図においては前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0016】
まず、定周期NIC負荷獲得機能12の処理について、図5の流れ図でその動作について説明する。定周期NIC負荷獲得機能12が起動されると、ステップST2001a−ST2001b間で、サブネットワークAに属する全てのNIC2に対して、NIC負荷を獲得(ステップST2002)、獲得した情報をNIC管理テーブル8のNIC負荷記録欄8c欄に記録(ステップST2003)し、一定期間経過(ステップST2004)した後、再びステップST2001aから実施する。すなわち、一定周期ごとに、サブネットワークAに属する全てのNIC2のNIC負荷を獲得する。
【0017】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態2のブロードキャストパケット送信方式を図6の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップSTl102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4は、受信したパケット11がブロードキャストパケットであるかで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8の8c欄の内容を獲得(ステップST2101)し、最も低い負荷のNIC2を選択(ステツプST1107)し、当該選択したNIC2に対してデバイスドライバ4がパケットを送信(ステップSTl108)して終了する。
【0018】
以上のように、本実施の形態においては、実施の形態1と同様の効果が得られるとともに、サブネットワークAに属するNIC2の負荷を定周期に獲得する定周期NIC負荷獲得機能12を加えることで、ブロードキャストパケット送信のたびにNIC負荷を獲得する必要がなくなるため、ホスト計算機側の負荷上昇を抑えることができるという効果がある。
【0019】
実施の形態3.
図7は本発明の実施の形態3のブロードキャストパケット送信システムを示すブロック図である。図7においては、前出の実施例と同一の構成要素には同一の記号を付けている。本実施の形態と実施の形態2との構成の違いは、システム管理者15からNIC負荷予約が入力されるNIC負荷予約機能13が設けられている点である。NIC負荷予約機能13は、システム管理者15によって、NIC負荷をリザーブ(予約)するための手段で、システム管理者15によって入力された負荷は、NIC管理テーブル8に付加された予約NIC負荷記録欄8dに記録される。それ以外の構成要素は前出の時に説明したものと同様である。
【0020】
次に、操作について、NIC負荷予約機能13の処理を示す図8と、実施の形態3のブロードキャストパケット送信方法を示す図9の流れ図を参照しながら説明する。図9の流れ図においては前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0021】
まず、NIC負荷予約機能13の処理について、図8の流れ図でその動作について説明する。例えば、NIC2にマルチキャストパケット受信設定されている場合や、NIC2に設定されているIPアドレスから大量のパケットを受信することがあらかじめ予測される場合に、システム管理者15は、予約したいNICのID(識別子)と予約負荷の値とをNIC負荷予約機能13に入力(ステップST3001)する。NIC負荷予約機能13は同内容をNIC管理テーブル8の予約NIC負荷記録欄8dに記憶する(ステップST3002)。
【0022】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態3のブロードキャストパケット送信方法を図9の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップST1102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4はパケットがブロードキャストパケットであるかで処理を分岐する(ステップST1104)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8のNIC負荷記録欄8c欄の内容(ステップST2101)と、予約NIC負荷記録欄8d欄の内容(ステップST3101)とを獲得し、その和が最も小さいNIC2を選択(ステップST3102)して、当該選択したNIC2に対してパケットをデバイスドライバ4が送信(ステップST1108)して終了する。
【0023】
以上のように、本実施の形態においては、上記の実施の形態2と同様の効果が得られるとともに、NIC負荷予約機能13を加えることで、あらかじめ負荷が上昇することが予測されるNIC2をブロードキャストパケット送信先に選択されにくくするという効果がある。
【0024】
実施の形態4.
図10は本発明の実施の形態4のブロードキャストパケット送信システムを示すブロック図である。図においては、前出の実施の形態と同一の構成要素には同一の記号を付けている。本実施の形態においては、パケット11をNIC2に送信した後に、NIC2から返信パケットを受信する場合の例について説明する。このような場合には、パケット11の送信時に、送信先のNIC2のIPアドレスやMACアドレスを返信用のアドレスとして、パケット11に付加して送信するが、本発明においては、送信先のNIC2が、NIC2の負荷状態によって変更されるので、変更された場合には、当該返信用のアドレスもそれに伴って、変更する必要がある。なお、構成において実施の形態2と異なる点は、NIC管理テーブル8に、新たな別の項目の記録欄8eおよび8fが追加されていることと、各デバイスドライバ4に、送信元アドレス変換機能14が設けられていることである。図10において、8eはID記録欄8aに対応するIPアドレスが記憶されているIPアドレス記録欄であり、8fはID記録欄8aに対応するMACアドレスが記憶されているMACアドレス記録欄である。送信元アドレス変換機能14a〜14nは、送信時に予め設定されている返信時の送信元IPアドレスおよびMACアドレスを、実際にパケット11を送信するNIC2のIPアドレスおよびMACアドレスに変換する機能である。それ以外の構成要素は前出の時に説明したものと同様である。
【0025】
次に操作についてホスト計算機起動時の処理を示す図11の流れ図と、実施の形態4のブローキャストパケット送信方法を示す図12のフロー図を参照しながら説明する。図11および図12の流れ図においては、前出と同じ処理を行うステップには同一ステップ番号を付し、その詳細な説明については省略する。
【0026】
まず、ホスト計算機初期化時の処理について、図11に示す流れ図でその動作について説明する。ステップST1001a−ST1001b間で、ホスト計算機1にデバイスドライバ4がインストールされた場合は、NIC2とパケット送受信するための情報(NICI/F情報5)をF/W3との間に設定する(ステップST1002)するとともに、NIC管理テーブル8のI/F情報記録欄8b欄にNICI/F情報5(ステツプST1003)を、IPアドレス記録欄8e欄にNIC2のIPアドレス(ステツプST4001)を、MACアドレス記録欄8fにNIC2のMACアドレス(ステップST4002)を登録する。
【0027】
次に、サブネットワークAにブロードキャストパケットが送信された場合の実施の形態4のブロードキャストパケット送信方法を図12の流れ図に従って説明する。プロトコルドライバ9にブロードキャストパケットが送信(ステップST1101)されると、ルーティングテーブル10を参照(ステップST1102)して、ブロードキャストパケットの送信先に指定されているデバイスドライバ4に同パケットを送信する(ステップST1103)。デバイスドライバ4はパケットがブロードキャストパケットであるかで処理を分岐する(ステップSTll04)。ブロードキャストパケットでなかった場合は、デフォルトで対応付けされているNIC2に対して同パケットを送信(ステップST1109)して終了する。ブロードキャストパケットであると判断した場合は、NIC管理テーブル8のNIC負荷記録欄8c欄の内容を獲得(ステップST2101)し、最も低い負荷のNIC2を選択(ステップST1107)する。次に、NIC管理テーブル8のIPアドレス記録欄8eおよびMACアドレス記録欄8f欄を参照することで、送信するパケット11の返信用の送信元IPアドレスおよび送信元MACアドレスを、ステップST1107で選択したNIC2のIPアドレスおよびMACアドレスに変更(ステップST4101)した後に、デバイスドライバ4は、選択したNIC2に同パケットを送信(ステップST1108)して終了する。
【0028】
以上のように、本実施の形態においては、上記の実施の形態2と同様の効果が得られるとともに、さらに、送信元アドレス変換機能14を加えることで、送信パケットに対する返信パケットも、ステップST1107で選択された実際にパケットが送信されたNIC2から受信できるという効果がある。
【0029】
【発明の効果】
この発明は、システム本体とは別プロセッサで動作する2以上のネットワークインターフェースカードを有するとともに、それらのネットワークインターフェースカードが同一サブネットワークに含まれるようにIPアドレスが設定されているブロードキャストパケット送信システムであって、上記ネットワークインターフェースカードのいずれか1つに送信されるパケットがブロードキャストパケットであるか否かを判断する判定手段と、各上記ネットワークインターフェースカードの負荷状態を獲得する負荷状態獲得手段と、上記判定手段が上記パケットをブロードキャストパケットであると判定した場合に、上記負荷状態獲得手段によって得られた各上記ネットワークインターフェースカードの負荷状態に基づいて、最も低い負荷の上記ネットワークインターフェースカードを、上記パケットを送信するネットワークインターフェースカードとして選択するNIC選択手段とを備えたブロードキャストパケット送信システムであるので、NICの選択にNIC負荷を考慮して、同一サブネット内の最も負荷の低いNICへの送信が可能となり、特定のNICに負荷が集中することを防止することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1におけるブロードキャストパケット送信システムを示すブロック図である。
【図2】本発明の実施の形態1のホスト計算機起動時の処理手順を説明する流れ図である。
【図3】本発明の実施の形態1のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図4】本発明の実施の形態2におけるブロードキャストパケット送信システムを示すブロック図である。
【図5】本発明の実施の形態2の定周期NIC負荷獲得機能の処理手順を説明する流れ図である。
【図6】本発明の実施の形態2のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図7】本発明の実施の形態3におけるブロードキャストパケット送信システムを示すブロック図である。
【図8】本発明の実施の形態3のNIC負荷予約機能の処理手順を説明する流れ図である。
【図9】本発明の実施の形態3のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【図10】本発明の実施の形態4におけるブロードキャストパケット送信方式のブロック図である。
【図11】本発明の実施の形態4のホスト計算機起動時の処理手順を説明する流れ図である。
【図12】本発明の実施の形態4のブロードキャストパケット送信方法の処理手順を説明する流れ図である。
【符号の説明】
1 ホスト計算機、2 NIC、3 F/W、4 デバイスドライバ、5 NICI/F情報、6 ブロードキャストチェック機能、7 NIC負荷獲得機能、8 NIC管理テーブル、8a ID記録欄、8b NICI/F情報記録欄、8c NIC負荷記録欄、8d 予約NIC負荷記録欄、8e IPアドレス記録欄、8f MACアドレス記録欄、9 プロトコルドライバ、10 ルーティングテーブル、11 パケット、12 定周期NIC負荷獲得機能、13 NIC負荷予約機能、14 送信元アドレス変換機能、15 システム管理者。
Claims (5)
- システム本体とは別プロセッサで動作する2以上のネットワークインターフェースカードを有するとともに、それらのネットワークインターフェースカードが同一サブネットワークに含まれるようにそれらのIPアドレスが上位プロトコルによって設定されているブロードキャストパケット送信システムであって、
上記各ネットワークインターフェースカードの少なくともIPアドレスの情報を記憶するNIC管理テーブルと、
上記ネットワークインターフェースカードのいずれか1つに送信されるパケットがブロードキャストパケットであるか否かを判定する判定手段と、
各上記ネットワークインターフェースカードの負荷状態を獲得する負荷状態獲得手段と、
上記判定手段が上記パケットをブロードキャストパケットであると判定した場合に、上記負荷状態獲得手段によって得られた各上記ネットワークインターフェースカードの負荷状態に基づいて、最も低い負荷の上記ネットワークインターフェースカードを、上記パケットを送信するネットワークインターフェースカードとして選択する選択手段と、
上記選択手段によって選択された上記ネットワークインターフェースカードのIPアドレスを上記NIC管理テーブルから獲得して、当該IPアドレスを使用して上記パケットを選択された上記ネットワークインターフェースカードに送信するパケット送信手段と
を備えたことを特徴とするブロードキャストパケット送信システム。 - 上記負荷状態獲得手段は、上記パケットの送信要求に同期させて、上記負荷状態を獲得することを特徴とする請求項1に記載のブロードキャストパケット送信システム。
- 上記負荷状態獲得手段は、一定の周期ごとに、上記負荷状態を獲得することを特徴とする請求項1に記載のブロードキャストパケット送信システム。
- 各上記ネットワークインターフェースカードの負荷を予約入力する負荷予約手段をさらに備えたことを特徴とする請求項1ないし3のいずれか1項に記載のブロードキャストパケット送信システム。
- 送信される上記パケットは、送信時に、送信先のネットワークインターフェースカードからの返信用のIPアドレスが付加されるものであって、
上記パケットが有する当該返信用のIPアドレスを、上記NIC選択手段によって選択されたネットワークインターフェースカードのIPアドレスに書き換えるアドレス変換手段をさらに備えたことを特徴とする請求項1ないし4のいずれか1項に記載のブロードキャストパケット送信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002335570A JP2004172888A (ja) | 2002-11-19 | 2002-11-19 | ブロードキャストパケット送信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002335570A JP2004172888A (ja) | 2002-11-19 | 2002-11-19 | ブロードキャストパケット送信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004172888A true JP2004172888A (ja) | 2004-06-17 |
Family
ID=32699679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002335570A Pending JP2004172888A (ja) | 2002-11-19 | 2002-11-19 | ブロードキャストパケット送信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004172888A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007249718A (ja) * | 2006-03-17 | 2007-09-27 | Oki Data Corp | 画像処理装置 |
JP2009071820A (ja) * | 2007-09-11 | 2009-04-02 | Polycom Inc | 複数のmacを複数のプロセッサへ割り当てるための方法及びシステム |
CN101179411B (zh) * | 2006-11-10 | 2011-03-02 | 中兴通讯股份有限公司 | Linux系统中多网卡接收组播数据的方法 |
-
2002
- 2002-11-19 JP JP2002335570A patent/JP2004172888A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007249718A (ja) * | 2006-03-17 | 2007-09-27 | Oki Data Corp | 画像処理装置 |
CN101179411B (zh) * | 2006-11-10 | 2011-03-02 | 中兴通讯股份有限公司 | Linux系统中多网卡接收组播数据的方法 |
JP2009071820A (ja) * | 2007-09-11 | 2009-04-02 | Polycom Inc | 複数のmacを複数のプロセッサへ割り当てるための方法及びシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1977562B1 (en) | Discovery of network nodes and routable addresses | |
JP4024308B2 (ja) | 伝送システムの接続の監視のための方法及び該方法を実施するためのコンポーネント | |
KR100984384B1 (ko) | 클러스터 노드들을 권위적 도메인 네임 서버들로서사용하여 액티브 부하 조절을 하는 시스템, 네트워크 장치,방법, 및 컴퓨터 프로그램 생성물 | |
JP5132770B2 (ja) | 最善のdhcpサーバを見出すためのルータの動的な構成 | |
US8019890B2 (en) | Network switch for logical isolation between user network and server unit management network and its operating method | |
JP2006253900A (ja) | Ipアドレス引き継ぎ方法、ipアドレスアドレス引き継ぎプログラム、サーバおよびネットワークシステム | |
JP2009301581A (ja) | タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体 | |
JP2008028914A (ja) | 通信負荷低減装置、通信負荷低減方法、及びプログラム | |
US20200396180A1 (en) | Communication method of ethernet network for vehicle | |
US20080235399A1 (en) | Information Processing Device, Server, Communication System, Address Decision Method, Address Modification Method, and Program | |
JP4237166B2 (ja) | 多チャンネルネットワーク装置およびmacアドレス割り当て方法 | |
JP2004356920A (ja) | Dhcpサーバシステム | |
US8917595B2 (en) | Method and system for a distributed platform solution for supporting CIM over web services based management | |
JP2004172888A (ja) | ブロードキャストパケット送信システム | |
JP4527650B2 (ja) | 物理配線制御装置、物理配線制御方法および物理配線制御プログラム | |
JP5699426B2 (ja) | 省電力制御装置及びプログラム | |
JP2008072519A (ja) | 機器検索装置、機器検索方法及びプログラム | |
CN110636149A (zh) | 远程访问方法、装置、路由器及存储介质 | |
JP2006100906A (ja) | ネットワークシステムの運用管理方法及びストレージ装置 | |
CN102577249A (zh) | 动态寻址主机的连接的实例组 | |
JP2006197051A (ja) | ネットワーク通信制御装置およびネットワーク通信制御方法 | |
JP2010244469A (ja) | 分散処理システム及び分散処理方法 | |
EP2220849B1 (en) | Address assignment protocol | |
JP3339439B2 (ja) | Nicのフェイル・オーバ装置 | |
JP3783664B2 (ja) | ルータ装置およびプログラム |